.river{z-index:-1;pointer-events:none;height:100lvh;position:fixed;top:0;left:0;right:0;overflow:hidden}.river-clean,.river-murky{will-change:opacity;position:absolute;inset:0}.river-clean{background:radial-gradient(70% 60% at 72% -8%,#2670b51f,#0000 60%),linear-gradient(#f1f7fd 0%,#fff 52%,#e6f1fb 100%)}.river-murky{background:radial-gradient(78% 58% at 28% 8%,#78807624,#0000 62%),linear-gradient(#e6e8e3 0%,#eef0eb 54%,#e9ece6 100%)}.river-caustics{filter:blur(28px);opacity:.5;background-image:radial-gradient(40% 30% at 20% 30%,#ffffff80,#0000 60%),radial-gradient(36% 26% at 70% 22%,#fff6,#0000 60%),radial-gradient(44% 32% at 48% 70%,#ffffff57,#0000 60%),radial-gradient(30% 24% at 82% 66%,#ffffff4d,#0000 60%);background-repeat:no-repeat;animation:26s linear infinite caustic-drift;position:absolute;inset:-20%}@keyframes caustic-drift{0%{transform:translate(0,0)scale(1.1)}50%{transform:translate(-4%,3%)scale(1.18)}to{transform:translate(0,0)scale(1.1)}}.river-vignette{background:radial-gradient(120% 90% at 50% 40%,#0000 60%,#0f17200d);position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.river-caustics{opacity:.3;animation:none}}body{background-color:#0000}.home.screen{max-width:none;margin:0;padding:0}.shell{max-width:1200px;margin:0 auto;padding:0 32px}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.river-reveal{animation:linear both sec-rise;animation-timeline:view();animation-range:entry entry 24%}.river-stagger>*{animation:linear both card-rise;animation-timeline:view();animation-range:entry entry 30%}}}.film{width:100%;position:relative}.film-stage{background:#0f1720;width:100%;height:100vh;position:sticky;top:0;overflow:hidden}.film-frame{will-change:opacity;pointer-events:none;position:absolute;inset:0}.film--mobile{height:auto}.film--mobile .film-stage{height:100svh;position:relative}.film-img-wrap{will-change:transform;pointer-events:none;position:absolute;inset:0}.film-img{object-fit:cover;object-position:center;pointer-events:none}.film-video{object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.film-copy{z-index:2;padding:calc(var(--hdr-h) + 20px) 32px clamp(32px, 8vh, 14vh);color:#fff;pointer-events:none;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.film-copy--hero{text-align:right;justify-content:center;align-items:flex-end;padding-bottom:clamp(170px,34vh,360px)}.film-copy-inner{pointer-events:none;max-width:620px}.film-copy--hero .film-copy-inner{will-change:opacity, transform;max-width:460px}.film-copy--hero .film-title{font-size:clamp(26px,min(3.4vw,4.8vh),42px)}.film-copy--hero .film-sub{max-width:420px;margin-top:14px;font-size:clamp(14px,1.15vw,16px)}.film-copy--hero .film-eyebrow{margin-bottom:12px;font-size:11px}.film--light .film-eyebrow{color:var(--brand-700);text-shadow:none}.film--light .film-title{color:var(--ink-900);text-shadow:none}.film--light .film-title .accent{background:linear-gradient(108deg, var(--brand-700), #5ea3d8);-webkit-text-fill-color:transparent;color:var(--brand-700);-webkit-background-clip:text;background-clip:text}.film--light .film-sub{color:var(--ink-600);text-shadow:none}.film-eyebrow{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:#ffffffe6;text-shadow:0 1px 12px #08121e80;margin:0 0 16px;font-size:12px;font-weight:500}.film-title{letter-spacing:-.025em;color:#fff;text-wrap:balance;text-shadow:0 2px 22px #08121e8c;margin:0;font-size:clamp(34px,min(5.4vw,7.4vh),68px);font-weight:800;line-height:1.04}.film-title .accent{background:linear-gradient(108deg,#7fc0e6,#bfe0f5);-webkit-text-fill-color:transparent;color:#bfe0f5;-webkit-background-clip:text;background-clip:text}.film-sub{color:#ffffffe0;text-shadow:0 1px 14px #08121e80;max-width:520px;margin:18px 0 0;font-size:clamp(16px,1.6vw,20px);line-height:1.5}.film-hint{pointer-events:none;position:absolute;bottom:5vh;left:50%;transform:translate(-50%)}.film-hint-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:46px;height:46px;color:var(--ink-800);background:#ffffffb3;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:0 8px 24px #08121e1f}.film-hint-chevron{width:20px;height:11px;animation:hint-chevron 1.8s var(--ease-standard) infinite;margin-top:-4px;display:block}.film-hint-chevron:nth-child(2){animation-delay:.16s}@keyframes hint-chevron{0%{opacity:0;transform:translateY(-4px)}45%{opacity:1}to{opacity:0;transform:translateY(5px)}}@media (prefers-reduced-motion:reduce){.film-hint-chevron{opacity:.9;animation:none}.film-hint-chevron:nth-child(2){display:none}}.chapters{padding:clamp(36px,6vh,72px) 0 clamp(20px,3vh,40px)}.chapter{grid-template-columns:minmax(0,.8fr) minmax(0,1.7fr);align-items:start;gap:18px 64px;max-width:1200px;margin:0 auto;padding:clamp(36px,7vh,84px) 32px;display:grid}.chapter+.chapter{border-top:1px solid #0f172014}.chapter-eyebrow{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--brand-700);align-items:baseline;gap:14px;margin:6px 0 0;font-size:12px;font-weight:500;display:flex}.chapter-num{color:var(--ink-600);opacity:.55}.chapter-title{letter-spacing:-.02em;color:var(--ink-900);text-wrap:balance;margin:0;font-size:clamp(26px,3.4vw,42px);font-weight:800;line-height:1.12}.chapter-sub{color:var(--ink-600);max-width:58ch;margin:14px 0 0;font-size:clamp(15px,1.4vw,18px);line-height:1.55}.chapter-steps{gap:10px;max-width:52ch;margin:22px 0 0;padding:0;list-style:none;display:grid}.chapter-steps li{color:var(--ink-700);grid-template-columns:auto 1fr;align-items:baseline;gap:12px;font-size:15px;line-height:1.5;display:grid}.chapter-step-num{font-family:var(--font-mono);letter-spacing:.1em;color:var(--brand-700);opacity:.85;font-size:11px;font-weight:600}@media (max-width:768px){.chapter{grid-template-columns:1fr;gap:10px;padding:30px 22px}.chapter-eyebrow{margin-top:0}}.film-intro .film-eyebrow,.film-intro .film-title,.film-intro .film-sub{animation:film-rise .9s var(--ease-emphasis) backwards}.film-intro .film-title{animation-delay:.12s}.film-intro .film-sub{animation-delay:.26s}@keyframes film-rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.film-intro .film-eyebrow,.film-intro .film-title,.film-intro .film-sub{animation:none}.film{height:auto!important}.film-stage{height:100vh;position:relative}.film-frame{height:100vh;position:relative;opacity:1!important;transform:none!important}.film-img-wrap,.film-copy-inner{transform:none!important}.film-hint{display:none}}.m-hero{margin-top:calc(var(--hdr-h) * -1);background:#0f1720;min-height:100svh;position:relative;overflow:hidden}.m-hero__stage{isolation:isolate;flex-direction:column;justify-content:flex-end;min-height:100dvh;display:flex;position:relative}.m-hero__media{z-index:0;backface-visibility:hidden;background:#1a2430;position:absolute;inset:0;overflow:hidden;transform:translateZ(0)}.m-hero__photo{object-fit:cover;object-position:50% 40%;width:100%;height:100%;position:absolute;inset:0}.m-hero__veil{z-index:1;pointer-events:none;background:linear-gradient(#08121e52 0%,#0000 24%),linear-gradient(#0000 26%,#08121e4d 42%,#08121e9e 58%,#08121edb 74%,#070e16f0 88%,#070e16f2 100%);position:absolute;inset:0;transform:translateZ(0)}.m-hero__copy{z-index:2;width:100%;padding:calc(var(--hdr-h) + 12px) var(--site-gutter) max(20px, env(safe-area-inset-bottom,0px) + 16px);color:#fff;flex-direction:column;align-items:stretch;gap:0;display:flex;position:relative;transform:translateZ(0)}.m-hero__brand{font-family:var(--font-sans-narrow,var(--font-sans));letter-spacing:-.035em;color:#fff;text-shadow:0 2px 18px #08121e80;margin:0 0 8px;font-size:clamp(1.85rem,8.2vw,2.25rem);font-weight:800;line-height:.95}.m-hero__title{letter-spacing:-.028em;color:#fff;text-wrap:balance;text-shadow:0 2px 20px #08121e73;max-width:15ch;margin:0;font-size:clamp(1.4rem,6.4vw,1.7rem);font-weight:800;line-height:1.14}.m-hero__title-accent{color:#9ec9ea;-webkit-text-fill-color:currentColor}.m-hero__lead{color:#ffffffe0;text-shadow:0 1px 12px #08121e66;max-width:32ch;margin:10px 0 0;font-size:14px;line-height:1.45}.m-hero__actions{flex-direction:column;gap:8px;margin-top:16px;display:flex}.m-hero__call{border-radius:var(--radius-pill);background:var(--brand-600);color:#fff;min-height:56px;transition:background var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);align-items:center;gap:14px;padding:12px 18px;text-decoration:none;display:flex;box-shadow:0 14px 34px #08121e66}.m-hero__call:hover{background:var(--brand-700);transform:translateY(-1px);box-shadow:0 18px 40px #08121e7a}.m-hero__call:focus-visible{outline:none;box-shadow:0 0 0 3px #9ec9eae6,0 14px 34px #08121e66}.m-hero__call-icon{color:#fff;background:#ffffff2e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.m-hero__call-text{flex-direction:column;gap:1px;line-height:1.15;display:flex}.m-hero__call-label{letter-spacing:.12em;text-transform:uppercase;color:#ffffffe0;font-size:11px;font-weight:700}.m-hero__call-num{letter-spacing:-.02em;color:#fff;font-size:clamp(18px,4.8vw,21px);font-weight:800}.m-hero__secondary{color:#ffffffeb;border-radius:var(--radius-3);min-height:44px;transition:color var(--dur-fast) var(--ease-standard);justify-content:center;align-items:center;gap:8px;padding:0 4px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.m-hero__secondary:hover{color:#fff}.m-hero__secondary:focus-visible{outline:none;box-shadow:0 0 0 3px #7db4e2d9}@media (prefers-reduced-motion:no-preference){.m-hero__reveal{animation:m-hero-rise .8s var(--ease-emphasis) backwards}.m-hero__photo{animation:m-hero-drift 18s var(--ease-standard) alternate infinite}}@keyframes m-hero-drift{0%{transform:scale(1.04)}to{transform:scale(1.1)}}@keyframes m-hero-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.m-hero__reveal,.m-hero__photo{animation:none}.m-hero__photo{transform:none}}@media (max-width:768px){.film:not(.film--light) .film-copy,.film.film--light .film-copy{padding:calc(var(--hdr-h) + 16px) 16px 13vh}.film-copy--hero{text-align:left;justify-content:flex-end;align-items:stretch}.film-copy--hero .film-copy-inner{-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4);border-radius:var(--radius-5);background:#ffffffdb;border:1px solid #fff9;max-width:none;padding:20px 20px 22px;box-shadow:0 16px 40px #08121e38}.film-title{font-size:clamp(24px,7.6vw,34px)}.film-sub{max-width:none}}@media (max-height:860px){.film-eyebrow{margin-bottom:10px}.film-sub{margin-top:10px}}@media (max-height:700px){.film-title{font-size:clamp(26px,min(5vw,6vh),48px)}}.home .seg-section,.home .prod-section,.home .proj-section,.home .partner-strip,.home .ref-strip{max-width:none;padding-inline:clamp(24px,5vw,80px)}.home .seg-section{padding-top:104px;padding-bottom:32px}.home .prod-section,.home .proj-section{padding-top:88px;padding-bottom:40px}.home .ref-strip{padding-top:96px;padding-bottom:112px}.home .partner-strip{padding-top:96px;padding-bottom:32px}.home .ref-strip--secondary{border-top:1px solid var(--ink-100);padding-top:28px;padding-bottom:112px}.home .partner-head{max-width:860px;margin-bottom:36px}.home .partner-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),320px));gap:24px;display:grid}.home .partner-logo-card{border-radius:var(--radius-5);min-height:120px;padding:32px 40px}.home .partner-logo-frame{border-radius:var(--radius-3);background:var(--ink-50);justify-content:center;align-items:center;width:100%;min-height:56px;padding:12px 16px;display:flex}.home .partner-logo{max-width:100%;max-height:52px}.home .section-head{max-width:860px;padding:0 0 40px}.home .section-head h2{letter-spacing:-.02em;font-size:clamp(28px,3vw,42px);line-height:1.1}.home .section-head .lead{max-width:640px;margin-top:10px;font-size:18px}.home .seg-head .seg-lead{max-width:720px;color:var(--ink-700);margin-top:12px;font-size:16px;line-height:1.65}.home .seg-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}.home .seg-grid .seg{border:1px solid var(--ink-100);background:#ffffff8c;gap:16px;padding:34px 20px}.home .seg-grid .seg img{width:64px;height:64px}.home .seg-grid .seg .name{font-size:14px}.home .prod-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px}.home .product-card{border-radius:var(--radius-5);overflow:hidden}.home .product-card .pc-img{aspect-ratio:1;border-radius:var(--radius-5) var(--radius-5) 0 0}.home .product-card .pc-body{padding:24px 24px 28px}.home .proj-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start;gap:32px}.home .proj-card{border-radius:var(--radius-5)}.home .proj-photo{aspect-ratio:16/11}.home .proj-body{padding:22px 24px 26px}.home .ref-head{max-width:860px;margin-bottom:30px}.home .ref-grid{background:var(--ink-100);border:1px solid var(--ink-100);border-radius:var(--radius-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;overflow:hidden}.home .ref-cell{background:var(--paper);color:var(--ink-700);transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);border-radius:0;padding:28px 24px;font-size:15px;font-weight:700}.home .ref-cell:hover{background:var(--brand-50);color:var(--brand-800);transform:none}@media (max-width:768px){.home .seg-section,.home .prod-section,.home .proj-section,.home .ref-strip{padding-inline:22px}}@media (max-width:640px){.home .prod-section{padding-inline:16px}.home .partner-strip{padding-inline:22px;padding-top:56px;padding-bottom:24px}.home .ref-strip--secondary{padding-top:20px;padding-bottom:72px}.home .seg-section,.home .prod-section,.home .proj-section{padding-top:64px}.home .ref-strip{padding-top:56px;padding-bottom:72px}.home .prod-grid,.home .proj-grid{gap:18px}}.river-arrival{width:100%;padding:120px 24px calc(120px + env(safe-area-inset-bottom,0px));color:#fff;text-align:center;background:radial-gradient(60% 70% at 50% 0,#2670b538,#0000 62%),linear-gradient(#112f4d 0%,#0f2336 100%);margin-top:0;position:relative;overflow:hidden}.river-arrival:before{content:"";background:linear-gradient(90deg,#0000,#7db4e2e6,#0000);height:2px;position:absolute;top:0;left:0;right:0}.river-arrival-inner{max-width:760px;margin:0 auto;position:relative}.river-arrival .eyebrow{color:#aac6e6f2;letter-spacing:.16em}.river-arrival h2{letter-spacing:-.025em;color:#fff;text-wrap:balance;margin:14px 0 18px;font-size:clamp(30px,4.6vw,52px);font-weight:800;line-height:1.05}.river-arrival .lead{color:#ffffffd1;max-width:560px;margin:0 auto 36px;font-size:18px}.river-arrival-phone{border-radius:var(--radius-pill);color:var(--brand-900);transition:transform var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard);background:#fff;align-items:center;gap:16px;padding:16px 30px 16px 18px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 18px 44px #081c3066}.river-arrival-phone:hover{transform:translateY(-2px);box-shadow:0 24px 54px #081c3080}.river-arrival-phone:focus-visible{outline:none;box-shadow:0 0 0 3px #7db4e2cc,0 18px 44px #081c3066}.river-arrival-phone .ring{background:var(--brand-50);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.river-arrival-phone .ring svg{width:20px;height:20px;fill:var(--brand-800)}.river-arrival-phone .col{text-align:left;flex-direction:column;line-height:1.12;display:flex}.river-arrival-phone .sub{letter-spacing:.1em;text-transform:uppercase;color:var(--brand-700);opacity:.9;font-size:11px;font-weight:700}.river-arrival-phone .num{letter-spacing:-.02em;color:var(--ink-900);font-size:22px}.river-arrival-book{color:#ffffffc7;transition:color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);border-bottom:1px solid #ffffff4d;margin-top:18px;padding-bottom:2px;font-size:15px;font-weight:700;text-decoration:none;display:inline-block}.river-arrival-book:hover{color:#fff;border-color:#fff}.river-arrival-book:focus-visible{border-radius:var(--radius-2);outline:none;box-shadow:0 0 0 3px #7db4e2cc}.river-capacity{max-width:680px;margin:44px auto 0}.river-capacity .rc-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#aac6e6cc;margin-bottom:12px;font-size:11px}.river-capacity-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.river-capacity-grid a{border-radius:var(--radius-4);color:#fff;transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard);background:#ffffff12;border:1px solid #ffffff24;flex-direction:column;gap:2px;padding:14px 10px;text-decoration:none;display:flex}.river-capacity-grid a:hover{background:#ffffff24;border-color:#7db4e299;transform:translateY(-2px)}.river-capacity-grid a:focus-visible{outline:none;box-shadow:0 0 0 3px #7db4e2cc}.river-capacity-grid .rc-ej{letter-spacing:-.01em;font-size:18px;font-weight:800}.river-capacity-grid .rc-for{color:#ffffffb3;font-size:11px}.river-arrival-meta{color:#fff9;flex-wrap:wrap;justify-content:center;gap:8px 14px;margin-top:40px;font-size:13px;display:flex}.river-arrival-meta b{color:#ffffffd9;font-weight:700}.home+.site-footer{margin-top:0}@media (max-width:640px){.river-arrival{padding:80px 18px 96px}.river-capacity-grid{grid-template-columns:repeat(2,1fr)}.river-arrival-phone{justify-content:center;width:100%}.river-arrival-phone .col{text-align:center;align-items:center}}:root{--hdr-top-h:76px;--hdr-nav-h:50px;--hdr-h:calc(var(--hdr-top-h) + var(--hdr-nav-h));--sticky-offset:calc(var(--hdr-h) + 12px)}html[data-hdr=hidden]{--sticky-offset:12px}html{scroll-padding-top:calc(var(--hdr-h) + 12px)}@media (max-width:1023.98px){:root{--hdr-top-h:68px;--hdr-nav-h:0px;--hdr-h:var(--hdr-top-h)}}.site-header{opacity:var(--hdr-fade,1);transition:transform .34s var(--ease-emphasis), box-shadow .24s var(--ease-standard);background:0 0;border-bottom:none;position:sticky}.film{margin-top:calc(var(--hdr-h) * -1)}.hdr-nav--desktop{height:var(--hdr-nav-h)}.hdr-nav--desktop .hdr-nav-inner{align-items:stretch;height:100%}.hdr-nav--desktop .hdr-nav-links{align-items:center;gap:6px;height:100%}.hdr-nav--desktop .hdr-nav-links>a,.hdr-nav--desktop .hdr-nav-links>.hdr-nav-group>button{border-radius:var(--radius-pill);box-sizing:border-box;align-self:center;align-items:center;height:auto;padding:8px 14px;display:inline-flex}.hdr-nav--desktop .hdr-nav-links>a:after,.hdr-nav--desktop .nav-ink{bottom:8px;left:14px;right:14px}.hdr-nav--desktop .hdr-contacts-cta{align-self:center}.site-header:before{content:"";z-index:-1;border-bottom:1px solid var(--ink-100);opacity:0;transition:opacity .24s var(--ease-standard);background:#fff;position:absolute;inset:0}.site-header.is-solid:before{opacity:1}.site-header.is-solid{background-color:#fff;box-shadow:0 8px 30px #0f172012}.site-header.is-hidden{pointer-events:none;box-shadow:none}.site-header .hdr-top,.site-header .hdr-nav{max-width:none;padding-inline:var(--site-gutter)}.site-header.is-transparent .hdr-nav--desktop .hdr-nav-links>a,.site-header.is-transparent .hdr-nav--desktop .hdr-nav-links>.hdr-nav-group>button{color:var(--ink-800);text-shadow:none;background:#ffffffb3}.site-header.is-transparent .hdr-nav--desktop .hdr-nav-links>a:after,.site-header.is-transparent .hdr-nav-links>a:after{display:none}.site-header.is-transparent .hdr-nav-links>a:hover{color:var(--ink-900);background:#ffffffd1}.site-header.is-transparent .hdr-nav-links>a.active{color:var(--brand-700);background:#ffffffe0}.site-header.is-transparent .nav-ink{display:none}.site-header.is-transparent .menu-toggle{color:var(--ink-900)}.site-header.is-transparent .menu-toggle:hover{background:#0f172014}.site-header.is-transparent .brand img{filter:none}.brand{align-items:center;display:inline-flex;position:relative}.brand-logo--on-dark{display:none}@media (max-width:768px){.site-header.is-transparent .brand-logo--default{display:none}.site-header.is-transparent .brand-logo--on-dark{display:block}}.phone-stack{transition:opacity .22s var(--ease-standard)}.site-header .hdr-nav-links>a,.site-header .phone-stack .phn a,.site-header .brand img,.site-header .hdr-contacts-cta,.site-header .menu-toggle{transition:color .24s var(--ease-standard), background .24s var(--ease-standard), border-color .24s var(--ease-standard), filter .24s var(--ease-standard), text-shadow .24s var(--ease-standard), box-shadow .24s var(--ease-standard)}.site-header.is-solid .hdr-nav-links>a{text-shadow:none;box-shadow:none;background:0 0}.site-header.is-solid .brand img{filter:none}.hdr-contacts-cta{border:1px solid var(--brand-700);border-radius:var(--radius-pill);background:var(--brand-700);color:#fff;white-space:nowrap;flex-shrink:0;align-items:center;padding:9px 20px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.hdr-contacts-cta:hover{background:var(--brand-800);border-color:var(--brand-800);color:#fff}.hdr-contacts-cta.is-active{background:var(--brand-900);border-color:var(--brand-900);color:#fff}.hdr-contacts-cta:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (prefers-contrast:more){.site-header.is-transparent .hdr-nav-links>a{color:var(--ink-900);text-shadow:none;background:#ffffffeb;font-weight:800}}@media (prefers-reduced-motion:reduce){.site-header,.site-header:before,.site-header .hdr-nav-links>a,.site-header .phone-stack,.site-header .phone-stack .phn a,.site-header .brand img,.site-header .hdr-contacts-cta,.site-header .menu-toggle{transition:none}.site-header.is-hidden{transform:none}}.drawer-backdrop{z-index:120;cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#08121e85;border:none;margin:0;padding:0;position:fixed;inset:0}.nav-drawer{z-index:121;background:var(--paper);width:min(86vw,380px);padding:calc(env(safe-area-inset-top,0px) + 10px) clamp(20px, 5vw, 32px) calc(20px + env(safe-area-inset-bottom,0px));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:22px 0 0 22px;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-20px 0 48px #0a18262e}.drawer-head{min-height:calc(var(--hdr-top-h,68px) - env(safe-area-inset-top,0px) - 10px);align-items:center;margin-bottom:6px;display:flex}.drawer-brand{opacity:.92;width:auto;height:32px}.drawer-close{top:calc((var(--hdr-top-h,68px) - 44px) / 2);right:var(--site-gutter);width:44px;height:44px;color:var(--ink-900);cursor:pointer;transition:background .2s var(--ease-standard), color .2s var(--ease-standard), transform .18s var(--ease-standard);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute}.drawer-close svg{transition:transform .42s var(--ease-emphasis)}.drawer-close:hover{background:var(--ink-100)}.drawer-close:hover svg{transform:rotate(90deg)}.drawer-close:active{transform:scale(.92)}.drawer-close:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (prefers-reduced-motion:reduce){.drawer-close svg{transition:none}}.drawer-links{flex-direction:column;flex:1;gap:2px;padding-top:4px;display:flex}.drawer-links a{border-radius:var(--radius-3);color:var(--ink-800);transition:color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), padding-left var(--dur-fast) var(--ease-standard);border-bottom:none;padding:13px 0;font-size:16px;font-weight:700;text-decoration:none;display:block}.drawer-links a:hover{color:var(--brand-700);background:var(--brand-50);padding-left:10px}.drawer-links a.active{color:var(--brand-700);background:var(--brand-50);padding-left:14px;position:relative}.drawer-links a.active:before{content:"";background:var(--brand-700);border-radius:3px;width:3px;height:20px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.drawer-links a.drawer-cta{border-radius:var(--radius-pill);background:var(--brand-700);color:#fff;text-align:center;border:none;margin-top:16px;padding:15px 16px}.drawer-links a.drawer-cta:hover{background:var(--brand-800);padding-left:16px}.drawer-links a.drawer-cta.is-active{background:var(--brand-900)}.drawer-foot{flex-direction:column;gap:8px;margin-top:20px;padding-top:18px;display:flex}.drawer-foot:before{content:"";background:linear-gradient(90deg, transparent, var(--ink-100) 12%, var(--ink-100) 88%, transparent);height:1px;margin-bottom:10px;display:block}.drawer-phone{border-radius:var(--radius-3);transition:background var(--dur-fast) var(--ease-standard);flex-direction:column;gap:1px;margin:0 -10px;padding:8px 10px;text-decoration:none;display:flex}.drawer-phone:hover{background:var(--brand-50)}.dp-hint{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500);font-size:10px;font-weight:700}.dp-num{letter-spacing:-.01em;color:var(--ink-900);font-size:17px;font-weight:800}.drawer-phone:hover .dp-num{color:var(--brand-700)}.home .section-head .eyebrow,.home .ref-head .eyebrow{align-items:center;gap:10px;display:inline-flex}.home .section-head .eyebrow:before,.home .ref-head .eyebrow:before{content:"";background:var(--brand-500);border-radius:2px;width:28px;height:2px}@media (hover:hover){.product-card:hover{transform:translateY(-5px)}.product-card:hover .pc-body h3{color:var(--brand-700)}.product-card:hover .pc-more span{transform:translate(4px)}}.product-card .pc-body h3{transition:color var(--dur-fast) var(--ease-standard)}.pc-more{color:var(--brand-700);align-items:center;gap:6px;margin-top:10px;font-size:13px;font-weight:700;display:inline-flex}.pc-more span{transition:transform .26s var(--ease-emphasis);display:inline-block}@media (hover:hover) and (prefers-reduced-motion:no-preference){.pc-more{opacity:0;transition:opacity .24s var(--ease-standard), transform .3s var(--ease-emphasis);transform:translateY(4px)}.product-card:hover .pc-more{opacity:1;transform:none}}.proj-card{transition:box-shadow .2s var(--ease-standard), transform .2s var(--ease-standard)}.proj-photo img{transition:transform .7s var(--ease-emphasis)}.proj-photo img.archive-card-img--fade{transition:opacity .26s var(--ease-standard), transform .7s var(--ease-emphasis)}@media (hover:hover){.proj-card:hover{transform:translateY(-4px)}.proj-card:hover .proj-photo img{transform:scale(1.06)}}.seg-grid .seg img{transition:transform .3s var(--ease-emphasis)}.home .seg-grid .seg{transition:background .2s var(--ease-standard), transform .2s var(--ease-standard), border-color .2s var(--ease-standard), box-shadow .2s var(--ease-standard)}@media (hover:hover){.seg-grid .seg:hover img{transform:translateY(-4px)scale(1.06)}.home .seg-grid .seg:hover{border-color:var(--brand-200);box-shadow:var(--shadow-2);background:#fff}}html[data-scrolling] .product-card,html[data-scrolling] .proj-card,html[data-scrolling] .archive-card,html[data-scrolling] .seg,html[data-scrolling] .partner-logo-card{pointer-events:none}@media (prefers-reduced-motion:reduce){.product-card:hover .pc-img-media,.proj-card:hover .proj-photo img,.seg-grid .seg:hover img,.product-card:hover,.proj-card:hover{transform:none}}@media (min-width:768px){.home .proj-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.2vw,32px)}}@media (max-width:767.98px){.home .proj-grid{grid-template-columns:minmax(0,1fr)}}@media (min-width:700px){.prod-grid[data-cols="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}.home .seg-grid{flex-wrap:wrap;justify-content:center;display:flex}.home .seg-grid .seg{flex:0 calc(25% - 15px);min-width:0}@media (max-width:640px){.home .seg-grid{gap:12px;display:flex!important}.home .seg-grid .seg{flex-basis:calc(50% - 6px)}.home .partner-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home .partner-logo-card{border-radius:var(--radius-4);min-height:72px;padding:8px}.home .partner-logo-frame{min-height:44px;padding:6px}.home .partner-logo{max-height:32px}}@media (max-width:767px) and (max-height:540px) and (orientation:landscape){.m-hero__photo{object-position:74% 42%}.m-hero__veil{background:linear-gradient(#08121e57 0%,#0000 30%),linear-gradient(90deg,#070e16f2 0%,#08121edb 38%,#08121e80 62%,#08121e38 100%)}.m-hero__copy{max-width:30rem;padding-top:calc(var(--hdr-h) + 6px);padding-bottom:max(14px, env(safe-area-inset-bottom,0px) + 10px)}.m-hero__brand{margin-bottom:4px;font-size:1.4rem}.m-hero__title{max-width:24ch;font-size:1.1rem}.m-hero__lead{max-width:44ch;margin-top:6px;font-size:13px}.m-hero__actions{flex-direction:row;align-items:center;margin-top:12px}.m-hero__call{flex:none;min-height:48px}.m-hero__call-num{white-space:nowrap}.m-hero__secondary{white-space:nowrap;flex:none;min-height:48px;padding-inline:14px}}
.ft-signature-bar{background:var(--footer-sig-bg);padding-bottom:env(safe-area-inset-bottom,0);color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-top:1px solid #ffffff0f;text-decoration:none;transition:background-color .2s;display:block}.ft-signature-bar:hover{background:color-mix(in srgb, var(--footer-sig-bg) 88%, white 12%)}.ft-signature-bar:focus-visible{outline-offset:-2px;outline:2px solid #b5a08e8c}.ft-signature{max-width:none;padding:0 var(--site-gutter);justify-content:flex-end;margin:0 auto;display:flex}.ink-sig{--sig-ease-letter:cubic-bezier(.32, .72, 0, 1);--sig-ease-spring:cubic-bezier(.25, .48, .35, .99);--sig-ink:#cdd6e3b8;--sig-ink-strong:#ffffffeb;--sig-accent:#b5a08e;--sig-font-sans:var(--font-outfit), var(--font-sans), system-ui, sans-serif;--sig-font-serif:var(--font-fraunces), Georgia, "Times New Roman", serif;--sig-font-mono:var(--font-mono), "IBM Plex Mono", ui-monospace, monospace;font-family:var(--sig-font-sans);pointer-events:none;justify-content:center;align-items:center;gap:.52rem;padding:.68rem 0;display:inline-flex}.ink-sig__mark{width:11px;height:11px;color:var(--sig-ink-strong);transition:transform .6s var(--sig-ease-spring), opacity .4s ease;opacity:.88;flex-shrink:0;display:block}.ft-signature-bar:hover .ink-sig__mark{opacity:1;transform:rotate(-8deg)scale(1.08)}.ink-sig__lead{font-family:var(--sig-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--sig-ink);white-space:nowrap;font-size:.54rem;font-weight:500}.ink-sig__brand{align-items:baseline;gap:0;line-height:1;display:inline-flex;position:relative}.ink-sig__letters{display:inline-flex}.ink-sig__ch{letter-spacing:.03em;height:1em;color:var(--sig-ink-strong);font-size:.7rem;font-weight:500;display:inline-block;position:relative;overflow:hidden}.ink-sig__ch span{display:block}.ink-sig__ch .s-sans{font-family:var(--sig-font-sans);text-transform:uppercase;letter-spacing:.04em;transition:transform .5s var(--sig-ease-letter);transition-delay:calc(var(--li,0) * 26ms);font-weight:600}.ink-sig__ch .s-serif{font-family:var(--sig-font-serif);text-transform:none;letter-spacing:0;transition:transform .5s var(--sig-ease-letter);transition-delay:calc(var(--li,0) * 26ms);color:var(--sig-accent);font-style:italic;font-weight:400;position:absolute;inset:0;transform:translateY(-108%)}.ft-signature-bar:hover .ink-sig__ch .s-sans{transform:translateY(108%)}.ft-signature-bar:hover .ink-sig__ch .s-serif{transform:translateY(0)}.ink-sig__studio{font-family:var(--sig-font-serif);letter-spacing:.1em;text-transform:uppercase;opacity:.65;color:var(--sig-ink-strong);align-self:center;margin-left:.42em;font-size:.58rem;font-style:normal;font-weight:300}.ink-sig__dot{background:var(--sig-ink);opacity:.4;border-radius:50%;flex-shrink:0;width:2px;height:2px}@media (prefers-reduced-motion:reduce){.ink-sig__mark,.ink-sig__ch .s-sans,.ink-sig__ch .s-serif{transition:none}.ft-signature-bar:hover .ink-sig__mark,.ft-signature-bar:hover .ink-sig__ch .s-sans,.ft-signature-bar:hover .ink-sig__ch .s-serif{transform:none}}@media (max-width:640px){.ft-signature{justify-content:center;padding:0 16px}.ink-sig{gap:.48rem;padding:.62rem 0}.ink-sig__lead{letter-spacing:.12em;font-size:.52rem}}

