@layer reset{*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,p,figure{margin:0}img,svg{max-width:100%;display:block}}@layer base{:root{color-scheme:light;--ink:#111525;--muted:#50586b;--paper:#f4f5f0;--white:#fff;--blue:#2149f3;--blue-dark:#1636c5;--yellow:#f4dc55;--line:#cfd3cd;--sans:"Avenir Next", Avenir, "Gill Sans", "Trebuchet MS", sans-serif;--shell:min(1180px, calc(100% - 48px))}body{background:var(--paper);min-width:320px;color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;font-size:1rem;line-height:1.6}a{color:inherit;text-underline-offset:.2em}a:hover{color:var(--blue)}:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}::selection{background:var(--yellow);color:var(--ink)}h1,h2{letter-spacing:-.035em;text-wrap:balance;font-weight:700;line-height:.98}p{text-wrap:pretty}}@layer components{.shell{width:var(--shell);margin-inline:auto}.skip-link{z-index:20;background:var(--ink);color:var(--white);padding:10px 14px;position:fixed;top:12px;left:12px;transform:translateY(-170%)}.skip-link:focus{transform:none}.site-header{border-bottom:1px solid var(--line);background:#f4f5f0f0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:82px;display:flex}.brand{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand-mark{width:38px;color:var(--blue)}.brand-mark circle,.brand-mark path{fill:none;stroke:currentColor;stroke-width:2px}.brand strong{letter-spacing:-.02em;font-size:1.05rem;font-weight:700}.header-link{letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:700;text-decoration:none}.header-link span{margin-left:4px}.hero{grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);align-items:center;gap:clamp(44px,7vw,100px);min-height:calc(100vh - 82px);padding-block:clamp(58px,8vw,112px);display:grid}.hero-copy{max-width:590px}.kicker{color:var(--blue);letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px;font-size:.74rem;font-weight:700}.hero h1{max-width:10ch;font-size:clamp(3.6rem,7.2vw,6rem)}.hero-answer{letter-spacing:-.02em;max-width:21ch;margin-top:28px;font-size:clamp(1.35rem,2.2vw,1.85rem);font-weight:600;line-height:1.25}.hero-intro{max-width:58ch;color:var(--muted);margin-top:24px;font-size:1.05rem}.youtube-button{background:var(--blue);color:var(--white);align-items:center;gap:12px;margin-top:34px;padding:14px 18px 14px 22px;font-size:.9rem;font-weight:700;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.youtube-button:hover{background:var(--blue-dark);color:var(--white);transform:translateY(-2px)}.youtube-button svg{background:var(--white);border-radius:50%;width:25px;height:25px}.youtube-button path{fill:var(--blue)}.mechanism-figure{align-self:center;position:relative}.mechanism-figure:before{content:"";z-index:-1;background:var(--yellow);position:absolute;inset:24px -18px -18px 24px}.mechanism-figure>svg{width:100%;height:auto}.mechanism-figure figcaption{color:var(--muted);margin-top:18px;font-size:.82rem}.diagram-overline,.diagram-label,.flow-label,.diagram-caption{fill:#fff;font-family:var(--sans);letter-spacing:2px;font-weight:700}.diagram-overline{font-size:15px}.diagram-temperature{fill:#fff;font-family:var(--sans);letter-spacing:-3px;font-size:60px;font-weight:700}.diagram-rule{stroke:#ffffff73;stroke-width:2px}.diagram-label{font-size:17px}.material{stroke:#fff;stroke-width:2px}.metal{fill:#5673f6}.wood{fill:#f4dc55}.contact{fill:#111525;stroke:#fff;stroke-width:2px}.contact-label{fill:#fff;font-family:var(--sans);text-anchor:middle;font-size:13px;font-weight:700}.heat-flow{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:6px}.heat-flow-fast path{animation:1.8s ease-in-out infinite alternate heat-pulse}.heat-flow-fast path:nth-child(2){animation-delay:.18s}.heat-flow-fast path:nth-child(3){animation-delay:.36s}.heat-flow-slow{opacity:.72}.flow-label{text-anchor:middle;font-size:12px}.diagram-caption{font-size:14px}.method{background:var(--ink);color:var(--white)}.method-inner{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-content:center;gap:34px clamp(50px,9vw,130px);min-height:430px;padding-block:82px;display:grid}.method h2{max-width:12ch;color:var(--yellow);grid-row:1/3;font-size:clamp(2.7rem,5vw,4.8rem)}.method p{color:#c9cdd8;max-width:46ch;font-size:1.08rem}.method a{color:var(--white);text-decoration-color:var(--yellow);align-self:start;font-weight:700;text-decoration-thickness:2px}.method a:hover{color:var(--yellow)}.method a span{margin-left:8px;display:inline-block}.policy-page{width:min(720px,100% - 40px);min-height:70vh;margin:0 auto;padding:clamp(72px,10vw,128px) 0}.policy-page h1{font-size:clamp(3rem,7vw,5.2rem)}.policy-page .lede{color:var(--muted);margin-top:28px;font-size:1.25rem}.policy-copy{margin-top:64px}.policy-copy>*+*{margin-top:1.2em}.policy-copy h2{border-top:1px solid var(--line);letter-spacing:-.025em;margin-top:2.2em;padding-top:.8em;font-size:1.8rem}.not-found{text-align:center;place-items:center;min-height:70vh;display:grid}.not-found h1{font-size:clamp(3.2rem,8vw,6rem)}.not-found p{max-width:48ch;color:var(--muted);margin:24px auto 30px}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding:52px 0}.footer-grid{grid-template-columns:1fr auto;align-items:start;gap:34px 70px;display:grid}.footer-brand{font-weight:700}.footer-statement{color:var(--muted);margin-top:5px}.site-footer nav{flex-wrap:wrap;gap:12px 24px;display:flex}.site-footer nav a{font-size:.85rem;font-weight:600}.copyright{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;padding-top:24px;font-size:.75rem}@keyframes heat-pulse{0%{opacity:.55;transform:translateY(-4px)}to{opacity:1;transform:translateY(4px)}}}@media (width<=860px){:root{--shell:min(100% - 32px, 680px)}.hero{grid-template-columns:1fr;min-height:auto;padding-block:64px 88px}.hero-copy,.mechanism-figure{max-width:620px}.method-inner{grid-template-columns:1fr}.method h2{grid-row:auto}}@media (width<=520px){.header-inner{min-height:70px}.brand-mark{width:32px}.brand strong{font-size:.95rem}.hero{padding-top:48px}.hero h1{font-size:clamp(3rem,15vw,4.5rem)}.mechanism-figure:before{inset:12px -8px -8px 12px}.method-inner{min-height:390px;padding-block:64px}.footer-grid{grid-template-columns:1fr}.copyright{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
