.caption-navigation{position:sticky;top:16px;display:grid;grid-template-columns:1fr auto 1fr;gap:22px;background:#f8faf5f5;backdrop-filter:blur(12px)}
.caption-navigation .caption-section-nav{gap:26px;justify-content:center}.caption-all-projects{justify-self:end;font-size:14px;white-space:nowrap}.caption-all-projects span{margin-left:8px}
.caption-page{--caption-muted:#5c695d;--caption-dark:#15261b}.caption-page section[id]{scroll-margin-top:20px}.caption-page .eyebrow{font-size:13px;letter-spacing:.09em}.caption-page p{line-height:1.9}.caption-page h3{line-height:1.5;font-weight:550;letter-spacing:-.025em}.caption-page h4{font-size:14px;font-weight:500;margin:0 0 12px;color:#577344}
.caption-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:90px;padding:80px 0 86px;align-items:center}.caption-hero h1{font-size:clamp(42px,4.8vw,68px);line-height:1.28;margin:24px 0 28px}.caption-hero h1>span{color:#596d55}.caption-lead{font-size:18px;color:var(--caption-muted);max-width:590px;margin:0}.caption-byline{font-size:14px;color:#657660;margin:26px 0 0}
.caption-hero-sheet{border-top:3px solid #223c24;border-bottom:1px solid #a9b5a0;padding:22px 0 0;transform:rotate(-2deg);margin:14px 5px}.caption-hero-sheet>.mono{font-size:12px;letter-spacing:.08em;color:#61725d;margin-bottom:28px}.caption-sheet-row{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:21px 0;border-top:1px solid #c6cfbf}.caption-sheet-row>span{font-size:14px;color:#66765d;padding-top:5px}.caption-sheet-row strong{font-size:35px;line-height:1.48;font-weight:500;letter-spacing:.01em}.caption-sheet-row p{font-size:19px;line-height:1.65;margin:0}.caption-sheet-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 0;font:12px var(--mono);letter-spacing:.06em;border-top:1px solid #c6cfbf;color:#4d6942}
.caption-context{background:var(--caption-dark);color:#edf3e7;padding:78px 0}.caption-context>.page-width{display:grid;grid-template-columns:.9fr 1.5fr;gap:80px}.caption-context .eyebrow{color:var(--green);margin-bottom:24px}.caption-context h2{font-size:36px;line-height:1.5}.caption-context-copy{font-size:25px;line-height:1.85!important;margin:0 0 34px;color:#d2decf}.caption-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0;padding-top:22px;border-top:1px solid #40543e}.caption-principles dt{color:var(--green);font-size:18px;margin-bottom:10px}.caption-principles dd{margin:0;font-size:14px;color:#b9cab2;line-height:1.8}
.caption-section{padding:76px 0;border-bottom:1px solid var(--line)}.caption-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:end;margin-bottom:38px}.caption-heading .eyebrow{margin:0 0 18px}.caption-heading h2{font-size:clamp(28px,3.2vw,40px);line-height:1.45}.caption-heading>p{font-size:16px;color:var(--caption-muted);margin:0;max-width:410px;justify-self:end}
.caption-formula-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid #acbca2;border-bottom:1px solid #acbca2}.caption-formula-tabs button{display:flex;align-items:center;justify-content:flex-start;gap:16px;text-align:left;border:0;border-right:1px solid #c8d2c0;background:transparent;color:#4b6043;padding:20px;font-size:17px}.caption-formula-tabs button:last-child{border-right:0}.caption-formula-tabs button>span{font:12px var(--mono);color:#728869}.caption-formula-tabs button[aria-selected=true]{background:#203b24;color:#f1f8e7}.caption-formula-tabs button[aria-selected=true]>span{color:var(--green)}.caption-formula-tabs button:focus-visible{outline-offset:-4px}
.caption-formula-panel{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;background:#e7eddf;padding:44px 38px;min-height:390px}.caption-formula-panel h3{font-size:29px;margin:10px 0 20px}.caption-formula-panel p{font-size:17px;margin-bottom:0;color:#516349}.caption-formula-panel aside{padding-left:32px;border-left:1px solid #bdcbb3}.caption-formula-panel ul{margin:0 0 24px;padding-left:20px;font-size:16px;line-height:1.95;color:#42543b}.caption-boundary-note{padding-top:20px;border-top:1px solid #bdcbb3}.caption-boundary-note p{font-size:16px}.caption-formula-panel>.eyebrow{font-size:13px}
.caption-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 38px}.caption-detail-grid article{position:relative;border-top:1px solid #aebfa4;padding:24px 0 0}.caption-index{font:13px var(--mono);color:#6c805f}.caption-detail-grid h3{font-size:23px;margin:15px 0 16px}.caption-detail-grid p{font-size:16px;color:#566650;margin:0}.caption-detail-grid .caption-detail-limit{border-left:2px solid #c1ceb6;padding-left:14px;font-size:14px;color:#6a7861;margin-top:18px}
.caption-checks{background:#e5ebde;padding:76px 0}.caption-check-list{border-top:1px solid #aebfa4}.caption-check-list details{border-bottom:1px solid #aebfa4}.caption-check-list summary{display:flex;align-items:center;gap:25px;padding:22px 0;cursor:pointer;list-style:none}.caption-check-list summary::-webkit-details-marker{display:none}.caption-check-list summary h3{font-size:24px;margin:0}.caption-expand{margin-left:auto;font-size:25px;color:#617e4d}.caption-check-list details[open] .caption-expand{transform:rotate(45deg)}.caption-check-body{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:0 0 27px 45px}.caption-check-body p{font-size:17px;color:#4d6045;margin:0}.caption-check-body h4{color:#6b815d}.caption-check-note{font-size:14px;color:#627555;margin:25px 0 0;max-width:800px}
.caption-decision-list article{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:34px;border-top:1px solid #bdc7b5;padding:29px 0}.caption-decision-list h3{font-size:22px;margin:12px 0 0}.caption-decision-list p{font-size:16px;margin:0;color:#69735f}.caption-decision-list article>p:last-child{color:#364f2b;border-left:2px solid #b0c59d;padding-left:24px}
.caption-workflow{border-bottom:0}.caption-workflow>ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;list-style:none;padding:0;margin:0}.caption-workflow li{display:flex;flex-direction:column;border-top:2px solid #668551;padding:23px 0 0}.caption-workflow li h3{font-size:23px;margin:17px 0 16px}.caption-workflow li p{font-size:16px;color:#5e6d55;margin:0 0 24px}.caption-output{margin-top:auto;font-size:14px;border-top:1px solid #c8d2bf;padding-top:15px;color:#405d32}.caption-outcome{border-top:1px solid #bdcab2;margin-top:70px;padding:40px 0 0;display:grid;grid-template-columns:1fr 1.5fr;gap:15px 70px}.caption-outcome .eyebrow{grid-column:1 / -1;margin:0 0 7px}.caption-outcome h3{font-size:32px;margin:0}.caption-outcome>p:last-child{font-size:17px;color:#5b6c51;margin:0}.caption-source{font-size:13px;color:#79836f;margin:36px 0 0}.caption-source a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1050px){.caption-navigation{gap:16px}.caption-navigation .brand-label{display:none}.caption-navigation .caption-section-nav{gap:18px}.caption-hero{gap:50px}.caption-context>.page-width{gap:45px}.caption-context h2{font-size:31px}.caption-context-copy{font-size:22px}.caption-formula-tabs button{gap:10px;padding:18px 13px;font-size:16px}.caption-formula-panel{gap:35px;padding:32px}.caption-detail-grid{gap:30px}.caption-workflow>ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.caption-decision-list article{gap:25px}.caption-decision-list h3{font-size:21px}}
@media(max-width:700px){html:has(.caption-page){scroll-padding-top:136px}.caption-navigation{top:8px;grid-template-columns:1fr auto;gap:12px;padding:13px 16px}.caption-navigation .wordmark{grid-column:1;grid-row:1}.caption-all-projects{grid-column:2;grid-row:1}.caption-navigation .caption-section-nav{grid-column:1 / -1;grid-row:2;justify-content:space-between;border-top:1px solid #dce2d5;padding-top:12px;gap:10px;font-size:14px}.caption-page section[id]{scroll-margin-top:0}.caption-hero{grid-template-columns:1fr;gap:42px;padding:47px 0 58px}.caption-hero h1{font-size:clamp(38px,8.7vw,58px);margin:18px 0 25px}.caption-hero h1 span br{display:none}.caption-lead{font-size:17px}.caption-byline{margin-top:22px}.caption-hero-sheet{transform:none;margin:0;max-width:510px;width:100%}.caption-sheet-row{grid-template-columns:66px 1fr;padding:18px 0}.caption-sheet-row strong{font-size:28px}.caption-sheet-row p{font-size:18px}.caption-context{padding:45px 0}.caption-context>.page-width{grid-template-columns:1fr;gap:27px}.caption-context h2{font-size:31px}.caption-context-copy{font-size:20px;margin-bottom:28px}.caption-principles{gap:14px}.caption-principles dt{font-size:17px}.caption-principles dd{font-size:14px}.caption-section,.caption-checks{padding:47px 0}.caption-heading{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.caption-heading h2{font-size:29px}.caption-heading>p{justify-self:start;max-width:none}.caption-heading .eyebrow{margin-bottom:12px}.caption-formula-tabs{grid-template-columns:1fr 1fr}.caption-formula-tabs button{font-size:16px;padding:17px 13px;gap:14px}.caption-formula-tabs button:nth-child(2){border-right:0}.caption-formula-tabs button:nth-child(-n+2){border-bottom:1px solid #aebda5}.caption-formula-panel{grid-template-columns:1fr;gap:26px;padding:27px 22px;min-height:0}.caption-formula-panel h3{font-size:25px}.caption-formula-panel aside{padding:25px 0 0;border-left:0;border-top:1px solid #bdcbb3}.caption-detail-grid{grid-template-columns:1fr 1fr;gap:28px 24px}.caption-detail-grid h3{font-size:21px;margin:12px 0}.caption-check-list summary{gap:18px;padding:20px 0}.caption-check-list summary h3{font-size:22px}.caption-check-body{gap:22px;grid-template-columns:1fr;padding:0 0 25px 35px}.caption-check-body p{font-size:16px}.caption-decision-list article{grid-template-columns:1fr;gap:18px;padding:25px 0}.caption-decision-list article>div{display:flex;gap:18px;align-items:baseline}.caption-decision-list h3{margin:0}.caption-decision-list article>p:last-child{padding-left:17px}.caption-workflow>ol{gap:32px 24px}.caption-workflow li h3{font-size:21px}.caption-outcome{grid-template-columns:1fr;gap:18px;margin-top:45px;padding-top:30px}.caption-outcome h3{font-size:28px}.caption-source{margin-top:30px}}
@media(max-width:390px){.caption-navigation .caption-section-nav{font-size:13px;gap:8px}.caption-detail-grid,.caption-workflow>ol{grid-template-columns:1fr}.caption-principles{grid-template-columns:1fr;gap:15px}.caption-principles>div{display:grid;grid-template-columns:46px 1fr;gap:12px}.caption-principles dt{margin:0}.caption-hero-sheet>.mono{font-size:11px}}
