:root{--brand-50:#f1f6fa;--brand-100:#dfeaf3;--brand-200:#bcd4e6;--brand-300:#8fb6d3;--brand-400:#5a92bb;--brand-500:#1f628e;--brand-600:#1a5479;--brand-700:#164561;--brand-800:#12374d;--brand-900:#0e2a3b;--accent-500:#17999b;--accent-600:#0f7b7d;--ink-900:#0d1b26;--ink-800:#16262f;--ink-700:#263945;--ink-600:#3d5361;--ink-500:#5b7182;--ink-400:#83969f;--ink-300:#b3c0c8;--ink-200:#d8e0e5;--ink-100:#e9eef1;--ink-50:#f4f7f9;--surface:#fff;--surface-2:var(--ink-50);--surface-3:var(--brand-50);--surface-inverse:var(--ink-900);--text:var(--ink-900);--text-muted:var(--ink-500);--text-subtle:#5c7181;--text-inverse:#fff;--text-inverse-muted:#ffffffad;--line:var(--ink-200);--line-soft:var(--ink-100);--line-inverse:#ffffff24;--focus:var(--accent-500);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-display:"Oswald", "Arial Narrow", var(--font-sans);--step--2:clamp(.72rem, .71rem + .05vw, .75rem);--step--1:clamp(.82rem, .79rem + .13vw, .875rem);--step-0:clamp(1rem, .97rem + .15vw, 1.0625rem);--step-1:clamp(1.15rem, 1.09rem + .3vw, 1.32rem);--step-2:clamp(1.38rem, 1.26rem + .58vw, 1.72rem);--step-3:clamp(1.66rem, 1.44rem + 1.07vw, 2.28rem);--step-4:clamp(1.99rem, 1.63rem + 1.79vw, 3.05rem);--step-5:clamp(2.39rem, 1.8rem + 2.93vw, 4.05rem);--space-2xs:.375rem;--space-xs:.625rem;--space-s:1rem;--space-m:1.5rem;--space-l:2.25rem;--space-xl:3.5rem;--space-2xl:clamp(4rem, 3rem + 5vw, 7rem);--space-3xl:clamp(5rem, 3.5rem + 7.5vw, 9.5rem);--container:1240px;--container-narrow:820px;--gutter:clamp(1.25rem, .9rem + 1.7vw, 2.5rem);--radius-xs:3px;--radius-s:6px;--radius-m:10px;--radius-l:16px;--radius-pill:999px;--shadow-xs:0 1px 2px #0d1b260f;--shadow-s:0 1px 3px #0d1b2612, 0 6px 16px -8px #0d1b261a;--shadow-m:0 2px 6px #0d1b260f, 0 18px 40px -20px #0d1b2638;--shadow-l:0 4px 10px #0d1b260d, 0 34px 70px -30px #0d1b264d;--ease-out:cubic-bezier(.22, .61, .36, 1);--ease-in-out:cubic-bezier(.65, .05, .36, 1);--dur-fast:.15s;--dur:.24s;--dur-slow:.42s;--header-h:74px}@media (width<=700px){:root{--header-h:62px}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1.5rem)}body{font-family:var(--font-sans);font-size:var(--step-0);color:var(--text);background:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv05" 1, "ss01" 1;text-rendering:optimizelegibility;line-height:1.65;overflow-x:hidden}img,picture,svg,video{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4{letter-spacing:-.021em;text-wrap:balance;color:var(--ink-900);font-weight:600;line-height:1.12}h1{font-size:var(--step-5);letter-spacing:-.031em}h2{font-size:var(--step-4);letter-spacing:-.026em}h3{font-size:var(--step-2)}h4{font-size:var(--step-1);letter-spacing:-.014em;line-height:1.3}p{text-wrap:pretty}a{color:var(--brand-600);-webkit-text-decoration-color:color-mix(in srgb, var(--brand-600) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--brand-600) 35%, transparent);text-underline-offset:.18em;transition:color var(--dur-fast) var(--ease-out), text-decoration-color var(--dur-fast) var(--ease-out);text-decoration-thickness:1px}a:hover{color:var(--brand-500);text-decoration-color:currentColor}ul,ol{padding-left:1.15em}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:var(--radius-xs)}::selection{background:var(--brand-200);color:var(--ink-900)}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.container-narrow{max-width:var(--container-narrow)}.section{padding-block:var(--space-2xl)}.section-tight{padding-block:var(--space-xl)}.section-alt{background:var(--surface-2)}.section-inverse{background:var(--surface-inverse);color:var(--text-inverse)}.section-inverse h1,.section-inverse h2,.section-inverse h3,.section-inverse h4{color:var(--text-inverse)}.divider-top{border-top:1px solid var(--line-soft)}.skip-link{z-index:200;background:var(--ink-900);color:#fff;border-radius:0 0 var(--radius-s) var(--radius-s);transition:translate var(--dur) var(--ease-out);padding:.75rem 1.25rem;font-weight:500;text-decoration:none;position:absolute;left:50%;translate:-50% -200%}.skip-link:focus-visible{color:#fff;translate:-50%}.eyebrow{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-500);margin-bottom:var(--space-s);font-weight:500;display:block}.section-inverse .eyebrow{color:var(--brand-300)}.lede{font-size:var(--step-1);color:var(--ink-600);letter-spacing:-.008em;max-width:62ch;line-height:1.55}.section-inverse .lede{color:var(--text-inverse-muted)}.muted{color:var(--text-muted)}.small{font-size:var(--step--1)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.section-head{max-width:68ch;margin-bottom:var(--space-xl)}.section-head p{margin-top:var(--space-s)}@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}}.btn{--btn-bg:var(--brand-500);--btn-fg:#fff;--btn-border:var(--brand-500);border:1px solid var(--btn-border);border-radius:var(--radius-s);background:var(--btn-bg);min-height:46px;color:var(--btn-fg);font-size:var(--step--1);letter-spacing:.005em;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), translate var(--dur-fast) var(--ease-out), box-shadow var(--dur) var(--ease-out);justify-content:center;align-items:center;gap:.55em;padding:.72em 1.45em;font-weight:550;text-decoration:none;display:inline-flex}.btn:hover{--btn-bg:var(--brand-600);--btn-border:var(--brand-600);color:#fff;box-shadow:var(--shadow-s);translate:0 -1px}.btn:active{box-shadow:none;translate:0}.btn svg{flex:none;width:1.05em;height:1.05em}.btn-secondary{--btn-bg:transparent;--btn-fg:var(--ink-800);--btn-border:var(--line)}.btn-secondary:hover{--btn-bg:var(--surface-2);--btn-border:var(--ink-300);--btn-fg:var(--ink-900);color:var(--ink-900)}.btn-ghost{--btn-bg:transparent;--btn-fg:var(--brand-600);--btn-border:transparent;padding-inline:.35em}.btn-ghost:hover{--btn-bg:transparent;--btn-fg:var(--brand-500);box-shadow:none}.btn-on-dark{--btn-bg:#fff;--btn-fg:var(--ink-900);--btn-border:#fff}.btn-on-dark:hover{--btn-bg:var(--brand-100);--btn-border:var(--brand-100);color:var(--ink-900)}.btn-outline-dark{--btn-bg:transparent;--btn-fg:#fff;--btn-border:#ffffff59}.btn-outline-dark:hover{--btn-bg:#ffffff14;--btn-border:#fff9;color:#fff}.btn-lg{min-height:54px;font-size:var(--step-0);padding:.85em 1.85em}.btn-block{width:100%}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;pointer-events:none}.btn-row{gap:var(--space-s);flex-wrap:wrap;align-items:center;display:flex}.link-arrow{font-size:var(--step--1);color:var(--brand-600);align-items:center;gap:.45em;font-weight:550;text-decoration:none;display:inline-flex}.link-arrow svg{width:1em;height:1em;transition:translate var(--dur-fast) var(--ease-out)}.link-arrow:hover svg{translate:3px}.header{z-index:100;-webkit-backdrop-filter:saturate(180%)blur(14px);transition:border-color var(--dur) var(--ease-out), background var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);background:#ffffffdb;border-bottom:1px solid #0000;position:sticky;top:0}.header[data-scrolled=true]{border-bottom-color:var(--line-soft);box-shadow:0 1px 20px -12px #0d1b2666}.header-inner{justify-content:space-between;align-items:center;gap:var(--space-m);height:var(--header-h);display:flex}.brand{flex:none;align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.brand img{width:auto;height:30px}.brand-text{flex-direction:column;line-height:1.12;display:flex}.brand-name{letter-spacing:-.01em;color:var(--ink-900);font-size:.95rem;font-weight:600}.brand-sub{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--text-subtle);font-size:.6rem}.nav-desktop{align-items:center;gap:.15rem;margin-left:auto;display:flex}.nav-item{position:relative}.nav-link{border-radius:var(--radius-s);font-size:var(--step--1);color:var(--ink-600);white-space:nowrap;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);align-items:center;gap:.3em;padding:.55rem .85rem;font-weight:500;text-decoration:none;display:inline-flex}.nav-link:hover{color:var(--ink-900);background:var(--surface-2)}.nav-link[aria-current=page],.nav-link.is-active{color:var(--brand-600)}.nav-link .chev{opacity:.5;width:.7em;height:.7em;transition:rotate var(--dur-fast) var(--ease-out)}.nav-item:hover .nav-link .chev,.nav-item:focus-within .nav-link .chev{rotate:180deg}.nav-dropdown{border:1px solid var(--line-soft);border-radius:var(--radius-m);min-width:290px;box-shadow:var(--shadow-m);opacity:0;visibility:hidden;transition:opacity var(--dur) var(--ease-out), translate var(--dur) var(--ease-out), visibility var(--dur);background:#fff;padding:.4rem;position:absolute;top:calc(100% + 6px);left:50%;translate:-50% 6px}.nav-item:hover .nav-dropdown,.nav-item:focus-within .nav-dropdown{opacity:1;visibility:visible;translate:-50%}.nav-dropdown a{border-radius:var(--radius-s);font-size:var(--step--1);color:var(--ink-700);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);padding:.62rem .8rem;font-weight:500;text-decoration:none;display:block}.nav-dropdown a:hover,.nav-dropdown a[aria-current=page]{background:var(--brand-50);color:var(--brand-600)}.header-actions{align-items:center;gap:.6rem;margin-left:.6rem;display:flex}.header-phone{font-size:var(--step--1);color:var(--ink-600);align-items:center;gap:.4em;font-weight:500;text-decoration:none;display:inline-flex}.header-phone svg{width:.95em;height:.95em;color:var(--brand-500)}.header-phone:hover{color:var(--ink-900)}.nav-toggle{border-radius:var(--radius-s);cursor:pointer;width:44px;height:44px;color:var(--ink-800);background:0 0;border:0;justify-content:center;align-items:center;margin-right:-8px;display:none}.nav-toggle:hover{background:var(--surface-2)}.nav-toggle span{width:20px;height:1.5px;transition:transform var(--dur) var(--ease-out), opacity var(--dur-fast) var(--ease-out);background:currentColor;display:block;position:relative}.nav-toggle span:before,.nav-toggle span:after{content:"";width:20px;height:1.5px;transition:transform var(--dur) var(--ease-out);background:currentColor;position:absolute;left:0}.nav-toggle span:before{top:-6px}.nav-toggle span:after{top:6px}.nav-toggle[aria-expanded=true] span{background:0 0}.nav-toggle[aria-expanded=true] span:before{transform:translateY(6px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:after{transform:translateY(-6px)rotate(-45deg)}.nav-mobile{inset:var(--header-h) 0 0 0;z-index:99;padding:var(--space-m) var(--gutter) var(--space-xl);animation:panel-in var(--dur) var(--ease-out);background:#fff;flex-direction:column;gap:.15rem;display:flex;position:fixed;overflow-y:auto}@keyframes panel-in{0%{opacity:0;translate:0 -8px}}.nav-mobile a{border-bottom:1px solid var(--line-soft);font-size:var(--step-1);color:var(--ink-800);padding:.9rem .25rem;font-weight:500;text-decoration:none;display:block}.nav-mobile a[aria-current=page]{color:var(--brand-600)}.nav-mobile .sub a{font-size:var(--step-0);color:var(--ink-600);padding-left:1.1rem;font-weight:450}.nav-mobile-actions{margin-top:var(--space-l);gap:.7rem;display:grid}@media (width<=1020px){.nav-desktop,.header-phone{display:none}.nav-toggle{display:inline-flex}.header-actions .btn{display:none}}.footer{background:var(--ink-900);color:var(--text-inverse-muted);padding-block:var(--space-2xl) var(--space-l);font-size:var(--step--1)}.footer-grid{gap:var(--space-xl) var(--space-l);grid-template-columns:1.5fr 1fr 1fr 1.35fr;display:grid}.footer h4{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.14em;text-transform:uppercase;color:#ffffff9e;margin-bottom:var(--space-s);font-weight:500}.footer a{color:#ffffffc7;text-decoration:none}.footer a:hover{color:#fff;text-underline-offset:.2em;text-decoration:underline}.footer-links{gap:.55rem;padding:0;list-style:none;display:grid}.footer-brand img{width:auto;height:34px;margin-bottom:var(--space-m)}.footer-brand p{max-width:34ch;line-height:1.6}.footer address{font-style:normal;line-height:1.7}.footer-contact{margin-top:var(--space-m);gap:.5rem;display:grid}.footer-contact a{align-items:center;gap:.5em;display:inline-flex}.footer-contact svg{width:1em;height:1em;color:var(--brand-300);flex:none}.footer-bottom{margin-top:var(--space-xl);padding-top:var(--space-m);border-top:1px solid var(--line-inverse);gap:var(--space-s) var(--space-m);font-size:var(--step--2);color:#ffffff9e;flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (width<=560px){.footer-grid{gap:var(--space-l);grid-template-columns:1fr}}.hero{background:linear-gradient(180deg, #fff 0%, var(--brand-50) 100%);isolation:isolate;padding-block:clamp(2rem,1.4rem + 2.6vw,3.25rem) clamp(1.25rem,.9rem + 1.6vw,2rem);position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;background-image:linear-gradient(to right, color-mix(in srgb, var(--brand-500) 8%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in srgb, var(--brand-500) 8%, transparent) 1px, transparent 1px);opacity:.75;background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 90% at 70% 30%,#000 20%,#0000 75%);mask-image:radial-gradient(120% 90% at 70% 30%,#000 20%,#0000 75%)}.hero-grid{gap:var(--space-xl);grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;min-height:clamp(380px,46vh,470px);display:grid}.hero-copy h1{font-size:var(--step-4);margin-bottom:var(--space-m)}.hero-copy .lede{margin-bottom:var(--space-l)}.hero-slide-copy{animation:hero-copy-in .62s var(--ease-out) both}.hero-slide-copy[data-direction=back]{animation-name:hero-copy-in-back}.hero-slide-copy>*{animation:hero-item-in .56s var(--ease-out) both}.hero-slide-copy>:first-child{animation-delay:40ms}.hero-slide-copy>:nth-child(2){animation-delay:90ms}.hero-slide-copy>:nth-child(3){animation-delay:.15s}.hero-slide-copy>:nth-child(4){animation-delay:.21s}.hero-slide-copy>:nth-child(5){animation-delay:.27s}@keyframes hero-copy-in{0%{opacity:0}}@keyframes hero-copy-in-back{0%{opacity:0}}@keyframes hero-item-in{0%{opacity:0;translate:0 14px}}.hero-figures{gap:var(--space-m) var(--space-l);margin-bottom:var(--space-l);padding-top:var(--space-m);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.hero-figures dt{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle);margin-bottom:.25rem}.hero-figures dd{font-size:var(--step-0);letter-spacing:-.012em;color:var(--ink-900);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.hero-media{place-items:center;min-height:320px;display:grid;position:relative}.hero-media:after{content:"";z-index:-1;background:radial-gradient(closest-side,#1f628e29,#1f628e00 72%);border-radius:50%;position:absolute;inset:8% 4% 4%}.hero-stage{aspect-ratio:1;width:100%;max-width:540px;position:relative}.hero-stage-img{object-fit:contain;opacity:0;filter:drop-shadow(0 40px 50px #0d1b2638);width:auto;max-width:100%;height:auto;max-height:100%;transition:opacity .7s var(--ease-out), scale .9s var(--ease-out);-webkit-user-select:none;user-select:none;pointer-events:none;margin:auto;position:absolute;inset:0;scale:.94}.hero-stage-img[data-active=true]{opacity:1;scale:1}.hero-tabs{gap:var(--space-s);padding-top:var(--space-m);border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:stretch;margin-top:clamp(1.5rem,1rem + 2vw,2.5rem);display:grid}.hero-tab{text-align:left;cursor:pointer;min-height:62px;color:var(--text-subtle);transition:color var(--dur) var(--ease-out);background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.5rem .75rem .75rem 0;display:flex;position:relative}.hero-tab:hover,.hero-tab[data-active=true]{color:var(--ink-900)}.hero-tab-index{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.12em;color:var(--brand-500);opacity:.55;transition:opacity var(--dur) var(--ease-out)}.hero-tab:hover .hero-tab-index,.hero-tab[data-active=true] .hero-tab-index{opacity:1}.hero-tab-label{font-size:var(--step--1);letter-spacing:-.005em;font-weight:550;line-height:1.3}.hero-tab-rail{background:var(--line);border-radius:2px;width:calc(100% - .75rem);height:2px;position:absolute;bottom:0;left:0;overflow:hidden}.hero-tab:hover .hero-tab-rail{background:var(--brand-200)}.hero-tab-fill{border-radius:inherit;background:var(--brand-500);transform-origin:0;width:100%;height:100%;display:block;scale:0 1}.hero-tab[data-active=true] .hero-tab-fill{scale:1}.hero-tab-fill[data-running=true]{animation:linear both hero-progress}@keyframes hero-progress{0%{scale:0 1}to{scale:1}}.hero-nav{align-self:center;align-items:center;gap:.4rem;display:flex}.hero-arrow{border:1px solid var(--line);width:44px;height:44px;color:var(--ink-600);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#ffffffb3;border-radius:50%;place-items:center;display:grid}.hero-arrow svg{width:17px;height:17px}.hero-arrow:hover{background:var(--brand-500);border-color:var(--brand-500);color:#fff;scale:1.06}.hero-arrow:active{scale:.97}@media (width<=900px){.hero-grid{gap:var(--space-l);grid-template-columns:1fr;min-height:0}.hero-media{order:-1;min-height:0}.hero-stage{max-width:300px}.hero-figures{gap:var(--space-s) var(--space-m);padding-top:var(--space-s);margin-bottom:var(--space-m)}}@media (width<=720px){.hero-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-tab-label{font-size:var(--step--2)}.hero-nav{display:none}}@media (prefers-reduced-motion:reduce){.hero-slide-copy,.hero-slide-copy>*{animation:none}.hero-stage-img{transition:opacity 1ms;scale:1}.hero-tab-fill[data-running=true]{animation:none}}.page-hero{background:var(--surface-2);border-bottom:1px solid var(--line-soft);padding-block:clamp(2.25rem,1.5rem + 3vw,3.75rem) clamp(2.5rem,1.8rem + 3.5vw,4.25rem);position:relative}.page-hero.has-media{background:linear-gradient(160deg, #fff 0%, var(--brand-50) 100%)}.page-hero-grid{gap:var(--space-xl);grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;display:grid}.page-hero-media{place-items:center;display:grid}.page-hero-media img{filter:drop-shadow(0 30px 40px #0d1b262e);width:100%;max-width:460px}.page-hero h1{font-size:var(--step-4)}.page-hero .lede{margin-top:var(--space-m)}@media (width<=900px){.page-hero-grid{grid-template-columns:minmax(0,1fr)}.page-hero .btn{white-space:normal;text-align:center}.page-hero-media img{max-width:340px}}.breadcrumbs{margin-bottom:var(--space-m);font-size:var(--step--1);color:var(--text-subtle);flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.breadcrumbs a{color:var(--ink-500);text-decoration:none}.breadcrumbs a:hover{color:var(--brand-600)}.breadcrumbs svg{opacity:.55;width:.7em;height:.7em}.stat-strip{border:1px solid var(--line);border-radius:var(--radius-m);background:#fff;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid;overflow:hidden}.stat{padding:var(--space-m) var(--space-m);border-right:1px solid var(--line-soft)}.stat:last-child{border-right:0}.stat dt{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle);margin-bottom:.35rem}.stat dd{font-size:var(--step-1);letter-spacing:-.015em;color:var(--ink-900);font-variant-numeric:tabular-nums;margin:0;font-weight:600}@media (width<=700px){.stat{border-right:0;border-bottom:1px solid var(--line-soft)}.stat:last-child{border-bottom:0}}.product-grid{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.product-card{border:1px solid var(--line);border-radius:var(--radius-l);transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), translate var(--dur) var(--ease-out);background:#fff;flex-direction:column;display:flex;position:relative;overflow:hidden}.product-card:hover{border-color:var(--brand-200);box-shadow:var(--shadow-m);translate:0 -3px}.product-card-media{padding:var(--space-l) var(--space-m);background:linear-gradient(170deg, var(--ink-50) 0%, var(--brand-50) 100%);border-bottom:1px solid var(--line-soft);place-items:center;min-height:240px;display:grid;position:relative}.product-card-media img{object-fit:contain;filter:drop-shadow(0 18px 24px #0d1b2629);width:auto;max-width:82%;max-height:210px;transition:scale var(--dur-slow) var(--ease-out)}.product-card:hover .product-card-media img{scale:1.035}.product-card-body{padding:var(--space-m);flex-direction:column;flex:1;gap:.7rem;display:flex}.product-card-body h3{font-size:var(--step-1)}.product-card-body p{color:var(--text-muted);font-size:var(--step--1);line-height:1.6}.product-card-specs{padding:0;padding-top:var(--space-s);border-top:1px solid var(--line-soft);font-size:var(--step--1);gap:.35rem;margin-top:auto;list-style:none;display:grid}.product-card-specs li{justify-content:space-between;gap:var(--space-s);display:flex}.product-card-specs dt,.product-card-specs .k{color:var(--text-subtle)}.product-card-specs .v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink-800);text-align:right;font-size:.92em}.product-card-foot{padding:0 var(--space-m) var(--space-m)}.stretched-link:after{content:"";position:absolute;inset:0}.feature-grid{gap:var(--space-m) var(--space-l);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.feature{padding-top:var(--space-m);border-top:2px solid var(--brand-500)}.feature h3{margin-bottom:.45rem}.feature p{color:var(--text-muted);font-size:var(--step--1);line-height:1.62}.feature-icon{width:42px;height:42px;margin-bottom:var(--space-s);border-radius:var(--radius-s);background:var(--brand-50);color:var(--brand-500);place-items:center;display:grid}.feature-icon svg{width:21px;height:21px}.feature-plain{border-top:1px solid var(--line)}.table-wrap{border:1px solid var(--line);border-radius:var(--radius-m);background:#fff;overflow:hidden}.table-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;overflow-x:auto}.spec-table{border-collapse:collapse;width:100%;font-size:var(--step--1);font-variant-numeric:tabular-nums}.spec-table caption{text-align:left;padding:var(--space-m) var(--space-m) var(--space-s);font-size:var(--step-0);letter-spacing:-.012em;color:var(--ink-900);border-bottom:1px solid var(--line-soft);font-weight:600}.spec-table th,.spec-table td{text-align:left;border-bottom:1px solid var(--line-soft);white-space:nowrap;padding:.82rem 1rem}.spec-table thead th{background:var(--surface-2);font-size:var(--step--2);letter-spacing:.04em;color:var(--ink-600);vertical-align:bottom;border-bottom:1px solid var(--line);font-weight:600;position:sticky;top:0}.spec-table thead .unit{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-subtle);text-transform:none;font-size:.92em;font-weight:400;display:block}.spec-table tbody tr:last-child th,.spec-table tbody tr:last-child td{border-bottom:0}.spec-table tbody tr{transition:background var(--dur-fast) var(--ease-out)}.spec-table tbody tr:hover{background:var(--brand-50)}.spec-table tbody th[scope=row]{font-family:var(--font-mono);color:var(--ink-900);letter-spacing:.01em;font-weight:500}.spec-table td.num{font-family:var(--font-mono);color:var(--ink-800)}.table-note{padding:var(--space-s) var(--space-m);background:var(--surface-2);border-top:1px solid var(--line-soft);font-size:var(--step--1);color:var(--text-muted);white-space:normal}.table-hint{padding:.6rem var(--space-m) 0;font-size:var(--step--2);color:var(--text-subtle);display:none}@media (width<=760px){.table-hint{display:block}}.def-grid{background:var(--line);border:1px solid var(--line);border-radius:var(--radius-m);grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1px;display:grid;overflow:hidden}.def-grid>div{padding:var(--space-m);background:#fff}.def-grid dt{font-size:var(--step--1);color:var(--ink-900);margin-bottom:.35rem;font-weight:600}.def-grid dd{font-size:var(--step--1);color:var(--text-muted);margin:0;line-height:1.6}.checklist{gap:.75rem;padding:0;list-style:none;display:grid}.checklist li{font-size:var(--step--1);grid-template-columns:22px 1fr;align-items:start;gap:.75rem;line-height:1.6;display:grid}.checklist svg{width:18px;height:18px;color:var(--brand-500);flex:none;margin-top:.28em}.section-inverse .checklist svg{color:var(--brand-300)}.steps{gap:var(--space-m);counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));display:grid}.step{padding-top:var(--space-m);border-top:1px solid var(--line);position:relative}.section-inverse .step{border-top-color:var(--line-inverse)}.step:before{counter-increment:step;content:"0" counter(step);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;color:var(--brand-500);margin-bottom:.6rem;display:block}.section-inverse .step:before{color:var(--brand-300)}.step h3{font-size:var(--step-0);margin-bottom:.4rem}.step p{font-size:var(--step--1);color:var(--text-muted);line-height:1.6}.section-inverse .step p{color:var(--text-inverse-muted)}.gallery{gap:var(--space-s);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));max-width:940px;display:grid}.gallery figure{border:1px solid var(--line);border-radius:var(--radius-m);background:linear-gradient(170deg, #fff 0%, var(--ink-50) 100%);margin:0;overflow:hidden}.gallery .img-box{padding:var(--space-m);grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;height:clamp(220px,26vw,340px);display:grid}.gallery img{object-fit:contain;width:100%;height:100%}.gallery figcaption{padding:.7rem var(--space-s);border-top:1px solid var(--line-soft);font-size:var(--step--2);color:var(--text-muted);background:#fff}.split{gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:center;display:grid}.split-media{padding:var(--space-l);background:linear-gradient(160deg, var(--ink-50), var(--brand-50));border:1px solid var(--line-soft);border-radius:var(--radius-l);place-items:center;display:grid}.split-media img{filter:drop-shadow(0 24px 30px #0d1b262e);max-width:100%;height:auto}.download-grid{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.download-card{padding:var(--space-m);border:1px solid var(--line);border-radius:var(--radius-m);transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);background:#fff;flex-direction:column;gap:.6rem;display:flex}.download-card:hover{border-color:var(--brand-200);box-shadow:var(--shadow-s)}.download-card .doc-icon{border-radius:var(--radius-s);background:var(--brand-50);width:42px;height:42px;color:var(--brand-500);place-items:center;margin-bottom:.3rem;display:grid}.download-card h3,.download-card h2{font-size:var(--step-0);font-weight:600}.download-card p{font-size:var(--step--1);color:var(--text-muted);line-height:1.55}.download-meta{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle)}.download-card .btn{align-self:flex-start;margin-top:auto}.form-card{border:1px solid var(--line);border-radius:var(--radius-l);box-shadow:var(--shadow-s);background:#fff;padding:clamp(1.5rem,1rem + 2vw,2.5rem)}.form-grid{gap:var(--space-s) var(--space-m);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field{flex-direction:column;gap:.4rem;display:flex}.field-full{grid-column:1/-1}.field label{font-size:var(--step--1);color:var(--ink-800);font-weight:550}.field .req{color:var(--brand-500)}.field .hint{font-size:var(--step--2);color:var(--text-subtle)}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:var(--radius-s);width:100%;min-height:46px;font-size:var(--step--1);color:var(--ink-900);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#fff;padding:.65rem .85rem}.field textarea{resize:vertical;min-height:130px;line-height:1.6}.field select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%235b7182' stroke-width='1.5'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px;padding-right:2.25rem}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--ink-300)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-400) 22%, transparent);outline:none}.field[data-invalid=true] input,.field[data-invalid=true] select,.field[data-invalid=true] textarea{border-color:#c0392b}.field-error{font-size:var(--step--2);color:#c0392b}.form-foot{align-items:center;gap:var(--space-s) var(--space-m);margin-top:var(--space-m);padding-top:var(--space-m);border-top:1px solid var(--line-soft);flex-wrap:wrap;display:flex}.form-foot p{font-size:var(--step--2);color:var(--text-muted);max-width:46ch}.form-status{margin-top:var(--space-s);border-radius:var(--radius-s);font-size:var(--step--1);padding:.85rem 1rem;line-height:1.55}.form-status[data-tone=success]{color:#1d5c31;background:#eef7f0;border:1px solid #bfdfc8}.form-status[data-tone=error]{color:#8f2c1c;background:#fdf1ef;border:1px solid #f0c8c1}.form-status[data-tone=info]{background:var(--brand-50);border:1px solid var(--brand-200);color:var(--brand-700)}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}@media (width<=620px){.form-grid{grid-template-columns:1fr}}.cta-band{background:var(--brand-700);color:#fff;isolation:isolate;position:relative;overflow:hidden}.cta-band:before{content:"";z-index:-1;background:radial-gradient(90% 140% at 85% 0%, #17999b59, transparent 60%), linear-gradient(120deg, var(--brand-800), var(--brand-600));position:absolute;inset:0}.cta-band-inner{justify-content:space-between;align-items:center;gap:var(--space-l);padding-block:var(--space-xl);flex-wrap:wrap;display:flex}.cta-band h2{color:#fff;font-size:var(--step-3);max-width:22ch}.cta-band p{margin-top:var(--space-s);color:#ffffffbf;max-width:52ch;font-size:var(--step-0)}.contact-grid{gap:var(--space-xl);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:start;display:grid}@media (width<=940px){.contact-grid{grid-template-columns:1fr}}.contact-block{padding-block:var(--space-m);border-top:1px solid var(--line)}.contact-block:first-of-type{border-top:0;padding-top:0}.contact-block h2{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.14em;text-transform:uppercase;color:var(--text-subtle);margin-bottom:.6rem;font-weight:500}.contact-block a{font-weight:500;text-decoration:none}.contact-block address{color:var(--ink-700);font-style:normal;line-height:1.7}.map-frame{margin-top:var(--space-l);border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface-2);overflow:hidden}.map-frame iframe{border:0;width:100%;height:340px;display:block}.map-placeholder{padding:var(--space-xl) var(--space-m);text-align:center;color:var(--text-subtle);font-size:var(--step--1);place-items:center;gap:.5rem;display:grid}.map-placeholder svg{opacity:.6;width:28px;height:28px}.wa-float{z-index:90;color:#fff;width:52px;height:52px;transition:scale var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);background:#25d366;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:clamp(1rem,2vw,1.75rem);right:clamp(1rem,2vw,1.75rem);box-shadow:0 6px 22px -6px #0d1b2673}.wa-float:hover{color:#fff;scale:1.06;box-shadow:0 10px 28px -8px #0d1b2680}.wa-float svg{width:27px;height:27px}.cert-strip{align-items:center;gap:var(--space-m) var(--space-l);padding:var(--space-m);border:1px dashed var(--line);border-radius:var(--radius-m);background:var(--surface-2);flex-wrap:wrap;display:flex}.cert-badge{border:1px solid var(--line);width:84px;height:84px;font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-subtle);text-align:center;background:#fff;border-radius:50%;flex:none;place-items:center;font-size:.62rem;line-height:1.3;display:grid}.reveal{opacity:0;transition:opacity .62s var(--ease-out), translate .62s var(--ease-out);transition-delay:var(--reveal-delay,0s);translate:0 18px}.reveal.is-visible{opacity:1;translate:0}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;translate:none}}.prose>*+*{margin-top:var(--space-m)}.prose h3{margin-top:var(--space-l)}.prose ul{color:var(--ink-700);gap:.5rem;display:grid}.grid-2{gap:var(--space-l);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.stack-s>*+*{margin-top:var(--space-s)}.stack-m>*+*{margin-top:var(--space-m)}.stack-l>*+*{margin-top:var(--space-l)}.stack-xl>*+*{margin-top:var(--space-xl)}.tag{border-radius:var(--radius-pill);background:var(--brand-50);border:1px solid var(--brand-100);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-transform:uppercase;color:var(--brand-600);align-items:center;gap:.4em;padding:.28em .7em;display:inline-flex}.tag-row{flex-wrap:wrap;gap:.5rem;display:flex}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand{min-height:44px}@media (width<=900px),(pointer:coarse){.footer-links a,.footer-contact a,.breadcrumbs a,.contact-block .link-arrow,.link-arrow{align-items:center;min-height:30px;display:inline-flex}.footer-links{gap:.25rem}}.gallery-wide{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));max-width:none}.works-group+.works-group{margin-top:var(--space-xl)}.works-group h3{margin-bottom:var(--space-2xs);font-size:var(--step-1)}.works-group p{margin-bottom:var(--space-m);font-size:var(--step--1);color:var(--text-muted)}.spec-wrap-text .spec-table td{white-space:normal;min-width:18rem}.cap-grid{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));display:grid}.cap-card{border:1px solid var(--line);border-radius:var(--radius-l);background:#fff;padding:clamp(1.25rem,.9rem + 1.4vw,2rem)}.cap-card-head{margin-bottom:var(--space-m);padding-bottom:var(--space-s);border-bottom:1px solid var(--line-soft);align-items:center;gap:.85rem;display:flex}.cap-card-head .feature-icon{margin:0}.cap-card-head h3{font-size:var(--step-1);margin:0}.cap-count{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;color:var(--text-subtle);margin-left:auto}.checklist-cols{column-gap:var(--space-m);grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));row-gap:.7rem}.forms-strip{align-items:center;gap:var(--space-s) var(--space-l);margin-top:var(--space-m);padding:var(--space-m) clamp(1.25rem, .9rem + 1.4vw, 2rem);background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--radius-l);flex-wrap:wrap;display:flex}.forms-strip .forms-strip-label{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-600);margin:0;font-weight:500}.forms-strip ul{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.forms-strip li{border:1px solid var(--brand-200);border-radius:var(--radius-pill);font-size:var(--step--1);color:var(--ink-800);background:#fff;padding:.45rem 1.05rem;font-weight:550}.banner{--banner-blue:#1d6d9c;--banner-ink:#16181a;--banner-body:#5f6266;border-bottom:1px solid var(--line-soft);background:linear-gradient(#fff 0%,#fdfdfe 55%,#f5f7f9 100%);padding-bottom:clamp(1.25rem,.9rem + 1.6vw,2rem);position:relative;overflow:hidden}.banner-viewport{position:relative;overflow:hidden}.banner-track{transition:translate .76s var(--ease-in-out);will-change:translate;align-items:stretch;display:flex}.banner-slide{flex:0 0 100%;min-width:0}.banner-inner{grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr);align-items:center;gap:clamp(1.5rem,1rem + 3vw,4rem);min-height:min(52vw,72vh,610px);padding-block:clamp(2rem,1.4rem + 2.6vw,3.5rem);display:grid}.banner-copy>*{opacity:0;transition:opacity .6s var(--ease-out), translate .6s var(--ease-out);translate:0 16px}.banner-slide[data-active=true] .banner-copy>*{opacity:1;translate:0}.banner-slide[data-active=true] .banner-copy>:first-child{transition-delay:.12s}.banner-slide[data-active=true] .banner-copy>:nth-child(2){transition-delay:.17s}.banner-slide[data-active=true] .banner-copy>:nth-child(3){transition-delay:.22s}.banner-slide[data-active=true] .banner-copy>:nth-child(4){transition-delay:.29s}.banner-slide[data-active=true] .banner-copy>:nth-child(5){transition-delay:.34s}.banner-slide[data-active=true] .banner-copy>:nth-child(6){transition-delay:.41s}.banner-eyebrow{margin-bottom:var(--space-m);letter-spacing:.16em;text-transform:uppercase;font-size:clamp(.75rem,.68rem + .3vw,.9rem);font-weight:700;line-height:1.2;display:block}.banner-eyebrow .top,.banner-eyebrow .bottom{display:block}.banner-eyebrow .bottom{margin-top:.35em}.banner-eyebrow .top{color:var(--banner-blue)}.banner-eyebrow .bottom{color:var(--banner-ink)}.banner-rule{border-radius:2px;width:78px;height:3px;margin-bottom:clamp(1.25rem,.9rem + 1.4vw,2rem);display:block}.banner-rule-top{background:#9fc4dc}.banner-rule-split{background:0 0;gap:0;width:132px;margin-top:clamp(1rem,.7rem + 1.2vw,1.75rem);display:flex}.banner-rule-split span:first-child{background:var(--banner-blue);border-radius:2px 0 0 2px;width:78px;height:3px}.banner-rule-split span:last-child{background:#d7dde2;border-radius:0 2px 2px 0;width:54px;height:3px}.banner-title{font-family:var(--font-display);letter-spacing:.004em;text-transform:uppercase;text-wrap:nowrap;margin:0;font-size:clamp(2.25rem,1.25rem + 4.3vw,4.7rem);font-weight:700;line-height:.98;display:block}.banner-title .line-1,.banner-title .line-2{display:block}.banner-title .line-1{color:var(--banner-ink)}.banner-title .line-2{color:var(--banner-blue)}.banner-subline{color:var(--banner-body);margin-bottom:clamp(1.5rem,1.1rem + 1.6vw,2.25rem);font-size:clamp(1rem,.94rem + .3vw,1.22rem);line-height:1.5;display:block}.banner-subline span{display:block}.banner-actions{margin:0}.banner-art{isolation:isolate;place-items:center;min-height:0;display:grid;position:relative}.banner-rings{z-index:-1;aspect-ratio:1;pointer-events:none;width:min(118%,640px);height:auto;position:absolute;inset:50% auto auto 50%;translate:-50% -50%}.banner-art img{object-fit:contain;opacity:0;width:auto;max-width:100%;max-height:min(46vw,62vh,470px);transition:opacity .78s var(--ease-out), scale 1s var(--ease-out);position:relative;scale:.96}.banner-slide[data-active=true] .banner-art img{opacity:1;scale:1}.banner-badges{flex-wrap:wrap;align-items:center;gap:clamp(1rem,.4rem + 2.4vw,2.75rem);margin:0 0 clamp(1.25rem,.9rem + 1.4vw,1.75rem);padding:0;list-style:none;display:flex}.banner-badges li{align-items:center;gap:.7rem;display:flex;position:relative}.banner-badges li+li:before{content:"";background:var(--line);width:1px;height:30px;position:absolute;top:50%;left:calc(clamp(1rem,.4rem + 2.4vw,2.75rem)/-2);translate:0 -50%}.banner-badge-icon{width:40px;height:40px;color:var(--banner-blue);border:1.5px solid #b9d3e4;border-radius:50%;flex:none;place-items:center;display:grid}.banner-badge-icon svg{width:20px;height:20px}.banner-badge-text{letter-spacing:.055em;text-transform:uppercase;color:var(--banner-ink);font-size:clamp(.75rem,.7rem + .2vw,.84rem);font-weight:700;line-height:1.35;display:block}.banner-badge-text span{display:block}.banner-controls{justify-content:space-between;align-items:flex-end;gap:var(--space-m);padding-top:var(--space-m);border-top:1px solid var(--line-soft);display:flex}.banner-tabs{flex:1;gap:clamp(.75rem,.4rem + 1.4vw,2rem);min-width:0;display:flex}.banner-tab{text-align:left;cursor:pointer;min-width:0;min-height:52px;color:var(--text-subtle);transition:color var(--dur) var(--ease-out);background:0 0;border:0;flex-direction:column;flex:1 1 0;align-items:flex-start;gap:.2rem;padding:.35rem 0 .7rem;display:flex;position:relative}.banner-tab:hover,.banner-tab[data-active=true]{color:var(--banner-ink)}.banner-tab-index{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.12em;color:var(--banner-blue);opacity:.5;transition:opacity var(--dur) var(--ease-out)}.banner-tab:hover .banner-tab-index,.banner-tab[data-active=true] .banner-tab-index{opacity:1}.banner-tab-label{font-size:var(--step--1);letter-spacing:-.005em;font-weight:550;line-height:1.25}.banner-tab-rail{background:var(--line);border-radius:2px;width:100%;height:2px;position:absolute;bottom:0;left:0;overflow:hidden}.banner-tab-fill{border-radius:inherit;background:var(--banner-blue);transform-origin:0;width:100%;height:100%;display:block;scale:0 1}.banner-tab[data-active=true] .banner-tab-fill{scale:1}.banner-tab-fill[data-running=true]{animation:linear both banner-progress}@keyframes banner-progress{0%{scale:0 1}to{scale:1}}.banner-nav{flex:none;align-items:center;gap:.6rem;padding-bottom:.5rem;display:flex}.banner-count{font-size:var(--step--2);letter-spacing:.1em;color:var(--text-subtle)}.banner-arrow{border:1px solid var(--line);width:44px;height:44px;color:var(--ink-600);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out);background:#fff;border-radius:50%;place-items:center;display:grid}.banner-arrow svg{width:17px;height:17px}.banner-arrow:hover{background:var(--banner-blue);border-color:var(--banner-blue);color:#fff;scale:1.06}.banner-arrow:active{scale:.97}@media (width<=1100px){.banner-title{text-wrap:balance}}@media (width<=880px){.banner-inner{gap:var(--space-l);grid-template-columns:1fr;min-height:0;padding-block:clamp(1.5rem,1.2rem + 1.6vw,2.5rem)}.banner-art{order:-1}.banner-art img{max-height:min(52vw,300px)}.banner-rings{width:min(150%,460px)}.banner-title{text-wrap:nowrap}.banner-badges{gap:1rem 1.5rem}.banner-badges li+li:before,.banner-nav{display:none}}@media (width<=560px){.banner-badges{padding-top:var(--space-s);border-top:1px solid var(--line-soft);grid-template-columns:1fr;gap:.75rem;display:grid}.banner-actions{gap:.7rem;display:grid}.banner-actions .btn{width:100%}.banner-tabs{gap:.6rem}.banner-tab-label{font-size:var(--step--2)}}@media (prefers-reduced-motion:reduce){.banner-track{transition:none}.banner-copy>*,.banner-art img{opacity:1;transition:none;translate:0;scale:1}.banner-tab-fill[data-running=true]{animation:none}}@media (hover:hover) and (pointer:fine){.nav-link{position:relative}.nav-link:after{content:"";background:var(--brand-500);transform-origin:0;height:1.5px;transition:scale var(--dur) var(--ease-out);border-radius:2px;position:absolute;bottom:.3rem;left:.85rem;right:.85rem;scale:0 1}.nav-link:hover:after,.nav-link.is-active:after{scale:1}.nav-dropdown a{padding-left:.8rem;position:relative}.nav-dropdown a:before{content:"";background:var(--brand-500);opacity:0;width:2px;transition:opacity var(--dur-fast) var(--ease-out);border-radius:2px;position:absolute;top:.62rem;bottom:.62rem;left:0}.nav-dropdown a:hover:before,.nav-dropdown a[aria-current=page]:before{opacity:1}.brand img{transition:scale var(--dur) var(--ease-out)}.brand:hover img{scale:1.04}.btn{position:relative;overflow:hidden}.btn:after{content:"";transition:translate .62s var(--ease-out);pointer-events:none;background:linear-gradient(110deg,#0000 20%,#ffffff38 46%,#0000 72%);position:absolute;inset:0;translate:-110%}.btn:hover:after{translate:110%}.btn-secondary:after{background:linear-gradient(110deg,#0000 20%,#1f628e17 46%,#0000 72%)}.btn svg{transition:translate var(--dur-fast) var(--ease-out)}.btn:hover svg:last-child{translate:3px}.product-card:before{content:"";z-index:2;background:linear-gradient(90deg, var(--brand-500), var(--accent-500));transform-origin:0;height:3px;transition:scale var(--dur-slow) var(--ease-out);position:absolute;top:0;left:0;right:0;scale:0 1}.product-card:hover:before{scale:1}.product-card-media:after{content:"";opacity:0;transition:opacity var(--dur-slow) var(--ease-out);background:radial-gradient(70% 60% at 50% 55%,#1f628e24,#0000 70%);position:absolute;inset:0}.product-card:hover .product-card-media:after{opacity:1}.product-card:hover .product-card-media img{filter:drop-shadow(0 24px 30px #0d1b263d);scale:1.06}.product-card .link-arrow{transition:color var(--dur-fast) var(--ease-out)}.product-card:hover .link-arrow{color:var(--brand-500)}.product-card:hover .link-arrow svg{translate:4px}.product-card-specs .v{transition:color var(--dur) var(--ease-out)}.product-card:hover .product-card-specs .v{color:var(--brand-600)}.feature{transition:translate var(--dur) var(--ease-out);position:relative}.feature:before{content:"";background:var(--accent-500);transform-origin:0;width:100%;height:2px;transition:scale var(--dur-slow) var(--ease-out);position:absolute;top:-2px;left:0;scale:0 1}.feature:hover:before{scale:1}.feature:hover{translate:0 -2px}.feature-icon{transition:background var(--dur) var(--ease-out), color var(--dur) var(--ease-out), scale var(--dur) var(--ease-out)}.feature:hover .feature-icon{background:var(--brand-500);color:#fff;scale:1.05}.stat{transition:background var(--dur) var(--ease-out)}.stat:hover{background:var(--brand-50)}.stat dd{transition:color var(--dur) var(--ease-out)}.stat:hover dd{color:var(--brand-600)}.def-grid>div{transition:background var(--dur) var(--ease-out);position:relative}.def-grid>div:before{content:"";background:var(--brand-500);transform-origin:top;width:3px;transition:scale var(--dur) var(--ease-out);position:absolute;top:0;bottom:0;left:0;scale:1 0}.def-grid>div:hover{background:var(--brand-50)}.def-grid>div:hover:before{scale:1}.gallery figure{transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), translate var(--dur) var(--ease-out)}.gallery figure:hover{border-color:var(--brand-200);box-shadow:var(--shadow-s);translate:0 -2px}.gallery img{transition:scale var(--dur-slow) var(--ease-out)}.gallery figure:hover img{scale:1.07}.gallery figcaption{transition:color var(--dur) var(--ease-out)}.gallery figure:hover figcaption{color:var(--ink-800)}.download-card{transition:border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), translate var(--dur) var(--ease-out)}.download-card:hover{translate:0 -3px}.download-card .doc-icon{transition:background var(--dur) var(--ease-out), color var(--dur) var(--ease-out), rotate var(--dur) var(--ease-out)}.download-card:hover .doc-icon{background:var(--brand-500);color:#fff;rotate:-4deg}.step{transition:border-color var(--dur) var(--ease-out)}.step:hover{border-top-color:var(--brand-400)}.step:before{transition:color var(--dur) var(--ease-out), letter-spacing var(--dur) var(--ease-out)}.step:hover:before{color:var(--accent-500);letter-spacing:.16em}.section-inverse .step:hover:before{color:#fff}.checklist li{transition:translate var(--dur-fast) var(--ease-out)}.checklist li:hover{translate:3px}.checklist li svg{transition:scale var(--dur-fast) var(--ease-out)}.checklist li:hover svg{scale:1.15}.spec-table tbody tr th[scope=row]{transition:color var(--dur-fast) var(--ease-out)}.spec-table tbody tr:hover th[scope=row]{color:var(--brand-600)}.split-media img{transition:scale var(--dur-slow) var(--ease-out), filter var(--dur-slow) var(--ease-out)}.split-media:hover img{filter:drop-shadow(0 30px 38px #0d1b263d);scale:1.04}.footer-links a,.footer-contact a{transition:color var(--dur-fast) var(--ease-out), translate var(--dur-fast) var(--ease-out)}.footer-links a:hover,.footer-contact a:hover{translate:3px}.footer-contact a svg{transition:color var(--dur-fast) var(--ease-out), scale var(--dur-fast) var(--ease-out)}.footer-contact a:hover svg{color:var(--accent-500);scale:1.1}.field label{transition:color var(--dur-fast) var(--ease-out)}.field:hover label,.field:focus-within label{color:var(--brand-600)}.contact-block .link-arrow svg{transition:scale var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out)}.contact-block .link-arrow:hover svg{color:var(--accent-500);scale:1.12}.wa-float svg{transition:rotate var(--dur) var(--ease-out)}.wa-float:hover svg{rotate:-8deg}.cert-badge{transition:border-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out)}.cert-strip:hover .cert-badge{border-color:var(--brand-300);color:var(--brand-600)}}@media (prefers-reduced-motion:reduce){.btn:after,.nav-link:after,.product-card:before,.feature:before,.def-grid>div:before{transition:none}}
