@font-face{font-family:lausanne;src:url(/fonts/TWKLausanne-300.woff2)format("woff2");font-weight:300;font-display:swap}@font-face{font-family:lausanne;src:url(/fonts/TWKLausanne-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:lausanne;src:url(/fonts/TWKLausanne-500.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:helvetica now;src:url(/fonts/HelveticaNowText-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:helvetica now;src:url(/fonts/HelveticaNowText-Medium.woff2)format("woff2");font-weight:500;font-display:swap}:root{--ink:#0a0a0a;--paper:#ffffff;--paper-2:#f4f3f0;--muted:#6b6b6b;--line:#e3e1dc;--line-dark:#2a2a2a;--accent:#0a0a0a;--font-display:"Lausanne", "Helvetica Now", Helvetica, Arial, sans-serif;--font-body:"Helvetica Now", Helvetica, Arial, sans-serif;--maxw:1240px;--gutter:clamp(20px, 5vw, 64px);--radius:2px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--paper);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:1.05;margin:0}.eyebrow{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:500;color:var(--muted);margin:0 0 18px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 26px;font-family:var(--font-body);font-size:14px;font-weight:500;letter-spacing:.02em;border-radius:var(--radius);border:1px solid var(--ink);transition:background .2s ease,color .2s ease,transform .15s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:#222}.btn-ghost{background:0 0;color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid var(--line)}.header-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:16px var(--gutter);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{justify-self:center;display:inline-flex;align-items:center}.brand-logo{height:56px;width:auto}.brand-logo-light{display:none}.header-cta{justify-self:end}.header-contact{justify-self:start}.lang-menu{position:relative;justify-self:end}.lang-caret{font-size:9px;margin-left:4px}.lang-list{display:none;position:absolute;right:0;top:calc(100% + 6px);min-width:100%;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;z-index:60;flex-direction:column;box-shadow:0 8px 24px rgba(0,0,0,8%)}.lang-list a{display:block;padding:9px 16px;font-size:13px;font-weight:500;text-align:center;color:var(--ink)}.lang-list a:hover{background:var(--paper-2)}.lang-menu.open .lang-list,.lang-menu:focus-within .lang-list{display:flex}.btn-sm{padding:10px 18px;font-size:13px}@media(max-width:560px){.brand-logo{height:36px}.btn-sm{padding:8px 13px;font-size:12.5px}.header-inner{padding-left:clamp(14px,4vw,24px);padding-right:clamp(14px,4vw,24px)}.header-contact,.header-lang{min-width:86px;line-height:1;padding-left:11px;padding-right:11px}}.home-hero .site-header{position:fixed;left:0;right:0;background:0 0;backdrop-filter:none;border-bottom-color:transparent;transition:background .3s ease,border-color .3s ease,backdrop-filter .3s ease}.home-hero .site-header .brand-logo-dark{display:none}.home-hero .site-header .brand-logo-light{display:block}.home-hero .site-header .header-cta{background:#fff;color:var(--ink);border-color:#fff}.home-hero .site-header .header-contact,.home-hero .site-header .header-lang{color:#fff;border-color:rgba(255,255,255,.6);background:0 0}.home-hero .site-header .header-contact:hover,.home-hero .site-header .header-lang:hover{background:#fff;color:var(--ink);border-color:#fff}.home-hero .site-header.scrolled{background:rgba(255,255,255,.9);backdrop-filter:saturate(180%)blur(14px);border-bottom-color:var(--line)}.home-hero .site-header.scrolled .brand-logo-dark{display:block}.home-hero .site-header.scrolled .brand-logo-light{display:none}.home-hero .site-header.scrolled .header-cta{background:var(--ink);color:#fff;border-color:var(--ink)}.home-hero .site-header.scrolled .header-contact,.home-hero .site-header.scrolled .header-lang{color:var(--ink);border-color:var(--line);background:0 0}main{display:block}.section{max-width:var(--maxw);margin:0 auto;padding:clamp(64px,9vw,128px)var(--gutter)}.section-head{max-width:720px;margin-bottom:clamp(40px,6vw,72px)}.section-head h2{font-size:clamp(28px,4.4vw,50px)}.section-lead{font-size:17px;color:var(--muted);max-width:800px}.section-lead p{margin:0 0 20px;line-height:1.7}.section-lead p:last-child{margin-bottom:0}.section-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-full{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-start;overflow:visible;color:#fff}@media(max-width:768px){.hero-full{min-height:100vh;min-height:100svh;overflow:hidden}}.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden;background-color:#8b8b8b}.hero-bg picture{position:absolute;inset:0;display:block}.hero-bg img{width:100%;height:100%;object-fit:cover;display:block;object-position:50% 42%}@media(max-width:768px){.hero-bg img{object-position:50% 0%}}.hero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(8,10,12,.62) 0%,rgba(8,10,12,.34) 26%,rgba(8,10,12,8%) 48%,rgba(8,10,12,0) 66%)}.hero-full .hero-inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;width:100%;padding:clamp(128px,17vh,190px)var(--gutter)clamp(40px,7vw,80px)}@media(max-width:768px){.hero-full .hero-inner{position:relative;padding:clamp(80px,12vh,150px)var(--gutter)clamp(40px,5vw,60px)}}.hero-copy{min-width:0;max-width:900px;margin:0 auto;text-align:center}.hero-full .eyebrow{color:rgba(255,255,255,.75)}.hero-title{font-size:clamp(26px,3.4vw,42px);letter-spacing:-.015em;line-height:1.1;max-width:none;white-space:nowrap;margin:0 auto 24px;color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.35)}.hero-subtitle{font-size:clamp(15px,1.5vw,19px);color:rgba(255,255,255,.92);max-width:48ch;margin:0 auto 32px;text-shadow:0 1px 16px rgba(0,0,0,.35)}@media(max-width:768px){.hero-subtitle{display:none}}.hero-intro{font-size:clamp(17px,1.7vw,21px);color:rgba(255,255,255,.92);max-width:52ch;margin:0 0 36px;text-shadow:0 1px 18px rgba(0,0,0,.35)}@media(max-width:768px){.hero-intro{display:none}}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.btn-on-dark{color:#fff;border-color:rgba(255,255,255,.7);background:0 0}.btn-on-dark:hover{background:#fff;color:var(--ink);border-color:#fff}@media(max-width:640px){.hero-full{min-height:78vh}.hero-title{white-space:normal;font-size:clamp(30px,8vw,40px)}}.grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}.grid-3{grid-template-columns:repeat(3,1fr)}.card{background:var(--paper);padding:36px 32px}.card h3{font-size:23px;margin-bottom:12px}.card p{color:var(--muted);font-size:15.5px;margin:0}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(30px,4vw,56px)clamp(32px,4vw,56px)}#services{padding-bottom:clamp(40px,6vw,72px)}#services .section-head{margin-bottom:0}.service-item{position:relative;padding-top:26px}.service-rule{position:absolute;top:0;left:0;width:100%;height:1px;background:var(--line)}.service-rule::after{content:"";position:absolute;left:0;top:0;height:100%;width:40px;background:var(--ink);transition:width .35s cubic-bezier(.2,.6,.2,1)}.service-item:hover .service-rule::after{width:100%}.service-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px}.service-item summary::-webkit-details-marker{display:none}.service-item h3{font-family:var(--font-display);font-size:clamp(19px,1.9vw,23px);letter-spacing:-.01em;margin-bottom:0}.service-item p{color:var(--muted);font-size:15.5px;margin:14px 0 0;max-width:42ch}.service-item[open] .faq-icon::after{transform:scaleY(0)}@media(max-width:860px){.services-grid{grid-template-columns:1fr 1fr}}@media(max-width:540px){.services-grid{grid-template-columns:1fr}}.section-dark{max-width:none;background:var(--ink);color:var(--paper)}.section-dark .section-head,.systems{max-width:var(--maxw);margin-left:auto;margin-right:auto}.section-dark .section-head h2{color:var(--paper)}.section-dark .eyebrow{color:#9a9a9a}.systems{display:grid;gap:0}.system{display:grid;grid-template-columns:260px 1fr;gap:40px;padding:40px 0;border-top:1px solid var(--line-dark);align-items:center}.system.has-image{grid-template-columns:240px 1fr 360px}.systems .system:last-child{border-bottom:1px solid var(--line-dark)}.system-label{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.system-label .status-badge{margin-top:8px}.system-sector{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:#9a9a9a}.system-name{font-family:var(--font-display);font-size:clamp(28px,4vw,46px)}.system-body{color:#cfcfcf;font-size:17px;max-width:60ch;margin:0;align-self:center;display:flex;flex-direction:column;align-items:flex-start}.system-media{margin:0;display:flex;flex-direction:column;align-items:stretch;gap:14px}.system-media-frame{position:relative;width:100%}.system-media .system-link{align-self:flex-start}.accolade-above{align-self:flex-start;display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;max-width:100%;background:0 0;padding:0;margin:8px 0 0}.accolade-ov-logo{height:14px;width:auto;max-width:100px;object-fit:contain;display:block;opacity:.8}.accolade-ov-text{display:flex;align-items:flex-start;gap:5px;font-size:8.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);line-height:1.2}.accolade-ov-text::before{content:"★";color:#c79a3a;font-size:10px;line-height:1}.accolade-ov-text.no-star{gap:0}.accolade-ov-text.no-star::before{content:none}.system-media .carousel img{width:100%;height:auto;object-fit:contain;border-radius:var(--radius);display:block}.carousel{position:relative;overflow:hidden;border-radius:var(--radius)}.carousel-track{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1)}.carousel-slide{flex:0 0 100%;min-width:0}.carousel-slide picture{display:block;overflow:hidden}.carousel-slide img{transition:transform .6s cubic-bezier(.2,.6,.2,1)}.carousel:hover .carousel-slide img{transform:scale(1.06)}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:0;cursor:pointer;background:rgba(255,255,255,.9);color:#111;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;z-index:2}.carousel:hover .carousel-arrow,.carousel:focus-within .carousel-arrow{opacity:1}.carousel-arrow:hover{background:#fff}.carousel-prev{left:10px}.carousel-next{right:10px}.carousel-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;gap:7px;justify-content:center;z-index:2}.carousel-dot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;transition:background .2s ease}.carousel-dot.is-active{background:#fff}@media(hover:none){.carousel-arrow{opacity:1}}.system-body p{margin:0 0 14px}.system-link{color:#fff;font-size:14px;border-bottom:1px solid #555;padding-bottom:2px}.system-link:hover{border-color:#fff}.table-wrap{overflow-x:auto;border:1px solid var(--line);-webkit-overflow-scrolling:touch}.compare{width:100%;border-collapse:collapse;min-width:720px;font-size:14.5px}.compare th,.compare td{text-align:left;padding:18px 20px;vertical-align:top;border-bottom:1px solid var(--line)}.compare thead th{font-family:var(--font-display);font-size:16px;font-weight:400;background:var(--paper-2)}.compare tbody th{font-weight:500;color:var(--ink);width:180px}.compare td{color:var(--muted)}.compare tbody tr:nth-child(odd){background:#faf9f7}.compare tbody tr:nth-child(even){background:var(--paper)}.compare .col-byld{color:var(--ink)}.compare thead .col-byld{background:var(--ink);color:var(--paper)}.table-hint{display:none}@media(max-width:820px){.table-hint{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;margin:18px 0 0}.table-hint .th-arrow{font-size:16px;line-height:1;color:var(--ink);animation:hintNudge 1.2s ease-in-out infinite}.compare tbody tr{background:var(--paper)!important}}@keyframes hintNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}@media(prefers-reduced-motion:reduce){.table-hint .th-arrow{animation:none}}.cell-toggle-group{display:flex;flex-direction:column;gap:8px;width:100%}.cell-key{background:var(--paper-2);border:1px solid var(--line);padding:8px 12px;font-family:inherit;font-size:14px;font-weight:500;color:var(--ink);cursor:pointer;border-radius:999px;text-align:left;transition:background .15s ease,border-color .15s ease;flex-shrink:0;position:relative;z-index:2}.cell-key:hover{background:#e8e7e4}.cell-key:focus-visible{outline:2px solid var(--ink);outline-offset:-1px}.cell-key-byld{background:var(--ink);color:#fff;border-color:var(--ink)}.cell-key-byld:hover{background:#222}.cell-key[aria-expanded=false]::after{content:" +"}.cell-key[aria-expanded=true]::after{content:" −"}.cell-desc{font-size:14px;line-height:1.5;color:var(--ink);display:none;margin-top:4px}.cell-desc:not([hidden]){display:block;position:relative;z-index:1}.col-byld .cell-desc{color:var(--muted)}.section-press{background:var(--paper-2);max-width:none;text-align:center}.section-press .section-head{max-width:var(--maxw);margin-left:auto;margin-right:auto}.press-carousel{position:relative;max-width:var(--maxw);margin:0 auto;overflow:hidden}.press-row{flex:0 0 100%;min-width:0;display:flex;gap:clamp(20px,3vw,44px);align-items:stretch;justify-content:center;padding:4px clamp(52px,5vw,64px)8px}.press-quote{flex:1;min-width:0;margin:0;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:30px}.press-source{display:flex;align-items:center;justify-content:center;min-height:48px}.press-quote blockquote{font-family:var(--font-display);font-size:clamp(18px,1.7vw,23px);line-height:1.34;letter-spacing:-.01em;margin:0;color:var(--ink)}@media(max-width:720px){.press-row{flex-direction:column;align-items:center;gap:56px;padding-left:20px;padding-right:20px}.press-quote{max-width:480px}.press-quote blockquote{font-size:clamp(20px,5vw,26px)}}.press-quote .press-logo{height:clamp(50px,7vw,80px);width:auto;max-width:300px;object-fit:contain;opacity:1}.press-quote .press-name{font-size:clamp(22px,3vw,28px);font-weight:500;letter-spacing:.02em;color:var(--ink)}.press-accolade{font-size:clamp(12px,1vw,14px);font-weight:500;letter-spacing:.02em;color:var(--muted);margin:0}.accolade-badge{display:inline-flex;align-items:center;gap:9px;margin:14px 0 4px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:7px 15px 7px 12px}.accolade-badge::before{content:"★";font-size:12px;color:#c79a3a}.accolade-logo{height:15px;width:auto;max-width:84px;object-fit:contain}.press-read-link{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:2px;transition:border-color .2s ease}.press-read-link:hover{border-color:var(--ink)}.press-carousel .carousel-arrow{background:0 0;color:var(--ink);border:1px solid rgba(10,10,10,.25);opacity:.35;top:50%;width:36px;height:36px;font-size:18px;transition:opacity .2s ease}.press-carousel .carousel-arrow:hover{opacity:.8;background:0 0;color:var(--ink)}.press-carousel .carousel-prev{left:8px}.press-carousel .carousel-next{right:8px}.press-carousel .carousel-dots{position:static;margin-top:28px}.press-carousel .carousel-dot{background:rgba(10,10,10,.18)}.press-carousel .carousel-dot.is-active{background:var(--ink)}@media(max-width:720px){.press-carousel .carousel-arrow{top:auto;bottom:0;transform:none;opacity:1;width:40px;height:40px;font-size:20px}.press-carousel .carousel-prev{left:calc(50% - 110px)}.press-carousel .carousel-next{right:calc(50% - 110px)}.press-carousel .carousel-dots{margin-top:44px;margin-bottom:16px}}.cta{text-align:center}.cta-inner{max-width:680px;margin:0 auto}.cta h2{font-size:clamp(30px,5vw,56px);margin-bottom:20px}.cta p{color:var(--muted);font-size:18px;margin:0 0 32px}.site-footer{background:var(--ink);color:var(--paper);padding:clamp(56px,8vw,96px)var(--gutter)32px}.footer-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.footer-logo{height:24px;margin-bottom:22px}.footer-brand p{color:#b8b8b8;max-width:38ch;font-size:15px}.footer-col h4{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:500;color:#9a9a9a;margin-bottom:16px}.footer-col p{margin:0 0 10px;font-size:15px;color:#d8d8d8}.footer-col a:hover{color:var(--paper);text-decoration:underline}.footer-bottom{max-width:var(--maxw);margin:56px auto 0;padding-top:24px;border-top:1px solid var(--line-dark);display:flex;justify-content:space-between;font-size:13px;color:#8a8a8a}.footer-bottom a:hover{color:var(--paper)}.prose{max-width:760px}.prose p{margin:0 0 1.2em}.header-cta{margin-left:8px}.section-alt{max-width:none;background:var(--paper-2)}.section-alt>.section-head,.section-alt>.grid,.section-alt>.table-wrap,.section-alt>.faq{max-width:var(--maxw);margin-left:auto;margin-right:auto}.section-lead{font-size:clamp(16px,1.6vw,19px);color:var(--muted);margin:18px 0 0}.section-lead p{margin:0 0 14px}.section-lead p:last-child{margin-bottom:0}.text-link{display:inline-block;font-weight:500;font-size:15px;border-bottom:1px solid var(--ink);padding-bottom:2px}.text-link:hover{opacity:.65}.stats-band{background:var(--ink);color:var(--paper)}.stats-inner{max-width:var(--maxw);margin:0 auto;padding:44px var(--gutter);display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.stat{display:flex;flex-direction:column;gap:10px}.stat-figure{font-family:var(--font-display);font-size:clamp(34px,4.5vw,52px);line-height:1;letter-spacing:-.03em}.stat-label{font-size:14px;color:#b8b8b8;line-height:1.4}.audience-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px}.audience-tab{font-family:var(--font-body);font-size:14px;font-weight:500;padding:11px 20px;border:1px solid var(--line);background:var(--paper);border-radius:999px;cursor:pointer;color:var(--muted);transition:all .2s ease}.audience-tab:hover{border-color:var(--ink);color:var(--ink)}.audience-tab.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.audience-panel{display:none}.audience-panel.is-active{display:grid;grid-template-columns:1.1fr 1fr;gap:48px}.audience-copy h3{font-size:clamp(24px,3vw,34px);margin-bottom:16px}.audience-copy p{color:var(--muted);margin:0 0 24px;max-width:48ch}.audience-points{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.audience-points li{padding:16px 0 16px 28px;border-bottom:1px solid var(--line);position:relative}.audience-points li::before{content:"";position:absolute;left:0;top:23px;width:12px;height:1px;background:var(--ink)}.project-card{display:flex;flex-direction:column}.project-card.has-image{padding:0;overflow:hidden}.project-card.has-image .project-top{margin:0 0 22px}.project-card.has-image>:not(.project-media){padding-left:32px;padding-right:32px}.project-card.has-image>.project-top{margin-top:28px}.project-card.has-image>p:last-child{padding-bottom:36px}.project-media{margin:0;aspect-ratio:4/3;overflow:hidden}.project-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.project-card.has-image:hover .project-media img{transform:scale(1.04)}.project-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.project-sector{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--muted)}.project-status{font-size:11px;letter-spacing:.06em;padding:4px 10px;border:1px solid var(--line);border-radius:999px;color:var(--ink)}.project-card h3{font-size:28px;margin-bottom:4px}.project-meta{font-size:13px;color:var(--muted);margin:0 0 14px}.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{list-style:none;cursor:pointer;padding:16px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:var(--font-body);font-size:15px;letter-spacing:0}.faq-item .faq-icon{flex-basis:12px;width:12px;height:12px}.faq-item .faq-icon::before{top:5px;width:12px}.faq-item .faq-icon::after{left:5px;height:12px}.faq-item summary::-webkit-details-marker{display:none}.faq-icon{position:relative;flex:0 0 16px;width:16px;height:16px}.faq-icon::before,.faq-icon::after{content:"";position:absolute;background:var(--ink);transition:transform .25s ease}.faq-icon::before{top:7px;left:0;width:16px;height:2px}.faq-icon::after{top:0;left:7px;width:2px;height:16px}.faq-item[open] .faq-icon::after{transform:scaleY(0)}.faq-answer{padding:0 0 20px;max-width:70ch}.faq-answer p{margin:0;color:var(--muted);font-size:14px}.section-contact{max-width:none;background:var(--ink);color:var(--paper);text-align:center}.contact-simple{max-width:640px;margin:0 auto}.contact-simple h2{color:var(--paper);font-size:clamp(30px,5vw,54px);margin:0 0 32px}.btn-light{background:#fff;color:var(--ink);border-color:#fff}.btn-light:hover{background:0 0;color:#fff;border-color:#fff}.contact-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:start}.section-contact .eyebrow{color:#9a9a9a}.contact-intro h2{color:var(--paper);font-size:clamp(28px,4vw,46px);margin-bottom:18px}.contact-intro p{color:#c2c2c2;max-width:42ch}.contact-details{list-style:none;margin:32px 0 0;padding:0}.contact-details li{display:flex;flex-direction:column;gap:4px;padding:16px 0;border-top:1px solid var(--line-dark);font-size:15px;color:#e0e0e0}.contact-details span{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:#8a8a8a}.contact-details a:hover{text-decoration:underline}.contact-form{background:var(--paper);color:var(--ink);padding:clamp(28px,4vw,44px);border-radius:var(--radius)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.field span{font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:15px;color:var(--ink);padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);width:100%}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink)}.field textarea{resize:vertical}.contact-form .btn{width:100%;margin-top:4px}.contact-form fieldset.avail{display:block;border:0;padding:0;margin:0 0 18px}.avail legend{font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:0;margin-bottom:12px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.chips:last-child{margin-bottom:0}.chip{position:relative;margin:0;display:inline-flex}.chip input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.contact-form .chip span{display:inline-block;padding:8px 15px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--ink);background:var(--paper);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.chip input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}.chip input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}.form-note{font-size:12.5px;color:var(--muted);margin:14px 0 0}.form-note code{background:var(--paper-2);padding:1px 5px;border-radius:3px}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-status{margin:14px 0 0;font-size:14px}.form-status.is-pending{color:var(--muted)}.form-status.is-success{color:#1c6b3c;font-weight:500}.form-status.is-error{color:#b22}.section-config{max-width:none;background:var(--paper-2)}.section-config>.section-head,.section-config>.configurator{max-width:920px;margin-left:auto;margin-right:auto}.config-noscript{color:var(--muted)}.config-shell{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.config-progress{height:4px;background:var(--line)}.config-progress-bar{display:block;height:100%;width:25%;background:var(--ink);transition:width .35s ease}.config-stage{padding:clamp(26px,4vw,46px)}.config-step-meta{text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--muted);margin-bottom:22px}.config-q{font-size:clamp(22px,3vw,32px);margin-bottom:26px}.config-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.config-card{text-align:left;cursor:pointer;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;display:flex;flex-direction:column;gap:6px;transition:border-color .2s ease,transform .15s ease}.config-card:hover{border-color:var(--ink);transform:translateY(-2px)}.config-card.is-selected{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.config-card-sector{font-family:var(--font-display);font-size:clamp(24px,3vw,32px);letter-spacing:-.015em;color:var(--ink);line-height:1.02}.config-card-name{text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--muted)}.config-card-blurb{font-size:13px;color:var(--muted);margin-top:6px}.config-readout{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.config-area{font-family:var(--font-display);font-size:clamp(28px,4vw,40px)}.config-units{font-size:15px;color:var(--muted)}.config-slider input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:3px;background:var(--ink);outline:none;margin:10px 0}.config-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--ink);cursor:pointer;border:3px solid var(--paper);box-shadow:0 0 0 1px var(--ink)}.config-slider input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--ink);cursor:pointer;border:3px solid var(--paper)}.config-slider-ends{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.config-group{margin-bottom:26px}.config-group-label{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--muted);margin-bottom:12px}.config-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.config-opt{text-align:left;cursor:pointer;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:4px;transition:border-color .2s ease}.config-opt:hover{border-color:var(--ink)}.config-opt.is-selected{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.config-opt-name{font-weight:500;font-size:15px}.config-opt-desc{font-size:12.5px;color:var(--muted)}.config-nav{display:flex;justify-content:space-between;align-items:center;margin-top:32px;gap:12px}.btn[disabled]{opacity:.35;pointer-events:none}.config-summary{color:var(--muted);font-size:14px;margin:0 0 20px}.config-result{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:32px;text-align:center}.config-figure{font-family:var(--font-display);font-size:clamp(30px,6vw,56px);letter-spacing:-.03em}.config-figure-sub{color:var(--muted);font-size:15px;margin-top:8px}.config-blur{filter:blur(11px);user-select:none;opacity:.8}.config-result.is-locked{padding:0;text-align:left}.config-result.is-locked .config-figure{padding:40px 32px 28px;text-align:center}.config-lock{border-top:1px solid var(--line);background:var(--paper-2);padding:26px 32px 32px}.config-form-lead{font-size:14.5px;color:var(--ink);margin:0 0 18px}.config-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.config-form .btn{width:100%;margin-top:6px}.config-error{color:#b00020;font-size:13px;margin:12px 0 0}.config-success{background:var(--ink);color:var(--paper);padding:18px 22px;border-radius:var(--radius);margin-top:18px;font-size:15px}.config-disclaimer{font-size:12.5px;color:var(--muted);margin:18px 0 0}.section-feaso-intro{padding-bottom:0}.section-feaso-intro h1{font-size:clamp(32px,6vw,64px);letter-spacing:-.03em}.section-feaso{display:block}.feaso{display:grid;grid-template-columns:360px 1fr;gap:32px;align-items:start}.feaso-h{font-size:20px;margin-bottom:22px}.feaso-inputs{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:28px;position:sticky;top:96px}.feaso-note{font-size:12px;color:var(--muted);margin:8px 0 0}.feaso-inputs input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:3px;background:var(--ink);margin:8px 0}.feaso-inputs input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--ink);border:3px solid var(--paper);box-shadow:0 0 0 1px var(--ink);cursor:pointer}.feaso-results{display:flex;flex-direction:column;gap:22px}.feaso-headline{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:32px}.feaso-headline-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#9a9a9a;margin-bottom:14px}.feaso-headline-figure{display:block;font-family:var(--font-display);font-size:clamp(36px,6vw,60px);letter-spacing:-.03em;line-height:1}.feaso-headline-sub{display:block;color:#b8b8b8;font-size:14px;margin-top:10px}.feaso-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.feaso-metric{background:var(--paper);padding:20px;text-align:left}.feaso-metric span{display:block;font-family:var(--font-display);font-size:24px;letter-spacing:-.02em}.feaso-metric label{display:block;font-size:12px;color:var(--muted);margin-top:4px}.feaso-wedge{border:1px solid var(--ink);border-radius:var(--radius);padding:26px}.feaso-wedge h3{font-size:18px;margin-bottom:18px}.feaso-wedge-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.feaso-wedge-row>div{padding:16px;background:var(--paper-2);border-radius:var(--radius)}.feaso-wedge-row .is-byld{background:var(--ink);color:var(--paper)}.feaso-wedge-row label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.feaso-wedge-row .is-byld label{color:#b8b8b8}.feaso-wedge-row span{font-family:var(--font-display);font-size:24px;letter-spacing:-.02em}.feaso-wedge-line{font-size:15px;color:var(--ink);margin:0}.feaso-breakdown{border:1px solid var(--line);border-radius:var(--radius)}.feaso-breakdown summary{cursor:pointer;list-style:none;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;font-weight:500}.feaso-breakdown summary::-webkit-details-marker{display:none}.feaso-table{width:100%;border-collapse:collapse}.feaso-table td{padding:12px 22px;border-top:1px solid var(--line);font-size:14px}.feaso-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}.feaso-table tr.is-total td{font-weight:600;border-top:2px solid var(--ink)}.feaso-lead{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(28px,4vw,44px);margin-top:28px}.feaso-lead-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;max-width:var(--maxw);margin:0 auto}.feaso-lead h3{font-size:clamp(22px,3vw,30px);margin-bottom:12px}.feaso-lead p{color:var(--muted);margin:0}.feaso-lead-form .btn{width:100%}.feaso-success{color:#0a7d2c;font-size:14px;margin:12px 0 0}@media(max-width:920px){.feaso{grid-template-columns:1fr}.feaso-inputs{position:static}.feaso-lead-inner{grid-template-columns:1fr;gap:20px}}@media(max-width:760px){.config-cards,.config-opts,.config-field-row{grid-template-columns:1fr}.feaso-metrics{grid-template-columns:1fr}.feaso-wedge-row{grid-template-columns:1fr}}@media(max-width:1040px){.nav,.header-cta{display:none}.nav-toggle{display:flex}.mobile-nav{display:none}.mobile-nav.open{display:flex}}@media(max-width:900px){.grid-3{grid-template-columns:1fr}.system,.system.has-image{grid-template-columns:1fr;gap:16px}.system-media .carousel img{height:clamp(220px,50vw,320px)}.footer-grid{grid-template-columns:1fr 1fr}.stats-inner{grid-template-columns:1fr 1fr;gap:28px}.audience-panel.is-active{grid-template-columns:1fr;gap:28px}.sustain-grid,.contact-grid{grid-template-columns:1fr;gap:36px}}@media(max-width:560px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:10px}.stats-inner{grid-template-columns:1fr}.field-row{grid-template-columns:1fr;gap:0}}@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.in-view{opacity:1;transform:none}.grid .reveal:nth-child(2){transition-delay:.06s}.grid .reveal:nth-child(3){transition-delay:.12s}}.system-hero{border-bottom:1px solid var(--line)}.system-hero-inner{max-width:var(--maxw);margin:0 auto;padding:clamp(40px,7vw,90px)var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}.system-hero h1{font-size:clamp(40px,6vw,76px);letter-spacing:-.03em;margin:14px 0 20px}.system-hero .lead{font-size:clamp(17px,1.6vw,20px);color:#2c2c2c;max-width:52ch}.system-hero picture img,.system-hero img{width:100%;height:clamp(320px,42vw,520px);object-fit:cover;border-radius:var(--radius)}.system-back{display:inline-block;margin-bottom:8px;font-size:13px;color:var(--muted)}.system-back:hover{color:var(--ink)}.system-detail{max-width:760px}.system-detail h2{font-size:clamp(24px,3vw,34px);margin:1.4em 0 .5em}.system-detail p{margin:0 0 1.1em}.system-detail ul{padding-left:1.1em;margin:0 0 1.4em}.system-detail li{margin:0 0 .5em}.system-eyebrow-row{display:flex;align-items:center;gap:12px}.system-eyebrow-row .eyebrow{margin-bottom:0}.status-badge{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.status-badge.is-available{background:#e7f3ec;color:#1c6b3c;border-color:#cfe6d8}.status-badge.is-dev{background:var(--paper-2);color:#8a6d1f;border-color:#e6dcc2}.system-figure{margin:2.4em 0}.system-figure img{width:100%;border-radius:var(--radius)}.system-figure figcaption{font-size:13px;color:var(--muted);margin-top:10px}.system-video video{width:100%;height:auto;display:block;border-radius:var(--radius);background:#000}.collaborators{margin-top:2.4em;padding-top:1.8em;border-top:1px solid var(--line)}.collaborators h2{margin:0 0 .6em}.collab-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 14px}.collab-list li{font-size:14px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--paper-2);margin:0}.collab-card{display:flex;align-items:center;gap:14px;border-radius:var(--radius)!important;padding:14px 18px!important}.collab-logo{display:flex;align-items:center;justify-content:center;width:92px;height:36px;flex:none}.collab-logo img{max-width:100%;max-height:100%;width:auto;height:auto}.collab-meta{display:flex;flex-direction:column;gap:2px}.collab-name{font-weight:600}.collab-role{font-size:13px;color:var(--muted)}@media(max-width:820px){.system-hero-inner{grid-template-columns:1fr}.system-hero picture{order:-1}}.portal{max-width:760px}.portal-lock .eyebrow{margin-top:18px}.portal-lock h1{font-size:clamp(34px,5vw,56px);letter-spacing:-.03em;margin:6px 0 14px}.portal-intro{color:var(--muted);max-width:46ch;margin:0 0 26px}.portal-form{max-width:380px}.portal-form .field{display:block;margin-bottom:16px}.portal-form .field span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:8px}.portal-form input{width:100%;padding:13px 14px;font-size:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.portal-form input:focus{outline:2px solid var(--ink);outline-offset:1px}.portal-form .btn{width:100%}.portal-error{color:#b22;font-size:14px;margin:14px 0 0}.portal-content{animation:portalIn .4s ease}@keyframes portalIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.header-spacer{justify-self:end}.portal-docs{margin-top:2.2em;padding-top:1.6em;border-top:1px solid var(--line)}.portal-docs h2{margin:0 0 .8em}.doc-list{list-style:none;padding:0;margin:0}.doc-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);margin-bottom:10px;flex-wrap:wrap}.doc-info{display:flex;flex-direction:column;gap:3px}.doc-title{font-weight:500}.doc-note{font-size:12.5px;color:var(--muted)}.doc-actions{display:flex;gap:8px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:28px}.project-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.project-card:hover{border-color:var(--ink);box-shadow:0 8px 24px rgba(0,0,0,8%)}.project-image{overflow:hidden;height:220px;background:var(--paper-2)}.project-image picture{display:block;height:100%}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.project-card:hover .project-image img{transform:scale(1.05)}.project-body{padding:24px}.project-year{font-family:var(--font-display);font-size:13px;color:var(--muted);margin:0 0 8px;text-transform:uppercase;letter-spacing:.05em}.project-card h3{font-size:18px;margin:0 0 12px;line-height:1.2}.project-excerpt{font-size:14px;color:var(--muted);line-height:1.6;margin:0 0 12px}.project-highlight{font-size:13px;color:#c79a3a;font-weight:500;margin:0}