/* Progressive enhancement: content and native anchors remain usable without JavaScript. */
html{scroll-padding-top:76px}main [id]{scroll-margin-top:76px}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
:where(a,button,summary,input,textarea,select):focus-visible{outline:2px solid currentColor;outline-offset:5px}
.craft-index{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:36px;padding:0 var(--craft-gutter);background:var(--craft-paper);color:var(--craft-ink);border-block:1px solid var(--craft-line);isolation:isolate}
.craft-index>span{font:11px/1.5 var(--craft-mono);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0}
.craft-index .craft-links{display:flex;gap:28px;overflow-x:auto;scrollbar-width:thin;min-width:0}
.craft-index a{position:relative;display:flex;align-items:center;min-height:62px;white-space:nowrap;font-size:13px;text-decoration:none;color:inherit;border:0}
.craft-index a::after{content:"";position:absolute;height:2px;inset:auto 0 0;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.craft-index a:hover::after,.craft-index a[aria-current="location"]::after{transform:scaleX(1)}
.craft-index a:focus-visible{outline-offset:-5px}
@media(max-width:820px){.craft-index{gap:18px;padding-inline:24px}.craft-index>span{display:none}.craft-index .craft-links{gap:24px}.craft-index a{min-height:54px;font-size:12px}html{scroll-padding-top:68px}main [id]{scroll-margin-top:68px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:0s!important;transition-duration:0s!important;scroll-behavior:auto!important}}
@media print{.craft-index,.study-dialog{display:none!important}}
/* Lintel: architectural scale, measured rules and readable engineering studies. */
:root{--craft-paper:#f4f1e9;--craft-ink:#243d32;--craft-line:#bfc6b8;--craft-mono:Plex,monospace;--craft-gutter:var(--pad)}
.hero h1{font-size:clamp(62px,6.2vw,96px);line-height:1.035;letter-spacing:-.055em;max-width:12ch;margin-bottom:28px}.hero .hero-purpose{font-size:17px;line-height:1.65}.hero-body{top:27%}.hero .light-button{margin-top:30px;min-height:50px;gap:40px}
.section{padding-block:clamp(64px,7.5vw,116px)}.section h2{letter-spacing:-.045em}.eyebrow,.section-label,.depth-kicker,.technical-tag{font-size:11px;line-height:1.65}
.hero-bottom small,.hero-bottom p,.hero .film-toggle{font-size:12px}.site-header nav>a{min-height:44px;display:inline-flex;align-items:center}.text-link,.diagram-open{min-height:44px;align-content:center;text-underline-offset:5px}
.section figcaption,.engineering-study figcaption{font-size:12px;line-height:1.75}.reference-metrics p,.rubin-metrics p,.source-note,.rubin-source,.structure-footnote,.source-boundary,.phase-record summary,.project-footer p{font-size:12px!important;line-height:1.8!important}
.project-register dt,.project-register dd,.reference-table dt,.reference-table dd,.system-register dt,.system-register dd,.interface-notes p,.structure-branches article>div>p:last-child{font-size:14px;line-height:1.8}.system-register dd{margin-left:0}.system-register dt{font-weight:500}
.rack-figure img,.rubin-figure img,.system-spread img{aspect-ratio:var(--study-ratio);min-height:0;object-fit:contain;background:#18352b}.engineering-study img{aspect-ratio:1440/660;height:auto}.rack-feature{align-items:center}.rack-reference .rack-feature{align-items:start}.depth-heading{gap:64px;margin-block:38px 56px}.depth-heading h2{font-size:clamp(40px,4.5vw,66px)}
.project-feature{background:#f1f0e7}.project-spread{gap:64px}.project-register dl>div{padding-block:25px}.project-register dt{font-size:12px}.project-register .technical-tag{margin-bottom:10px}.project-spread figure img{padding-top:0;border:0}.project-spread figure{border-top:1px solid #8c9d82;padding-top:24px}
.approach{background:#e5e8df}.home-materials{border-top:1px solid #c3c8ba}.cta-title{max-width:19ch}.scope-tabs{gap:24px}.scope-tabs button{font-size:13px;line-height:1.6;min-height:58px;border-bottom-width:2px}.scope-tabs [aria-selected=true]{color:#182f24}
.project-stages article{padding-block:36px}.phase-record{margin-top:15px}.engineering-sources li a{font-size:15px;min-height:44px}.engineering-sources li p{font-size:13px}
.site-footer a,.site-footer button{min-height:44px;align-content:center}.footer-bottom{align-items:center}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:24px}
.light-button,.text-link,.diagram-open,.depth-link,.rubin-home,.site-header nav>a,summary{transition:color .2s ease,background-color .2s ease,border-color .2s ease}.light-button:hover,.light-button:focus-visible{background:#f4f1e912}.depth-link:hover,.depth-link:focus-visible{background:#ffffff08}.diagram-open{width:fit-content;font-size:12px!important}.diagram-open:hover{text-decoration-thickness:2px}.scope-tabs button:hover{background:#dce3d5}
.study-dialog{width:min(1200px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid #74846e;background:#f4f1e9;color:#243d32;box-shadow:0 24px 100px #0005}.study-dialog::backdrop{background:#10241fe0;backdrop-filter:blur(5px)}.study-dialog header{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #b5c2af}.study-dialog h2{font:500 18px/1.4 Inter,sans-serif;letter-spacing:-.02em;margin:0}.study-actions{display:flex;gap:12px;flex-shrink:0}.study-actions button,.study-actions a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;background:transparent;color:inherit;border:1px solid #9aab91;font:13px Inter,sans-serif;cursor:pointer;text-decoration:none}.study-viewport{overflow:auto;max-height:calc(100dvh - 145px);overscroll-behavior:contain;padding:24px;background:#18352b}.study-viewport img{display:block;width:100%;height:auto;max-height:calc(100dvh - 195px);object-fit:contain;margin:auto}.study-viewport.is-zoomed img{width:1200px;max-width:none;max-height:none}.study-dialog:focus{outline:none}
@media(min-width:1100px){.engineering-sources .section-label{float:left;width:24%}.engineering-sources h2,.engineering-sources ol,.engineering-sources .source-boundary{margin-left:28%}.engineering-sources h2{margin-top:0}.project-spread{grid-template-columns:1.2fr 1fr}}
@media(max-width:1050px){.depth-heading{gap:36px}.project-spread{gap:32px}.scope-tabs{gap:14px}}
@media(max-width:820px){.hero h1{font-size:clamp(40px,11.5vw,70px);max-width:12ch;letter-spacing:-.05em}.hero-body{top:24%}.hero .hero-purpose{font-size:15px}.hero .light-button{margin-top:25px}.section{padding-block:64px}.depth-heading{gap:26px;margin-block:28px 34px}.depth-heading h2{font-size:clamp(34px,9.3vw,52px)}.scope-tabs button{font-size:12px}.scope-tabs{gap:12px}.rack-feature,.project-spread{gap:32px}.project-register dl>div{padding-block:22px}.engineering-study figcaption{padding-inline:24px}.reference-metrics p,.rubin-metrics p{font-size:12px}.project-stages article{padding-block:30px}.study-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.study-dialog header{padding:12px 16px;flex-wrap:wrap;gap:10px}.study-dialog h2{font-size:16px;width:100%}.study-actions{width:100%;justify-content:flex-end}.study-actions button,.study-actions a{padding-inline:12px}.study-viewport{padding:12px;max-height:calc(100dvh - 165px)}.study-viewport img{max-height:calc(100dvh - 200px)}.study-viewport.is-zoomed img{width:1000px}.footer-bottom nav{gap:16px}}

/* Review 2: preserve the intended two-line title and prevent short-window collisions. */
@media(min-width:821px){.hero-body{max-width:820px;right:var(--pad)}.hero h1{max-width:none;font-size:clamp(62px,5.7vw,88px)}.hero .hero-purpose{max-width:38ch}}
@media(min-width:821px) and (max-height:780px){.hero-body{top:23%}.hero h1{font-size:clamp(56px,5.4vw,76px);margin-top:22px}.hero .light-button{margin-top:16px}}
@media(max-width:820px){.hero h1{font-size:clamp(36px,11.5vw,70px)}}

/* Small captions retain the readable label size on mobile. */
.hero-foot .hero-description strong,#line .model-caption,.home .technical-tag,.rack-copy .technical-tag,.record-label{font-size:11px;line-height:1.65}
