.faq-section{padding-block:clamp(64px,9vw,136px);position:relative}.faq-section--soft{border-block:1px solid var(--line);background:var(--bg-1)}.faq-heading{gap:var(--s-5);margin-bottom:var(--s-8);align-items:end;display:grid}@media (width>=900px){.faq-heading{gap:var(--s-8);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}.faq-heading__eyebrow{align-items:center;gap:var(--s-2);margin:0 0 var(--s-5);color:var(--accent-text);font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;font-weight:500;display:inline-flex}.faq-heading__eyebrow:before{content:"";opacity:.7;background:currentColor;width:18px;height:1px}.faq-heading h2{font-size:var(--t-h2);letter-spacing:-.03em;margin:0;font-weight:560;line-height:1.06}.faq-heading__copy{max-width:46ch;color:var(--ink-2);margin:0;line-height:1.6}.faq-list{gap:var(--s-2);display:grid}.faq-group{margin:var(--s-6) 0 var(--s-2);color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:500}.faq-group:first-child{margin-top:0}.faq-item{border:1px solid var(--line);border-radius:var(--radius-2);background:var(--bg-2);transition:border-color var(--d) var(--ease), background var(--d) var(--ease);overflow:hidden}.faq-item:hover{border-color:var(--line-2)}.faq-item[open]{border-color:var(--line-3);background:var(--bg-3)}.faq-item__question{gap:var(--s-5);padding:var(--s-5) var(--s-5);color:var(--ink);cursor:pointer;letter-spacing:-.01em;justify-content:space-between;align-items:center;font-size:clamp(1rem,1.4vw,1.125rem);font-weight:500;line-height:1.4;list-style:none;display:flex}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question:focus-visible{outline:2px solid var(--accent-text);outline-offset:-3px}.faq-item__marker{border:1px solid var(--line-2);width:30px;height:30px;color:var(--ink-2);transition:transform var(--d) var(--ease), background var(--d) var(--ease), border-color var(--d) var(--ease), color var(--d) var(--ease);border-radius:50%;flex:none;place-items:center;font-size:17px;font-weight:400;line-height:1;display:grid}.faq-item[open] .faq-item__marker{border-color:var(--accent);background:var(--accent);color:#fff;transform:rotate(45deg)}.faq-item__answer{max-width:78ch;padding:0 var(--s-5) var(--s-5);color:var(--ink-2);margin:0;line-height:1.65}.faq-footnote{margin:var(--s-6) 0 0;color:var(--ink-3);font-size:var(--t-small);line-height:1.6}@media (prefers-reduced-motion:reduce){.faq-item,.faq-item__marker{transition:none}}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter-cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter-latin-wght-normal.woff2)format("woff2-variations");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-display:swap;font-weight:100 800;src:url(/fonts/jetbrains-mono-cyrillic-wght-normal.woff2)format("woff2-variations");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-display:swap;font-weight:100 800;src:url(/fonts/jetbrains-mono-latin-wght-normal.woff2)format("woff2-variations");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}:root{--bg-0:#0a0c0e;--bg-1:#101316;--bg-2:#171b1f;--bg-3:#1e2328;--bg-inset:#06080a;--ink:#f2f4f6;--ink-2:#a7afb6;--ink-3:#737d85;--line:#ffffff17;--line-2:#ffffff29;--line-3:#ffffff47;--accent:#e51f2b;--accent-hover:#ff2f3c;--accent-text:#ff6169;--accent-dim:#e51f2b24;--signal:#3ddc97;--warn:#ffb020;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--t-display:clamp(2.75rem, 7.4vw, 7.25rem);--t-h1:clamp(2.25rem, 5vw, 4.75rem);--t-h2:clamp(1.75rem, 3.4vw, 3.25rem);--t-h3:clamp(1.25rem, 1.5vw, 1.625rem);--t-body:1.0625rem;--t-small:.875rem;--t-label:.75rem;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--radius-1:3px;--radius-2:6px;--radius-3:12px;--ease:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--d-fast:.15s;--d:.24s;--d-slow:.42s;--container:min(1440px, calc(100vw - 2 * var(--gutter)));--gutter:24px;--header-h:68px;--z-base:0;--z-sticky:20;--z-header:40;--z-overlay:80;--z-toast:100;--surface:var(--bg-1);--surface-raised:var(--bg-2);--color-accent:var(--accent)}@media (width>=768px){:root{--gutter:40px;--header-h:76px}}@media (width>=1280px){:root{--gutter:56px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--s-5));font-family:var(--font-sans)}body{background:var(--bg-0);color:var(--ink);font-size:var(--t-body);font-synthesis-weight:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.65;overflow-x:hidden}button,input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}img,video,svg{max-width:100%;display:block}picture{display:contents}img{height:auto}button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}h1,h2,h3,h4,p,ul,ol,dl,figure{margin:0}ul,ol{padding:0;list-style:none}:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px;border-radius:var(--radius-1)}::selection{background:var(--accent);color:#fff}h1,h2,h3,h4{letter-spacing:-.03em;text-wrap:balance;font-weight:560;line-height:1.06}h1{font-size:var(--t-h1)}h2{font-size:var(--t-h2)}h3{font-size:var(--t-h3);letter-spacing:-.02em;line-height:1.24}p{text-wrap:pretty}.display{font-size:var(--t-display);letter-spacing:-.045em;font-weight:520;line-height:.94}.lead{max-width:62ch;color:var(--ink-2);font-size:clamp(1.0625rem,1.4vw,1.375rem);line-height:1.55}.measure{max-width:68ch}.label{align-items:center;gap:var(--s-2);color:var(--accent-text);font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;margin:0;font-weight:500;display:inline-flex}.label--muted{color:var(--ink-3)}.label:before{content:"";opacity:.7;background:currentColor;width:18px;height:1px}.label--bare:before{display:none}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.container{width:var(--container);margin-inline:auto}.section{padding-block:clamp(64px,9vw,136px);position:relative}.section--tight{padding-block:clamp(48px,6vw,88px)}.section--raised{background:var(--bg-1)}.section--inset{background:var(--bg-inset)}.section--ruled:before{content:"";inset-inline:0;background:var(--line);height:1px;position:absolute;top:0}.grid-bg{isolation:isolate;position:relative}.grid-bg:before{content:"";z-index:-1;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.6;pointer-events:none;background-size:96px 96px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 50% 0,#000 20%,#0000 78%);mask-image:radial-gradient(80% 60% at 50% 0,#000 20%,#0000 78%)}.head{gap:var(--s-5);margin-bottom:var(--s-8);align-items:end;display:grid}.head__aside{max-width:46ch;color:var(--ink-2)}@media (width>=900px){.head{gap:var(--s-8);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}.btn{--btn-bg:transparent;--btn-ink:var(--ink);--btn-line:var(--line-2);justify-content:center;align-items:center;gap:var(--s-4);min-height:52px;padding-inline:var(--s-6);border:1px solid var(--btn-line);border-radius:var(--radius-1);background:var(--btn-bg);color:var(--btn-ink);font-size:var(--t-small);letter-spacing:.01em;white-space:nowrap;transition:background var(--d) var(--ease), border-color var(--d) var(--ease), color var(--d) var(--ease);font-weight:560;display:inline-flex;position:relative}.btn svg,.btn .btn__glyph{transition:transform var(--d) var(--ease)}.btn:hover .btn__glyph{transform:translate(3px)}.btn--primary{--btn-bg:var(--accent);--btn-ink:#fff;--btn-line:var(--accent)}.btn--primary:hover{--btn-bg:var(--accent-hover);--btn-line:var(--accent-hover)}.btn--ghost:hover{--btn-bg:#ffffff0f;--btn-line:var(--line-3)}.btn--solid{--btn-bg:var(--ink);--btn-ink:var(--bg-0);--btn-line:var(--ink)}.btn--solid:hover{--btn-bg:#fff;--btn-line:#fff}.btn[disabled],.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.tlink{align-items:center;gap:var(--s-3);padding-block:var(--s-1);color:var(--ink);font-size:var(--t-small);font-weight:560;display:inline-flex}.tlink__glyph{color:var(--accent-text);transition:transform var(--d) var(--ease)}.tlink:hover .tlink__glyph{transform:translate(4px)}.tlink span:first-child{transition:background-size var(--d) var(--ease);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px}.tlink:hover span:first-child{background-size:100% 1px}.reveal{opacity:0;transition:opacity var(--d-slow) var(--ease), transform var(--d-slow) var(--ease);transition-delay:var(--reveal-delay,0s);transform:translateY(18px)}.reveal.is-in,.no-js .reveal{opacity:1;transform:none}.site-header{z-index:var(--z-header);background:color-mix(in srgb, var(--bg-0) 82%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);transition:border-color var(--d) var(--ease), background var(--d) var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}.site-header.is-stuck{border-bottom-color:var(--line);background:color-mix(in srgb, var(--bg-0) 94%, transparent)}.site-header__inner{justify-content:space-between;align-items:center;gap:var(--s-5);height:var(--header-h);display:flex}.brand{align-items:center;gap:var(--s-3);display:inline-flex}.brand img{width:auto;height:22px}.brand span{padding-left:var(--s-3);border-left:1px solid var(--line-2);color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.18em;font-size:11px}.nav{align-items:center;gap:var(--s-1);display:none}.nav a{padding:var(--s-2) var(--s-3);border-radius:var(--radius-1);color:var(--ink-2);font-size:var(--t-small);transition:color var(--d) var(--ease);font-weight:500;position:relative}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.nav a[aria-current=page]:after{content:"";left:var(--s-3);right:var(--s-3);background:var(--accent);height:1px;position:absolute;bottom:2px}@media (width>=1080px){.nav{display:flex}}.header-tools{align-items:center;gap:var(--s-3);display:flex}.header-phone{color:var(--ink-2);font-family:var(--font-mono);font-size:var(--t-small);transition:color var(--d) var(--ease);display:none}.header-phone:hover{color:var(--ink)}@media (width>=640px){.header-phone{display:block}}.header-cta{display:none}@media (width>=1080px){.header-cta{min-height:42px;padding-inline:var(--s-5);display:inline-flex}}.burger{border:1px solid var(--line-2);border-radius:var(--radius-1);width:44px;height:44px;transition:border-color var(--d) var(--ease);place-content:center;gap:5px;display:grid}.burger:hover{border-color:var(--line-3)}.burger span{background:var(--ink);width:16px;height:1.5px;transition:transform var(--d) var(--ease), opacity var(--d-fast) var(--ease);display:block}.burger[aria-expanded=true] span:first-child{transform:translateY(3.25px)rotate(45deg)}.burger[aria-expanded=true] span:last-child{transform:translateY(-3.25px)rotate(-45deg)}@media (width>=1080px){.burger{display:none}}.mobile-nav{inset:var(--header-h) 0 0;z-index:var(--z-overlay);padding:var(--s-6) var(--gutter) var(--s-8);background:var(--bg-0);animation:panel-in var(--d) var(--ease);flex-direction:column;display:flex;position:fixed;overflow-y:auto}@keyframes panel-in{0%{opacity:0;transform:translateY(-8px)}}.mobile-nav a{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:60px;padding-block:var(--s-3);border-bottom:1px solid var(--line);letter-spacing:-.02em;font-size:1.375rem;font-weight:500;display:flex}.mobile-nav a span{color:var(--accent-text)}.mobile-nav__foot{gap:var(--s-3);margin-top:var(--s-7);color:var(--ink-2);font-family:var(--font-mono);font-size:var(--t-small);display:grid}.hero{min-height:min(92svh,900px);padding-block:var(--s-9) var(--s-8);isolation:isolate;align-items:flex-end;display:flex;position:relative;overflow:hidden}.hero__media{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__scrim{z-index:-1;background:linear-gradient(180deg, #0a0c0edb 0%, #0a0c0e80 34%, #0a0c0ee0 82%, var(--bg-0) 100%), radial-gradient(ellipse 70% 55% at 18% 78%, #0a0c0ed1, transparent 70%);position:absolute;inset:0}.hero__inner{gap:var(--s-7);display:grid}.hero h1{max-width:18ch;margin-block:var(--s-5) var(--s-5)}.hero .lead{max-width:52ch}.hero__actions{gap:var(--s-3);margin-top:var(--s-6);flex-wrap:wrap;display:flex}.hero__meta{margin-top:var(--s-7);border-top:1px solid var(--line-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.hero__meta>div{padding:var(--s-5) var(--s-4) var(--s-4) var(--s-4);border-left:1px solid var(--line)}.hero__meta>div:first-child{border-left:0;padding-left:0}@media (width<=899px){.hero__meta>div:nth-child(3){border-left:0;padding-left:0}}.hero__meta strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(1.5rem,2.6vw,2.25rem);font-weight:500;display:block}.hero__meta span{margin-top:var(--s-2);color:var(--ink-3);font-size:var(--t-small);line-height:1.4;display:block}@media (width>=900px){.hero__meta{grid-template-columns:repeat(4,minmax(0,1fr))}}.hc{gap:var(--s-6);width:100%;display:grid}.hc__viewport{overflow:hidden}.hc__track{transition:transform var(--d-slow) var(--ease);display:flex}.hc__slide{gap:var(--s-6);flex:0 0 100%;align-items:center;min-width:0;display:grid}.hc__slide--solution .hc__copy{align-self:center}.hc__copy{min-width:0}.hc__title{max-width:18ch;margin-top:var(--s-5);letter-spacing:-.035em;font-size:clamp(2rem,4.6vw,4.25rem);font-weight:540;line-height:1}.hc__copy .lead{margin-top:var(--s-5);max-width:52ch}.hc__copy h1{margin-block:var(--s-5) 0}.hc__media{border:1px solid var(--line-2);border-radius:var(--radius-3);background:var(--bg-inset);display:none;overflow:hidden;box-shadow:0 32px 80px #00000080}.hc__media img{object-fit:cover;aspect-ratio:2;width:100%;height:100%}@media (width>=980px){.hc__slide--solution{gap:var(--s-8);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.hc__media{display:block}}.hc__controls{justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;display:flex}.hc__dots{align-items:center;gap:var(--s-2);display:flex}.hc__dot{border-radius:50%;width:36px;height:36px;position:relative;overflow:hidden}.hc__dot:before{content:"";background:var(--line-3);transition:background var(--d) var(--ease), inset var(--d) var(--ease);border-radius:50%;position:absolute;inset:15px}.hc__dot:hover:before{background:var(--ink-2)}.hc__dot.is-active{border-radius:100px;width:52px}.hc__dot.is-active:before{background:var(--line-2);border-radius:100px;inset:16px 6px}.hc__progress{background:var(--accent);transform-origin:0;border-radius:100px;animation:linear forwards hc-progress;position:absolute;inset:16px 6px}@keyframes hc-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.hc__nav{align-items:center;gap:var(--s-3);display:flex}.hc__counter{margin-right:var(--s-2);color:var(--ink-3);font-size:var(--t-label);letter-spacing:.12em}.hc__arrow{border:1px solid var(--line-2);width:44px;height:44px;color:var(--ink-2);transition:border-color var(--d) var(--ease), color var(--d) var(--ease), background var(--d) var(--ease);border-radius:50%;place-items:center;display:grid}.hc__arrow:hover{border-color:var(--line-3);color:var(--ink);background:#ffffff0d}.hc__arrow-flip{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.hc__track{transition:none}.hc__progress{display:none}}.geo{gap:var(--s-6);display:grid}.geo__items{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));display:grid}.geo__item{padding:var(--s-6);border:1px solid var(--line);border-radius:var(--radius-2);background:var(--bg-1)}.geo__item strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(2.25rem,4.2vw,3.5rem);font-weight:500;line-height:1;display:block}.geo__item span{margin-top:var(--s-3);color:var(--ink-2);font-size:var(--t-small);line-height:1.5;display:block}.cards{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));display:grid}.cards--wide{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}.card{border:1px solid var(--line);border-radius:var(--radius-2);background:var(--bg-1);transition:border-color var(--d) var(--ease), background var(--d) var(--ease), transform var(--d) var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}a.card:hover{border-color:var(--line-3);background:var(--bg-2);transform:translateY(-3px)}.card:after{content:"";background:var(--accent);width:0;height:2px;transition:width var(--d-slow) var(--ease);position:absolute;top:0;left:0}a.card:hover:after{width:100%}.card__media{aspect-ratio:4/3;padding:var(--s-6);background:var(--bg-inset);border-bottom:1px solid var(--line);place-items:center;display:grid}.card__media img{object-fit:contain;width:100%;height:100%;transition:transform var(--d-slow) var(--ease)}a.card:hover .card__media img{transform:scale(1.04)}.card__body{gap:var(--s-3);padding:var(--s-5);flex-direction:column;flex:1;display:flex}.card__kicker{color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.card__body p{color:var(--ink-2);font-size:var(--t-small);line-height:1.55}.card__cta{align-items:center;gap:var(--s-2);padding-top:var(--s-3);color:var(--accent-text);font-size:var(--t-small);margin-top:auto;font-weight:560;display:flex}.chips{gap:var(--s-2);flex-wrap:wrap;display:flex}.chip{padding:3px var(--s-3);border:1px solid var(--line-2);color:var(--ink-2);font-family:var(--font-mono);letter-spacing:.04em;white-space:nowrap;border-radius:100px;font-size:11px}.tiles{gap:var(--s-4);display:grid}@media (width>=900px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.tile{justify-content:space-between;gap:var(--s-8);min-height:420px;padding:var(--s-6);border:1px solid var(--line);border-radius:var(--radius-2);background:var(--bg-1);transition:border-color var(--d) var(--ease);flex-direction:column;display:flex;position:relative;overflow:hidden}.tile:hover{border-color:var(--line-3)}.tile__index{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.16em}.tile h3{max-width:16ch;margin-top:var(--s-3);font-size:clamp(1.5rem,2.4vw,2.125rem)}.tile p{max-width:42ch;margin-top:var(--s-3);color:var(--ink-2);font-size:var(--t-small)}.tile__media{right:var(--s-5);bottom:var(--s-5);opacity:.95;width:54%;max-width:400px;transition:transform var(--d-slow) var(--ease);pointer-events:none;position:absolute}.tile:hover .tile__media{transform:translateY(-8px)scale(1.03)}.tile__foot{align-items:center;gap:var(--s-2);color:var(--accent-text);font-size:var(--t-small);font-weight:560;display:flex;position:relative}.rows{border-top:1px solid var(--line);gap:0;display:grid}.row{gap:var(--s-5);padding-block:var(--s-7);border-bottom:1px solid var(--line);transition:background var(--d) var(--ease);display:grid}.row:hover{background:var(--bg-1)}.row__index{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.16em}.row__media{border:1px solid var(--line);border-radius:var(--radius-2);background:var(--bg-inset);overflow:hidden}.row__media img{aspect-ratio:16/10;object-fit:cover;width:100%}.row__copy{gap:var(--s-4);align-content:start;display:grid}.row__copy p{max-width:56ch;color:var(--ink-2)}.row__list{gap:var(--s-2);display:grid}.row__list li{gap:var(--s-3);color:var(--ink-2);font-size:var(--t-small);display:flex}.row__list li:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:5px;height:5px;margin-top:9px}@media (width>=900px){.row{gap:var(--s-6);grid-template-columns:72px minmax(0,.9fr) minmax(0,1.1fr);align-items:start}}.projects{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));display:grid}.project{min-height:400px;padding:var(--s-6);border:1px solid var(--line);border-radius:var(--radius-2);isolation:isolate;align-items:flex-end;display:flex;position:relative;overflow:hidden}.project--wide{grid-column:span 1}@media (width>=1100px){.project--wide{grid-column:span 2}}.project img{z-index:-2;object-fit:cover;width:100%;height:100%;transition:transform var(--d-slow) var(--ease);position:absolute;inset:0}.project:hover img{transform:scale(1.05)}.project:before{content:"";z-index:-1;background:linear-gradient(#0a0c0e26 0%,#0a0c0eb8 58%,#0a0c0ef0 100%);position:absolute;inset:0}.project__meta{gap:var(--s-3);margin-bottom:var(--s-3);color:var(--ink-2);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;font-size:11px;display:flex}.project h3{max-width:24ch}.project strong{margin-top:var(--s-3);color:var(--accent-text);font-family:var(--font-mono);font-size:var(--t-small);font-variant-numeric:tabular-nums;font-weight:500;display:block}.spec{border-collapse:collapse;width:100%;font-size:var(--t-small)}.spec th,.spec td{padding:var(--s-4) var(--s-4);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.spec th{width:38%;color:var(--ink-3);font-weight:500}.spec td{color:var(--ink);font-variant-numeric:tabular-nums}.cta-band{border-block:1px solid var(--line);background:var(--bg-1);padding-block:clamp(56px,7vw,104px);position:relative;overflow:hidden}.cta-band:before{content:"";background:radial-gradient(ellipse 60% 120% at 88% 50%, var(--accent-dim), transparent 65%);pointer-events:none;position:absolute;inset:0}.cta-band__inner{gap:var(--s-6);align-items:center;display:grid;position:relative}.cta-band h2{max-width:20ch}@media (width>=900px){.cta-band__inner{gap:var(--s-8);grid-template-columns:minmax(0,1fr) auto}}.site-footer{border-top:1px solid var(--line);background:var(--bg-inset)}.footer-top{gap:var(--s-7);padding-block:var(--s-8);display:grid}@media (width>=700px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1080px){.footer-top{gap:var(--s-8);grid-template-columns:1.6fr repeat(3,minmax(0,1fr))}}.footer-brand img{width:auto;height:24px}.footer-brand p{max-width:34ch;margin-top:var(--s-4);color:var(--ink-2);font-size:var(--t-small)}.footer-operator{gap:var(--s-1);margin-top:var(--s-5);padding-top:var(--s-5);border-top:1px solid var(--line);color:var(--ink-3);font-family:var(--font-mono);font-size:12px;line-height:1.6;display:grid}.footer-operator strong{color:var(--ink-2);font-weight:500}.site-footer h3{margin-bottom:var(--s-4);color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:500}.footer-links{gap:var(--s-3);display:grid}.footer-links a{color:var(--ink-2);font-size:var(--t-small);transition:color var(--d) var(--ease)}.footer-links a:hover{color:var(--ink)}.footer-bottom{gap:var(--s-4) var(--s-6);padding-block:var(--s-5);border-top:1px solid var(--line);color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;align-items:center;font-size:12px;display:flex}.footer-bottom nav{gap:var(--s-5);flex-wrap:wrap;display:flex}.footer-bottom a,.footer-bottom button{color:var(--ink-3);transition:color var(--d) var(--ease);font-size:12px}.footer-bottom a:hover,.footer-bottom button:hover{color:var(--ink)}.page-hero{padding-block:calc(var(--s-9) + var(--s-4)) var(--s-8);border-bottom:1px solid var(--line);position:relative;overflow:hidden}.page-hero:before{content:"";pointer-events:none;background:radial-gradient(60% 90% at 12% 0,#e51f2b1a,#0000 60%);position:absolute;inset:0}.page-hero__inner{gap:var(--s-5);display:grid;position:relative}.page-hero h1{max-width:20ch}.page-hero .lead{max-width:60ch}.crumbs{align-items:center;gap:var(--s-2);margin-bottom:var(--s-5);color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;font-size:11px;display:flex}.crumbs a:hover{color:var(--ink)}.crumbs li{align-items:center;gap:var(--s-2);display:flex}.crumbs li+li:before{content:"/";color:var(--line-3)}.anchors{top:var(--header-h);z-index:var(--z-sticky);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg-0) 92%, transparent);-webkit-backdrop-filter:blur(12px);position:sticky}.anchors__inner{gap:var(--s-5);scrollbar-width:none;padding-block:var(--s-3);display:flex;overflow-x:auto}.anchors__inner::-webkit-scrollbar{display:none}.anchors a{padding-block:var(--s-2);color:var(--ink-3);font-size:var(--t-small);white-space:nowrap;transition:color var(--d) var(--ease)}.anchors a:hover{color:var(--ink)}.legal{gap:var(--s-7);padding-block:var(--s-8);display:grid}@media (width>=1000px){.legal{gap:var(--s-9);grid-template-columns:300px minmax(0,1fr);align-items:start}}.legal__aside{gap:var(--s-2);padding:var(--s-5);border:1px solid var(--line);border-radius:var(--radius-2);background:var(--bg-1);color:var(--ink-3);font-family:var(--font-mono);font-size:12px;line-height:1.6;display:grid}@media (width>=1000px){.legal__aside{top:calc(var(--header-h) + var(--s-5));position:sticky}}.legal__aside strong{color:var(--ink);font-family:var(--font-sans);font-size:var(--t-small)}.legal__aside a{color:var(--accent-text);word-break:break-word}.legal__body{max-width:74ch}.legal__body section{margin-bottom:var(--s-7)}.legal__body h2{margin-bottom:var(--s-4);letter-spacing:-.02em;font-size:1.375rem}.legal__body p,.legal__body li{color:var(--ink-2);font-size:1rem}.legal__body p+p{margin-top:var(--s-4)}.legal__body ul{gap:var(--s-3);margin-top:var(--s-4);display:grid}.legal__body ul li{gap:var(--s-3);display:flex}.legal__body ul li:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:5px;height:5px;margin-top:10px}.legal__body code{border:1px solid var(--line);border-radius:var(--radius-1);background:var(--bg-2);font-family:var(--font-mono);padding:2px 6px;font-size:.9em}.legal__callout{padding:var(--s-5);border:1px solid var(--line-2);border-left:2px solid var(--accent);border-radius:var(--radius-2);background:var(--bg-1)}.table-wrap{margin-top:var(--s-4);border:1px solid var(--line);border-radius:var(--radius-2);overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;min-width:640px;font-size:var(--t-small)}.legal-table th,.legal-table td{padding:var(--s-4);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.legal-table th{background:var(--bg-2);color:var(--ink);font-weight:560}.legal-table td{color:var(--ink-2)}.legal-table tr:last-child td{border-bottom:0}.details-grid{gap:var(--s-5);display:grid}@media (width>=900px){.details-grid{gap:var(--s-6);grid-template-columns:repeat(2,minmax(0,1fr))}}.panel{padding:var(--s-6);border:1px solid var(--line);border-radius:var(--radius-2);background:var(--bg-1)}.dl{margin-top:var(--s-5);gap:0;display:grid}.dl>div{gap:var(--s-1);padding-block:var(--s-4);border-bottom:1px solid var(--line);display:grid}.dl>div:last-child{border-bottom:0}.dl dt{color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;font-size:12px}.dl dd{font-size:var(--t-small);margin:0}.dl dd a:hover{color:var(--accent-text)}@media (width>=560px){.dl>div{gap:var(--s-5);grid-template-columns:200px minmax(0,1fr);align-items:baseline}}.license{gap:var(--s-2);padding-block:var(--s-5);border-bottom:1px solid var(--line);display:grid}.license:last-child{border-bottom:0}.license span{color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.16em;font-size:11px}.license p{color:var(--ink-2);font-size:var(--t-small)}.contact-layout{gap:var(--s-8);display:grid}@media (width>=1000px){.contact-layout{gap:var(--s-9);grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:start}}.form-panel{padding:var(--s-6);border:1px solid var(--line-2);border-radius:var(--radius-3);background:var(--bg-1)}@media (width>=700px){.form-panel{padding:var(--s-7)}}.cookie{left:var(--gutter);right:var(--gutter);bottom:var(--s-4);z-index:var(--z-toast);gap:var(--s-4);max-width:620px;padding:var(--s-5);border:1px solid var(--line-2);border-radius:var(--radius-3);background:color-mix(in srgb, var(--bg-2) 96%, transparent);-webkit-backdrop-filter:blur(18px);animation:cookie-in var(--d-slow) var(--ease);margin-inline:auto;display:grid;position:fixed;box-shadow:0 24px 60px #0000008c}@keyframes cookie-in{0%{opacity:0;transform:translateY(16px)}}.cookie strong{margin-bottom:var(--s-2);font-size:var(--t-small);display:block}.cookie p{color:var(--ink-2);font-size:13px;line-height:1.55}.cookie a{color:var(--accent-text);text-underline-offset:2px;text-decoration:underline}.cookie__actions{gap:var(--s-3);flex-wrap:wrap;display:flex}.cookie__actions .btn{flex:180px;min-height:46px}.empty{gap:var(--s-3);padding:var(--s-8) var(--s-6);border:1px dashed var(--line-2);border-radius:var(--radius-2);background:var(--bg-1);justify-items:start;display:grid}.empty p{color:var(--ink-2);font-size:var(--t-small)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:var(--s-2);left:var(--s-2);z-index:var(--z-toast);padding:var(--s-3) var(--s-4);border-radius:var(--radius-1);background:var(--accent);color:#fff;font-size:var(--t-small);transition:transform var(--d) var(--ease);font-weight:560;position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.stack{gap:var(--s-5);display:grid}.stack--tight{gap:var(--s-3)}.divider{background:var(--line);height:1px}.dl-search{align-items:center;gap:var(--s-3);width:100%;min-height:52px;padding-inline:var(--s-4);border:1px solid var(--line-2);border-radius:var(--radius-2);background:var(--bg-1);color:var(--ink-3);transition:border-color var(--d) var(--ease), background var(--d) var(--ease);display:flex}.dl-search:focus-within{border-color:var(--line-3);background:var(--bg-2);color:var(--ink)}.dl-search input{width:100%;height:50px;color:var(--ink);background:0 0;border:0;outline:none;font-size:1rem}.dl-search input::placeholder{color:var(--ink-3)}button.chip{align-items:center;gap:var(--s-2);min-height:38px;padding-inline:var(--s-4);transition:border-color var(--d) var(--ease), background var(--d) var(--ease), color var(--d) var(--ease);display:inline-flex}button.chip:hover{border-color:var(--line-3);color:var(--ink)}button.chip.is-active{border-color:var(--accent);background:var(--accent-dim);color:var(--ink)}button.chip span{color:var(--ink-3)}button.chip.is-active span{color:var(--accent-text)}.dl-summary{margin-top:var(--s-6);color:var(--ink-3);font-size:var(--t-small)}.dl-list{margin-top:var(--s-4);border-top:1px solid var(--line);gap:0;display:grid}.dl-item{gap:var(--s-4);padding-block:var(--s-5);border-bottom:1px solid var(--line);transition:background var(--d) var(--ease);align-items:center;display:grid}.dl-item:hover{background:var(--bg-1)}.dl-item h3{margin-top:var(--s-2);letter-spacing:-.01em;font-size:1.0625rem;font-weight:500;line-height:1.35}.dl-item .btn{justify-self:start;min-height:44px}.dl-note{max-width:62ch;margin-top:var(--s-3);padding-left:var(--s-3);border-left:2px solid var(--warn);color:var(--ink-3);font-size:13px;line-height:1.5}@media (width>=760px){.dl-item{gap:var(--s-6);grid-template-columns:minmax(0,1fr) auto}.dl-item .btn{justify-self:end}}.dl-more{align-items:center;gap:var(--s-4);margin-top:var(--s-6);color:var(--ink-3);font-size:var(--t-small);flex-wrap:wrap;display:flex}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.hero__media{display:none}}@media print{body{color:#000;background:#fff}.site-header,.cookie,.cta-band,.anchors{display:none}}
