:root{--bg-canvas:#1c1f24;--bg-surface:#292d32;--bg-surface-hover:#343a3e;--text-primary:#e5e7eb;--text-muted:#b6c0c4;--accent-primary:#14b8a6;--accent-secondary:#94dfc3;--border-subtle:#485156;--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(0,0,0,.25);--glow-accent:0 0 24px -4px #14b8a64d;--glass-backdrop:blur(16px) saturate(180%)}
*{box-sizing:border-box;border-radius:0!important}html{scroll-behavior:smooth}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:17px/1.75 system-ui,sans-serif;overflow-wrap:anywhere;hyphens:auto}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{line-height:1.15;font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,5.7vw,5.1rem);max-width:16ch;margin-bottom:1.5rem}h2{font-size:clamp(1.8rem,3.5vw,3rem)}h3{font-size:1.3rem}a{color:var(--accent-secondary);text-underline-offset:5px}a:hover{color:#fff}img{display:block;width:100%;height:100%;object-fit:cover}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}button{cursor:pointer}button,.button{display:inline-block;padding:13px 19px;background:transparent;color:var(--text-primary);border:1px solid var(--accent-primary);font:12px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:transform .35s var(--ease-kinetic),box-shadow .35s,background .35s}button:hover,.button:hover{background:var(--bg-surface-hover);transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}:focus-visible{outline:3px solid var(--accent-secondary);outline-offset:5px}.wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}.skip{position:absolute;left:20px;top:-100px;padding:12px;background:var(--bg-canvas);z-index:20}.skip:focus{top:12px}.site-header{position:relative;border-bottom:1px solid var(--border-subtle)}.header-inner{min-height:100px;display:flex;align-items:center;gap:32px;padding:20px 28px}.brand{display:flex;align-items:center;gap:12px;color:var(--text-primary);font-size:16px;font-weight:600;text-decoration:none;white-space:nowrap;flex-shrink:0}.brand-mark{width:25px;height:31px;border:1px solid var(--accent-primary);display:inline-block;position:relative}.brand-mark:after{content:"";position:absolute;inset:7px -5px 7px 7px;border:1px solid var(--accent-secondary);background:var(--bg-canvas)}.site-nav{display:flex;justify-content:space-between;gap:24px;flex:1}.nav-group{display:flex;align-items:center;gap:20px}.site-nav a{font:12px/1.5 ui-monospace,Consolas,monospace;text-decoration:none;color:var(--text-muted);white-space:nowrap}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent-secondary)}.menu-toggle{display:none}.eyebrow,.label,.badge,.step-number,.meta,figcaption,dt{font:12px/1.6 ui-monospace,Consolas,monospace;letter-spacing:.08em}.eyebrow,.label{color:var(--accent-secondary);text-transform:uppercase}.eyebrow{margin-bottom:24px}.lead{font-size:clamp(1.1rem,2vw,1.35rem);color:var(--text-muted);max-width:52ch}.muted,figcaption{color:var(--text-muted)}.hero{padding:76px 0 90px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:64px}.hero-art{min-height:440px;background:radial-gradient(ellipse at 55% 35%,#3b5852 0,transparent 53%),linear-gradient(125deg,#292d32,#1c1f24,#30433d);background-size:200% 200%;animation:gradientShift 12s ease infinite;position:relative;border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;perspective:800px;isolation:isolate}.room-object{width:63%;height:240px;position:relative;border:14px solid #777365;border-bottom:21px solid #a7997c;transform:rotateY(-18deg) rotateX(4deg);box-shadow:30px 35px 30px #0006,inset 15px 0 30px #0008;background:repeating-linear-gradient(90deg,#d4d0b866 0 2px,#595f5140 2px 22px),linear-gradient(150deg,#747867,#2b302a)}.room-object:before{content:"";position:absolute;inset:34% 16% 0;border:9px solid #3d433b;border-bottom:0;background:#1b2420;box-shadow:inset 0 10px 20px #0009}.room-object:after{content:"";position:absolute;width:52%;height:9px;background:#9d957e;bottom:13px;left:24%;box-shadow:0 14px 18px #0009;transform:skewX(-30deg)}.art-caption{position:absolute;bottom:15px;left:18px;right:18px;font:11px/1.6 ui-monospace,Consolas,monospace;color:#d3ded7}.section{padding:78px 0;position:relative}.section.alt{background:var(--bg-surface);clip-path:polygon(0 18px,100% 0,100% calc(100% - 18px),0 100%);padding-block:96px}.pathway{position:relative;padding-left:50px}.pathway:before{content:"";position:absolute;left:13px;top:5px;bottom:0;width:1px;background:var(--accent-primary)}.step-number{position:absolute;left:0;top:2px;background:var(--bg-canvas);border:1px solid var(--accent-primary);padding:3px 5px;color:var(--accent-secondary)}.alt .step-number{background:var(--bg-surface)}.section-heading{max-width:720px;margin-bottom:35px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px}.card{border:1px solid var(--border-subtle);background:var(--bg-surface);position:relative;transition:transform .4s var(--ease-kinetic),box-shadow .4s}.card:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}.card-media{aspect-ratio:4/3;position:relative}.badge{position:absolute;left:20px;bottom:-14px;background:var(--accent-primary);color:#102b26;padding:6px 11px;font-weight:bold}.card-body{padding:32px 23px 24px}.card-body p{color:var(--text-muted);font-size:15px}.card-body h3 a{color:var(--text-primary);text-decoration:none}.card-body a:last-child{font-size:14px}.horizontal{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border-subtle);background:var(--bg-canvas)}.horizontal .photo{aspect-ratio:16/9;min-height:100%}.horizontal .copy{padding:35px}.timeline{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:sequence}.timeline li{border-top:1px solid var(--accent-primary);padding-top:20px}.timeline li:before{counter-increment:sequence;content:"0" counter(sequence);font:12px ui-monospace,monospace;color:var(--accent-secondary)}.timeline h3{margin:15px 0 10px}.timeline p{color:var(--text-muted);font-size:15px}.article-head{padding:65px 0 45px;border-bottom:1px solid var(--border-subtle)}.article-head h1{max-width:20ch}.article-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(240px,2fr);gap:64px;padding:55px 0 75px}.prose{max-width:70ch;margin:0 auto;min-width:0}.prose h2{font-size:1.9rem;margin:45px 0 22px}.prose h2:first-child{margin-top:0}.prose h3{margin-top:28px}.prose p,.prose li{color:var(--text-muted)}.prose strong{color:var(--text-primary)}.prose li{margin-bottom:12px}.study-aside{align-self:start;position:sticky;top:30px;min-width:0}.study-aside figure{margin:0 0 30px}.study-aside .photo{aspect-ratio:4/3}.study-aside figcaption{padding-top:14px;letter-spacing:0}.note{border-left:2px solid var(--accent-primary);padding:20px 23px;background:var(--bg-surface);margin-block:24px}.note p:last-child{margin-bottom:0}.diagram{padding:25px;background:var(--bg-surface);border:1px solid var(--border-subtle)}.floor-diagram{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:20px 0;border:3px solid #9eb5a8;padding:12px}.floor-diagram span{border:1px solid #91b3a0;min-height:90px;display:grid;place-items:center;text-align:center;font:12px/1.6 ui-monospace,monospace;padding:12px}.floor-diagram .approach{grid-column:1/-1;min-height:45px;border-style:dashed}.material-row{display:grid;grid-template-columns:100px 1fr;gap:20px;border-top:1px solid var(--border-subtle);padding:18px 0}.material-row dt{color:var(--accent-secondary)}.material-row dd{margin:0;color:var(--text-muted)}.source-list{padding-left:20px}.source-list li{margin-bottom:15px}.compact-media{display:grid;grid-template-columns:90px 1fr;gap:20px;align-items:center}.compact-media .photo{aspect-ratio:1}.feature-overlay{position:relative;min-height:320px;background:var(--bg-surface)}.feature-overlay>img{position:absolute;inset:0}.feature-overlay .overlay-copy{position:relative;margin-left:auto;width:min(75%,600px);padding:35px;background:#1c1f24ed;backdrop-filter:var(--glass-backdrop);border:1px solid var(--border-subtle)}.faq-list{max-width:850px;margin:45px auto 70px}.faq-list details{border:1px solid var(--border-subtle);background:var(--bg-surface);margin:15px 0;padding:22px 25px}.faq-list summary{cursor:pointer;font-size:1.1rem;line-height:1.5}.faq-list details p{color:var(--text-muted);margin-top:20px;margin-bottom:0}.narrow{max-width:74ch;margin:0 auto;padding:55px 0 80px}.form-step{border:1px solid var(--border-subtle);padding:28px;margin:25px 0;background:var(--bg-surface)}fieldset{min-width:0}legend{padding:0 12px;font:13px/1.6 ui-monospace,monospace;color:var(--accent-secondary)}label{display:block;margin-bottom:8px}input,textarea{width:100%;background:var(--bg-canvas);color:var(--text-primary);border:1px solid #76847d;padding:12px;margin-bottom:20px}textarea{resize:vertical;min-height:180px}.actions{display:flex;flex-wrap:wrap;gap:15px}.review{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;font:14px/1.8 ui-monospace,Consolas,monospace;background:var(--bg-canvas);padding:20px;border:1px solid var(--border-subtle)}.status{color:var(--accent-secondary);min-height:1.8em;font-size:14px}.footer{padding:55px 0 25px;border-top:1px solid var(--border-subtle)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:40px}.footer-col{border-top:1px solid var(--border-subtle);padding-top:20px}.footer h2{font:12px/1.5 ui-monospace,Consolas,monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-secondary)}.footer a{font-size:14px}.footer ul{list-style:none;padding:0;margin:0}.footer address{font-style:normal;font-size:14px;color:var(--text-muted)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;border-top:1px solid var(--border-subtle);padding-top:24px;margin-top:35px;font-size:12px;color:var(--text-muted)}.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease-kinetic),transform .7s var(--ease-kinetic)}.js .reveal-visible{opacity:1;transform:translateY(0)}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@media(min-width:1025px){.study-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}}
@media(min-width:769px) and (max-width:1024px){.header-inner{gap:20px;flex-wrap:wrap}.site-nav{flex-basis:100%}.hero{gap:30px}.article-layout{gap:35px}.hero-art{min-height:390px}.timeline{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:80px;padding:18px 20px;justify-content:space-between}.brand{font-size:14px}.menu-toggle{display:block;font-size:27px;padding:0 13px;line-height:1.6}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;background:var(--bg-surface);border-bottom:1px solid var(--accent-primary);padding:25px;box-shadow:var(--shadow-elevation)}.site-nav.open{display:grid;grid-template-columns:1fr 1fr;gap:25px;animation:menuEnter .25s var(--ease-kinetic)}.nav-group{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.site-nav a{font-size:14px}.hero{grid-template-columns:1fr;padding:50px 0 65px;gap:35px}.hero-art{min-height:380px}.hero h1{max-width:18ch}.section{padding-block:55px}.section.alt{padding-block:70px}.article-layout{grid-template-columns:1fr;gap:30px}.study-aside{position:static}.horizontal{grid-template-columns:1fr}.timeline{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-col:last-child{grid-column:1/-1}.feature-overlay .overlay-copy{width:90%}.pathway{padding-left:42px}.article-head{padding-top:45px}.narrow{padding-top:35px}}
@media(max-width:480px){.wrap{width:calc(100% - 32px)}.header-inner{padding-inline:16px}.brand{font-size:12px;gap:9px}.brand-mark{width:20px;height:26px}.hero-art{min-height:310px}.room-object{height:200px}.timeline,.grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-col:last-child{grid-column:auto}.pathway{padding-left:36px}.step-number{font-size:10px}.horizontal .copy{padding:24px}.form-step{padding:18px}.material-row{grid-template-columns:1fr;gap:5px}.feature-overlay .overlay-copy{width:100%;padding:25px}.actions>*{width:100%;text-align:center}.art-caption{font-size:10px}.floor-diagram{padding:7px}.floor-diagram span{padding:6px}}
@keyframes menuEnter{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}