@font-face{font-family:Roboto;src:url(/fonts/roboto-cyrillic-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto;src:url(/fonts/roboto-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;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:Roboto;src:url(/fonts/roboto-cyrillic-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto;src:url(/fonts/roboto-latin-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;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:Roboto;src:url(/fonts/roboto-cyrillic-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto;src:url(/fonts/roboto-latin-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;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;src:url(/fonts/jetbrains-mono-cyrillic-wght-normal.woff2)format("woff2-variations"),url(/fonts/jetbrains-mono-cyrillic-wght-normal.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap;unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-wght-normal.woff2)format("woff2-variations"),url(/fonts/jetbrains-mono-latin-wght-normal.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap;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:Roboto;src:url(/fonts/roboto-latin-ext-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+20A0-20AB,U+20AD-20C0}@font-face{font-family:Roboto;src:url(/fonts/roboto-latin-ext-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+20A0-20AB,U+20AD-20C0}@font-face{font-family:Roboto;src:url(/fonts/roboto-latin-ext-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+20A0-20AB,U+20AD-20C0}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-ext-wght-normal.woff2)format("woff2-variations"),url(/fonts/jetbrains-mono-latin-ext-wght-normal.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap;unicode-range:U+20A0-20AB,U+20AD-20C0}:root{--graphite-1000:#08090b;--graphite-950:#0b0d0f;--graphite-900:#111417;--graphite-850:#171b1f;--graphite-800:#1e2328;--graphite-750:#242a30;--graphite-700:#2a3138;--graphite-600:#3a424a;--graphite-500:#646e78;--graphite-400:#8b959e;--graphite-300:#b3bcc4;--graphite-100:#eceff1;--paper-0:#fff;--paper-50:#f7f7f7;--paper-100:#eef0f1;--paper-200:#e1e4e6;--paper-300:#c9cdd1;--ink-900:#0d0d0d;--ink-700:#404040;--ink-500:#5c5c5c;--ink-400:#8c8c8c;--ink-300:#a6a6a6;--green-900:#034429;--green-800:#015a35;--green-700:#016e41;--green-600:#0a8a53;--green-500:#12a462;--green-400:#2fc27f;--green-300:#5ed79c;--green-200:#a6ebc8;--green-100:#d3e8dc;--green-50:#e9f3ee;--green-a12:#016e411f;--green-a24:#016e413d;--yellow-400:#faf02b;--yellow-a16:#faf02b29;--red-400:#ff6b6b;--red-700:#c62828;--font-sans:"Roboto", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-heading:var(--font-sans);--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--fs-display:clamp(2.25rem, 1.6rem + 2.8vw, 4rem);--fs-h1:clamp(2rem, 1.6rem + 1.7vw, 3rem);--fs-h2:clamp(1.625rem, 1.4rem + 1vw, 2.25rem);--fs-h3:clamp(1.1875rem, 1.1rem + .4vw, 1.375rem);--fs-h4:1.125rem;--fs-lead:clamp(1.0625rem, 1rem + .3vw, 1.25rem);--fs-body:1rem;--fs-small:.875rem;--fs-micro:.8125rem;--lh-tight:1.1;--lh-heading:1.2;--lh-body:1.6;--lh-ui:1.35;--tracking-display:-.025em;--tracking-heading:-.015em;--tracking-label:.06em;--fw-regular:400;--fw-medium:500;--fw-semibold:700;--fw-bold:700;--measure:68ch;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--section-y:clamp(4.5rem, 3rem + 6vw, 8.5rem);--section-y-sm:clamp(3rem, 2.2rem + 3.4vw, 5rem);--container:1200px;--container-wide:1440px;--container-text:720px;--gutter:clamp(1rem, .6rem + 1.8vw, 2rem);--grid-gap:clamp(1rem, .6rem + 1.6vw, 2rem);--grid-cols:12;--header-h:76px;--header-h-mobile:64px;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-pill:999px;--border-w:1px;--shadow-sm:0 1px 2px #0d0d0d0f;--shadow-md:0 1px 2px #0d0d0d0f, 0 6px 16px -6px #0d0d0d1f;--shadow-lg:0 2px 4px #0d0d0d0f, 0 16px 40px -12px #0d0d0d33;--shadow-light-md:var(--shadow-md);--glow-green:0 0 0 0 transparent;--inset-top:0 0 0 0 transparent;--z-base:0;--z-raised:10;--z-sticky:100;--z-overlay:200;--z-drawer:210;--z-cookie:300;--z-modal:400;--z-toast:500;--dur-instant:80ms;--dur-fast:.15s;--dur-base:.2s;--dur-slow:.32s;--dur-flow:0s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-in:cubic-bezier(.55, 0, 1, .45);--reveal-shift:8px;--bg:var(--paper-0);--bg-alt:var(--paper-50);--surface:var(--paper-0);--surface-hover:var(--paper-50);--surface-sunken:var(--paper-100);--surface-tint:var(--green-50);--border:var(--paper-200);--border-subtle:var(--paper-100);--border-strong:var(--paper-300);--border-input:var(--ink-400);--text:var(--ink-900);--text-secondary:var(--ink-700);--text-muted:var(--ink-500);--text-on-accent:var(--paper-0);--accent:var(--green-700);--accent-hover:var(--green-800);--accent-soft:var(--green-50);--brand:var(--green-700);--link:var(--green-700);--link-hover:var(--green-900);--highlight:var(--yellow-400);--danger:var(--red-700);--focus-ring:var(--green-700);--grid-line:transparent;--grid-line-strong:transparent;--flow-line:var(--green-700);--btn-h:48px;--btn-h-sm:40px;--btn-px:1.5rem;--btn-radius:var(--radius-sm);--btn-primary-bg:var(--green-700);--btn-primary-fg:var(--paper-0);--btn-primary-bg-hover:var(--green-800);--btn-secondary-border:var(--ink-900);--btn-secondary-fg:var(--ink-900);--card-bg:var(--surface);--card-border:var(--border);--card-radius:var(--radius-md);--card-pad:clamp(1.25rem, 1rem + 1vw, 2rem);--input-h:48px;--input-bg:var(--paper-0);--input-border:var(--border-input);--input-radius:var(--radius-sm);--header-bg:#fffffff5;--footer-bg:var(--graphite-900)}.theme-light{--bg:var(--paper-50);--surface:var(--paper-0);color:var(--text);background-color:var(--bg)}.theme-dark{--bg:var(--graphite-900);--bg-alt:var(--graphite-950);--surface:var(--graphite-850);--surface-hover:var(--graphite-800);--surface-sunken:var(--graphite-1000);--surface-tint:var(--graphite-850);--border:var(--graphite-700);--border-subtle:var(--graphite-750);--border-strong:var(--graphite-600);--border-input:var(--graphite-500);--text:var(--graphite-100);--text-secondary:var(--graphite-300);--text-muted:var(--graphite-400);--text-on-accent:var(--graphite-950);--accent:var(--green-400);--accent-hover:var(--green-300);--accent-soft:#2fc27f1f;--link:var(--green-300);--link-hover:var(--graphite-100);--danger:var(--red-400);--focus-ring:var(--yellow-400);--flow-line:var(--green-400);--btn-primary-bg:var(--green-400);--btn-primary-fg:var(--graphite-950);--btn-primary-bg-hover:var(--green-300);--btn-secondary-border:var(--graphite-500);--btn-secondary-fg:var(--graphite-100);--input-bg:var(--graphite-950);color-scheme:dark;color:var(--text);background-color:var(--bg)}.theme-brand{--bg:var(--green-900);--surface:var(--green-800);--border:#ffffff29;--border-strong:#ffffff52;--text:var(--paper-0);--text-secondary:#b9dcc9;--text-muted:#b9dcc9;--accent:var(--yellow-400);--link:var(--paper-0);--link-hover:var(--yellow-400);--focus-ring:var(--yellow-400);--btn-primary-bg:var(--paper-0);--btn-primary-fg:var(--green-900);--btn-primary-bg-hover:var(--green-50);--btn-secondary-border:#ffffff80;--btn-secondary-fg:var(--paper-0);color:var(--text);background-color:var(--bg)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:calc(var(--header-h) + var(--space-4));color-scheme:light}body{background-color:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-regular);text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}h1,h2,.h1,.h2{font-family:var(--font-heading);font-weight:var(--fw-bold);letter-spacing:var(--tracking-heading);line-height:var(--lh-heading);text-wrap:balance}h1,.h1{font-size:var(--fs-h1)}h2,.h2{font-size:var(--fs-h2)}h3,.h3{font-family:var(--font-heading);font-size:var(--fs-h3);font-weight:var(--fw-medium);letter-spacing:-.005em;text-wrap:balance;line-height:1.3}h4,.h4{font-size:var(--fs-h4);font-weight:var(--fw-medium);line-height:1.35}.display{font-family:var(--font-heading);font-size:var(--fs-display);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--tracking-display);text-wrap:balance}.lead{font-size:var(--fs-lead);color:var(--text-secondary);text-wrap:pretty;max-width:60ch;line-height:1.55}p{text-wrap:pretty}small,.small{font-size:var(--fs-small)}.eyebrow{font-family:var(--font-sans);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--accent)}code,kbd,samp,pre,.mono{font-family:var(--font-mono);font-size:.9em}pre{overflow-x:auto}a{color:var(--link);text-underline-offset:.2em;transition-property:color,text-decoration-color;transition-duration:var(--dur-fast);transition-timing-function:var(--ease-out);text-decoration:underline 1px}a:hover{color:var(--link-hover)}img,svg,video{max-width:100%;height:auto;display:block}img{outline-offset:-1px;outline:1px solid #0000000f}.theme-dark img{outline-color:#ffffff14}hr{border:0;border-top:var(--border-w) solid var(--border);margin:var(--space-8) 0}::selection{background:var(--yellow-400);color:var(--ink-900)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-xs)}.num,.price,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{left:var(--space-4);z-index:var(--z-toast);background:var(--ink-900);color:var(--paper-0);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-weight:var(--fw-medium);position:absolute;top:-100px}.skip-link:focus{top:var(--space-4)}.container{width:100%;max-width:calc(var(--container) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y);background-color:var(--bg);color:var(--text)}.section.alt{background-color:var(--bg-alt)}.bg-grid{background-image:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.theme-dark,.theme-brand,.theme-light{--card-bg:var(--surface);--card-border:var(--border);--input-border:var(--border-input)}[hidden]{display:none!important}main{display:block}main:focus{outline:none}ul[class],ol[class],nav ul,nav ol{margin:0;padding:0;list-style:none}.muted{color:var(--text-muted)}.i{flex:none;width:20px;height:20px}.code,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.875em}.label{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--text-muted)}.prose{max-width:var(--measure)}.prose>*+*{margin-top:var(--space-4)}.prose h2{margin-top:var(--space-12);font-size:var(--fs-h3)}.prose h3{margin-top:var(--space-8);font-size:var(--fs-h4);font-weight:var(--fw-medium)}.prose ol{padding-left:1.25em}.prose ul{padding-left:0;list-style:none}.prose ul>li{padding-left:var(--space-5);position:relative}.prose ul>li:before{content:"";background:var(--accent);width:10px;height:2px;position:absolute;top:.75em;left:0}.prose li+li{margin-top:var(--space-2)}.prose table{border-collapse:collapse;width:100%;font-size:var(--fs-small)}@media (width<=640px){.prose table{display:block;overflow-x:auto}.prose th,.prose td{min-width:9rem}}.prose th,.prose td{text-align:left;vertical-align:top;padding:var(--space-3) var(--space-3) var(--space-3) 0;border-bottom:1px solid var(--border)}.prose thead th{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--text-muted);border-bottom:1px solid var(--text)}.prose strong{font-weight:var(--fw-medium);color:var(--text)}.ph{font-family:var(--font-mono);background:var(--yellow-400);color:var(--ink-900);border-radius:var(--radius-xs);overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 4px;font-size:.8125rem;line-height:1.5}.badge-draft{margin-left:var(--space-2);font-size:.75rem;line-height:1.6;font-weight:var(--fw-medium);color:var(--ink-900);background:var(--yellow-400);border-radius:var(--radius-xs);white-space:nowrap;vertical-align:.1em;padding:0 6px;display:inline-block}.btn{--_bg:transparent;--_fg:var(--text);--_bd:transparent;justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--btn-h);padding:0 var(--btn-px);border-radius:var(--btn-radius);border:1px solid var(--_bd);background:var(--_bg);color:var(--_fg);font:var(--fw-medium) .9375rem/1.2 var(--font-sans);cursor:pointer;text-align:center;transition-property:background-color,border-color,color;transition-duration:var(--dur-fast);transition-timing-function:var(--ease-out);text-decoration:none;display:inline-flex}.btn-primary{--_bg:var(--btn-primary-bg);--_fg:var(--btn-primary-fg)}.btn-primary:hover{--_bg:var(--btn-primary-bg-hover);color:var(--btn-primary-fg)}.btn-secondary{--_bd:var(--btn-secondary-border);--_fg:var(--btn-secondary-fg)}.btn-secondary:hover{--_bg:var(--btn-secondary-fg);--_bd:var(--btn-secondary-fg);--_fg:var(--bg);color:var(--bg)}.btn-sm{min-height:var(--btn-h-sm);padding:0 var(--space-4);font-size:var(--fs-small)}.btn .i{width:18px;height:18px}.linklike{font:inherit;color:inherit;cursor:pointer;text-underline-offset:.2em;background:0 0;border:0;padding:0;text-decoration:underline 1px}.linklike:hover{color:var(--text)}.icon-btn{border-radius:var(--radius-sm);border:1px solid var(--border);width:44px;height:44px;color:var(--text);cursor:pointer;transition-property:background-color,border-color;transition-duration:var(--dur-fast);background:0 0;flex:none;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--bg-alt);border-color:var(--border-strong)}.site-header{z-index:var(--z-sticky);background:var(--header-bg);border-bottom:1px solid var(--border);position:sticky;top:0}.header-row{align-items:center;gap:var(--space-8);height:var(--header-h);display:flex}.brand{flex:none;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.brand img{outline:0;width:107px;height:35px}.nav{margin-left:auto}.nav ul{gap:var(--space-1);display:flex}.nav a{min-height:44px;color:var(--text-secondary);white-space:nowrap;border-radius:var(--radius-sm);transition-property:color,background-color;transition-duration:var(--dur-fast);align-items:center;padding:0 .625rem;font-size:.9375rem;text-decoration:none;display:inline-flex}.nav a:hover{color:var(--text);background:var(--bg-alt)}.nav a[aria-current=page]{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent);border-radius:0}.header-cta{flex:none}.burger{display:none}.drawer{border:0;border-left:1px solid var(--border);background:var(--bg);width:min(360px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;color:var(--text);margin:0 0 0 auto;padding:0}.drawer[open]{animation:drawer-in var(--dur-slow) var(--ease-out)}.drawer.is-closing{animation:drawer-out var(--dur-fast) var(--ease-in) forwards}.drawer::backdrop{background:#0d0d0d73}@keyframes drawer-in{0%{transform:translate(100%)}}@keyframes drawer-out{to{transform:translate(100%)}}.drawer-inner{gap:var(--space-6);min-height:100%;padding:var(--space-3) var(--space-4) var(--space-8);flex-direction:column;display:flex}.drawer-head{justify-content:space-between;align-items:center;min-height:52px;display:flex}.drawer-head img{outline:0;width:92px;height:30px}.drawer-nav a{min-height:52px;color:var(--text-secondary);border-bottom:1px solid var(--border);align-items:center;font-size:1.125rem;text-decoration:none;display:flex}.drawer-nav a:hover,.drawer-nav a[aria-current=page]{color:var(--text)}.drawer-nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--accent);font-weight:var(--fw-medium)}.drawer-cta{width:100%}.drawer-contacts{gap:var(--space-3);font-size:var(--fs-small);color:var(--text-secondary);display:grid}.drawer-contacts li{align-items:center;gap:var(--space-3);display:flex}.drawer-contacts .i{color:var(--accent)}.crumbs{padding-top:var(--space-6)}.crumbs ol{gap:var(--space-2);font-size:var(--fs-small);color:var(--text-muted);flex-wrap:wrap;display:flex}.crumbs li+li:before{content:"/";content:"/" / "";margin-right:var(--space-2);color:var(--text-muted)}.crumbs a{color:var(--text-muted)}.crumbs a:hover{color:var(--text)}.section-sm{padding-block:var(--section-y-sm)}.section-head{gap:var(--space-3);flex-direction:column;max-width:46rem;margin-bottom:clamp(1.75rem,1.2rem + 2vw,3rem);display:flex}.section-head.has-rule{max-width:none;padding-bottom:var(--space-6);border-bottom:2px solid var(--text)}.section-head.has-rule>*{max-width:46rem}.section-intro{color:var(--text-secondary)}.section-foot{margin-top:var(--space-8);gap:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.note{margin-top:var(--space-6);font-size:var(--fs-small);color:var(--text-muted);max-width:var(--measure)}.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(2rem,1rem + 4vw,5rem);display:grid}.h-block{margin-bottom:var(--space-6)}.page-hero{padding-block:var(--space-8) var(--section-y-sm);border-bottom:1px solid var(--border)}.page-hero .container{gap:var(--space-5);flex-direction:column;display:flex}.page-hero h1{max-width:24ch}.hero{padding-block:clamp(3rem,2rem + 4.5vw,6rem) clamp(3.5rem,2rem + 5vw,7rem)}.hero .container{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:clamp(2.5rem,1rem + 5vw,6rem);display:grid}.hero-copy{gap:var(--space-6);padding-top:var(--space-4);flex-direction:column;display:flex}.hero-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.facts{gap:var(--space-6);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.facts dt{font-size:var(--fs-micro);color:var(--text-muted);margin-bottom:var(--space-1)}.facts dd{font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--text);line-height:1.4}.scheme{background:var(--surface-tint);border-radius:var(--radius-lg);padding:clamp(1.5rem,1rem + 2vw,2.5rem)}.scheme figcaption{font-size:var(--fs-small);color:var(--text-secondary);margin-bottom:var(--space-6)}.scheme figcaption b{color:var(--text);font-size:var(--fs-h4);font-weight:var(--fw-medium);margin-bottom:var(--space-1);display:block}.steps{position:relative}.steps:before{content:"";background:var(--green-100);width:2px;position:absolute;top:22px;bottom:22px;left:21px}.steps .step{gap:var(--space-4);grid-template-columns:44px minmax(0,1fr);align-items:start;display:grid;position:relative}.steps .step+.step{margin-top:var(--space-5)}.step-icon{background:var(--paper-0);border:2px solid var(--accent);width:44px;height:44px;color:var(--accent);border-radius:50%;place-items:center;display:grid;position:relative}.step-icon .i{width:20px;height:20px}.step.mark .step-icon:after{content:"";background:var(--highlight);border:2px solid var(--surface-tint);border-radius:50%;width:12px;height:12px;position:absolute;top:-3px;right:-3px}.steps .step-title{color:var(--text);font-size:1rem;font-weight:var(--fw-medium);padding-top:2px;line-height:1.35}.steps p{font-size:var(--fs-small);color:var(--text-secondary);margin-top:2px;line-height:1.45}.sys{margin-top:var(--space-2);font-size:.75rem;font-weight:var(--fw-medium);color:var(--accent);background:var(--paper-0);border:1px solid var(--green-100);border-radius:var(--radius-xs);padding:1px 6px;display:inline-block}.chain{gap:var(--space-3) var(--space-2);background:var(--surface-tint);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;padding:clamp(1.25rem,1rem + 1.5vw,2rem);display:flex}.chain li{align-items:center;gap:var(--space-2);display:inline-flex}.chain li span{min-height:36px;padding:0 var(--space-3);background:var(--paper-0);border:2px solid var(--accent);border-radius:var(--radius-sm);font-weight:var(--fw-medium);font-size:var(--fs-small);color:var(--text);align-items:center;display:inline-flex}.chain li+li:before{content:"";background:var(--green-100);width:16px;height:2px}.directions{gap:0 var(--grid-gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.directions li{padding:var(--space-6) 0;border-bottom:1px solid var(--border);gap:var(--space-3);grid-template-columns:2.25rem minmax(0,1fr);display:grid}.directions .n{font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--accent);font-variant-numeric:tabular-nums;padding-top:3px}.directions h3{font-size:var(--fs-h4);margin-bottom:var(--space-2)}.directions p{color:var(--text-secondary);font-size:.9375rem;line-height:1.5}.pricelists{gap:clamp(2rem, 1rem + 3vw, 3.5rem) var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.pl-item{scroll-margin-top:calc(var(--header-h) + var(--space-4));align-self:start}.pl{border-collapse:collapse;width:100%;font-size:.9375rem}.pl-title{font-size:var(--fs-h3);margin-bottom:var(--space-1)}.pl-short{color:var(--text-secondary);margin-bottom:var(--space-4);max-width:60ch;font-size:.9375rem;line-height:1.5}.pl thead th{font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--text-muted);text-align:left;padding:var(--space-2) 0;border-bottom:1px solid var(--text)}.pl thead th:last-child,.pl td{text-align:right}.pl tbody th{font-weight:var(--fw-regular);text-align:left;color:var(--text);padding:.75rem var(--space-4) .75rem 0;border-bottom:1px solid var(--border);vertical-align:top}.pl .role-desc{color:var(--text-muted);margin-top:2px;font-size:.8125rem;line-height:1.45;display:block}.pl td{border-bottom:1px solid var(--border);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:var(--fw-medium);vertical-align:top;padding:.75rem 0}.pl td small{font-weight:var(--fw-regular);color:var(--text-muted);font-size:var(--fs-micro)}.pl td.estimate{white-space:normal}.pl-includes{margin-top:var(--space-3);font-size:var(--fs-small);color:var(--text-secondary)}.pl-includes summary{align-items:center;gap:var(--space-2);cursor:pointer;min-height:44px;color:var(--link);font-weight:var(--fw-medium);display:inline-flex}.pl-includes summary::marker{color:var(--accent)}.pl-includes .dash{font-size:var(--fs-small);padding-bottom:var(--space-2)}.pl-item .btn{margin-top:var(--space-4)}.pl-foot{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:var(--bg-alt);border-radius:var(--radius-md);font-size:var(--fs-small);color:var(--text-secondary);flex-wrap:wrap;margin-top:clamp(2rem,1.4rem + 2vw,3rem);display:flex}.section.alt .pl-foot{background:var(--bg)}.vat-line{padding:var(--space-4) var(--space-5);background:var(--bg-alt);border-radius:var(--radius-md);font-size:var(--fs-small);color:var(--text-secondary);align-self:flex-start}.anchor-chips{gap:var(--space-2);scroll-snap-type:x proximity;padding-bottom:var(--space-1);display:flex;overflow-x:auto}.anchor-chips a{scroll-snap-align:start;min-height:40px;padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--fs-small);transition-property:color,border-color;transition-duration:var(--dur-fast);flex:none;align-items:center;text-decoration:none;display:inline-flex}.anchor-chips a:hover{color:var(--text);border-color:var(--text)}.group+.group{margin-top:var(--section-y-sm)}.cards{gap:var(--grid-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{gap:var(--space-3);background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:var(--card-pad);transition-property:border-color;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out);flex-direction:column;display:flex;position:relative}.card:has(.card-link):hover{border-color:var(--text)}.card h2,.card h3{font-size:var(--fs-h3)}.card-text{color:var(--text-secondary);font-size:.9375rem;line-height:1.55}.card-block{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.dash{gap:var(--space-2);color:var(--text-secondary);font-size:.9375rem;display:grid}.dash li{padding-left:var(--space-5);position:relative}.dash li:before{content:"";background:var(--accent);width:10px;height:2px;position:absolute;top:.75em;left:0}.stack-line{padding-top:var(--space-4);font-size:var(--fs-small);color:var(--text-muted);margin-top:auto}.project-client{font-size:var(--fs-small);color:var(--text-secondary)}.project-client a{z-index:1;position:relative}.card-link{align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--fs-small);font-weight:var(--fw-medium);display:inline-flex}.card-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.card-link:focus-visible{outline:none}.card-link:focus-visible:after{outline:2px solid var(--focus-ring);outline-offset:3px}.card-link .i{width:16px;height:16px;transition:transform var(--dur-fast) var(--ease-out)}.card:hover .card-link .i{transform:translate(3px)}.timeline{gap:var(--space-4);grid-template-columns:repeat(7,minmax(0,1fr));display:grid;position:relative}.timeline:before{content:"";background:var(--green-100);height:2px;position:absolute;top:15px;left:16px;right:0}.tl-step{gap:var(--space-4);flex-direction:column;display:flex;position:relative}.tl-num{border:2px solid var(--accent);background:var(--bg);width:32px;height:32px;color:var(--accent);font-size:var(--fs-small);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;display:grid;position:relative}.section.alt .tl-num{background:var(--bg-alt)}.tl-step h3{font-size:1rem;font-weight:var(--fw-medium);margin-bottom:var(--space-2);line-height:1.35}.tl-step p{font-size:var(--fs-small);color:var(--text-secondary)}.timeline.is-full{grid-template-columns:1fr;gap:0;max-width:52rem}.timeline.is-full:before{width:2px;height:auto;inset:16px auto 16px 15px}.timeline.is-full .tl-step{gap:var(--space-6);padding-bottom:var(--space-10);flex-direction:row}.timeline.is-full .tl-num{flex:none}.timeline.is-full .tl-body{gap:var(--space-2);flex-direction:column;padding-top:4px;display:flex}.timeline.is-full h3{font-size:var(--fs-h3)}.timeline.is-full p{font-size:var(--fs-body)}.deliverable{padding:var(--space-3) var(--space-4);border-left:2px solid var(--accent);background:var(--surface-tint);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.deliverable .label{margin-bottom:var(--space-1);color:var(--accent);display:block}.stack-grid{grid-template-columns:repeat(auto-fit,minmax(140px,180px));padding:1px 0 0 1px;display:grid}.stack-cell{justify-content:center;align-items:center;gap:var(--space-3);text-align:center;min-height:120px;padding:var(--space-4) var(--space-3);border:1px solid var(--border);color:var(--ink-700);background:var(--bg);flex-direction:column;margin:-1px 0 0 -1px;display:flex}.stack-grid.is-compact{grid-template-columns:repeat(8,minmax(0,1fr))}@media (width<=960px){.stack-grid.is-compact{grid-template-columns:repeat(4,minmax(0,1fr))}}.stack-cell.is-text .stack-name{font-weight:var(--fw-medium);color:var(--text)}.stack-logo{place-items:center;height:28px;display:grid}.stack-logo svg{width:auto;max-width:96px;height:28px}.stack-name{font-size:var(--fs-small);color:var(--text-secondary);line-height:1.35}.stack-groups{gap:var(--space-16);display:grid}.stack-group h2{margin-bottom:var(--space-5);font-size:var(--fs-h3)}.stack-text{margin-top:var(--space-4);font-size:var(--fs-small);color:var(--text-secondary)}.stack-text .label{margin-right:var(--space-2)}.attribution{margin-top:var(--space-12);color:var(--text-muted);max-width:var(--measure);font-size:.8125rem}.principles{gap:0 var(--grid-gap);counter-reset:none;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.principles li{padding:var(--space-5) 0;border-bottom:1px solid var(--border);gap:var(--space-3);grid-template-columns:2.25rem minmax(0,1fr);display:grid}.principles .n{font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--accent);font-variant-numeric:tabular-nums;padding-top:3px}.principles h3{font-size:var(--fs-h4);margin-bottom:var(--space-2)}.principles p{color:var(--text-secondary);font-size:.9375rem}.req-table-wrap{gap:var(--space-4);flex-direction:column;display:flex}.req-table{border-collapse:collapse;font-variant-numeric:tabular-nums;border-top:2px solid var(--text);width:100%}.req-table th,.req-table td{text-align:left;vertical-align:top;padding:var(--space-3) var(--space-4) var(--space-3) 0;border-bottom:1px solid var(--border)}.req-table tbody th{width:280px;font-weight:var(--fw-regular);font-size:var(--fs-small);color:var(--text-muted)}.req-table thead th{font-size:var(--fs-micro);color:var(--text-muted);font-weight:var(--fw-medium);border-bottom-color:var(--text)}.req-table td{color:var(--text);overflow-wrap:anywhere}.codes-table th.code{width:6rem;font-size:var(--fs-small);color:var(--text)}.head-row{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.copy-row{align-items:center;gap:var(--space-3);display:flex}.copy-status{font-size:var(--fs-small);color:var(--text-muted)}.it-codes{gap:var(--space-4);flex-direction:column;display:flex}.mini-req{border-top:2px solid var(--text);grid-template-columns:minmax(9rem,max-content) minmax(0,1fr);margin:0;display:grid}.mini-req dt,.mini-req dd{border-bottom:1px solid var(--border);padding:.75rem 0}.mini-req dt{color:var(--text-muted);font-size:var(--fs-small);padding-right:var(--space-5)}.mini-req dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.cta{padding-block:clamp(3rem,2rem + 4vw,5.5rem)}.cta .container{gap:var(--space-8);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.cta h2{max-width:24ch}.cta p{color:var(--text-secondary);margin-top:var(--space-3);max-width:52ch}.cta .actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.contact-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(2rem,1rem + 4vw,5rem);display:grid}.contact-list{border-top:2px solid var(--text);display:grid}.contact-list li{gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border);align-items:flex-start;display:flex}.contact-list .i{color:var(--accent);margin-top:2px}.contact-list .label{margin-bottom:2px;display:block}.contact-value{font-size:1.125rem;font-weight:var(--fw-medium);overflow-wrap:anywhere}.contact-actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.form-wrap{background:var(--paper-0);border:1px solid var(--border);border-radius:var(--radius-xl);padding:clamp(1.25rem,.8rem + 2vw,2.5rem);container-type:inline-size}.form{gap:var(--space-5);flex-direction:column;display:flex}.form-note{color:var(--text-secondary);font-size:var(--fs-small)}.field-row{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@container (width<=560px){.field-row{grid-template-columns:1fr}}.field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.field label{font-size:var(--fs-small);color:var(--text-secondary)}.req-mark{color:var(--danger)}.field input[type=text],.field input[type=email],.field input[type=tel],.field textarea,.field select{width:100%;min-height:var(--input-h);padding:.75rem var(--space-4);font:inherit;color:var(--text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);transition-property:border-color,box-shadow;transition-duration:var(--dur-fast);font-size:1rem}.field select{padding-block:0}.field textarea{resize:vertical;min-height:140px;line-height:1.5}.field ::placeholder{color:var(--ink-400);opacity:1}.field select:has(option[value=""]:checked){color:var(--ink-400)}.field select option{color:var(--text)}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{border-color:var(--accent);outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:var(--input-radius)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--danger)}.field-hint{color:var(--text-muted);font-size:.8125rem}.field-error{font-size:var(--fs-small);color:var(--danger);gap:var(--space-2);display:flex}.field-error:before{content:"!";background:var(--danger);width:1.1rem;height:1.1rem;color:var(--paper-0);font:700 .75rem/1 var(--font-sans);border-radius:50%;flex:none;place-items:center;margin-top:.15rem;display:inline-grid}.field-check{grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.field-check input{width:24px;height:24px;accent-color:var(--accent);cursor:pointer;margin:1px 12px 0 0}.field-check label{color:var(--text-secondary);cursor:pointer;line-height:1.5}.field-check .field-error{margin-top:var(--space-2);grid-column:1/-1}.hp{width:1px;height:1px;top:auto;left:-10000px;overflow:hidden;position:absolute!important}.form-summary{padding:var(--space-3) var(--space-4);border:1px solid var(--danger);border-radius:var(--radius-sm);color:var(--danger);font-size:var(--fs-small)}.form-failure{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--danger);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--fs-small);display:flex}.form-failure .i{color:var(--danger)}.form-failure-title{color:var(--text);font-weight:var(--fw-medium);margin-bottom:var(--space-1)}.form-actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.form-data-note{color:var(--text-muted);max-width:32rem;font-size:.8125rem}.btn-submit .spinner{display:none}.btn-submit.is-loading{pointer-events:none;opacity:.85}.btn-submit.is-loading .spinner{display:inline-flex}.btn-submit .spinner .i{width:16px;height:16px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-success{align-items:flex-start;gap:var(--space-4);padding-block:var(--space-6);flex-direction:column;display:flex}.form-success:focus{outline:none}.form-success .i{width:44px;height:44px;color:var(--accent)}.form-success p{color:var(--text-secondary)}.legal{padding-block:var(--space-8) var(--section-y)}.legal-grid{grid-template-columns:240px minmax(0,720px);gap:clamp(2rem,1rem + 4vw,4rem);display:grid}.legal-single{max-width:720px}.toc{top:calc(var(--header-h) + var(--space-6));font-size:var(--fs-small);align-self:start;position:sticky}.toc summary{font-weight:var(--fw-medium);cursor:pointer;align-items:center;min-height:44px;display:flex}.toc ol{gap:var(--space-2);margin-top:var(--space-3);display:grid}.toc a{color:var(--text-secondary);text-decoration:none}.toc a:hover{color:var(--text);text-decoration:underline}.legal-body{font-size:1rem;line-height:1.65}.legal-body h1{font-size:var(--fs-h1);margin-bottom:var(--space-3)}.legal-body h2{scroll-margin-top:calc(var(--header-h) + var(--space-4))}.site-footer{background:var(--footer-bg);padding-block:var(--space-16) var(--space-8);font-size:var(--fs-small);color:var(--text-secondary)}.footer-grid{gap:var(--space-12);grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);display:grid}.footer-brand{gap:var(--space-5);flex-direction:column;align-items:flex-start;display:flex}.footer-logo{display:inline-block}.footer-brand img{outline:0;width:122px;height:40px}.footer-nav{gap:0 var(--space-10);grid-template-columns:repeat(2,minmax(0,max-content));display:grid}.footer-nav a,.footer-group a{min-height:36px;color:var(--text-secondary);align-items:center;text-decoration:none;display:inline-flex}.footer-nav a:hover,.footer-group a:hover{color:var(--text);text-decoration:underline}.req-title{justify-content:space-between;align-items:baseline;gap:var(--space-4);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-strong);flex-wrap:wrap;display:flex}.req-title a{text-transform:none;letter-spacing:0;font-size:var(--fs-small)}.req dl{grid-template-columns:minmax(10rem,max-content) minmax(0,1fr);margin:0;display:grid}.req dt,.req dd{border-bottom:1px solid var(--border);padding:.625rem 0}.req dt{color:var(--text-muted);padding-right:var(--space-6)}.req dd{color:var(--text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.footer-bottom{justify-content:space-between;gap:var(--space-3);margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid var(--border);color:var(--text-muted);flex-wrap:wrap;font-size:.8125rem;display:flex}.footer-legal{gap:var(--space-2) var(--space-5);flex-wrap:wrap;display:flex}.footer-legal a,.footer-legal button{color:var(--text-muted);align-items:center;min-height:32px;display:inline-flex}.cookie{z-index:var(--z-cookie);left:var(--space-4);bottom:var(--space-4);width:min(420px, calc(100vw - 2 * var(--space-4)));max-height:calc(100dvh - var(--header-h) - 2 * var(--space-4));gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-md);background:var(--paper-0);border:1px solid var(--border);box-shadow:var(--shadow-lg);font-size:var(--fs-small);color:var(--text-secondary);animation:rise-in var(--dur-base) var(--ease-out) .4s both;flex-direction:column;display:flex;position:fixed;overflow-y:auto}.cookie-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.cookie-settings{gap:var(--space-4);flex-direction:column;align-items:flex-start;display:flex}.cookie fieldset{gap:var(--space-3);border:0;margin:0;padding:0;display:grid}.cookie-cat{gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.cookie-cat input{width:24px;height:24px;accent-color:var(--accent);margin:0}.cookie-cat b{color:var(--text);font-weight:var(--fw-medium)}@keyframes rise-in{0%{transform:translateY(calc(100% + var(--space-4)))}}.notfound{padding-block:var(--section-y)}.notfound .container{gap:var(--space-6);flex-direction:column;align-items:flex-start;display:flex}@media (width<=1180px){.nav{display:none}.brand{margin-right:auto}.burger{border-radius:var(--radius-sm);border:1px solid var(--border);width:44px;height:44px;color:var(--text);cursor:pointer;background:0 0;place-items:center;display:inline-grid}.burger .i{width:22px;height:22px}.header-row{gap:var(--space-3)}.timeline:not(.is-full){row-gap:var(--space-10);grid-template-columns:repeat(4,minmax(0,1fr))}.timeline:not(.is-full):before{display:none}}@media (width<=960px){.hero .container,.split,.contact-grid,.footer-grid,.cta .container{grid-template-columns:1fr}.footer-grid{gap:var(--space-10)}.directions,.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pricelists,.cards-2{grid-template-columns:1fr}.legal-grid{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}.toc{border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 var(--space-4);position:static}.toc ol{padding-bottom:var(--space-4)}}@media (width<=768px){.timeline:not(.is-full){grid-template-columns:1fr;row-gap:0}.timeline:not(.is-full) .tl-step{gap:var(--space-4);padding-bottom:var(--space-6);flex-direction:row}.timeline:not(.is-full) .tl-num{flex:none}.timeline:not(.is-full) .tl-body{padding-top:4px}.timeline:not(.is-full):before{width:2px;height:auto;display:block;inset:16px auto 16px 15px}.chain,.chain li{flex-direction:column;align-items:flex-start;gap:0}.chain li+li:before{width:2px;height:14px;margin-left:20px}}@media (width<=640px){.header-row{height:var(--header-h-mobile)}.brand img{width:92px;height:30px}.header-cta{display:none}.hero-actions .btn,.cta .actions .btn{flex:100%}.facts{gap:var(--space-3);grid-template-columns:1fr}.facts div{gap:var(--space-3);grid-template-columns:8.5rem minmax(0,1fr);display:grid}.facts dt{margin:0}.directions,.principles,.cards,.section-head{grid-template-columns:1fr}.section-head .btn{justify-self:start}.pl{font-size:var(--fs-small)}.pl-foot{flex-direction:column;align-items:stretch}.field-row{grid-template-columns:1fr}.form-actions .btn{width:100%}.stack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stack-cell{aspect-ratio:4/3.6;min-height:0;padding:var(--space-2);gap:var(--space-2)}.stack-name{font-size:.75rem}.req dl,.mini-req{grid-template-columns:1fr}.req dt,.mini-req dt{font-size:var(--fs-micro);border-bottom:0;padding-bottom:0}.req dd,.mini-req dd{padding-top:2px}.req-table,.req-table tbody,.req-table tr,.req-table th,.req-table td{width:100%;display:block}.req-table thead{display:none}.req-table tbody th{width:auto;font-size:var(--fs-micro);border-bottom:0;padding-bottom:0}.req-table td{padding-top:var(--space-1)}.codes-table th.code{width:auto}.head-row .btn,.copy-row{width:100%}.copy-row .btn{flex:1}.cookie{left:var(--space-2);right:var(--space-2);bottom:var(--space-2);width:auto}.cookie-actions .btn{flex:40%}.contact-actions .btn{flex:100%}}@media (width<=359px){.stack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.drawer[open],.drawer.is-closing,.cookie{animation:none}}@media print{.site-header,.cookie,.drawer,.cta,.skip-link{display:none!important}}.subsection{margin-top:clamp(3.5rem,2.5rem + 4vw,6rem)}.more{margin-top:var(--space-6)}.more-link{align-items:center;gap:var(--space-2);min-height:44px;font-weight:var(--fw-medium);display:inline-flex}.more-link .i{width:18px;height:18px;transition:transform var(--dur-fast) var(--ease-out)}.more-link:hover .i{transform:translate(3px)}.tag{margin-bottom:var(--space-3);padding:2px var(--space-2);font-size:var(--fs-micro);font-weight:var(--fw-medium);color:var(--accent);background:var(--surface-tint);border:1px solid var(--green-100);border-radius:var(--radius-xs);display:inline-block}.nf-links{gap:var(--space-2) var(--space-6);flex-wrap:wrap;display:flex}.nf-links a{align-items:center;min-height:44px;display:inline-flex}.hero .container.hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"copy scheme""facts scheme";row-gap:0}.hero-copy{grid-area:copy}.hero-scheme{grid-area:scheme}.hero-facts{grid-area:facts;align-self:start}.hero-facts .more-link{min-height:0}.page-hero{padding-block:var(--space-6) var(--space-12)}.page-hero.has-aside .container{gap:var(--space-6) clamp(2rem, 1rem + 4vw, 5rem);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;display:grid}.page-hero-main{gap:var(--space-5);flex-direction:column;display:flex}.page-hero-aside{padding:var(--space-5) var(--space-6);background:var(--bg-alt);border-radius:var(--radius-md)}.hero-aside-facts{gap:var(--space-4);display:grid}.hero-aside-facts dt{font-size:var(--fs-micro);color:var(--text-muted);margin-bottom:2px}.hero-aside-facts dd{font-size:var(--fs-small);color:var(--text-secondary)}.hero-aside-facts dd.num{font-size:var(--fs-h4);font-weight:var(--fw-medium);color:var(--text)}.stage-overview{font-size:var(--fs-small);gap:2px;display:grid}.stage-overview a{gap:var(--space-3);min-height:32px;color:var(--text-secondary);align-items:center;text-decoration:none;display:flex}.stage-overview a:hover{color:var(--text);text-decoration:underline}.stage-overview .n{color:var(--accent);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;width:1.75rem}.subnav{top:var(--header-h);z-index:calc(var(--z-sticky) - 1);background:var(--header-bg);border-bottom:1px solid var(--border);padding-block:var(--space-3);position:sticky}.services-list .group,.services-list .pl-item{scroll-margin-top:calc(var(--header-h) + 72px)}.services-list .group+.group{margin-top:clamp(3.5rem,2.5rem + 4vw,6rem)}.projects-grid{gap:var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-card.is-feature{grid-column:1/-1}.project-card.is-short .task{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.project-card.is-short.is-feature .task{-webkit-line-clamp:3;max-width:70ch}.projects-grid.is-full .project-card.is-feature .card-block{max-width:70ch}.card-link{margin-top:var(--space-2);align-self:flex-start}.timeline.is-full .tl-body{flex:1;min-width:0}.deliverable{width:100%}.form-summary-title{font-weight:var(--fw-medium);margin-bottom:var(--space-2)}.form-summary .dash{font-size:var(--fs-small)}.form-summary .dash a{color:var(--danger)}.form-summary:focus{outline:2px solid var(--focus-ring);outline-offset:2px}.form-success h3:focus{outline:none}.contact-info-col .contact-list{margin-bottom:var(--space-2)}.cookie-configure{min-height:40px;padding:0 var(--space-2);color:var(--link);font-size:var(--fs-small)}.cookie-actions{align-items:center}@media (width<=1180px){.directions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=960px){.hero .container.hero-grid{row-gap:var(--space-8);grid-template-columns:1fr;grid-template-areas:"copy""scheme""facts"}.hero-facts{margin-top:0}.page-hero.has-aside .container{grid-template-columns:1fr}.directions{grid-template-columns:repeat(2,minmax(0,1fr))}.principles,.projects-grid{grid-template-columns:1fr}}@media (width<=640px){.directions{grid-template-columns:1fr}.stack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stack-grid.is-compact{grid-template-columns:repeat(4,minmax(0,1fr))}.subnav{padding-block:var(--space-2)}.cookie{width:auto;padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));gap:var(--space-3);border-width:1px 0 0;border-radius:0;max-height:70dvh;font-size:.8125rem;bottom:0;left:0;right:0}.cookie-actions{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.cookie-actions .btn{width:100%;padding-inline:var(--space-2)}.cookie-configure{grid-column:1/-1;justify-self:start;min-height:32px;padding:0}}@media (prefers-reduced-motion:reduce){.cookie{animation:none}}.services-list{padding-top:var(--space-12)}@media (width<=1199px){.nav{display:none}.brand{margin-right:auto}.burger{border-radius:var(--radius-sm);border:1px solid var(--border);width:44px;height:44px;color:var(--text);cursor:pointer;background:0 0;place-items:center;display:inline-grid}.burger .i{width:22px;height:22px}.header-row{gap:var(--space-3)}}
