:root{--bg:#F7F4EC;--ink:#14213D;--muted:#5A6275;--line:#DAD5C8;--card:#FCFAF5;--accent:#1F6F5E;--accent-fill:#4DB6A0;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:Inter,"Helvetica Neue",Arial,system-ui,-apple-system,"Segoe UI",sans-serif;--maxw:1120px;--narrow:760px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 var(--sans)}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:.18em}a:hover{color:var(--ink)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.6rem 1rem;z-index:10}.skip:focus{left:0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}.container.narrow{max-width:calc(var(--narrow) + 48px)}main:focus{outline:none}.site-header{border-bottom:1px solid var(--line)}.site-header .bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:18px;padding-bottom:18px;flex-wrap:wrap}.brand{font:1.15rem var(--serif);letter-spacing:.01em;color:var(--ink);text-decoration:none}.site-header ul{list-style:none;display:flex;gap:1.6rem;margin:0;padding:0;align-items:center;flex-wrap:wrap}.site-header nav a{color:var(--ink);text-decoration:none;font-size:.95rem}.site-header nav a:hover{text-decoration:underline}.site-header .lang a{font-size:.8rem;letter-spacing:.08em;border:1px solid var(--line);padding:.15rem .5rem;border-radius:999px}.site-header .lang a[aria-current=true]{background:var(--ink);color:#fff;border-color:var(--ink)}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15;letter-spacing:-.01em;margin:0 0 .6em}h1{font-size:clamp(2rem,4.6vw,3.4rem)}h2{font-size:clamp(1.5rem,2.6vw,2rem)}h3{font-size:1.25rem}.lead{font-size:1.2rem;color:var(--muted);max-width:46em}.eyebrow{font:500 .78rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 1.4rem}.hero{padding:clamp(56px,9vw,120px)0 clamp(40px,6vw,72px)}.hero h1{font-size:clamp(2.3rem,5.6vw,4.4rem);max-width:17em;margin-bottom:.5em}.cta{display:flex;flex-wrap:wrap;gap:.75rem;margin:2rem 0 0}.btn{display:inline-block;padding:.7rem 1.25rem;border:1px solid var(--ink);color:var(--ink);text-decoration:none;font-size:.95rem;border-radius:2px;background:0 0}.btn:hover{background:var(--ink);color:#fff}.btn.primary{background:var(--ink);color:#fff}.btn.primary:hover{background:var(--accent);border-color:var(--accent)}.block{padding:clamp(44px,6vw,76px)0;border-top:1px solid var(--line)}.proof{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.proof li{display:flex;flex-direction:column;gap:.4rem;border-top:2px solid var(--ink);padding-top:1rem}.num{font:clamp(1.8rem,3.2vw,2.6rem)/1.1 var(--serif);letter-spacing:-.01em}.lbl{color:var(--muted);font-size:.95rem}.more{font-size:.9rem;margin-top:auto;padding-top:.4rem}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;grid-template-columns:150px 1fr;gap:1.5rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}.timeline li:first-child{padding-top:0}.timeline .when{color:var(--muted);font-size:.95rem;font-variant-numeric:tabular-nums}.timeline p{margin:.25rem 0 0;color:var(--muted)}.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.cols3 p{margin:0;color:var(--muted)}.cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}.card{background:var(--card);border:1px solid var(--line);padding:0 0 1.2rem;display:flex;flex-direction:column}.card .thumb{display:block;margin-bottom:1rem}.card .thumb img{width:100%;aspect-ratio:16/9;object-fit:cover}.card .thumb img.contain{object-fit:contain;background:#f7f4ec;border-bottom:1px solid var(--line)}.card h3,.card p{padding:0 1.2rem;margin:0}.card h3{margin-bottom:.4rem}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{text-decoration:underline}.card p{color:var(--muted);font-size:.97rem}.all{margin:2rem 0 0}.eco{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.eco p{margin:0 0 .5rem;color:var(--muted)}.eco .links{display:flex;gap:1.1rem;flex-wrap:wrap}.eco .soon{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.contact h2{font-size:clamp(2rem,4vw,3rem)}.case{padding-top:clamp(40px,6vw,80px);padding-bottom:clamp(40px,6vw,80px)}.case h1{font-size:clamp(1.8rem,3.6vw,2.6rem)}.meta{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem 2rem;margin:2rem 0;padding:1.2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.meta dt{font:500 .72rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.meta dd{margin:.15rem 0 0}.results{list-style:none;margin:2rem 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.results li{border-top:2px solid var(--ink);padding-top:.9rem;display:flex;flex-direction:column;gap:.3rem}.prose{margin-top:2.5rem}.prose h2{margin-top:2.4em;padding-top:.2em}.prose h3{margin-top:1.8em}.prose hr{border:0;border-top:1px solid var(--line);margin:2.6rem 0}.prose ul,.prose ol{padding-left:1.3rem}.prose li{margin:.35rem 0}.prose figure{margin:2rem 0}.prose figure img{width:100%;border:1px solid var(--line)}.prose figcaption{font-size:.88rem;color:var(--muted);margin-top:.55rem}.related{margin-top:2.5rem;padding-top:1.2rem;border-top:1px solid var(--line)}.back{margin-top:1.5rem}.site-footer{border-top:1px solid var(--line);padding:2rem 0 3rem;color:var(--muted);font-size:.9rem}.site-footer p{margin:.2rem 0}.site-footer .fine{font-size:.8rem;max-width:60em}@media(max-width:960px){.proof{grid-template-columns:repeat(2,1fr)}.cards,.cols3,.eco{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){body{font-size:16px}.proof,.cards,.cols3,.eco,.meta{grid-template-columns:1fr}.timeline li{grid-template-columns:1fr;gap:.2rem}.site-header .bar{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.site-header,.cta,.skip{display:none}body{background:#fff}}