/* V30 / consolidated visual and interaction layer */
:root{--v30-hero-height:clamp(440px,52vw,580px)}
/* Align logo, tagline and menu on one shared baseline */
html body .site-header .header-inner{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)!important;align-items:end!important;padding-block:0 15px!important;height:100%!important;min-height:0!important}
html body .site-header .wordmark,html body .site-header .header-center,html body .site-header .header-menu-wrap{align-self:end!important;margin:0!important;line-height:1!important;transform:none!important}
html body .site-header .wordmark{justify-self:start!important}
html body .site-header .header-center{justify-self:center!important;white-space:nowrap!important}
html body .site-header .header-menu-wrap{justify-self:end!important}
html body .site-header .menu-toggle{margin:0!important;transform:none!important}
/* Standard compact opening panel, including work and calculator */
html body .v9-hero,html body .hero:has(.hero-inner),html body .v20-work-intro{min-height:var(--v30-hero-height)!important;height:auto!important;max-height:none!important;box-sizing:border-box!important;border-bottom:1px solid #262a2e!important}
html body .v9-hero-inner,html body .hero-inner{padding-block:clamp(65px,8vw,105px)!important;min-height:var(--v30-hero-height)!important;display:flex!important;flex-direction:column!important;justify-content:center!important;box-sizing:border-box!important}
html body .hero:has(.hero-inner)::after{display:none!important;content:none!important}
html body .hero:has(.hero-inner)::before{inset:0!important;pointer-events:none!important}
html body .hero:has(.hero-inner) .hero-inner{position:relative!important;z-index:1!important}
html body .hero:has(.hero-inner) .hero-inner h1{font-size:clamp(44px,5vw,78px)!important;max-width:20ch!important;line-height:1.06!important;letter-spacing:-.055em!important;margin:20px 0 22px!important}
html body .hero:has(.hero-inner) .hero-inner .lead{max-width:66ch!important}
html body .hero:has(.hero-inner) .hero-inner .intro{max-width:70ch!important}
html body .v9-hero h1{font-size:clamp(45px,5vw,78px)!important;line-height:1.07!important}
html body .v20-work-intro{display:flex!important;align-items:center!important;padding-block:clamp(55px,6vw,90px)!important}
html body .v20-work-intro .v20-work-wrap{width:90%!important;margin-inline:auto!important;padding-block:0!important}
html body .v20-work-intro h1{font-size:clamp(45px,5vw,78px)!important}
html body .v30-page-kicker{font:650 12px/1.4 'DM Sans',sans-serif!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#b8bdc4!important;margin:0 0 24px!important}
html body .v9-hero .v30-page-kicker{margin-bottom:24px!important}
html body .v9-hero-inner .v9-scroll{margin-top:24px!important}
/* Calculator intro now uses the same compact panel */
html body:has(#lines) main{padding-top:0!important}
html body:has(#lines) main > .v30-page-kicker{margin-top:clamp(60px,7vw,92px)!important}
html body:has(#lines) main > h1{font-size:clamp(45px,5vw,78px)!important;line-height:1.07!important;max-width:20ch!important}
html body:has(#lines) main > .lead{max-width:72ch!important}
html body:has(#lines) main > .section:first-of-type{margin-top:38px!important}
/* Gold star block */
html body .v20-footer-shield img{width:80%!important;max-width:210px!important;height:auto!important;object-fit:contain!important;flex-shrink:0!important}
/* Card reveal */
html body .v30-expand-card{cursor:pointer;transition:border-color .25s ease,transform .3s ease,background .3s ease;outline-offset:4px}
html body .v30-expand-card:hover{border-color:#7b858e!important;transform:translateY(-3px)}
html body .v30-expand-card[aria-expanded=true]{border-color:#8b969e!important;background:#1c2228!important}
html body .v30-card-cue{font-size:12px;color:#d9e0e7;margin:20px 0 0;letter-spacing:.04em}
html body .v30-card-cue span{float:right;font-size:23px;line-height:15px}
html body .v30-card-details{margin-top:22px;padding-top:22px;border-top:1px solid #454d55;cursor:auto}
html body .v30-card-details[hidden]{display:none!important}
html body .v30-card-details h4{font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase;margin:16px 0 8px}
html body .v30-card-details p{font-size:14px!important;line-height:1.6!important;margin:0 0 12px;color:#c6cbd0}
html body .v30-card-details a{font-size:13px;text-decoration:underline;text-underline-offset:3px}
html body .v30-model-note{color:#aeb5bc;max-width:75ch;font-size:14px;line-height:1.6;margin-top:24px}
/* Story */
html body .v30-story-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(35px,7vw,120px);align-items:start;margin-top:42px}
html body .v30-story-grid p{max-width:65ch;line-height:1.75;color:#bdc2c7;font-size:clamp(16px,1.15vw,19px)}
html body .v30-story-year{font-size:clamp(64px,10vw,150px)!important;font-weight:800!important;line-height:1!important;letter-spacing:-.07em!important;color:#f4f5f5!important;margin:0 0 36px!important}
html body .v30-story-year span{display:block;font-size:14px;font-weight:500;letter-spacing:.08em;margin-top:10px;color:#aeb4bd}
html body .v30-story-quote{background:linear-gradient(145deg,#1c2228,#101214);border:1px solid #343a40;padding:clamp(24px,4vw,65px);border-radius:3px}
html body .v30-story-quote span{font-size:12px;letter-spacing:.12em;color:#a6b1bc}
html body .v30-story-quote blockquote{font-size:clamp(23px,2.6vw,43px);line-height:1.24;letter-spacing:-.04em;margin:32px 0;color:#f3f3f3}
html body .v30-values>div{border-top:1px solid #3b4046;padding:17px 0}
html body .v30-values strong{font-size:18px}
html body .v30-inline-link{display:inline-block;border-bottom:1px solid #a4abb1;padding-bottom:6px}
/* Estimator guidance */
html body .v30-calculator-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:36px 0;border-block:1px solid #3a3f43;margin:40px 0 28px}
html body .v30-guide-step{padding:18px;border:1px solid #353b40;background:#15191d;transition:transform .25s ease,border-color .25s ease}
html body .v30-guide-step:hover{transform:translateY(-3px);border-color:#87919b}
html body .v30-guide-step span{display:block;font-size:12px;color:#b6c0c9;margin-bottom:28px}
html body .v30-guide-step strong{font-size:17px}
html body .v30-guide-step p{font-size:14px;color:#afb7bf;line-height:1.6}
html body .v30-model-link a{color:#f5f5f5!important;text-decoration:underline;text-underline-offset:4px}
/* Subtle movement without obstructing content */
@media (hover:hover) and (prefers-reduced-motion:no-preference){html body .v9-summary,html body .tile,html body .v30-story-quote{transition:transform .35s ease,border-color .35s ease,background .35s ease}html body .v9-summary:hover,html body .tile:hover,html body .v30-story-quote:hover{transform:translateY(-4px);border-color:#707982}html body .v30-reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}html body .v30-reveal.v30-visible{opacity:1;transform:none}}
@media(max-width:800px){html body .v30-story-grid{grid-template-columns:1fr}html body .v30-calculator-guide{grid-template-columns:repeat(2,minmax(0,1fr))}html body .site-header .header-inner{padding-bottom:12px!important}}
@media(max-width:560px){html body .v30-calculator-guide{grid-template-columns:1fr}html body .site-header .header-center{font-size:clamp(10px,2.5vw,15px)!important;letter-spacing:.02em!important}html body .hero:has(.hero-inner) .hero-inner h1{font-size:clamp(39px,9vw,54px)!important}}
@media(prefers-reduced-motion:reduce){html body .v30-expand-card,html body .v30-guide-step{transition:none!important}}

html body .v30-calc-tagline{font-size:clamp(23px,2.3vw,35px);font-weight:600;line-height:1.25;color:#d4d7da;margin:8px 0 22px;letter-spacing:-.03em}html body:has(#lines) main > h1{margin-bottom:0!important}
