@font-face{font-family:'Geologica';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/geologica-cyrillic-ext-300-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Geologica';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/geologica-cyrillic-300-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Geologica';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/geologica-latin-ext-300-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Geologica';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/geologica-latin-300-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geologica';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/geologica-cyrillic-ext-400-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Geologica';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/geologica-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Geologica';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/geologica-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Geologica';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/geologica-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geologica';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/geologica-cyrillic-ext-500-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Geologica';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/geologica-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Geologica';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/geologica-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Geologica';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/geologica-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jetbrains-mono-cyrillic-ext-400-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jetbrains-mono-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jetbrains-mono-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jetbrains-mono-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-cyrillic-ext-500-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ===== WestAlum · base ===== */
:root{--ink:#101315;--paper:#EFEEEA;--paper-2:#FAFAF8;--bronze:#C68845;--bronze-hover:#D49A5A;--bronze-text:#7E5530;--muted:#5B6166;--muted-dark:#8D969C;--line:rgba(16,19,21,.16)}
*{box-sizing:border-box}
[hidden]{display:none !important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none !important}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Geologica,system-ui,-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,picture{max-width:100%}
picture{display:block}
a{color:var(--ink)}a:hover{color:var(--bronze-text)}
a:focus-visible,button:focus-visible,label:focus-within,summary:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}
input,button,textarea,select{font:inherit}
input{accent-color:#A87445}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-60px;z-index:100;background:var(--bronze);color:var(--ink);padding:12px 16px;text-decoration:none}.skip:focus{top:16px}
.wrap{max-width:1360px;margin:0 auto;padding:0 48px}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.d-big{font-weight:300;letter-spacing:-.035em}
.btn{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:0 28px;font:500 16px Geologica,system-ui,sans-serif;text-decoration:none;border:0;cursor:pointer;border-radius:0}
.btn-acc{background:var(--bronze);color:var(--ink)}.btn-acc:hover{background:var(--bronze-hover);color:var(--ink)}
.btn-dark{background:var(--ink);color:#F4F3EF}.btn-dark:hover{background:#2A2F33;color:#F4F3EF}
.btn[disabled]{opacity:.6;cursor:wait}
.tlink{display:inline-flex;align-items:center;gap:10px;font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* header + mobile menu */
.nav a{color:#B9BEC2;text-decoration:none;font-size:15px}.nav a:hover,.nav a[aria-current="page"]{color:#FFFFFF}
.burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(244,243,239,.25);cursor:pointer;color:#F4F3EF}
.nav-close{display:none}
@media (max-width:1000px){
 .burger{display:flex}
 .nav{display:none !important}
 body.nav-open{overflow:hidden}
 body.nav-open .nav{display:flex !important;position:fixed;inset:0;z-index:60;margin:0 !important;background:#101315;flex-direction:column;justify-content:center;gap:28px !important;padding:96px 32px 48px}
 body.nav-open .nav a{font-size:30px;font-weight:300;color:#F4F3EF}
 body.nav-open .nav .nav-close{display:flex;position:absolute;top:22px;right:20px}
}

/* product list */
.prow{display:grid;grid-template-columns:48px 72px minmax(0,5fr) minmax(0,5fr) 56px;gap:24px;align-items:center;padding:30px 0;border-top:1px solid var(--line);text-decoration:none;transition:background .2s}
.prow:hover{background:var(--paper-2);color:var(--ink)}
.p-ico{display:flex;align-items:center}.p-ico svg{transition:transform .2s}.prow:hover .p-ico svg{transform:translateY(-2px)}
.prow .arr{width:48px;height:48px;border:1px solid rgba(16,19,21,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s}
.prow:hover .arr{background:var(--bronze);border-color:var(--bronze)}
.ftr a{color:#B9BEC2;text-decoration:none;display:block}.ftr a:hover{color:#F4F3EF}

/* contact form chips (dark) */
.chip{position:relative;cursor:pointer}
.chip input{position:absolute;opacity:0;width:1px;height:1px}
.chip:has(input:checked){border-color:var(--bronze) !important;color:var(--bronze) !important}
.field-dark{height:52px;width:100%;background:transparent;border:0;border-bottom:1px solid #4A545B;color:#F4F3EF;font:300 22px Geologica,sans-serif;padding:0;border-radius:0}
.field-dark:focus{outline:none;border-bottom-color:var(--bronze)}
[data-lead-message]{font-size:14px;line-height:1.5}
form[data-state="error"] [data-lead-message]{color:#F2A08F}
.page-paper form[data-state="error"] [data-lead-message]{color:#B3261E}
form[data-state="sent"] [data-lead-message]{color:#6FC48C}

/* product page table */
.spec th,.spec td{text-align:left;padding:20px 16px 20px 0;border-bottom:1px solid var(--line);font-size:16px;font-weight:400}
.spec th{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* calculator */
.qchip{display:inline-flex;align-items:center;min-height:48px;padding:0 20px;font:400 15px Geologica,sans-serif;border:1px solid rgba(16,19,21,.25);background:transparent;color:var(--ink);cursor:pointer;position:relative;border-radius:0}
.qchip input{position:absolute;opacity:0;width:1px;height:1px}
.qchip:has(input:checked),.qchip.on{background:var(--ink);color:#F4F3EF;border-color:var(--ink)}
.opt{position:relative;display:flex;flex-direction:column;gap:14px;padding:28px;background:var(--paper-2);border:1px solid rgba(16,19,21,.12);cursor:pointer;min-height:44px;transition:border-color .15s}
.opt:hover{border-color:rgba(16,19,21,.35)}
.opt input{position:absolute;opacity:0;width:1px;height:1px}
.opt:has(input:checked){border:2px solid var(--bronze);padding:27px}
.opt .chk{display:none;position:absolute;top:16px;right:16px;width:26px;height:26px;border-radius:50%;background:var(--bronze);align-items:center;justify-content:center}
.opt:has(input:checked) .chk{display:flex}
.swatch{display:grid;justify-items:center;gap:10px;cursor:pointer;position:relative;min-width:96px}
.swatch input{position:absolute;opacity:0;width:1px;height:1px}
.swatch .dot{width:56px;height:56px;border-radius:50%;border:1px solid rgba(16,19,21,.2);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:300}
.swatch:has(input:checked) .dot{outline:2px solid var(--bronze);outline-offset:4px}
.swatch:has(input:checked) .sw-name{font-weight:500}
.lbl{display:grid;gap:8px;min-width:0}
.field{width:100%;min-width:0;height:60px;background:transparent;border:0;border-bottom:1px solid rgba(16,19,21,.3);font:300 30px Geologica,sans-serif;letter-spacing:-.02em;padding:0;color:var(--ink);border-radius:0}
.field:focus{outline:none;border-bottom:2px solid var(--bronze)}
.field.big{height:64px;font-size:44px}
.step{display:none}.step.active{display:block;animation:fade .25s ease}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.q-err{color:#B3261E;font-size:14px;margin-top:16px;min-height:20px}
.side li[data-done="1"] .s-val{display:inline}
.drop{display:flex;align-items:center;gap:24px;padding:28px;border:1px dashed rgba(16,19,21,.35);background:var(--paper-2);cursor:pointer;position:relative}
.drop input{position:absolute;opacity:0;width:1px;height:1px}
.drop.has-file{border-style:solid;border-color:var(--bronze)}

/* dark pages */
.page-dark{background:#101315;color:#F4F3EF}
.page-dark a{color:#F4F3EF}.page-dark a:hover{color:var(--bronze)}
.page-dark .btn-row{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:56px;padding:0 24px;font:500 16px Geologica,sans-serif;text-decoration:none}

/* legal page */
.legal h2{font:400 26px/1.25 Geologica,sans-serif;letter-spacing:-.02em;margin:48px 0 12px}
.legal p,.legal li{font-size:17px;line-height:1.7;color:#30353A}
.legal ul{padding-left:20px}

/* floating CTA */
.float-cta{transition:transform .3s,opacity .3s}
body:not(.scrolled) .float-cta{transform:translateY(16px);opacity:0;pointer-events:none}
.float-cta{position:fixed;right:24px;bottom:24px;z-index:50;display:flex;align-items:center;gap:12px;background:#F4F3EF;color:var(--ink);text-decoration:none;padding:14px 20px;box-shadow:0 10px 30px rgba(0,0,0,.25);font-size:14px;font-weight:500}

/* responsive (from design) */
@media (max-width:1000px){.hero-h1{font-size:64px !important}.prow{grid-template-columns:28px 48px minmax(0,1fr) 40px}.prow .p-desc{display:none}.h2{font-size:44px !important}.p-h1{font-size:56px !important}}
@media (max-width:900px){.side{display:none !important}.q-h1{font-size:40px !important}.hstep{display:none !important}.r-sum{font-size:52px !important}}
@media (max-width:640px){
 .wrap{padding:0 20px}.hero-h1{font-size:46px !important}.h2{font-size:34px !important}.sec{padding:80px 0 !important}.hide-s{display:none !important}
 .hero{min-height:0 !important;padding-top:40px !important}.hero-art{position:relative !important;width:100% !important;height:440px !important;inset:auto !important;order:2;margin:24px 0 0 !important}
 .statement{font-size:26px !important}.span2{grid-column:auto !important}
 .sys{padding:28px 0 !important;border-right:0 !important;border-bottom:1px solid var(--line)}.sys-d{padding:28px 20px !important;margin-top:16px}
 .aud-h{font-size:30px !important}#audience>div{padding:72px 20px !important}
 header .logo img{height:20px !important;width:auto !important}#products{overflow:hidden}
 .float-cta{right:12px;bottom:12px;padding:12px 16px}
 .prow .d-big{font-size:24px !important}.p-ico svg{width:40px;height:40px}.prow .arr{width:40px;height:40px}
 .p-h1{font-size:40px !important}
 .qwrap{padding:32px 20px 64px !important}.hwrap{padding:0 20px !important}.opt{padding:20px 44px 20px 20px !important}.opt:has(input:checked){padding:19px 43px 19px 19px !important}
 .grid3{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.g1m{grid-template-columns:1fr !important}.q-h1{font-size:34px !important}
 .field.big{font-size:36px}
 .rwrap{padding:40px 20px 64px !important}.r-sum{font-size:38px !important}
}
