:root{--alpine-50:#f0f4f7;--alpine-100:#d6e0e8;--alpine-200:#a8bcc9;--alpine-400:#5b8aae;--alpine-600:#2c5470;--alpine-800:#0f2a3f;--alpine-900:#061826;--snow-0:#fff;--snow-50:#f8f9f7;--snow-100:#f2f4f1;--snow-200:#e8eef3;--snow-400:#c8d2d6;--snow-600:#8a9499;--snow-800:#4a5459;--beacon-50:#fdeee8;--beacon-100:#fbc9b5;--beacon-200:#f69f7b;--beacon-400:#e84e1b;--beacon-600:#b83a12;--beacon-800:#7a2a0e;--beacon-900:#4d1a08;--color-text-primary:var(--alpine-800);--color-text-secondary:var(--alpine-600);--color-text-tertiary:#456f8f;--color-text-inverse:var(--snow-0);--color-bg-page:var(--snow-100);--color-bg-card:var(--snow-0);--color-bg-dark:var(--alpine-800);--color-border:var(--snow-200);--color-border-strong:var(--alpine-200);--color-link:var(--alpine-600);--color-link-hover:var(--alpine-800);--color-accent:var(--beacon-400);--color-accent-hover:var(--beacon-600);--color-accent-bg:var(--beacon-50);--color-accent-text:var(--beacon-800);--status-ok-solid:#22c55e;--status-ok-bg:#dcfce7;--status-ok-text:#166534;--status-warn-solid:#f59e0b;--status-warn-bg:#fef3c7;--status-warn-text:#92400e;--status-error-solid:#ef4444;--status-error-bg:#fee2e2;--status-error-text:#991b1b;--status-muted-solid:var(--snow-400);--status-muted-bg:var(--snow-100);--status-muted-text:var(--snow-800);--font-display:"Montserrat", "Helvetica Neue", Arial, sans-serif;--font-body:"Inter", "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", monospace;--text-display:38px;--text-h1:32px;--text-h2:26px;--text-h3:20px;--text-body-lg:16px;--text-body:14px;--text-small:12px;--text-label:11px;--text-mono:13px;--weight-thin:200;--weight-regular:400;--weight-medium:500;--weight-semi:600;--weight-bold:700;--weight-extra:800;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-normal:0;--tracking-wide:.08em;--tracking-wider:.12em;--content-max-width:880px;--section-pad-y:48px;--section-pad-x:32px;--grid-gap:14px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-pill:100px;--border-thin:1px solid var(--color-border);--border-medium:1px solid var(--color-border-strong);--transition:.15s ease-out}body{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);color:var(--color-text-primary);background:var(--color-bg-page);-webkit-font-smoothing:antialiased;line-height:1.55}h1,h2,h3{font-family:var(--font-display);letter-spacing:var(--tracking-tight);color:var(--color-text-primary);margin:0 0 .5em}h1{font-size:var(--text-display);font-weight:var(--weight-extra);line-height:1.1}h2{font-size:var(--text-h1);font-weight:var(--weight-bold);line-height:1.2}h3{font-size:var(--text-h2);font-weight:var(--weight-bold);line-height:1.3}.button{border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-small);font-weight:var(--weight-semi);cursor:pointer;transition:background var(--transition), transform var(--transition);border:none;align-items:center;gap:8px;padding:12px 22px;display:inline-flex}.button:active{transform:scale(.98)}.button--primary{background:var(--color-accent);color:var(--color-text-inverse)}.button--primary:hover{background:var(--color-accent-hover)}.button--secondary{color:var(--color-link);border:var(--border-medium);background:0 0}.button--secondary:hover{background:var(--snow-50)}.eyebrow{font-family:var(--font-body);font-size:var(--text-label);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--alpine-400);margin-bottom:10px;display:inline-block}.eyebrow--accent{color:var(--color-accent-text);background:var(--color-accent-bg);border-radius:var(--radius-pill);padding:6px 12px}.card{background:var(--color-bg-card);border:var(--border-thin);border-radius:var(--radius-xl);padding:22px}.section{max-width:var(--content-max-width);padding:var(--section-pad-y) var(--section-pad-x);margin:0 auto}.sec{padding:132px 0;position:relative}.sec__wrap{max-width:1180px;margin:0 auto;padding:0 32px}.sec--band{background:linear-gradient(180deg, var(--color-bg-page) 0%, var(--alpine-50) 22%, var(--alpine-50) 78%, var(--color-bg-page) 100%)}.sec__eyebrow{font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-text-tertiary);align-items:center;gap:10px;margin:0 0 20px;display:flex}.sec__eyebrow:before{content:"";background:var(--color-border-strong);width:18px;height:1px}.sec__title{font-family:var(--font-display);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-text-primary);text-wrap:balance;margin:0 0 22px;font-size:clamp(30px,3.5vw,44px);line-height:1.12}.sec__lede{color:var(--color-text-secondary);max-width:46ch;margin:0;font-size:17px;line-height:1.6}.sec__intro--center{text-align:center;margin-left:auto;margin-right:auto}.sec__intro--center .sec__eyebrow{justify-content:center}.sec__intro--center .sec__lede{margin-left:auto;margin-right:auto}.shot{border-radius:var(--radius-xl);background:var(--color-bg-card);position:relative;overflow:hidden;box-shadow:0 1px #0f2a3f0f,0 22px 60px -20px #0f2a3f47}.shot--plain{box-shadow:none;border:var(--border-thin)}.shot img{width:100%;height:auto}.frame{position:relative}.pin{left:var(--x);top:var(--y);z-index:3;width:0;height:0;position:absolute}.pin__dot{background:var(--color-accent);border-radius:50%;width:11px;height:11px;transition:box-shadow .18s ease-out;position:absolute;top:-5.5px;left:-5.5px;box-shadow:0 0 0 4px #e84e1b2e}.pin__dot:after{content:"";border:1px solid var(--color-accent);opacity:.55;border-radius:50%;position:absolute;inset:-4px}:root[data-motion-ok=true] .pin__dot:after{animation:2.6s cubic-bezier(.2,.7,.3,1) infinite pin-ping}@keyframes pin-ping{0%{opacity:.55;transform:scale(1)}70%,to{opacity:0;transform:scale(2.4)}}.pin__label{white-space:nowrap;font-size:var(--text-body);color:var(--color-text-inverse);backdrop-filter:blur(8px)saturate(140%);border-radius:var(--radius-lg);opacity:0;pointer-events:none;background:#061826e6;padding:7px 12px;line-height:1.35;transition:opacity .18s ease-out,transform .18s ease-out;position:absolute;top:0;left:16px;transform:translateY(-50%)translate(-6px)}.pin--left .pin__label{left:auto;right:16px;transform:translateY(-50%)translate(6px)}.shot:hover .pin__label,.shot:focus-within .pin__label{opacity:1;transform:translateY(-50%)translate(0)}.shot:hover .pin__dot{box-shadow:0 0 0 5px #e84e1b3d}.callouts{display:none}.uipanel{background:var(--color-bg-card);border:var(--border-thin);border-radius:var(--radius-xl);overflow:hidden}.uipanel__head{border-bottom:var(--border-thin);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-secondary);padding:13px 18px}.uipanel__row{padding:16px 18px 18px}.uipanel__row+.uipanel__row{border-top:var(--border-thin)}.uibtn{border-radius:var(--radius-lg);border:var(--border-thin);font-size:13.5px;font-weight:var(--weight-medium);background:var(--color-bg-card);color:var(--color-text-primary);padding:8px 17px}.uibtn--solid{background:var(--alpine-800);border-color:var(--alpine-800);color:var(--color-text-inverse)}.uidot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.uidot--ok{background:var(--status-ok-solid)}.uidot--warn{background:var(--status-warn-solid)}@media (width<=900px){.sec{padding:84px 0}.sec__wrap{padding:0 20px}.pin{display:none}.callouts{margin:18px 0 0;padding:0;list-style:none;display:block}.callouts li{font-size:var(--text-body);color:var(--color-text-secondary);margin-bottom:9px;padding-left:22px;line-height:1.45;position:relative}.callouts li:before{content:"";background:var(--color-accent);border-radius:50%;width:8px;height:8px;position:absolute;top:8px;left:2px}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/montserrat-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}*,:before,:after{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-regular);color:var(--color-text-primary);background:var(--color-bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.55}img,svg{max-width:100%;display:block}button{font:inherit;cursor:pointer}a{color:var(--color-link);transition:color var(--transition);text-decoration:none}a:hover{color:var(--color-link-hover)}.skip-link{background:var(--alpine-800);color:var(--snow-0);z-index:100;padding:8px 16px;position:absolute;top:-40px;left:0}.skip-link:focus-visible{outline-color:var(--snow-0);outline-offset:0}.skip-link:focus{top:0}:root{--color-focus-ring:var(--alpine-600)}:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}:root[data-motion-ok=true] .scroll-fade{opacity:0;will-change:opacity, transform;transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);transform:translateY(20px)}:root[data-motion-ok=true] .scroll-fade.is-visible{opacity:1;transform:translateY(0)}
