:root{--bg-deep:#020617;--bg-panel:rgba(15,23,42,0.58);--bg-glass:rgba(30,41,59,0.42);--border:rgba(45,212,191,0.2);--border-violet:rgba(139,92,246,0.14);--accent:#2dd4bf;--accent-2:#22d3ee;--accent-violet:#a78bfa;--text:#e2e8f0;--muted:#94a3b8;--gradient-hero:radial-gradient(ellipse 120% 85% at 50% -18%,rgba(45,212,191,0.26),transparent 56%),radial-gradient(ellipse 75% 50% at 100% 45%,rgba(99,102,241,0.1),transparent),linear-gradient(180deg,#020617 0%,#0f172a 42%,#020617 100%);--font-sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-display:"Sora",var(--font-sans);--radius:1rem;--shadow:0 25px 50px -12px rgba(0,0,0,0.5);--header-inner-h:132px;--header-h:calc(env(safe-area-inset-top,0px) + var(--header-inner-h));--gutter:clamp(0.75rem,4vw,1.25rem);--touch-min:44px;--bp-sm:30rem;--bp-md:48rem;--bp-lg:64rem;--bp-xl:80rem;--max:72rem;--prose:42rem;--prose-wide:46rem;--section-pad-y:clamp(4rem,7vw,5.75rem);--section-pad-compact:clamp(3rem,5.5vw,4.5rem);--ease-out:cubic-bezier(0.33,1,0.68,1);--transition-ui:0.2s var(--ease-out);--surface-header:rgba(3,7,18,0.75);--surface-header-solid:rgba(3,7,18,0.97);--surface-nav:rgba(3,7,18,0.97);--surface-input:rgba(3,7,18,0.5);--surface-cc:rgba(3,7,18,0.92);--surface-backdrop:rgba(2,6,23,0.72);--surface-modal:rgba(15,23,42,0.96);--shadow-elevated:0 -20px 40px rgba(0,0,0,0.45);--btn-primary-glow:0 4px 24px rgba(45,212,191,0.32);--hero-orbit:rgba(45,212,191,0.12);--stat-tile-bg:rgba(15,23,42,0.62);--stat-tile-border:rgba(45,212,191,0.16);--hero-glow-mid:rgba(45,212,191,0.18);--caption-muted:rgba(148,163,184,0.92);--ring-focus:rgba(45,212,191,0.55);--home-explore-bg:linear-gradient(180deg,rgba(2,6,23,0.42) 0%,rgba(2,6,23,0.06) 100%);--section-pad-tab:clamp(2rem,5vw,3.15rem);--dna-strand-a:rgba(45,212,191,0.065);--dna-strand-b:rgba(139,92,246,0.048);--dna-glow-dot:rgba(56,189,248,0.035);--dna-flow-duration:58s;--z-header:120;--z-nav-backdrop:99998;--z-cc-banner:100500;--z-cc-modal-backdrop:100548;--z-cc-modal:100550;--z-scroll-top:115;--z-scroll-progress:125;--nav-backdrop-scrim:rgba(2,6,23,0.52);--type-body:19px;--type-lede:clamp(1.2rem,1.1rem + 0.35vw,1.35rem);--type-h2:clamp(1.75rem,1.45rem + 0.75vw,2.25rem);--type-h3:clamp(1.35rem,1.15rem + 0.55vw,1.6rem);--body-line-height:1.72;--prose-line-height:1.78;--home-tab-hover-bg:rgba(30,41,59,0.65);--home-tab-hover-border:rgba(45,212,191,0.45)}*,*::before,*::after{box-sizing:border-box}html{min-height:100%;max-width:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 0.35rem);scroll-padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:dark light;scrollbar-gutter:auto;overflow-x:hidden}@media (prefers-color-scheme:dark){html{color-scheme:dark}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}body::before,body::after{animation:none!important;transform:none!important}}body{margin:0;min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;font-family:var(--font-sans);font-size:var(--type-body);line-height:var(--body-line-height);letter-spacing:0.01em;color:var(--text);background-color:var(--bg-deep);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip;position:relative}body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;background-image:var(--gradient-hero),radial-gradient(ellipse 95% 60% at 50% -8%,rgba(45,212,191,0.14),transparent 52%),radial-gradient(ellipse 50% 42% at 100% 100%,rgba(99,102,241,0.11),transparent);animation:ambient-shift 22s ease-in-out infinite alternate,ambient-drift 48s ease-in-out infinite alternate}body::after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;background-image:radial-gradient(ellipse 80% 50% at 18% 22%,var(--dna-glow-dot),transparent 55%),radial-gradient(ellipse 70% 45% at 82% 78%,var(--dna-glow-dot),transparent 50%),repeating-linear-gradient(-19deg,transparent,transparent 11px,var(--dna-strand-a) 11px,var(--dna-strand-a) 12px),repeating-linear-gradient(19deg,transparent,transparent 11px,var(--dna-strand-b) 11px,var(--dna-strand-b) 12px);background-size:100% 100%,100% 100%,120% 120%,120% 120%;transform:translate3d(0,0,0);animation:dna-helix-drift var(--dna-flow-duration) ease-in-out infinite alternate;mask-image:radial-gradient(ellipse 96% 84% at 50% 50%,#000 16%,transparent 78%);opacity:0.68}@media (max-width:47.99rem){body::after{--dna-flow-duration:72s;animation-name:dna-helix-drift-touch;opacity:0.58}}html[data-theme="light"] body::after{opacity:0.48}@media (prefers-color-scheme:light){html:not([data-theme]) body::after{opacity:0.48}}@keyframes ambient-shift{from{opacity:0.88;filter:saturate(0.95)}to{opacity:1;filter:saturate(1.05)}}@keyframes ambient-drift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-0.9%,0.75%,0) scale(1.012)}}@keyframes dna-helix-drift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(8px,7px,0) scale(1.008)}}@keyframes dna-helix-drift-touch{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(4px,3px,0) scale(1.004)}}body>.skip-link,body>header,body>main,body>footer,body>#cookie-consent-root{position:relative;z-index:1}body>main{min-width:0;max-width:100%}html.nav-menu-open .site-header{z-index:100000}.scroll-top{position:fixed;right:max(1rem,env(safe-area-inset-right,0px));bottom:max(1.35rem,calc(env(safe-area-inset-bottom,0px) + 0.65rem));z-index:var(--z-scroll-top);display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);margin:0;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--bg-glass);color:var(--accent-2);cursor:pointer;font:inherit;line-height:1;box-shadow:0 12px 32px -14px rgba(0,0,0,0.45);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);-webkit-tap-highlight-color:transparent;transition:opacity 0.28s var(--ease-out),transform 0.28s var(--ease-out),border-color var(--transition-ui),color var(--transition-ui)}.scroll-top__icon{display:flex;align-items:center;justify-content:center;line-height:0}.scroll-top__icon svg{display:block;width:1.15rem;height:1.15rem;color:currentColor}@media (hover:hover) and (pointer:fine){.scroll-top:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}}.scroll-top:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.scroll-top[hidden]{display:none!important}html.nav-menu-open .scroll-top{visibility:hidden;pointer-events:none;opacity:0}@media (prefers-reduced-motion:reduce){.scroll-top{transition:none}.scroll-top:hover{transform:none}}@media (max-width:29.99rem){body{font-size:1.0625rem;line-height:1.64}}@media (min-width:48rem) and (max-width:63.99rem){:root{--gutter:clamp(1rem,3vw,1.35rem);--section-pad-y:clamp(3rem,5.5vw,4.5rem)}}@supports not (overflow:clip){body{overflow-x:hidden}}img{max-width:100%;height:auto;display:block}#scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:var(--z-scroll-progress);pointer-events:none;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,var(--accent),var(--accent-2));opacity:0.9;transition:transform 0.1s ease-out}@media (prefers-reduced-motion:reduce){#scroll-progress{transition:none}}.tir-section-reveal{opacity:0;transform:translate3d(0,12px,0)}.tir-section-reveal.is-inview{opacity:1;transform:translate3d(0,0,0);transition:opacity 0.4s var(--ease-out),transform 0.4s var(--ease-out)}@media (prefers-reduced-motion:reduce){.tir-section-reveal{opacity:1;transform:none}}.skeleton-line{display:block;height:0.85rem;border-radius:0.25rem;background:linear-gradient(90deg,rgba(148,163,184,0.1) 0%,rgba(148,163,184,0.18) 50%,rgba(148,163,184,0.1) 100%);background-size:220% 100%;animation:skeleton-shimmer 1.15s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.skeleton-line{animation:none;background:rgba(148,163,184,0.16)}}@keyframes skeleton-shimmer{from{background-position:0% 0}to{background-position:220% 0}}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:0.2em;transition:color 0.18s var(--ease-out)}@media (hover:hover) and (pointer:fine){a:hover{color:var(--accent-2)}}a:active{color:var(--accent-2)}button,a,.nav-toggle,.text-link,.cc-banner button{-webkit-tap-highlight-color:rgba(45,212,191,0.18)}.btn,.nav-toggle,.text-link,.hero-actions .btn,.cc-banner .btn,.cc-modal-actions .btn,.form-row button{touch-action:manipulation}.skip-link{position:absolute;left:0;top:0;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;z-index:100}.skip-link:focus{position:fixed;width:auto;height:auto;margin:0;overflow:visible;clip:auto;clip-path:none;white-space:normal;padding:0.5rem 1rem;left:max(0.5rem,env(safe-area-inset-left,0px));top:max(0.5rem,env(safe-area-inset-top,0px));background:var(--accent);color:var(--bg-deep);font-weight:600;border-radius:0.25rem;z-index:100500}.wrap{width:min(100%,var(--max));max-width:100%;margin-inline:auto;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px)) max(var(--gutter),env(safe-area-inset-right,0px));min-width:0}.site-header{position:sticky;top:0;z-index:var(--z-header);min-height:var(--header-h);padding-top:env(safe-area-inset-top,0px);display:flex;align-items:stretch;border-bottom:1px solid var(--border);background:var(--surface-header);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:visible;isolation:isolate}@media (prefers-reduced-transparency:reduce){.site-header{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--surface-header-solid)}}@media (max-width:47.99rem){.site-header{isolation:auto;transform:none;filter:none;backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--surface-header-solid)}}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:0.25rem 0;min-height:var(--header-inner-h);flex:1;flex-wrap:nowrap;width:100%;overflow:visible;box-sizing:border-box}.site-header__actions{display:flex;align-items:center;gap:0.45rem;flex-shrink:0;margin-left:auto;position:relative;z-index:125}.theme-select{min-height:var(--touch-min);min-width:5.5rem;max-width:8rem;padding:0.4rem 0.6rem;font-family:inherit;font-size:0.8125rem;font-weight:600;letter-spacing:0.02em;color:var(--text);background-color:var(--bg-glass);border:1px solid var(--border);border-radius:0.5rem;cursor:pointer;line-height:1.2}.theme-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tab-panel-visual{display:flex;justify-content:center;margin:0 auto 1.25rem;max-width:8rem;opacity:0.92}.tab-panel-visual img{width:min(120px,28vw);height:auto}.science-spotlight{position:relative;margin:0 0 clamp(1.75rem,4vw,2.5rem);border-radius:calc(var(--radius) + 0.2rem);overflow:hidden;border:1px solid var(--border);background:var(--bg-panel);box-shadow:0 20px 44px -22px rgba(0,0,0,0.48);min-width:0}.science-spotlight__frame{position:absolute;inset:0;pointer-events:none;z-index:1}.science-spotlight__glow{position:absolute;inset:-45% -25%;background:radial-gradient(circle at 28% 18%,rgba(45,212,191,0.14),transparent 42%);animation:spotlight-pulse 14s ease-in-out infinite alternate}@keyframes spotlight-pulse{from{opacity:0.7;transform:scale(1)}to{opacity:1;transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.science-spotlight__glow{animation:none}}.science-spotlight__media{position:relative;z-index:0;width:100%;max-width:100%;overflow:hidden;background:rgba(15,23,42,0.35)}.science-spotlight__img{max-width:100%;height:auto;display:block;margin:0 auto;width:auto}.science-spotlight__caption{position:relative;z-index:2;margin:0;padding:1rem 1.2rem 1.2rem;font-size:clamp(0.875rem,0.85rem + 0.25vw,0.9375rem);line-height:1.58;color:var(--muted);background:linear-gradient(180deg,rgba(2,6,23,0.12),rgba(15,23,42,0.62));border-top:1px solid rgba(45,212,191,0.12)}.logo{font-family:var(--font-display);font-weight:700;font-size:1.35rem;letter-spacing:-0.03em;color:var(--text);text-decoration:none;background:transparent;box-shadow:none}.logo--brand{display:inline-flex;align-items:center;justify-content:center;gap:0.45rem;min-height:3rem;background:transparent;box-shadow:none}.logo--brand .logo-img{display:block;line-height:0;max-width:100%;background:transparent;box-shadow:none}html[data-theme="light"] .site-header .logo--brand .logo-img{filter:none}html[data-theme="light"] .site-footer .footer-logo{filter:contrast(1.05) saturate(1.03)}.logo-img{display:block;width:auto;height:auto;object-fit:contain;object-position:center center;flex-shrink:0}.site-header .logo--brand{justify-content:center;align-self:center;max-width:min(20rem,72vw)}.site-header .logo--brand .logo-img{height:112px;width:auto;max-width:100%;aspect-ratio:1536 / 1024;object-fit:contain;object-position:center center;background:transparent;box-shadow:none;transition:opacity 0.22s var(--ease-out),transform 0.22s var(--ease-out),filter 0.22s var(--ease-out)}@media (hover:hover) and (pointer:fine){.site-header .logo--brand:hover .logo-img,.site-header .logo--brand:focus-visible .logo-img{transform:translateZ(0) scale(1.015);filter:brightness(1.06) drop-shadow(0 0 12px rgba(45,212,191,0.16))}html[data-theme="light"] .site-header .logo--brand:hover .logo-img,html[data-theme="light"] .site-header .logo--brand:focus-visible .logo-img{filter:contrast(1.06) saturate(1.05) brightness(1.02)}}@media (prefers-reduced-motion:reduce){.site-header .logo--brand .logo-img{transition:none}.site-header .logo--brand:hover .logo-img,.site-header .logo--brand:focus-visible .logo-img{transform:none}}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:var(--touch-min);min-height:var(--touch-min);padding:0.35rem 0.65rem;background:var(--bg-glass);border:1px solid var(--border);color:var(--text);border-radius:0.5rem;cursor:pointer;font:inherit;font-weight:600;flex-shrink:0;transition:border-color var(--transition-ui),background var(--transition-ui),color var(--transition-ui)}.nav-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-toggle__gfx{display:inline-flex;align-items:center;justify-content:center;line-height:0}.nav-toggle__ic{display:block;flex-shrink:0;color:var(--accent-2);transition:color var(--transition-ui),transform 0.2s var(--ease-out),opacity 0.18s ease}.nav-toggle__ic[hidden]{display:none!important}@media (hover:hover) and (pointer:fine){.nav-toggle:hover .nav-toggle__ic{color:var(--accent)}}.nav-list{list-style:none;margin:0;padding:0;display:flex}.nav-list a{color:var(--muted);text-decoration:none;font-size:0.9375rem;font-weight:700;letter-spacing:0.02em;transition:color 0.18s ease,box-shadow 0.18s ease}@media (hover:hover) and (pointer:fine){.nav-list a:hover{color:var(--text)}}.nav-list a[aria-current="page"]{color:var(--text)}.nav-list a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:0.25rem}.nav-list a:active{color:var(--accent-2)}.nav-cta{margin-left:0}.nav-item--dropdown{position:relative;z-index:1}@media (min-width:48rem){.nav-item--dropdown.is-open{z-index:400}}.nav-dropdown-toggle{display:inline-flex;align-items:center;gap:0.25rem;margin:0;padding:0.35rem 0;min-height:var(--touch-min);font:inherit;font-size:0.9375rem;font-weight:700;letter-spacing:0.02em;color:var(--muted);background:transparent;border:none;border-radius:0.35rem;cursor:pointer;text-align:left;transition:color 0.18s ease,box-shadow 0.18s ease}.nav-dropdown-toggle::after{content:"";width:0.35rem;height:0.35rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-0.15rem;opacity:0.85;transition:transform 0.22s var(--ease-out),border-color 0.18s ease,opacity 0.18s ease}.nav-item--dropdown.is-open .nav-dropdown-toggle::after{transform:rotate(225deg);margin-top:0.1rem}.nav-dropdown-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.nav-dropdown{list-style:none;margin:0;padding:0.35rem 0;display:none;min-width:min(14rem,calc(100vw - 2rem));max-width:min(22rem,calc(100vw - 2rem));border-radius:calc(var(--radius) - 0.15rem);border:1px solid var(--border);background:var(--surface-nav);box-shadow:var(--shadow)}.nav-item--dropdown.is-open .nav-dropdown{display:block}@media (min-width:48rem){.nav-dropdown{position:absolute;top:calc(100% + 0.35rem);left:0;z-index:500;padding:0.45rem 0;transform-origin:top center;animation:nav-dropdown-in 0.2s var(--ease-out) both;box-shadow:0 18px 48px -16px rgba(0,0,0,0.55)}.nav-dropdown--mega{min-width:16.5rem;max-width:min(22rem,calc(100vw - 2rem));padding:0.4rem 0}.nav-dropdown--sub{min-width:15rem;max-width:min(19rem,calc(100vw - 2rem))}.nav-dropdown--scroll{max-height:min(22rem,70vh);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;touch-action:pan-y}.nav-dropdown--scroll::-webkit-scrollbar{width:6px}.nav-dropdown--scroll::-webkit-scrollbar-thumb{background:rgba(45,212,191,0.28);border-radius:999px}.nav-dropdown--policies{min-width:12.5rem;max-width:min(17rem,calc(100vw - 2rem));padding:0.35rem 0}.nav-dropdown__label{list-style:none;margin:0;padding:0.45rem 1rem 0.2rem;font-size:0.65rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:rgba(148,163,184,0.85);pointer-events:none}.nav-dropdown__label span{display:block}.nav-dropdown__label + li a{padding-top:0.35rem}}@keyframes nav-dropdown-in{from{opacity:0;transform:translateY(-0.25rem) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (min-width:48rem) and (prefers-reduced-motion:reduce){.nav-dropdown{animation:none}}.nav-dropdown a{display:block;padding:0.55rem 1rem;font-size:0.9rem;color:var(--muted);text-decoration:none;overflow-wrap:anywhere;word-break:break-word;white-space:normal;line-height:1.45;transition:color var(--transition-ui),background var(--transition-ui)}.nav .nav-list .nav-dropdown a{display:block;padding:0.55rem 1rem}@media (max-width:47.99rem){.nav-item--dropdown{width:100%}.nav-dropdown-toggle{width:100%;justify-content:space-between;padding:0.65rem 0}.nav-dropdown{margin:0.15rem 0 0.75rem 0.35rem;padding-left:0.25rem;border-left:2px solid rgba(45,212,191,0.22)}.nav-dropdown__label{padding:0.5rem 0 0.15rem 0.35rem;font-size:0.65rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:rgba(148,163,184,0.88)}}@media (hover:hover) and (pointer:fine){.nav-dropdown a:hover{color:var(--text);background:rgba(45,212,191,0.08)}}.nav-backdrop{position:fixed;inset-inline:0;width:100%;max-width:100%;top:var(--header-h);bottom:0;z-index:var(--z-nav-backdrop);background:var(--nav-backdrop-scrim);border:none;padding:0;margin:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;box-sizing:border-box}.nav-backdrop[hidden]{display:none!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;min-height:var(--touch-min);padding:0.55rem 1.15rem;font:inherit;font-weight:600;font-size:0.9375rem;border-radius:999px;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background var(--transition-ui),border-color var(--transition-ui),color var(--transition-ui),transform 0.12s var(--ease-out),box-shadow var(--transition-ui),filter var(--transition-ui),opacity var(--transition-ui)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:active:not(:disabled):not([aria-disabled="true"]){transform:scale(0.985)}@media (prefers-reduced-motion:reduce){.btn:active:not(:disabled):not([aria-disabled="true"]){transform:none}}.btn:disabled,.btn[aria-disabled="true"]{opacity:0.4;cursor:not-allowed;pointer-events:none;box-shadow:none;filter:none}.btn[aria-busy="true"]{cursor:wait;pointer-events:none;opacity:0.88}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#020617;box-shadow:var(--btn-primary-glow)}@media (hover:hover) and (pointer:fine){.btn-primary:hover{filter:brightness(1.06);color:#020617}}.btn-ghost{background:var(--bg-glass);border-color:var(--border);color:var(--text)}@media (hover:hover) and (pointer:fine){.btn-ghost:hover{border-color:var(--accent);color:var(--accent-2)}}@media (max-width:47.99rem){.site-header .wrap.site-header__inner .nav{flex:0 0 0;width:0;min-width:0;margin:0;padding:0;border:none;overflow:visible}#site-nav.nav{position:fixed;left:0;right:0;top:var(--header-h);bottom:auto;width:100%;max-width:100%;max-height:min(85vh,calc(100vh - var(--header-h) - env(safe-area-inset-bottom,0px)));max-height:min(85dvh,calc(100dvh - var(--header-h) - env(safe-area-inset-bottom,0px)));min-height:0;margin:0;box-sizing:border-box;z-index:99999;transform:translate3d(0,-100%,0);opacity:0;visibility:hidden;pointer-events:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;background:var(--surface-nav);border-bottom:1px solid var(--border);border-radius:0 0 1rem 1rem;padding:0.85rem max(1rem,var(--gutter),env(safe-area-inset-left,0px)) max(1rem,var(--gutter),env(safe-area-inset-right,0px));padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));transition:transform 0.34s cubic-bezier(0.22,1,0.36,1),opacity 0.26s ease,visibility 0s linear 0.34s;will-change:transform,opacity;-webkit-tap-highlight-color:transparent;backface-visibility:hidden}#site-nav.nav.is-open{transform:translate3d(0,0,0);opacity:1;visibility:visible;pointer-events:auto;transition:transform 0.34s cubic-bezier(0.22,1,0.36,1),opacity 0.26s ease,visibility 0s linear 0s;box-shadow:0 14px 40px -18px rgba(0,0,0,0.42)}@media (prefers-reduced-motion:reduce){#site-nav.nav{transform:none;transition:opacity 0.18s ease,visibility 0s linear 0.18s;will-change:opacity}#site-nav.nav.is-open{transition:opacity 0.18s ease,visibility 0s linear 0s}}}.nav-list{flex-direction:column;align-items:stretch}.nav-list a{padding:0.65rem 0;min-height:var(--touch-min);display:inline-flex;align-items:center}@media (max-width:47.99rem){.nav .nav-list>li:not(:last-child){border-bottom:1px solid rgba(148,163,184,0.14)}.nav .nav-list a{color:var(--text);font-weight:700;font-size:1.05rem;width:100%}.nav .nav-dropdown-toggle{color:var(--text);font-weight:700;font-size:1.05rem}.nav-toggle{border-width:2px;color:var(--text);touch-action:manipulation;min-width:3.25rem;justify-content:center;padding-inline:0.5rem}.nav-toggle[aria-expanded="true"] .nav-toggle__ic--close{color:var(--accent)}.nav-mobile-close{display:flex;align-items:center;justify-content:flex-end;width:100%;position:sticky;top:0;z-index:5;margin:-0.85rem 0 0.5rem;padding:0.85rem 0 0.4rem;border:none;border-bottom:1px solid var(--border);background:var(--surface-nav);box-shadow:0 10px 18px -12px rgba(0,0,0,0.22);color:var(--text);cursor:pointer;font:inherit;min-height:var(--touch-min);-webkit-tap-highlight-color:transparent;transition:color var(--transition-ui),background var(--transition-ui)}.nav-mobile-close:hover,.nav-mobile-close:focus-visible{color:var(--text)}.nav-mobile-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:0.35rem}.nav-mobile-close__icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-glass);line-height:0;color:var(--accent-2);transition:color var(--transition-ui),border-color var(--transition-ui)}.nav-mobile-close__icon svg{width:1.25rem;height:1.25rem;display:block}.nav-mobile-close:hover .nav-mobile-close__icon,.nav-mobile-close:focus-visible .nav-mobile-close__icon{color:var(--accent);border-color:rgba(45,212,191,0.45)}}@media (min-width:48rem){.nav-mobile-close{display:none!important}}.nav-cta{margin-top:0.5rem}.nav-cta .btn{width:100%}@media (min-width:48rem){.nav-toggle{display:none}#site-nav.nav,.nav{position:static;max-height:none;overflow:visible;left:auto;right:auto;top:auto;padding:0;transform:none;opacity:1;visibility:visible;pointer-events:auto;background:transparent;border:none;-webkit-overflow-scrolling:auto}.nav-list{flex-direction:row;flex-wrap:wrap;gap:0.2rem 0.85rem;align-items:center}.nav-list a{padding:0.4rem 0.15rem;min-height:0;display:inline-block;font-size:1rem;font-weight:700;letter-spacing:0.02em}.nav-dropdown-toggle{font-size:1rem;font-weight:700;letter-spacing:0.02em}.nav-cta{margin-left:0.5rem;margin-top:0}.nav-cta .btn{width:auto}.site-header .wrap.site-header__inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0.65rem 1.25rem}.site-header .wrap.site-header__inner>.logo{grid-column:1;justify-self:start}.site-header .wrap.site-header__inner>.site-header__actions{grid-column:3;grid-row:1;margin-left:0}.site-header .wrap.site-header__inner>.nav{grid-column:2;grid-row:1;justify-self:center;width:100%!important;max-width:min(46rem,100%);display:flex;justify-content:center;align-items:center}.site-header .wrap.site-header__inner>.nav .nav-list{justify-content:center}.nav-list a[aria-current="page"]{color:var(--text);box-shadow:inset 0 -2px 0 0 rgba(45,212,191,0.42)}@media (hover:hover) and (pointer:fine){.nav-list a:hover{color:var(--accent-2);box-shadow:inset 0 -2px 0 0 rgba(45,212,191,0.55)}.nav-dropdown-toggle:hover{color:var(--accent-2);box-shadow:inset 0 -2px 0 0 rgba(45,212,191,0.55)}}}.hero{padding:clamp(3rem,8vw,6rem) 0 clamp(4rem,10vw,7rem);position:relative;overflow:hidden;z-index:0}.hero-grid>*{position:relative;z-index:1;min-width:0}.hero-grid>div:first-child{overflow-wrap:anywhere}.hero::before{content:"";position:absolute;inset:-20% -10% auto;height:60%;background:radial-gradient(ellipse at center,var(--hero-glow-mid),transparent 70%);pointer-events:none}.hero::after{content:"";position:absolute;inset:0;z-index:0;opacity:0.26;pointer-events:none;background-image:repeating-linear-gradient(-18deg,transparent,transparent 11px,rgba(45,212,191,0.1) 11px,rgba(45,212,191,0.1) 12px),repeating-linear-gradient(18deg,transparent,transparent 11px,rgba(139,92,246,0.07) 11px,rgba(139,92,246,0.07) 12px);animation:helix-drift 38s linear infinite;mask-image:radial-gradient(ellipse 85% 70% at 50% 40%,#000 30%,transparent 75%)}@keyframes helix-drift{to{transform:translate3d(0,12px,0)}}@media (prefers-reduced-motion:reduce){.hero::after{animation:none}}.hero-grid{display:grid;gap:2.5rem;align-items:start}@media (min-width:56.25rem){.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,0.92fr);gap:clamp(2rem,4vw,3.5rem);align-items:center}.hero-grid>:first-child{padding-top:0.25rem}}.hero-eyebrow{display:inline-block;font-size:0.875rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;color:var(--accent-2);margin-bottom:1rem}.hero h1{font-family:var(--font-display);font-size:clamp(4rem,6vw + 1rem,5.5rem);font-weight:800;line-height:1.06;letter-spacing:-0.038em;margin:0 0 1.25rem;text-wrap:balance;overflow-wrap:anywhere;word-break:break-word}.hero-lead{font-size:var(--type-lede);color:var(--muted);max-width:min(100%,38rem);margin:0 0 1rem;line-height:var(--prose-line-height);letter-spacing:0.01em;overflow-wrap:anywhere;word-break:break-word}.hero-lead:last-of-type{margin-bottom:1.75rem}.hero-note{margin:1rem 0 0;font-size:0.875rem;line-height:1.55;color:var(--caption-muted);max-width:min(100%,32rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:0.75rem}@media (max-width:29.99rem){.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%;justify-content:center}}.hero-visual{position:relative;min-height:clamp(220px,52vw,300px);border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-panel);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow);padding:1.5rem;display:flex;flex-direction:column;justify-content:flex-end}.hero-visual .hero-figure{position:absolute;inset:1.25rem;width:calc(100% - 2.5rem);max-width:calc(100% - 2.5rem);height:auto;opacity:0.95;object-fit:contain;pointer-events:none}.hero-stat{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.75rem;text-align:left}@media (max-width:29.99rem){.hero-stat{grid-template-columns:1fr;text-align:left}.hero-stat strong{font-size:1.05rem}}.hero-stat div{padding:0.75rem;border-radius:0.75rem;background:var(--stat-tile-bg);border:1px solid var(--stat-tile-border)}.hero-stat strong{display:block;font-family:var(--font-display);font-size:clamp(1.05rem,2.8vw,1.5rem);color:var(--accent);line-height:1.2}.hero-stat span{font-size:clamp(0.6875rem,1.85vw,0.8125rem);color:var(--muted);line-height:1.35;overflow-wrap:anywhere}.hero-stat>div{min-width:0}@media (min-width:56.25rem){.hero-stat{grid-template-columns:repeat(3,minmax(0,1fr));gap:0.75rem 0.9rem;text-align:left;align-items:stretch}.hero-stat>div{display:flex;flex-direction:column;gap:0.35rem;justify-content:center;min-width:0;padding:0.85rem 0.85rem}.hero-stat strong{font-size:1.0625rem;line-height:1.32;letter-spacing:-0.02em;overflow-wrap:anywhere;word-break:normal}.hero-stat span{display:block;font-size:0.8125rem;line-height:1.5;overflow-wrap:anywhere;word-break:normal}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.home-explore{position:relative;background:var(--home-explore-bg);border-top:1px solid rgba(45,212,191,0.1)}.home-tabs__bar-wrap{position:sticky;top:var(--header-h);z-index:40;padding:0.5rem 0;margin:0;border-bottom:1px solid rgba(45,212,191,0.12);background:linear-gradient(180deg,rgba(15,23,42,0.94),rgba(15,23,42,0.82));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 12px 32px -28px rgba(0,0,0,0.45)}@media (prefers-reduced-transparency:reduce){.home-tabs__bar-wrap{backdrop-filter:none;-webkit-backdrop-filter:none}}.home-tabs__bar{display:flex;flex-wrap:nowrap;gap:0.5rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:0.15rem 0 0.35rem;margin:0;scrollbar-width:thin;max-width:100%;box-sizing:border-box}.home-tabs__bar::-webkit-scrollbar{height:4px}.home-tabs__bar::-webkit-scrollbar-thumb{background:rgba(45,212,191,0.25);border-radius:4px}.home-tab{appearance:none;flex:0 1 auto;min-width:0;max-width:min(100%,11.5rem);scroll-snap-align:start;min-height:var(--touch-min);padding:0.5rem 1.1rem;font:inherit;font-size:0.875rem;font-weight:700;letter-spacing:0.045em;text-transform:uppercase;color:var(--muted);background:rgba(15,23,42,0.45);border:1px solid rgba(45,212,191,0.2);border-radius:999px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background var(--transition-ui),border-color var(--transition-ui),color var(--transition-ui),box-shadow var(--transition-ui);touch-action:manipulation}@media (min-width:48rem){.home-tab{font-size:0.90625rem;padding:0.55rem 1.35rem}}@media (min-width:64rem){.home-tabs__bar{flex-wrap:wrap;justify-content:center;overflow:visible}}.home-tab[aria-selected="true"]{color:#0f172a;background:linear-gradient(135deg,rgba(45,212,191,0.95),rgba(34,211,238,0.88));border-color:rgba(45,212,191,0.65);box-shadow:0 4px 24px rgba(45,212,191,0.28)}@media (hover:hover) and (pointer:fine){.home-tab:not([aria-selected="true"]):hover{border-color:var(--home-tab-hover-border);color:var(--text);background:var(--home-tab-hover-bg)}}.home-tab:focus-visible{outline:2px solid var(--ring-focus);outline-offset:3px}.home-tabs__panels{padding-bottom:calc(3.5rem + env(safe-area-inset-bottom,0px));min-width:0;overflow:visible}.home-tabs__panel{padding-top:0.25rem;animation:homeTabIn 0.35s var(--ease-out)}@keyframes homeTabIn{from{opacity:0.88;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.home-tabs__panel{animation:none}}.js [data-home-tabs] .home-tabs__panel[hidden]{display:none!important}html:not(.js) .home-tabs__bar-wrap{display:none}html:not(.js) [data-home-tabs] .home-tabs__panel{display:block!important}html:not(.js) [data-home-tabs] .home-tabs__panel[hidden]{display:block!important}.section--tab{padding:var(--section-pad-tab) 0}.section--tab:first-child{padding-top:clamp(1.25rem,3vw,1.75rem)}.section--tab-tight{padding:clamp(1.5rem,3.5vw,2.25rem) 0}#contact.section--tab{padding-bottom:calc(180px + env(safe-area-inset-bottom,0px))}.home-panel-title{font-family:var(--font-display);font-size:clamp(1.65rem,3vw,2.2rem);font-weight:800;letter-spacing:-0.025em;margin:0 0 0.75rem;line-height:1.14;overflow-wrap:anywhere;word-break:break-word}.topic-block--band{border-radius:calc(var(--radius) + 0.15rem);padding:clamp(1.5rem,4vw,2.25rem);margin-inline:0;border:1px solid rgba(45,212,191,0.12);background:rgba(15,23,42,0.4)}.topic-block--band .section-head{margin-bottom:1.75rem}#main-content{scroll-margin-top:calc(var(--header-h) + 0.35rem)}[data-home-tabs] .section--tab[id]{scroll-margin-top:calc(var(--header-h) + 3.75rem)}section{scroll-margin-top:calc(var(--header-h) + 1rem)}.section{padding:var(--section-pad-y) 0}.section--compact{padding:var(--section-pad-compact) 0}.section-head{max-width:var(--prose-wide);margin-bottom:2.5rem}[data-home-tabs] .section--tab>.section-head{margin-left:auto;margin-right:auto;text-align:center}[data-home-tabs] .section--tab .section-intro{margin-left:auto;margin-right:auto}[data-home-tabs] #contact .contact-routing{margin-left:auto;margin-right:auto}[data-home-tabs] #contact .contact-grid{margin-left:auto;margin-right:auto;max-width:min(100%,52rem)}.section-label{display:block;font-size:0.6875rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent-2);margin-bottom:0.5rem}.section-head h2{font-family:var(--font-display);font-size:var(--type-h2);font-weight:800;letter-spacing:-0.025em;line-height:1.14;margin:0 0 0.85rem}.section-head p,.section-intro{margin:0;color:var(--muted);line-height:var(--prose-line-height);letter-spacing:0.01em;max-width:var(--prose);overflow-wrap:anywhere;word-break:break-word}.section--band{border-block:1px solid rgba(45,212,191,0.12);background:rgba(15,23,42,0.35)}.trust-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}@media (min-width:40rem){.trust-list{grid-template-columns:repeat(2,1fr);gap:1.25rem 2rem}}.trust-list li{margin:0;padding:1.25rem 1.35rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.trust-list strong{display:block;font-family:var(--font-display);font-size:1.05rem;color:var(--text);margin-bottom:0.35rem}.trust-list span{display:block;font-size:0.9375rem;color:var(--muted);line-height:1.55}.card-grid{display:grid;gap:1.35rem;min-width:0;width:100%}@media (min-width:40rem){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:52rem){.card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(1.25rem,2.5vw,1.75rem)}}@media (min-width:48rem){.card-grid.two{grid-template-columns:repeat(2,1fr)}}.section-cta{margin-top:2rem;text-align:center}.section-cta--split{display:flex;flex-wrap:wrap;gap:0.75rem 1rem;justify-content:center;align-items:center}.section-cta .btn + .btn{margin-inline-start:0.75rem}.section-cta--split .btn + .btn{margin-inline-start:0}.cta-caption{display:block;width:100%;margin-top:0.75rem;font-size:0.8125rem;color:rgba(148,163,184,0.88);line-height:1.45}.card-meta{margin:0.75rem 0 0;font-size:0.8125rem;color:var(--accent);font-weight:600}.card .section-cta{margin-top:1.25rem;text-align:left}.card{min-width:0;padding:1.5rem;border-radius:calc(var(--radius) + 0.1rem);border:1px solid rgba(148,163,184,0.14);background:linear-gradient(165deg,rgba(15,23,42,0.72),rgba(30,41,59,0.45));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 12px 32px -18px rgba(0,0,0,0.45),inset 0 1px 0 rgba(255,255,255,0.04);transition:border-color 0.22s var(--ease-out),transform 0.22s var(--ease-out),box-shadow 0.22s var(--ease-out)}@media (hover:hover) and (pointer:fine){.card:hover{border-color:rgba(45,212,191,0.38);transform:translateY(-2px);box-shadow:0 16px 40px -22px rgba(0,0,0,0.42),0 0 0 1px rgba(45,212,191,0.06)}}.card-icon{width:2.5rem;height:2.5rem;border-radius:0.75rem;background:rgba(45,212,191,0.15);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:1.25rem}.card-icon svg{width:1.3rem;height:1.3rem;flex-shrink:0}.card h3,.card h4.card-title{font-family:var(--font-display);font-size:1.2rem;margin:0 0 0.5rem}.card p{margin:0;font-size:0.9375rem;color:var(--muted);line-height:1.62;overflow-wrap:anywhere;word-break:break-word}.card ul{margin:0.75rem 0 0;padding-left:1.25rem;font-size:0.9375rem;color:var(--muted);line-height:1.55;overflow-wrap:anywhere}.card ul li + li{margin-top:0.4rem}.cta-band{margin:0;padding:clamp(2.5rem,5vw,3.25rem);border-radius:calc(var(--radius) + 0.25rem);border:1px solid var(--border);background:linear-gradient(135deg,rgba(15,23,42,0.92),rgba(30,41,59,0.72));text-align:center}.cta-band .section-label{margin-bottom:0.65rem}.cta-band h2,.cta-band .home-panel-title{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);margin:0 0 0.75rem}.cta-band p{margin:0 auto 1.5rem;max-width:min(100%,42rem);color:var(--muted);line-height:1.7}.cta-band__actions{display:flex;flex-wrap:wrap;gap:0.75rem 1rem;justify-content:center;align-items:center}.cta-band__note{margin:1rem 0 0;font-size:0.8125rem;color:rgba(148,163,184,0.88);line-height:1.5;max-width:36rem;margin-inline:auto}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;width:100%;max-width:100%}@media (min-width:48rem){.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.contact-panel{padding:1.75rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-panel)}.contact-panel h3,.contact-panel h4.card-title{font-family:var(--font-display);margin-top:0}.contact-routing{list-style:none;margin:0 0 2rem;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:0.75rem;max-width:min(100%,var(--prose-wide));width:100%}@media (min-width:40rem){.contact-routing{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}}.contact-route{display:flex;flex-direction:column;gap:0.25rem;padding:1rem 1.1rem;border-radius:var(--radius);border:1px solid var(--border);background:rgba(15,23,42,0.4);text-decoration:none;color:var(--text);transition:border-color 0.2s,background 0.2s;min-height:100%}.contact-route strong{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--text)}.contact-route span{font-size:0.8125rem;color:var(--muted);line-height:1.45}@media (hover:hover) and (pointer:fine){.contact-route:hover{border-color:rgba(45,212,191,0.45);background:rgba(30,41,59,0.35);color:var(--text)}}.contact-route:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.form-row{margin-bottom:1rem}.form-row label{display:block;font-size:0.875rem;font-weight:500;margin-bottom:0.35rem;color:var(--muted)}.form-row input,.form-row textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:0.65rem 0.85rem;border-radius:0.5rem;border:1px solid var(--border);background:var(--surface-input);color:var(--text);font-size:1rem;line-height:1.5}.form-row input:focus,.form-row textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.form-row textarea{min-height:120px;resize:vertical}.form-note{font-size:0.8125rem;color:var(--muted);margin-top:0.75rem}.site-footer{border-top:1px solid var(--border);padding:2.5rem 0 calc(2.5rem + env(safe-area-inset-bottom,0px));margin-top:2rem}.footer-grid{display:grid;gap:2rem}@media (min-width:40rem){.footer-grid{grid-template-columns:1.5fr 1fr 1fr}}.footer-logo-wrapper{display:inline-flex;align-items:center;justify-content:flex-start}.footer-logo-wrapper img.footer-logo{flex-shrink:0}.site-footer img.footer-logo{width:158px;height:auto;max-width:100%;object-fit:contain;display:block}@media (max-width:768px){.site-footer img.footer-logo{width:124px}}.site-footer .footer-logo-wrapper:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:0.35rem}.footer-tag{color:var(--muted);font-size:1rem;line-height:var(--prose-line-height);letter-spacing:0.01em;margin:0;max-width:28ch}.footer-col h4{font-size:0.8125rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);margin:0 0 0.75rem}.footer-col ul{list-style:none;margin:0;padding:0}.footer-col li{margin-bottom:0.5rem}.footer-col a{color:var(--text);text-decoration:none}@media (hover:hover) and (pointer:fine){.footer-col a:hover{color:var(--accent)}}.footer-bottom{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(45,212,191,0.12);font-size:0.9375rem;line-height:1.65;color:var(--muted);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center}.footer-credits{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid rgba(45,212,191,0.1);text-align:center}.footer-policies{margin:0 0 0.65rem;font-size:0.8125rem;line-height:1.5}.footer-policies a{color:var(--muted);text-decoration:none}.footer-policies a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:0.2rem}@media (hover:hover) and (pointer:fine){.footer-policies a:hover{color:var(--accent-2)}}.footer-sep{margin:0 0.35rem;opacity:0.55}.footer-dev{margin:0;font-size:0.75rem;letter-spacing:0.02em;color:rgba(148,163,184,0.72)}.footer-dev-name{font-weight:600;color:rgba(203,213,225,0.88)}.legal-doc{max-width:46rem;padding-bottom:3rem}.legal-doc h1{font-family:var(--font-display);font-size:clamp(1.9rem,3.2vw,2.45rem);font-weight:800;line-height:1.12;letter-spacing:-0.03em;margin:0 0 1rem}.legal-doc h2{font-family:var(--font-display);font-size:clamp(1.15rem,1.05rem + 0.35vw,1.35rem);font-weight:700;line-height:1.28;letter-spacing:-0.02em;margin:2rem 0 0.75rem}.legal-doc h2:first-of-type{margin-top:1.5rem}.legal-doc p,.legal-doc li{color:var(--muted);margin:0 0 1rem;line-height:var(--prose-line-height);letter-spacing:0.01em}.legal-doc ul{margin:0 0 1rem;padding-left:1.25rem}.legal-doc .legal-note{border-left:3px solid var(--border);padding:0.75rem 0 0.75rem 1rem;margin:1.5rem 0;font-size:0.9375rem;color:var(--muted)}.legal-doc .back-link{margin-top:2rem}.wrap.page-hero{max-width:min(48rem,100%)}.page-hero{padding:clamp(2.5rem,6vw,4rem) 0 0}.page-hero h1{font-family:var(--font-display);font-size:clamp(2rem,4.25vw,2.75rem);font-weight:800;letter-spacing:-0.035em;line-height:1.1;margin:0 0 0.85rem}.page-hero .lede{font-size:var(--type-lede);color:var(--muted);max-width:100%;margin:0 0 2rem;line-height:var(--prose-line-height);letter-spacing:0.01em}.science-values{width:100%;max-width:min(48rem,100%);margin:0 auto 2.25rem;padding:0;box-sizing:border-box}.science-values--center{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.science-values__title{font-family:var(--font-display);font-size:clamp(1.45rem,2.65vw,1.85rem);font-weight:800;line-height:1.15;letter-spacing:-0.025em;margin:0 0 1rem;text-align:center}.science-values__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12.5rem),1fr));gap:0.65rem 0.75rem}.science-values__item{margin:0;padding:0.85rem 0.9rem;text-align:center;font-size:clamp(0.875rem,0.82rem + 0.2vw,0.9375rem);font-weight:600;line-height:1.4;color:var(--text);background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-sizing:border-box;min-width:0}.science-values--featured{margin-bottom:clamp(2rem,5vw,3rem)}.science-values--featured .science-values__title{margin-bottom:1.35rem;letter-spacing:-0.02em}.science-values--featured .science-values__grid{gap:1rem 1.1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}@media (max-width:29.99rem){.science-values__grid,.science-values--featured .science-values__grid{grid-template-columns:minmax(0,1fr)}}.science-values--featured .science-values__item{padding:1.15rem 1.1rem;font-size:clamp(0.9rem,0.86rem + 0.15vw,1rem);font-weight:600;line-height:1.45;border-radius:calc(var(--radius) + 0.15rem);border:1px solid rgba(45,212,191,0.28);background:linear-gradient(165deg,rgba(15,23,42,0.92) 0%,rgba(15,23,42,0.72) 48%,rgba(30,41,59,0.55) 100%);box-shadow:0 14px 36px -22px rgba(0,0,0,0.55);border-top:3px solid var(--accent)}html[data-theme="light"] .science-values--featured .science-values__item{background:linear-gradient(165deg,rgba(255,255,255,0.96) 0%,rgba(248,250,252,0.92) 50%,rgba(241,245,249,0.88) 100%);border-color:rgba(14,116,144,0.22);box-shadow:0 12px 32px -20px rgba(15,23,42,0.12)}body.science-page main .wrap{max-width:min(75rem,100%);margin-left:auto;margin-right:auto}@media (min-width:48rem){.page-hero h1{max-width:22ch}}.content-block{max-width:min(48rem,100%);width:100%;margin:0 auto 2.5rem;overflow-wrap:anywhere;word-wrap:break-word;min-width:0;box-sizing:border-box}.content-block h2{font-family:var(--font-display);font-size:var(--type-h2);font-weight:800;line-height:1.16;margin:2.25rem 0 0.75rem;letter-spacing:-0.025em}.content-block h3{font-family:var(--font-display);font-size:var(--type-h3);font-weight:700;line-height:1.28;margin:1.75rem 0 0.5rem;letter-spacing:-0.02em}.content-block h4{font-family:var(--font-display);font-size:clamp(1rem,.95rem + .22vw,1.12rem);font-weight:700;line-height:1.32;margin:1.35rem 0 .4rem;color:var(--accent-2);letter-spacing:-0.01em}.content-block p,.content-block li{color:var(--muted);margin:0 0 1rem;line-height:var(--prose-line-height);letter-spacing:0.01em}.content-block ul{padding-left:1.25rem}.disclaimer{font-size:0.875rem;color:var(--muted);border-left:3px solid var(--border);padding:0.75rem 0 0.75rem 1rem;margin:1.5rem 0 2rem;line-height:1.6}.content-next{margin-top:2.75rem;padding-top:2rem;border-top:1px solid rgba(45,212,191,0.15);display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.content-next p{margin:0;max-width:36rem;font-size:0.9375rem;color:var(--muted);line-height:1.55}.content-next .btn-row{display:flex;flex-wrap:wrap;gap:0.65rem 0.75rem;justify-content:center}@media (max-width:29.99rem){.content-next .btn{width:100%;max-width:20rem;justify-content:center}}.compare-matrix-wrap{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:min(76rem,100%);margin:clamp(1.25rem,3vw,1.75rem) auto clamp(2rem,4vw,2.75rem);box-sizing:border-box}.compare-matrix-wrap--premium{position:relative}.compare-matrix__lead{width:100%;text-align:center;font-weight:600;color:var(--text);margin:0 0 1.1rem;padding:0 0.35rem;font-size:clamp(0.9rem,0.84rem + 0.22vw,1.02rem);line-height:1.5;letter-spacing:-0.01em}.compare-matrix{width:100%;max-width:100%;min-width:0;display:flex;flex-direction:column;gap:0.85rem;font-family:var(--font-sans);font-size:clamp(0.875rem,0.82rem + 0.16vw,0.9375rem);line-height:1.55}.compare-matrix--premium{--compare-grid:minmax(7.5rem,1.05fr) repeat(4,minmax(0,1fr))}.compare-matrix__head{display:none}.compare-matrix__row{display:grid;gap:0.55rem;padding:1.1rem 1.05rem;border-radius:calc(var(--radius) + 0.12rem);border:1px solid rgba(45,212,191,0.18);background:linear-gradient(165deg,rgba(15,23,42,0.88),rgba(15,23,42,0.62));box-shadow:0 14px 36px -22px rgba(0,0,0,0.5);width:100%;max-width:100%;box-sizing:border-box}.compare-matrix__dim{font-family:var(--font-display);font-weight:700;color:var(--text);text-align:center;padding-bottom:0.55rem;margin-bottom:0.25rem;border-bottom:1px solid rgba(45,212,191,0.16);font-size:clamp(0.9rem,0.85rem + 0.18vw,1rem);letter-spacing:-0.02em}.compare-matrix__cell{text-align:center;color:var(--muted);padding:0.4rem 0.15rem;border-bottom:1px solid rgba(148,163,184,0.12);overflow-wrap:anywhere;word-break:break-word}.compare-matrix__cell:last-child{border-bottom:none}.compare-matrix__cell::before{content:attr(data-label);display:block;font-size:0.625rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--accent-2);margin-bottom:0.3rem}@media (min-width:48rem) and (max-width:71.99rem){.compare-matrix-wrap--premium{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding-bottom:0.35rem;margin-left:0;margin-right:0}.compare-matrix--premium{min-width:56rem}}@media (min-width:48rem){.compare-matrix--premium{gap:0;border:1px solid rgba(45,212,191,0.2);border-radius:calc(var(--radius) + 0.15rem);overflow:hidden;box-shadow:0 16px 44px -24px rgba(0,0,0,0.55),inset 0 1px 0 rgba(255,255,255,0.04);background:rgba(3,7,18,0.35)}.compare-matrix__head{display:grid;grid-template-columns:var(--compare-grid);gap:0;align-items:stretch;padding:0;background:linear-gradient(180deg,rgba(15,23,42,0.95),rgba(15,23,42,0.78));border-bottom:1px solid rgba(45,212,191,0.28);font-weight:700;color:var(--text);text-align:center;font-size:clamp(0.72rem,0.68rem + 0.18vw,0.82rem);letter-spacing:0.06em;text-transform:uppercase}.compare-matrix__head span{padding:0.75rem 0.4rem;min-width:0;overflow-wrap:anywhere;border-right:1px solid rgba(148,163,184,0.12);display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.35}.compare-matrix__head span:last-child{border-right:none}.compare-matrix__head span:nth-child(2){color:var(--accent-2);background:linear-gradient(180deg,rgba(45,212,191,0.12),transparent)}.compare-matrix__row{display:grid;grid-template-columns:var(--compare-grid);gap:0;align-items:stretch;padding:0;border:none;border-radius:0;border-top:1px solid rgba(148,163,184,0.1);background:rgba(15,23,42,0.28);box-shadow:none}.compare-matrix--premium>.compare-matrix__row:nth-child(2){border-top:none}.compare-matrix--premium>.compare-matrix__row:nth-child(2n + 2){background:rgba(15,23,42,0.32)}.compare-matrix--premium>.compare-matrix__row:nth-child(2n + 3){background:rgba(15,23,42,0.48)}.compare-matrix__dim{min-width:0;border:none;border-right:1px solid rgba(148,163,184,0.1);margin:0;padding:0.65rem 0.45rem;text-align:center;font-size:clamp(0.78rem,0.72rem + 0.18vw,0.88rem);font-weight:700;display:flex;align-items:center;justify-content:center;text-transform:none;letter-spacing:-0.015em}.compare-matrix__cell{min-width:0;border:none;border-right:1px solid rgba(148,163,184,0.08);border-bottom:none;padding:0.65rem 0.45rem;color:var(--muted);font-size:clamp(0.76rem,0.7rem + 0.16vw,0.875rem);display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.45}.compare-matrix__cell:last-child{border-right:none}.compare-matrix__row>.compare-matrix__cell:nth-child(2){color:var(--text);font-weight:500;background:linear-gradient(90deg,rgba(45,212,191,0.1),rgba(45,212,191,0.02));box-shadow:inset 3px 0 0 rgba(45,212,191,0.55)}.compare-matrix__cell::before{display:none}@media (hover:hover) and (pointer:fine){.compare-matrix__row:hover{background:rgba(30,41,59,0.45)}.compare-matrix__row:hover>.compare-matrix__cell:nth-child(2){background:linear-gradient(90deg,rgba(45,212,191,0.16),rgba(45,212,191,0.04))}}}@media (min-width:48rem) and (prefers-reduced-motion:reduce){.compare-matrix__row:hover{background:inherit!important}.compare-matrix__row:hover>.compare-matrix__cell:nth-child(2){background:inherit!important;box-shadow:none!important}}.error-page h1{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.25rem);margin:0 0 1rem}.error-lead{color:var(--muted);max-width:min(100%,42rem);margin:0 0 1.5rem}.error-page__actions{display:flex;flex-wrap:wrap;gap:0.75rem;align-items:center;margin-top:0.5rem}.text-link{background:none;border:none;padding:0.35rem 0;margin:0;min-height:var(--touch-min);font:inherit;color:var(--text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:0.2em;cursor:pointer;display:inline-flex;align-items:center}@media (hover:hover) and (pointer:fine){.text-link:hover{color:var(--accent)}}.text-link:active:not(:disabled){color:var(--accent-2)}.text-link:disabled{opacity:0.45;cursor:not-allowed}.text-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:0.2rem}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text);box-shadow:none}@media (hover:hover) and (pointer:fine){.btn-outline:hover{border-color:var(--accent);color:var(--accent-2)}}.btn-outline:disabled{opacity:0.4;cursor:not-allowed}.disclosure{margin:0 0 0.75rem;border-radius:var(--radius);border:1px solid var(--border);background:rgba(15,23,42,0.45);overflow:hidden}.disclosure summary{cursor:pointer;list-style:none;padding:0.95rem 1.15rem;font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--text);display:flex;align-items:center;justify-content:space-between;gap:1rem;transition:background var(--transition-ui)}.disclosure summary::-webkit-details-marker{display:none}.disclosure summary::after{content:"";width:0.55rem;height:0.55rem;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(45deg);flex-shrink:0;margin-top:-0.2rem;opacity:0.85;transition:transform var(--transition-ui)}.disclosure[open] summary::after{transform:rotate(225deg);margin-top:0.15rem}@media (hover:hover) and (pointer:fine){.disclosure summary:hover{background:rgba(30,41,59,0.35)}}.disclosure summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.disclosure__body{padding:0 1.15rem 1rem;margin:0;font-size:0.9375rem;color:var(--muted);line-height:1.65;border-top:1px solid rgba(45,212,191,0.08)}.cc-banner{position:fixed;z-index:var(--z-cc-banner);left:0;right:0;bottom:0;padding:1rem max(1rem,var(--gutter)) calc(1rem + env(safe-area-inset-bottom,0px));padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px));border-top:1px solid var(--border);background:var(--surface-cc);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-elevated);transform:translateZ(0)}.cc-banner-inner{width:min(100%,var(--max));margin:0 auto;display:grid;gap:1rem}@media (min-width:56.25rem){.cc-banner-inner{grid-template-columns:1.2fr auto;align-items:center}}@media (max-width:29.99rem){.cc-banner-actions{flex-direction:column;align-items:stretch}.cc-banner-actions .btn{width:100%;justify-content:center}}.cc-banner-title{font-family:var(--font-display);font-weight:700;margin:0 0 0.35rem;font-size:1.05rem}.cc-banner-text p{margin:0;color:var(--muted);font-size:0.9375rem}.cc-banner-actions{display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:flex-end}.cc-backdrop{position:fixed;inset:0;z-index:var(--z-cc-modal-backdrop);background:var(--surface-backdrop);overscroll-behavior:none}.cc-backdrop[hidden],.cc-modal[hidden]{display:none!important;pointer-events:none!important}.cc-modal{position:fixed;z-index:var(--z-cc-modal);inset:0;display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));overscroll-behavior:contain;pointer-events:auto}.cc-modal-inner{position:relative;z-index:1;width:min(100%,32rem);max-height:min(90dvh,40rem);overflow:auto;-webkit-overflow-scrolling:touch;padding:calc(1.5rem + env(safe-area-inset-top,0px)) calc(1.5rem + env(safe-area-inset-right,0px)) calc(1.5rem + env(safe-area-inset-bottom,0px)) calc(1.5rem + env(safe-area-inset-left,0px));border-radius:calc(var(--radius) + 0.15rem);border:1px solid var(--border);background:var(--surface-modal);box-shadow:var(--shadow);pointer-events:auto}.cc-modal-title{font-family:var(--font-display);margin:0 0 0.5rem;font-size:1.35rem}.cc-modal-lead{margin:0 0 1rem;color:var(--muted);font-size:0.95rem}.cc-categories{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:0.75rem}.cc-cat{padding:0.9rem 1rem;border-radius:var(--radius);border:1px solid var(--border);background:rgba(30,41,59,0.35)}.cc-cat-head{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;margin-bottom:0.35rem}.cc-cat-name{font-weight:600}.cc-badge{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:0.15rem 0.5rem}.cc-switch-label{font-weight:600;cursor:pointer}.cc-cat-desc{margin:0;font-size:0.875rem;color:var(--muted)}.cc-toggle{width:1.25rem;height:1.25rem;flex-shrink:0;accent-color:var(--accent);padding:0.65rem;margin:-0.65rem;box-sizing:content-box}.cc-modal-actions{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:flex-end;margin-top:0.5rem}.cc-modal-actions .btn{position:relative;z-index:1}.cc-modal-foot{margin:0.75rem 0 0;font-size:0.875rem;color:var(--muted)}@media (prefers-reduced-motion:reduce){.cc-banner{transition:none}}@media (max-height:32rem) and (orientation:landscape){.hero{padding-top:clamp(1.25rem,4vw,2.5rem);padding-bottom:clamp(1.5rem,5vw,3rem)}.hero-visual{min-height:clamp(160px,38vh,240px)}}@media (max-height:32rem) and (orientation:landscape) and (max-width:47.99rem){#site-nav.nav{max-height:min(78dvh,calc(100dvh - var(--header-h) - env(safe-area-inset-bottom,0px)));max-height:min(78vh,calc(100vh - var(--header-h) - env(safe-area-inset-bottom,0px)))}}@media (max-width:29.99rem){body{font-size:clamp(0.98rem,0.94rem + 0.22vw,1.0625rem)}.site-header .wrap{padding:0.85rem 0;gap:0.85rem}.site-header .logo--brand .logo-img{height:112px;max-height:min(112px,26vw)}.hero h1{font-size:clamp(2.5rem,7vw + 1rem,4.25rem)}}@media (min-width:100rem){.hero-lead{max-width:min(38rem,54ch)}.section-head .section-intro,.section-head>p:not(.section-label){max-width:min(var(--prose),52ch)}}@media (prefers-color-scheme:light){html:not([data-theme]){--bg-deep:#f8fafc;--bg-panel:rgba(255,255,255,0.88);--bg-glass:rgba(255,255,255,0.72);--border:rgba(14,116,144,0.24);--accent:#0e7490;--accent-2:#0284c7;--text:#0f172a;--muted:#1e293b;--shadow:0 22px 45px -12px rgba(15,23,42,0.1);--gradient-hero:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(14,165,233,0.2),transparent 55%),radial-gradient(ellipse 80% 50% at 100% 50%,rgba(14,165,233,0.08),transparent),linear-gradient(180deg,#f8fafc 0%,#e2e8f0 45%,#f1f5f9 100%);--surface-header:rgba(248,250,252,0.92);--surface-header-solid:rgba(248,250,252,0.99);--surface-nav:rgba(248,250,252,0.99);--surface-input:rgba(255,255,255,0.98);--surface-cc:rgba(248,250,252,0.98);--surface-backdrop:rgba(15,23,42,0.38);--surface-modal:rgba(255,255,255,0.99);--shadow-elevated:0 -14px 32px rgba(15,23,42,0.1);--btn-primary-glow:0 4px 18px rgba(14,116,144,0.26);--stat-tile-bg:rgba(255,255,255,0.92);--stat-tile-border:rgba(14,116,144,0.22);--hero-glow-mid:rgba(14,165,233,0.2);--caption-muted:rgba(30,41,59,0.9);--dna-strand-a:rgba(14,165,233,0.048);--dna-strand-b:rgba(124,58,237,0.036);--dna-glow-dot:rgba(14,116,144,0.026);--dna-flow-duration:64s;--home-tab-hover-bg:rgba(255,255,255,0.94);--home-tab-hover-border:rgba(14,116,144,0.32);--nav-backdrop-scrim:rgba(15,23,42,0.46)}html:not([data-theme]){color-scheme:light}html:not([data-theme]) a,html:not([data-theme]) button,html:not([data-theme]) .nav-toggle,html:not([data-theme]) .text-link,html:not([data-theme]) .cc-banner button{-webkit-tap-highlight-color:rgba(14,116,144,0.14)}html:not([data-theme]) .section--band{background:rgba(241,245,249,0.92);border-block-color:rgba(14,116,144,0.16)}html:not([data-theme]) .card-icon{background:rgba(14,165,233,0.12)}html:not([data-theme]) .cta-band{background:linear-gradient(135deg,rgba(255,255,255,0.98),rgba(241,245,249,0.94))}html:not([data-theme]) .contact-panel{background:rgba(255,255,255,0.94)}html:not([data-theme]) .contact-route{background:rgba(255,255,255,0.93)}html:not([data-theme]) .trust-list li{background:rgba(255,255,255,0.92)}html:not([data-theme]) .compare-matrix__head{background:rgba(241,245,249,0.98)}html:not([data-theme]) .compare-matrix--premium>.compare-matrix__row:nth-child(2n + 2){background:rgba(248,250,252,0.96)}html:not([data-theme]) .compare-matrix--premium>.compare-matrix__row:nth-child(2n + 3){background:rgba(241,245,249,0.92)}html:not([data-theme]) .disclosure{background:rgba(255,255,255,0.94)}html:not([data-theme]) .cc-cat{background:rgba(241,245,249,0.75)}@media (hover:hover) and (pointer:fine){html:not([data-theme]) .contact-route:hover{background:rgba(241,245,249,0.98)}}html:not([data-theme]) .home-explore{--home-explore-bg:linear-gradient(180deg,rgba(248,250,252,0.65) 0%,rgba(241,245,249,0.2) 100%);border-top-color:rgba(14,116,144,0.14)}html:not([data-theme]) .home-tabs__bar-wrap{background:linear-gradient(180deg,rgba(248,250,252,0.98),rgba(241,245,249,0.96));border-bottom-color:rgba(14,116,144,0.18);box-shadow:0 10px 28px -20px rgba(15,23,42,0.12)}html:not([data-theme]) .nav-dropdown__label,html:not([data-theme]) .nav-dropdown__label span{color:#475569}html:not([data-theme]) .nav-dropdown-toggle{color:var(--muted)}html:not([data-theme]) .home-tab:not([aria-selected="true"]){background:rgba(255,255,255,0.82);border-color:rgba(14,116,144,0.22)}html:not([data-theme]) .topic-block--band{background:rgba(241,245,249,0.85);border-color:rgba(14,116,144,0.14)}html:not([data-theme]) .section-label{color:#0f766e}html:not([data-theme]) .card{border-color:rgba(14,116,144,0.22);background:linear-gradient(165deg,rgba(255,255,255,0.96),rgba(248,250,252,0.88))}html:not([data-theme]) .card-icon{background:rgba(14,116,144,0.14);color:#0e7490}}html[data-theme="light"]{--bg-deep:#f8fafc;--bg-panel:rgba(255,255,255,0.88);--bg-glass:rgba(255,255,255,0.72);--border:rgba(14,116,144,0.28);--accent:#0e7490;--accent-2:#0284c7;--text:#0f172a;--muted:#1e293b;--shadow:0 22px 45px -12px rgba(15,23,42,0.1);--gradient-hero:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(14,165,233,0.2),transparent 55%),radial-gradient(ellipse 80% 50% at 100% 50%,rgba(14,165,233,0.08),transparent),linear-gradient(180deg,#f8fafc 0%,#e2e8f0 45%,#f1f5f9 100%);--surface-header:rgba(248,250,252,0.92);--surface-header-solid:rgba(248,250,252,0.99);--surface-nav:rgba(248,250,252,0.99);--surface-input:rgba(255,255,255,0.98);--surface-cc:rgba(248,250,252,0.98);--surface-backdrop:rgba(15,23,42,0.38);--surface-modal:rgba(255,255,255,0.99);--shadow-elevated:0 -14px 32px rgba(15,23,42,0.1);--btn-primary-glow:0 4px 18px rgba(14,116,144,0.26);--stat-tile-bg:rgba(255,255,255,0.92);--stat-tile-border:rgba(14,116,144,0.22);--hero-glow-mid:rgba(14,165,233,0.2);--caption-muted:rgba(30,41,59,0.9);--dna-strand-a:rgba(14,165,233,0.048);--dna-strand-b:rgba(124,58,237,0.036);--dna-glow-dot:rgba(14,116,144,0.026);--dna-flow-duration:64s;--home-tab-hover-bg:rgba(255,255,255,0.94);--home-tab-hover-border:rgba(14,116,144,0.32);--nav-backdrop-scrim:rgba(15,23,42,0.46);color-scheme:light}html[data-theme="light"] a,html[data-theme="light"] button,html[data-theme="light"] .nav-toggle,html[data-theme="light"] .text-link,html[data-theme="light"] .cc-banner button{-webkit-tap-highlight-color:rgba(14,116,144,0.14)}html[data-theme="light"] .section--band{background:rgba(241,245,249,0.92);border-block-color:rgba(14,116,144,0.16)}html[data-theme="light"] .cta-band{background:linear-gradient(135deg,rgba(255,255,255,0.98),rgba(241,245,249,0.94))}html[data-theme="light"] .contact-panel{background:rgba(255,255,255,0.94)}html[data-theme="light"] .contact-route{background:rgba(255,255,255,0.93)}html[data-theme="light"] .trust-list li{background:rgba(255,255,255,0.92)}html[data-theme="light"] .compare-matrix__head{background:rgba(241,245,249,0.98)}html[data-theme="light"] .compare-matrix--premium>.compare-matrix__row:nth-child(2n + 2){background:rgba(248,250,252,0.96)}html[data-theme="light"] .compare-matrix--premium>.compare-matrix__row:nth-child(2n + 3){background:rgba(241,245,249,0.92)}html[data-theme="light"] .disclosure{background:rgba(255,255,255,0.94)}html[data-theme="light"] .cc-cat{background:rgba(241,245,249,0.75)}@media (hover:hover) and (pointer:fine){html[data-theme="light"] .contact-route:hover{background:rgba(241,245,249,0.98)}}html[data-theme="light"] .home-explore{--home-explore-bg:linear-gradient(180deg,rgba(248,250,252,0.65) 0%,rgba(241,245,249,0.2) 100%);border-top-color:rgba(14,116,144,0.14)}html[data-theme="light"] .home-tabs__bar-wrap{background:linear-gradient(180deg,rgba(248,250,252,0.98),rgba(241,245,249,0.96));border-bottom-color:rgba(14,116,144,0.18);box-shadow:0 10px 28px -20px rgba(15,23,42,0.12)}html[data-theme="light"] .nav-dropdown__label,html[data-theme="light"] .nav-dropdown__label span{color:#475569}html[data-theme="light"] .nav-dropdown-toggle{color:var(--muted)}html[data-theme="light"] .home-tab:not([aria-selected="true"]){background:rgba(255,255,255,0.82);border-color:rgba(14,116,144,0.22)}html[data-theme="light"] .topic-block--band{background:rgba(241,245,249,0.85);border-color:rgba(14,116,144,0.14)}html[data-theme="light"] .home-tab[aria-selected="true"]{color:#0f172a}html[data-theme="light"] .section-label{color:#0f766e}html[data-theme="light"] .card{border-color:rgba(14,116,144,0.22);background:linear-gradient(165deg,rgba(255,255,255,0.96),rgba(248,250,252,0.88))}html[data-theme="light"] .card-icon{background:rgba(14,116,144,0.14);color:#0e7490}html[data-theme="dark"]{--bg-deep:#020617;--bg-panel:rgba(15,23,42,0.55);--bg-glass:rgba(30,41,59,0.45);--border:rgba(45,212,191,0.22);--accent:#38bdf8;--accent-2:#22d3ee;--text:#e2e8f0;--muted:#94a3b8;--gradient-hero:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(45,212,191,0.35),transparent 55%),radial-gradient(ellipse 80% 50% at 100% 50%,rgba(34,211,238,0.12),transparent),linear-gradient(180deg,#030712 0%,#0f172a 40%,#030712 100%);--surface-header:rgba(3,7,18,0.75);--surface-header-solid:rgba(3,7,18,0.97);--surface-nav:rgba(3,7,18,0.97);--surface-input:rgba(3,7,18,0.5);--surface-cc:rgba(3,7,18,0.92);--surface-backdrop:rgba(2,6,23,0.72);--surface-modal:rgba(15,23,42,0.96);--shadow-elevated:0 -20px 40px rgba(0,0,0,0.45);--btn-primary-glow:0 4px 20px rgba(45,212,191,0.35);--stat-tile-bg:rgba(15,23,42,0.6);--stat-tile-border:rgba(45,212,191,0.15);--hero-glow-mid:rgba(45,212,191,0.15);--caption-muted:rgba(148,163,184,0.92);--home-tab-hover-bg:rgba(30,41,59,0.65);--home-tab-hover-border:rgba(45,212,191,0.45);--home-explore-bg:linear-gradient(180deg,rgba(3,7,18,0.35) 0%,rgba(3,7,18,0.08) 100%);--dna-strand-a:rgba(45,212,191,0.065);--dna-strand-b:rgba(139,92,246,0.048);--dna-glow-dot:rgba(56,189,248,0.035);--dna-flow-duration:58s;color-scheme:dark}html[data-theme="dark"] a,html[data-theme="dark"] button,html[data-theme="dark"] .nav-toggle,html[data-theme="dark"] .text-link,html[data-theme="dark"] .cc-banner button{-webkit-tap-highlight-color:rgba(45,212,191,0.18)}html[data-theme="dark"] .section--band{border-block:1px solid rgba(45,212,191,0.12);background:rgba(15,23,42,0.35)}html[data-theme="dark"] .card-icon{background:rgba(45,212,191,0.15)}html[data-theme="dark"] .cta-band{background:linear-gradient(135deg,rgba(15,23,42,0.92),rgba(30,41,59,0.72))}html[data-theme="dark"] .contact-panel{background:var(--bg-panel)}html[data-theme="dark"] .contact-route{background:rgba(15,23,42,0.4)}html[data-theme="dark"] .trust-list li{background:var(--bg-glass)}html[data-theme="dark"] .compare-matrix__head{background:rgba(15,23,42,0.75)}html[data-theme="dark"] .compare-matrix--premium>.compare-matrix__row:nth-child(2n + 2){background:rgba(15,23,42,0.36)}html[data-theme="dark"] .compare-matrix--premium>.compare-matrix__row:nth-child(2n + 3){background:rgba(15,23,42,0.52)}html[data-theme="dark"] .disclosure{background:rgba(15,23,42,0.55)}html[data-theme="dark"] .cc-cat{background:rgba(30,41,59,0.55)}@media (hover:hover) and (pointer:fine){html[data-theme="dark"] .contact-route:hover{border-color:rgba(45,212,191,0.45);background:rgba(30,41,59,0.35)}}html[data-theme="dark"] .home-explore{--home-explore-bg:linear-gradient(180deg,rgba(3,7,18,0.35) 0%,rgba(3,7,18,0.08) 100%)}html[data-theme="dark"] .home-tab:not([aria-selected="true"]){background:rgba(15,23,42,0.45);border-color:rgba(45,212,191,0.2)}html[data-theme="dark"] .topic-block--band{background:rgba(15,23,42,0.4);border-color:rgba(45,212,191,0.12)}.footer-policies .footer-admin-link{font-size:0.92em;opacity:0.88}.values-list{margin:0;padding-left:1.15rem}.values-list li + li{margin-top:0.65rem}.admin-dock{position:fixed;right:0.75rem;bottom:0.75rem;z-index:99998;max-width:min(22rem,calc(100vw - 1.5rem))}.admin-dock__inner{display:flex;flex-wrap:wrap;align-items:center;gap:0.4rem;padding:0.55rem 0.65rem;border-radius:10px;background:rgba(15,23,42,0.92);border:1px solid rgba(148,163,184,0.35);box-shadow:0 10px 36px rgba(0,0,0,0.35)}.admin-dock__label{font-size:0.72rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:#94a3b8;margin-right:0.25rem}.admin-gear-icon{font-size:1.1rem;line-height:1;margin-right:0.15rem;filter:drop-shadow(0 0 6px rgba(45,212,191,0.45))}.btn-sm{font-size:0.8rem!important;padding:0.35rem 0.55rem!important}html.tiragena-live-edit [contenteditable="true"]{outline:1px dashed rgba(45,212,191,0.55)}.tiragena-admin-ui-root{position:fixed;right:0.75rem;bottom:0.75rem;z-index:99997;display:flex;flex-direction:column;align-items:flex-end;gap:0.5rem;pointer-events:none}.tiragena-gear-fab{pointer-events:auto;width:3.25rem;height:3.25rem;border-radius:999px;border:1px solid rgba(148,163,184,0.45);background:rgba(15,23,42,0.95);color:#5eead4;font-size:1.35rem;cursor:pointer;box-shadow:0 10px 32px rgba(0,0,0,0.45)}.tiragena-dev-dashboard{pointer-events:auto;width:min(22rem,calc(100vw - 2rem));max-height:min(70vh,28rem);overflow:auto;border-radius:12px;border:1px solid rgba(148,163,184,0.35);background:rgba(3,7,18,0.96);color:#e2e8f0;font-size:0.8rem;box-shadow:0 16px 48px rgba(0,0,0,0.5)}.tiragena-dev-dashboard__head{display:flex;justify-content:space-between;align-items:center;padding:0.6rem 0.75rem;border-bottom:1px solid rgba(148,163,184,0.25)}.tiragena-dev-dashboard__close{background:none;border:none;color:#94a3b8;font-size:1.35rem;line-height:1;cursor:pointer}.tiragena-dev-dashboard__perf{margin:0;padding:0.65rem 0.75rem;white-space:pre-wrap;word-break:break-word;font-size:0.68rem;line-height:1.35;color:#cbd5e1;max-height:12rem;overflow:auto}.tiragena-dev-dashboard__actions{display:flex;flex-wrap:wrap;gap:0.35rem;padding:0.5rem 0.75rem 0.65rem;border-top:1px solid rgba(148,163,184,0.2)}
/* === Site refinement v2026: stronger header nav, footer balance === */
@media (min-width:48rem){
  .site-header .wrap{min-height:calc(var(--header-inner-h) + 0.35rem);}
  .nav-list{gap:0.2rem 1.05rem;}
  .nav-list a{font-size:1.0625rem;font-weight:700;letter-spacing:0.04em;padding:0.55rem 0.2rem;}
  .nav-dropdown-toggle{font-size:1.0625rem;padding:0.45rem 0.15rem;}
}
.site-header{box-shadow:0 4px 28px rgba(0,0,0,0.22);}
.site-footer{padding-top:clamp(2.75rem,5vw,3.5rem);padding-bottom:clamp(2.75rem,5vw,3.5rem);background:linear-gradient(180deg,rgba(2,6,23,0.55) 0%,rgba(2,6,23,0.15) 100%);}
.footer-grid{row-gap:2.25rem;}
.footer-col li{margin-bottom:0.55rem;}
.footer-bottom{align-items:flex-start;gap:1rem 2rem;}
@media (max-width:39.99rem){
  .footer-bottom{flex-direction:column;align-items:flex-start;}
  .footer-grid{grid-template-columns:1fr;gap:2rem;}
}
@media (max-width:47.99rem){
  #site-nav.nav.is-open{padding-bottom:calc(1.35rem + env(safe-area-inset-bottom,0px));}
  .nav .nav-list a{padding:0.85rem 0.5rem;min-height:3rem;font-size:1.08rem;}
}
.breadcrumb{margin:0;padding:0.65rem 0 0;font-size:0.8125rem;color:var(--muted);}
.breadcrumb__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0.35rem 0.5rem;}
.breadcrumb__list li{display:inline-flex;align-items:center;gap:0.35rem;}
.breadcrumb__list li:not(:last-child)::after{content:"/";opacity:0.45;margin-left:0.35rem;}
.breadcrumb a{color:var(--muted);text-decoration:none;}
@media (hover:hover) and (pointer:fine){.breadcrumb a:hover{color:var(--accent);}}
.breadcrumb [aria-current="page"]{color:var(--text);font-weight:600;}

/* Premium first-load splash (brand-safe, logo-only) */
.tir-splash {
  position: fixed;
  inset: 0;
  z-index: 100650;
  display: grid;
  place-items: center;
  padding:
    max(1.1rem, env(safe-area-inset-top))
    max(1rem, env(safe-area-inset-right))
    max(1.1rem, env(safe-area-inset-bottom))
    max(1rem, env(safe-area-inset-left));
  background:
    radial-gradient(ellipse 120% 80% at 50% -10%, rgba(45, 212, 191, 0.16), transparent 58%),
    linear-gradient(180deg, rgba(2, 6, 23, 0.98), rgba(2, 6, 23, 0.94));
  opacity: 0;
  pointer-events: none;
  transition: opacity 420ms cubic-bezier(0.16, 1, 0.3, 1);
}
.tir-splash.is-active {
  opacity: 1;
}
.tir-splash.is-exit {
  opacity: 0;
}
.tir-splash__inner {
  display: grid;
  justify-items: center;
  gap: 0.9rem;
}
.tir-splash__logo-wrap {
  position: relative;
  width: clamp(7.25rem, 21vw, 12rem);
  height: clamp(7.25rem, 21vw, 12rem);
  display: grid;
  place-items: center;
  border-radius: 1.1rem;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.015));
  border: 1px solid rgba(45, 212, 191, 0.22);
  box-shadow:
    0 20px 48px -24px rgba(0, 0, 0, 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  transform: translate3d(0, 16px, 0) scale(0.92);
  opacity: 0;
  transition:
    transform 760ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity 620ms cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
}
.tir-splash.is-active .tir-splash__logo-wrap {
  transform: translate3d(0, 0, 0) scale(1);
  opacity: 1;
}
.tir-splash__logo-wrap::after {
  content: "";
  position: absolute;
  inset: -45% -70%;
  background: linear-gradient(115deg, transparent 30%, rgba(255, 255, 255, 0.24) 50%, transparent 70%);
  transform: translateX(-78%);
  opacity: 0;
}
.tir-splash.is-active .tir-splash__logo-wrap::after {
  opacity: 1;
  animation: tirSplashSweep 860ms 340ms cubic-bezier(0.33, 1, 0.68, 1) both;
}
.tir-splash__logo {
  width: 72%;
  height: 72%;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 0 12px rgba(45, 212, 191, 0.22));
}
.tir-splash__bar {
  width: min(14rem, 62vw);
  height: 2px;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.18);
  overflow: hidden;
}
.tir-splash__bar::before {
  content: "";
  display: block;
  height: 100%;
  width: 36%;
  background: linear-gradient(90deg, var(--accent), var(--accent-2));
  transform: translateX(-115%);
}
.tir-splash.is-active .tir-splash__bar::before {
  animation: tirSplashBar 1100ms 120ms cubic-bezier(0.22, 1, 0.36, 1) both;
}
@keyframes tirSplashSweep {
  from { transform: translateX(-78%); }
  to { transform: translateX(66%); }
}
@keyframes tirSplashBar {
  from { transform: translateX(-115%); }
  to { transform: translateX(310%); }
}
@media (max-width: 47.99rem) {
  .tir-splash__logo-wrap {
    width: clamp(6.15rem, 26vw, 8.4rem);
    height: clamp(6.15rem, 26vw, 8.4rem);
    border-radius: 0.95rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tir-splash,
  .tir-splash__logo-wrap {
    transition: opacity 220ms ease !important;
  }
  .tir-splash__logo-wrap {
    transform: none !important;
  }
  .tir-splash__logo-wrap::after,
  .tir-splash__bar::before {
    animation: none !important;
  }
}

/* V6: fixed header + global rhythm — NEVER use html/body height:100% here: it pins the
   layout box to the viewport and breaks window scrolling (documentElement.scrollHeight ≈ innerHeight
   while body content is tall → scrollY stuck at 0 on mobile Safari/Chrome). */
/* Defaults only — no !important: tir-menu.js sets --header-height/--nav-height from measured #tir-header-root */
:root { --header-height: 75px; --nav-height: 75px; }
/* Box model only — never global margin/padding !important (breaks components + scroll) */
*, *::before, *::after {
  box-sizing: border-box;
}
html {
  width: 100%;
  min-height: 100%;
  min-height: 100dvh;
  overflow-x: hidden;
  overflow-y: auto;
  scroll-behavior: smooth;
  scrollbar-gutter: auto;
}
body {
  width: 100%;
  min-height: 100%;
  min-height: 100dvh;
  padding-top: var(--header-height);
  overflow-x: clip;
  overflow-y: visible;
}
/* #tir-header-root is driven by css/tir-menu.css (natural height + JS --header-height sync).
   Applying this fixed height + safe-area padding here crushed the inner row on phones. */
header:not(#tir-header-root) {
  height: var(--header-height) !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 10000 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(25px) !important;
  -webkit-backdrop-filter: blur(25px) saturate(180%) !important;
  background: rgba(0, 0, 0, 0.75) !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
  padding-top: max(env(safe-area-inset-top), 10px) !important;
  padding-bottom: env(safe-area-inset-bottom) !important;
}
@media (max-width: 63.99rem) {
  :root { --header-height: 65px; --nav-height: 65px; }
}

/* V8 bilingual + anti-flicker stabilization */
html {
  background-color: var(--bg-deep) !important;
}
body,
body * {
  transition: background-color 0.4s ease, color 0.4s ease;
}
body {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  background-color: var(--bg-deep);
}
/* perspective removed from body — it can create a secondary scroll/sticky coordinate space in some engines */
html[data-theme="light"] {
  background-color: #f8fafc !important;
}
html[data-theme="light"] body {
  background-color: #f8fafc !important;
}
html[data-theme="dark"] {
  background-color: #020617 !important;
}
html[data-theme="dark"] body {
  background-color: #020617 !important;
}

/* Premium cohesion pass: unified rhythm, hierarchy, and interaction quality */
:root {
  --ui-max-readable: 68ch;
  --ui-section-gap: clamp(2.5rem, 5vw, 4.25rem);
  --ui-card-radius: 1rem;
  --ui-card-border: color-mix(in srgb, var(--border) 78%, transparent);
  --ui-card-bg: color-mix(in srgb, var(--bg-panel) 88%, transparent);
}

main > section,
.section,
.ix-section {
  padding-top: var(--ui-section-gap);
  padding-bottom: var(--ui-section-gap);
}

.section-head h2,
.ix-section h2,
.content-block h2 {
  letter-spacing: -0.028em;
  line-height: 1.12;
}

.ix-section p,
.content-block p,
.legal-doc p,
.legal-doc li {
  max-width: var(--ui-max-readable);
}

.ix-section ul:not(.ix-value-grid),
.content-block ul,
.content-block ol {
  max-width: var(--ui-max-readable);
}

.ix-value-card,
.ix-phase-card,
.card {
  border-radius: var(--ui-card-radius);
  border-color: var(--ui-card-border);
  background: var(--ui-card-bg);
}

.btn,
.ix-btn {
  letter-spacing: 0.01em;
  font-weight: 600;
}

.footer-grid {
  row-gap: clamp(1.25rem, 2.2vw, 2rem);
}

@media (max-width: 47.99rem) {
  .ix-section h2,
  .content-block h2 {
    font-size: clamp(1.4rem, 6vw, 1.9rem);
  }
}

/* Mobile rhythm recovery: unified spacing + readability */
@media (max-width: 47.99rem) {
  :root {
    --ui-mobile-section-y: 1.6rem;
    --ui-mobile-stack-gap: 0.75rem;
    --ui-mobile-text-gap: 0.7rem;
    --ui-mobile-card-pad: 1rem;
  }

  .wrap {
    padding-inline: clamp(0.85rem, 4vw, 1.1rem);
  }

  main > section,
  .section,
  .ix-section {
    padding-top: var(--ui-mobile-section-y) !important;
    padding-bottom: var(--ui-mobile-section-y) !important;
  }

  .section-head {
    margin-bottom: 1rem !important;
  }

  .section-head h2,
  .ix-section h2,
  .content-block h2 {
    margin-bottom: 0.55rem !important;
    line-height: 1.2;
  }

  .ix-section h3,
  .content-block h3,
  .card h3,
  .card h4.card-title {
    margin-top: 0.95rem !important;
    margin-bottom: 0.4rem !important;
    line-height: 1.28;
  }

  .ix-section p,
  .content-block p,
  .legal-doc p,
  .card p {
    margin-bottom: var(--ui-mobile-text-gap) !important;
    line-height: 1.62;
  }

  .ix-section > * + *,
  .content-block > * + *,
  .legal-doc > * + * {
    margin-top: 0.75rem !important;
  }

  .ix-section > h2 + *,
  .content-block > h2 + *,
  .legal-doc > h1 + *,
  .legal-doc > h2 + * {
    margin-top: 0.55rem !important;
  }

  .ix-section > h3 + *,
  .content-block > h3 + * {
    margin-top: 0.45rem !important;
  }

  .ix-section ul,
  .content-block ul,
  .legal-doc ul {
    margin-bottom: var(--ui-mobile-text-gap) !important;
    padding-left: 1rem !important;
  }

  .ix-section li,
  .content-block li,
  .legal-doc li {
    margin-bottom: 0.35rem !important;
    line-height: 1.58;
  }

  .card,
  .ix-value-card,
  .ix-phase-card,
  .contact-panel {
    padding: var(--ui-mobile-card-pad);
  }

  .card-grid,
  .ix-phase-grid,
  .ix-value-grid,
  .contact-grid {
    gap: var(--ui-mobile-stack-gap);
  }

  .hero-actions,
  .ix-cta-row,
  .section-cta--split,
  .cta-band__actions {
    gap: 0.6rem;
  }

  .hero-actions .btn,
  .ix-cta-row .btn,
  .ix-cta-row .ix-btn,
  .section-cta .btn {
    width: 100%;
    justify-content: center;
  }

  .site-footer {
    margin-top: 1.6rem;
    padding-top: 1.8rem;
    padding-bottom: calc(1.8rem + env(safe-area-inset-bottom, 0px));
  }

  .footer-grid {
    gap: 1rem;
  }

  .footer-col h4 {
    margin-bottom: 0.45rem;
  }

  .footer-col li {
    margin-bottom: 0.35rem;
  }

  .footer-bar,
  .footer-bottom {
    margin-top: 1rem;
    padding-top: 0.8rem;
    gap: 0.5rem;
  }

  html,
  body,
  main,
  section,
  .wrap,
  .card,
  .ix-section,
  .content-block {
    max-width: 100%;
    overflow-x: clip;
  }
}

/* Tablet overflow fix: keep science comparison matrix inside viewport */
@media (min-width: 48rem) and (max-width: 71.99rem) {
  .compare-matrix-wrap--premium {
    overflow-x: hidden;
    padding-bottom: 0;
  }

  .compare-matrix--premium {
    min-width: 100%;
    --compare-grid: minmax(6.4rem, 0.9fr) repeat(4, minmax(0, 1fr));
  }

  .compare-matrix__head span,
  .compare-matrix__cell,
  .compare-matrix__dim {
    padding-inline: 0.35rem;
    font-size: clamp(0.72rem, 0.66rem + 0.12vw, 0.82rem);
  }
}

/* Runtime performance: skip offscreen long-form layout/paint work */
.content-block,
.legal-doc,
.compare-matrix-wrap {
  content-visibility: auto;
  contain-intrinsic-size: 900px;
}

/* Mobile spacing reset: single scale only (4/8/12/16/20/24/32) */
@media (max-width: 47.99rem) {
  :root {
    --sp-4: 4px;
    --sp-8: 8px;
    --sp-12: 12px;
    --sp-16: 16px;
    --sp-20: 20px;
    --sp-24: 24px;
    --sp-32: 32px;
  }

  main > section,
  .section,
  .ix-section,
  .content-block,
  .legal-doc {
    padding-top: var(--sp-24) !important;
    padding-bottom: var(--sp-24) !important;
  }

  .section-head {
    margin-bottom: var(--sp-16) !important;
  }

  main h1 {
    margin-bottom: var(--sp-16) !important;
  }

  main h2 {
    margin-top: 0 !important;
    margin-bottom: var(--sp-12) !important;
    line-height: 1.2;
  }

  .section-head h2,
  .ix-section h2,
  .content-block h2 {
    margin-top: 0 !important;
    margin-bottom: var(--sp-12) !important;
  }

  main h3,
  main h4 {
    margin-top: var(--sp-16) !important;
    margin-bottom: var(--sp-8) !important;
    line-height: 1.28;
  }

  .ix-section h3,
  .content-block h3,
  .card h3,
  .card h4.card-title {
    margin-top: var(--sp-16) !important;
    margin-bottom: var(--sp-8) !important;
  }

  main p {
    margin-top: 0 !important;
    margin-bottom: var(--sp-12) !important;
    line-height: 1.62;
  }

  .ix-section p,
  .content-block p,
  .legal-doc p,
  .card p {
    margin-top: 0 !important;
    margin-bottom: var(--sp-12) !important;
  }

  .ix-section > h2 + *,
  .content-block > h2 + *,
  .legal-doc > h1 + *,
  .legal-doc > h2 + * {
    margin-top: var(--sp-8) !important;
  }

  .ix-section > h3 + *,
  .content-block > h3 + * {
    margin-top: var(--sp-8) !important;
  }

  main ul,
  main ol {
    margin-top: 0 !important;
    margin-bottom: var(--sp-16) !important;
    padding-left: var(--sp-20) !important;
  }

  main li {
    margin-bottom: var(--sp-8) !important;
    line-height: 1.58;
  }

  .card,
  .ix-value-card,
  .ix-phase-card,
  .contact-panel,
  .disclosure,
  .science-values__item {
    padding: var(--sp-16) !important;
  }

  .card-grid,
  .ix-phase-grid,
  .ix-value-grid,
  .contact-grid,
  .science-values__grid {
    gap: var(--sp-16) !important;
  }

  .ix-value-grid > .ix-value-card,
  .ix-phase-grid > .ix-phase-card {
    margin-bottom: 0 !important;
  }

  .hero-actions,
  .ix-cta-row,
  .section-cta--split,
  .cta-band__actions {
    margin-top: var(--sp-16) !important;
    gap: var(--sp-12) !important;
  }

  .site-footer {
    margin-top: var(--sp-24) !important;
    padding-top: var(--sp-24) !important;
    padding-bottom: calc(var(--sp-24) + env(safe-area-inset-bottom, 0px)) !important;
  }

  .footer-grid {
    gap: var(--sp-16) !important;
  }

  .footer-col h4 {
    margin-bottom: var(--sp-8) !important;
  }

  .footer-col li {
    margin-bottom: var(--sp-8) !important;
  }

  .footer-bar,
  .footer-bottom {
    margin-top: var(--sp-16) !important;
    padding-top: var(--sp-12) !important;
    gap: var(--sp-8) !important;
  }
}

/* Performance guardrails: avoid global transition reset.
   Keep component-level transitions active for buttons, menu, and section reveal. */

html.theme-transition-lock body,
html.theme-transition-lock body * {
  transition: background-color 0.22s ease, color 0.22s ease !important;
}

@media (max-width: 63.99rem) {
  body::before,
  body::after {
    animation: none !important;
    transform: none !important;
  }
}

/* Typography system: unified hierarchy and readable rhythm */
:root {
  --type-h1: clamp(2rem, 1.6rem + 2.1vw, 3.25rem);
  --type-h2: clamp(1.45rem, 1.22rem + 1.2vw, 2.15rem);
  --type-h3: clamp(1.08rem, 0.98rem + 0.55vw, 1.3rem);
  --type-body: clamp(0.98rem, 0.95rem + 0.16vw, 1.06rem);
}

main h1 {
  font-size: var(--type-h1);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -0.025em;
}

main h2 {
  font-size: var(--type-h2);
  font-weight: 750;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

main h3,
main h4 {
  font-size: var(--type-h3);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

main p,
main li {
  font-size: var(--type-body);
  font-weight: 400;
  line-height: 1.65;
}

@media (max-width: 47.99rem) {
  :root {
    --type-h1: clamp(1.85rem, 1.45rem + 2.6vw, 2.35rem);
    --type-h2: clamp(1.35rem, 1.2rem + 1.25vw, 1.65rem);
    --type-h3: clamp(1.05rem, 0.98rem + 0.45vw, 1.18rem);
    --type-body: clamp(0.98rem, 0.94rem + 0.28vw, 1.04rem);
  }

  main p,
  main li {
    line-height: 1.62;
  }
}

/* Footer rebuild: clean grid + consistent rhythm */
.site-footer.footer--premium,
.site-footer {
  border-top: 1px solid color-mix(in srgb, var(--border) 82%, transparent);
  background: linear-gradient(180deg, color-mix(in srgb, var(--bg-deep) 86%, transparent), color-mix(in srgb, var(--bg-deep) 95%, transparent));
}

.site-footer .footer-grid,
.site-footer .footer-grid--premium {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
}

.site-footer .footer-col {
  min-width: 0;
}

.site-footer .footer-col h4 {
  margin: 0 0 8px !important;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

.site-footer .footer-col ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer .footer-col li {
  margin: 0 0 8px !important;
}

.site-footer .footer-desc {
  margin: 8px 0 0 !important;
  max-width: 34ch;
  line-height: 1.6;
  color: var(--muted);
}

.site-footer .footer-bar {
  margin-top: 20px !important;
  padding-top: 12px !important;
  border-top: 1px solid color-mix(in srgb, var(--border) 68%, transparent);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.site-footer .footer-bar > * {
  margin: 0 !important;
  min-width: 0;
}

.site-footer .footer-bar__copy {
  text-align: left;
}

.site-footer .footer-bar__domains {
  text-align: center;
}

.site-footer .footer-bar__dev {
  text-align: right;
}

/* Overflow hardening: never allow horizontal page scroll */
html,
body,
main,
section,
.wrap,
.content-block,
.legal-doc,
.card,
.ix-section,
.ix-value-card,
.ix-phase-card {
  max-width: 100%;
  min-width: 0;
}

main :where(h1, h2, h3, h4, p, li, a, span, strong, em, code) {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* CTA system: consistent sizing, spacing, and alignment */
:root {
  --cta-min-h: 48px;
  --cta-pad-y: 0.72rem;
  --cta-pad-x: 1.3rem;
  --cta-gap-x: 0.75rem;
  --cta-gap-y: 0.75rem;
  --cta-block-mt: 1.25rem;
  --cta-block-mb: 0;
}

.btn,
.ix-btn {
  min-height: var(--cta-min-h);
  padding: var(--cta-pad-y) var(--cta-pad-x);
  font-size: 0.95rem;
  font-weight: 650;
  line-height: 1.2;
  border-radius: 999px;
  white-space: normal;
  text-align: center;
  align-items: center;
  justify-content: center;
}

.hero-actions,
.ix-cta-row,
.section-cta--split,
.cta-band__actions,
.content-next .btn-row,
.error-page__actions,
.btn-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--cta-gap-y) var(--cta-gap-x);
  margin-top: var(--cta-block-mt);
  margin-bottom: var(--cta-block-mb);
}

.card .section-cta,
.section-cta,
.content-next .btn-row {
  margin-top: var(--cta-block-mt);
}

.btn-row .btn + .btn,
.section-cta .btn + .btn {
  margin-inline-start: 0;
}

@media (max-width: 47.99rem) {
  .hero-actions .btn,
  .ix-cta-row .btn,
  .section-cta--split .btn,
  .cta-band__actions .btn,
  .content-next .btn-row .btn,
  .error-page__actions .btn,
  .btn-row .btn,
  .hero-actions .ix-btn,
  .ix-cta-row .ix-btn {
    width: 100%;
  }

  .hero-actions,
  .ix-cta-row,
  .section-cta--split,
  .cta-band__actions,
  .content-next .btn-row,
  .error-page__actions,
  .btn-row {
    gap: 0.65rem;
    margin-top: 1rem;
  }
}

@media (max-width: 63.99rem) {
  .site-footer .footer-grid,
  .site-footer .footer-grid--premium {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}

@media (max-width: 47.99rem) {
  .site-footer .footer-grid,
  .site-footer .footer-grid--premium {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }

  .site-footer {
    padding-top: 24px !important;
    padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .site-footer .footer-col {
    padding-bottom: 12px;
    border-bottom: 1px solid color-mix(in srgb, var(--border) 58%, transparent);
  }

  .site-footer .footer-col:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }

  .site-footer .footer-bar {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .site-footer .footer-bar__copy,
  .site-footer .footer-bar__domains,
  .site-footer .footer-bar__dev {
    text-align: left;
  }
}

/* ===== ELITE_ANIMATION_UX_SYSTEM_ULTIMATE ===== */
:root {
  --motion-120: 120ms;
  --motion-200: 200ms;
  --motion-300: 300ms;
  --motion-500: 500ms;
  --motion-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --motion-ease-premium: cubic-bezier(0.16, 1, 0.3, 1);
  --motion-ease-soft: cubic-bezier(0.33, 1, 0.68, 1);
  --motion-stagger: 70ms;
}

html.js body.motion-ready .hero [data-motion-hero],
html.js body.motion-ready .ix-hero [data-motion-hero],
html.js body.motion-ready .hero-actions,
html.js body.motion-ready .ix-cta-row,
html.js body.motion-ready .tir-section-reveal {
  will-change: transform, opacity;
}

html.js body.motion-ready .hero [data-motion-hero],
html.js body.motion-ready .ix-hero [data-motion-hero] {
  opacity: 0;
  transform: translate3d(0, 18px, 0);
  transition:
    opacity var(--motion-500) var(--motion-ease-premium),
    transform var(--motion-500) var(--motion-ease-premium) !important;
}

html.js body.motion-ready .hero [data-motion-hero].is-inview,
html.js body.motion-ready .ix-hero [data-motion-hero].is-inview {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

html.js body.motion-ready .hero h1 .motion-word,
html.js body.motion-ready .ix-hero h1 .motion-word {
  display: inline-block;
  opacity: 0;
  transform: translate3d(0, 0.5em, 0);
  transition:
    opacity var(--motion-300) var(--motion-ease-out),
    transform var(--motion-300) var(--motion-ease-out) !important;
  transition-delay: calc(var(--motion-index, 0) * 22ms);
}

html.js body.motion-ready .hero h1.is-inview .motion-word,
html.js body.motion-ready .ix-hero h1.is-inview .motion-word {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

html.js body.motion-ready .hero-actions,
html.js body.motion-ready .ix-cta-row {
  opacity: 0;
  transform: translate3d(0, 12px, 0) scale(0.985);
  transition:
    opacity var(--motion-300) var(--motion-ease-soft),
    transform var(--motion-300) var(--motion-ease-soft) !important;
}

html.js body.motion-ready .hero-actions.is-inview,
html.js body.motion-ready .ix-cta-row.is-inview {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.btn,
.ix-btn {
  transition:
    transform var(--motion-120) var(--motion-ease-out),
    opacity var(--motion-120) var(--motion-ease-out),
    background-color var(--motion-200) var(--motion-ease-out),
    border-color var(--motion-200) var(--motion-ease-out),
    color var(--motion-200) var(--motion-ease-out),
    box-shadow var(--motion-200) var(--motion-ease-out) !important;
}

@media (hover: hover) and (pointer: fine) {
  .btn:hover,
  .ix-btn:hover {
    transform: translate3d(0, -1px, 0) scale(1.02);
  }
}

.btn:active:not(:disabled),
.ix-btn:active:not(:disabled) {
  transform: translate3d(0, 0, 0) scale(0.985);
}

.card,
.ix-value-card,
.ix-phase-card {
  transition:
    transform var(--motion-200) var(--motion-ease-out),
    box-shadow var(--motion-200) var(--motion-ease-out),
    border-color var(--motion-200) var(--motion-ease-out) !important;
}

@media (hover: hover) and (pointer: fine) {
  .card:hover,
  .ix-value-card:hover,
  .ix-phase-card:hover {
    transform: translate3d(0, -3px, 0);
  }
}

a:not(.btn):not(.ix-btn) {
  transition:
    color var(--motion-200) var(--motion-ease-out),
    text-underline-offset var(--motion-200) var(--motion-ease-out) !important;
}

@media (max-width: 47.99rem) {
  :root {
    --motion-stagger: 40ms;
  }
  .btn:hover,
  .ix-btn:hover,
  .card:hover,
  .ix-value-card:hover,
  .ix-phase-card:hover {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.js body.motion-ready .hero [data-motion-hero],
  html.js body.motion-ready .ix-hero [data-motion-hero],
  html.js body.motion-ready .hero h1 .motion-word,
  html.js body.motion-ready .ix-hero h1 .motion-word,
  html.js body.motion-ready .hero-actions,
  html.js body.motion-ready .ix-cta-row {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* MOBILE_HERO_VISIBILITY_10033: IO + staggered motion can leave hero text at opacity 0 on some
   mobile WebKit builds. Match reduced-motion behavior on small viewports (hero only). */
@media (max-width: 47.99rem) {
  html.js body.motion-ready .ix-hero [data-motion-hero],
  html.js body.motion-ready .hero [data-motion-hero] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  html.js body.motion-ready .ix-hero h1 .motion-word,
  html.js body.motion-ready .hero h1 .motion-word {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    transition-delay: 0ms !important;
  }

  html.js body.motion-ready .ix-hero .ix-cta-row,
  html.js body.motion-ready .ix-hero .hero-actions,
  html.js body.motion-ready .hero .hero-actions {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

@media (max-width: 47.99rem) {
  .page-hero {
    padding-top: 0.5rem !important;
  }
}

/* ===== LAYOUT_RHYTHM_REPAIR_10025 ===== */
:root {
  --rhythm-4: 0.25rem;
  --rhythm-8: 0.5rem;
  --rhythm-12: 0.75rem;
  --rhythm-16: 1rem;
  --rhythm-20: 1.25rem;
  --rhythm-24: 1.5rem;
  --rhythm-32: 2rem;
  --rhythm-line-prose: 1.75;
  --rhythm-line-heading: 1.16;
  --rhythm-card-pad: clamp(1rem, 1rem + 0.4vw, 1.5rem);
  --rhythm-section-gap: clamp(2rem, 4.6vw, 3.25rem);
  --hero-header-gap: clamp(0.6rem, 1.8vw, 0.9rem);
}

main > section:not(.hero):not(.ix-hero),
main .section:not(.ix-hero),
main .ix-section {
  padding-block: var(--rhythm-section-gap) !important;
}

main > section.hero.ix-hero {
  padding-block: clamp(1rem, 3vw, 2.5rem) !important;
}

.page-hero {
  padding-top: var(--hero-header-gap) !important;
}

main > :first-child {
  padding-top: var(--hero-header-gap) !important;
}

main > .ix-hero:first-child {
  padding-top: var(--hero-header-gap) !important;
}

.content-block,
.compare-matrix-wrap,
.science-values {
  margin-bottom: var(--rhythm-32) !important;
}

main :where(h1, h2, h3, h4) {
  line-height: var(--rhythm-line-heading) !important;
}

main :where(p, li) {
  line-height: var(--rhythm-line-prose) !important;
}

main :where(h1, h2, h3, h4) + :where(p, ul, ol, .hero-actions, .ix-cta-row, .section-cta, .btn-row, .cta-band__actions) {
  margin-top: var(--rhythm-16) !important;
}

main :where(p, ul, ol) + :where(p, ul, ol) {
  margin-top: var(--rhythm-16) !important;
}

main :where(h2, h3) {
  margin-top: var(--rhythm-32) !important;
}

main :where(h2, h3):first-child {
  margin-top: 0 !important;
}

.section-head {
  margin-bottom: var(--rhythm-24) !important;
}

.section-head h2,
.content-block h2,
.ix-section h2 {
  margin-bottom: var(--rhythm-12) !important;
}

.content-block h3,
.ix-section h3 {
  margin-top: var(--rhythm-24) !important;
  margin-bottom: var(--rhythm-8) !important;
}

.content-block p,
.section-head p,
.section-intro,
.ix-section p {
  margin: 0 !important;
}

.content-block p + p,
.ix-section p + p,
.section-head p + p {
  margin-top: var(--rhythm-16) !important;
}

.card,
.ix-value-card,
.ix-phase-card,
.contact-panel,
.trust-list li {
  padding: var(--rhythm-card-pad) !important;
}

.hero-actions,
.ix-cta-row,
.section-cta--split,
.cta-band__actions,
.content-next .btn-row,
.error-page__actions {
  gap: var(--rhythm-12) !important;
}

.hero-actions,
.ix-cta-row,
.section-cta,
.cta-band__actions {
  margin-top: var(--rhythm-20) !important;
}

@media (max-width: 47.99rem) {
  :root {
    --rhythm-card-pad: 1rem;
    --rhythm-section-gap: 1.5rem;
    --hero-header-gap: 0.9rem;
  }

  .section-head {
    margin-bottom: var(--rhythm-20) !important;
  }

  .section-head h2,
  .content-block h2,
  .ix-section h2 {
    margin-bottom: var(--rhythm-8) !important;
  }

  .hero-actions,
  .ix-cta-row,
  .section-cta--split,
  .cta-band__actions,
  .content-next .btn-row {
    gap: var(--rhythm-8) !important;
  }
}

body > .skip-link {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 1px !important;
  height: 1px !important;
}

/* Inner pages: hero title + lede readable on small screens */
@media (max-width: 47.99rem) {
  .wrap.page-hero {
    padding-top: max(0.75rem, var(--hero-header-gap)) !important;
  }

  .page-hero h1 {
    font-size: clamp(1.45rem, 4.5vw + 0.55rem, 2.35rem) !important;
    line-height: 1.14 !important;
    text-wrap: balance;
  }

  .page-hero .lede {
    font-size: clamp(0.95rem, 1.1vw + 0.85rem, 1.06rem) !important;
    line-height: 1.62 !important;
    margin-top: var(--rhythm-12) !important;
    max-width: 100%;
  }
}

@media (min-width: 48rem) and (max-width: 63.99rem) {
  .page-hero h1 {
    font-size: clamp(1.85rem, 2.5vw + 1rem, 2.65rem) !important;
  }
}

/* ========== PRODUCTION_LAYOUT_20260414: single scroll root + hero always visible ==========
   Root causes fixed:
   - "Elite" motion hid .ix-hero / .ix-cta-row at opacity:0 until IntersectionObserver fired (unreliable above the fold).
   - html scrollbar-gutter:stable + body/html both participating in scroll caused "double scroll" feel.
   - Universal * { margin/padding !important } stripped real component spacing.
   Below overrides motion for hero only; below-fold .tir-section-reveal keeps subtle entrance. */
html.js body.motion-ready .ix-hero [data-motion-hero],
html.js body.motion-ready .hero [data-motion-hero],
html.js body.motion-ready .ix-hero h1,
html.js body.motion-ready .ix-hero h1 .motion-word,
html.js body.motion-ready .hero h1 .motion-word,
html.js body.motion-ready .ix-hero .ix-cta-row,
html.js body.motion-ready .hero .ix-cta-row,
html.js body.motion-ready .hero .hero-actions {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.25s var(--motion-ease-soft, ease), transform 0.25s var(--motion-ease-soft, ease) !important;
}

html.js body.motion-ready .ix-hero h1.is-inview .motion-word,
html.js body.motion-ready .hero h1.is-inview .motion-word {
  opacity: 1 !important;
  transform: none !important;
}

/* Prevent nested scroll on main (document is the only vertical scroller) */
main.index-main,
#main {
  overflow-x: clip;
  overflow-y: visible;
  max-width: 100%;
}

@media (max-width: 63.99rem) {
  html,
  body {
    overflow-x: hidden;
  }
}

/* ===== 2026-04 UI/UX refinement: global readability + rhythm ===== */
:root {
  --ux-prose-max: 64ch;
  --ux-section-gap-mobile: clamp(2rem, 6.2vw, 2.8rem);
  --ux-section-gap-desktop: clamp(3rem, 5.2vw, 4.25rem);
}

main > section,
.section,
.content-block,
.legal-doc {
  scroll-margin-top: calc(var(--header-height) + 0.5rem);
}

.section,
.content-block {
  padding-top: var(--ux-section-gap-mobile);
  padding-bottom: var(--ux-section-gap-mobile);
}

.section-head h2,
.content-block h2,
.ix-section h2 {
  margin-bottom: 0.75rem !important;
  letter-spacing: -0.024em;
  line-height: 1.14;
}

.content-block h3,
.ix-section h3,
.legal-doc h2 {
  line-height: 1.3;
  letter-spacing: -0.018em;
}

.section-head p,
.content-block p,
.content-block li,
.legal-doc p,
.legal-doc li,
.ix-section > p,
.ix-section > li {
  max-width: var(--ux-prose-max);
  line-height: 1.72;
}

.content-block p + p,
.ix-section > p + p,
.legal-doc p + p {
  margin-top: 0.72rem;
}

.section-head {
  margin-bottom: clamp(1.15rem, 2.6vw, 2rem) !important;
}

.card-grid,
.ix-phase-grid,
.ix-value-grid {
  gap: clamp(0.9rem, 2.2vw, 1.35rem);
}

@media (min-width: 64rem) {
  .section,
  .content-block {
    padding-top: var(--ux-section-gap-desktop);
    padding-bottom: var(--ux-section-gap-desktop);
  }

  .section-head h2,
  .content-block h2,
  .ix-section h2 {
    margin-bottom: 0.88rem !important;
  }
}

/* 2026-04 parity hardening: one shared layout/stacking truth across domains */
:root {
  --z-layout-header: 10000;
  --z-layout-cookie: 9950;
  --z-layout-modal: 10040;
}

#tir-header-root.tir-head {
  z-index: var(--z-layout-header) !important;
}

.cc-banner {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: var(--z-layout-cookie) !important;
  max-height: min(42dvh, 22rem);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.cc-backdrop {
  z-index: calc(var(--z-layout-modal) - 1) !important;
}

.cc-modal {
  z-index: var(--z-layout-modal) !important;
}

main,
#main {
  position: relative;
  z-index: 1;
}

.btn,
.ix-btn,
.text-link,
.cc-banner .btn,
#cookie-preferences-open,
.tir-drawer__summary,
.tir-drawer__leaf,
.tir-head__link,
.tir-head__trigger {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.tir-head__link,
.tir-head__trigger {
  color: var(--text) !important;
  background: color-mix(in srgb, var(--bg-glass) 82%, transparent) !important;
  border: 1px solid color-mix(in srgb, var(--border) 72%, transparent) !important;
  border-radius: 0.55rem;
}

.tir-head__link:hover,
.tir-head__trigger:hover,
.tir-head__link:focus-visible,
.tir-head__trigger:focus-visible {
  color: var(--accent-2) !important;
  border-color: color-mix(in srgb, var(--accent-2) 55%, var(--border)) !important;
  background: color-mix(in srgb, var(--accent-2) 12%, var(--bg-glass)) !important;
}

.btn-primary,
.ix-btn--primary {
  color: #041018 !important;
  background-color: #00d3f5 !important;
  background: linear-gradient(135deg, #00b8e6, #00f5ff) !important;
  border: 1px solid transparent !important;
  box-shadow: 0 10px 24px -14px rgba(0, 184, 230, 0.5);
}

.btn-ghost,
.ix-btn--ghost,
.btn-outline,
#cookie-preferences-open,
.cc-banner .btn.btn-ghost,
.cc-banner .btn.btn-outline {
  color: var(--text) !important;
  background: var(--bg-glass) !important;
  border: 1px solid var(--border) !important;
}

@media (prefers-reduced-motion: no-preference) {
  .btn,
  .ix-btn,
  .cc-banner .btn,
  #cookie-preferences-open {
    transition:
      transform 0.24s ease,
      box-shadow 0.24s ease,
      filter 0.24s ease,
      color 0.24s ease,
      background-color 0.24s ease,
      border-color 0.24s ease !important;
  }

  .btn:hover,
  .ix-btn:hover,
  .cc-banner .btn:hover,
  #cookie-preferences-open:hover {
    transform: translateY(-1px);
    filter: brightness(1.03);
  }
}

/* Unified interactive focus/tap treatment (removes default blue click halo). */
a,
button,
[role="button"],
input,
select,
textarea,
summary {
  -webkit-tap-highlight-color: rgba(34, 211, 238, 0.16);
}

a:focus,
button:focus,
[role="button"]:focus,
input:focus,
select:focus,
textarea:focus,
summary:focus {
  outline: none !important;
  box-shadow: none !important;
}

a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
summary:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}

a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--accent-2) 84%, #ffffff) !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent-2) 24%, transparent);
}

/* Product-level modernization layer: spacing rhythm, cards, CTA consistency, motion polish */
:root {
  --ui-space-1: 0.5rem;
  --ui-space-2: 0.75rem;
  --ui-space-3: 1rem;
  --ui-space-4: 1.5rem;
  --ui-space-5: 2rem;
  --ui-space-6: clamp(2.5rem, 6vw, 4rem);
  --ui-dur-fast: 0.2s;
  --ui-dur-base: 0.28s;
  --ui-dur-slow: 0.36s;
  --ui-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --ui-shadow-soft: 0 12px 28px -18px rgba(2, 6, 23, 0.48);
  --ui-shadow-elev: 0 18px 40px -20px rgba(2, 6, 23, 0.56);
}

main > section {
  scroll-margin-top: calc(var(--header-h) + 1rem);
}

#tir-header-root.tir-head {
  transition: transform var(--ui-dur-base) var(--ui-ease), filter var(--ui-dur-base) var(--ui-ease);
}

#tir-header-root.tir-head.is-scrolled .tir-head__surface {
  box-shadow: 0 10px 30px -20px rgba(2, 6, 23, 0.58);
  backdrop-filter: saturate(1.08) blur(14px);
  -webkit-backdrop-filter: saturate(1.08) blur(14px);
}

html:not(.tir-menu-open) #tir-header-root.tir-head.is-scroll-down {
  transform: translateY(-3px);
}

.btn,
.ix-btn {
  min-height: var(--touch-min);
  border-radius: 0.8rem;
  font-weight: 650;
  letter-spacing: 0.015em;
}

.btn.is-pressing,
.ix-btn.is-pressing,
a.is-pressing[role="button"] {
  transform: translateY(0) scale(0.985);
}

.btn-primary,
.ix-btn--primary {
  box-shadow: var(--ui-shadow-soft), 0 1px 0 rgba(255, 255, 255, 0.25) inset;
}

.btn-ghost,
.ix-btn--ghost,
.btn-outline {
  box-shadow: 0 8px 24px -20px rgba(2, 6, 23, 0.52);
}

.ui-card-modern {
  border-radius: 1rem;
  border: 1px solid color-mix(in srgb, var(--border) 74%, transparent);
  background: color-mix(in srgb, var(--bg-panel) 68%, rgba(2, 6, 23, 0.94));
  box-shadow: var(--ui-shadow-soft);
  transition:
    transform var(--ui-dur-base) var(--ui-ease),
    box-shadow var(--ui-dur-base) var(--ui-ease),
    border-color var(--ui-dur-base) var(--ui-ease);
}

.ui-card-interactive:hover,
.ui-card-interactive:focus-within {
  transform: translateY(-3px);
  box-shadow: var(--ui-shadow-elev);
  border-color: color-mix(in srgb, var(--accent-2) 44%, var(--border));
}

#tir-nav-loading {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 3px;
  transform: scaleX(0);
  transform-origin: left center;
  z-index: 12050;
  pointer-events: none;
  background: linear-gradient(90deg, #00b8e6 0%, #00f5ff 45%, #8b5cf6 100%);
  opacity: 0;
  transition: transform var(--ui-dur-slow) var(--ui-ease), opacity var(--ui-dur-fast) ease;
}

html.tir-nav-loading #tir-nav-loading {
  opacity: 1;
  transform: scaleX(1);
}

#scroll-top {
  transition:
    opacity var(--ui-dur-base) var(--ui-ease),
    transform var(--ui-dur-base) var(--ui-ease),
    box-shadow var(--ui-dur-base) var(--ui-ease);
}

#scroll-top.is-visible {
  box-shadow: 0 14px 30px -16px rgba(0, 184, 230, 0.58);
}

@media (max-width: 63.99rem) {
  .btn,
  .ix-btn,
  .tir-drawer__leaf,
  .tir-drawer__summary {
    min-height: 46px;
  }
}

/* Premium product composition pass (global rhythm + readability + conversion clarity). */
main {
  isolation: isolate;
}

main section + section {
  margin-top: clamp(0.65rem, 1.1vw, 1rem);
}

.section-head h2,
.home-panel-title,
main h2 {
  letter-spacing: -0.024em;
  text-wrap: balance;
}

.section-head p,
.section-intro,
main p {
  max-width: 68ch;
}

.hero .hero-lead,
.page-hero .lede {
  font-size: clamp(1.05rem, 0.98rem + 0.28vw, 1.24rem);
}

.btn-primary,
.ix-btn--primary {
  font-weight: 700;
  letter-spacing: 0.012em;
}

.btn-ghost,
.ix-btn--ghost,
.btn-outline {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.card,
.ui-card-modern,
.contact-route,
.trust-list li {
  border-radius: 1rem;
}

@media (hover: hover) and (pointer: fine) {
  .btn-primary:hover,
  .ix-btn--primary:hover {
    transform: translateY(-1px) scale(1.01);
  }
}

@media (max-width: 47.99rem) {
  .hero-actions {
    gap: 0.85rem;
  }

  .hero h1 {
    line-height: 1.08;
  }

  .card,
  .ui-card-modern {
    padding: 1.1rem;
  }

  /* Mobile-first text visibility hardening for all actionable labels. */
  .btn,
  .ix-btn,
  .tir-drawer__summary,
  .tir-drawer__leaf,
  .tir-drawer__branch a,
  .tir-head__link,
  .tir-head__trigger,
  .section-cta a,
  .footer-col a,
  .footer-policies a {
    color: var(--text) !important;
    -webkit-text-fill-color: var(--text) !important;
    opacity: 1 !important;
    visibility: visible !important;
    background-image: none;
    mix-blend-mode: normal !important;
    text-shadow: none;
  }

  .btn-primary,
  .ix-btn--primary,
  .tir-drawer__cta {
    color: #041018 !important;
    -webkit-text-fill-color: #041018 !important;
  }

  .btn-ghost,
  .ix-btn--ghost,
  .btn-outline,
  #cookie-preferences-open {
    color: var(--text) !important;
    -webkit-text-fill-color: var(--text) !important;
  }
}

@media (max-width: 47.99rem) {
  html[data-theme="dark"] .tir-drawer__summary,
  html[data-theme="dark"] .tir-drawer__leaf,
  html[data-theme="dark"] .tir-drawer__branch a,
  html[data-theme="dark"] .tir-head__link,
  html[data-theme="dark"] .tir-head__trigger,
  html[data-theme="dark"] .footer-col a,
  html[data-theme="dark"] .footer-policies a {
    color: #e2e8f0 !important;
    -webkit-text-fill-color: #e2e8f0 !important;
  }

  html[data-theme="light"] .tir-drawer__summary,
  html[data-theme="light"] .tir-drawer__leaf,
  html[data-theme="light"] .tir-drawer__branch a,
  html[data-theme="light"] .tir-head__link,
  html[data-theme="light"] .tir-head__trigger,
  html[data-theme="light"] .footer-col a,
  html[data-theme="light"] .footer-policies a {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
  }

  @media (prefers-color-scheme: light) {
    html:not([data-theme]) .tir-drawer__summary,
    html:not([data-theme]) .tir-drawer__leaf,
    html:not([data-theme]) .tir-drawer__branch a,
    html:not([data-theme]) .tir-head__link,
    html:not([data-theme]) .tir-head__trigger,
    html:not([data-theme]) .footer-col a,
    html:not([data-theme]) .footer-policies a {
      color: #0f172a !important;
      -webkit-text-fill-color: #0f172a !important;
    }
  }

  @media (prefers-color-scheme: dark) {
    html:not([data-theme]) .tir-drawer__summary,
    html:not([data-theme]) .tir-drawer__leaf,
    html:not([data-theme]) .tir-drawer__branch a,
    html:not([data-theme]) .tir-head__link,
    html:not([data-theme]) .tir-head__trigger,
    html:not([data-theme]) .footer-col a,
    html:not([data-theme]) .footer-policies a {
      color: #e2e8f0 !important;
      -webkit-text-fill-color: #e2e8f0 !important;
    }
  }
}

