/* One consistent masthead, clear section paths and readable process details. */
:root{--header-height:104px}
html:root{scroll-padding-top:calc(var(--header-height) + 16px)}
.site-header{height:var(--header-height)}
.site-header .header-inner{max-width:1440px;padding-inline:5%;gap:24px}
.site-header nav{gap:18px;flex-shrink:0}
.site-header nav>a{font-size:13px;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
.site-header .menu-toggle{flex-shrink:0}
.section:not(.software-guide){max-width:1440px;padding-inline:5%}
.site-footer{max-width:1440px;padding-inline:5%}
.software-guide{max-width:820px}
main:focus{outline:none}
main [id]{scroll-margin-top:16px}
.site-header nav>a[aria-current="page"]{font-weight:700}
.site-header nav>.nav-cta[aria-current="page"]{color:white}
.page-jump{padding-top:0;padding-bottom:24px}
.page-jump a{font-size:13px}
.map-key a,.support-boundaries a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;list-style:none}
summary::after{content:'+';flex-shrink:0;font-size:22px;font-weight:400;color:var(--green);line-height:1}
details[open]>summary::after{content:'−'}
.setup-detail summary{min-height:48px}
.brief-extras summary{flex-wrap:wrap}.brief-extras summary span{margin-left:auto}
.process-overview{padding-top:16px}
.process-stage{display:grid;grid-template-columns:64px minmax(0,1fr);gap:24px;padding:28px 0;border-top:1px solid var(--line)}
.process-number{font-size:30px;line-height:1.2;color:var(--green);font-family:Georgia,serif}
.process-stage h2{font-size:28px;margin:0 0 12px;letter-spacing:-.6px}
.process-stage p{max-width:72ch;font-size:16px;line-height:1.75;margin:0 0 12px;color:var(--muted)}
.process-stage .stage-output{font-size:14px;margin:0;color:var(--green)}
.process-stage .stage-output strong{font-weight:600}
.guide-contents{padding:22px 24px;border:1px solid var(--line);border-radius:10px;background:#edf0e3;margin:0 0 28px}
.guide-contents .eyebrow{margin:0 0 12px;font-size:11px}
.guide-contents ol{display:grid;grid-template-columns:1fr 1fr;gap:6px 32px;padding-left:20px;margin:0;font-size:14px}
.guide-contents a{display:inline-block;padding:6px 0;min-height:36px}
.hero-product:focus-visible{outline:3px solid #588944;outline-offset:6px}
.price-card .eyebrow{font-size:11px}
@media(max-width:1200px){
 .site-header .menu-toggle{display:flex;gap:12px;align-items:center;min-height:44px;min-width:72px;padding:10px 0 10px 12px;border:0;background:transparent;font-size:13px;color:var(--green)}
 .site-header nav{display:none;position:absolute;top:var(--header-height);left:0;right:0;flex-direction:column;align-items:stretch;gap:4px;background:var(--ivory);border-bottom:1px solid var(--line);padding:14px 5% 20px;max-height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;box-shadow:0 15px 25px #173d240a}
 .site-header nav.open{display:flex}
 .site-header nav>a:not(.nav-cta){display:flex;padding:12px;font-size:16px;min-height:46px}
 .site-header nav>a:not(.nav-cta)::after{display:none}
 .site-header nav .nav-cta{display:flex;align-items:center;justify-content:center;min-height:46px;font-size:16px;margin-top:6px;padding:12px 16px}
}
@media(min-width:1201px){.site-header .menu-toggle{display:none}.site-header nav{position:static;display:flex;max-height:none}}
@media(max-width:1050px){.site-header .header-inner{padding-inline:4%}.section:not(.software-guide),.site-footer{padding-inline:4%}}
@media(max-width:780px){
 :root{--header-height:88px}
 .site-header .header-inner,.section:not(.software-guide),.site-footer{padding-inline:22px}
 .site-header .header-inner{gap:12px}.site-header nav{padding-inline:22px;top:var(--header-height)}
 .process-stage{grid-template-columns:36px minmax(0,1fr);gap:16px;padding:24px 0}
 .process-number{font-size:25px}.process-stage h2{font-size:24px}.process-stage p{font-size:15px}.process-stage .stage-output{font-size:13px}
 .guide-contents{padding:18px}.guide-contents ol{grid-template-columns:1fr;gap:0}.guide-contents a{min-height:44px;padding:10px 0}
 .page-jump a{font-size:12px}
}
@media(max-width:420px){.site-header .brand{font-size:42px;gap:10px}.site-header .brand img{width:58px;height:48px}}
@media(max-width:360px){.site-header .header-inner,.section:not(.software-guide),.site-footer{padding-inline:18px}.site-header .brand{font-size:38px;gap:9px}.site-header .brand img{width:50px;height:41px}}
