/* EKO PEĆI · Emajl: the site is built from the stove's own material, vitreous enamel on pressed steel. Type: Poppins. */
@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/poppins-latin-400.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:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/poppins-latin-ext-400.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:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/poppins-latin-500.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:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/poppins-latin-ext-500.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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/poppins-latin-600.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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/poppins-latin-ext-600.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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/poppins-latin-700.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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/poppins-latin-ext-700.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}

:root{
  color-scheme:light;
  /* Enamels: three colours plus the white and black enamel families. No tints in between. */
  --red:#7a1622;--red-deep:#5c0f19;--flame:#f06a2b;--flame-deep:#e0521f;--anthracite:#1e2125;--anthracite-2:#2a2e33;--porcelain:#f1f1ee;--white-enamel:#ffffff;
  --bg:var(--porcelain);--surface:var(--white-enamel);--surface-2:#e5e5e1;--ink:#1e2125;--muted:#55595f;--line:#d8d8d3;--accent:var(--red);--accent-ink:#fbfaf7;--link:var(--red);
  --on-red:#fbf4ee;--on-red-muted:#ecc9c4;--on-dark:#f1f1ee;--on-dark-muted:#b9bcc0;
  --r-plate:28px;--r-tile:20px;--r-control:14px;--r-chip:8px;
  --gloss:inset 0 1px 0 rgb(255 255 255 / .22),inset 0 -2px 0 rgb(0 0 0 / .16);
  --lift:0 1px 2px rgb(30 33 37 / .06),0 8px 24px -12px rgb(30 33 37 / .22);
  --lift-hover:0 2px 4px rgb(30 33 37 / .08),0 20px 40px -18px rgb(30 33 37 / .35);
  --ease-out:cubic-bezier(.23,1,.32,1);--snap:cubic-bezier(.34,1.56,.64,1);
  --content:1320px;--gutter:clamp(16px,4vw,48px)
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px;scrollbar-color:var(--line) var(--bg);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Poppins,system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;caret-color:var(--red)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
img{max-width:100%;display:block}
svg{vertical-align:middle;flex-shrink:0}
h1,h2,h3,p,dl,dd,ol,ul,figure{margin:0}
h1,h2,h3{font-weight:700;line-height:1.08;letter-spacing:-.03em;text-wrap:balance}
h1{font-size:clamp(40px,6.2vw,88px)}
h2{font-size:clamp(28px,3.4vw,46px)}
h3{font-size:20px;line-height:1.15;letter-spacing:-.015em}
p{max-width:64ch;text-wrap:pretty}
::selection{background:var(--flame);color:var(--anthracite)}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:6px}
[hidden]{display:none!important}
.container{width:min(var(--content),100% - 2 * var(--gutter));margin-inline:auto}
.muted{color:var(--muted)}
.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--anthracite);color:var(--porcelain);padding:12px 20px;border-radius:var(--r-control)}
.skip-link:focus{top:12px}

/* Enamel fields */
.enamel-red,.enamel-anthracite{position:relative;isolation:isolate}
.enamel-red{background-color:var(--red);color:var(--on-red)}
.enamel-anthracite{background-color:var(--anthracite);color:var(--on-dark)}
/* Specular sheen sits on its own layer so the enamel colour underneath stays solid. */
.enamel-red::before,.enamel-anthracite::before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(110% 90% at 12% 0%,rgb(255 255 255 / .09),transparent 55%)}
.chip{display:inline-block;width:22px;height:22px;border-radius:7px;box-shadow:var(--gloss),0 0 0 1px rgb(0 0 0 / .08);flex:none}
.chip-red{background:var(--red)}.chip-flame{background:var(--flame)}.chip-anthracite{background:var(--anthracite);box-shadow:var(--gloss),0 0 0 1px rgb(255 255 255 / .18)}.chip-porcelain{background:var(--porcelain);box-shadow:var(--gloss),inset 0 0 0 1px #cacac4}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none}
.dot-red{background:var(--red)}.dot-flame{background:var(--flame)}.dot-anthracite{background:var(--anthracite);box-shadow:0 0 0 1px var(--line)}.dot-porcelain{background:var(--porcelain);box-shadow:0 0 0 1px var(--line)}

/* Glint: a specular highlight crossing the enamel, the one motion the material owns */
.glint{position:relative;overflow:hidden;isolation:isolate}
.glint::after{content:'';position:absolute;inset:-1px;z-index:2;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgb(255 255 255 / .32) 48%,rgb(255 255 255 / .08) 55%,transparent 65%);transform:translateX(-110%);transition:transform 0s}
.glint:hover::after,.glint:focus-visible::after{transform:translateX(110%);transition:transform .75s var(--ease-out)}

/* Buttons: pressed enamel, snap on press */
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:10px 26px;border-radius:var(--r-control);background:var(--red);color:var(--on-red);font-weight:700;font-size:16px;letter-spacing:.005em;box-shadow:var(--gloss),0 6px 16px -8px rgb(92 15 25 / .6);transition:transform .22s var(--snap),background .2s,box-shadow .2s;line-height:1.2;border:0}
.button:hover{background:var(--red-deep)}
.button:active{transform:scale(.96);transition-duration:.1s}
.button svg{width:20px;height:20px}
.button-porcelain{background:var(--porcelain);color:var(--red);box-shadow:var(--gloss),0 8px 22px -10px rgb(0 0 0 / .5)}
.button-porcelain:hover{background:#fff}
.button-outline{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.button-outline:hover{background:var(--ink);color:var(--bg)}
.text-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--link);text-underline-offset:5px}
.text-link:hover{text-decoration:underline}
.text-link svg{width:18px;transition:transform .22s var(--snap)}
.text-link:hover svg{transform:translateX(4px)}
.icon-button{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);transition:transform .22s var(--snap),background .2s}
.icon-button:hover{background:var(--surface-2)}
.icon-button:active{transform:scale(.92)}

/* Brand: the client's flame mark with the name set beside it */
.brand{display:inline-flex;align-items:center;gap:10px;color:#3b3b3b;font-weight:600;font-size:23px;letter-spacing:-.02em;line-height:1;white-space:nowrap}
.brand img{width:40px;height:auto;flex:none}
.brand.nameplate-footer{color:var(--porcelain)}


/* Header */
.site-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}
.nav-wrap{height:78px;display:flex;align-items:center;gap:28px}
.desktop-nav{display:flex;gap:6px;margin-left:auto}
.desktop-nav a{padding:10px 16px;border-radius:999px;font-weight:600;font-size:15px;transition:background .2s}
.desktop-nav a:hover{background:var(--surface-2)}
.desktop-nav a[aria-current]{background:var(--ink);color:var(--bg)}
.nav-actions{display:flex;align-items:center;gap:10px}
.nav-call{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 20px;border-radius:999px;background:var(--red);color:var(--on-red);font-weight:700;font-size:15px;box-shadow:var(--gloss);transition:transform .22s var(--snap)}
.nav-call:active{transform:scale(.95)}
.nav-call svg{width:18px}
.menu-toggle{display:none}
.mobile-nav{border-top:1px solid var(--line);padding:10px 0 18px}
.mobile-nav a{display:flex;align-items:center;min-height:52px;font-size:19px;font-weight:700;border-bottom:1px solid var(--line)}
.mobile-nav a[aria-current]{color:var(--link)}

/* Hero */
.hero{padding:clamp(40px,6vw,84px) 0 28px;border-radius:0 0 var(--r-plate) var(--r-plate);overflow:hidden}
.hero-grid>*{min-width:0}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,64px);align-items:center}
.hero h1{font-size:clamp(44px,6.8vw,100px);font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--on-red)}
.hero-description{margin-top:28px;font-size:clamp(17px,1.5vw,20px);color:var(--on-red-muted);max-width:46ch}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:34px}
.hero-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:17px;color:var(--on-red);padding:12px 2px;text-underline-offset:6px}
.hero-link:hover{text-decoration:underline}
.hero-link svg{width:20px;transition:transform .22s var(--snap)}
.hero-link:hover svg{transform:translateX(4px)}
.hero-facts{margin-top:36px;padding-top:16px;border-top:1px solid rgb(251 244 238 / .22);font-weight:600;color:var(--on-red);font-variant-numeric:tabular-nums}
.hero-facts span{white-space:nowrap}
.hero-facts i{font-style:normal;padding:0 8px;color:var(--on-red-muted)}
.hero-product{position:relative;display:block;justify-self:center;width:min(100%,560px)}
.hero-disc{display:block;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 38% 30%,#fff,var(--porcelain) 62%,#d9d9d4);box-shadow:inset 0 -18px 40px rgb(0 0 0 / .08),0 40px 80px -40px rgb(0 0 0 / .6);padding:9%}
.hero-disc img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;animation:settle .9s var(--ease-out) both}
.hero-tag{position:absolute;left:4%;bottom:6%;display:flex;align-items:center;gap:14px;padding:12px 14px 12px 18px;border-radius:var(--r-control);background:var(--anthracite);color:var(--on-dark);box-shadow:var(--gloss),0 14px 30px -14px rgb(0 0 0 / .7);transition:transform .25s var(--snap)}
.hero-product:hover .hero-tag{transform:translateY(-3px)}
.hero-tag small{display:block;font-size:13px;color:var(--on-dark-muted)}
.hero-tag strong{display:block;font-size:17px}
.hero-tag svg{width:20px;color:var(--flame)}
@keyframes settle{from{transform:translateY(18px) scale(.97)}}

/* Swatches: the enamel colour card */
.swatch-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(36px,5vw,64px)}
.swatch{flex:1 0 auto;display:flex;align-items:center;gap:12px;min-height:60px;padding:10px 18px 10px 14px;border-radius:var(--r-control);background:var(--white-enamel);color:var(--anthracite);font-weight:700;font-size:15px;box-shadow:var(--gloss),0 6px 18px -12px rgb(0 0 0 / .5);white-space:nowrap;transition:transform .24s var(--snap),background .2s,color .2s}
.swatch:hover{transform:translateY(-3px)}
.swatch:active{transform:scale(.97)}
.swatch-count{margin-left:auto;padding-left:14px;font-weight:600;color:#6b6f75;font-variant-numeric:tabular-nums}
.swatch[aria-current]{background:var(--anthracite);color:var(--porcelain);box-shadow:var(--gloss)}
.swatch[aria-current] .chip{box-shadow:var(--gloss),0 0 0 2px var(--anthracite)}
.page-plate .swatch-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px}
.page-plate .swatch{min-width:0;white-space:normal;line-height:1.25}
.page-plate .swatch[aria-current]{background:var(--flame);color:var(--anthracite)}
.swatch[aria-current] .swatch-count{color:inherit;opacity:.7}

/* Sections */
.section{padding-block:clamp(64px,8vw,120px)}
.section-heading{margin-bottom:clamp(28px,3.5vw,48px)}
.section-heading.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px 48px;align-items:end}
.section-heading p{color:var(--muted);font-size:18px}
.section-end{margin-top:40px;display:flex;justify-content:center}

/* Product cards: white enamel tiles */
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.product-grid.featured{grid-template-columns:repeat(4,minmax(0,1fr))}
.product-card{position:relative;display:flex;flex-direction:column;background:var(--surface);border-radius:var(--r-tile);box-shadow:var(--lift);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out);min-width:0}
.product-card:hover{transform:translateY(-4px);box-shadow:var(--lift-hover)}
.card-link{position:absolute;inset:0;z-index:3;border-radius:inherit}
.card-link:focus-visible{outline-offset:4px}
.product-picture{position:relative;margin:8px 8px 0;border-radius:calc(var(--r-tile) - 6px);background:transparent;aspect-ratio:1/1.02;padding:20px;overflow:hidden}
.product-picture img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--ease-out)}
.product-card:hover .product-picture img{transform:scale(1.04)}
.product-info{display:flex;flex-direction:column;flex:1;padding:18px 20px 20px}
.product-info h3{font-size:26px;letter-spacing:-.035em;line-height:1.1}
.model-name{white-space:nowrap}
.price{font-variant-numeric:tabular-nums}
.price-source{display:block;font-size:13px;color:var(--muted);margin-bottom:2px}
.price-value strong{font-size:23px;font-weight:700;letter-spacing:-.01em}
.tax{font-size:13px;color:var(--muted);white-space:nowrap}
.price small{display:block;font-size:13px;color:var(--muted);margin-top:2px;line-height:1.45}
.card-more{margin-top:auto;padding-top:16px;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:15px;color:var(--link);border-top:1px solid var(--line);margin-top:18px}
.card-more svg{width:18px;transition:transform .22s var(--snap)}
.product-card:hover .card-more svg{transform:translateX(4px)}
.product-info .price{margin-bottom:auto}

/* Stations: anthracite pressed plate */
.stations-plate{border-radius:var(--r-plate);padding:clamp(32px,5vw,72px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,80px)}
.stations-intro h2{color:var(--on-dark)}
.stations-intro p{color:var(--on-dark-muted);margin:22px 0 26px;font-size:18px}
.stations-intro .text-link{color:var(--flame)}
.stations{list-style:none;padding:0;counter-reset:station;position:relative}
.stations li{counter-increment:station;position:relative;padding:0 0 30px 64px}
.stations li:last-child{padding-bottom:0}
.stations li::before{content:counter(station);position:absolute;left:0;top:-4px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--flame);color:var(--anthracite);font-weight:700;box-shadow:var(--gloss)}
.stations li::after{content:'';position:absolute;left:20px;top:44px;bottom:6px;width:2px;background:rgb(241 241 238 / .16)}
.stations li:last-child::after{display:none}
.stations h3{color:var(--on-dark);font-size:22px}
.stations p{color:var(--on-dark-muted);margin-top:8px}

/* FAQ with stove knobs */
.faq-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,96px)}
.faq-layout .muted{margin-top:16px;font-size:18px}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary,.filter-panel>summary{list-style:none;cursor:pointer}
.faq-list summary::-webkit-details-marker,.filter-panel>summary::-webkit-details-marker{display:none}
.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;font-weight:700;font-size:19px}
.knob{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line),0 2px 6px -3px rgb(0 0 0 / .3);transition:transform .32s var(--snap),background .2s,color .2s}
.knob svg{width:18px}
details[open]>summary .knob{transform:rotate(135deg);background:var(--red);color:var(--on-red);box-shadow:var(--gloss)}
.faq-list details p{color:var(--muted);padding:0 64px 24px 0;font-size:17px}

/* Closing plate */
.closing{padding-bottom:clamp(40px,6vw,80px)}
.closing-plate{border-radius:var(--r-plate);padding:clamp(32px,5vw,64px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px 48px;align-items:center}
.closing-plate h2{color:var(--on-red)}
.closing-plate p{color:var(--on-red-muted);margin-top:16px;font-size:18px}
.closing-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.closing-phone{display:inline-flex;padding:14px 26px;border-radius:var(--r-control);background:var(--porcelain);color:var(--red);font-weight:700;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.01em;box-shadow:var(--gloss),0 10px 26px -12px rgb(0 0 0 / .55);transition:transform .22s var(--snap);white-space:nowrap;font-variant-numeric:tabular-nums}
.closing-phone:active{transform:scale(.97)}
.closing-mail{display:inline-flex;align-items:center;gap:8px;color:var(--on-red);font-weight:600;padding:6px 2px}
.closing-mail:hover{text-decoration:underline;text-underline-offset:4px}
.closing-mail svg{width:18px}

/* Footer */
.site-footer{background:var(--anthracite);color:var(--on-dark);border-radius:var(--r-plate) var(--r-plate) 0 0}
.footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;padding-block:64px 48px}
.footer-lead p{color:var(--on-dark-muted);margin:20px 0 22px;max-width:40ch;font-size:16px}
.footer-phone{display:block;font-weight:700;font-size:26px;color:var(--porcelain);width:fit-content}
.footer-mail{display:block;color:var(--on-dark-muted);margin-top:6px;width:fit-content}
.footer-main h2{font-size:14px;letter-spacing:.02em;color:var(--flame);margin-bottom:14px}
.footer-main div:not(.footer-lead)>a{display:block;padding:6px 0;color:var(--on-dark-muted);width:fit-content;font-size:16px}
.footer-main a:hover{color:var(--porcelain)}
.footer-bottom{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;padding-block:22px 28px;border-top:1px solid #363a40;color:var(--on-dark-muted);font-size:14px}

/* Inner pages */
.breadcrumb{padding-top:28px;font-size:14px;color:var(--muted)}
.breadcrumb a:hover{color:var(--link)}
.page-heading{padding-bottom:clamp(28px,4vw,52px)}
.page-heading h1{margin-top:clamp(20px,3vw,40px);max-width:16ch}
.page-heading>p:not(.breadcrumb){margin-top:22px;font-size:clamp(17px,1.5vw,20px);color:var(--muted);max-width:52ch}
.page-heading .button{margin-top:28px}
.page-heading.narrow p{margin-top:18px}

/* Enamel plates heading inner pages */
.page-plate,.detail-plate{border-radius:0 0 var(--r-plate) var(--r-plate);overflow:hidden;padding-top:8px;padding-bottom:clamp(28px,4vw,48px);margin-bottom:clamp(28px,4vw,48px)}
.enamel-red .breadcrumb,.enamel-red .breadcrumb a{color:var(--on-red-muted)}
.enamel-anthracite .breadcrumb,.enamel-anthracite .breadcrumb a{color:var(--on-dark-muted)}
.enamel-red .breadcrumb a:hover,.enamel-anthracite .breadcrumb a:hover{color:inherit;text-decoration:underline}
.page-plate h1{margin-top:clamp(20px,3vw,36px);max-width:16ch;color:var(--on-dark)}
.plate-lead{margin-top:18px;font-size:clamp(17px,1.5vw,20px);color:var(--on-dark-muted);max-width:52ch}
.page-plate .swatch-row{margin-top:clamp(24px,3vw,40px)}

/* Catalog */
.catalog-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(24px,3vw,44px);padding-bottom:clamp(56px,7vw,100px);align-items:start}
.catalog-sidebar{position:sticky;top:98px;display:grid;gap:16px}
.filter-panel{background:var(--surface);border-radius:var(--r-tile);box-shadow:var(--lift)}
.filter-panel>summary{display:none}
.filter-body{padding:22px}
.field-label{display:block;font-weight:700;font-size:14px;margin:0 0 8px}
.field-label:not(:first-child){margin-top:20px}
.search-field,.select{position:relative;display:flex;align-items:center;min-height:50px;border-radius:12px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s}
.search-field:focus-within,.select:focus-within{box-shadow:inset 0 0 0 2px var(--ink)}
.search-field svg{position:absolute;left:14px;width:18px;color:var(--muted)}
.search-field input{width:100%;min-width:0;border:0;background:transparent;padding:12px 14px 12px 42px;font-size:16px}
.search-field input:focus-visible,.select select:focus-visible{outline:0}
.search-field input::placeholder{color:var(--muted)}
.select select{appearance:none;-webkit-appearance:none;width:100%;border:0;background:transparent;padding:12px 40px 12px 14px;font-size:16px;cursor:pointer}
.select svg{position:absolute;right:14px;width:18px;pointer-events:none;color:var(--muted)}
.filter-submit{width:100%;margin-top:22px}
.reset-link{display:block;text-align:center;margin-top:12px;padding:8px;font-size:15px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
.sidebar-help{border-radius:var(--r-tile);padding:22px}
.sidebar-help h2{font-size:20px;color:var(--on-dark)}
.sidebar-help p{color:var(--on-dark-muted);margin:8px 0 14px;font-size:15px}
.sidebar-help a{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--flame)}
.sidebar-help svg{width:18px}
.results-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px}
.results-heading h2{font-size:clamp(24px,2.4vw,32px)}
.results-heading span{color:var(--muted);font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums}
.empty-state{padding:64px 24px;background:var(--surface);border-radius:var(--r-tile);text-align:center;box-shadow:var(--lift)}
.empty-state h2{font-size:26px}
.empty-state p{margin:14px auto 24px;color:var(--muted)}

/* Product detail */
.product-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,72px);padding-top:24px;align-items:center}
.gallery{min-width:0}
.gallery-main{position:relative;display:block;width:min(100%,500px);margin-inline:auto;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 38% 30%,#fff,var(--porcelain) 62%,#d9d9d4);padding:10%;box-shadow:inset 0 -18px 40px rgb(0 0 0 / .08),0 40px 80px -40px rgb(0 0 0 / .6);cursor:zoom-in}
.gallery-main>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.zoom-hint{position:absolute;right:8%;bottom:8%;display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:var(--anthracite);color:var(--on-dark);font-size:14px;font-weight:600}
.zoom-hint svg{width:16px}
.gallery-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:22px 3px 6px;scrollbar-width:none}
.thumbnail{flex:none;width:76px;height:76px;padding:6px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);transition:transform .22s var(--snap)}
.thumbnail:active{transform:scale(.94)}
.thumbnail.selected{box-shadow:0 0 0 3px var(--flame)}
.thumbnail img{width:100%;height:100%;object-fit:contain}
.detail-intro h1{font-size:clamp(40px,5vw,72px);line-height:.98;letter-spacing:-.035em;color:var(--on-red)}
.detail-maker{color:var(--on-red);font-weight:400}
.detail-summary{margin-top:20px;font-size:18px;color:var(--on-red-muted)}
.detail-chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.detail-chips>*{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;color:var(--on-red);box-shadow:inset 0 0 0 1px rgb(251 244 238 / .35);font-weight:600;font-size:15px}
.detail-chips svg{width:17px}
.detail-chips .chip-power{background:var(--flame);color:var(--anthracite);box-shadow:var(--gloss);font-weight:700}
.chip-link{transition:background .2s}
.chip-link:hover{background:rgb(251 244 238 / .12)}
.detail-chips .dot-red{box-shadow:0 0 0 1.5px var(--on-red)}
.price-plate{border-top:1px solid rgb(251 244 238 / .22);padding-top:20px;color:var(--on-red)}
.price-plate .price-source,.price-plate .tax,.price-plate small,.price-plate .price-disclaimer{color:var(--on-red-muted)}
.price-large .price-value strong{font-size:clamp(34px,3.4vw,44px)}
.price-disclaimer{margin-top:12px;font-size:14px;color:var(--muted)}
.detail-call{width:100%;margin-top:18px;min-height:62px;font-size:18px}
.detail-email{display:flex;justify-content:center;align-items:center;gap:10px;min-height:52px;margin-top:6px;font-weight:700;color:var(--on-red)}
.detail-email:hover{text-decoration:underline;text-underline-offset:4px}
.detail-email svg{width:18px}
.detail-note{text-align:center;font-size:14px;color:var(--on-red-muted);margin:4px auto 0}
.detail-nav{position:sticky;top:78px;z-index:10;display:flex;gap:6px;overflow-x:auto;padding:10px 0;background:var(--bg);border-block:1px solid var(--line);scrollbar-width:none}
.detail-nav a{flex:none;padding:10px 16px;border-radius:999px;font-weight:600;font-size:15px}
.detail-nav a:hover{background:var(--surface-2)}
.detail-section{padding-bottom:clamp(40px,5vw,72px)}
.spec-table{width:100%;border-collapse:collapse;margin-block:8px 32px;font-variant-numeric:tabular-nums;border-top:2px solid var(--ink)}
.spec-table caption{text-align:left;font-weight:700;font-size:15px;color:var(--muted);padding-bottom:12px}
.spec-table th,.spec-table td{text-align:left;padding:15px 16px 15px 0;border-bottom:1px solid var(--line);font-size:16px}
.spec-table th{font-weight:600;width:45%}
.spec-table td{color:var(--muted)}
.table-scroll{overflow-x:auto}
.technical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:20px}
.technical-grid figure{min-width:0}
.technical-grid button{display:block;width:100%;height:340px;padding:20px;background:#fff;border-radius:var(--r-tile);box-shadow:inset 0 0 0 1px var(--line);cursor:zoom-in}
.technical-grid img{width:100%;height:100%;object-fit:contain}
.technical-grid figcaption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 2px;font-weight:600;font-size:15px}
.technical-grid figcaption span{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-weight:500;font-size:14px}
.technical-grid figcaption svg{width:15px}
.documentation{padding-block:clamp(32px,4vw,56px);border-top:1px solid var(--line)}
.documentation>p{margin-top:18px;color:var(--muted)}
.document-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:26px}
.document-list a{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:var(--r-control);box-shadow:inset 0 0 0 1px var(--line);font-weight:600;word-break:break-word;transition:transform .25s var(--snap)}
.document-list a:hover{transform:translateY(-2px);background:var(--surface)}
.document-list a>svg{margin-left:auto;width:20px;color:var(--muted)}
.doc-icon{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--red);color:var(--on-red);box-shadow:var(--gloss)}
.doc-icon svg{width:22px}
.source-note{margin-top:24px!important;font-size:14px;color:var(--muted);max-width:62ch}
.source-note a{text-decoration:underline;text-underline-offset:3px}
.related-section{border-top:1px solid var(--line)}
.product-grid.related{margin-top:32px}

.image-dialog{border:0;border-radius:var(--r-plate);background:var(--surface);color:var(--ink);padding:60px 20px 20px;max-width:min(1100px,94vw);max-height:92dvh;box-shadow:0 40px 100px -30px rgb(0 0 0 / .6)}
.image-dialog[open]{animation:pop .28s var(--snap)}
.image-dialog::backdrop{background:rgb(20 22 25 / .82);backdrop-filter:blur(6px)}
.image-dialog>img{max-height:76dvh;max-width:100%;object-fit:contain;background:#fff;border-radius:var(--r-control)}
.dialog-close{position:absolute;top:10px;right:10px}
@keyframes pop{from{transform:scale(.96);opacity:0}}

/* Guide: stations in order */
.guide-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(28px,5vw,72px);align-items:start;padding-bottom:clamp(48px,6vw,88px)}
.guide-track{list-style:none;padding:0;counter-reset:station}
.guide-track li{counter-increment:station;position:relative;padding:0 0 44px 84px}
.guide-track li::before{content:counter(station);position:absolute;left:0;top:0;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:var(--on-red);font-weight:700;font-size:22px;box-shadow:var(--gloss)}
.guide-track li::after{content:'';position:absolute;left:27px;top:62px;bottom:6px;width:2px;background:var(--line)}
.guide-track li:last-child::after{display:none}
.guide-station h2{font-size:clamp(26px,2.8vw,36px);padding-top:8px}
.guide-station p{margin-top:14px;color:var(--muted);font-size:18px}
.guide-links{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:18px}
.call-checklist{position:sticky;top:98px;border-radius:var(--r-plate);padding:clamp(24px,3vw,36px)}
.call-checklist h2{font-size:clamp(24px,2.2vw,30px);color:var(--on-dark)}
.call-checklist ul{list-style:none;padding:0;margin:20px 0 26px;display:grid;gap:12px}
.call-checklist li{display:flex;gap:12px;align-items:flex-start;color:var(--on-dark-muted)}
.call-checklist li::before{content:'';flex:none;width:12px;height:12px;margin-top:7px;border-radius:4px;background:var(--flame)}
.call-checklist .button{width:100%}

/* Contact */
.contact-page{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:22px;padding-bottom:clamp(56px,7vw,100px)}
.contact-primary{border-radius:var(--r-plate);padding:clamp(28px,5vw,64px)}
.contact-primary h2{font-size:20px;color:var(--on-red-muted)}
.big-phone{display:inline-block;margin:16px 0 20px;font-size:clamp(40px,6vw,84px);font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--on-red);font-variant-numeric:tabular-nums}
.big-phone:hover{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:8px}
.contact-primary p{color:var(--on-red-muted);font-size:18px}
.contact-mail{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font-weight:700;font-size:18px;color:var(--on-red)}
.contact-mail svg{width:20px}
.company-card{background:var(--surface);border-radius:var(--r-plate);padding:clamp(24px,3vw,36px);box-shadow:var(--lift)}
.company-card h2{font-size:24px}
.company-card p{margin-top:14px}
.company-card .muted{font-size:15px}

/* Price list */
.price-list-page{padding-bottom:clamp(56px,7vw,100px)}
.price-list-page>h2{font-size:clamp(26px,2.6vw,34px)}
.price-list-page>p{margin-top:8px;color:var(--muted)}
.price-list-page>h3{margin:36px 0 10px;font-size:22px}
.notice{margin:28px 0;background:var(--surface);border-radius:var(--r-tile);padding:28px;box-shadow:var(--lift),inset 0 0 0 2px var(--flame)}
.notice h3{font-size:22px}
.notice p{margin-top:12px;color:var(--muted)}
.download-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:28px}

/* Tablet */
@media(max-width:1100px){
  .product-grid.featured{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-layout{grid-template-columns:240px minmax(0,1fr)}
  .nav-call span{display:none}
  .nav-call{width:46px;padding:0;justify-content:center}
  .desktop-nav a{padding:10px 12px}
}
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-product{width:min(100%,460px)}
  .stations-plate,.faq-layout,.closing-plate,.guide-layout,.contact-page,.section-heading.split{grid-template-columns:1fr}
  .product-detail{grid-template-columns:1fr}
  .detail-intro,.call-checklist{position:static}
  .footer-main{grid-template-columns:1fr 1fr}
  .footer-lead{grid-column:1/-1}
}

/* Phone */
@media(max-width:768px){
  body{font-size:16px}
  html{scroll-padding-top:80px}
  .nav-wrap{height:66px;gap:10px}
  .brand{font-size:20px;gap:8px}
  .brand img{width:34px}
  .desktop-nav{display:none}
  .nav-actions{margin-left:auto;gap:8px}
  .icon-button,.nav-call{width:44px;height:44px}
  .menu-toggle{display:grid}
  .hero{padding-top:20px;border-radius:0 0 22px 22px}
  .hero-product{order:-1;width:min(92%,360px)!important;margin:4px auto 30px!important}
  .hero-tag{left:0;bottom:4%;gap:10px;padding:9px 10px 9px 14px}
  .hero-tag small{font-size:12px}
  .hero-tag strong{font-size:15px}
  .page-plate,.detail-plate{border-radius:0 0 22px 22px}
  .hero h1{font-size:clamp(44px,13vw,64px)}
  .hero-description{margin-top:20px}
  .hero-actions{margin-top:26px}
  .hero-actions .button{width:100%}
  .hero-facts{margin-top:26px;font-size:14px}
  .hero-facts i{padding:0 6px}
  .hero-actions{gap:6px 20px}
  .swatch-row{gap:8px}
  .swatch,.page-plate .swatch{flex:1 1 calc(50% - 8px);min-height:52px;padding:8px 12px 8px 10px;font-size:14px;gap:10px}
  .swatch-count{padding-left:8px}
  .page-plate .swatch-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-grid,.product-grid.featured,.product-grid.related{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .product-picture{margin:6px 6px 0;padding:12px}
    .product-info{padding:12px 12px 14px}
    .product-info h3{font-size:19px;letter-spacing:-.02em}
  .price-source,.price small,.tax{font-size:12px}
  .price-value strong{font-size:18px}
  .card-more{font-size:14px;padding-top:12px;margin-top:12px}
  .stations-plate{border-radius:22px}
  .faq-list summary{font-size:17px}
  .faq-list details p{padding-right:0;font-size:16px}
  .closing-plate{border-radius:22px}
  .closing-phone{width:100%;justify-content:center}
  .site-footer{border-radius:22px 22px 0 0}
  .catalog-layout{grid-template-columns:1fr;gap:20px}
  .catalog-sidebar{position:static}
  .filter-panel>summary{display:flex;justify-content:space-between;align-items:center;min-height:58px;padding:0 10px 0 18px;font-weight:700;font-size:16px}
  .filter-panel>summary>span:first-child{display:inline-flex;align-items:center;gap:10px}
  .filter-panel>summary svg{width:20px}
  .filter-panel>summary small{font-size:13px;color:var(--link);font-weight:600}
  .filter-body{padding:4px 18px 20px}
  .sidebar-help{display:none}
  .detail-intro h1{font-size:clamp(36px,10.5vw,52px)}
  .gallery-main{width:min(86%,340px)}
  .detail-nav{top:66px}
  .technical-grid,.document-list{grid-template-columns:1fr}
  .technical-grid button{height:280px}
  .spec-table th,.spec-table td{padding:13px 14px;font-size:15px}
  .guide-track li{padding-left:64px}
  .guide-track li::before{width:44px;height:44px;font-size:18px}
  .guide-track li::after{left:21px;top:50px}
  .footer-main{gap:32px 20px;padding-block:48px 32px}
}
@media(max-width:360px){
  .product-grid,.product-grid.featured,.product-grid.related{grid-template-columns:1fr}
  .brand{font-size:18px}
  .swatch{flex-basis:100%}
  .page-plate .swatch-row{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .glint::after{display:none}
  .hero-disc img,.image-dialog[open]{animation:none}
  *,*::before,*::after{transition-duration:.01ms!important}
}

/* Spare parts: we point to Bygreen instead of selling parts */
.plate-actions{margin-top:30px}
.plate-note{margin-top:14px;font-size:15px;color:var(--on-dark-muted)}
.parts-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,56px);align-items:start;padding-bottom:clamp(48px,6vw,88px)}
.parts-checklist{list-style:none;padding:0;margin-top:24px;display:grid;gap:14px}
.parts-checklist li{display:flex;gap:14px;align-items:flex-start;font-size:18px}
.parts-checklist li::before{content:'';flex:none;width:14px;height:14px;margin-top:7px;border-radius:4px;background:var(--flame);box-shadow:var(--gloss)}
.parts-help{border-radius:var(--r-plate);padding:clamp(24px,3vw,36px)}
.parts-help h2{font-size:clamp(22px,2vw,28px);color:var(--on-red)}
.parts-help p{margin:12px 0 22px;color:var(--on-red-muted)}
.parts-help .button{width:100%}
.faq-list details p .text-link{display:inline}
@media(max-width:900px){.parts-layout{grid-template-columns:1fr}.desktop-nav a{padding:10px 10px;font-size:14px}}
@media(max-width:768px){.plate-actions .button{width:100%}}

/* Service: home band, request form, thank-you */
.service-band{padding-bottom:clamp(56px,7vw,100px)}
.detail-service{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:12px;border-top:1px solid rgb(251 244 238 / .22);font-weight:600;color:var(--on-red)}
.detail-service:hover{text-decoration:underline;text-underline-offset:4px}
.detail-service svg,.closing-mail svg,.contact-service svg{width:18px}
.plate-link{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-weight:600;color:var(--on-red)}
.plate-link svg{width:18px}
.plate-link:hover{text-decoration:underline;text-underline-offset:4px}
.contact-service{margin-top:26px}
.enamel-red .plate-note,.enamel-red .plate-note a{color:var(--on-red-muted)}
.enamel-red .plate-note a{text-decoration:underline;text-underline-offset:3px}
.enamel-red .plate-lead{color:var(--on-red-muted)}
.enamel-red .plate-lead strong{color:var(--on-red)}
.enamel-red h1{color:var(--on-red)}
.service-intro{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(24px,4vw,64px);align-items:end;margin-top:clamp(20px,3vw,36px)}
.service-intro h1{max-width:14ch}
.service-price{background:var(--porcelain);color:var(--anthracite);border-radius:var(--r-tile);padding:26px;box-shadow:var(--gloss),0 20px 40px -20px rgb(0 0 0 / .5)}
.service-price-main{display:flex;align-items:baseline;gap:10px;font-weight:600}
.service-price-main strong{font-size:clamp(44px,5vw,64px);line-height:1;color:var(--red);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.service-price p:not(.service-price-main){margin-top:8px;color:#4c5056}
.service-price ul{list-style:none;padding:14px 0 0;margin:14px 0 0;border-top:1px solid #d8d8d3;display:grid;gap:6px;font-weight:500}
.service-form-wrap{max-width:980px;padding-bottom:clamp(56px,7vw,100px);scroll-margin-top:90px}
.service-form>fieldset{border:0;margin:0 0 20px;padding:clamp(20px,3vw,32px);background:var(--surface);border-radius:var(--r-tile);box-shadow:var(--lift)}
.service-form>fieldset>legend{float:left;width:100%;display:flex;align-items:center;gap:12px;font-size:clamp(20px,2vw,24px);font-weight:700;letter-spacing:-.02em;margin-bottom:20px;padding:0}
.service-form>fieldset>legend+*{clear:both}
.step{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--flame);color:var(--anthracite);font-size:16px;box-shadow:var(--gloss)}
.fieldset-note{clear:both;color:var(--muted);margin:-8px 0 18px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 18px;clear:both}
.form-field{min-width:0;display:flex;flex-direction:column;gap:6px}
.form-field.wide{grid-column:1/-1}
.form-field>label:not(.radio){font-weight:600;font-size:15px;padding:0}
.req{color:var(--red)}
.optional{font-weight:400;color:var(--muted);font-size:14px}
.field-hint{font-size:14px;color:var(--muted);margin-top:-2px}
.form-field input:not([type=radio]),.form-field textarea{width:100%;min-height:52px;padding:12px 14px;border:0;border-radius:12px;background:var(--bg);color:var(--ink);font-size:16px;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s}
.form-field textarea{resize:vertical;line-height:1.5}
.form-field input:not([type=radio])::placeholder,.form-field textarea::placeholder{color:#8a8e93}
.form-field input:not([type=radio]):focus-visible,.form-field textarea:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--ink)}
.form-field [aria-invalid=true],.form-field .select:has([aria-invalid=true]){box-shadow:inset 0 0 0 2px var(--red)}
.field-error{font-size:14px;font-weight:600;color:var(--red)}
.radio{display:flex;align-items:center;gap:14px;min-height:52px;padding:0 16px;margin-top:8px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;transition:box-shadow .2s,background .2s}
.radio input{width:20px;height:20px;accent-color:var(--red);margin:0}
.radio:has(input:checked){box-shadow:inset 0 0 0 2px var(--red);background:var(--bg)}
.form-alert{margin-bottom:20px;padding:20px 22px;border-radius:var(--r-tile);background:var(--surface);box-shadow:var(--lift),inset 0 0 0 2px var(--red)}
.form-alert h2{font-size:20px}
.form-alert p,.form-alert ul{margin-top:8px}
.form-alert a{color:var(--link);text-decoration:underline;text-underline-offset:3px;font-weight:600}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-submit{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:8px}
.form-submit .button{min-height:62px;font-size:17px}
.form-submit p{flex:1 1 280px;font-size:15px;color:var(--muted)}
.form-submit a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.thanks{padding-bottom:12px}
.thanks-mark{display:grid;place-items:center;width:64px;height:64px;margin-top:28px;border-radius:50%;background:var(--flame);color:var(--anthracite);box-shadow:var(--gloss)}
.thanks-mark svg{width:32px;height:32px}
.thanks h1{margin-top:20px}
@media(max-width:900px){.service-intro{grid-template-columns:1fr}}
@media(max-width:768px){
  .form-grid{grid-template-columns:1fr}
    .service-band-plate .button,.form-submit .button{width:100%}
  .service-form>fieldset{padding:20px 16px}
}
.form-alert{scroll-margin-top:96px}
.form-alert:focus{outline:0}

/* Self-cleaning burner: the feature that sets the range apart */
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.clean-feature{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:center;padding-block:clamp(56px,7vw,104px) 0}
.clean-visual{position:relative;margin:0;justify-self:center;width:min(100%,560px)}
.clean-visual img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--r-plate);box-shadow:0 30px 60px -30px rgb(30 33 37 / .55)}
/* Dashed ring marks the burner opening and turns slowly, like the grate does */
.clean-ring{position:absolute;left:50%;top:calc(50% - 16px);width:58%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;border:3px dashed var(--flame);filter:drop-shadow(0 2px 6px rgb(0 0 0 / .35));animation:turn 24s linear infinite;pointer-events:none}
.clean-ring svg{position:absolute;top:50%;right:-17px;width:34px;height:34px;padding:5px;border-radius:50%;background:var(--flame);color:var(--anthracite);transform:translateY(-50%) rotate(90deg);box-shadow:var(--gloss)}
.clean-visual figcaption{margin-top:12px;text-align:center;font-size:14px;color:var(--muted)}
@keyframes turn{to{transform:rotate(360deg)}}
.clean-copy h2{max-width:14ch}
.clean-copy>p{margin-top:18px;font-size:18px;color:var(--muted)}
.clean-steps{list-style:none;padding:0;margin:26px 0 0;counter-reset:clean;display:grid;gap:10px}
.clean-steps li{counter-increment:clean;display:flex;align-items:center;gap:14px;font-weight:600}
.clean-steps li::before{content:counter(clean);flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--flame);color:var(--anthracite);font-size:15px;box-shadow:var(--gloss)}
.clean-links{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:26px}
.clean-chip{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 8px;border-radius:var(--r-chip);background:var(--anthracite);color:var(--porcelain);font-weight:600;font-size:13px;box-shadow:var(--gloss)}
.clean-chip svg{width:15px;height:15px;color:var(--flame)}
.page-plate .plate-lead strong{color:var(--on-dark)}

/* Service page composition */
.service-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 26px}
.service-choose{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:clamp(-40px,-3vw,-20px);position:relative;z-index:2}
.service-tile{display:flex;align-items:center;gap:18px;padding:22px;border-radius:var(--r-tile);background:var(--surface);box-shadow:var(--lift);transition:transform .25s var(--snap),box-shadow .3s var(--ease-out)}
.service-tile:hover{transform:translateY(-3px);box-shadow:var(--lift-hover)}
.service-tile>svg{margin-left:auto;width:22px;color:var(--red);transition:transform .22s var(--snap)}
.service-tile:hover>svg{transform:translateX(4px)}
.tile-copy strong{display:block;font-size:20px;letter-spacing:-.02em}
.tile-copy span{display:block;color:var(--muted);font-size:15px;margin-top:2px}
.tile-icon{flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;box-shadow:var(--gloss)}
.tile-icon svg{width:26px;height:26px}
.tile-flame{background:var(--flame);color:var(--anthracite)}.tile-red{background:var(--red);color:var(--on-red)}.tile-anthracite{background:var(--anthracite);color:var(--flame)}
.service-steps-wrap{padding-block:clamp(48px,6vw,88px) clamp(40px,5vw,64px)}
.service-steps{list-style:none;padding:0;margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;position:relative}
.service-steps li{display:grid;grid-template-columns:52px 1fr;column-gap:16px;align-items:start}
.service-steps li .tile-icon{grid-row:span 2}
.service-steps h3{margin-top:4px}
.service-steps p{margin-top:8px;color:var(--muted);font-size:16px}
.service-form-wrap{max-width:none}
.service-form-head{margin-bottom:24px}
.service-form-head p{margin-top:10px;color:var(--muted)}
.service-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.service-aside{position:sticky;top:98px;border-radius:var(--r-tile);padding:26px}
.aside-price{display:flex;align-items:baseline;gap:10px;color:var(--on-dark);font-weight:600}
.aside-price strong{font-size:48px;line-height:1;color:var(--flame);letter-spacing:-.03em}
.service-aside ul{list-style:none;padding:14px 0 0;margin:14px 0 0;border-top:1px solid rgb(241 241 238 / .16);display:grid;gap:6px;color:var(--on-dark-muted);font-size:15px}
.aside-urgent{margin:22px 0 10px;font-weight:600;color:var(--on-dark)}
.service-aside .button{width:100%}
@media(max-width:1000px){.service-form-layout{grid-template-columns:1fr}.service-aside{position:static;order:-1}}
@media(max-width:900px){.clean-feature{grid-template-columns:1fr}.clean-visual{width:100%}}
@media(max-width:768px){
  .service-choose,.service-steps{grid-template-columns:1fr}
  .service-choose{margin-top:20px}
      .clean-chip{left:8px;bottom:8px;font-size:12px}
  .service-aside{display:none}
}
@media(prefers-reduced-motion:reduce){.clean-ring{animation:none}}

/* Product tile: the model name is what people should remember */
.power-tag{position:absolute;top:14px;right:16px;display:flex;align-items:baseline;gap:3px;font-weight:600;font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.power-tag small{font-size:12px;font-weight:500;color:var(--muted)}
.product-maker{margin:4px 0 16px;font-size:14px;color:var(--muted)}
.product-maker span[aria-hidden]{padding:0 2px}
@media(max-width:768px){.power-tag{top:8px;right:10px;font-size:14px}.product-maker{font-size:13px;margin-bottom:10px}.maker-category{display:none}}

/* Hero category tiles: recessed panels pressed into the red plate */
.category-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:clamp(36px,5vw,64px)}
.category-tile{position:relative;display:flex;align-items:center;gap:16px;padding:14px 18px 14px 14px;border-radius:var(--r-tile);background:rgb(0 0 0 / .18);box-shadow:inset 0 0 0 1px rgb(255 255 255 / .12),inset 0 2px 6px rgb(0 0 0 / .18);color:var(--on-red);transition:background .25s,transform .25s var(--snap)}
.category-tile:hover{background:rgb(0 0 0 / .28);transform:translateY(-2px)}
.category-thumb{flex:none;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 38% 30%,#fff,var(--porcelain) 70%);padding:8px;box-shadow:0 8px 16px -8px rgb(0 0 0 / .5)}
.category-thumb img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.category-copy{min-width:0}
.category-copy strong{display:block;font-size:17px;letter-spacing:-.01em}
.category-copy span{display:block;font-size:14px;color:var(--on-red-muted);line-height:1.35;margin-top:2px}
.category-count{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;font-size:24px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.category-count small{font-size:12px;font-weight:500;color:var(--on-red-muted);margin-top:4px}
.category-tile>svg{position:absolute;top:12px;right:12px;width:16px;opacity:0;transition:opacity .2s}
.category-tile:hover>svg{opacity:.8}

/* Service ticket: red price stub torn from a white ticket */
.service-ticket{display:grid;grid-template-columns:300px minmax(0,1fr);border-radius:var(--r-plate);overflow:hidden;background:var(--surface);box-shadow:var(--lift)}
.ticket-price{padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;justify-content:center;border-right:2px dashed rgb(251 244 238 / .35)}
.ticket-label{font-weight:600;color:var(--on-red-muted);font-size:15px}
.ticket-amount{font-size:clamp(64px,7vw,88px);font-weight:700;line-height:1;letter-spacing:-.04em;margin-top:8px;color:var(--on-red);font-variant-numeric:tabular-nums}
.ticket-amount span{font-size:.45em;margin-left:4px;vertical-align:top;position:relative;top:.25em}
.ticket-note{font-weight:600;color:var(--on-red)}
.ticket-price ul{list-style:none;padding:14px 0 0;margin:14px 0 0;border-top:1px solid rgb(251 244 238 / .22);display:grid;gap:4px;font-size:14px;color:var(--on-red-muted)}
.ticket-body{position:relative;padding:clamp(28px,4vw,52px);display:flex;flex-direction:column;justify-content:center}
.ticket-body::before,.ticket-body::after{content:'';position:absolute;left:-13px;width:24px;height:24px;border-radius:50%;background:var(--bg)}
.ticket-body::before{top:-12px}.ticket-body::after{bottom:-12px}
.ticket-body p{margin-top:14px;color:var(--muted);font-size:18px;max-width:52ch}
.ticket-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-top:26px}
@media(max-width:1300px){.category-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.category-row{grid-template-columns:1fr}}
@media(max-width:768px){
  .service-ticket{grid-template-columns:1fr;border-radius:22px}
  .ticket-price{border-right:0;border-bottom:2px dashed rgb(251 244 238 / .35)}
  .ticket-body::before,.ticket-body::after{display:none}
  .ticket-actions .button{width:100%}
  .category-row{gap:10px}
  .category-thumb{width:52px;height:52px;padding:6px}
}

/* Product gallery: large white stage, arrows, counter, bigger thumbnails */
.product-detail{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)}
.gallery:focus{outline:0}
.gallery-stage{position:relative;touch-action:pan-y}
.gallery-stage .gallery-main{width:100%;aspect-ratio:1;border-radius:var(--r-plate);background:#fff;padding:clamp(16px,3vw,36px);box-shadow:0 30px 60px -30px rgb(0 0 0 / .55)}
.gallery-stage .gallery-main>img{mix-blend-mode:normal;user-select:none;-webkit-user-drag:none}
.gallery-nav{position:absolute;top:50%;translate:0 -50%;z-index:2;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--anthracite);color:var(--porcelain);box-shadow:var(--gloss),0 8px 18px -8px rgb(0 0 0 / .5);transition:transform .22s var(--snap),background .2s}
.gallery-nav:hover{background:#000}
.gallery-nav:active{transform:scale(.92)}
.gallery-nav svg{width:24px;height:24px}
.gallery-nav.prev{left:14px}.gallery-nav.next{right:14px}
.gallery-count{position:absolute;left:16px;bottom:16px;padding:6px 12px;border-radius:999px;background:rgb(30 33 37 / .82);color:var(--porcelain);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
.gallery-stage .zoom-hint{right:16px;bottom:16px}
.gallery-thumbnails{gap:10px;padding:16px 3px 8px;scroll-snap-type:x mandatory;scroll-padding-inline:3px}
.thumbnail{width:84px;height:84px;scroll-snap-align:start}
.thumbnail:hover{box-shadow:0 0 0 2px rgb(251 244 238 / .6)}
.image-dialog .dialog-nav{position:absolute}
.image-dialog .dialog-nav.prev{left:12px}.image-dialog .dialog-nav.next{right:12px}
.image-dialog>img{touch-action:pan-y;user-select:none}
@media(max-width:900px){.product-detail{grid-template-columns:1fr}}
@media(max-width:768px){
  .gallery-stage .gallery-main{border-radius:22px}
  .gallery-nav{width:42px;height:42px}
  .gallery-nav.prev{left:8px}.gallery-nav.next{right:8px}
  .gallery-count{left:10px;bottom:10px;font-size:13px}
  .gallery-stage .zoom-hint{right:10px;bottom:10px}
  .thumbnail{width:68px;height:68px}
}

/* Legally required anchor price for the fixed service price */
.service-price .anchor-price{margin-top:6px;font-size:14px;font-weight:500;color:var(--anthracite)}
.aside-anchor{margin-top:6px;font-size:14px;color:var(--on-dark-muted)}
.ticket-anchor{margin-top:6px;font-size:13px;color:var(--on-red-muted);line-height:1.4}

/* Flue pipes catalog */
.diameter-filter{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.diameter-filter a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;box-shadow:inset 0 0 0 1px rgb(241 241 238 / .3);color:var(--on-dark);font-weight:600;font-size:15px;font-variant-numeric:tabular-nums;transition:background .2s}
.diameter-filter a:hover{background:rgb(255 255 255 / .08)}
.diameter-filter a[aria-current]{background:var(--flame);color:var(--anthracite);box-shadow:var(--gloss)}
.flue-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(24px,3vw,44px);align-items:start;padding-bottom:clamp(56px,7vw,100px)}
.flue-groups{position:sticky;top:98px;display:grid;gap:4px;padding:10px;border-radius:var(--r-tile);background:var(--surface);box-shadow:var(--lift)}
.flue-groups a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:12px;font-weight:600;font-size:15px}
.flue-groups a:hover{background:var(--bg)}
.flue-groups a[aria-current]{background:var(--anthracite);color:var(--porcelain)}
.flue-groups small{font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}
.flue-groups a[aria-current] small{color:var(--on-dark-muted)}
.flue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.flue-card .product-info h3{font-size:21px;line-height:1.2;letter-spacing:-.02em;min-height:0}
.flue-card .product-maker{min-height:2.8em}
.flue-card .product-picture{aspect-ratio:1}
.flue-title{font-size:clamp(36px,4.4vw,60px)!important;line-height:1.05!important}
.flue-kicker{font-size:16px;color:var(--on-red-muted);margin-bottom:8px}
.flue-specs .spec-table{max-width:760px}
.flue-description{max-width:760px}
.flue-description h2{margin-bottom:16px}
.flue-description p{margin-top:12px;color:var(--muted);font-size:17px}
@media(max-width:1100px){.flue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.flue-layout{grid-template-columns:1fr}.flue-groups{position:static;display:flex;flex-wrap:wrap;padding:0;background:none;box-shadow:none}.flue-groups a{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}}
@media(max-width:768px){.flue-card .product-info h3{font-size:16px}.flue-card .product-maker{min-height:3.4em}.flue-groups a{font-size:14px;min-height:40px}}

/* Company facts, about, legal */
.company-facts{display:grid;gap:14px;margin-top:18px}
.company-facts div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding-top:12px;border-top:1px solid var(--line)}
.company-facts dt{font-weight:600;font-size:15px}
.company-facts dd{margin:0;color:var(--muted);font-size:15px;font-variant-numeric:tabular-nums}
.company-facts a{color:var(--link)}
.about-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,64px);align-items:start;padding-bottom:clamp(48px,6vw,88px)}
.about-copy p{margin-top:16px;font-size:18px;color:var(--muted)}
.about-copy .text-link{display:inline}
.legal-text{max-width:760px;padding-bottom:clamp(56px,7vw,100px)}
.legal-text section{padding:22px 0;border-top:1px solid var(--line)}
.legal-text h2{font-size:clamp(20px,2vw,24px)}
.legal-text p{margin-top:10px;color:var(--muted)}
.legal-text a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.legal-sign{margin-top:28px;font-weight:600}
.footer-hours{font-size:14px!important;margin-top:18px!important}
.price-table th a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.price-table th a:hover{color:var(--link)}
.price-table thead th{font-size:14px;color:var(--muted);font-weight:600}
.price-table td{white-space:nowrap}
.price-list-page{max-width:none}
@media(max-width:900px){.about-layout{grid-template-columns:1fr}}
@media(max-width:768px){.company-facts div{grid-template-columns:1fr;gap:2px}}
.contact-mail{display:flex;width:fit-content}
.contact-service{display:flex;width:fit-content}
.withdrawal-form{margin-top:12px;padding:24px;border-radius:var(--r-tile);background:var(--surface);box-shadow:var(--lift)}
.withdrawal-form h2{font-size:clamp(20px,2vw,24px)}
.withdrawal-form p{margin-top:8px;color:var(--muted)}
.withdrawal-form ol{margin-top:14px;padding-left:20px;display:grid;gap:8px;color:var(--muted)}

/* Grouped technical table */
.spec-grouped .spec-group td{border-bottom:2px solid var(--ink)}
.spec-grouped .spec-group th{padding:22px 0 8px;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--red);border-bottom:2px solid var(--ink);background:none}
.spec-grouped tr:first-child.spec-group th{padding-top:10px}
.spec-grouped td{color:var(--ink);font-weight:500}
.spec-source{margin:-16px 0 28px;font-size:14px;color:var(--muted)}

/* About the model: highlights and side facts */
.about-model{border-bottom:1px solid var(--line)}
.about-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:clamp(24px,4vw,56px);align-items:start}
.highlights{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.highlights li{display:flex;gap:14px;padding:20px;border-radius:var(--r-tile);background:var(--surface);box-shadow:var(--lift)}
.hl-mark{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--flame);color:var(--anthracite);box-shadow:var(--gloss)}
.hl-mark svg{width:18px;height:18px}
.highlights h3{font-size:17px;letter-spacing:-.01em}
.highlights p{margin-top:6px;font-size:15px;color:var(--muted);line-height:1.55}
.about-side{display:grid;gap:14px}
.about-box{padding:20px 22px;border-radius:var(--r-tile);box-shadow:inset 0 0 0 1px var(--line)}
.about-box h3{font-size:16px}
.about-box ul{margin:10px 0 0;padding-left:18px;display:grid;gap:6px;color:var(--muted);font-size:15px}
.about-box p{margin-top:8px;color:var(--muted);font-size:15px}
.about-notes{background:var(--surface);box-shadow:var(--lift),inset 0 0 0 2px var(--flame)}
@media(max-width:1100px){.about-grid{grid-template-columns:1fr}}
@media(max-width:768px){.highlights{grid-template-columns:1fr}.highlights li{padding:16px}}

/* Colour swatches */
.color-dot{display:inline-block;width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 1px rgb(0 0 0 / .18),var(--gloss);flex:none}
.color-black{background:var(--anthracite)}.color-red{background:var(--red)}.color-white{background:#f7f7f5}.color-other{background:#999}
.detail-colors{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:-8px 0 22px;color:var(--on-red);font-weight:500}
.detail-colors>span:first-child{color:var(--on-red-muted)}
.color-name{display:inline-flex;align-items:center;gap:7px}
.detail-colors .color-dot{box-shadow:0 0 0 2px rgb(251 244 238 / .5),var(--gloss)}
.card-colors{display:flex;gap:6px;min-height:14px;margin:-8px 0 14px}
.card-colors .color-dot{width:14px;height:14px}

/* Ember: the self-cleaning feature on a near-black plate with a glow like live coals */
.ember{position:relative;isolation:isolate;overflow:hidden;background:#141619;color:var(--on-dark);padding-block:clamp(64px,8vw,128px)}
.ember::before{content:'';position:absolute;inset:-20% -10%;z-index:-1;pointer-events:none;background:radial-gradient(38% 50% at 24% 58%,rgb(255 106 26 / .30),transparent 70%),radial-gradient(30% 36% at 86% 110%,rgb(217 164 65 / .16),transparent 70%),radial-gradient(22% 30% at 60% -10%,rgb(122 22 34 / .45),transparent 70%);animation:smoulder 7s ease-in-out infinite alternate}
.ember::after{content:'';position:absolute;left:-10%;right:-10%;bottom:-2px;height:55%;z-index:-1;pointer-events:none;background:radial-gradient(60% 70% at 20% 100%,rgb(255 120 30 / .55),transparent 70%),radial-gradient(45% 60% at 55% 100%,rgb(255 70 20 / .42),transparent 70%),radial-gradient(50% 65% at 88% 100%,rgb(255 150 50 / .38),transparent 70%);filter:blur(18px);transform-origin:50% 100%;animation:fire-bed 2.6s ease-in-out infinite alternate}
@keyframes fire-bed{0%{opacity:.75;transform:scaleY(.9)}35%{opacity:1;transform:scaleY(1.06) translateX(1%)}60%{opacity:.82;transform:scaleY(.96) translateX(-1%)}100%{opacity:1;transform:scaleY(1.1)}}
.ember-canvas{position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen}
.ember .clean-visual::before{content:'';position:absolute;inset:8% 6% 14%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgb(255 110 30 / .65),transparent);filter:blur(40px);animation:flicker 3.2s ease-in-out infinite}
@keyframes flicker{0%,100%{opacity:.7;transform:scale(1)}20%{opacity:.95;transform:scale(1.05)}45%{opacity:.6;transform:scale(.97)}70%{opacity:1;transform:scale(1.08)}}
.ember .clean-visual{isolation:isolate}
@keyframes smoulder{to{opacity:.72;transform:scale(1.04)}}
.ember .clean-feature{padding-block:0}
.ember h2{color:#fff}
.glow-text{color:var(--flame);text-shadow:0 0 28px rgb(255 120 40 / .55)}
.ember .clean-copy>p{color:var(--on-dark-muted)}
.ember .clean-steps li{color:var(--on-dark)}
.ember .clean-steps li::before{background:linear-gradient(160deg,#ffb25e,#e8641f);color:#1a0d05;box-shadow:0 0 18px -2px rgb(255 120 40 / .6)}
.ember .clean-visual img{box-shadow:0 0 0 1px rgb(255 255 255 / .08),0 40px 120px -24px rgb(255 100 20 / .5)}
.ember .clean-visual figcaption{color:var(--on-dark-muted)}
.ember .clean-ring{border-color:var(--flame);filter:drop-shadow(0 0 10px rgb(255 120 40 / .6))}
.ember .clean-ring svg{background:var(--flame)}
.ember .text-link{color:var(--flame)}
/* The grate ring follows the page scroll once client.js takes over. */
.scroll-turn .clean-ring{animation:none;transform:rotate(var(--turn,0deg))}

/* Power calculator */
.calc-teaser{margin-bottom:clamp(40px,5vw,72px);display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(24px,4vw,64px);align-items:start;margin-top:clamp(56px,7vw,104px);padding:clamp(24px,4vw,56px);border-radius:var(--r-plate);background:var(--surface);box-shadow:var(--lift),inset 0 0 0 1px var(--line)}
.calc-teaser h2{font-size:clamp(30px,3.4vw,48px);max-width:11ch}
.calc-teaser-copy p{margin-top:14px;color:var(--muted);font-size:18px;max-width:34ch}
.calc-form{display:grid;gap:22px;min-width:0}
.calc-field{border:0;margin:0;padding:0;min-width:0}
.calc-field>label,.calc-field legend{display:block;margin-bottom:10px;font-weight:700;font-size:15px}
.area-input{display:flex;align-items:center;max-width:260px;border-radius:var(--r-control);background:var(--bg);box-shadow:inset 0 0 0 2px var(--line)}
.area-input:focus-within{box-shadow:inset 0 0 0 2px var(--red)}
.area-input input{flex:1;min-width:0;min-height:60px;padding:0 0 0 20px;border:0;background:transparent;font:inherit;font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;outline:0}
.area-input span{padding:0 20px;color:var(--muted);font-weight:600}
.calc-submit{justify-self:start}
.calc-page{display:grid;gap:clamp(32px,4vw,56px);padding-block:clamp(32px,4vw,56px) clamp(48px,6vw,88px)}
.calc-page>.calc-form{max-width:860px}
.calc-result{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(24px,4vw,56px);align-items:start;scroll-margin-top:100px}
.calc-need{padding:clamp(24px,3vw,36px);border-radius:var(--r-plate);background:var(--anthracite);color:var(--on-dark);box-shadow:var(--lift)}
.calc-label{font-weight:600;color:var(--on-dark-muted)}
.calc-kw{display:flex;align-items:baseline;gap:10px;margin-top:6px;line-height:1}
.calc-kw strong{white-space:nowrap;font-size:clamp(60px,7vw,104px);font-weight:700;letter-spacing:-.04em;color:var(--flame);text-shadow:0 0 36px rgb(255 120 40 / .45);font-variant-numeric:tabular-nums}
.calc-kw>span{font-size:28px;font-weight:700}
.calc-dash{margin-inline:.06em;font-weight:500;opacity:.8}
.calc-formula{margin-top:16px;font-variant-numeric:tabular-nums;color:var(--on-dark)}
.calc-disclaimer{margin-top:12px;font-size:14px;color:var(--on-dark-muted)}
.calc-models h2{font-size:clamp(24px,2.4vw,32px);margin-bottom:18px}
.calc-picks{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.calc-empty{color:var(--muted);font-size:18px}
.calc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:24px}
@media(max-width:900px){.calc-teaser,.calc-result{grid-template-columns:1fr}}
@media(max-width:560px){.calc-submit{width:100%}}

/* Model comparison */
.compare-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:14px;align-items:end;margin-top:28px}
.compare-slot .select select{color:var(--ink);font-weight:600}
.compare-slot label{display:block;margin-bottom:8px;font-weight:600;font-size:14px;color:var(--on-dark-muted)}
.compare-page{padding-block:clamp(32px,4vw,56px) clamp(48px,6vw,88px)}
.compare-table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0;table-layout:fixed}
.compare-table thead th{padding:0 10px 18px;vertical-align:bottom;text-align:left}
.compare-table thead td{width:22%}
.compare-table thead a{display:grid;gap:2px}
.compare-table thead img{width:100%;max-width:180px;aspect-ratio:1;object-fit:contain;border-radius:var(--r-tile);background:var(--surface);margin-bottom:10px;transition:transform .3s var(--snap)}
.compare-table thead a:hover img{transform:translateY(-4px)}
.compare-maker{font-size:13px;font-weight:600;color:var(--muted)}
.compare-model{font-size:clamp(20px,2vw,26px);font-weight:700;line-height:1.1}
.compare-table tbody th,.compare-table tbody td{padding:14px 10px;border-top:1px solid var(--line);vertical-align:top;text-align:left;font-variant-numeric:tabular-nums}
.compare-table tbody th{font-weight:600;color:var(--muted);font-size:15px}
.compare-table tbody tr:hover>*{background:var(--surface)}
.compare-table .price-value strong{font-size:18px}
.compare-table .price small{display:block;font-size:12px;color:var(--muted)}
.compare-table tbody th,.compare-table thead td{position:sticky;left:0;z-index:1;background:var(--bg)}
.muted-dash{color:var(--muted)}
.compare-page .spec-source{margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}
.results-compare{color:var(--link);font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.compare-form{grid-template-columns:1fr}.compare-submit{width:100%}}

/* Scroll reveal: client.js marks below-the-fold blocks, which rise into place as they enter the view. */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .35s ease-out,transform .45s var(--snap)}
.reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.ember::before,.ember::after,.ember .clean-visual::before{animation:none}.ember-canvas{display:none}}
.calc-cover{margin-top:16px;font-size:15px;color:var(--muted)}

/* Calls to action in the logo's leaf green: the complement of the red plates, so the next step always
   stands out, with dark text for contrast. Secondary actions (.button-outline) stay quiet. */
:root{--cta-1:#a2d65c;--cta-2:#8cc63f;--cta-3:#7ab332;--on-cta:#1e2125;--cta-glow:rgb(110 160 40 / .5)}
.button,.button-porcelain,.nav-call,.closing-phone{background:linear-gradient(135deg,var(--cta-1) 0%,var(--cta-2) 55%,var(--cta-3) 100%);background-size:160% 160%;background-position:0% 0%;color:var(--on-cta);box-shadow:inset 0 1px 0 rgb(255 255 255 / .45),inset 0 -2px 0 rgb(50 90 10 / .25),0 10px 26px -10px var(--cta-glow);transition:transform .22s var(--snap),background-position .4s ease,box-shadow .3s ease}
.button:hover,.button-porcelain:hover,.nav-call:hover,.closing-phone:hover{background:linear-gradient(135deg,var(--cta-1) 0%,var(--cta-2) 55%,var(--cta-3) 100%);background-size:160% 160%;background-position:100% 100%;box-shadow:inset 0 1px 0 rgb(255 255 255 / .5),inset 0 -2px 0 rgb(50 90 10 / .25),0 14px 34px -10px rgb(120 175 45 / .7)}
.button svg,.nav-call svg{color:currentColor}
.enamel-red .button,.enamel-anthracite .button,.ember .button{box-shadow:inset 0 1px 0 rgb(255 255 255 / .45),inset 0 -2px 0 rgb(50 90 10 / .25),0 12px 32px -8px rgb(0 0 0 / .45)}
.button-outline,.button-outline:hover{background:transparent;box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}
.button-outline:hover{background:var(--ink);color:var(--bg)}
.button:focus-visible,.nav-call:focus-visible{outline-color:var(--anthracite)}
.enamel-red .button:focus-visible,.enamel-anthracite .button:focus-visible{outline-color:#fff}

/* Pick-one option cards (service form, calculator): a radio dot on the left, the chosen card outlined in red. */
.opt-field{border:0;margin:0;padding:0;min-width:0}
.opt-field legend{display:flex;align-items:baseline;gap:6px;padding:0;margin-bottom:10px;font-weight:700;font-size:15px}
.opt-note{margin-left:6px;font-weight:500;font-size:13px;color:var(--muted)}
.opt-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px}
.opt{position:relative;display:flex;align-items:flex-start;gap:12px;min-height:64px;padding:14px 16px;border-radius:14px;background:var(--bg);box-shadow:inset 0 0 0 1.5px var(--line);cursor:pointer;transition:box-shadow .2s,background .2s,transform .2s var(--snap)}
.opt:hover{box-shadow:inset 0 0 0 1.5px #a9acb0}
.opt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.opt-dot{flex:none;width:22px;height:22px;margin-top:1px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 2px #9a9ea3;transition:box-shadow .2s}
.opt-text{display:grid;gap:2px;flex:1;min-width:0}
.opt-text strong{font-size:16px;line-height:1.3}
.opt-text small{font-size:13px;line-height:1.4;color:var(--muted)}
.opt-icon{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--surface-2);color:var(--muted)}
.opt-icon svg{width:20px;height:20px}
.opt:has(input:checked){background:#fff;box-shadow:inset 0 0 0 2px var(--red),0 8px 20px -14px rgb(122 22 34 / .6)}
.opt:has(input:checked) .opt-dot{box-shadow:inset 0 0 0 2px var(--red),inset 0 0 0 6px #fff;background:var(--red)}
.opt:has(input:checked) .opt-icon{background:var(--red);color:var(--on-red)}
.opt-urgent:has(input:checked) .opt-text strong{color:var(--red)}
.opt:has(input:focus-visible){outline:3px solid var(--red);outline-offset:3px}
.opt:has(input[aria-invalid=true]){box-shadow:inset 0 0 0 1.5px #b3261e}
.calc-field .opt-group{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}

/* Palette from the logo: bordo for the brand, logo green only for actions, logo orange for warmth and fire.
   Focus rings are bordo on light surfaces and orange on dark or red ones, where each has the contrast. */
.enamel-red :focus-visible,.enamel-anthracite :focus-visible,.ember :focus-visible,.site-footer :focus-visible{outline-color:var(--flame)}
::selection{color:#fff}
.plate-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.plate-tool{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;box-shadow:inset 0 0 0 1px rgb(241 241 238 / .3);color:var(--on-dark);font-weight:600;font-size:15px;transition:background .2s}
.plate-tool:hover{background:rgb(241 241 238 / .1)}
.plate-tool svg{width:18px;height:18px;color:var(--flame)}
.section-end{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 28px}
/* Header with six nav items: labels never wrap; the call collapses to its icon, then the nav to the menu button. */
.desktop-nav a{white-space:nowrap}
@media(max-width:1240px){.nav-call span{display:none}.nav-call{width:46px;padding:0;justify-content:center}.desktop-nav a{padding:10px 12px}}
@media(max-width:1000px){.desktop-nav{display:none}.menu-toggle{display:grid}.nav-actions{margin-left:auto}}
/* Sidreni cjenik: the sales point and its published files, like the regulator's layout */
.price-merchant{font-weight:700;color:var(--ink)!important;margin-top:14px}
.price-store{margin-bottom:28px;padding:clamp(20px,3vw,32px);border-radius:var(--r-tile);background:var(--surface);box-shadow:var(--lift)}
.price-store h2{font-size:22px}
.price-store p{margin-top:6px;color:var(--muted)}
.price-store p a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.price-store .download-actions{margin-top:18px}
.price-files th[scope=row] a{color:var(--link);font-weight:500;font-size:14px;word-break:break-all;text-decoration:underline;text-underline-offset:3px}
.price-files td{font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.price-overview{margin:clamp(36px,5vw,56px) 0 18px;font-size:clamp(24px,2.4vw,32px)}

/* Cookie consent: a quiet bar at the bottom, two equal choices, nothing tracked before an answer */
.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:40;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;max-width:980px;margin-inline:auto;padding:18px 20px;border-radius:var(--r-tile);background:var(--anthracite);color:var(--on-dark);box-shadow:0 20px 50px -18px rgb(0 0 0 / .6)}
.consent[hidden]{display:none}
.consent p{flex:1 1 380px;font-size:15px;line-height:1.5;color:var(--on-dark-muted)}
.consent a{color:var(--on-dark);text-decoration:underline;text-underline-offset:3px}
.consent-actions{display:flex;gap:10px;flex-wrap:wrap}
.consent .button{min-height:46px;padding:8px 20px;font-size:15px}
.consent .button-outline{color:var(--on-dark);box-shadow:inset 0 0 0 2px var(--on-dark-muted)}
.consent .button-outline:hover{background:var(--on-dark);color:var(--anthracite)}
.consent-open{padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media(max-width:560px){.consent{left:10px;right:10px;bottom:10px;padding:16px}.consent-actions{width:100%}.consent .button{flex:1}}
