@font-face{font-family:Fraunces;src:url('../fonts/Fraunces.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Fraunces;src:url('../fonts/Fraunces-Italic.ttf') format('truetype');font-style:italic;font-weight:100 900;font-display:swap}
:root{--bg:#fcf7ed;--paper:#fffcf4;--ink:#102b41;--muted:#53636b;--green:#2b6754;--green-soft:#e7eee1;--orange:#b45e25;--line:#deded0;--serif:Fraunces,Georgia,'Times New Roman',serif}
body{letter-spacing:0}h1,h2,.idea-note p,.result-paper h2,.toolkit h3,.skill-row h3,.footer-top>p{font-family:var(--serif);font-optical-sizing:auto;font-variation-settings:'SOFT' 35,'WONK' 1}h1{font-weight:560;letter-spacing:-.04em;word-spacing:.08em;line-height:1.035}h2{font-weight:540;letter-spacing:-.03em;word-spacing:.05em;line-height:1.08}h3{color:var(--ink)}em{font-weight:540;color:var(--green)}
.brand{text-decoration:none}.brand-logo-frame{display:block;width:248px;height:auto;aspect-ratio:1627/543;flex-shrink:0}.brand-logo{display:block;width:100%;max-width:100%;height:auto}.nav{background:rgba(252,247,237,.98)}.nav-inner{min-height:111px}.nav nav>a{font-size:.84rem}.button{border-radius:5px 13px 5px 13px;letter-spacing:-.012em;min-height:53px}.button.primary{background:#2b6754}.button.primary:hover{background:#204d40}.button.small{border-radius:4px 10px 4px 10px;min-height:44px}.text-link{gap:18px}.eyebrow{font-size:.66rem;letter-spacing:.12em}.hero{padding-block:50px 73px;gap:6.5%;grid-template-columns:1.12fr 1fr}.hero h1{font-size:clamp(3.9rem,6vw,5.75rem);margin-block:25px 25px}.hero .eyebrow{font-size:.64rem}.lead{font-size:1.15rem;line-height:1.65;letter-spacing:-.01em}.hero-note{font-size:.76rem}.hero .actions{margin-top:30px}
.example-board{background:transparent;border:0;border-radius:0;padding:10px 0 0}.board-top{margin:0 0 27px 15px;border-top:1px solid #b5c6b3;padding-top:13px}.idea-note{background:#f7dfb1;border-radius:2px 16px 3px 3px;border:0;border-bottom:2px solid #e9c88f;box-shadow:0 5px 0 #a17c3320;padding:23px 26px 20px;transform:rotate(-2.5deg);margin-left:10px;width:77%}.idea-note p{font-size:1.62rem;font-weight:520;line-height:1.25}.note-label{color:#815026}.hand-arrow{font-family:Georgia,serif;color:var(--green);font-size:52px;right:-43px;bottom:2px}.plan-note{border:0;border-block:1px solid #cbd5c1;border-radius:0;background:#edf1e5;margin:26px 0 24px 17%;padding:20px}.plan-tags span{border-radius:2px;border-color:#c2d0ba;background:#fafbf5}.plan-note p{font-size:.77rem}.step-number{border:0;border-radius:0;width:24px;height:24px;font-family:var(--serif);font-size:.76rem;color:var(--green);font-weight:600;background:transparent}.note-head{font-size:.77rem}.result-note{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0 0 0 9px}.result-paper{border:0;border-left:2px solid #dc9a58;background:#fffaf0;padding:20px 23px;margin-top:13px}.result-paper h2{font-size:1.85rem;font-weight:520}.result-paper p{font-size:.65rem}.result-note>.text-link{font-size:.7rem;margin-top:17px}.status{border-radius:2px;background:#e6eee0}.board-caption{text-align:left;margin-left:11px;font-size:.6rem;margin-top:16px}.sample-tag{font-size:.58rem}.quiet-strip{background:#edf0e5;border-block:1px solid #d9dfce}.quiet-strip .wrap{padding-block:21px}.quiet-strip span:before{content:'↗';font-size:.85rem;color:var(--orange);margin-right:12px}
.section{padding-block:85px}.section-intro h2{font-size:clamp(2.4rem,3.4vw,3.5rem)}.toolkit{gap:37px;padding-top:38px}.toolkit article{border-top:1px solid #b7c6b3;padding-top:24px}.toolkit h3{font-weight:540;font-size:2rem}.toolkit p{font-size:.88rem;max-width:310px}.toolkit .text-link{font-size:.8rem}.availability-label{font-size:.6rem;letter-spacing:.1em}.skill-row{border:0;border-top:1px solid #b7c6b3;border-bottom:1px solid #d8decc;border-radius:0;padding:30px 0;background:transparent;margin-top:40px}.skill-row h3{font-size:1.9rem;font-weight:540}.skill-row .button{background:#e7eee0;border-color:#c3d0bb}.steps{gap:45px}.steps li{padding-top:22px}.steps h3{font-family:var(--serif);font-weight:540;font-size:1.65rem;letter-spacing:-.035em;margin-top:19px}.steps p{font-size:.88rem}.soft-section{background:#e8eee0;padding-block:75px;border-block:1px solid #d6dfcb}.need-list article{gap:27px}.need-list h3{font-family:var(--serif);font-size:1.4rem;font-weight:540;letter-spacing:-.03em}.need-list p{font-size:.88rem}.need-list article>span{font-family:var(--serif);font-size:.82rem}.aside-card{border:0;border-top:1px solid #bbc8b4;border-radius:0;padding:31px 0 10px}.lower-grid{gap:70px;padding-top:45px}.aside-card h2{font-size:2.4rem}.aside-card>p:not(.eyebrow){max-width:460px;font-size:.88rem}.closing h2{font-weight:540}.footer{background:#f5efe1}.footer-top{align-items:center;padding-bottom:35px}.footer-top>p{font-size:1.7rem;font-weight:500}.footer-bottom{font-size:.65rem}.page-head h1{font-weight:560;line-height:1.06}.builder{border:0;border-radius:4px 24px 4px 4px;border-top:2px solid #b3c6a7;background:#edf2e4}.builder h2{font-family:var(--serif);font-weight:540}.builder input,.builder textarea,.reading textarea{border-radius:3px;border-color:#a9b99e;background:#fffdf6}.notice{border-radius:2px 16px 2px 2px;background:#e8eee0;border-color:#d0ddc4}.notice h2,.small-print h2{font-family:var(--serif);font-size:1.4rem;font-weight:540}.guide-steps h2{font-family:var(--serif);font-size:1.45rem;font-weight:540}.reading h2{font-weight:540}.page-head .lead{font-size:1.13rem}
@media(max-width:1100px){.nav nav{gap:19px}.nav nav>a{font-size:.77rem}.hero{gap:5%}.hero h1{font-size:4.7rem}.brand-logo-frame{width:226px}}
@media(max-width:1000px){.nav-inner{min-height:100px;flex-wrap:wrap;gap:0}.js .menu-button{display:block}.nav nav{width:100%;flex-wrap:wrap;gap:16px;padding-bottom:18px}.js .nav nav{display:none;flex-direction:column;align-items:stretch;gap:0;padding:5px 0 20px}.js .nav nav[data-open=true]{display:flex}.nav nav>a{padding:11px 4px;font-size:.88rem}.nav nav>.button{margin-top:8px}.hero .eyebrow{font-size:.57rem}.result-paper h2{font-size:1.7rem}.idea-note p{font-size:1.45rem}.skill-row{padding-block:27px}}
@media(max-width:760px){.brand-logo-frame{width:188px}.nav-inner{min-height:88px}.hero{padding-block:37px 49px;grid-template-columns:1fr;gap:38px}.hero .eyebrow{font-size:.6rem;line-height:1.9;letter-spacing:.09em}.hero h1{font-size:clamp(3.55rem,11vw,4.8rem);line-height:1.04;margin-top:23px}.lead{font-size:1.04rem}.hero .actions{gap:24px;margin-top:27px}.hero-note{font-size:.74rem;max-width:330px;line-height:1.75}.example-board{padding:0}.board-top{margin-left:0;margin-bottom:24px;padding-top:15px}.idea-note{width:80%;margin-left:6px;padding:23px 23px 19px}.idea-note p{font-size:1.65rem}.hand-arrow{right:-42px}.plan-note{margin:26px 0 25px 12%;padding:18px}.result-note{padding-left:0}.result-paper{padding:21px 22px}.result-paper h2{font-size:2rem}.result-paper p{font-size:.67rem}.result-note>.text-link{font-size:.73rem}.board-caption{font-size:.63rem;margin-left:0}.quiet-strip .wrap{gap:12px;padding-block:22px}.section{padding-block:60px}.section-intro h2{font-size:2.65rem}.toolkit{padding-top:32px;gap:32px}.toolkit h3{font-size:2.15rem}.toolkit p{max-width:none}.toolkit .text-link{font-size:.84rem}.skill-row{padding-block:25px;margin-top:31px;gap:22px}.skill-row h3{font-size:2rem}.steps{gap:27px}.steps h3{margin-top:0;font-size:1.55rem}.steps li{gap:0 20px}.steps .step-number{padding-top:4px}.soft-section{padding-block:55px}.need-list h3{font-size:1.35rem}.availability h2{font-size:2.6rem}.lower-grid{padding-top:15px;gap:30px}.aside-card h2{font-size:2.55rem}.closing{padding-block:72px}.closing h2{font-size:2.95rem}.footer-top{align-items:start}.footer-top>p{font-size:1.5rem}.footer-top>.brand{margin-bottom:4px}.footer-bottom{font-size:.65rem}.page-head h1{font-size:3.6rem}.builder{padding:26px 22px}.guide-steps h2{font-size:1.38rem}}
@media(max-width:360px){.hero h1{font-size:3.12rem}.hero .eyebrow{font-size:.52rem;letter-spacing:.08em}.idea-note p{font-size:1.43rem}.result-paper{padding-inline:17px}.result-paper h2{font-size:1.75rem}.result-paper p{font-size:.6rem}.brand-logo-frame{width:177px}.section-intro h2{font-size:2.4rem}.aside-card h2{font-size:2.25rem}.closing h2{font-size:2.65rem}}

/* Allow input text and its padding to grow together when text size increases. */
input{height:auto;min-height:47px}

.workflow-preview{border:0;border-top:1px solid var(--line);margin:22px 0 18px;padding-top:13px;font-size:.83rem}.workflow-preview summary{font-weight:600;cursor:pointer;color:var(--green)}.workflow-preview blockquote{margin:17px 0;padding-left:14px;border-left:2px solid #d9ac75;line-height:1.7}.workflow-preview .caption{font-size:.72rem}.example-steps{margin:35px 0 25px;border-bottom:1px solid #b7c6b3}.example-steps>details{border-top:1px solid #b7c6b3;padding:0}.example-steps summary{cursor:pointer;font-family:var(--serif);font-size:1.6rem;font-weight:540;padding:22px 8px}.example-steps summary>span{font-family:var(--sans);font-size:.75rem;color:var(--green);margin-right:22px}.example-detail{padding:0 9px 25px 55px;max-width:950px}.example-detail>blockquote{margin:0 0 18px;font-family:var(--serif);font-size:1.7rem;line-height:1.3;max-width:760px}.example-detail>p{font-size:.87rem;line-height:1.7;max-width:720px}.shot-list{width:100%;border-collapse:collapse;font-size:.83rem;line-height:1.6}.shot-list caption{text-align:left;font-weight:600;color:var(--green);padding-bottom:15px}.shot-list th,.shot-list td{text-align:left;vertical-align:top;padding:13px 15px;border-bottom:1px solid var(--line)}.shot-list th:first-child{white-space:nowrap;padding-left:0}.shot-list thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.shot-list td:nth-child(2){min-width:110px;font-weight:600}.questions{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.questions h2{font-size:2.7rem}.faq-list>details{border-top:1px solid #b7c6b3;padding:18px 0}.faq-list>details:last-child{border-bottom:1px solid #b7c6b3}.faq-list summary{font-weight:600;cursor:pointer;line-height:1.6}.faq-list p{font-size:.88rem;line-height:1.75;padding-left:17px}.workflow-preview summary:hover,.faq-list summary:hover,.example-steps summary:hover{color:var(--green)}summary:focus-visible{outline:2px solid var(--green);outline-offset:5px}@media(max-width:760px){.example-steps summary{font-size:1.35rem;padding:20px 2px}.example-steps summary>span{margin-right:13px}.example-detail{padding:0 0 25px}.example-detail>blockquote{font-size:1.45rem}.shot-list{font-size:.72rem}.shot-list th,.shot-list td{padding:10px 7px}.shot-list td:nth-child(2){min-width:0}.questions{grid-template-columns:1fr;gap:25px}.questions h2{font-size:2.4rem}.faq-list p{padding-left:0}}
@media(max-width:480px){.shot-list{font-size:.85rem}.shot-list caption{font-size:.8rem}.shot-list thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.shot-list tbody tr{display:grid;grid-template-columns:60px 1fr;border-bottom:1px solid var(--line);padding:14px 0;gap:5px 10px}.shot-list tbody th{grid-column:1;grid-row:1/span 2;padding:0;border:0;font-size:.76rem}.shot-list tbody td{grid-column:2;padding:0;border:0}.shot-list tbody td:nth-child(2){font-size:.92rem}}

/* Let enlarged text determine the content width instead of overflowing a grid. */
.wrap{overflow-wrap:anywhere}
.hero>*,.toolkit>*,.guide-grid>*,.steps>*,.questions>*{min-width:0}
.step-number{width:auto;min-width:24px;height:auto;min-height:24px}
.toolkit .text-link{max-width:100%;min-width:0}
@media(max-width:760px){
  .idea-note{transform:none}
  .board-top,.note-head{flex-wrap:wrap}
  .steps li{grid-template-columns:max-content minmax(0,1fr)}
}
@media(max-width:480px){
  .shot-list tbody tr{grid-template-columns:minmax(60px,3.5em) minmax(0,1fr)}
  .shot-list tbody th{white-space:normal}
}

/* Editorial finish: readable artifacts, clear destinations and one shared rhythm. */
:root{--sans:Arial,Helvetica,sans-serif;--line:#d4d7c9;--muted:#4f6167}
html{scroll-padding-top:130px}
::selection{background:#f3d6a3;color:var(--ink)}
.nav{background:#fcf7edf5;backdrop-filter:blur(14px)}
.nav-inner{min-height:104px}
.brand-logo-frame{width:230px}
.nav nav{gap:24px}
.nav nav>a{font-size:.82rem;line-height:1.5}
.nav a[aria-current="page"]{text-underline-offset:7px;text-decoration-thickness:1px}
.nav a.button[aria-current="page"]{color:var(--paper)}
.nav-status{display:inline-block;font-size:.61rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border:1px solid #cbd3c3;padding:1px 4px;margin-left:3px;vertical-align:middle}
.eyebrow,.hero .eyebrow{font-size:.72rem;line-height:1.8;letter-spacing:.105em}
.hero{padding-block:58px 68px;gap:7%;align-items:center}
.hero h1{font-size:clamp(4rem,6.2vw,5.8rem);line-height:1.025;margin-block:23px 28px}
.hero .lead{font-size:1.15rem;max-width:490px}
.hero .actions{gap:22px;align-items:flex-start}
.hero-note{font-size:.88rem;line-height:1.7;margin-top:26px}
.hero-availability{display:block;font-weight:600;color:var(--green);margin-bottom:7px}
.button{font-size:.9rem;transition:background .15s ease,box-shadow .15s ease}
.button.primary:hover{box-shadow:0 4px 0 #173d2d18}
.text-link{font-size:.9rem;line-height:1.55;gap:12px}
.hero .text-link{padding-block:13px 7px;font-size:.86rem}
.example-board{padding:0;max-width:530px}
.board-top{margin:0 0 24px;border-color:#afbea8;padding-top:13px;align-items:baseline;flex-wrap:wrap}
.board-top .eyebrow{font-size:.72rem;margin:0}
.sample-tag{font-size:.7rem;letter-spacing:.05em}
.idea-note{background:#f5dcaa;padding:23px 26px;border-radius:3px 19px 3px 3px;box-shadow:0 9px 20px #7055240b;margin-left:7px;transform:rotate(-2deg);width:82%}
.note-label{font-size:.65rem;letter-spacing:.09em}
.idea-note p{font-size:1.85rem;line-height:1.2;margin-block:12px 6px}
.hand-arrow{right:-40px;bottom:6px}
.plan-note{margin:23px 0 22px 17%;padding:17px 20px;background:#e9eedf}
.plan-note p{font-size:.85rem;line-height:1.6}
.plan-tags{margin-block:12px}
.plan-tags span{font-size:.7rem;padding:4px 7px}
.note-head{font-size:.84rem;line-height:1.5;flex-wrap:wrap}
.step-number{font-size:.8rem}
.result-note{padding-left:0}
.result-paper{padding:22px 25px;background:#fffbf3;border:1px solid #e5ddcb;border-left:3px solid #bb7234;box-shadow:0 8px 24px #37341406}
.result-paper .eyebrow{font-size:.66rem}
.result-paper h2{font-size:2rem;line-height:1.08;margin-block:10px 16px}
.result-paper p{font-size:.82rem;line-height:1.9}
.result-paper b{font-weight:600}
.status{font-size:.66rem;padding:3px 8px}
.result-note>.text-link{font-size:.8rem;margin-top:15px}
.board-caption{font-size:.82rem;line-height:1.7;margin:16px 0 0}
.quiet-strip{background:#e9eedf;border-block:1px solid #d3ddc9}
.quiet-strip .wrap{padding-block:0;gap:0}
.quiet-strip a{display:flex;align-items:center;gap:14px;text-decoration:none;min-height:76px;font-size:.88rem;font-weight:600;padding:17px 26px;flex:1;border-right:1px solid #d3ddc9}
.quiet-strip a:first-child{padding-left:0}
.quiet-strip a:last-child{border:0;padding-right:0}
.quiet-strip a>span:first-child{font-family:var(--serif);font-size:.8rem;color:#4c6546}
.quiet-strip a>span:last-child{margin-left:auto;color:#9b5427}
.quiet-strip a:hover{color:#102b41;text-decoration:underline;text-underline-offset:5px}
.quiet-strip span:before{content:none}
.section{padding-block:88px}
#toolbox>.section-intro{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:0 8%;align-items:end}
#toolbox>.section-intro>.eyebrow{grid-column:1/-1;margin-bottom:16px}
#toolbox>.section-intro>h2{margin:0}
#toolbox>.section-intro>p:last-child{font-size:1rem;line-height:1.8;max-width:465px;margin-bottom:4px}
.toolkit{gap:22px;padding-top:36px;align-items:stretch}
.toolkit article{background:#f2f1e5;border:1px solid #d7dbc9;border-radius:3px 22px 3px 3px;padding:24px 25px 28px;display:flex;flex-direction:column;scroll-margin-top:135px}
.toolkit article:nth-child(2){background:#edf0e5}
.toolkit article:nth-child(3){background:#f7ebd7}
.workflow-top{display:flex;justify-content:space-between;gap:10px;align-items:start;margin-bottom:31px}
.workflow-top .availability-label{font-size:.72rem;letter-spacing:.07em;margin:3px 0 0}
.workflow-number{font:500 1.65rem/1 var(--serif);color:#70816a}
.toolkit h3{font-size:1.95rem;margin-bottom:16px}
.toolkit p{font-size:.96rem;line-height:1.75;max-width:none}
.workflow-preview{margin:8px 0 22px;padding-top:15px;border-color:#cbd3bf;font-size:.88rem}
.workflow-preview summary{font-size:.83rem;line-height:1.6;margin-bottom:0}
.workflow-preview blockquote{font-size:.9rem;border-color:#a6b69c}
.workflow-preview .caption{font-size:.82rem}
.toolkit .text-link{font-size:.86rem;align-self:start;margin-top:auto}
.availability-label{font-size:.68rem;line-height:1.8;letter-spacing:.08em}
.skill-row{padding-block:30px;margin-top:32px;gap:35px}
.skill-row h3{font-size:2rem}
.skill-row p{font-size:.95rem;line-height:1.75}
.caption{font-size:.8rem;line-height:1.8}
.worked-example{border-top:1px solid var(--line);display:grid;grid-template-columns:.85fr 1.35fr;gap:0 7%;align-items:start}
.worked-example>.section-intro{max-width:none;position:sticky;top:137px}
.worked-example .section-intro h2{font-size:3.3rem;margin-block:20px}
.worked-example .section-intro>p:last-child{font-size:1rem;line-height:1.8}
.worked-example>.text-link{grid-column:2;justify-self:start;margin-top:22px}
.example-steps{margin:0}
.example-steps>details{margin:0}
.example-steps summary{font-size:1.4rem;padding:21px 3px;margin:0;line-height:1.5}
.example-steps summary>span{font-size:.75rem;margin-right:12px}
.example-detail{padding:6px 0 25px}
.example-detail>blockquote{font-size:1.5rem;line-height:1.4}
.example-detail>p{font-size:.92rem;line-height:1.8}
.shot-list{font-size:.86rem}
.shot-list caption{font-size:.82rem;line-height:1.7}
.shot-list th,.shot-list td{padding:13px 10px}
.shot-list td:nth-child(2){min-width:0}
#community{background:#244f41;color:#fff9ec;border-color:#244f41}
#community .eyebrow,#community .availability-label,#community .lead{color:#d7e4c9}
#community .needs-layout>div:last-child>p:not(.availability-label){color:#f0f0df;font-size:1rem;line-height:1.8}
#community a:hover{color:#f3d6a3}
#community .availability-label{display:inline-block;border:1px solid #688371;padding:8px 12px;letter-spacing:.07em;font-size:.72rem}
#community .text-link{color:#fff9ec}
.soft-section{padding-block:72px}
.requirements-section{background:#edf0e4;border-top:0}
.needs-layout{gap:10%}
.need-list h3{font-size:1.5rem}
.need-list p{font-size:.96rem;line-height:1.75}
.need-list article>span{font-size:.9rem;flex:0 0 2ch;min-width:2ch;white-space:nowrap;overflow-wrap:normal}
.questions{gap:8%;grid-template-columns:1fr 1.2fr}
.faq-list summary{font-size:.95rem}
.faq-list p{font-size:.96rem;line-height:1.8}
.faq-list>details{margin:0;padding-block:22px}
.faq-list>details>summary{margin-bottom:0}
.faq-list>details[open]>summary{margin-bottom:16px}
.lower-grid{gap:7%;padding-top:0}
.aside-card{padding-block:32px 15px}
.aside-card>p:not(.eyebrow){font-size:.96rem;line-height:1.8}
.aside-card .text-link{font-size:.88rem}
.closing{padding-block:80px 90px}
.closing h2{font-size:clamp(3rem,4.7vw,4.6rem);line-height:1.06;margin-bottom:18px}
.closing-note{color:var(--muted);font-size:1rem;margin-bottom:28px}
.footer{padding-top:45px}
.footer-top{grid-template-columns:1fr 1fr 1.25fr;align-items:start;gap:5%}
.footer-top>.brand{align-self:start}
.footer-top>p{font-size:1.7rem;margin-top:15px}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;font-size:.82rem;line-height:1.6;padding-block:10px}
.footer-links a:hover{text-decoration:underline}
.footer-bottom{font-size:.75rem;padding-block:22px}
.page-head{padding-block:63px 48px}
.page-head h1{font-size:clamp(3rem,5.5vw,5.3rem);max-width:1050px}
.page-head .lead{font-size:1.2rem;max-width:760px;line-height:1.7}
.page-head .muted{font-size:.9rem;line-height:1.8}
.reading{max-width:850px}
.reading>p{font-size:1.03rem;line-height:1.85}
.reading h2{font-size:2.15rem;margin-top:38px}
.notice{padding:24px 27px;font-size:.95rem;line-height:1.8}
.notice h2{font-size:1.5rem;margin-top:0}
.approach-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;padding-bottom:25px}
.approach-intro{border-top:1px solid #b4c4aa;padding-top:26px}
.approach-intro h2{font-size:2.7rem;margin-block:17px 22px}
.approach-intro>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.8}
.approach-steps{list-style:none;margin:0;padding:0}
.approach-steps>li{display:grid;grid-template-columns:32px 1fr;gap:20px;border-top:1px solid #b4c4aa;padding-block:27px 23px}
.approach-steps .step-number{align-self:start;padding-top:4px;font-size:.85rem}
.approach-steps h2{font-size:1.85rem;line-height:1.2}
.approach-steps p{color:var(--muted);font-size:1rem;line-height:1.8;margin:0}
.route-next{display:flex;align-items:center;justify-content:space-between;gap:50px;border-top:1px solid var(--line)}
.route-next>div{max-width:680px}
.route-next h2{font-size:2.7rem}
.route-next p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.8}
.route-next>.button{flex-shrink:0}
.protocol-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;border-block:1px solid #bdc9b2;padding-block:30px;margin-bottom:45px}
.protocol-flow article{padding-right:18px;border-right:1px solid var(--line)}
.protocol-flow article:last-child{border:0;padding-right:0}
.protocol-flow h2{font-size:1.8rem;margin-block:23px 15px}
.protocol-flow p{font-size:.95rem;line-height:1.8;color:var(--muted);margin:0}
.release-list{max-width:1050px;padding-bottom:80px}
.release-list>article{display:grid;grid-template-columns:220px 1fr;gap:40px;padding-block:36px;border-top:1px solid #b8c7ae}
.release-list h2{font-size:2rem}
.release-list p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:680px}
.release-list .availability-label{padding-top:5px}
.release-list .actions{margin-top:18px;gap:24px}
.release-list .actions .text-link{font-size:.88rem}
.design-label{color:#875020}
.guide-grid{gap:7%}
.guide-steps h2{font-size:1.5rem}
.guide-steps p{font-size:1rem;line-height:1.8}
.builder{padding:32px;border-color:#9fb28f;box-shadow:0 12px 36px #1d3d2a06}
.builder label,.reading label{font-size:.9rem}
.builder input,.builder textarea{font-size:1rem;padding:13px 14px}
.builder input::placeholder,.builder textarea::placeholder{color:#6c746a;opacity:1}
.builder .actions .button,.builder .actions .text-button{font-size:.86rem}
#brief-result>p{font-size:.95rem}
#brief-text,#advanced-prompt{font-size:.85rem;line-height:1.7}
.small-print p{font-size:.95rem}
@media(max-width:1100px){
  .nav nav{gap:16px}.nav nav>a{font-size:.75rem}.brand-logo-frame{width:205px}
  .hero h1{font-size:4.6rem}.hero .eyebrow{font-size:.65rem}.hero .lead{font-size:1.05rem}
  .idea-note p{font-size:1.55rem}.result-paper h2{font-size:1.75rem}.result-paper p{font-size:.82rem}
  .toolkit{gap:15px}.toolkit article{padding-inline:20px}.toolkit h3{font-size:1.7rem}
  .workflow-top{margin-bottom:23px;flex-wrap:wrap}.workflow-number{margin-left:auto}
  .worked-example .section-intro h2{font-size:2.7rem}.worked-example{gap:5%}
}
@media(max-width:1000px){
  .nav-inner{min-height:92px}.brand-logo-frame{width:210px}.nav nav>a{font-size:.95rem;min-height:44px}.nav-status{font-size:.65rem}.nav nav{gap:0}
  .hero{gap:5%;padding-block:40px 55px}.hero h1{font-size:4.1rem}
  .hero .actions{gap:8px}.hero .text-link{font-size:.85rem}
  .result-paper p{font-size:.82rem}.plan-note{margin-left:10%;padding-inline:15px}.idea-note{width:86%}
  .quiet-strip a{font-size:.8rem;padding-inline:18px;gap:10px}
  .toolkit{grid-template-columns:1fr}.toolkit article{padding:25px 27px}.toolkit h3{font-size:2.1rem}.workflow-top{margin-bottom:20px}.toolkit p{max-width:650px}.workflow-preview{max-width:650px}.toolkit .text-link{margin-top:0}
  .protocol-flow{grid-template-columns:1fr 1fr;gap:30px}.protocol-flow article:nth-child(2){border:0}.protocol-flow h2{margin-top:15px}
}
@media(max-width:760px){
  html{scroll-padding-top:107px}.wrap{width:calc(100% - 40px)}
  .nav-inner{min-height:84px}.brand-logo-frame{width:185px}.menu-button{font-size:.85rem;border-radius:3px 10px 3px 3px}
  .hero{padding-block:35px 45px;gap:40px}.hero h1{font-size:clamp(3.45rem,11vw,4.8rem);line-height:1.04;margin-block:20px 23px}.hero .eyebrow{font-size:.66rem;line-height:1.85;max-width:300px}.hero .lead{font-size:1.07rem;line-height:1.75}.hero .actions{gap:15px;margin-top:25px}.hero .text-link{padding-block:10px 4px;font-size:.9rem}.hero-note{font-size:.88rem;line-height:1.7;max-width:350px}
  .example-board{padding:0;max-width:520px}.board-top{margin-bottom:23px;gap:5px 12px}.board-top .eyebrow{font-size:.65rem}.sample-tag{font-size:.63rem}
  .idea-note{width:84%;transform:none;margin-left:0;padding:22px}.idea-note p{font-size:1.8rem}.hand-arrow{font-size:45px;right:-39px}.plan-note{margin-left:10%;margin-block:21px}.plan-note p{font-size:.86rem}
  .result-paper{padding:22px 20px}.result-paper h2{font-size:2rem}.result-paper p{font-size:.82rem}.result-note>.text-link{font-size:.84rem}.board-caption{font-size:.82rem}.note-head{font-size:.85rem}.status{font-size:.64rem}
  .quiet-strip .wrap{flex-direction:column}.quiet-strip a{width:100%;min-height:58px;padding:15px 0;border-right:0;border-bottom:1px solid #d3ddc9;font-size:.9rem;gap:17px}.quiet-strip a:last-child{border:0}
  .section{padding-block:58px}.eyebrow{font-size:.7rem}.section-intro h2{font-size:2.65rem}
  #toolbox>.section-intro{display:block}#toolbox>.section-intro>h2{margin-block:17px 22px}#toolbox>.section-intro>p:last-child{font-size:1rem;line-height:1.8}
  .toolkit{padding-top:26px;gap:18px}.toolkit article{padding:23px 23px 28px;scroll-margin-top:110px}.workflow-top{margin-bottom:25px}.toolkit h3{font-size:2.05rem}.toolkit .text-link{font-size:.9rem}.toolkit p{font-size:1rem}.workflow-preview summary{font-size:.87rem}.workflow-preview .caption{font-size:.85rem}
  .skill-row{padding-block:27px;margin-top:26px}.skill-row p{font-size:1rem}.caption{font-size:.84rem}
  .worked-example{display:block}.worked-example>.section-intro{position:static}.worked-example .section-intro h2{font-size:2.7rem}.worked-example .section-intro>p:last-child{font-size:1rem}.example-steps{margin-top:30px}.example-steps summary{font-size:1.35rem;padding-block:21px}.example-detail{padding-top:6px}.example-detail>p{font-size:.95rem}.example-detail>blockquote{font-size:1.5rem}.shot-list{font-size:.84rem}.worked-example>.text-link{margin-top:26px}
  .soft-section{padding-block:52px}.needs-layout{gap:27px}.needs-layout h2{font-size:2.75rem}.needs-layout .lead{font-size:1.14rem}#community .availability-label{font-size:.72rem;line-height:1.8}#community .needs-layout>div:last-child{padding-top:0}.need-list h3{font-size:1.5rem}.need-list p{font-size:1rem}.need-list article{gap:20px}
  .questions{grid-template-columns:1fr;gap:25px}.questions h2{font-size:2.65rem}.faq-list summary{font-size:1rem}.faq-list p{font-size:1rem}
  .lower-grid{padding-top:0;gap:20px}.aside-card h2{font-size:2.5rem}.aside-card>p:not(.eyebrow){font-size:1rem}
  .closing{padding-block:63px 70px}.closing h2{font-size:clamp(2.7rem,10vw,3.6rem)}
  .footer-top{grid-template-columns:1fr;gap:18px}.footer-top>.brand{grid-column:auto}.footer-top>p{font-size:1.75rem;margin-block:4px 10px}.footer-links{font-size:.9rem;gap:15px 20px;grid-template-columns:1fr 1fr}.footer-bottom{font-size:.77rem;gap:10px}
  .page-head{padding-block:38px 30px}.page-head h1{font-size:clamp(2.75rem,10vw,3.7rem);margin-top:20px}.page-head .lead{font-size:1.08rem;line-height:1.75}.page-head .muted{font-size:.93rem}
  .reading>p{font-size:1rem}.reading h2{font-size:2rem}.notice{padding:22px;font-size:.95rem}
  .approach-layout{grid-template-columns:1fr;gap:30px}.approach-intro h2{font-size:2.5rem}.approach-steps>li{grid-template-columns:26px 1fr;gap:15px;padding-block:24px}.approach-steps h2{font-size:1.7rem}.approach-steps p{font-size:1rem}
  .route-next{display:block;padding-block:45px}.route-next h2{font-size:2.5rem}.route-next>.button{margin-top:12px}
  .protocol-flow{gap:26px 20px;padding-block:28px;margin-bottom:0}.protocol-flow article{padding-right:15px}.protocol-flow h2{font-size:1.55rem}.protocol-flow p{font-size:.95rem;line-height:1.75}
  .release-list{padding-bottom:50px}.release-list>article{grid-template-columns:1fr;gap:12px;padding-block:27px}.release-list .availability-label{margin:0}.release-list h2{font-size:2rem}.release-list .actions{gap:20px}
  .guide-grid{gap:25px}.guide-steps h2{font-size:1.5rem}.builder{padding:27px 22px}.builder h2{font-size:2rem}.builder label{font-size:.92rem}.builder input,.builder textarea{font-size:1rem}.builder .actions{gap:15px}#brief-text{font-size:.88rem}
}
@media(max-width:360px){
  .wrap{width:calc(100% - 32px)}.hero h1{font-size:2.9rem}.hero .eyebrow{font-size:.62rem}.brand-logo-frame{width:175px}.hero .lead{font-size:1.03rem}.idea-note p{font-size:1.55rem}.result-paper h2{font-size:1.8rem}.result-paper p{font-size:.82rem}.note-head{gap:7px}.status{margin-left:0}.plan-tags span{font-size:.68rem}.quiet-strip a{font-size:.85rem}.protocol-flow{grid-template-columns:1fr}.protocol-flow article{border-right:0;border-bottom:1px solid var(--line);padding:0 0 20px}.protocol-flow article:nth-child(2){border-bottom:1px solid var(--line)}
}
.concept-figure{margin:30px 0 0}
.concept-figure img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:70% center;border-radius:3px 22px 3px 3px;border:1px solid #e0d3bc}
.concept-figure figcaption{font-size:.82rem;line-height:1.8;color:var(--muted);padding-top:12px}
.concept-figure figcaption>span{display:block;font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--green);margin-bottom:4px}
.worked-example .section-intro>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:var(--muted)}
#community .needs-layout>div:last-child>.text-link{display:table;margin-top:15px}
@media(max-width:760px){.concept-figure{margin-top:25px}.concept-figure figcaption{font-size:.82rem}}

/* Verified independent review: preserve word boundaries and align guide markers. */
.result-paper h2,.idea-note p,.footer-top>p{word-spacing:.04em}
.guide-steps .step-number{align-self:flex-start;min-height:0;height:auto;padding-top:.4rem}
.artifact-status{margin:22px 0 14px;font-size:.92rem;line-height:1.8;color:var(--muted);max-width:60ch}
.artifact-status strong{color:var(--ink);font-weight:600}

/* Owner-supplied coastal terrace: decoration only; the real toolbox stays HTML. */
.hero-stage{
  background-color:#fbf8f1;
  background-repeat:no-repeat;
}
.hero-stage .hero{min-height:950px;padding-block:55px 245px;align-items:start}
.hero-stage .hero-copy{padding-top:30px}
.hero-stage .board-top{background:rgba(251,248,241,.96);padding:12px 10px;margin-left:0}
.hero-stage .result-note{background:#fffcf4;padding:15px 18px 18px;border:1px solid #e0d9c9}
.hero-stage .board-caption{background:#fbf8f1;padding:10px 12px;margin:0;border:1px solid #e0d9c9;border-top:0}
@media(max-width:1100px){
  .hero-stage{background-image:none}
  .hero-stage .hero{display:block;min-height:0;width:100%;padding:0}
  .hero-stage .hero-copy{padding:50px max(28px,calc((100vw - 740px)/2)) 0}
  .hero-stage .hero-copy:after{content:'';display:block;height:470px;margin-inline:calc(-1 * max(28px,calc((100vw - 740px)/2)));background:url('../img/terrace-desktop-1600.webp') center bottom / cover no-repeat}
  .hero-stage .hero-copy>.lead{max-width:650px}
  .hero-stage .hero-copy>.hero-note{max-width:600px;margin-bottom:0}
  .hero-stage .example-board{width:calc(100% - 56px);max-width:620px;margin:0 auto;padding-block:35px 45px}
  .hero-stage .board-top{background:transparent;padding-inline:0}
  .hero-stage .board-caption{background:transparent;border:0;padding:15px 0 0}
}
@media(max-width:760px){
  .hero-stage .hero-copy{padding:35px 20px 0}
  .hero-stage .hero-copy:after{height:clamp(300px,105vw,510px);margin-inline:-20px;background-image:url('../img/terrace-mobile-480.webp');background-image:image-set(url('../img/terrace-mobile-480.webp') 1x,url('../img/terrace-mobile-960.webp') 2x,url('../img/terrace-mobile-1440.webp') 3x);background-size:100% auto}
  .hero-stage .example-board{width:calc(100% - 40px);max-width:520px}
}
@media(max-width:360px){
  .hero-stage .hero-copy{padding-inline:16px}
  .hero-stage .hero-copy:after{margin-inline:-16px}
  .hero-stage .example-board{width:calc(100% - 32px)}
}
/* The landscape master's ivory fade is baked in. Move its scene beneath the
   copy, then protect reading with one continuous diagonal wash, not a panel. */
@media(min-width:1101px){
  .hero-stage{
    background-image:linear-gradient(145deg,#fbf8f1 6%,rgba(251,248,241,.97) 28%,rgba(251,248,241,.87) 42%,rgba(251,248,241,.5) 54%,rgba(251,248,241,0) 69%),url('../img/terrace-desktop-3200.webp');
    background-position:center center,right bottom;
    background-size:100% 100%,auto 135%;
  }
  .hero-stage .hero-note{color:#344c56}
}
@media(max-width:1100px){
  .hero-stage .hero-copy:after{mask-image:linear-gradient(to bottom,transparent,#000 48px)}
}
@media(min-width:481px) and (max-width:760px){
  .hero-stage .hero-copy:after{background-image:url('../img/terrace-mobile-960.webp');background-image:image-set(url('../img/terrace-mobile-960.webp') 1x,url('../img/terrace-mobile-1440.webp') 2x)}
}
