/* Self-hosted Stack Sans Headline (latin + latin-ext) — weights 400/600/700 share one file per subset */
@font-face {
  font-family: "Stack Sans Headline";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/stack-sans-headline-latin-ext.woff2") format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329,
    U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Stack Sans Headline";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/stack-sans-headline-latin.woff2") format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
    U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-white:#fff;--spacing:.25rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-relaxed:1.625;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Stack Sans Headline,ui-sans-serif,system-ui,sans-serif;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.h-10{height:calc(var(--spacing) * 10)}.w-10{width:calc(var(--spacing) * 10)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[24px\]{border-radius:24px}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-slate-200{border-color:var(--color-slate-200)}.bg-slate-100{background-color:var(--color-slate-100)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:Stack Sans Headline,ui-sans-serif,system-ui,sans-serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-\[1\.06\]{--tw-leading:1.06;line-height:1.06}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-\[\#1F2A44\]{color:#1f2a44}.text-\[\#1F2A44\]\/50{color:oklab(28.8319% -.00359592 -.0501681/.5)}.text-\[\#1F2A44\]\/55{color:oklab(28.8319% -.00359592 -.0501681/.55)}.text-\[\#1F2A44\]\/60{color:oklab(28.8319% -.00359592 -.0501681/.6)}.text-\[\#1F2A44\]\/65{color:oklab(28.8319% -.00359592 -.0501681/.65)}.text-\[\#1F2A44\]\/70{color:oklab(28.8319% -.00359592 -.0501681/.7)}.text-\[\#1F2A44\]\/85{color:oklab(28.8319% -.00359592 -.0501681/.85)}.text-\[\#1F2A44\]\/90{color:oklab(28.8319% -.00359592 -.0501681/.9)}.text-\[\#4DA3FF\]{color:#4da3ff}.text-white{color:var(--color-white)}.text-white\/55{color:#ffffff8c}@supports (color:color-mix(in lab, red, red)){.text-white\/55{color:color-mix(in oklab, var(--color-white) 55%, transparent)}}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab, red, red)){.text-white\/80{color:color-mix(in oklab, var(--color-white) 80%, transparent)}}.text-white\/90{color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.text-white\/90{color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.selection\:bg-\[\#4DA3FF\]\/25 ::selection{background-color:oklab(70.4736% -.0481245 -.151256/.25)}.selection\:bg-\[\#4DA3FF\]\/25::selection{background-color:oklab(70.4736% -.0481245 -.151256/.25)}.selection\:text-\[\#1F2A44\] ::selection{color:#1f2a44}.selection\:text-\[\#1F2A44\]::selection{color:#1f2a44}@media (hover:hover){.hover\:text-white\/90:hover{color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.hover\:text-white\/90:hover{color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.hover\:underline:hover{text-decoration-line:underline}}@media (min-width:40rem){.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:p-10{padding:calc(var(--spacing) * 10)}.sm\:py-4{padding-block:calc(var(--spacing) * 4)}.sm\:py-28{padding-block:calc(var(--spacing) * 28)}.sm\:pb-10{padding-bottom:calc(var(--spacing) * 10)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:64rem){.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}
        :root{
            --font-sans: "Stack Sans Headline", ui-sans-serif, system-ui, sans-serif;
            --primary:#1F2A44;
            --secondary:#4DA3FF;
            --secondary-dark:#1D6FCC;
            --surface:#ffffff;
            --surface2:#f4f7fb;
            --panel: rgba(31, 42, 68, 0.04);
            --panel2: rgba(31, 42, 68, 0.06);
            --stroke: rgba(31, 42, 68, 0.10);
            --stroke2: rgba(31, 42, 68, 0.16);
            --text:#1F2A44;
            --muted: rgba(31, 42, 68, 0.68);
            --muted2: rgba(31, 42, 68, 0.52);
            --brand:#4DA3FF;
            --brand2:#1F2A44;
            --good:#16a34a;
            --info:#4DA3FF;
            --shadow: 0 24px 70px rgba(31, 42, 68, 0.10);
        }

        /* Inline-style replacements (CSP style-src 'self' forbids style="") */
        .icon-tint-info{ color: var(--info); }
        .icon-tint-brand{ color: var(--brand); }
        .icon-tint-good{ color: var(--good); }
        .noscript-note{ max-width: 42rem; margin: 1rem auto; padding: 0 1.5rem; color: var(--text); }

        /* Layout */
        html { scroll-behavior: smooth; }
        body{
            overflow-x: clip;
            font-family: var(--font-sans);
            font-optical-sizing: auto;
            font-style: normal;
            color: var(--text);
            background:
                radial-gradient(1200px 600px at 50% -200px, rgba(77, 163, 255, 0.14), transparent 58%),
                radial-gradient(900px 520px at 8% 25%, rgba(31, 42, 68, 0.05), transparent 52%),
                radial-gradient(800px 480px at 92% 35%, rgba(77, 163, 255, 0.08), transparent 55%),
                linear-gradient(180deg, var(--surface) 0%, var(--surface2) 55%, var(--surface) 100%);
        }
        .site-shell{
            padding-inline: 1rem;
        }
        @media (min-width: 640px){
            .site-shell{ padding-inline: 1.5rem; }
        }

        .site-logo{
            font-family: var(--font-sans);
            font-size: 1.625rem;
            font-weight: 700;
            font-optical-sizing: auto;
            letter-spacing: -0.03em;
            line-height: 1;
            text-decoration: none;
            background: linear-gradient(90deg, var(--secondary-dark) 0%, var(--secondary) 100%);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
        }
        @media (min-width: 640px){
            .site-logo{ font-size: 2rem; }
        }
        .site-logo--footer{
            display: inline-block;
            font-size: 1.625rem;
            background: none;
            -webkit-background-clip: border-box;
            background-clip: border-box;
            color: #ffffff;
        }
        @media (min-width: 640px){
            .site-logo--footer{ font-size: 2rem; }
        }

        .site-header.glass-soft{
            border-top: 0;
            border-left: 0;
            border-right: 0;
        }

        /* Mobile navigation */
        .site-header__bar{
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
            min-width: 0;
        }
        .site-header__start{
            display: flex;
            align-items: center;
            gap: 1.25rem;
            min-width: 0;
        }
        @media (min-width: 768px){
            .site-header__start{ gap: 2rem; }
        }
        .site-header__end{
            display: flex;
            align-items: center;
            gap: 0.5rem;
            flex-shrink: 0;
        }
        .site-header__actions{
            display: none;
            align-items: center;
            gap: 0.5rem;
            flex-shrink: 0;
        }
        @media (min-width: 640px){
            .site-header__actions{ display: flex; }
        }
        .site-nav-toggle{
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 2.75rem;
            height: 2.75rem;
            border-radius: 0.75rem;
            border: 1px solid var(--stroke2);
            background: rgba(255, 255, 255, 0.9);
            color: var(--text);
            flex-shrink: 0;
            cursor: pointer;
        }
        .site-nav-toggle__icon,
        .site-nav-toggle__icon::before,
        .site-nav-toggle__icon::after{
            display: block;
            width: 1.125rem;
            height: 2px;
            background: currentColor;
            border-radius: 1px;
            transition: transform 0.2s ease, opacity 0.2s ease;
        }
        .site-nav-toggle__icon{
            position: relative;
        }
        .site-nav-toggle__icon::before,
        .site-nav-toggle__icon::after{
            content: "";
            position: absolute;
            left: 0;
        }
        .site-nav-toggle__icon::before{ top: -6px; }
        .site-nav-toggle__icon::after{ top: 6px; }
        .site-nav-toggle[aria-expanded="true"] .site-nav-toggle__icon{
            background: transparent;
        }
        .site-nav-toggle[aria-expanded="true"] .site-nav-toggle__icon::before{
            top: 0;
            transform: rotate(45deg);
        }
        .site-nav-toggle[aria-expanded="true"] .site-nav-toggle__icon::after{
            top: 0;
            transform: rotate(-45deg);
        }
        @media (min-width: 640px){
            .site-nav-toggle{ display: none; }
        }
        .site-nav-desktop{
            display: none;
            align-items: center;
            gap: 1rem;
            font-size: 0.875rem;
            color: var(--muted);
        }
        @media (min-width: 640px){
            .site-nav-desktop{ display: flex; }
        }
        .site-nav-desktop a:hover{ color: var(--secondary); }
        .site-nav-panel{
            display: none;
            margin-top: 0.5rem;
            padding: 1rem;
            border-radius: 1rem;
            border: 1px solid var(--stroke);
            background: rgba(255, 255, 255, 0.96);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            box-shadow: var(--shadow);
        }
        .site-nav-panel.is-open{
            display: block;
        }
        @media (min-width: 640px){
            .site-nav-panel{ display: none !important; }
        }
        .site-nav-panel nav{
            display: flex;
            flex-direction: column;
            gap: 0.25rem;
        }
        .site-nav-panel a{
            display: block;
            padding: 0.65rem 0.75rem;
            border-radius: 0.65rem;
            color: var(--text);
            font-weight: 500;
        }
        .site-nav-panel a:hover{
            background: rgba(77, 163, 255, 0.08);
            color: var(--secondary);
        }
        .site-nav-panel__cta{
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
            margin-top: 0.75rem;
            padding-top: 0.75rem;
            border-top: 1px solid var(--stroke);
        }
        .site-nav-panel__cta .btn,
        .site-nav-panel__cta .download-dropdown{
            width: 100%;
        }
        .site-nav-panel__cta .download-dropdown__trigger{
            width: 100%;
        }
        body.nav-open{
            overflow: hidden;
        }

        /* Animated background orbs */
        .hero {
            position: relative;
            overflow: hidden;
            isolation: isolate;
        }
        .hero::before{
            content:"";
            position:absolute;
            inset:-40%;
            background:
                radial-gradient(closest-side, rgba(77, 163, 255, 0.28), transparent 60%) 10% 20%/55% 55% no-repeat,
                radial-gradient(closest-side, rgba(31, 42, 68, 0.08), transparent 62%) 75% 15%/50% 50% no-repeat,
                radial-gradient(closest-side, rgba(77, 163, 255, 0.18), transparent 62%) 65% 75%/55% 55% no-repeat;
            filter: blur(30px);
            opacity: .75;
            transform: translate3d(0,0,0);
            animation: none;
            z-index: -2;
        }
        .hero::after{
            content:"";
            position:absolute;
            inset:0;
            background: radial-gradient(1000px 500px at 50% 0%, rgba(255,255,255,.75), transparent 62%);
            z-index:-1;
            pointer-events:none;
        }
        @keyframes floatOrbs{
            0%{ transform: translate3d(0,-1.5%,0) scale(1); }
            50%{ transform: translate3d(0,1.5%,0) scale(1.03); }
            100%{ transform: translate3d(0,-1.5%,0) scale(1); }
        }

        /* Glass card */
        .glass{
            background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.94));
            border: 1px solid var(--stroke);
            box-shadow: var(--shadow);
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
        }
        .glass-soft{
            background: rgba(255,255,255,.78);
            border: 1px solid var(--stroke);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
        }

        /* Accent border: primary → secondary */
        .accent-ring{
            position:relative;
        }
        .accent-ring::before{
            content:"";
            position:absolute;
            inset:-1px;
            border-radius: 24px;
            padding:1px;
            background: linear-gradient(120deg, rgba(31,42,68,.55), rgba(77,163,255,.75), rgba(31,42,68,.35));
            mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
            -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
            -webkit-mask-composite: xor;
            mask-composite: exclude;
            pointer-events:none;
            opacity:.95;
        }

        /* Buttons */
        .btn{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:.55rem;
            padding:.9rem 1.1rem;
            border-radius: 18px;
            font-weight: 650;
            letter-spacing: .01em;
            transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
        }
        button.btn{
            font: inherit;
            letter-spacing: .01em;
            cursor: pointer;
            appearance: none;
            -webkit-appearance: none;
        }
        .btn:active{ transform: translateY(1px) scale(.99); }
        .btn-primary{
            color: #ffffff;
            background: linear-gradient(180deg, var(--secondary), #3b8fe6);
            box-shadow: 0 14px 36px rgba(77, 163, 255, 0.35);
        }
        .btn-secondary{
            color: var(--text);
            background: rgba(255,255,255,.9);
            border: 1px solid var(--stroke2);
        }

        .download-dropdown{
            position: relative;
            display: inline-block;
        }
        .download-dropdown__trigger{
            display: inline-flex;
            align-items: center;
            gap: 0.4rem;
            cursor: pointer;
        }
        .download-dropdown__chevron{
            flex-shrink: 0;
            opacity: 0.65;
            transition: transform 0.2s ease;
        }
        .download-dropdown.is-open .download-dropdown__chevron{
            transform: rotate(180deg);
        }
        .download-dropdown__menu{
            position: absolute;
            top: calc(100% + 0.375rem);
            right: 0;
            z-index: 60;
            min-width: 11.5rem;
            padding: 0.35rem;
            margin: 0;
            list-style: none;
            border-radius: 0.85rem;
            border: 1px solid var(--stroke2);
            background: rgba(255, 255, 255, 0.98);
            box-shadow: var(--shadow);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        .download-dropdown--block{
            display: block;
            width: 100%;
        }
        .download-dropdown--block .download-dropdown__trigger{
            width: 100%;
        }
        .download-dropdown--block .download-dropdown__menu{
            left: 0;
            right: 0;
            width: 100%;
            min-width: 0;
        }
        .download-dropdown__item{
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
            padding: 0.65rem 0.75rem;
            border-radius: 0.55rem;
            color: var(--text);
            text-decoration: none;
            font-size: 0.875rem;
            font-weight: 500;
            line-height: 1.3;
        }
        .download-dropdown__item:hover{
            background: rgba(77, 163, 255, 0.08);
        }
        .download-dropdown__item.is-current{
            background: rgba(77, 163, 255, 0.14);
            color: var(--secondary-dark);
            font-weight: 650;
        }
        .download-dropdown__item.is-current::after{
            content: "";
            flex-shrink: 0;
            width: 0.45rem;
            height: 0.45rem;
            border-radius: 999px;
            background: var(--secondary);
            box-shadow: 0 0 0 3px rgba(77, 163, 255, 0.22);
        }

        /* Reveal on scroll — transform only (opacity:0 blocks LCP / causes NO_LCP on deep links) */
        .reveal{
            transform: translateY(18px);
            transition: transform .7s ease;
        }
        .reveal.is-visible,
        .hero-visual.is-visible{
            transform: translateY(0);
        }

        /* Gentle hover lift for feature cards */
        .lift{
            transition: transform .22s ease, border-color .22s ease, background .22s ease;
        }
        /* Screenshot tilt/parallax on hover (desktop only) */
        .tilt-wrap { perspective: 1000px; }
        .tilt {
            transform-style: preserve-3d;
            transition: transform .25s ease;
        }
        @media (hover: hover) and (pointer: fine){
            .tilt-wrap:hover .tilt{
                transform: rotateX(2.8deg) rotateY(-3.2deg) translateY(-4px);
            }
            .lift:hover{
                transform: translateY(-4px);
                border-color: rgba(77,163,255,.28);
                background: rgba(77,163,255,.06);
            }
            .btn-primary:hover{ transform: translateY(-1px); box-shadow: 0 20px 48px rgba(77, 163, 255, 0.42); }
            .btn-secondary:hover{ transform: translateY(-1px); border-color: rgba(77,163,255,.45); background: rgba(77,163,255,.08); }
        }

        /* Gradient text */
        .gradtext{
            background: linear-gradient(90deg, var(--primary), rgba(31,42,68,.82), var(--secondary));
            -webkit-background-clip: text;
            background-clip:text;
            color: transparent;
        }

        /* Workplace banner */
        .workplace-banner{
            position: relative;
            overflow: hidden;
            border-radius: 24px;
            border: 1px solid var(--stroke);
            box-shadow: var(--shadow);
        }
        .workplace-banner picture,
        .workplace-banner img{
            display: block;
            width: 100%;
            height: 14rem;
            object-fit: cover;
            object-position: center 35%;
        }
        @media (min-width: 640px){
            .workplace-banner picture,
            .workplace-banner img{ height: 18rem; }
        }
        @media (min-width: 1024px){
            .workplace-banner picture,
            .workplace-banner img{ height: 20rem; }
        }
        .workplace-banner__overlay{
            position: absolute;
            inset: 0;
            background: linear-gradient(
                0deg,
                rgba(31, 42, 68, 0.88) 0%,
                rgba(31, 42, 68, 0.45) 45%,
                rgba(31, 42, 68, 0.08) 100%
            );
        }
        .workplace-banner__content{
            position: absolute;
            inset-inline: 0;
            bottom: 0;
            padding: 1.5rem;
        }
        .workplace-banner__label{
            font-size: 0.75rem;
            font-weight: 600;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.65);
        }
        @media (min-width: 640px){
            .workplace-banner__content{ padding: 2rem 2.5rem; }
        }

        /* Hero banner — full viewport height */
        .hero-visual{
            position: relative;
            overflow: visible;
            width: 100%;
            min-height: 100vh;
            min-height: 100svh;
            display: flex;
            align-items: center;
            border-bottom: 1px solid var(--stroke);
        }
        .hero-visual > picture{
            position: absolute;
            inset: 0;
            z-index: 0;
            width: 100%;
            height: 100%;
        }
        .hero-visual > picture > img{
            position: absolute;
            inset: 0;
            z-index: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: 72% center;
        }
        .workplace-banner picture{
            display: block;
            width: 100%;
        }
        .section-cv{
            content-visibility: auto;
            contain-intrinsic-size: auto 520px;
        }
        .hero-visual__overlay{
            position: absolute;
            inset: 0;
            z-index: 1;
            background:
                linear-gradient(105deg, rgba(31, 42, 68, 0.92) 0%, rgba(31, 42, 68, 0.72) 42%, rgba(31, 42, 68, 0.25) 72%, transparent 100%),
                linear-gradient(0deg, rgba(31, 42, 68, 0.55) 0%, transparent 55%);
            pointer-events: none;
        }
        .hero-visual__content{
            position: relative;
            z-index: 2;
            width: 100%;
            max-width: 72rem;
            margin-inline: auto;
            padding: 5.5rem 1.5rem 3rem;
            box-sizing: border-box;
        }
        @media (min-width: 640px){
            .hero-visual__content{ padding: 6rem 1.5rem 3.5rem; }
        }
        @media (max-width: 639px){
            .hero-visual__content{
                padding: 5rem 1rem 2.5rem;
            }
            .hero-visual__content h1{
                font-size: clamp(1.75rem, 8vw, 2.25rem);
            }
            .hero-visual__credit{
                left: 1rem;
                right: 1rem;
                text-align: right;
            }
        }
        .features-diar-example{
            font-size: 0.8125rem;
            line-height: 1.55;
        }
        .features-diar-example br{
            display: block;
            margin-bottom: 0.35rem;
        }

        .card-grid-3{
            display: grid;
            grid-template-columns: 1fr;
            gap: 0.75rem;
        }
        @media (min-width: 480px){
            .card-grid-3{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }
        .pricing-card__head{
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }
        .pricing-card__trial-badge{
            display: inline-flex;
            align-items: center;
            align-self: flex-start;
            margin-bottom: 1.25rem;
            padding: 0.35rem 0.85rem;
            border-radius: 999px;
            font-size: 0.8125rem;
            font-weight: 700;
            letter-spacing: 0.04em;
            text-transform: uppercase;
            color: #fff;
            background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
            box-shadow: 0 8px 24px rgba(34, 197, 94, 0.35);
        }
        .pricing-trial-banner{
            margin-top: 1.5rem;
            padding: 1.25rem 1.35rem;
            border-radius: 1.25rem;
            border: 2px solid rgba(34, 197, 94, 0.45);
            background: linear-gradient(135deg, rgba(34, 197, 94, 0.12) 0%, rgba(34, 197, 94, 0.05) 100%);
            text-align: center;
            max-width: 36rem;
            margin-inline: auto;
        }
        .pricing-trial-banner__title{
            margin: 0;
            font-size: 1.25rem;
            font-weight: 700;
            letter-spacing: -0.02em;
            color: var(--text);
        }
        .pricing-trial-banner__body{
            margin: 0.5rem 0 0;
            font-size: 0.9375rem;
            line-height: 1.55;
            color: rgba(31, 42, 68, 0.72);
        }
        .hero-trial-banner{
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 0.65rem 0.85rem;
            margin-top: 1.25rem;
            max-width: 42rem;
        }
        .hero-trial-banner__badge{
            display: inline-flex;
            align-items: center;
            margin-bottom: 0.5rem;
            padding: 0.4rem 0.9rem;
            border-radius: 999px;
            font-size: 0.8125rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
            color: #fff;
            background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
            box-shadow: 0 10px 28px rgba(34, 197, 94, 0.4);
        }
        .hero-trial-banner__line{
            margin: 0;
            font-size: 0.9375rem;
            font-weight: 600;
            line-height: 1.45;
            color: rgba(255, 255, 255, 0.92);
        }
        @media (min-width: 640px){
            .pricing-card__head{
                flex-direction: row;
                align-items: flex-start;
                justify-content: space-between;
            }
            .pricing-card__price{ text-align: right; }
        }
        .pricing-card__price .text-5xl{
            font-size: clamp(2.25rem, 10vw, 3rem);
        }
        .features-slider{
            max-width: 40rem;
            margin-inline: auto;
        }
        @media (min-width: 768px){
            .features-slider{
                max-width: none;
            }
        }
        .features-slider:focus{
            outline: none;
        }
        .features-slider:focus-visible{
            outline: 2px solid var(--secondary);
            outline-offset: 6px;
            border-radius: 1rem;
        }
        .features-slider__viewport{
            overflow: hidden;
            border-radius: 1.5rem;
            touch-action: pan-y;
            cursor: grab;
        }
        .features-slider__viewport.is-dragging{
            cursor: grabbing;
            user-select: none;
            -webkit-user-select: none;
        }
        .features-slider__viewport.is-dragging .features-slider__slide{
            pointer-events: none;
        }
        .features-slider__track{
            display: flex;
            align-items: stretch;
            gap: 0;
            transition: transform 0.4s ease;
            will-change: transform;
        }
        @media (min-width: 768px){
            .features-slider__track{
                gap: 0.75rem;
            }
        }
        .features-slider__slide{
            flex: 0 0 100%;
            min-width: 0;
            margin: 0;
            box-sizing: border-box;
        }
        @media (min-width: 768px){
            .features-slider__slide{
                flex: 0 0 calc((100% - 1.5rem) / 3);
            }
        }
        .features-slider__slide-head{
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 1rem;
        }
        .features-slider__slide-title{
            margin: 0;
            font-size: 1.0625rem;
            font-weight: 650;
            color: var(--text);
            line-height: 1.3;
        }
        @media (min-width: 768px){
            .features-slider__slide-title{ font-size: 1.0625rem; }
        }
        @media (min-width: 1024px){
            .features-slider__slide-title{ font-size: 1.125rem; }
        }
        .features-slider__badge{
            flex-shrink: 0;
            font-size: 0.75rem;
            border-radius: 999px;
            border: 1px solid var(--stroke2);
            background: var(--surface2);
            padding: 0.25rem 0.65rem;
            color: var(--muted2);
            text-transform: lowercase;
        }
        .features-slider__controls{
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 1rem;
            margin-top: 1.25rem;
        }
        .features-slider__arrow{
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 2.75rem;
            height: 2.75rem;
            border-radius: 999px;
            border: 1px solid var(--stroke2);
            background: rgba(255, 255, 255, 0.95);
            color: var(--text);
            cursor: pointer;
            transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease;
        }
        .features-slider__arrow span{
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
        }
        @media (hover: hover) and (pointer: fine){
            .features-slider__arrow:hover{
                border-color: rgba(77, 163, 255, 0.45);
                background: rgba(77, 163, 255, 0.08);
                transform: translateY(-1px);
            }
        }
        .features-slider__arrow:disabled{
            opacity: 0.35;
            cursor: not-allowed;
            transform: none;
        }
        .features-slider__dots{
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.45rem;
            flex-wrap: wrap;
            max-width: 16rem;
        }
        .features-slider__dot{
            width: 0.5rem;
            height: 0.5rem;
            padding: 0;
            border: 0;
            border-radius: 999px;
            background: rgba(31, 42, 68, 0.2);
            cursor: pointer;
            transition: transform 0.2s ease, background 0.2s ease;
        }
        .features-slider__dot.is-active{
            background: var(--secondary);
            transform: scale(1.2);
        }
        .features-slider__dot:focus-visible{
            outline: 2px solid var(--secondary);
            outline-offset: 2px;
        }
        .sr-only{
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
        }
        .privacy-grid{
            display: grid;
            grid-template-columns: 1fr;
            gap: 1.5rem;
        }
        @media (min-width: 768px){
            .privacy-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (min-width: 1024px){
            .privacy-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }
        .models-privacy-banner{
            margin-top: 2.5rem;
            padding: 1.35rem 1.25rem;
            border-radius: 1.25rem;
            border: 2px solid rgba(77, 163, 255, 0.45);
            background:
                linear-gradient(135deg, rgba(77, 163, 255, 0.14) 0%, rgba(77, 163, 255, 0.06) 100%);
            box-shadow: 0 12px 40px rgba(77, 163, 255, 0.12);
        }
        @media (min-width: 640px){
            .models-privacy-banner{ padding: 1.5rem 1.75rem; }
        }
        .models-privacy-banner__title{
            margin: 0;
            font-size: 1.0625rem;
            font-weight: 700;
            letter-spacing: -0.02em;
            color: var(--text);
        }
        @media (min-width: 640px){
            .models-privacy-banner__title{ font-size: 1.2rem; }
        }
        .models-privacy-banner__body{
            margin: 0.65rem 0 0;
            line-height: 1.6;
            color: rgba(31, 42, 68, 0.82);
            font-size: 0.98rem;
        }
        .models-privacy-banner__note{
            margin: 0.85rem 0 0;
            font-size: 0.8125rem;
            line-height: 1.5;
            color: rgba(31, 42, 68, 0.58);
        }
        .models-grid{
            display: grid;
            grid-template-columns: 1fr;
            gap: 1.25rem;
            margin-top: 2rem;
        }
        @media (min-width: 768px){
            .models-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }
        .model-card{
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
            min-height: 100%;
        }
        .model-card__head{
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 0.5rem 0.65rem;
        }
        .model-card__badge{
            display: inline-flex;
            align-items: center;
            padding: 0.28rem 0.65rem;
            border-radius: 999px;
            font-size: 0.6875rem;
            font-weight: 700;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            color: var(--primary);
            background: rgba(77, 163, 255, 0.14);
            border: 1px solid rgba(77, 163, 255, 0.32);
        }
        .model-card__engine{
            margin: 0;
            font-size: 0.8125rem;
            font-weight: 600;
            color: rgba(31, 42, 68, 0.52);
            letter-spacing: 0.01em;
        }
        .model-card__title{
            margin: 0;
            font-size: 1.125rem;
            font-weight: 700;
            letter-spacing: -0.02em;
            line-height: 1.25;
        }
        .model-card__body{
            margin: 0;
            line-height: 1.6;
            color: rgba(31, 42, 68, 0.68);
            font-size: 0.9375rem;
        }
        .models-footnote{
            margin: 1.5rem 0 0;
            text-align: center;
            font-size: 0.875rem;
            line-height: 1.55;
            color: rgba(31, 42, 68, 0.62);
            max-width: 42rem;
            margin-inline: auto;
        }
        .hero-usps{
            list-style: none;
            margin: 0;
            padding: 0;
            display: grid;
            grid-template-columns: 1fr;
            gap: 0.65rem;
        }
        @media (min-width: 640px){
            .hero-usps{
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 0.85rem;
            }
        }
        .hero-usps__item{
            position: relative;
            display: flex;
            align-items: flex-start;
            gap: 0.85rem;
            padding: 1rem 1.05rem;
            border-radius: 1.1rem;
            border: 1px solid rgba(255, 255, 255, 0.2);
            background:
                linear-gradient(145deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0.06) 100%);
            box-shadow:
                0 1px 0 rgba(255, 255, 255, 0.12) inset,
                0 12px 32px rgba(15, 23, 42, 0.18);
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
            overflow: hidden;
            transition: border-color 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease;
        }
        .hero-usps__item::before{
            content: "";
            position: absolute;
            inset: 0 auto 0 0;
            width: 3px;
            background: linear-gradient(180deg, var(--secondary), rgba(77, 163, 255, 0.35));
            opacity: 0.9;
        }
        .hero-usps__item--privacy::before{
            background: linear-gradient(180deg, #6ec0ff, rgba(77, 163, 255, 0.35));
        }
        .hero-usps__item--workflow::before{
            background: linear-gradient(180deg, #8ad4ff, rgba(77, 163, 255, 0.35));
        }
        .hero-usps__item--local::before{
            background: linear-gradient(180deg, #4d8fff, rgba(77, 163, 255, 0.35));
        }
        @media (hover: hover) and (pointer: fine){
            .hero-usps__item:hover{
                transform: translateY(-2px);
                border-color: rgba(255, 255, 255, 0.34);
                box-shadow:
                    0 1px 0 rgba(255, 255, 255, 0.16) inset,
                    0 18px 40px rgba(15, 23, 42, 0.24);
            }
        }
        .hero-usps__icon{
            flex-shrink: 0;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 2.5rem;
            height: 2.5rem;
            border-radius: 0.75rem;
            color: #ffffff;
            background: linear-gradient(145deg, rgba(77, 163, 255, 0.45), rgba(77, 163, 255, 0.18));
            border: 1px solid rgba(255, 255, 255, 0.22);
            box-shadow: 0 8px 20px rgba(77, 163, 255, 0.2);
        }
        .hero-usps__body{
            min-width: 0;
            padding-top: 0.1rem;
        }
        .hero-usps__title{
            font-size: 0.8125rem;
            font-weight: 700;
            letter-spacing: 0.04em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.78);
        }
        .hero-usps__line{
            margin-top: 0.4rem;
            font-size: 0.875rem;
            line-height: 1.5;
            color: rgba(255, 255, 255, 0.95);
        }
        @media (min-width: 640px){
            .hero-usps__item{
                flex-direction: column;
                align-items: flex-start;
                gap: 0.75rem;
                padding: 1.1rem 1.15rem 1.15rem;
            }
            .hero-usps__icon{
                width: 2.65rem;
                height: 2.65rem;
            }
            .hero-usps__line{
                font-size: 0.9rem;
            }
        }
        .hero-visual__content h1{
            color: #ffffff;
            text-shadow: 0 2px 24px rgba(31, 42, 68, 0.35);
        }
        .hero-visual__content .gradtext{
            background: linear-gradient(90deg, #ffffff 0%, #b8d9ff 45%, var(--secondary) 100%);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
        }
        .hero-visual__content .hero-lede{
            color: rgba(255, 255, 255, 0.88);
        }
        .hero-visual__content .hero-lede span{
            color: #ffffff !important;
        }
        .hero-visual__content .btn-secondary{
            color: #ffffff;
            background: rgba(255, 255, 255, 0.1);
            border-color: rgba(255, 255, 255, 0.28);
        }
        .hero-visual__content .btn-secondary:hover{
            background: rgba(255, 255, 255, 0.16);
            border-color: rgba(255, 255, 255, 0.4);
        }
        .hero-cta{
            margin-top: 1.75rem;
            display: flex;
            flex-direction: column;
            align-items: stretch;
            gap: 0.75rem;
            max-width: 28rem;
        }
        @media (min-width: 640px){
            .hero-cta{
                flex-direction: row;
                flex-wrap: wrap;
                align-items: center;
                max-width: none;
            }
        }
        .hero-cta__btn{
            width: 100%;
            min-height: 3.1rem;
        }
        @media (min-width: 640px){
            .hero-cta__btn{
                width: auto;
                min-width: 10.5rem;
            }
        }
        .hero-cta__arrow{
            color: rgba(255, 255, 255, 0.9);
        }
        .hero-cta__download{
            width: 100%;
        }
        @media (min-width: 640px){
            .hero-cta__download{
                width: auto;
            }
        }
        .hero-cta__download .download-dropdown__trigger{
            width: 100%;
        }
        @media (min-width: 640px){
            .hero-cta__download .download-dropdown__trigger{
                width: auto;
            }
        }
        .hero-cta__download .download-dropdown__menu{
            left: 0;
            right: auto;
            min-width: 100%;
        }
        @media (min-width: 640px){
            .hero-cta__download .download-dropdown__menu{
                min-width: 14rem;
            }
        }
        .hero-cta__download.is-open{
            z-index: 30;
        }
        .hero-visual__content .download-dropdown__menu{
            border-color: rgba(255, 255, 255, 0.22);
            background: rgba(12, 20, 38, 0.94);
            box-shadow: 0 18px 48px rgba(0, 0, 0, 0.35);
        }
        .hero-visual__content .download-dropdown__item{
            color: rgba(255, 255, 255, 0.92);
        }
        .hero-visual__content .download-dropdown__item:hover{
            background: rgba(255, 255, 255, 0.08);
        }
        .hero-visual__content .download-dropdown__item.is-current{
            background: rgba(77, 163, 255, 0.22);
            color: #ffffff;
        }
        .hero-visual__credit{
            position: absolute;
            right: 1rem;
            bottom: 0.65rem;
            z-index: 2;
            font-size: 0.75rem;
            color: rgba(255, 255, 255, 0.5);
        }
        .hero-visual__credit a{
            color: rgba(255, 255, 255, 0.65);
            text-decoration: underline;
        }
        .hero-visual__credit a:hover{
            color: #ffffff;
        }

        .skip-link{
            position: absolute;
            left: -9999px;
            top: auto;
            width: 1px;
            height: 1px;
            overflow: hidden;
            z-index: 100;
            padding: 0.75rem 1rem;
            border-radius: 0.75rem;
            background: var(--primary);
            color: #fff;
            font-weight: 600;
            text-decoration: none;
        }
        .skip-link:focus{
            left: 1rem;
            top: 1rem;
            width: auto;
            height: auto;
        }

        /* Footer */
        .site-footer{
            margin-top: 0;
            padding: 3rem 0 2rem;
            border-top: 0;
            color: rgba(255, 255, 255, 0.92);
            background: linear-gradient(165deg, var(--secondary-dark) 0%, var(--primary) 48%, #162238 100%);
            overflow: visible;
        }
        .site-footer__grid{
            display: grid;
            grid-template-columns: 1fr;
            grid-template-areas:
                "brand"
                "product"
                "contact";
            gap: 2rem;
            align-items: start;
        }
        .site-footer__brand{ grid-area: brand; }
        .site-footer__nav--product{ grid-area: product; }
        .site-footer__nav--contact{ grid-area: contact; }
        @media (min-width: 640px){
            .site-footer__grid{
                grid-template-columns: 1fr 1fr;
                grid-template-areas:
                    "brand brand"
                    "product contact";
                gap: 2rem 2.5rem;
            }
        }
        @media (min-width: 1024px){
            .site-footer__grid{
                grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.85fr) minmax(0, 0.85fr);
                grid-template-areas: "brand product contact";
                gap: 2.5rem;
            }
        }
        .site-footer__tagline{
            margin-top: 0.75rem;
            max-width: 22rem;
            font-size: 0.875rem;
            line-height: 1.55;
            color: rgba(255, 255, 255, 0.72);
        }
        .site-footer__heading{
            margin: 0 0 0.75rem;
            font-size: 0.75rem;
            font-weight: 600;
            letter-spacing: 0.05em;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 0.5);
        }
        .site-footer__nav{
            display: flex;
            flex-direction: column;
            gap: 0.35rem;
        }
        .site-footer__nav a{
            font-size: 0.9375rem;
            color: rgba(255, 255, 255, 0.78);
            text-decoration: none;
        }
        .site-footer__nav a:hover{
            color: #ffffff;
        }
        .site-footer__bottom{
            margin-top: 2.5rem;
            padding-top: 1.5rem;
            border-top: 1px solid rgba(255, 255, 255, 0.14);
            text-align: center;
            color: rgba(255, 255, 255, 0.5);
        }
        /* Reduced motion */
        @media (prefers-reduced-motion: reduce){
            html { scroll-behavior: auto; }
            .hero::before{ animation: none; }
            .reveal{ transition: none; opacity: 1; transform: none; }
            .btn, .lift, .tilt{ transition: none; }
            .features-slider__track{ transition: none; }
        }
