/* styles.css */
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url('./assets/optimized/golos-cyrillic-17d048ca05.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url('./assets/optimized/golos-latin-9a69d0aa47.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:'Pliant';font-style:normal;font-weight:700;font-display:swap;src:url('./assets/optimized/pliant-cyrillic-a7d1f636ad.woff2') format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:'Pliant';font-style:normal;font-weight:700;font-display:swap;src:url('./assets/optimized/pliant-latin-e975218178.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;}

:root {
  color-scheme: light;
  --ink: #13171e;
  --secondary: #414752;
  --ground: #d9dce0;
  --action: #050708;
  --action-hover: #2c3035;
  --white: #fff;
  --brand: #720d17;
  --line: #92969e;
  --error: #a82126;
  --focus: #8c1722;
  --gutter: clamp(24px, 4.05vw, 78px);
  --model-transition: 650ms;
  --ease: cubic-bezier(.22,.75,.2,1);
  font-family: 'Golos Text', Arial, sans-serif;
  color: var(--ink);
  background: var(--ground);
  font-synthesis: none;
  scrollbar-color: #92969e var(--ground);
}
* { box-sizing: border-box; }
body { margin: 0; }
button, input { font: inherit; }
button, a, input { -webkit-tap-highlight-color: transparent; }
button, a { touch-action: manipulation; }
button { color: inherit; cursor: pointer; }
a { color: inherit; text-underline-offset: 4px; }
button:focus-visible, a:focus-visible, input:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
::selection { background: var(--brand); color: var(--white); }
input { caret-color: var(--brand); }
[hidden] { display: none !important; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.skip-link { position:fixed; top:12px; left:20px; z-index:100; padding:12px 20px; background:var(--white); transform:translateY(-180%); }
.skip-link:focus { transform:none; }
.hero { position:relative; isolation:isolate; display:grid; grid-template-rows:auto auto minmax(min-content,1fr); height:auto; min-height:max(720px,100svh); overflow:clip; background-color:var(--ground); background-image:url('./assets/optimized/showroom-1586-55e6f8bf1f.webp'); background-image:image-set(url('./assets/optimized/showroom-1586-e2ffba0dc6.avif') type('image/avif'),url('./assets/optimized/showroom-1586-55e6f8bf1f.webp') type('image/webp')); background-size:var(--backdrop-width,100%) var(--backdrop-height,120%); background-position:center bottom; background-repeat:no-repeat; }
.header { display:flex; align-items:center; justify-content:space-between; gap:24px; min-width:0; min-height:88px; padding:22px var(--gutter) 10px; }
.brand { display:block; width:24vw; max-width:360px; line-height:0; }
.brand img { display:block; width:100%; height:auto; }
.header-contact { display:flex; align-items:center; gap:26px; }
.origin { font-size:clamp(14px,1.2vw,19px); white-space:nowrap; }
.phone { display:flex; align-items:center; gap:10px; text-decoration:none; font-size:clamp(17px,1.55vw,25px); font-weight:700; white-space:nowrap; }
.phone svg, .button-secondary svg { width:20px; height:20px; flex:0 0 20px; fill:currentColor; }
.phone svg, .button-secondary svg { color:#16733d; }
.phone svg { width:24px; height:24px; flex-basis:24px; transform-origin:50% 75%; }
a[href^="tel:"] .call-handset { width:24px; height:24px; flex:0 0 24px; fill:currentColor; color:#16733d; transform-origin:50% 75%; }
a[href^="tel:"]:has(.call-handset) { display:inline-flex; align-items:center; gap:8px; }
.phone-mobile { display:none; }
.origin + .phone { padding-left:26px; border-left:1px solid var(--line); }
.introduction { position:relative; z-index:5; display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.48fr); align-items:start; gap:10px 32px; margin:20px var(--gutter) 10px; min-width:0; }
h1 { grid-column:1; grid-row:1; margin:0; font-family:Pliant,'Golos Text',sans-serif; font-size:clamp(36px,3.4vw,60px); line-height:1.03; font-weight:700; letter-spacing:-.03em; word-spacing:.14em; text-wrap:balance; }
.lead { grid-column:1; grid-row:2; margin:0; max-width:62ch; font-size:clamp(16px,1.25vw,21px); line-height:1.4; text-wrap:balance; }
.lead-mobile, .stage-model-labels { display:none; }
.hero-actions { grid-column:2; grid-row:1 / 3; min-width:0; margin-top:6px; }
.actions-row { display:grid; grid-template-columns:minmax(0,1.14fr) minmax(0,1fr); gap:10px; }
.button { display:inline-flex; justify-content:center; align-items:center; gap:9px; min-width:0; min-height:54px; padding:14px 17px; border:1px solid var(--action); border-radius:8px; font-size:16px; line-height:1.3; font-weight:600; text-decoration:none; text-align:center; white-space:nowrap; transition:background 140ms ease,color 140ms ease,border-color 140ms ease; }
.button-primary { color:var(--white); background:var(--action); }
.button-primary:hover { background:var(--action-hover); border-color:var(--action-hover); }
.button-primary:active { background:#050708; }
.button-secondary { color:var(--ink); background:#ffffffd9; border-color:#858a93; }
.button-secondary:hover { background:var(--white); border-color:var(--ink); }
.button-secondary:active { background:#e9ebee; }
.action-explanation { margin:11px 0 0; font-size:13px; line-height:1.4; color:var(--secondary); }
.showroom { position:relative; display:grid; grid-template-rows:minmax(250px,1fr) auto auto auto; min-width:0; min-height:0; padding-bottom:16px; }
.stage { position:relative; min-width:0; min-height:0; margin:0 var(--gutter); isolation:isolate; touch-action:pan-y; user-select:none; cursor:grab; --side-shift:30vw; }
.showroom[data-intro="true"], .stage[data-intro="true"] { --model-transition:217ms; }
.stage[data-dragging="true"], .stage[data-dragging="true"] .vehicle { cursor:grabbing; }
.vehicle { position:absolute; left:50%; bottom:0; z-index:3; width:46%; height:100%; padding:0; border:0; border-radius:0; background:transparent; cursor:grab; transform:translateX(-50%); transform-origin:center bottom; transition:transform var(--model-transition) var(--ease); }
.vehicle[data-position="left"] { z-index:1; transform:translate(calc(-50% - var(--side-shift)),-24px) scale(.66); }
.vehicle[data-position="right"] { z-index:2; transform:translate(calc(-50% + var(--side-shift)),-24px) scale(.66); }
.vehicle::after { content:""; position:absolute; z-index:-1; left:8%; right:5%; bottom:-2px; height:4%; border-radius:50%; background:#20242b38; filter:blur(9px); }
.vehicle-picture { position:absolute; inset:0; display:block; }
.vehicle-picture img { display:block; width:100%; height:100%; object-fit:contain; object-position:center bottom; pointer-events:none; }
.vehicle-lights { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; opacity:0; }
.vehicle[data-headlights="true"][data-position="center"] .vehicle-lights { opacity:1; }
.vehicle:focus-visible { outline-offset:0; border-radius:8px; }
.carousel-controls { display:contents; }
.carousel-current { display:none; }
.carousel-arrow { position:absolute; top:54%; z-index:6; display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid #8e949d; border-radius:50%; background:#f7f8faeb; transition:background 140ms ease,border-color 140ms ease; }
.carousel-arrow:hover { background:var(--white); border-color:var(--ink); }
.carousel-arrow svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.previous { left:0; }
.next { right:0; }
.model-prices { position:relative; display:grid; grid-template-columns:minmax(0,1fr); min-width:0; height:auto; min-height:185px; margin:9px var(--gutter) 0; }
.model-price { position:relative; grid-area:1 / 1; justify-self:center; display:flex; flex-direction:column; align-items:center; gap:5px; width:33.333%; min-width:0; min-height:140px; padding:6px 4px 8px; border:0; border-radius:8px; background:transparent; transform:translateX(0); transition:transform var(--model-transition) var(--ease); }
.model-price[data-position="left"] { transform:translateX(-100%); }
.model-price[data-position="right"] { transform:translateX(100%); }
.model-price:hover { background:#ffffff29; }
.model-name { position:relative; font-size:clamp(18px,1.48vw,26px); line-height:1.2; font-weight:700; }
.model-name::after { content:""; position:absolute; left:50%; bottom:-4px; width:36px; height:3px; background:var(--brand); transform:translateX(-50%) scaleX(0); }
.model-price[aria-pressed="true"] .model-name::after { transform:translateX(-50%) scaleX(1); }
.model-tagline { display:block; max-width:31ch; min-height:36px; font-size:clamp(13px,1vw,16px); line-height:1.35; color:var(--secondary); text-wrap:balance; }
.price-amount { font-size:clamp(24px,2.04vw,35px); line-height:1.2; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap; }
.hero-old-price { display:inline-block; margin-right:8px; color:var(--secondary); font-size:clamp(12px,1vw,15px); font-weight:400; text-decoration-thickness:1px; }
.price-from { font-size:.72em; }
.model-status { display:block; min-height:18px; font-size:clamp(12px,1vw,15px); line-height:1.4; color:var(--secondary); }
.model-package-offer { display:block; max-width:100%; color:var(--brand); font-size:clamp(12px,1vw,14px); line-height:1.4; }
.mobile-package-offer { display:none; }
@media(min-width:701px) {
  .model-price { display:grid; grid-template-rows:auto 36px auto 18px auto; justify-items:center; align-items:start; row-gap:5px; }
  .model-name { grid-row:1; }
  .model-tagline { grid-row:2; }
  .price-amount { grid-row:3; }
  .model-status { grid-row:4; }
  .model-package-offer { grid-row:5; }
  .model-price[data-model="joker"] .model-status { grid-row:5; color:var(--brand); font-size:clamp(12px,1vw,14px); }
}
.specifications { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; width:min(calc(100% - 2 * var(--gutter)),710px); min-height:78px; margin:10px auto 0; text-align:center; }
.specifications > div { min-width:0; }
.specifications > div + div { border-left:1px solid #8e949d80; }
.specifications dd { margin:0; }
.specifications strong { display:block; font-size:clamp(21px,1.7vw,29px); line-height:1.2; font-weight:700; white-space:nowrap; font-variant-numeric:tabular-nums; }
.specifications dd > span { display:block; margin-top:4px; padding-inline:3px; font-size:clamp(13px,1.08vw,17px); line-height:1.4; color:var(--secondary); }
.price-note { margin:16px var(--gutter) 0; text-align:center; color:var(--secondary); font-size:12px; line-height:1.4; }
.equipment-note { display:inline; margin-left:4px; }
.no-script { margin:16px; padding:16px; background:var(--white); }
.request-dialog { position:fixed; inset:0 0 0 auto; margin:0; width:min(100%,480px); height:100%; max-height:100dvh; max-width:100%; border:0; padding:0; color:var(--ink); background:#f5f6f7; box-shadow:-16px 0 50px #10151b30; overflow:auto; overscroll-behavior:contain; }
.request-dialog::backdrop { background:#13171e80; }
.request-content { position:relative; padding:68px 32px 28px; }
.dialog-close { position:absolute; top:14px; right:18px; display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid #92969e; border-radius:8px; background:#fff; }
.dialog-close:hover { background:#e3e5e8; }
.dialog-close svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; }
.request-content h2 { margin:0; font-size:32px; line-height:1.12; letter-spacing:-.02em; }
#request-description { margin:16px 0 24px; color:var(--secondary); font-size:16px; line-height:1.5; }
.request-context { margin:0 0 20px; padding:10px 12px; background:#e4e7eb; font-size:14px; line-height:1.4; }
.field { display:block; margin-bottom:19px; font-size:15px; line-height:1.4; font-weight:600; }
.optional { margin-left:6px; color:var(--secondary); font-size:13px; font-weight:400; }
.field input { display:block; width:100%; min-height:50px; margin-top:8px; padding:12px 13px; border:1px solid #8a919c; border-radius:8px; color:var(--ink); background:var(--white); font-size:16px; font-weight:400; }
.field input::placeholder { color:#636974; }
.field input[aria-invalid="true"] { border-color:var(--error); }
.field-error { display:block; margin:6px 0 0; color:var(--error); font-size:13px; font-weight:400; line-height:1.4; }
.consent { display:flex; align-items:flex-start; gap:10px; margin:23px 0; color:var(--secondary); font-size:13px; line-height:1.5; }
.consent input { width:20px; height:20px; flex:0 0 20px; margin:0; accent-color:var(--brand); }
.consent-error { margin:-12px 0 16px; }
.form-submit { width:100%; }
.preview-notice { margin:14px 0 0; text-align:center; font-size:12px; color:var(--secondary); line-height:1.5; }
.form-feedback { margin:20px 0 0; padding:14px; background:#e2e5e9; font-size:15px; line-height:1.5; }
body:has(.request-dialog[open]) { overflow:hidden; }
@media(min-width:1101px) and (max-height:800px) {
  .hero { min-height:max(760px,100svh); }
  .header { min-height:74px; padding-top:16px; }
  .brand { width:21.5vw; }
  .introduction { margin-top:12px; margin-bottom:6px; }
  h1 { font-size:clamp(36px,3.1vw,52px); }
  .lead { font-size:16px; }
  .button { min-height:50px; padding-block:12px; }
  .action-explanation { font-size:12px; margin-top:8px; }
  .showroom { grid-template-rows:minmax(220px,1fr) auto auto auto; padding-bottom:12px; }
  .model-price { min-height:85px; }
  .model-name { font-size:19px; }
  .price-amount { font-size:26px; }
  .specifications { margin-top:5px; }
  .specifications strong { font-size:22px; }
  .price-note { margin-top:12px; }
}
@media(min-width:701px) and (max-width:1100px) {
  .hero { height:auto; min-height:100svh; grid-template-rows:auto auto auto; align-content:start; }
  .header { min-height:76px; padding-top:18px; }
  .brand { width:25vw; }
  .header-contact { gap:16px; }
  .origin { font-size:13px; }
  .origin + .phone { padding-left:16px; }
  .phone { font-size:17px; }
  .introduction { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px 25px; margin-top:22px; margin-bottom:16px; }
  h1 { grid-column:1 / -1; grid-row:1; font-size:clamp(34px,4vw,44px); }
  .lead { grid-column:1; grid-row:2; margin:0; max-width:40ch; font-size:16px; }
  .hero-actions { grid-column:2; grid-row:2; margin:0; }
  .button { min-height:50px; font-size:15px; padding:12px; }
  .action-explanation { font-size:12px; margin-top:8px; }
  .desktop-break { display:none; }
  .stage { height:clamp(270px,34vw,370px); }
  .showroom { grid-template-rows:auto auto auto auto; }
  .vehicle { width:50%; }
  .vehicle[data-position="left"] { transform:translate(calc(-50% - var(--side-shift)),-20px) scale(.64); }
  .vehicle[data-position="right"] { transform:translate(calc(-50% + var(--side-shift)),-20px) scale(.64); }
  .model-price { min-height:94px; }
  .model-name { font-size:18px; }
  .price-amount { font-size:25px; }
  .model-status { font-size:12px; }
  .hero-old-price { display:block; margin:0 0 2px; }
  .model-prices { min-height:215px; }
  .model-price { grid-template-rows:auto 56px 48px 18px auto; }
  .price-amount { align-self:end; }
  .specifications { margin-top:12px; }
  .price-note { margin-top:18px; }
}
@media(min-width:1101px) and (max-height:900px) {
  .hero .specifications { display:none; }
  .vehicle { height:92%; }
  .vehicle[data-position="left"] { transform:translate(calc(-50% - var(--side-shift)),-24px) scale(.62); }
  .vehicle[data-position="right"] { transform:translate(calc(-50% + var(--side-shift)),-24px) scale(.62); }
}
@media(max-width:700px) {
  :root { --gutter:20px; }
  .hero { display:flex; flex-direction:column; align-items:stretch; height:auto; min-height:0; padding-bottom:24px; overflow:clip; background-image:url('./assets/optimized/showroom-960-93d8e23b42.webp'); background-image:image-set(url('./assets/optimized/showroom-960-7f55451ded.avif') type('image/avif'),url('./assets/optimized/showroom-960-93d8e23b42.webp') type('image/webp')); }
  .header { order:0; min-height:64px; padding:16px var(--gutter) 8px; gap:12px; }
  .brand { display:flex; align-items:center; min-height:44px; width:160px; max-width:160px; min-width:72px; flex:0 1 160px; }
  .header-contact { flex:0 0 auto; }
  .origin { display:none; }
  .origin + .phone { border:0; padding:0; }
  .phone { min-height:44px; font-size:14px; gap:6px; }
  .phone svg { width:22px; height:22px; flex-basis:22px; }
  .phone-number { display:inline; }
  .phone-mobile { display:none; }
  .introduction, .showroom { display:contents; }
  h1 { order:1; margin:10px var(--gutter) 0; font-size:clamp(25px,7.3vw,48px); line-height:1.06; letter-spacing:-.025em; overflow-wrap:anywhere; }
  .lead { order:2; max-width:40ch; margin:10px var(--gutter) 0; font-size:15px; line-height:1.4; }
  .lead-desktop { display:none; }
  .lead-mobile { display:inline; }
  .stage { --vehicle-space:min(calc((100vw - 24px) * .4515),273px); order:3; flex:none; height:auto; padding-top:var(--vehicle-space); margin:6px 12px 0; overflow:clip; }
  .vehicle { top:0; bottom:auto; height:var(--vehicle-space); width:48.3%; max-width:none; transform:translateX(-50%); transition:transform var(--model-transition) var(--ease); }
  .vehicle[data-position="left"] { transform:translate(calc(-50% - var(--side-shift)),-12px) scale(.5447619); }
  .vehicle[data-position="right"] { transform:translate(calc(-50% + var(--side-shift)),-12px) scale(.5447619); }
  .vehicle[data-position] { opacity:1; visibility:visible; pointer-events:auto; }
  .stage-model-labels { position:relative; inset:auto; display:block; height:22px; margin-top:4px; pointer-events:none; }
  .stage-model-label { position:absolute; left:50%; bottom:0; width:26%; transform:translateX(-50%); color:var(--secondary); font-size:11px; line-height:1.4; text-align:center; white-space:nowrap; transition:transform var(--model-transition) var(--ease); }
  .stage-model-label[data-position="left"] { transform:translateX(calc(-50% - var(--side-shift))); }
  .stage-model-label[data-position="right"] { transform:translateX(calc(-50% + var(--side-shift))); }
  .stage-model-label[data-position="center"] { color:var(--ink); font-weight:700; text-decoration:underline; text-decoration-color:var(--brand); text-decoration-thickness:2px; text-underline-offset:4px; }
  .vehicle::after { filter:blur(6px); }
  .carousel-controls { position:relative; inset:auto; display:grid; grid-template-columns:minmax(44px,26%) minmax(0,1fr) minmax(44px,26%); grid-template-rows:44px minmax(24px,auto) minmax(18px,auto) minmax(34px,auto); align-items:center; gap:2px 8px; height:auto; }
  .carousel-arrow { position:relative; inset:auto; justify-self:center; width:44px; height:44px; border:0; background:transparent; }
  .carousel-arrow::before { content:""; position:absolute; inset:7px; border:1px solid #8e949d; border-radius:50%; background:#f7f8faf2; }
  .carousel-arrow:hover { background:transparent; }
  .carousel-arrow:hover::before { background:#fff; border-color:var(--ink); }
  .carousel-arrow svg { position:relative; width:16px; height:16px; }
  .previous { grid-column:1; grid-row:1; }
  .next { grid-column:3; grid-row:1; }
  .carousel-current { display:contents; text-align:center; }
  .carousel-current strong { grid-column:2; grid-row:1; min-width:0; font-size:clamp(12px,4.2vw,16px); line-height:1.2; }
  .current-price-line { grid-column:1 / -1; grid-row:2; display:flex; flex-wrap:wrap; align-items:baseline; justify-content:center; gap:4px 8px; }
  .current-price-line > span { font-size:20px; line-height:1.2; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap; }
  .current-regular-price { font-size:12px; line-height:1.2; font-weight:400; color:var(--secondary); text-decoration-thickness:1px; }
  .current-status { grid-column:1 / -1; grid-row:3; max-width:100%; margin:0; font-size:12px; line-height:1.4; color:var(--secondary); }
  .current-status[data-promotion="true"] { grid-row:4; align-self:start; color:var(--brand); }
  .hero-actions { order:4; margin:14px var(--gutter) 0; }
  .actions-row { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:10px; }
  .button { min-height:52px; padding:13px 12px; font-size:16px; }
  .button-secondary svg { width:18px; height:18px; flex-basis:18px; }
  .action-explanation { margin-top:9px; font-size:12px; line-height:1.4; text-align:center; }
  .desktop-break { display:none; }
  .model-prices { order:5; position:static; display:flex; flex-direction:column; height:auto; margin:22px var(--gutter) 0; border-top:1px solid #8e949d80; }
  .model-price, .model-price[data-position] { position:relative; inset:auto; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:6px 12px; width:100%; min-height:0; margin:0; padding:14px 10px; border:0; border-bottom:1px solid #8e949d80; border-radius:0; transform:none; transition:background 140ms ease; text-align:left; }
  .model-price[aria-pressed="true"] { background:#ffffff70; }
  .model-name { grid-column:1; grid-row:1; justify-self:start; font-size:16px; }
  .model-name::after { display:none; }
  .price-amount { grid-column:2; grid-row:1; font-size:18px; letter-spacing:-.02em; }
  .price-from { font-size:.75em; }
  .model-tagline { grid-column:1 / -1; grid-row:2; max-width:none; min-height:0; padding:0; font-size:14px; line-height:1.4; text-wrap:initial; }
  .model-status { grid-column:1 / -1; grid-row:3; max-width:none; min-height:0; font-size:12px; line-height:1.4; }
  .specifications { order:6; display:grid; grid-template-columns:minmax(0,1fr); gap:0; width:auto; min-height:0; margin:18px var(--gutter) 0; text-align:left; }
  .specifications > div { padding:10px 0; }
  .specifications > div + div { border-left:0; border-top:1px solid #8e949d50; }
  .specifications dd { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:baseline; gap:12px; }
  .specifications strong { font-size:18px; line-height:1.3; letter-spacing:0; white-space:normal; overflow-wrap:anywhere; }
  .specifications dd > span { margin:0; padding:0; font-size:13px; line-height:1.4; text-align:right; }
  .model-prices, .specifications, .price-note { display:none; }
  .mobile-package-offer { grid-column:1 / -1; grid-row:4; align-self:start; display:block; margin:0; color:var(--brand); text-align:center; font-size:12px; line-height:1.4; }
  .equipment-note { display:block; max-width:42ch; margin:3px auto 0; }
  .request-content { padding:67px 24px 24px; }
  .request-content h2 { font-size:29px; overflow-wrap:anywhere; }
}
@media(max-width:360px) {
  :root { --gutter:16px; }
  h1 { font-size:clamp(20px,7.3vw,26px); }
  .lead { font-size:14px; }
  .actions-row { grid-template-columns:minmax(0,1fr); gap:8px; }
  .model-price, .model-price[data-position] { grid-template-columns:minmax(0,1fr); padding:12px 8px; gap:5px; }
  .model-name { grid-column:1; grid-row:1; }
  .model-tagline { grid-column:1; grid-row:2; }
  .price-amount { grid-column:1; grid-row:3; font-size:19px; }
  .model-status { grid-column:1; grid-row:4; }
  .carousel-controls { column-gap:6px; }
  .current-price-line > span { font-size:18px; }
  .request-content { padding-inline:20px; }
}
@media(max-width:280px) {
  :root { --gutter:12px; }
  .header { flex-wrap:wrap; gap:0; }
  .brand { width:160px; flex-basis:100%; }
  .header-contact { width:100%; }
  .phone { width:auto; min-height:44px; font-size:13px; justify-content:flex-start; }
  .phone-mobile { display:none; }
  h1 { font-size:clamp(16px,7.3vw,20px); }
  .vehicle[data-position="left"] { transform:translate(calc(-50% - var(--side-shift)),-6px) scale(.5447619); }
  .vehicle[data-position="right"] { transform:translate(calc(-50% + var(--side-shift)),-6px) scale(.5447619); }
  .stage-model-label { font-size:9px; }
  .carousel-controls { grid-template-rows:44px minmax(44px,auto) minmax(34px,auto) minmax(51px,auto); column-gap:3px; }
  .current-price-line { align-self:stretch; align-content:end; }
  .button { font-size:14px; padding-inline:8px; }
  .model-name { font-size:15px; }
  .model-tagline { font-size:13px; }
  .specifications dd { grid-template-columns:minmax(0,1fr); gap:3px; }
  .specifications dd > span { text-align:left; }
  .request-content { padding-inline:14px; }
  .request-content h2 { font-size:25px; }
  .consent { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  *, *::before, *::after { transition-duration:0ms !important; animation:none !important; scroll-behavior:auto !important; }
}

/* comparison.css */
.comparison { background:#f1f3f5; color:var(--ink); scroll-margin-top:16px; }
.cmp-inner { width:min(calc(100% - 32px),1480px); margin-inline:auto; padding:32px 0 24px; }
.cmp-heading { margin-bottom:24px; }
.cmp-heading h2 { margin:0; font-family:Pliant,'Golos Text',sans-serif; font-size:clamp(30px,7.4vw,44px); line-height:1.1; letter-spacing:-.025em; font-weight:700; }
.cmp-heading p { margin:12px 0 0; font-size:16px; line-height:1.45; color:var(--secondary); }
.cmp-lineup { display:grid; gap:28px; }
.cmp-model { min-width:0; background:#fff; }
.cmp-photo { display:block; width:100%; aspect-ratio:16 / 10; overflow:hidden; border-radius:8px; background:#dce2e7; }
.cmp-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.cmp-body { display:flex; flex-direction:column; padding:22px 20px 20px; min-width:0; }
.cmp-model-heading h3 { margin:0; font-size:28px; line-height:1.15; letter-spacing:-.02em; font-weight:700; }
.cmp-model-heading p { margin:7px 0 0; color:var(--secondary); font-size:16px; line-height:1.4; }
.cmp-price { margin:22px 0 16px; }
.cmp-price-label { display:block; color:var(--secondary); font-size:13px; line-height:1.4; margin-bottom:5px; }
.cmp-price > strong { display:block; font-size:32px; line-height:1.15; letter-spacing:-.025em; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap; }
.cmp-price > strong > small { font-size:.6em; font-weight:400; }
.cmp-old-price { display:block; margin:0 0 4px; color:var(--secondary); font-size:16px; line-height:1.3; text-decoration-thickness:1px; }
.cmp-state { display:block; margin-top:7px; color:var(--secondary); font-size:14px; line-height:1.4; }
.cmp-package-offer { display:block; margin-top:7px; color:var(--brand); font-size:13px; line-height:1.4; }
.cmp-offer-limit { display:block; margin-top:4px; color:var(--secondary); font-size:12px; line-height:1.4; }
.cmp-package-group { display:contents; }
.cmp-model[data-compare-model="joker"] .cmp-state { color:var(--brand); font-weight:600; }
.cmp-facts { margin:0 0 20px; }
.cmp-fact { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); align-items:baseline; gap:10px; padding:11px 0; border-top:1px solid #d8dce1; }
.cmp-fact dt { font-size:14px; line-height:1.4; color:var(--secondary); }
.cmp-fact dd { margin:0; text-align:right; min-width:0; }
.cmp-fact dd > strong { font-size:18px; line-height:1.3; font-weight:600; font-variant-numeric:tabular-nums; }
.cmp-volume { margin-left:7px; font-size:14px; white-space:nowrap; color:var(--secondary); }
.cmp-tyre-type,.cmp-option { display:block; margin-top:4px; font-size:13px; line-height:1.4; color:var(--secondary); }
.cmp-model-request { width:100%; min-height:52px; margin-top:auto; font-size:16px; }
.cmp-footer { display:flex; flex-direction:column; align-items:flex-start; gap:12px; margin-top:28px; padding:22px 0; border-top:1px solid #cbd1d9; }
.cmp-footer p { margin:0; font-size:18px; font-weight:600; line-height:1.4; }
.cmp-phone { display:inline-flex; flex-wrap:wrap; align-items:center; gap:5px 12px; min-height:44px; font-size:16px; line-height:1.4; text-decoration-thickness:1px; text-underline-offset:5px; }
.cmp-phone span { font-weight:600; white-space:nowrap; }
.cmp-details { border-top:1px solid #cbd1d9; border-bottom:1px solid #cbd1d9; }
.cmp-details > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:48px; padding:12px 0; list-style:none; color:var(--secondary); font-size:14px; line-height:1.4; cursor:pointer; }
.cmp-details > summary::-webkit-details-marker { display:none; }
.cmp-details > summary:focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
.cmp-details > summary svg { width:18px; height:18px; flex:0 0 18px; fill:none; stroke:currentColor; stroke-width:1.6; }
.cmp-details[open] > summary svg { transform:rotate(180deg); }
.cmp-details-body { display:grid; gap:16px; padding:4px 0 20px; }
.cmp-details-body p { margin:0; font-size:14px; line-height:1.5; color:var(--secondary); }
.cmp-note { margin:14px 0 0; font-size:12px; line-height:1.5; color:var(--secondary); }
@media(min-width:601px) and (max-width:1000px) {
 .cmp-inner { width:min(calc(100% - 48px),640px); padding-top:40px; }
 .cmp-photo { aspect-ratio:16/9; }
 .cmp-body { padding:24px; }
 .cmp-model-heading h3 { font-size:27px; }
 .cmp-model-heading p { font-size:15px; }
 .cmp-price > strong { font-size:30px; }
}
@media(min-width:1001px) {
 .cmp-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:28px; width:min(calc(100% - 8vw),1480px); padding:32px 0 24px; }
 .cmp-heading { display:flex; align-items:center; justify-content:space-between; gap:40px; margin-bottom:24px; }
 .cmp-heading h2 { font-size:clamp(34px,3vw,44px); }
 .cmp-heading { grid-column:1; grid-row:1; }
 .cmp-heading p { display:none; }
 .cmp-lineup { grid-column:1/-1; grid-row:2; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
 .cmp-model { display:flex; flex-direction:column; }
 .cmp-photo { aspect-ratio:2/1; }
 .cmp-body { flex:1; padding:20px; }
 .cmp-model-heading { min-height:73px; }
 .cmp-model-heading h3 { font-size:clamp(24px,2vw,28px); }
 .cmp-model-heading p { font-size:14px; }
 .cmp-price { min-height:112px; margin:12px 0; }
 .cmp-price-label { display:none; }
 .cmp-price > strong { display:inline; font-size:clamp(25px,2.2vw,32px); }
 .cmp-old-price { display:inline; margin-right:6px; font-size:12px; }
 .cmp-facts { display:grid; grid-template-columns:1fr 1fr 1.3fr; gap:12px; flex:1; }
 .cmp-fact { display:block; }
 .cmp-fact dd { margin-top:6px; text-align:left; }
 .cmp-fact dd > strong { font-size:17px; }
 .cmp-volume { display:block; margin:3px 0 0; }
 .cmp-tyres { min-height:89px; }
 .cmp-state { font-size:13px; }
 .cmp-model[data-compare-model="joker"] .cmp-state { margin-top:32.2px; font-weight:400; }
 .cmp-fact dt { font-size:13px; }
 .cmp-footer { grid-column:2; grid-row:1; flex-direction:column; align-items:flex-end; justify-content:center; align-self:start; gap:0; margin:0 0 18px; padding:0; border:0; }
 .cmp-footer p { font-size:13px; font-weight:400; color:var(--secondary); }
 .cmp-phone { font-size:15px; min-height:38px; }
 .cmp-details { grid-column:1/-1; margin-top:14px; }
 .cmp-note { grid-column:1/-1; }
 .cmp-details-body { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
}
@media(min-width:1001px) and (max-height:800px) {
 .cmp-inner { padding-top:22px; padding-bottom:16px; }
 .cmp-heading { margin-bottom:18px; }
 .cmp-body { padding:16px; }
 .cmp-model-heading { min-height:62px; }
 .cmp-price { min-height:112px; margin:10px 0; }
 .cmp-fact { padding:8px 0; }
 .cmp-tyres { min-height:78px; }
 .cmp-facts { margin-bottom:14px; }
 .cmp-footer { margin-top:0; padding:0; }
 .cmp-note { margin-top:10px; }
}
@media(min-width:1001px) and (max-width:1320px) {
 .cmp-model-heading { min-height:80px; }
 .cmp-price { min-height:128px; }
}
@media(max-width:600px) {
 .cmp-inner { padding:24px 0 20px; }
 .cmp-heading { margin-bottom:18px; }
 .cmp-heading h2 { font-size:26px; line-height:1.15; word-spacing:.04em; }
 .cmp-lineup { gap:20px; }
 .cmp-body { padding:16px 18px 18px; }
 .cmp-model-heading h3 { font-size:22px; line-height:1.2; }
 .cmp-model-heading p { margin-top:5px; font-size:14px; line-height:1.4; }
 .cmp-price { margin:14px 0 12px; }
 .cmp-price > strong { font-size:27px; }
 .cmp-old-price { font-size:14px; }
 .cmp-state { margin-top:5px; font-size:13px; }
 .cmp-facts { margin-bottom:16px; }
 .cmp-fact { padding:9px 0; }
 .cmp-fact dd > strong { font-size:16px; }
 .cmp-model-request { min-height:48px; padding:12px; font-size:15px; }
 .cmp-footer { gap:6px; margin-top:20px; padding:16px 0; }
 .cmp-footer p { font-size:16px; }
}
@media(max-width:360px) {
 .cmp-body { padding-inline:16px; }
 .cmp-price > strong { font-size:25px; }
 .cmp-fact { grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); gap:6px; }
 .cmp-volume { display:block; margin:3px 0 0; }
}
@media(max-width:280px) {
 .cmp-inner { width:calc(100% - 24px); }
 .cmp-body { padding:16px 12px; }
 .cmp-heading h2 { font-size:26px; overflow-wrap:anywhere; }
 .cmp-price > strong { font-size:clamp(18px,9vw,25px); }
 .cmp-fact { display:block; }
 .cmp-fact dd { margin-top:4px; text-align:left; }
 .cmp-volume { display:inline; margin-left:6px; }
 .cmp-model-heading h3 { font-size:23px; overflow-wrap:anywhere; }
 .cmp-model-heading p { font-size:15px; }
 .cmp-model-request { white-space:normal; }
 .cmp-phone span { white-space:normal; }
}

/* Phone comparison: an equipment summary and a compact price/action row. */
@media(max-width:1000px) {
 .cmp-inner { width:min(calc(100% - 32px),640px); padding:24px 0 20px; }
 .cmp-heading { margin-bottom:16px; }
 .cmp-heading h2 { font-size:26px; line-height:1.15; }
 .cmp-lineup { gap:20px; }
 .cmp-photo { aspect-ratio:2 / 1; }
 .cmp-body { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:10px; padding:14px; }
 .cmp-model-heading { grid-column:1 / -1; grid-row:1; }
 .cmp-model-heading h3 { font-size:21px; line-height:1.15; }
 .cmp-model-heading p { margin-top:4px; font-size:14px; line-height:1.35; }
 .cmp-price { display:contents; }
 .cmp-state { grid-column:1 / -1; grid-row:2; margin-top:5px; font-size:13px; line-height:1.35; }
 .cmp-package-offer { grid-column:1 / -1; grid-row:3; margin-top:8px; font-size:13px; line-height:1.35; }
 .cmp-offer-limit { grid-column:1 / -1; grid-row:4; margin-top:2px; }
 .cmp-facts { grid-column:1 / -1; grid-row:5; display:grid; grid-template-columns:1fr 1fr; gap:0 16px; margin:12px 0 14px; }
 .cmp-fact { display:block; padding:7px 0; }
 .cmp-fact dt { font-size:13px; line-height:1.35; }
 .cmp-fact dd { margin:4px 0 0; text-align:left; }
 .cmp-fact dd > strong { font-size:16px; line-height:1.3; }
 .cmp-volume { display:inline; margin-left:6px; font-size:13px; }
 .cmp-tyres { grid-column:1 / -1; display:grid; grid-template-columns:82px minmax(0,1fr); align-items:baseline; gap:8px; }
 .cmp-tyres dd { margin:0; text-align:right; }
 .cmp-tyre-type { display:inline; margin-left:6px; font-size:13px; }
 .cmp-option { margin-top:3px; font-size:13px; line-height:1.35; }
 .cmp-price > strong { grid-column:1; grid-row:6 / 8; align-self:center; font-size:24px; line-height:1.15; }
 .cmp-old-price { grid-column:1; grid-row:6; margin:0 0 2px; font-size:12px; line-height:1.3; }
 .cmp-model[data-compare-model="joker"] .cmp-price > strong { grid-row:7; align-self:start; }
 .cmp-model-request { grid-column:2; grid-row:6 / 8; align-self:center; justify-self:end; width:auto; min-height:44px; margin:0; padding:10px 12px; border-radius:4px; font-size:14px; line-height:1.3; }
 .cmp-footer { gap:4px; margin-top:20px; padding:16px 0 0; }
 .cmp-footer p { font-size:15px; line-height:1.4; }
 .cmp-phone { gap:4px 10px; font-size:15px; }
}
@media(max-width:360px) {
 .cmp-body { column-gap:8px; padding:12px; }
 .cmp-price > strong { font-size:21px; }
 .cmp-model-request { padding-inline:10px; font-size:13px; }
 .cmp-tyres { grid-template-columns:76px minmax(0,1fr); }
}
@media(min-width:375px) and (max-width:390px) {
 .cmp-price > strong { font-size:23px; }
}
@media(max-width:374px) {
 .cmp-body { grid-template-columns:minmax(0,1fr); }
 .cmp-model-request { grid-column:1; grid-row:8; justify-self:start; margin-top:10px; padding-inline:14px; font-size:14px; }
}
@media(max-width:319px) {
 .cmp-body { grid-template-columns:minmax(0,1fr); }
 .cmp-price > strong { grid-row:6 / 8; }
 .cmp-model-request { grid-column:1; grid-row:8; justify-self:start; margin-top:10px; }
 .cmp-facts { gap:0 10px; }
 .cmp-volume { display:block; margin:3px 0 0; }
 .cmp-tyre-type { display:block; margin:3px 0 0; }
}
@media(max-width:240px) {
 .cmp-inner { width:calc(100% - 24px); }
 .cmp-facts { grid-template-columns:minmax(0,1fr); }
 .cmp-tyres { display:block; }
 .cmp-tyres dd { margin-top:4px; text-align:left; }
 .cmp-model-heading h3 { overflow-wrap:anywhere; }
}

/* Compact mobile product sheets: readable facts, one price/action row. */
@media(max-width:700px) {
 .cmp-inner { padding:16px 0; }
 .cmp-heading { margin-bottom:12px; }
 .cmp-heading h2 { font-size:23px; line-height:1.15; }
 .cmp-lineup { gap:16px; }
 .cmp-body { grid-template-columns:minmax(0,1fr) auto; column-gap:8px; padding:12px; }
 .cmp-model-heading h3 { font-size:19px; line-height:1.15; }
 .cmp-model-heading p { margin-top:3px; font-size:13px; line-height:1.3; }
 .cmp-state { grid-row:2; margin-top:4px; font-size:12px; line-height:1.3; }
 .cmp-package-group { display:block; grid-column:1/-1; grid-row:3; margin-top:6px; font-size:12px; line-height:1.3; }
 .cmp-package-offer { display:inline; margin:0; font-size:inherit; line-height:inherit; }
 .cmp-offer-limit { display:inline; margin:0; font-size:11px; line-height:inherit; }
 .cmp-offer-limit::before { content:". "; }
 .cmp-facts { grid-row:4; gap:0 12px; margin:8px 0 10px; }
 .cmp-fact { padding:5px 0; }
 .cmp-fact dt { font-size:12px; line-height:1.3; }
 .cmp-fact dd { margin-top:3px; }
 .cmp-fact dd > strong { font-size:15px; line-height:1.25; }
 .cmp-volume { display:inline; margin-left:5px; font-size:12px; }
 .cmp-tyres { grid-template-columns:74px minmax(0,1fr); gap:8px; }
 .cmp-tyres dd { margin:0; }
 .cmp-tyre-type { display:inline; margin-left:5px; font-size:12px; line-height:1.3; }
 .cmp-option { margin-top:2px; font-size:12px; line-height:1.3; }
 .cmp-price > strong { grid-row:5/7; font-size:21px; line-height:1.15; }
 .cmp-old-price { grid-row:5; font-size:11px; }
 .cmp-model[data-compare-model="joker"] .cmp-price > strong { grid-row:6; }
 .cmp-model-request { grid-column:2; grid-row:5/7; justify-self:end; min-height:44px; margin:0; padding:10px; font-size:13px; line-height:1.3; }
}
@media(max-width:319px) {
 .cmp-body { grid-template-columns:minmax(0,1fr); }
 .cmp-model-request { grid-column:1; grid-row:7; justify-self:start; margin-top:8px; }
 .cmp-tyres { grid-template-columns:68px minmax(0,1fr); }
 .cmp-tyre-type { display:block; margin:2px 0 0; }
}
@media(min-width:320px) and (max-width:360px) {
 .cmp-price > strong { font-size:20px; }
}
@media(orientation:landscape) and (max-height:500px) and (min-width:501px) and (max-width:1000px) {
 .cmp-inner { padding:12px 0; }
 .cmp-heading { margin-bottom:10px; }
 .cmp-model { display:grid; grid-template-columns:40% minmax(0,1fr); }
 .cmp-photo { display:flex; align-items:center; justify-content:center; aspect-ratio:auto; height:100%; }
 .cmp-photo img { width:auto; height:auto; max-width:100%; max-height:100%; border-radius:inherit; object-fit:contain; }
 .cmp-body { padding:10px 12px; }
}


/* Approved council composition: short mobile viewport includes photo, details and request. */
@media(max-width:700px) and (orientation:portrait) {
 .comparison{scroll-margin-top:0;}
 .cmp-inner{padding-top:12px;padding-bottom:12px;}
 .cmp-heading{margin-bottom:10px;}
 .cmp-heading h2{font-size:22px;line-height:1.15;}
 .cmp-lineup{gap:16px;}
 .cmp-photo{aspect-ratio:2/1;height:auto;min-height:128px;max-height:calc(100svh - 336px);border-radius:8px;}
 .cmp-photo img{object-fit:cover;object-position:50% 50%;}
 .cmp-body{padding:10px 12px;}
 .cmp-model-heading h3{font-size:20px;}
 .cmp-model-heading p{font-size:13px;line-height:1.3;}
 .cmp-state{font-size:12px;line-height:1.3;}
 .cmp-package-group{margin-top:5px;}
 .cmp-facts{gap:0 12px;margin:7px 0 8px;}
 .cmp-fact{padding:5px 0;}
 .cmp-fact dd>strong{font-size:14px;}
 .cmp-tyres{display:block;}
 .cmp-tyres dt{display:inline;margin-right:6px;white-space:nowrap;}
 .cmp-tyres dd{display:inline;text-align:left;margin:0;}
 .cmp-tyre-type{margin-left:4px;}
 .cmp-option{display:block;margin-top:3px;}
 .cmp-price>strong{font-size:20px;}
 .cmp-model-request{min-height:44px;font-size:13px;}
}

/* expedition.css */
.expedition { background-color:var(--ground); background-image:url('./assets/optimized/showroom-1586-55e6f8bf1f.webp'); background-image:image-set(url('./assets/optimized/showroom-1586-e2ffba0dc6.avif') type('image/avif'),url('./assets/optimized/showroom-1586-55e6f8bf1f.webp') type('image/webp')); background-size:100% 120%; background-position:center bottom; background-repeat:no-repeat; color:var(--ink); scroll-margin-top:0; }
.exp-inner { display:flex; flex-direction:column; width:100%; max-height:100svh; }
.exp-media { flex:0 1 auto; width:100%; min-width:0; min-height:0; aspect-ratio:16/9; }
.exp-frame { position:relative; width:100%; height:100%; }
.exp-frame:has(.exp-video:not([hidden])) { background:#050708; }
.exp-poster { display:block; width:100%; height:100%; border:0; padding:0; background:transparent; cursor:pointer; }
.exp-poster picture { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
.exp-poster img { display:block; width:auto; height:auto; max-width:100%; max-height:100%; min-width:0; min-height:0; border-radius:8px; object-fit:contain; }
.exp-poster:focus-visible { outline:3px solid var(--focus); outline-offset:-6px; }
.exp-video { display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:contain; background:#050708; }
.exp-video:focus-visible { outline:3px solid #fff; outline-offset:-6px; }
.exp-reset { position:absolute; right:16px; top:16px; min-height:44px; border:1px solid #81858c; border-radius:4px; padding:10px 14px; color:#fff; background:#13171e; font-size:13px; line-height:1.3; cursor:pointer; }
.exp-reset:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.exp-video[hidden],.exp-poster[hidden],.exp-reset[hidden],.exp-error[hidden] { display:none; }
.exp-error { margin:0; padding:12px var(--gutter); color:var(--error); font-size:14px; line-height:1.4; }
.exp-footer { flex:0 0 auto; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px 24px; padding:12px var(--gutter); }
.exp-intro { min-width:0; }
.exp-watch { display:inline-flex; align-items:center; margin-top:0; border:0; padding:0; min-height:44px; background:transparent; color:var(--ink); font:inherit; font-size:14px; text-decoration:underline; text-underline-offset:5px; cursor:pointer; }
.exp-watch:hover { color:var(--brand); }
.exp-watch:focus-visible { outline:3px solid var(--focus); outline-offset:4px; }
.exp-intro h2 { margin:0; font-family:Pliant,'Golos Text',sans-serif; font-size:clamp(28px,2.6vw,44px); line-height:1.08; letter-spacing:-.025em; }
.exp-title-line { display:block; white-space:nowrap; }
.exp-title-brand { display:flex; align-items:center; gap:10px; margin-top:4px; white-space:nowrap; }
.exp-title-brand img { display:block; width:clamp(194px,17vw,260px); height:auto; }
.exp-intro p { margin:10px 0 0; max-width:66ch; font-size:15px; line-height:1.45; color:#c8ccd2; }
.exp-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px 24px; }
.exp-actions .button { width:auto; min-height:44px; padding:11px 18px; border-radius:4px; border-color:var(--action); background:var(--action); color:var(--white); font-size:14px; }
.exp-actions .button:hover { background:var(--action-hover); border-color:var(--action-hover); }
.exp-actions .button:active { background:var(--ink); }
.exp-actions .button:focus-visible,.exp-call:focus-visible { outline:3px solid var(--focus); outline-offset:4px; }
.exp-call { display:inline-flex; align-items:center; min-height:44px; color:var(--ink); font-size:14px; text-underline-offset:5px; }
.exp-actions .exp-call .call-handset { color:#16733d; }
@media(min-width:901px) {
 .exp-media { width:calc(100% - 2 * var(--gutter)); margin-inline:auto; }
 .exp-footer { padding-inline:var(--exp-content-inset,var(--gutter)); }
}
@media(max-width:900px) {
 .exp-footer { grid-template-columns:minmax(0,1fr); padding:16px var(--gutter); gap:8px; }
 .exp-intro h2 { font-size:28px; }
 .exp-intro p { margin-top:8px; font-size:14px; line-height:1.4; }
 .exp-actions { justify-content:flex-start; gap:8px 24px; }
}
@media(max-width:700px) {
 .expedition { background-image:url('./assets/optimized/showroom-960-93d8e23b42.webp'); background-image:image-set(url('./assets/optimized/showroom-960-7f55451ded.avif') type('image/avif'),url('./assets/optimized/showroom-960-93d8e23b42.webp') type('image/webp')); }
 .exp-intro h2 { font-size:clamp(16px,6.7vw,26px); line-height:1.12; }
 .exp-title-brand img { width:min(194px,60vw); }
 .cmp-footer { display:none; }
 .exp-media { aspect-ratio:1; }
 .exp-reset { top:10px; right:10px; padding:10px 12px; }
}
@media(max-width:360px) {
 .exp-footer { padding-top:12px; padding-bottom:12px; }
}
@media(orientation:landscape) and (max-height:500px) {
 .exp-inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,32%); height:100svh; }
 .exp-media { height:100%; aspect-ratio:auto; }
 .exp-media { width:100%; margin:0; }
 .exp-footer { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:16px 20px; border-top:0; gap:8px; }
 .exp-intro h2 { font-size:24px; }
 .exp-title-brand img { width:176px; }
 .exp-actions { gap:4px 16px; }
}
@media(max-width:280px) {
 .exp-actions { gap:4px 16px; }
 .exp-actions .button { padding-inline:12px; font-size:13px; white-space:normal; }
 .exp-call { font-size:13px; }
}
/* Reserve a black control strip, separate from the video picture on touch layouts. */
@media(max-width:1000px) {
 .exp-video { inset:26px 0 0; height:calc(100% - 26px); object-position:center 20%; }
 .exp-reset { top:2px; right:8px; min-height:22px; padding:2px 7px; border-radius:3px; font-size:11px; line-height:16px; }
}

/* engineering.css */
/* Silver Showroom: a single engineering presentation, with genuine component imagery. */
.engineering {
  --eng-media-height: clamp(156px, 12vw, 190px);
  background: #f1f3f5;
  color: var(--ink);
  padding: 18px var(--gutter);
}
/* Approved technical-sheet ground. Drawing fields sit behind real components;
   explanatory text keeps an uninterrupted light surface. */
.engineering {
  background-color: #f1f3f5;
  background-image: linear-gradient(90deg, #dce2e6 1px, transparent 1px),
    linear-gradient(90deg, transparent calc(100% - 1px), #dce2e6 0);
  background-size: 18px 100%;
  background-position: left top, right top;
  background-repeat: no-repeat;
}
.eng-media { position: relative; isolation: isolate; }
.eng-media::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(#aab8c34a 1px, transparent 1px),
    linear-gradient(90deg, #aab8c34a 1px, transparent 1px),
    linear-gradient(#95a6b34d 1px, transparent 1px),
    linear-gradient(90deg, #95a6b34d 1px, transparent 1px);
  background-size: 24px 24px, 24px 24px, 96px 96px, 96px 96px;
  mask-image: radial-gradient(ellipse at center, #000 25%, transparent 75%);
}
.eng-media::after {
  content: '';
  position: absolute;
  inset: 12% 5%;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(#8596a6, #8596a6) left top / 28px 1px,
    linear-gradient(#8596a6, #8596a6) left top / 1px 14px,
    linear-gradient(#8596a6, #8596a6) right bottom / 28px 1px,
    linear-gradient(#8596a6, #8596a6) right bottom / 1px 14px;
  background-repeat: no-repeat;
  opacity: .65;
}
@media (max-width: 600px) {
  .engineering { background-size: 7px 100%; }
  .eng-media::before { opacity: .8; }
  .eng-media::after { inset-inline: 3%; }
}
.eng-inner { width: 100%; max-width: 1600px; margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.2fr) minmax(0, 1fr); gap: 18px 26px; align-items: start; }
.eng-heading { grid-column: 1 / -1; }
.eng-heading h2 { font: 700 clamp(30px, 2.65vw, 36px)/1.08 'Pliant', 'Golos Text', sans-serif; letter-spacing: -.025em; margin: 0 0 8px; text-wrap: balance; }
.eng-heading p { margin: 0; max-width: 100ch; color: var(--secondary); font-size: 15px; line-height: 1.4; }
.eng-feature { min-width: 0; }
.eng-cylinder { grid-column: 1; grid-row: 2; }
.eng-transmission { grid-column: 2; grid-row: 2; }
.eng-wiring { grid-column: 1; grid-row: 3; }
.eng-cargo { grid-column: 2; grid-row: 3; }
.eng-media { height: var(--eng-media-height); display: flex; align-items: center; justify-content: center; margin: 0 0 14px; }
.eng-media img { width: 100%; height: 100%; display: block; object-fit: contain; }
.eng-media-cylinder { padding: 0 2px; }
.eng-media-transmission { gap: 12px; }
.eng-media-transmission img { width: calc(50% - 6px); min-width: 0; }
.eng-feature h3 { margin: 0 0 8px; font: 600 clamp(19px, 1.5vw, 22px)/1.18 'Golos Text', sans-serif; letter-spacing: -.015em; text-wrap: balance; }
.eng-feature p { font-size: 15px; line-height: 1.42; color: var(--secondary); margin: 0; max-width: 60ch; }
.eng-feature-compact { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 16px; }
.eng-feature-compact .eng-media { height: 204px; margin: 0; }
.eng-cargo { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
.eng-cargo h3 { text-wrap: pretty; }
.eng-feature-copy { min-width: 0; }
.eng-media-wiring { position: relative; }
.eng-harness-turn { position: relative; width: 100%; aspect-ratio: 1.3457249071; }
.eng-media-wiring .eng-harness { position: absolute; left: 50%; top: 50%; width: 74.3093922652%; height: 134.57249071%; max-width: none; object-fit: contain; transform: translate(-50%, -50%) rotate(90deg); }
.eng-cargo .eng-equipment { color: var(--brand); font-size: 13px; font-weight: 600; margin: 0 0 8px; line-height: 1.35; }
.eng-frame-panel { grid-column: 3; grid-row: 2 / 4; background: #eee; border-radius: 8px; padding: 16px; align-self: stretch; display: flex; flex-direction: column; }
.eng-frame-panel > h3 { margin-bottom: 12px; }
.eng-frame-gallery { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; margin: auto 0 12px; }
.eng-frame-figure { margin: 0; min-width: 0; }
.eng-frame-figure img { width: 100%; height: clamp(126px, 10.2vw, 180px); object-fit: contain; display: block; }
.eng-frame-figure figcaption { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; flex-wrap: wrap; font-size: 13px; line-height: 1.3; padding-top: 5px; }
.eng-frame-figure figcaption strong { font-weight: 600; }
.eng-frame-figure figcaption span { color: var(--secondary); font-size: 12px; }
.eng-frame-gallery .eng-frame-note { font-size: 12px; line-height: 1.35; margin: 0; }
.eng-frame-panel > p { margin-top: auto; }
.eng-contact { grid-column: 1 / -1; display: flex; justify-content: center; border-top: 1px solid #cbd0d6; padding-top: 12px; margin-top: 0; }
.eng-request { font-size: 14px; min-height: 44px; height: auto; padding: 11px 16px; border-radius: 4px; max-width: 100%; white-space: normal; }
.eng-mobile-action { display: none; }
@media (min-width: 1101px) {
  .engineering { min-height: 100svh; display: flex; align-items: center; }
  .eng-cylinder h3, .eng-transmission h3 { min-height: 2.36em; }
}
@media (min-width: 1600px) {
  .engineering { padding-block: 32px; }
  .eng-inner { gap: 28px 32px; }
  .eng-feature p { font-size: 16px; line-height: 1.45; }
  .eng-feature-compact .eng-media { height: 230px; }
  .eng-frame-panel { padding: 22px; }
}
@media (max-width: 1100px) {
  .engineering { padding: 30px 24px; }
  .eng-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; }
  .eng-frame-panel { grid-column: 1 / -1; grid-row: 4; }
  .eng-frame-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 0; }
  .eng-frame-gallery .eng-frame-note { grid-column: 1 / -1; }
  .eng-frame-figure img { height: 168px; }
  .eng-contact { grid-row: 5; }
  .eng-feature-compact { display: block; }
  .eng-feature-compact .eng-media { height: var(--eng-media-height); margin-bottom: 14px; }
  .eng-harness-turn { max-width: 260px; }
}
@media (max-width: 600px) {
  .engineering { --eng-media-height: 178px; padding: 28px 16px 30px; }
  .eng-inner { display: flex; flex-direction: column; align-items: stretch; gap: 26px; }
  .eng-heading { order: 0; }
  .eng-heading h2 { font-size: clamp(26px, 6.8vw, 28px); }
  .eng-heading p { font-size: 14px; line-height: 1.4; }
  .eng-cylinder { order: 1; }
  .eng-transmission { order: 2; }
  .eng-mobile-action { order: 3; display: flex; justify-content: flex-start; margin-top: -8px; }
  .eng-wiring { order: 4; }
  .eng-frame-panel { order: 5; padding: 14px; }
  .eng-cargo { order: 6; }
  .eng-contact { order: 7; padding-top: 18px; }
  .eng-media { margin-bottom: 12px; }
  .eng-media-transmission { gap: 8px; }
  .eng-media-transmission img { width: calc(50% - 4px); }
  .eng-feature h3 { font-size: 20px; line-height: 1.18; margin-bottom: 8px; }
  .eng-feature p { font-size: 14px; line-height: 1.45; }
  .eng-frame-gallery { grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 0 0 14px; }
  .eng-frame-figure img { height: auto; max-height: 180px; }
  .eng-cargo .eng-equipment { font-size: 13px; margin-bottom: 8px; }
  .eng-harness-turn { max-width: 238px; }
}
@media (max-width: 360px) {
  .engineering { --eng-media-height: 160px; }
  .eng-feature h3 { font-size: 19px; }
  .eng-frame-panel { padding: 12px; }
  .eng-frame-figure figcaption { justify-content: flex-start; }
}
/* One full harness and two photographed connector details share one drawing field. */
.eng-wiring .eng-media-wiring {
  display: grid;
  grid-template-rows: 40% 48% 12%;
  justify-items: center;
  align-items: center;
}
.eng-media-wiring .eng-harness-turn {
  width: 78%;
  max-width: none;
  height: 100%;
  aspect-ratio: auto;
}
.eng-media-wiring .eng-harness {
  width: auto;
  height: 134.57249071%;
  max-height: none;
  max-width: none;
  aspect-ratio: 1076 / 1448;
}
.eng-connectors {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24%;
  padding: 4px 5%;
}
.eng-connectors img { width: 32%; height: 90%; object-fit: contain; }
.eng-connectors .eng-connector-seal { transform: rotate(-20deg); }
.eng-connectors .eng-connector-socket { transform: rotate(12deg); }
.eng-seal-caption { font: 400 11px/1.2 'Golos Text', sans-serif; color: var(--secondary); text-align: center; align-self: end; }
.eng-seal-pointer { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; overflow: visible; }
.eng-seal-pointer path { fill: none; stroke: #8596a6; stroke-width: .7; vector-effect: non-scaling-stroke; }
@media (max-width: 1100px) {
  .eng-wiring .eng-media-wiring { height: 240px; }
  .eng-media-wiring .eng-harness-turn { width: 68%; }
}
@media (max-width: 600px) {
  .eng-wiring .eng-media-wiring { height: 240px; }
  .eng-media-wiring .eng-harness-turn { width: 70%; }
  .eng-connectors { max-width: 290px; }
  .eng-seal-caption { font-size: 12px; }
  .eng-seal-pointer { display: none; }
}

/* support.css */
/* People behind the vehicle: one photo/contact stage, three supporting promises. */
.owner-support { background: #f1f3f5; color: var(--ink); padding: 24px var(--gutter); min-height: 100svh; display: flex; align-items: center; }
.sup-inner { width: 100%; max-width: 1600px; margin-inline: auto; display: grid; gap: 22px; }
.sup-heading h2 { margin: 0; font: 700 clamp(30px, 2.8vw, 46px)/1.07 'Pliant', 'Golos Text', sans-serif; letter-spacing: -.025em; word-spacing: .1em; text-wrap: balance; }
.sup-stage { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); }
.sup-photo { margin: 0; min-width: 0; display: flex; flex-direction: column; justify-content: center; }
.sup-photo picture { display: block; }
.sup-photo img { display: block; width: 100%; height: auto; border-radius: 8px; }
.sup-photo figcaption { padding: 8px 14px; font-size: 12px; line-height: 1.4; color: var(--secondary); }
.sup-direct { color: var(--ink); min-width: 0; padding: clamp(24px, 3vw, 46px); display: flex; flex-direction: column; justify-content: center; gap: 28px; }
.sup-primary h3 { font: 700 clamp(24px, 2.25vw, 36px)/1.1 'Pliant', 'Golos Text', sans-serif; letter-spacing: -.02em; word-spacing: .08em; max-width: 18ch; margin: 0 0 14px; text-wrap: balance; }
.sup-primary p { margin: 0; font-size: 16px; line-height: 1.5; max-width: 40ch; color: var(--secondary); }
.sup-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; }
.sup-actions .button { min-height: 44px; max-width: 100%; white-space: normal; border-radius: 4px; padding: 12px 18px; font-size: 14px; background: var(--action); border-color: var(--action); color: var(--white); }
.sup-actions .button:hover { background: var(--action-hover); border-color: var(--action-hover); }
.sup-actions .button:focus-visible, .sup-call:focus-visible { outline-color: var(--focus); }
.sup-call { min-height: 44px; font-size: 14px; line-height: 1.3; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.sup-call:hover { text-decoration-thickness: 2px; }
.sup-direct .sup-call .call-handset { color: #16733d; }
.sup-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.sup-point { min-width: 0; }
.sup-point + .sup-point { border-left: 1px solid #cbd0d6; padding-left: 28px; }
.sup-point h3 { margin: 0 0 7px; font: 600 clamp(17px, 1.25vw, 20px)/1.22 'Golos Text', sans-serif; letter-spacing: -.01em; }
.sup-point p { margin: 0; color: var(--secondary); font-size: 15px; line-height: 1.45; max-width: 60ch; }
.sup-resource { display: inline-block; max-width: 100%; margin-top: 9px; padding-block: 5px; color: var(--ink); font-size: 14px; line-height: 1.45; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.sup-resource:hover { text-decoration-thickness: 2px; }
.sup-resource:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; border-radius: 2px; }
@media (min-width: 1600px) {
  .owner-support { padding-block: 36px; }
  .sup-inner { gap: 28px; }
  .sup-point p { font-size: 16px; line-height: 1.5; }
}
@media (max-width: 1100px) and (min-width: 601px) {
  .owner-support { padding-inline: 24px; }
  .sup-direct { padding: 24px; gap: 18px; }
  .sup-primary h3 { font-size: 26px; }
  .sup-primary p { font-size: 15px; line-height: 1.45; }
  .sup-point h3 { font-size: 17px; }
  .sup-point p { font-size: 14px; }
  .sup-points { gap: 20px; }
  .sup-point + .sup-point { padding-left: 20px; }
}
@media (min-width: 601px) and (max-height: 700px) {
  .sup-resource { margin-top: 2px; }
  .owner-support { padding-block: 16px; }
  .sup-inner { gap: 14px; }
  .sup-heading h2 { font-size: clamp(26px, 2.5vw, 34px); }
  .sup-stage { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
  .sup-direct { padding: 20px 26px; gap: 14px; }
  .sup-primary h3 { font-size: 26px; margin-bottom: 10px; }
  .sup-primary p { font-size: 15px; line-height: 1.4; }
  .sup-actions { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px 18px; }
  .sup-point h3 { font-size: 17px; margin-bottom: 5px; }
  .sup-point p { font-size: 14px; line-height: 1.4; }
}
@media (max-width: 600px) {
  .owner-support { padding: 24px 16px; }
  .sup-inner { gap: 20px; }
  .sup-heading h2 { font-size: clamp(26px, 6.6vw, 32px); max-width: 24ch; }
  .sup-stage { grid-template-columns: minmax(0, 1fr); }
  .sup-photo figcaption { padding: 7px 12px; font-size: 11px; }
  .sup-direct { padding: 22px; gap: 18px; }
  .sup-primary h3 { font-size: 24px; margin-bottom: 10px; max-width: 23ch; }
  .sup-primary p { font-size: 14px; line-height: 1.45; }
  .sup-actions { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px 16px; }
  .sup-actions .button { font-size: 14px; padding: 11px 14px; }
  .sup-call { font-size: 13px; }
  .sup-points { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .sup-point + .sup-point { border-left: 0; padding-left: 0; border-top: 1px solid #cbd0d6; padding-top: 16px; }
  .sup-point h3 { font-size: 17px; margin-bottom: 5px; }
  .sup-point p { font-size: 14px; line-height: 1.45; }
}


/* purchase.css */
/* A real test-drive, a remote purchase, and the four steps between choice and handover. */
.purchase { background: var(--ground); color: var(--ink); padding: 28px var(--gutter); min-height: 100svh; display: flex; align-items: center; }
.buy-inner { width: 100%; max-width: 1440px; margin-inline: auto; display: grid; gap: 28px; }
.buy-heading h2 { margin: 0; max-width: 30ch; font: 700 clamp(30px, 2.8vw, 46px)/1.08 'Pliant', 'Golos Text', sans-serif; letter-spacing: -.025em; word-spacing: .1em; text-wrap: balance; }
.buy-stage { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 64px); align-items: center; }
.buy-photo { min-width: 0; margin: 0; }
.buy-photo picture { display: block; }
.buy-photo img { display: block; width: 100%; height: auto; border-radius: 8px; }
.buy-photo figcaption { padding-top: 8px; color: var(--secondary); font-size: 12px; line-height: 1.4; }
.buy-copy { min-width: 0; display: grid; gap: 24px; }
.buy-visit h3 { margin: 0 0 10px; font: 700 clamp(24px, 2.1vw, 34px)/1.12 'Pliant', 'Golos Text', sans-serif; letter-spacing: -.02em; text-wrap: balance; }
.buy-copy p { margin: 0; color: var(--secondary); font-size: 15px; line-height: 1.5; max-width: 52ch; }
.buy-delivery { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: 18px; align-items: center; }
.buy-delivery h3 { margin: 0 0 8px; font: 600 18px/1.2 'Golos Text', sans-serif; letter-spacing: -.01em; }
.buy-delivery p { font-size: 14px; line-height: 1.45; }
.buy-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 18px; }
.buy-actions .button { min-height: 44px; padding: 12px 16px; border-radius: 4px; font-size: 14px; white-space: normal; }
.buy-call { min-height: 44px; font-size: 14px; line-height: 1.3; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.buy-call:hover { text-decoration-thickness: 2px; }
.buy-steps { list-style: none; padding: 22px 0 0; margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; border-top: 1px solid var(--line); counter-reset: buy-step; }
.buy-steps li { min-width: 0; display: grid; grid-template-columns: 20px minmax(0, 1fr); column-gap: 10px; align-content: start; counter-increment: buy-step; }
.buy-steps li::before { content: counter(buy-step); color: var(--brand); font-size: 17px; line-height: 1.3; font-weight: 700; font-variant-numeric: tabular-nums; }
.buy-steps h3 { margin: 0 0 6px; font-size: 16px; line-height: 1.3; font-weight: 600; }
.buy-steps p { grid-column: 2; margin: 0; color: var(--secondary); font-size: 14px; line-height: 1.45; }
@media (min-width: 1600px) {
 .buy-inner { gap: 34px; }
 .buy-copy p { font-size: 16px; }
 .buy-delivery p { font-size: 15px; }
}
@media (min-width: 601px) and (max-height: 700px) {
 .purchase { padding-block: 20px; }
 .buy-inner { max-width: 1120px; gap: 18px; }
 .buy-heading h2 { font-size: clamp(28px, 2.5vw, 34px); max-width: none; }
 .buy-stage { gap: 32px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
 .buy-copy { gap: 18px; }
 .buy-visit h3 { font-size: 25px; }
 .buy-copy p { font-size: 14px; line-height: 1.45; }
 .buy-delivery { grid-template-columns: minmax(0, .6fr) minmax(0, 1fr); gap: 14px; }
 .buy-delivery h3 { font-size: 17px; }
 .buy-steps { padding-top: 16px; gap: 18px; }
 .buy-steps h3 { font-size: 15px; }
 .buy-steps p { font-size: 13px; }
}
@media (min-width: 601px) and (max-width: 1000px) {
 .purchase { padding: 28px 24px; }
 .buy-inner { gap: 22px; }
 .buy-stage { gap: 24px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
 .buy-copy { gap: 18px; }
 .buy-visit h3 { font-size: 24px; }
 .buy-copy p { font-size: 14px; }
 .buy-delivery { grid-template-columns: minmax(0, 1fr); gap: 10px; }
 .buy-delivery .buy-photo { max-width: 180px; }
 .buy-delivery h3 { font-size: 17px; }
 .buy-delivery p { font-size: 14px; }
 .buy-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 24px; }
}
@media (max-width: 600px) {
 .purchase { padding: 28px 16px; }
 .buy-inner { gap: 22px; }
 .buy-heading h2 { font-size: clamp(26px, 6.6vw, 32px); max-width: 23ch; }
 .buy-stage { grid-template-columns: minmax(0, 1fr); gap: 22px; }
 .buy-photo figcaption { font-size: 11px; padding-top: 7px; }
 .buy-copy { gap: 22px; }
 .buy-visit h3 { font-size: 23px; margin-bottom: 8px; }
 .buy-copy p { font-size: 14px; line-height: 1.45; }
 .buy-actions { grid-row: 2; gap: 4px 16px; }
 .buy-actions .button { padding: 11px 14px; }
 .buy-call { font-size: 13px; }
 .buy-delivery { grid-template-columns: minmax(0, 1fr); gap: 14px; }
 .buy-delivery h3 { font-size: 18px; margin-bottom: 6px; }
 .buy-delivery p { font-size: 14px; }
 .buy-steps { grid-template-columns: minmax(0, 1fr); padding-top: 18px; gap: 16px; }
 .buy-steps h3 { font-size: 16px; margin-bottom: 4px; }
 .buy-steps p { font-size: 14px; }
}

/* faq.css */
/* Buying questions share the showroom typography and existing contact actions. */
.faq { position: relative; isolation: isolate; padding: 56px var(--gutter); min-height: 100svh; display: flex; align-items: center; background: #f1f3f5; color: var(--ink); }
.faq-scene { position: absolute; z-index: -1; inset: 0 auto 0 0; width: 40%; overflow: hidden; background: var(--ink); pointer-events: none; }
.faq-scene img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 46% center; }
.faq-scene::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, #050708e8 0%, #050708b8 45%, #0507080d 100%); }
.faq-inner { width: 100%; max-width: 1440px; margin-inline: auto; display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); grid-template-rows: auto 1fr; grid-template-areas: 'heading list' 'actions list'; gap: 28px clamp(36px, 6vw, 96px); align-items: start; }
.faq-heading { grid-area: heading; }
.faq-heading h2 { margin: 0; max-width: 12ch; font: 700 clamp(32px, 3.4vw, 50px)/1.08 'Pliant', 'Golos Text', sans-serif; letter-spacing: -.025em; word-spacing: .1em; text-wrap: balance; }
.faq-actions { grid-area: actions; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; }
.faq-actions .button { min-height: 44px; padding: 12px 16px; border-radius: 4px; font-size: 14px; white-space: normal; }
.faq-call { min-height: 44px; font-size: 14px; line-height: 1.4; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.faq-call:hover { text-decoration-thickness: 2px; }
.faq-list { grid-area: list; min-width: 0; border-top: 1px solid var(--line); }
.faq-item { margin: 0; border-bottom: 1px solid var(--line); }
.faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 72px; padding: 18px 0; list-style: none; cursor: pointer; font-size: 18px; font-weight: 600; line-height: 1.35; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::marker { content: ''; }
.faq-item summary:hover { color: var(--brand); }
.faq-item[open] summary { color: var(--brand); }
.faq-item summary:focus-visible { outline: 2px solid var(--focus); outline-offset: 5px; border-radius: 2px; }
.faq-item summary svg { width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; }
.faq-item summary .faq-plus { transform-origin: center; transition: transform 160ms ease, opacity 160ms ease; }
.faq-item[open] summary .faq-plus { transform: rotate(90deg); opacity: 0; }
.faq-item p { margin: -2px 40px 22px 0; max-width: 65ch; font-size: 15px; line-height: 1.55; color: var(--secondary); }
@media (min-width: 1600px) {
 .faq-item summary { min-height: 80px; font-size: 20px; }
 .faq-item p { font-size: 16px; }
}
@media (min-width: 901px) and (max-height: 700px) {
 .faq { padding-block: 28px; }
 .faq-item summary { min-height: 58px; padding-block: 14px; font-size: 17px; }
 .faq-item p { margin-bottom: 18px; font-size: 14px; }
}
@media (max-width: 900px) {
 .faq { min-height: auto; padding: 0 24px 36px; }
 .faq-scene { width: 100%; bottom: auto; height: 220px; }
 .faq-scene img { object-position: center 12%; }
 .faq-scene::after { background: linear-gradient(180deg, #050708d9 0%, #05070880 55%, #0507081a 100%); }
 .faq-inner { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto auto; grid-template-areas: 'heading' 'list' 'actions'; gap: 26px; max-width: 720px; }
 .faq-heading { min-height: 220px; padding-block: 28px; }
 .faq-heading h2 { max-width: 22ch; font-size: 34px; color: var(--white); }
 .faq-actions { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 6px 20px; }
}
@media (max-width: 600px) {
 .faq { padding: 0 16px 28px; }
 .faq-scene, .faq-heading { height: 184px; min-height: 184px; }
 .faq-scene img { object-position: center 53%; }
 .faq-heading { padding-block: 22px; }
 .faq-inner { gap: 22px; }
 .faq-heading h2 { font-size: clamp(28px, 7vw, 32px); max-width: 20ch; }
 .faq-item summary { min-height: 62px; padding: 16px 0; gap: 16px; font-size: 15px; line-height: 1.4; }
 .faq-item summary svg { width: 18px; height: 18px; flex-basis: 18px; }
 .faq-item p { margin: -2px 30px 18px 0; font-size: 14px; line-height: 1.5; }
 .faq-actions { flex-direction: column; align-items: flex-start; gap: 4px; }
 .faq-actions .button { padding: 11px 14px; }
 .faq-call { font-size: 14px; }
}
@media (min-width: 901px) {
 .faq-heading h2, .faq-call { color: var(--white); }
 .faq-actions .button { background: var(--white); border-color: var(--white); color: var(--ink); }
 .faq-actions .button:hover { background: var(--ground); border-color: var(--ground); }
 .faq .faq-call .call-handset { color: #63d889; }
 .faq-actions :focus-visible { outline-color: var(--white); }
}
@media (min-width: 901px) and (max-width: 1599px) {
 .faq-list { margin-inline-start: 18px; }
}
@media (prefers-reduced-motion: reduce) {
 .faq-item summary .faq-plus { transition: none; }
}

/* final-contact.css */
/* Approved NEO landscape closes the route from comparison to a personal conversation. */
.final-contact { display: flex; flex-direction: column; min-height: 100svh; color: var(--ink); background: var(--white); }
.final-stage { position: relative; isolation: isolate; flex: 1; display: grid; grid-template-columns: minmax(0, 1fr) clamp(340px, 31vw, 420px); gap: 40px; padding: 44px var(--gutter); }
.final-scene { position: absolute; z-index: -1; inset: 0; display: block; overflow: hidden; background: #d0dce2; }
.final-scene img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.final-scene::after { content: ''; position: absolute; inset: 0 0 auto; height: 220px; background: linear-gradient(180deg, #ffffffa6 0%, #ffffff80 70%, #ffffff00 100%); pointer-events: none; }
.final-copy { align-self: start; max-width: 650px; }
.final-copy-logo { display: block; width: 260px; height: auto; margin-bottom: 12px; }
.final-copy h2 { max-width: 20ch; margin: 0; font: 700 clamp(34px, 3.35vw, 54px)/1.06 'Pliant', 'Golos Text', sans-serif; letter-spacing: -.025em; word-spacing: .1em; text-wrap: balance; }
.final-form-wrap { align-self: start; width: 100%; padding: 26px; border-radius: 8px; background: #fffffff5; box-shadow: 0 14px 44px #0507081a; }
.final-intro { margin: 0 0 22px; color: var(--secondary); font-size: 15px; line-height: 1.5; }
.final-form .field { margin-bottom: 16px; font-size: 14px; }
.final-form .field input { min-height: 48px; margin-top: 7px; padding: 11px 12px; }
.final-form .consent { min-height: 44px; margin: 18px 0; font-size: 12px; }
.final-form .consent input { width: 20px; height: 20px; }
.final-form .field-error { font-size: 12px; }
.final-submit { width: 100%; min-height: 46px; padding: 12px; border-radius: 4px; font-size: 14px; white-space: normal; }
.final-form .preview-notice { margin-top: 10px; font-size: 11px; line-height: 1.4; }
.final-feedback { margin: 16px 0 0; padding: 12px; background: var(--ground); color: var(--ink); font-size: 14px; line-height: 1.5; }
.final-call { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; margin-top: 18px; padding-top: 18px; border-top: 1px solid #cbd0d6; }
.final-call-label { color: var(--secondary); font-size: 12px; line-height: 1.4; }
.final-call a { min-height: 44px; color: var(--ink); font-size: 20px; font-weight: 600; line-height: 1.3; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.final-call a:hover { text-decoration-thickness: 2px; }
.final-footer { display: flex; align-items: center; gap: 24px; min-height: 68px; padding: 16px var(--gutter); color: var(--secondary); background: var(--white); }
.final-footer-logo { width: 160px; height: auto; display: block; }
.final-footer p { margin: 0; font-size: 12px; line-height: 1.4; }
.final-footer a { min-height: 44px; display: inline-flex; align-items: center; font-size: 12px; text-underline-offset: 4px; }
.final-footer .final-privacy { margin-left: auto; }
.final-contact [hidden] { display: none !important; }
@media (min-width: 1101px) and (max-height: 700px) {
 .final-stage { padding-block: 22px; }
 .final-copy-logo { width: 230px; margin-bottom: 10px; }
 .final-copy h2 { max-width: none; font-size: 34px; }
 .final-form-wrap { padding: 18px 22px; }
 .final-intro { font-size: 14px; margin-bottom: 15px; }
 .final-form .field { margin-bottom: 12px; }
 .final-form .consent { margin-block: 12px; }
 .final-call { margin-top: 12px; padding-top: 10px; }
 .final-footer { min-height: 52px; padding-block: 4px; }
}
@media (max-width: 1100px) {
 .final-contact { min-height: auto; }
 .final-stage { display: block; padding: 0; }
 .final-scene { position: relative; z-index: 0; width: 100%; aspect-ratio: 1672 / 941; }
 .final-scene img { object-fit: contain; }
 .final-copy { position: absolute; top: 28px; left: 24px; right: 24px; z-index: 1; max-width: 70%; }
 .final-copy-logo { width: 220px; margin-bottom: 10px; }
 .final-copy h2 { max-width: none; font-size: clamp(32px, 4.3vw, 46px); }
 .final-form-wrap { max-width: 560px; margin: 0 auto; padding: 26px 24px; border-radius: 0; box-shadow: none; background: var(--white); }
 .final-footer { padding-inline: 24px; border-top: 1px solid #cbd0d6; }
}
@media (max-width: 700px) {
 .final-scene { aspect-ratio: 1; }
 .final-scene::after { height: 150px; }
 .final-scene img { object-fit: cover; object-position: center 30%; }
 .final-copy { top: 22px; left: 16px; right: 16px; max-width: none; }
 .final-copy-logo { width: 168px; margin-bottom: 8px; }
 .final-copy h2 { max-width: none; font-size: clamp(26px, 7.2vw, 36px); }
 .final-form-wrap { padding: 22px 16px; }
 .final-intro { font-size: 14px; margin-bottom: 18px; }
 .final-call a { font-size: 20px; }
 .final-footer { padding: 12px 16px; gap: 4px 16px; flex-wrap: wrap; justify-content: space-between; }
 .final-footer-logo { width: 140px; }
 .final-footer p { font-size: 11px; }
 .final-footer .final-privacy { margin-left: 0; flex-basis: 100%; }
}

/* forms/callback.css */
@font-face{font-family:RB Forms Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(./assets/forms/9c72aa0f40e4eef8-s.p.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}
@font-face{font-family:RB Forms Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(./assets/forms/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
.lead-callback {
  --callback-panel:#1c2128;--callback-input:#272d35;--callback-border:#424952;--callback-text:#f6f5f2;--callback-muted:#b7bdc5;--callback-orange:#e96124;--callback-error:#ffb6a2;
  color-scheme:dark;width:min(100%,570px);max-height:calc(100dvh - 1rem);color:var(--callback-text);background:var(--callback-panel);border:1px solid var(--callback-border);border-radius:20px;box-shadow:0 18px 48px rgb(0 0 0 / .2);
}
.lead-callback .lead-modal__header {display:block;position:relative;padding:35px 34px 0;border-bottom:0;}
.lead-callback .lead-modal__heading {max-width:410px;margin:0 20px 14px 0;font-size:30px;font-weight:500;line-height:1.12;letter-spacing:-.7px;color:var(--callback-text);}
.lead-callback .lead-modal__lead {margin:0 0 26px;color:var(--callback-muted);font-size:16px;font-weight:400;line-height:1.5;}
.lead-callback .lead-modal__close {position:absolute;top:10px;right:10px;margin:0;width:44px;height:44px;color:var(--callback-muted);}
.lead-callback .lead-modal__body {padding:0 34px 32px;min-height:0;overflow-y:auto;}
.lead-callback .lead-modal__form {gap:0;}
.lead-callback .lead-modal__field {gap:0;}
.lead-callback .lead-phone-field__label {display:block;margin:0 0 9px;color:var(--callback-text);font-size:15px;font-weight:500;line-height:1.4;}
.lead-callback .lead-phone-field__input {width:100%;height:60px;min-height:60px;margin:0;padding:15px 17px;color:var(--callback-text);background:var(--callback-input);border:1px solid var(--callback-border);border-radius:11px;font-family:inherit;font-weight:400;font-size:19px;line-height:1.4;}
.lead-callback .lead-phone-field__input::placeholder {color:#a3abb6;opacity:1;}
.lead-callback .lead-phone-field__input[aria-invalid=true] {border-color:var(--callback-error);}
.lead-callback .lead-modal__consent {display:flex;align-items:flex-start;gap:11px;margin:17px 0 22px;padding:0;min-height:22px;color:var(--callback-muted);font-size:14px;line-height:1.55;}
.lead-callback .lead-modal__consent-text {color:var(--callback-muted);font-size:14px;line-height:1.55;}
.lead-callback .lead-modal__checkbox {flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:var(--callback-orange);}
.lead-callback .lead-modal__consent-text a {color:inherit;font-weight:400;text-decoration:underline;text-underline-offset:3px;}
.lead-callback .lead-modal__actions {gap:0;padding-top:0;}
.lead-callback .lead-modal__submit {display:flex;justify-content:center;width:100%;min-height:57px;margin:0;padding:14px 20px;border:1px solid transparent;border-radius:11px;color:#fff;background:var(--callback-orange);box-shadow:none;font-size:17px;font-weight:500;line-height:1.4;text-align:center;}
.lead-callback .lead-modal__submit:hover {background:#f16e30;box-shadow:none;transform:none;}
.lead-callback :is(.lead-phone-field__error,.lead-modal__error,.lead-modal__submit-error) {margin:9px 0 14px;color:var(--callback-error);font-size:14px;line-height:1.45;}
@media(max-width:480px) {
  .lead-callback {border-radius:16px;}
  .lead-callback .lead-modal__header {padding:30px 22px 0;}
  .lead-callback .lead-modal__body {padding:0 22px 24px;}
  .lead-callback .lead-modal__heading {margin-right:16px;font-size:27px;line-height:1.12;letter-spacing:-.5px;}
  .lead-callback .lead-modal__lead {margin-bottom:23px;}
}

/* forms/cookie-consent.css */
.rb-cookie {
  position: fixed;
  z-index: 110;
  bottom: max(20px, env(safe-area-inset-bottom));
  left: 50%;
  transform: translateX(-50%);
  width: min(940px, calc(100% - 40px));
  display: grid;
  grid-template-columns: 1fr 180px;
  gap: 24px;
  align-items: center;
  padding: 22px 26px;
  border: 1px solid #46484a;
  border-radius: 16px;
  background: #202326;
  color: #fff;
  box-shadow: 0 12px 48px #0006;
  font-family: var(--font-inter), sans-serif;
  max-height: calc(100dvh - 112px);
  overflow-y: auto;
}
.rb-cookie h2 { margin: 0 0 8px; color: #fff; font-size: 21px; font-weight: 700; line-height: 1.25; }
.rb-cookie p { margin: 0; color: #e1e2e3; font-size: 15px; line-height: 1.55; }
.rb-cookie p + p { margin-top: 12px; }
.rb-cookie a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.rb-cookie__actions { display: grid; gap: 8px; }
.rb-cookie button { min-height: 46px; border-radius: 13px; padding: 10px 16px; cursor: pointer; font-family: inherit; font-size: 16px; font-weight: 650; line-height: 1.25; }
.rb-cookie .rb-cookie__accept { border: 1px solid #ff804f; background: linear-gradient(180deg, #ff793e, #f15a24); color: #fff; font-size: 18px; font-weight: 750; box-shadow: 0 4px 16px #f15a2433; }
.rb-cookie__accept:hover { filter: brightness(1.08); }
.rb-cookie__secondary { border: 1px solid #777b7d; background: transparent; color: #fff; }
.rb-cookie__secondary:hover { background: #ffffff12; }
.rb-cookie__back { border: 0; background: transparent; color: #e1e2e3; text-decoration: underline; text-underline-offset: 3px; }
.rb-cookie :focus-visible, .rb-cookie-settings-link:focus-visible { outline: 2px solid #ff9a70; outline-offset: 4px; }
.rb-cookie--settings { width: min(760px, calc(100% - 40px)); grid-template-columns: 1fr; gap: 20px; }
.rb-cookie--settings .rb-cookie__actions { grid-template-columns: 1fr 1.5fr auto; }
.rb-cookie-settings-link { min-height: 44px; background: none; border: 0; padding: 0; color: inherit; font: inherit; text-align: left; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.neo-direct__legal:has(.rb-cookie-settings-link), .neo-compact__legal:has(.rb-cookie-settings-link) { align-items: center; flex-wrap: wrap; }
.neo-direct__legal .rb-cookie-settings-link, .neo-compact__legal .rb-cookie-settings-link { color: #dce0e2; font-size: 14px; }
@media (max-width: 767px) {
  .rb-cookie { width: calc(100% - 20px); bottom: calc(80px + env(safe-area-inset-bottom)); grid-template-columns: 1fr; gap: 14px; padding: 18px; max-height: calc(100dvh - 174px - env(safe-area-inset-bottom)); }
  .rb-cookie h2 { font-size: 19px; }
  .rb-cookie p { font-size: 14px; line-height: 1.5; }
  .rb-cookie__actions { grid-template-columns: 1fr 1fr; }
  .rb-cookie--settings .rb-cookie__actions { grid-template-columns: 1fr; }
}

/* forms/integration.css */
/* Original published callback panel, in a native dialog and in the final section. */
.lead-callback, .rb-cookie { --font-inter:'RB Forms Inter',Inter,system-ui,sans-serif; font-family:var(--font-inter); }
.request-dialog.lead-callback { position:fixed; inset:0; margin:auto; width:min(570px,calc(100% - 16px)); height:fit-content; max-height:calc(100dvh - 16px); padding:0; overflow:auto; }
.request-dialog::backdrop { background:#080b0dcc; }
.lead-callback .lead-modal__header { position:relative; }
.lead-callback .lead-modal__heading { font-family:inherit; }
.lead-callback #request-description { margin:0 0 26px; color:var(--callback-muted); font:400 16px/1.5 var(--font-inter); }
.lead-callback .lead-modal__close { display:flex; align-items:center; justify-content:center; border:0; background:transparent; font:400 24px/1 var(--font-inter); cursor:pointer; }
.lead-callback .lead-modal__close:focus-visible, .lead-callback input:focus-visible, .lead-callback button:focus-visible, .lead-callback a:focus-visible { outline:2px solid #ff9a70; outline-offset:3px; }
.lead-callback .lead-modal__form { display:flex; flex-direction:column; margin:0; }
.lead-callback .lead-phone-field__input { display:block; box-sizing:border-box; }
.lead-callback .lead-phone-field__error, .lead-callback .lead-modal__error { font-weight:400; }
.lead-callback .preview-notice { margin:10px 0 0; color:var(--callback-muted); font:400 11px/1.4 var(--font-inter); text-align:center; }
.lead-callback .form-feedback, .lead-callback .final-feedback { margin:12px 0 0; padding:12px; color:var(--callback-text); background:#303945; font:400 14px/1.5 var(--font-inter); }
.lead-callback .request-context { margin:0 0 16px; padding:0; color:var(--callback-muted); background:transparent; font-size:14px; }
.final-contact .final-form-wrap.lead-callback { width:100%; max-height:none; padding:0; }
.final-contact .lead-callback .lead-modal__header { padding:26px 26px 0; }
.final-contact .lead-callback .lead-modal__lead { margin:0 0 22px; font-size:15px; }
.final-contact .lead-callback .lead-modal__body { padding:0 26px 24px; overflow:visible; }
.final-contact .lead-callback .lead-phone-field__input { height:54px; min-height:54px; font-size:18px; }
.final-contact .lead-callback .lead-modal__submit { min-height:50px; font-size:16px; }
.final-contact .lead-callback .lead-modal__consent { margin:16px 0 20px; }
.final-contact .lead-callback .final-call { border-color:var(--callback-border); }
.final-contact .lead-callback .final-call-label { color:var(--callback-muted); }
.final-contact .lead-callback .final-call a { color:var(--callback-text); }
.final-footer { flex-wrap:wrap; gap:8px 24px; }
.final-cookie-links { display:flex; align-items:center; gap:20px; }
.final-cookie-links a, .final-cookie-links button { font-size:12px; }
.rb-cookie [hidden], .lead-callback [hidden] { display:none!important; }
@media(max-width:1100px) { .final-contact .final-form-wrap.lead-callback { max-width:560px; margin:18px auto; } }
@media(max-width:700px) {
 .final-contact .final-form-wrap.lead-callback { width:calc(100% - 24px); margin:12px auto; border-radius:16px; }
 .final-contact .lead-callback .lead-modal__header { padding:22px 20px 0; }
 .final-contact .lead-callback .lead-modal__body { padding:0 20px 22px; }
 .final-contact .lead-callback .lead-modal__lead { font-size:14px; margin-bottom:20px; }
 .final-cookie-links { flex-wrap:wrap; gap:0 18px; }
}
@media(min-width:1101px) and (max-height:700px) {
 .final-contact .lead-callback .lead-modal__header { padding:20px 22px 0; }
 .final-contact .lead-callback .lead-modal__body { padding:0 22px 20px; }
 .final-contact .lead-callback .lead-modal__lead { font-size:14px; margin-bottom:18px; }
 .final-footer { padding-block:4px; min-height:52px; }
}

