/* The Turn Ahead — interactive tools and community experiences */
.tool-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.7fr);align-items:center;gap:65px}
.tool-intro .lead{max-width:680px}
.tool-illustration{padding:32px;border-radius:20px;background:#163f3c;color:#f9f5eb;box-shadow:13px 16px 0 #e0e9de}
.tool-illustration .eyebrow{color:#b2d2c1}
.tool-illustration .large-number{display:block;font:clamp(2.9rem,5vw,5.5rem) Georgia,serif;letter-spacing:-.06em;margin:18px 0 8px}
.tool-illustration p{color:#d4e5da;font-size:.93rem}
.tool-illustration a{color:#fff}
.cost-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:30px;align-items:start}
.cost-form{display:grid;gap:20px}
.cost-panel{border:1px solid #d9e5d9;border-radius:15px;background:#fffdf9;padding:28px 31px}
.cost-panel h3{font-size:1.9rem}
.cost-panel .description{max-width:670px;color:#5a7165;margin-bottom:24px}
.cost-field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.cost-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.cost-field label{font-size:.86rem;font-weight:750;color:#466152}
.cost-field input{border:1px solid #bdcfbf;background:#fff;color:#173431;border-radius:8px;padding:12px;width:100%;font-size:1.03rem}
.cost-field small{color:#6a8074;font-size:.76rem;line-height:1.35}
.cost-hero-total{background:#e5eee6;padding:23px;border-radius:11px;margin:21px 0}
.cost-hero-total strong{display:block;color:#194a40;font:clamp(2.5rem,4vw,3.6rem) Georgia,serif;letter-spacing:-.06em;line-height:1.14;margin:6px 0}
.sticky-summary{position:sticky;top:95px;border-radius:15px;background:linear-gradient(160deg,#24574b,#113b36);color:white;padding:27px}
.sticky-summary .eyebrow{color:#b7d8c6}
.sticky-summary .big{font:clamp(2.5rem,4vw,3.65rem) Georgia,serif;letter-spacing:-.055em;display:block;margin:9px 0 17px}
.sticky-summary p{color:#d8e8da;font-size:.9rem}
.sticky-summary a{color:white}
.metric-pair{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:17px 0;border-top:1px solid #477265}
.metric-pair strong{font-size:1.15rem;white-space:nowrap}
.metric-pair span{font-size:.83rem;color:#d1e1d7}
.impact-options{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.impact-option{display:flex;flex-direction:column;gap:8px;border:1px solid #d7e4d8;border-radius:10px;background:#f8fbf6;padding:17px 18px;cursor:pointer}
.impact-option:has(input:checked){background:#e5f0e5;border-color:#579077}
.impact-option strong{font-size:.98rem;color:#214b3e}
.impact-option span{font-size:.84rem;color:#61766b}
.impact-option input{accent-color:#28634d;margin-right:5px}
.impact-note{padding:16px 18px;border-left:4px solid #d8b26f;background:#fcf5e8;color:#5f563e;border-radius:0 8px 8px 0;margin-top:19px;font-size:.91rem}
.breakdown{display:grid;gap:15px;margin-top:21px}
.break-row{display:grid;gap:7px}
.break-row .top{display:flex;justify-content:space-between;gap:12px;font-size:.89rem}
.break-row strong{white-space:nowrap}
.break-track{width:100%;height:9px;border-radius:99px;overflow:hidden;background:#e3ebe1}
.break-track>span{height:100%;display:block;background:#387761;min-width:0;border-radius:99px;transition:width .2s}
.impact-prompt{font-size:1.23rem;font-family:Georgia,serif;color:#2d5b4b;margin:23px 0 12px}
.time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.detail-row{margin-top:20px;padding:17px;background:#edf3ec;border-radius:10px;color:#476659}
.tool-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:22px}
.method{background:#e9f0e7;border-radius:13px;padding:27px 30px;color:#50695b}
.method h3{margin:0 0 9px}
.method ul{padding-left:21px;margin:12px 0}
.method li{margin:7px 0}
.journey-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:37px;align-items:start}
.journey-summary{position:sticky;top:99px;background:#e5eee5;padding:25px;border-radius:14px}
.journey-summary .day{font:3.9rem Georgia,serif;color:#1a5141;line-height:1.1;margin:8px 0}
.journey-summary .bar{height:9px;border-radius:99px;overflow:hidden;background:#cbdccb;margin:17px 0}
.journey-summary .bar>div{height:100%;background:#4b8875;transition:width .2s}
.journey-stage{position:relative;background:#fffdf9;border:1px solid #dce7db;border-radius:15px;padding:30px 32px 31px;margin-bottom:21px}
.journey-stage::before{content:"";position:absolute;left:-20px;top:30px;bottom:-29px;width:2px;background:#b5cdb8}
.journey-stage::after{content:"";position:absolute;left:-25px;top:29px;width:12px;height:12px;border-radius:50%;background:#e5b16b;border:2px solid #fffdf9;box-shadow:0 0 0 2px #83a994}
.journey-stage:last-of-type::before{bottom:35px}
.journey-stage .stage-label{font-size:.73rem;letter-spacing:.14em;font-weight:800;color:#57826b;text-transform:uppercase}
.journey-stage h3{font-size:2rem;margin:8px 0 12px}
.journey-stage p{color:#5b7164}
.journey-stage .prompt{padding:17px 20px;border-radius:9px;background:#eff5ee;color:#2c5849;font:1.16rem Georgia,serif;margin:19px 0}
.journey-stage textarea{min-height:78px}
.stage-status{font-size:.84rem;color:#506f5f;margin-top:10px;min-height:20px}
.stage-row{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-top:16px}
.stage-row button{font-size:.86rem}
.journey-stage .badge-state{display:inline-block;padding:5px 9px;border-radius:999px;font-size:.72rem;color:#456855;background:#e4eee5}
.journey-stage .badge-state.done{background:#24574c;color:white}
.journal-notice{background:#f9eccc;border:1px solid #e6d5b1;border-radius:11px;padding:20px 23px;color:#6a5b3e;font-size:.91rem}
.wall-filters{display:flex;gap:9px;flex-wrap:wrap;margin:23px 0 29px}
.wall-filters button{border:1px solid #b9d1bd;padding:9px 16px;border-radius:100px;color:#315a4a;background:transparent;font-weight:750}
.wall-filters button[aria-pressed="true"]{color:#fff;background:#235447;border-color:#235447}
.encouragement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.encouragement{padding:26px 28px;border:1px solid #dce6db;border-radius:12px;background:#fffdf9;min-height:225px;display:flex;flex-direction:column;justify-content:space-between}
.encouragement blockquote{font:1.4rem Georgia,serif;line-height:1.38;margin:0 0 25px;color:#284e41}
.encouragement .category{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#608570}
.encouragement .example{font-size:.73rem;color:#8b9a8c;margin-top:8px}
.encouragement[hidden]{display:none}
.guidelines{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.guideline{padding:22px 23px;border-radius:11px;background:#ecf3e9;border:1px solid #d6e5d6}
.guideline strong{color:#285b4b;display:block;margin-bottom:7px}
.guideline p{font-size:.9rem;color:#516d5d}
.draft-box{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;background:#fffdf9;border:1px solid #dbe5db;padding:30px;border-radius:16px}
.draft-preview{background:#e6efe7;padding:28px;border-radius:12px;display:flex;flex-direction:column;justify-content:center;min-height:245px}
.draft-preview blockquote{font:1.45rem Georgia,serif;color:#295746;line-height:1.4;overflow-wrap:anywhere}
.draft-preview p{font-size:.84rem;color:#5c7969}
.draft-count{font-size:.8rem;color:#657d70;text-align:right;margin:6px 0 15px}
.moderation-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.moderation-flow div{padding:20px 17px;border:1px solid #d6e3d8;background:#f4f8f1;border-radius:11px}
.moderation-flow strong{display:block;font:1.35rem Georgia,serif;margin-bottom:8px}
.moderation-flow span{font-size:.86rem;color:#5a7165}
@media(max-width:950px){.tool-intro,.cost-layout,.journey-layout{grid-template-columns:1fr}.sticky-summary,.journey-summary{position:static}.encouragement-grid{grid-template-columns:repeat(2,1fr)}.journey-stage::before,.journey-stage::after{display:none}}
@media(max-width:650px){.cost-field-grid,.impact-options,.time-grid,.encouragement-grid,.guidelines,.draft-box,.moderation-flow{grid-template-columns:1fr}.cost-panel,.journey-stage,.draft-box{padding:23px 20px}.cost-hero-total strong{font-size:2.6rem}.tool-illustration{padding:25px}.encouragement{min-height:180px}.impact-option{min-height:auto}}
@media print{header,footer,.cta-band,.tool-actions,.btn,.wall-filters{display:none!important}body{background:#fff;color:#111}.hero,.section{padding:18px 0}.wrap{width:100%}.tool-intro,.cost-layout,.journey-layout{display:block}.tool-illustration,.sticky-summary{box-shadow:none;position:static;break-inside:avoid;margin:16px 0}.cost-panel,.journey-stage{break-inside:avoid;padding:15px 20px;margin-bottom:13px}.impact-option{background:#fff}.cost-field input{padding:6px;border-color:#bbb}.cost-field-grid{gap:8px 13px}.source-box,.method{background:#fff}}
