
:root{
  /* Layout: a showroom floor. White page, grey bands and white product tiles (Apple);
     the catalog is a filter column beside a card grid (Tesla); the back office is a grey desk with white panels.
     Single light theme by the owner's rule: every color below is set explicitly. */
  --bg:#ffffff;
  --bg-2:#f5f5f7;
  --fill:#e8e8ed;
  --fill-2:#f0f0f3;
  --paper:#ffffff;
  --ink:#1d1d1f;
  --ink-2:#6e6e73;
  --ink-3:#86868b;
  --line:#d2d2d7;
  --line-2:#e6e6eb;
  --accent:#0071e3;
  --accent-h:#0077ed;
  --accent-tint:#eef5fd;
  --link:#0066cc;
  --hot:#bf4800;
  --ok:#1f8a3b;
  --warn:#b86200;
  --warn-bg:#fff5e6;
  --bad:#c42b1c;
  --bad-bg:#fdeceb;
  --on:#34c759;
  --ring:rgba(0,113,227,.24);
  --glass:rgba(250,250,252,.84);
  --glass-2:rgba(255,255,255,.88);
  --shade:rgba(0,0,0,.08);
  --shade-2:rgba(0,0,0,.14);
  --paddle:rgba(210,210,215,.64);
  --paddle-h:rgba(223,223,227,.72);
  --paddle-ink:rgba(0,0,0,.56);
  --foot-ink:rgba(0,0,0,.56);
  --foot-link:rgba(0,0,0,.72);
  --f-text:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --f-mono:"Geist Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --ease:cubic-bezier(.4,0,.6,1);
  --ease-out:cubic-bezier(0,0,.5,1);
  --ease-move:cubic-bezier(.5,0,0,.75);
  --r-big:28px;--r-tile:18px;--r-card:14px;--r-ctl:10px;
  --nav-h:52px;--gut:16px;--maxw:1200px;
  color-scheme:light;
}
@media (min-width:734px){:root{--gut:32px}}
@media (min-width:1068px){:root{--gut:40px}}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--f-text);font-size:17px;line-height:1.47;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--glass)}
h1,h2,h3,h4{margin:0;font-weight:600;text-wrap:balance}
p{margin:0}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}
img{display:block;max-width:100%}
svg{display:block}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
[id^="s-"]{scroll-margin-top:calc(env(safe-area-inset-top,0px) + var(--nav-h) + 12px)}
.mono{font-family:var(--f-mono);font-size:12px;line-height:1.35;letter-spacing:.05em;text-transform:uppercase;font-weight:500}
.num{font-variant-numeric:tabular-nums}
.sel{user-select:all;-webkit-user-select:all}
.muted{color:var(--ink-2)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px;padding:0;border:0}
.wrap{width:100%;max-width:calc(var(--maxw) + 2*var(--gut));margin-inline:auto;padding-left:max(16px,var(--gut),env(safe-area-inset-left,0px));padding-right:max(16px,var(--gut),env(safe-area-inset-right,0px))}
#view{flex:1 0 auto;min-height:60vh}
@media (prefers-reduced-motion:no-preference){
  #view.enter>*{animation:enter .5s var(--ease-out) backwards}
  @keyframes enter{from{opacity:0;transform:translateY(10px)}}
}
.h1{font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.03em;font-weight:600}
.h2{font-size:clamp(28px,3.4vw,44px);line-height:1.1;letter-spacing:-.028em;font-weight:600}
.h3{font-size:clamp(21px,2vw,24px);line-height:1.2;letter-spacing:-.02em;font-weight:600}

/* buttons and links */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:7px 16px;border-radius:980px;border:1px solid transparent;font-size:15px;line-height:1.2;font-weight:500;letter-spacing:-.01em;cursor:pointer;white-space:nowrap;text-decoration:none;background:none;transition:background-color .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease),opacity .2s var(--ease)}
.btn:hover{text-decoration:none}
.btn-primary{background:var(--accent);color:var(--paper)}
.btn-primary:hover{background:var(--accent-h)}
.btn-lg{min-height:48px;padding:12px 26px;font-size:17px}
.btn-sm{min-height:30px;padding:5px 12px;font-size:13px}
.btn-quiet{background:var(--fill-2);color:var(--ink)}
.btn-quiet:hover{background:var(--fill)}
.btn-line{border-color:var(--line);color:var(--ink)}
.btn-line:hover{border-color:var(--ink-3)}
.btn-danger{background:var(--bad);color:var(--paper)}
.btn[disabled]{opacity:.42;cursor:default;pointer-events:none}
.more{display:inline-flex;align-items:center;gap:3px;color:var(--link);font-size:17px;cursor:pointer;background:none;border:0;padding:0}
.more::after{content:"›";font-size:1.2em;line-height:1;transform:translateY(-.04em)}
.copy{border:0;background:var(--fill-2);border-radius:980px;padding:3px 10px;font-size:12px;font-weight:500;cursor:pointer;color:var(--ink);white-space:nowrap}
.copy:hover{background:var(--fill)}
.ibtn{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:50%;border:0;background:transparent;color:var(--ink-2);cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease)}
.ibtn:hover{background:var(--fill-2);color:var(--ink);text-decoration:none}
.ibtn-bad:hover{background:var(--bad-bg);color:var(--bad)}
.paddle{width:36px;height:36px;border-radius:50%;border:0;background:var(--paddle);color:var(--paddle-ink);display:grid;place-items:center;cursor:pointer;transition:background-color .1s linear,opacity .1s linear}
.paddle:hover{background:var(--paddle-h)}
.paddle[disabled]{opacity:.36;cursor:default}

/* header */
.gnav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--glass);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--line-2)}
.gnav-in{height:var(--nav-h);display:flex;align-items:center;gap:20px}
.logo{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-weight:600;font-size:19px;letter-spacing:-.025em;flex:none}
.logo:hover{text-decoration:none}
.logo-ev{display:inline-grid;place-items:center;height:22px;padding:0 5px;border:1.5px solid var(--ink);border-radius:5px;font-size:12px;letter-spacing:.04em;font-weight:700;line-height:1}
.gnav-links{display:flex;gap:26px;margin-inline:auto}
.gnav-links a{color:var(--ink);font-size:14px;opacity:.78;transition:opacity .32s var(--ease)}
.gnav-links a:hover,.gnav-links a[aria-current="page"]{opacity:1;text-decoration:none}
.gnav-tools{display:flex;align-items:center;gap:10px;margin-left:auto}
.gnav-links+.gnav-tools{margin-left:0}
.gnav-admin{font-size:13px;font-weight:500;color:var(--ink);padding:5px 12px;border:1px solid var(--line);border-radius:980px;white-space:nowrap}
.gnav-admin:hover{border-color:var(--ink-3);text-decoration:none}
.gnav-admin[aria-current="page"]{border-color:var(--ink)}
.lang{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 10px 0 9px;border:0;border-radius:980px;background:transparent;color:var(--ink);font:inherit;font-size:12px;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:background .2s}
.lang-btn:hover,.lang-btn[aria-expanded="true"]{background:var(--fill-2)}
.lang-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:60;min-width:168px;padding:6px;display:grid;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.12);animation:langIn .18s var(--ease)}
.lang-menu[hidden]{display:none}
.lang-menu button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;padding:9px 10px;border-radius:9px;font:inherit;font-size:14px;color:var(--ink);text-align:left;cursor:pointer}
.lang-menu button b{font-size:11px;font-weight:600;letter-spacing:.05em;color:var(--ink-3,#6e6e73);width:20px}
.lang-menu button:hover{background:var(--fill-2)}
.lang-menu button[aria-pressed="true"]{font-weight:600}
.lang-menu button[aria-pressed="true"]::after{content:"";margin-left:auto;width:6px;height:6px;border-radius:50%;background:var(--accent,#0071e3)}
@keyframes langIn{from{opacity:0;transform:translateY(-4px)}}
@media (prefers-reduced-motion:reduce){.lang-menu{animation:none}}
.menu-btn{display:none;width:36px;height:36px;place-items:center;border:0;background:transparent;border-radius:50%;cursor:pointer;color:var(--ink)}
.mnav{border-top:1px solid var(--line-2);background:var(--glass-2)}
.mnav .wrap{display:grid;padding-block:8px 18px}
.mnav a{color:var(--ink);font-size:24px;font-weight:600;letter-spacing:-.02em;padding:10px 0;border-bottom:1px solid var(--line-2)}
.mnav a:last-child{border-bottom:0}
.mnav a:hover{text-decoration:none}
@media (max-width:833px){.gnav-links{display:none}.menu-btn{display:inline-grid}.gnav-tools,.gnav-links+.gnav-tools{margin-left:auto;gap:4px}}
@media (max-width:420px){.gnav-admin{display:none}}

/* promo ribbon (Apple's: drops in, then fades from blue to grey) */
.ribbon{background:var(--bg-2);color:var(--ink);font-size:14px;line-height:1.43;text-align:center}
.ribbon{display:grid;grid-template-rows:1fr;transition:grid-template-rows .95s cubic-bezier(.65,0,.35,1)}
.ribbon p{transition:opacity .6s ease .1s}
.ribbon.shut p{opacity:0;transition:opacity .5s ease}
.ribbon>.wrap{min-height:0;overflow:hidden;padding-block:0}
.ribbon p{padding-block:11px}
.ribbon.shut{grid-template-rows:0fr}
.ribbon.snap{transition:none}
.ribbon[hidden]{display:none}
.ribbon a{white-space:nowrap}
@media (prefers-reduced-motion:no-preference){
  .ribbon.fresh{animation:rib-in .8s ease-in-out both,rib-fade 1s ease 1.8s both}
  .ribbon.fresh a{animation:rib-link 1s ease 1.8s both}
  @keyframes rib-in{from{transform:translateY(-100%)}}
  @keyframes rib-fade{from{background:var(--accent);color:var(--paper)}}
  @keyframes rib-link{from{color:var(--paper)}}
}

/* home */
.hero{padding-block:clamp(44px,7vw,96px) 0}
.eyebrow{color:var(--ink-2)}
.hero .eyebrow{margin-bottom:18px}
.hero-h{font-size:clamp(44px,7.4vw,92px);line-height:1;letter-spacing:-.04em;font-weight:600}
.hero-h span{display:block;color:var(--ink-3)}
.hero-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 40px;margin-top:26px}
.hero-lead{font-size:clamp(19px,1.8vw,21px);line-height:1.38;color:var(--ink-2);max-width:42ch}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:clamp(36px,5vw,56px);padding-top:22px;border-top:1px solid var(--line-2)}
.stat b{display:block;font-size:clamp(26px,3vw,36px);line-height:1.1;font-weight:600;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.stat span{display:block;margin-top:4px;font-size:14px;color:var(--ink-2)}
@media (max-width:733px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.feature-sec{margin-top:clamp(40px,6vw,72px)}
.feat{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.5fr);align-items:center;gap:clamp(20px,3vw,40px);background:var(--bg-2);border-radius:var(--r-big);padding:clamp(24px,3.4vw,48px);color:var(--ink);overflow:hidden;transition:transform .3s var(--ease-out)}
.feat:hover{text-decoration:none;transform:scale(1.008)}
.feat-copy{display:grid;gap:8px;align-content:center}
.feat-k{color:var(--hot)}
.feat-h{font-size:clamp(30px,3.6vw,48px);line-height:1.05;letter-spacing:-.03em}
.feat-trim{color:var(--ink-2);font-size:17px}
.feat-price{margin-top:8px;font-size:21px;font-weight:600;letter-spacing:-.015em}
.feat-price span{font-size:14px;font-weight:400;color:var(--ink-2);margin-left:6px}
.feat .more{margin-top:10px}
.feat-media{aspect-ratio:16/9;display:grid;place-items:center;border-radius:var(--r-tile);overflow:hidden}
.feat-media img{width:100%;height:100%;object-fit:cover}
.feat-media svg{width:96%;height:auto}
@media (max-width:833px){.feat{grid-template-columns:minmax(0,1fr)}.feat-media{order:-1}}
.shelf{padding-top:clamp(56px,8vw,104px)}
.sec-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 20px;margin-bottom:24px}
.shelf-track{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(250px,30vw,360px);gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-block:4px 12px;
  padding-left:max(16px,var(--gut),env(safe-area-inset-left,0px),calc((100% - var(--maxw))/2));
  padding-right:max(16px,var(--gut),env(safe-area-inset-right,0px),calc((100% - var(--maxw))/2));
  scroll-padding-inline:max(16px,var(--gut),calc((100% - var(--maxw))/2))}
.shelf-track::-webkit-scrollbar{display:none}
.stile{scroll-snap-align:start;display:flex;flex-direction:column;background:var(--bg-2);border-radius:var(--r-tile);overflow:hidden;color:var(--ink);transition:transform .3s var(--ease-out)}
.stile:hover{transform:scale(1.0161);text-decoration:none}
.stile-media{aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;position:relative}
.stile-media img{width:100%;height:100%;object-fit:cover}
.stile-media svg{width:88%;height:auto}
.stile-body{padding:16px 22px 22px;display:grid;gap:3px}
.stile-k{color:var(--ink-2)}
.stile h3{font-size:21px;line-height:1.2;letter-spacing:-.02em;margin-top:4px}
.stile-trim{color:var(--ink-2);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stile-price{margin-top:8px;font-size:17px;font-weight:600}
.paddles{display:flex;justify-content:flex-end;gap:12px;margin-top:14px}
.brands{padding-block:clamp(56px,8vw,96px)}
.brand-row{display:flex;flex-wrap:wrap;gap:10px}
.bpill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:980px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:16px;font-weight:500;cursor:pointer;transition:border-color .2s var(--ease)}
.bpill:hover{border-color:var(--ink)}
.bpill span{font-family:var(--f-mono);font-size:12px;color:var(--ink-3)}
.band{background:var(--bg-2);padding-block:clamp(56px,8vw,112px)}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.tile{background:var(--bg);border-radius:var(--r-big);padding:clamp(26px,3.4vw,44px);display:flex;flex-direction:column;gap:14px;min-width:0}
.tile-wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px 40px;align-items:end}
.tile-wide>div{display:grid;gap:14px}
.tile h3{font-size:clamp(26px,2.8vw,36px);line-height:1.12;letter-spacing:-.025em}
.tile p{color:var(--ink-2);max-width:52ch}
.tile .more{margin-top:auto;padding-top:6px}
.figs{display:flex;gap:16px 32px;flex-wrap:wrap}
.figs b{display:block;font-size:clamp(34px,4.2vw,52px);font-weight:600;letter-spacing:-.035em;line-height:1;font-variant-numeric:tabular-nums}
.figs span{display:block;margin-top:8px;font-size:14px;color:var(--ink-2)}
.phones{display:grid;gap:6px}
@media (max-width:833px){.tiles{grid-template-columns:minmax(0,1fr)}.tile-wide{grid-template-columns:minmax(0,1fr)}}
.contact{padding-block:clamp(56px,8vw,112px)}
.contact .h2{margin-top:10px}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:28px;margin-top:32px;padding-top:28px;border-top:1px solid var(--line-2)}
.kv{display:grid;gap:6px;align-content:start;min-width:0}
.kv h3{color:var(--ink-2);margin-bottom:4px}
.contact-addr{font-size:clamp(22px,2.4vw,28px);line-height:1.2;font-weight:600;letter-spacing:-.02em}
.prow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.prow b{font-weight:500;font-variant-numeric:tabular-nums}
@media (max-width:999px){.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.contact-grid{grid-template-columns:minmax(0,1fr)}}
.foot{background:var(--bg-2);color:var(--foot-ink);font-size:12px;line-height:1.5;border-top:1px solid var(--line-2)}
.foot .wrap{padding-block:22px 30px;display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:space-between}
.foot a{color:var(--foot-link)}
.foot-l{display:flex;flex-wrap:wrap;gap:4px 20px}

/* states */
.state{padding:clamp(28px,4vw,48px);border-radius:var(--r-tile);background:var(--bg-2);display:grid;gap:10px;justify-items:start}
.state h2{font-size:21px;letter-spacing:-.015em}
.state p{color:var(--ink-2);max-width:60ch}
.note{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;border-radius:12px;background:var(--warn-bg);color:var(--ink);font-size:14px}
.note-i{width:8px;height:8px;border-radius:50%;background:var(--warn);margin-top:6px;flex:none}
.skel{background:var(--bg-2);border-radius:var(--r-card);aspect-ratio:3/4}
@media (prefers-reduced-motion:no-preference){.skel{animation:pulse 1.6s var(--ease) infinite alternate}@keyframes pulse{to{opacity:.55}}}

/* catalog */
.cat{padding-block:clamp(28px,4vw,48px) clamp(56px,8vw,96px)}
.cat-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 24px;margin-bottom:22px}
.cat-sub{margin-top:8px;color:var(--ink-2);font-size:15px}
.cat-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cat-count{color:var(--ink-2)}
.sortbox{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-2)}
.sortbox select{appearance:none;-webkit-appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%231d1d1f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 2px center;font-size:14px;font-weight:500;color:var(--ink);padding:4px 18px 4px 2px;cursor:pointer}
.btn-filters{display:none}
.cat-body{display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px;align-items:start}
.filters{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--nav-h) + 20px);max-height:calc(100vh - var(--nav-h) - 40px);overflow:auto;padding-right:6px;scrollbar-width:thin}
.fsheet-head,.fsheet-foot{display:none}
.fgroup{padding-block:16px;border-bottom:1px solid var(--line-2)}
.fgroup:first-of-type{padding-top:0}
.fgroup:last-of-type{border-bottom:0}
.fgroup h3{font-size:13px;font-weight:600;letter-spacing:0;margin-bottom:10px}
.check{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:15px;cursor:pointer}
.check input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1.5px solid var(--ink-3);border-radius:5px;margin:0;display:grid;place-items:center;flex:none;cursor:pointer;background:var(--paper);transition:background-color .15s,border-color .15s}
.check input:checked{background:var(--accent);border-color:var(--accent)}
.check input:checked::after{content:"";width:9px;height:5px;border:2px solid var(--paper);border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}
.check .n{margin-left:auto;font-family:var(--f-mono);font-size:12px;color:var(--ink-3)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{border:1px solid var(--line);background:var(--paper);border-radius:980px;padding:6px 13px;font-size:14px;cursor:pointer;color:var(--ink);transition:border-color .15s,box-shadow .15s,background-color .15s}
.chip:hover{border-color:var(--ink-3)}
.chip[aria-pressed="true"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-tint)}
.range{display:grid;gap:8px}
.range-v{font-size:15px;font-weight:500;font-variant-numeric:tabular-nums}
.range input,.lease input[type=range]{width:100%;accent-color:var(--accent);margin:0}
.fselect{width:100%;min-height:40px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--paper);padding:8px 10px;font-size:15px}
.switch{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-size:15px}
.switch input{appearance:none;-webkit-appearance:none;width:44px;height:26px;border-radius:980px;background:var(--fill);margin:0;position:relative;cursor:pointer;flex:none;transition:background-color .2s var(--ease)}
.switch input::after{content:"";position:absolute;left:2px;top:2px;width:22px;height:22px;border-radius:50%;background:var(--paper);box-shadow:0 1px 3px var(--shade-2);transition:transform .2s var(--ease)}
.switch input:checked{background:var(--on)}
.switch input:checked::after{transform:translateX(18px)}
.switch-row{display:flex;width:100%}
.switch-row + .switch-row{margin-top:12px}
.active-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.achip{display:inline-flex;align-items:center;gap:6px;padding:5px 9px 5px 12px;border-radius:980px;background:var(--fill-2);border:0;font-size:13px;cursor:pointer;color:var(--ink)}
.achip::after{content:"×";font-size:15px;line-height:1;color:var(--ink-2)}
.achip:hover{background:var(--fill)}
.linkbtn{border:0;background:none;padding:0;color:var(--link);font-size:13px;cursor:pointer}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,1fr));gap:22px}
.card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-card);overflow:hidden;color:var(--ink);transition:border-color .2s var(--ease)}
.card:hover{text-decoration:none;border-color:var(--line)}
.card-media{position:relative;aspect-ratio:4/3;background:var(--bg-2);display:grid;place-items:center;overflow:hidden}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.card:hover .card-media img{transform:scale(1.03)}
/* only the car drawing shown instead of a missing photo; the camera icon in .pcount keeps its own size (Safari blew it up to 86%, 2026-11-02) */
.card-media > svg{width:86%;height:auto}
.tags{position:absolute;left:10px;top:10px;display:flex;flex-wrap:wrap;gap:6px}
.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:980px;background:var(--glass-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12px;font-weight:500;color:var(--ink);white-space:nowrap}
.tag i{width:7px;height:7px;border-radius:50%;background:var(--ok)}
.tag-res i{background:var(--warn)}
.tag-sold i{background:var(--ink-3)}
.tag-new{color:var(--hot)}
.tag-hid{color:var(--ink-2)}
.tag-hid i{background:var(--ink-3)}
.pcount{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:980px;background:var(--glass-2);color:var(--ink)}
.pcount svg{width:13px;height:13px;flex:none}
.card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:12px;flex:1}
.card-title h3{font-size:19px;line-height:1.25;letter-spacing:-.018em}
.card-title p{font-size:14px;color:var(--ink-2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.card-price b{font-size:22px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.card-price .ask{font-size:17px}
.card-price span{font-size:13px;color:var(--ink-2)}
.card-stats{list-style:none;margin:auto 0 0;padding:12px 0 0;border-top:1px solid var(--line-2);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.card-stats li{min-width:0}
.card-stats b{display:block;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-stats span{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin-top:1px}
::view-transition-group(*){animation-duration:.45s;animation-timing-function:var(--ease-move)}
::view-transition-old(root),::view-transition-new(root){animation:none}
@media (max-width:833px){
  .btn-filters{display:inline-flex}
  .cat-body{grid-template-columns:minmax(0,1fr)}
  .filters{position:fixed;inset:0;z-index:80;max-height:none;background:var(--bg);overflow:auto;padding:calc(env(safe-area-inset-top,0px) + 8px) max(16px,var(--gut),env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 96px) max(16px,var(--gut),env(safe-area-inset-left,0px));transform:translateY(100%);visibility:hidden;transition:transform .45s var(--ease-move),visibility 0s linear .45s}
  .filters.open{transform:none;visibility:visible;transition:transform .45s var(--ease-move)}
  .fsheet-head{display:flex;align-items:center;justify-content:space-between;min-height:52px;margin-bottom:12px;border-bottom:1px solid var(--line-2);position:sticky;top:-8px;background:var(--bg);z-index:1}
  .fsheet-head h2{font-size:19px}
  .fsheet-foot{display:flex;position:fixed;left:0;right:0;bottom:0;padding:12px max(16px,var(--gut),env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 12px) max(16px,var(--gut),env(safe-area-inset-left,0px));background:var(--glass-2);border-top:1px solid var(--line-2);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
  .fsheet-foot .btn{flex:1}
}
@media (max-width:560px){.grid{grid-template-columns:minmax(0,1fr)}}

/* car page */
.car{padding-block:20px clamp(56px,8vw,96px)}
.back{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--link);margin-bottom:16px}
.banner{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;border-radius:12px;font-size:15px;margin-bottom:18px;background:var(--bg-2)}
.banner i{width:8px;height:8px;border-radius:50%;margin-top:7px;flex:none;background:var(--ink-3)}
.banner-warn{background:var(--warn-bg)}
.banner-warn i{background:var(--warn)}
.car-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.gal{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--nav-h) + 20px);min-width:0}
.gal-stage{position:relative;background:var(--bg-2);border-radius:var(--r-tile);overflow:hidden}
.gal-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:4/3;outline-offset:-3px}
.gal-track::-webkit-scrollbar{display:none}
.gal-slide{flex:0 0 100%;scroll-snap-align:center;display:grid;place-items:center;position:relative}
.gal-slide img{width:100%;height:100%;object-fit:contain}
.gal-slide svg{width:86%;height:auto}
.gal-note{position:absolute;left:0;right:0;bottom:18px;text-align:center;color:var(--ink-3)}
.gal-nav{position:absolute;right:14px;bottom:14px;display:flex;gap:10px}
.gal-count{position:absolute;left:14px;bottom:20px;color:var(--ink-2)}
.thumbs{display:flex;gap:8px;margin-top:12px;overflow-x:auto;scrollbar-width:none;padding:2px}
.thumbs::-webkit-scrollbar{display:none}
.thumb{flex:none;width:76px;aspect-ratio:4/3;border-radius:8px;overflow:hidden;border:2px solid transparent;background:var(--bg-2);padding:0;cursor:pointer;transition:border-color .2s var(--ease)}
.thumb[aria-current="true"]{border-color:var(--ink)}
.thumb img{width:100%;height:100%;object-fit:cover}
.car-info{display:grid;gap:22px;min-width:0}
.car-eyebrow{display:flex;flex-wrap:wrap;gap:10px;align-items:center;color:var(--ink-2)}
.car-eyebrow .tag{background:var(--bg-2)}
.car-h{font-size:clamp(32px,3.6vw,48px);line-height:1.05;letter-spacing:-.032em}
.car-trim{font-size:19px;color:var(--ink-2);margin-top:6px}
.car-price b{display:block;font-size:clamp(30px,3vw,40px);line-height:1.1;font-weight:600;letter-spacing:-.028em;font-variant-numeric:tabular-nums}
.car-price .ask{font-size:clamp(24px,2.4vw,30px)}
.car-price span{display:block;margin-top:4px;font-size:14px;color:var(--ink-2)}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line-2);border:1px solid var(--line-2);border-radius:var(--r-card);overflow:hidden}
.fact{background:var(--paper);padding:14px 16px;min-width:0}
.fact b{display:block;font-size:20px;font-weight:600;letter-spacing:-.015em;font-variant-numeric:tabular-nums}
.fact span{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin-top:2px}
.cta-col{display:grid;gap:14px;justify-items:start}
.callbox{display:flex;align-items:center;gap:8px 10px;flex-wrap:wrap;font-size:15px;color:var(--ink-2)}
.callbox b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.where{font-size:14px;color:var(--ink-2)}
.lease{border:1px solid var(--line-2);border-radius:var(--r-card);padding:18px 18px 16px}
.lease-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.lease-t{font-size:15px;font-weight:600;letter-spacing:-.01em}
.lease-pay b{font-size:26px;font-weight:600;letter-spacing:-.02em}
.lease-pay span{font-size:14px;color:var(--ink-2);margin-left:2px}
.lease-row{display:grid;gap:6px;margin-top:14px}
.lease-row label{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:var(--ink-2)}
.lease-row label b{color:var(--ink);font-weight:500}
.fine{font-size:12px;line-height:1.45;color:var(--ink-3);margin-top:12px}
.car-more{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);margin-top:clamp(48px,6vw,80px);padding-top:clamp(32px,4vw,48px);border-top:1px solid var(--line-2)}
.car-more>div{display:grid;gap:clamp(28px,4vw,44px);align-content:start;min-width:0}
.specs dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);margin:14px 0 0}
.specs dt,.specs dd{padding:12px 0;border-bottom:1px solid var(--line-2);margin:0;font-size:15px}
.specs dt{color:var(--ink-2);padding-right:12px}
.specs dd{font-weight:500;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}
.swatch{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--shade-2);flex:none}
.equip ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.equip li{display:flex;gap:10px;font-size:15px;line-height:1.4}
.equip li svg{flex:none;margin-top:2px;color:var(--ok)}
.desc p{margin-top:14px;font-size:17px;line-height:1.55;white-space:pre-line;max-width:65ch}
@media (max-width:999px){.car-grid,.car-more{grid-template-columns:minmax(0,1fr)}.gal{position:static}}
.lead{margin-top:clamp(48px,6vw,80px);background:var(--bg-2);border-radius:var(--r-big);padding:clamp(24px,4vw,48px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,4vw,56px)}
.lead-copy{display:grid;gap:12px;align-content:start}
.lead-copy p{color:var(--ink-2)}
.lead-car{color:var(--ink)}
.lead-ok{background:var(--paper);border-radius:var(--r-tile);padding:28px;display:grid;gap:12px;justify-items:start;align-content:start}
.lead-ok h3{font-size:24px;letter-spacing:-.02em}
.lead-ok p{color:var(--ink-2)}
@media (max-width:833px){.lead{grid-template-columns:minmax(0,1fr)}}
.similar{margin-top:clamp(56px,7vw,96px)}

/* forms */
.form{display:grid;gap:16px}
.field{display:grid;gap:6px;align-content:start;min-width:0}
.field>label,.flabel{font-size:13px;font-weight:500;color:var(--ink-2)}
.opt{font-weight:400;color:var(--ink-3)}
.in{width:100%;min-height:44px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--paper);padding:10px 12px;font-size:16px;line-height:1.35;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.in::placeholder{color:var(--ink-3)}
.in:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}
.in[aria-invalid="true"]{border-color:var(--bad)}
.in[readonly]{background:var(--bg-2);color:var(--ink-2)}
textarea.in{min-height:96px;resize:vertical}
.err{font-size:13px;color:var(--bad)}
.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.seg{display:inline-flex;flex-wrap:wrap;background:var(--fill-2);border-radius:10px;padding:3px;gap:2px;max-width:100%}
.seg button{border:0;background:transparent;border-radius:8px;padding:7px 12px;font-size:14px;font-weight:500;color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:background-color .15s,color .15s}
.seg button:hover{color:var(--ink)}
.seg button[aria-pressed="true"]{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px var(--shade)}
.seg-sm button{padding:5px 9px;font-size:12px}
@media (max-width:480px){.row2{grid-template-columns:minmax(0,1fr)}}

/* back office */
.adm-page{background:var(--bg-2);padding-bottom:72px;min-height:70vh}
.adm-head{background:var(--bg);border-bottom:1px solid var(--line-2)}
.adm-head .wrap{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;padding-block:12px}
.adm-k{color:var(--ink-2)}
.adm-tabs{display:flex;flex-wrap:wrap;gap:4px}
.adm-tabs a{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:9px;color:var(--ink-2);font-size:15px;font-weight:500}
.adm-tabs a:hover{color:var(--ink);text-decoration:none}
.adm-tabs a[aria-current="page"]{color:var(--ink);background:var(--fill-2)}
.cnt{font-family:var(--f-mono);font-size:12px;color:var(--ink-3)}
.cnt-hot{color:var(--paper);background:var(--accent);border-radius:980px;padding:1px 7px;font-family:var(--f-mono);font-size:11px}
.adm-head .btn-primary{margin-left:auto}
.adm-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding-block:24px 14px}
.search{flex:1 1 240px;max-width:400px}
.alist{background:var(--paper);border-radius:var(--r-tile);overflow:hidden}
.arow{display:grid;grid-template-columns:84px minmax(0,1fr) 110px auto auto auto;align-items:center;gap:10px 18px;padding:12px 16px;border-bottom:1px solid var(--line-2)}
.arow:last-child{border-bottom:0}
.arow.is-hidden .athumb,.arow.is-hidden .amain{opacity:.55}
.athumb{width:84px;aspect-ratio:4/3;border-radius:8px;background:var(--bg-2);overflow:hidden;display:grid;place-items:center}
.athumb img{width:100%;height:100%;object-fit:cover}
.athumb svg{width:92%;height:auto}
.amain{min-width:0;display:grid;gap:1px}
.aname{color:var(--ink);font-weight:600;font-size:16px;letter-spacing:-.01em}
.asub{font-size:13px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aid{color:var(--ink-3);font-size:11px;text-transform:none;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aprice{font-weight:600;font-size:15px;text-align:right;font-variant-numeric:tabular-nums}
.apub{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);cursor:pointer}
.aacts{display:flex;align-items:center;gap:2px}
.aconfirm{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--bad-bg);font-size:14px}
.aconfirm p{margin-right:auto}
.aempty{padding:40px 20px;text-align:center;color:var(--ink-2)}
@media (max-width:1100px){
  .arow{grid-template-columns:72px minmax(0,1fr) auto}
  .athumb{width:72px}
  .arow .seg{grid-column:1/3}
  .arow .apub{justify-self:end}
  .arow .aacts{grid-column:1/-1;justify-content:flex-end;border-top:1px solid var(--line-2);padding-top:8px}
}
.panel{background:var(--paper);border-radius:var(--r-tile);padding:clamp(18px,2.4vw,28px);min-width:0}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}
.sec-head h2{font-size:21px;letter-spacing:-.02em}
.hint{color:var(--ink-2);font-size:14px;line-height:1.45}
.sec .hint{margin-bottom:16px}
.ed-bar{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--nav-h));z-index:40;background:var(--glass);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--line-2)}
.ed-bar .wrap{display:flex;align-items:center;gap:10px 16px;min-height:58px;padding-block:8px}
.ed-bar .back{margin:0;white-space:nowrap}
.ed-title{font-weight:600;font-size:17px;letter-spacing:-.015em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.ed-state{font-size:13px;color:var(--ink-2);white-space:nowrap}
.ed-state.dirty{color:var(--warn)}
.ed-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start;padding-top:22px}
.ed-main{display:grid;gap:18px;min-width:0}
.ed-side{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--nav-h) + 76px);display:grid;gap:16px}
.side-k{color:var(--ink-2);margin-bottom:12px}
.preview .card{pointer-events:none}
.side-ctl{display:grid;gap:16px}
.side-ctl .switch{width:100%}
.side-meta{font-size:12px;color:var(--ink-3);display:grid;gap:2px}
.side-acts{display:flex;flex-wrap:wrap;gap:8px;padding-top:14px;border-top:1px solid var(--line-2)}
.fgrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.s2{grid-column:span 2}.s3{grid-column:span 3}.s6{grid-column:1/-1}
.inline-checks{display:flex;flex-wrap:wrap;gap:10px 24px}
@media (max-width:999px){.ed-grid{grid-template-columns:minmax(0,1fr)}.ed-side{position:static;order:-1}}
@media (max-width:640px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.s3,.s6{grid-column:1/-1}.ed-bar .back span{display:none}}
.qf textarea{min-height:110px}
.qf-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:12px}
.qf-msg{font-size:14px;color:var(--ink-2)}
.qf-msg.bad{color:var(--bad)}
.busy-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-right:8px;vertical-align:middle}
@media (prefers-reduced-motion:no-preference){.busy-dot{animation:pulse .8s var(--ease) infinite alternate}}
.drop{border:1.5px dashed var(--line);border-radius:14px;padding:22px 18px;display:grid;justify-items:center;gap:10px;text-align:center;color:var(--ink-2);transition:border-color .2s,background-color .2s}
.drop.over{border-color:var(--accent);background:var(--accent-tint)}
.drop p{font-size:15px}
.drop .hint{font-size:12px;max-width:52ch}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:12px;margin-top:14px}
.ph{position:relative;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:var(--bg-2);cursor:grab}
.ph img{width:100%;height:100%;object-fit:cover;pointer-events:none}
.ph.dragging{opacity:.35}
.ph.drop-at{box-shadow:0 0 0 2px var(--accent)}
.ph-cover{position:absolute;left:6px;top:6px}
.ph-state{position:absolute;inset:0;display:grid;place-items:center;padding:8px;text-align:center;font-size:12px;font-weight:500;background:var(--glass-2);color:var(--ink)}
.ph.err .ph-state{color:var(--bad)}
.ph-tools{position:absolute;left:6px;right:6px;bottom:6px;display:flex;justify-content:space-between;opacity:0;transition:opacity .2s var(--ease)}
.ph:hover .ph-tools,.ph:focus-within .ph-tools{opacity:1}
@media (hover:none){.ph-tools{opacity:1}}
.ph-btn{width:28px;height:28px;border-radius:50%;border:0;background:var(--glass-2);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.ph-btn[disabled]{opacity:.35;cursor:default}
.ph-btn:hover{background:var(--paper)}
.langtabs{display:flex;gap:2px;border-bottom:1px solid var(--line-2);margin-bottom:16px}
.langtabs button{border:0;background:transparent;padding:8px 14px;font-weight:600;font-size:14px;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.langtabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ink)}
.langtabs .ldot{width:6px;height:6px;border-radius:50%;background:var(--ok)}
.langtabs .ldot.empty{background:var(--line)}
.tr-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.lrow{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:10px 22px;padding:16px 18px;border-bottom:1px solid var(--line-2);align-items:start}
.lrow:last-child{border-bottom:0}
.lrow.done{opacity:.62}
.lmeta{display:grid;gap:6px;justify-items:start}
.lmeta time{color:var(--ink-3)}
.lmain{display:grid;gap:4px;min-width:0}
.lmain h3{font-size:17px;letter-spacing:-.01em}
.lmsg{font-size:14px;color:var(--ink-2);white-space:pre-line;overflow-wrap:anywhere}
.lcar{font-size:14px;color:var(--ink-2)}
.tag-lead i{background:var(--accent)}
@media (max-width:760px){.lrow{grid-template-columns:minmax(0,1fr)}.lmeta{display:flex;gap:10px;align-items:center}}
.prefs{display:grid;gap:22px;max-width:860px}
.prefs-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap}

/* toast and the unsaved-changes bar */
.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 24px);transform:translate(-50%,16px);z-index:95;background:var(--glass-2);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);color:var(--ink);border:1px solid var(--line-2);box-shadow:0 8px 28px var(--shade-2);border-radius:980px;padding:10px 18px;font-size:14px;font-weight:500;max-width:calc(100% - 32px);opacity:0;pointer-events:none;transition:opacity .25s var(--ease),transform .35s var(--ease-out)}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast.bad{color:var(--bad)}
.leavebar{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 20px);transform:translateX(-50%);z-index:96;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 36px var(--shade-2);border-radius:16px;padding:12px 12px 12px 18px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:calc(100% - 32px);font-size:15px}
.leavebar p{margin-right:6px;font-weight:500}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}

/* back office additions and small fixes */
.adm-pad{padding-top:28px}
.ed-gone .banner{margin:18px 0 0}
.color-row{display:flex;gap:10px;align-items:center}
.hexin{width:44px;height:44px;flex:none;padding:3px;border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--paper);cursor:pointer}
.hexin::-webkit-color-swatch-wrapper{padding:0}
.hexin::-webkit-color-swatch{border:0;border-radius:7px}
.hexin::-moz-color-swatch{border:0;border-radius:7px}
select.in{appearance:none;-webkit-appearance:none;padding-right:34px;cursor:pointer;background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%236e6e73' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 13px center}
.in:disabled{background:var(--bg-2);color:var(--ink-3)}
.ph-tools>span{display:flex;gap:4px}
.ph-cover{z-index:1}
.up-msg{margin-top:10px}
.up-msg:empty{display:none}
.lmeta .tag{background:var(--bg-2)}
.lead-ok:focus{outline:none}
.aempty .state{text-align:left}
.adm-tools .h3{margin-right:auto}
.seg .cnt{margin-left:2px}
@media (min-width:834px){.mnav{display:none}}
.fact:last-child:nth-child(odd){grid-column:1/-1}
.field .seg{justify-self:start}
@media (max-width:999px){.ed-prev{display:none}}

/* logo + entry screen */
.logo{gap:0}
.logo-svg{display:block;height:17px;width:auto;color:var(--ink)}
body.is-gate .menu-btn,body.is-gate .gnav-admin{display:none}
body.is-gate .gnav-tools{margin-left:auto}
.logo-svg{height:18px}

/* contacts: call + route */
.ct-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px}
.ct-card{background:var(--bg-2);border-radius:28px;padding:32px;display:flex;flex-direction:column;gap:14px;min-width:0}
.ct-h{margin:0;font-size:clamp(24px,2.6vw,30px);font-weight:600;letter-spacing:-.02em}
.ct-sub{margin:-6px 0 4px;color:var(--ink-2);font-size:15px}
.calls{display:grid;gap:10px}
.call{display:flex;align-items:center;gap:14px;background:#fff;border-radius:18px;padding:14px 16px;color:var(--ink);transition:transform .3s var(--ease-out),box-shadow .3s}
.call:hover{text-decoration:none;box-shadow:0 10px 26px -14px rgba(0,0,0,.25);transform:translateY(-1px)}
.call:active{transform:scale(.985)}
.call-ic{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#e8f0fd;color:#0455D9}
.call-t{display:flex;flex-direction:column;min-width:0;flex:1}
.call-t small{font-size:12px;color:var(--ink-2)}
.call-t b{font-size:clamp(18px,1.9vw,21px);font-weight:600;letter-spacing:-.01em;white-space:nowrap}
.call-go{flex:none;background:var(--accent);color:#fff;border-radius:980px;padding:8px 16px;font-size:14px;font-weight:500}
.ct-mail{margin:2px 0 0;font-size:15px}
.ct-addr{display:flex;gap:12px;margin:0;font-size:clamp(20px,2.2vw,26px);line-height:1.25;letter-spacing:-.015em}
.ct-addr b{font-weight:600}
.ct-pin{flex:none;color:#0455D9;padding-top:4px}
.routes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;padding-top:12px}
.route{display:flex;align-items:center;justify-content:center;gap:9px;min-height:56px;border-radius:16px;background:var(--accent);color:#fff;font-size:17px;font-weight:500}
.route:nth-child(2){background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}
.route:hover{text-decoration:none;filter:brightness(1.06)}
.route:active{transform:scale(.98)}
.ct-note{margin:0;color:var(--ink-2);font-size:14px;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
@media(max-width:833px){.ct-grid{grid-template-columns:1fr}.ct-card{padding:24px 20px;border-radius:22px}.call-go{display:none}}
/* mobile call/route dock */
.dock{display:none}
@media(max-width:833px){
  .dock:not([hidden]){display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:70;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 10px) max(12px,env(safe-area-inset-left,0px));background:var(--glass);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-top:1px solid var(--line-2)}
  .dock-b{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border-radius:14px;background:#fff;color:var(--ink);font-size:15px;font-weight:500;box-shadow:inset 0 0 0 1px var(--line-2)}
  .dock-b:hover{text-decoration:none}
  .dock-call{background:var(--accent);color:#fff;box-shadow:none}
  body.has-dock .foot{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 84px)}
  body.has-dock .toast{bottom:calc(env(safe-area-inset-bottom,0px) + 84px)}
}
.ct-grid{align-items:stretch}.routes{margin-top:8px}

/* battery gross/net */
.batt{background:var(--bg-2);border-radius:18px;padding:18px 20px;display:grid;gap:6px}
.batt-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.batt-k{font-size:14px;color:var(--ink-2);font-weight:500}
.batt .seg{background:var(--fill-2)}
.batt .seg button:disabled{opacity:.4;cursor:not-allowed}
.batt-v{margin:4px 0 0;font-size:17px;color:var(--ink)}
.batt-v b{font-size:clamp(30px,3.4vw,38px);font-weight:600;letter-spacing:-.025em}
.batt-v span{color:var(--ink-2);font-size:15px;margin-left:6px}
.batt-o{margin:0;font-size:14px;color:var(--ink-2)}
.batt-x{margin-top:4px;font-size:14px;color:var(--ink-2)}
.batt-x summary{cursor:pointer;color:var(--accent);font-weight:500;list-style:none;display:inline-flex;align-items:center;gap:6px}
.batt-x summary::-webkit-details-marker{display:none}
.batt-x summary::before{content:"i";display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;border:1.5px solid currentColor;font-size:11px;font-weight:700;font-style:normal}
.batt-x p{margin:8px 0 0;line-height:1.5}
.batt-x b{color:var(--ink)}

.sup-rules{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.sup-rules li{display:flex;gap:10px;align-items:flex-start;font-size:16px;line-height:1.4;color:var(--ink)}
.sup-rules svg{flex:none;margin-top:3px;color:#0455D9}
.sup-note{margin-top:12px;font-size:14px;color:var(--ink-2)}

/* EKII calculator */
.ekii{display:grid;gap:12px}
.ek-ok{display:inline-flex;align-items:center;gap:5px;color:#1a7f37;font-size:14px;font-weight:600}
.ek-sw{display:flex;width:100%}
.ek-rows{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:4px 0 0;padding-top:12px;border-top:1px solid var(--line-2);font-size:15px}
.ek-rows dt{color:var(--ink-2)}
.ek-rows dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.ek-rows .ek-tot{padding-top:8px;border-top:1px solid var(--line-2);font-weight:600;color:var(--ink)}
.ek-rows dd.ek-tot{font-size:22px;letter-spacing:-.02em}
.ek-msg{margin:0;font-size:15px;color:var(--ink)}
.ek-no{color:var(--ink-2)}
.ek-why{margin:0;padding-left:18px;color:var(--ink-2);font-size:14px}

/* left filter rail that folds away */
.cat-body{transition:grid-template-columns .5s var(--ease-move),gap .5s var(--ease-move)}
.cat-body .filters{transition:opacity .3s,visibility .3s}
.cat-body.rail-off{grid-template-columns:0 minmax(0,1fr);gap:0}
.cat-body.rail-off .filters{opacity:0;visibility:hidden;overflow:hidden}
.btn-rail{display:inline-flex;align-items:center;gap:8px;border:0;background:var(--fill-2);color:var(--ink);border-radius:980px;padding:8px 14px;font-size:14px;font-weight:500;cursor:pointer}
.btn-rail:hover{background:var(--fill)}
.btn-rail:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(min-width:834px) and (max-width:1067px){.cat-body{grid-template-columns:220px minmax(0,1fr);gap:28px}}
@media(max-width:833px){.btn-rail{display:none}.cat-body.rail-off{grid-template-columns:minmax(0,1fr)}.cat-body.rail-off .filters{opacity:1;visibility:visible}}
@media(prefers-reduced-motion:reduce){.cat-body{transition:none}}
.switch span small.hint{display:block;font-size:12px;color:var(--ink-2);margin-top:2px;font-weight:400}
.gal-track{aspect-ratio:3/2}

/* drag to reorder in back office */
.arow.sortable{grid-template-columns:24px 84px minmax(0,1fr) 110px auto auto auto}
.agrip{display:grid;place-items:center;width:24px;height:40px;border:0;background:none;color:var(--ink-3);cursor:grab;border-radius:6px;touch-action:none;padding:0}
.agrip:hover{color:var(--ink);background:var(--fill-2)}
.agrip:focus-visible{outline:2px solid var(--accent)}
.alist.is-sorting{user-select:none;-webkit-user-select:none}
.alist.is-sorting .agrip{cursor:grabbing}
.arow.dragging{position:relative;z-index:2;background:var(--paper);box-shadow:0 12px 30px -10px rgba(0,0,0,.25);border-radius:12px;transform:scale(1.01)}
.asort-hint{margin:0;padding:10px 16px;font-size:13px;color:var(--ink-2);border-bottom:1px solid var(--line-2)}
@media(max-width:1100px){.arow.sortable{grid-template-columns:24px 72px minmax(0,1fr) auto}.arow.sortable .seg{grid-column:2/4}.arow.sortable .aacts{grid-column:1/-1}}
@media(max-width:600px){
  .arow.sortable{grid-template-columns:24px 64px minmax(0,1fr);gap:8px 12px;padding:12px}
  .arow.sortable .athumb{width:64px}
  .arow.sortable .aprice{grid-column:3;text-align:left;margin-top:-4px}
  .arow.sortable .seg{grid-column:1/-1}
  .arow.sortable .apub{grid-column:1/3;justify-self:start}
  .arow.sortable .aacts{grid-column:3;border-top:0;padding-top:0}
  .arow .aname{white-space:normal}
}
/* battery inside the facts grid */
.fbatt-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.seg-xs{padding:2px;border-radius:8px}
.seg-xs button{padding:3px 8px;font-size:12px;border-radius:6px}
.seg-xs button:disabled{opacity:.4;cursor:not-allowed}
.fbatt-sub{display:block;margin-top:3px;font-size:12px;color:var(--ink-2)}
.car-info>.batt-x{margin-top:-8px}
.ekii{margin-top:2px}

/* entry screen: two coloured doors */
.gate{min-height:calc(100svh - 52px);display:flex;align-items:center;background:var(--bg);padding:40px 0 48px}
.gate-in{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}
.gate-logo{margin:0;line-height:0}
.gate-svg{display:block;width:min(340px,64vw);height:auto;color:var(--ink)}
.gate-q{margin:20px 0 32px;font-size:clamp(20px,2.4vw,26px);font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.gate-tiles{display:grid;grid-template-columns:1fr 1fr;gap:20px;width:100%;max-width:1080px}
.gt{position:relative;display:flex;flex-direction:column;border-radius:28px;overflow:hidden;text-align:left;color:#fff;min-height:440px;isolation:isolate;transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}
.gt-sales{--gt:#0455D9;--gt2:#2f7bff;background:linear-gradient(160deg,var(--gt2),var(--gt) 60%)}
.gt-svc{--gt:#c2410c;--gt2:#f97316;background:linear-gradient(160deg,var(--gt2),var(--gt) 60%)}
.gt:hover{transform:translateY(-6px);box-shadow:0 28px 50px -24px color-mix(in srgb,var(--gt) 70%,transparent)}
.gt:active{transform:scale(.99)}
.gt:focus-within{outline:3px solid var(--gt);outline-offset:4px}
.gt-media{position:relative;flex:1 1 auto;min-height:200px;display:grid;place-items:center;overflow:hidden}
.gt-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out)}
.gt-media::after{content:"";position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(transparent,var(--gt))}
.gt:hover .gt-media img{transform:scale(1.04)}
.gt-art{display:grid;place-items:center;width:132px;height:132px;border-radius:36px;background:rgba(255,255,255,.16);color:#fff;transition:transform .6s var(--ease-out)}
.gt-art svg{width:72px;height:72px;stroke-width:1.4}
.gt:hover .gt-art{transform:rotate(-8deg) scale(1.05)}
.gt-body{position:static;padding:4px 30px 28px;display:flex;flex-direction:column;gap:8px}
.gt-k{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;opacity:.9}
.gt-k svg{width:18px;height:18px}
.gt h2{margin:0;font-size:clamp(30px,3.4vw,42px);font-weight:700;letter-spacing:-.03em;line-height:1.05}
.gt-link{color:#fff}
.gt-link:hover{text-decoration:none}
.gt-link:focus-visible{outline:none}
.gt-link::after{content:"";position:absolute;inset:0;z-index:1}
.gt{overflow:hidden}
.gt p{margin:0;font-size:16px;line-height:1.45;color:rgba(255,255,255,.9);max-width:34ch}
.gt-acts{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px}
.gt-go{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--gt);border-radius:980px;padding:12px 22px;font-size:17px;font-weight:600}
.gt-call{position:relative;z-index:2;display:inline-flex;align-items:center;gap:8px;color:#fff;border-radius:980px;padding:11px 16px;font-size:15px;font-weight:500;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)}
.gt-call:hover{text-decoration:none;background:rgba(255,255,255,.14)}
.gt-call svg{width:18px;height:18px}
.gate-foot{margin:28px 0 0;font-size:13px;color:var(--ink-2)}
@media(max-width:760px){
  .gate{padding:24px 0 36px;align-items:flex-start}
  .gate-svg{width:min(230px,60vw)}
  .gate-q{margin:14px 0 20px}
  .gate-tiles{grid-template-columns:1fr;gap:14px}
  .gt{min-height:0;border-radius:24px}
  .gt-media{flex:none;height:150px;min-height:0}
  .gt-art{width:96px;height:96px;border-radius:28px}.gt-art svg{width:52px;height:52px}
  .gt-body{padding:0 20px 20px}
  .gt-go{padding:11px 18px;font-size:16px}
}
@media(prefers-reduced-motion:reduce){.gt,.gt-media img,.gt-art{transition:none}}
.gt-sales,.gt-svc{background:var(--gt)}
.gt-svc .gt-media,.gt-sales .gt-media{background:linear-gradient(170deg,var(--gt2),var(--gt) 85%)}
@media(max-width:760px){.gt-media{height:130px}.gt-acts{margin-top:8px}}

/* call buttons: sales green, service red */
:root{--call-sales:#3d8551;--call-svc:#c23b2e}
.gt-call.gt-call-sales{background:var(--call-sales);box-shadow:none}
.gt-call.gt-call-svc{background:var(--call-svc);box-shadow:none}
.gt-call.gt-call-sales:hover,.gt-call.gt-call-svc:hover{filter:brightness(1.08);background-image:none}
.gt-call{font-weight:600;padding:12px 18px}
.call-sales .call-ic{background:#e6f2ea;color:var(--call-sales)}
.call-svc .call-ic{background:#fbe9e7;color:var(--call-svc)}
.call-sales .call-go{background:var(--call-sales)}
.call-svc .call-go{background:var(--call-svc)}
.dock-call{background:var(--call-sales)!important;color:#fff}
.callpill{display:inline-flex;align-items:center;gap:7px;background:var(--call-sales);color:#fff;border-radius:980px;padding:7px 14px;font-size:15px}
.callpill:hover{text-decoration:none;filter:brightness(1.08)}
.callpill svg{width:16px;height:16px}
.callpill b{font-weight:600}
.gt-call.gt-call-sales,.gt-call.gt-call-svc{box-shadow:0 0 0 2px #fff,0 6px 16px -6px rgba(0,0,0,.35)}
.callpill b{color:#fff}
.gt-svc-img{object-position:50% 22%}

.ek-kids{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin:-4px 0 0;background:var(--paper);border-radius:12px;box-shadow:inset 0 0 0 1px var(--line-2)}
.ek-kids span{font-size:15px}
.ek-kids small{display:block;font-size:12px;color:var(--ink-2)}
.stepper{display:inline-flex;align-items:center;gap:4px;background:var(--fill-2);border-radius:980px;padding:3px}
.stepper button{width:34px;height:34px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font-size:20px;line-height:1;cursor:pointer;box-shadow:0 1px 2px var(--shade)}
.stepper button:disabled{opacity:.35;cursor:not-allowed}
.stepper output{min-width:28px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}
/* entry tiles: more photo, less colour fade */
.gt{min-height:540px}
.gt-media{min-height:320px}
.gt-media::after{height:16%;background:linear-gradient(rgba(0,0,0,0),var(--gt))}
.gt-body{padding-top:16px}
@media(max-width:760px){.gt{min-height:0}.gt-media{height:210px;min-height:0}.gt-body{padding-top:12px}}

.ek-cap{margin:0;padding:10px 12px;border-radius:12px;background:#fff4e5;color:#8a4b00;font-size:14px;font-weight:500;animation:ekcap .35s var(--ease-out)}
@keyframes ekcap{from{opacity:0;transform:translateY(-4px)}}
.ek-sw.is-off{opacity:.45;cursor:not-allowed}
.ek-sw.is-off input{cursor:not-allowed}

/* entry: two full-bleed panels, Tesla-style */
/* footer stays visible on the entry page: it sits under the SEO text block (.gx), with privacy and cookie links */
.doors{display:flex;gap:0;height:calc(100svh - 52px);min-height:520px;background:var(--bg)}
.door{position:relative;flex:1 1 0;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;transition:flex-grow .7s var(--ease-move)}
.door+.door{border-left:1px solid rgba(255,255,255,.6)}
@media(hover:hover) and (min-width:761px){.doors:hover .door{flex-grow:.82}.doors .door:hover{flex-grow:1.18}}
.door-media{position:absolute;inset:0;z-index:-1;background:var(--bg-2);display:grid;place-items:center}
.door-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 1.2s var(--ease-out)}
.door:hover .door-media img{transform:scale(1.06)}
.door-media::before{content:"";position:absolute;inset:0 0 auto;height:42%;z-index:1;background:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,0))}
.door-media::after{content:"";position:absolute;inset:auto 0 0;height:30%;z-index:1;background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.28))}
.door-top{padding:clamp(40px,8vh,88px) 24px 0;text-align:center}
.door-top h2{margin:0;font-size:clamp(34px,4.2vw,52px);font-weight:600;letter-spacing:-.03em;line-height:1.05;color:var(--ink)}
.door-link{color:inherit}
.door-link:hover{text-decoration:none}
.door-link:focus-visible{outline:none}
.door-link::after{content:"";position:absolute;inset:0;z-index:1}
.door:focus-within{box-shadow:inset 0 0 0 3px var(--accent)}
.door-top p{margin:10px 0 0;font-size:clamp(15px,1.3vw,17px);color:var(--ink);opacity:.8}
.door-bot{position:relative;z-index:2;display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:0 24px clamp(32px,6vh,64px)}
.door-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:min(220px,40vw);min-height:44px;padding:0 22px;border-radius:8px;font-size:15px;font-weight:500;transition:filter .2s,transform .2s}
.door-btn:hover{text-decoration:none;filter:brightness(1.08)}
.door-btn:active{transform:scale(.98)}
.door-btn svg{width:17px;height:17px}
.door-main{background:rgba(255,255,255,.88);color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.door-sales .door-main{background:#0455D9;color:#fff}
.door-call{color:#fff}
.door-call-sales{background:var(--call-sales)}
.door-call-svc{background:var(--call-svc)}
.door-svc .door-main{background:rgba(255,255,255,.92);color:var(--ink)}
@media(max-width:760px){
  .doors{flex-direction:column;height:auto;min-height:0}
  .door{height:calc((100svh - 52px) / 2);min-height:300px;flex:none}
  .door+.door{border-left:0;border-top:1px solid rgba(255,255,255,.7)}
  .door-top{padding-top:28px}
  .door-bot{padding-bottom:22px;gap:10px}
  .door-btn{min-width:0;flex:1 1 0;max-width:200px}
}
@media(prefers-reduced-motion:reduce){.door,.door-media img{transition:none}}
.door-sales-img{object-position:40% 50%}

/* entry screen v23: fdeqt-style blueprint grid, mono labels, split-word reveals */
.fq{--fq-bg:#FCFCFC;--fq-ln:#EDEDED;--fq-ink:#121212;--fq-ease:cubic-bezier(.23,1,.32,1);--fq-m:max(16px,var(--gut),(100% - var(--maxw)) / 2);position:relative;isolation:isolate;min-height:calc(100svh - var(--nav-h,52px));display:flex;flex-direction:column;background:var(--fq-bg);color:var(--fq-ink);padding:0 var(--fq-m);overflow:hidden}
.fq-grid{position:absolute;inset:0 var(--fq-m);z-index:-1;pointer-events:none;background:repeating-linear-gradient(90deg,var(--fq-ln) 0 1px,transparent 1px calc(100% / 12));border-right:1px solid var(--fq-ln)}
.fq-head{display:flex;justify-content:space-between;gap:16px;padding:18px 0 0;color:#7D7D7D}
.fq-q{margin:clamp(20px,5vh,56px) 0 clamp(18px,4vh,44px);font-size:clamp(2.4rem,7.4vw,7.25rem);font-weight:700;text-transform:uppercase;line-height:.96;letter-spacing:-.045em;max-width:14ch}
.fq-rows{display:flex;flex-direction:column;flex:1;border-top:1px solid var(--fq-ink)}
.fq-row{position:relative;flex:1;display:grid;grid-template-columns:calc(100% / 12) minmax(0,5fr) minmax(0,4fr) minmax(0,auto);align-items:center;gap:clamp(16px,2vw,32px);padding:clamp(16px,2.6vh,28px) 0;border-bottom:1px solid var(--fq-ln);min-height:200px}
.fq-num{align-self:start;color:#A8A8A8;padding-top:6px}
.fq-ey{display:block;color:#7D7D7D;margin-bottom:10px}
.fq-h{margin:0;font-size:clamp(2rem,4.6vw,4.75rem);font-weight:700;text-transform:uppercase;line-height:.98;letter-spacing:-.04em}
.fq-link{color:inherit;text-decoration:none}
.fq-link::after{content:"";position:absolute;inset:0;z-index:1}
.fq-link:hover{text-decoration:none}
.fq-link:focus-visible{outline:none}
.fq-row:has(.fq-link:focus-visible){outline:2px solid #0071e3;outline-offset:4px}
.fq-p{margin:12px 0 0;color:#707070;font-size:15px}
.fq-media{position:relative;height:100%;min-height:160px;max-height:300px;background:#F7F7F7;border-radius:8px;overflow:hidden;clip-path:inset(0 0 0 0 round 8px);transition:clip-path .7s var(--fq-ease)}
.fq-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform .9s var(--fq-ease)}
.fq-act{position:relative;z-index:2;display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:190px}
.fq-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:2px;font-size:14px;font-weight:500;white-space:nowrap;text-decoration:none;transition:background-color .25s var(--fq-ease),color .25s var(--fq-ease),border-color .25s var(--fq-ease)}
.fq-btn:hover{text-decoration:none}
.fq-btn svg{width:16px;height:16px}
.fq-main{background:var(--fq-ink);color:#fff}
.fq-main:hover{background:#262626;color:#fff}
.fq-arr{display:inline-block;transition:transform .28s var(--fq-ease)}
.fq-call{background:transparent;border:1px solid currentColor}
.fq-call-sales{color:#3d8551}.fq-call-sales:hover{background:#3d8551;color:#fff;border-color:#3d8551}
.fq-call-svc{color:#c23b2e}.fq-call-svc:hover{background:#c23b2e;color:#fff;border-color:#c23b2e}
.fq-bar{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:#0455D9;transition:width .7s var(--fq-ease)}
.fq-svc .fq-bar{background:#c23b2e}
@media(hover:hover){
  .fq-row:hover .fq-bar{width:100%}
  .fq-row:hover .fq-media img{transform:scale(1)}
  .fq-row:hover .fq-arr{transform:translateX(4px)}
  .fq-svc:hover .fq-arr{transform:translate(3px,-3px)}
  .fq-row:hover .fq-h{color:#0455D9}
  .fq-svc:hover .fq-h{color:#c23b2e}
}
.fq-h{transition:color .35s var(--fq-ease)}
@media(max-width:900px){
  .fq-row{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"num txt" "media media" "act act";align-items:start;min-height:0}
  .fq-num{grid-area:num}.fq-txt{grid-area:txt}.fq-media{grid-area:media;aspect-ratio:16/8;height:auto;max-height:none}
  .fq-act{grid-area:act;flex-direction:row;min-width:0}
  .fq-act .fq-btn{flex:1}
  .fq-grid{background:repeating-linear-gradient(90deg,var(--fq-ln) 0 1px,transparent 1px calc(100% / 6))}
}
@media(max-width:420px){.fq-act{flex-direction:column}.fq-act .fq-btn{flex:none}.fq-geo{display:none}}

/* split-word reveal (fdeqt SplitText feel), runs when a view mounts */
.split x-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.12em .02em .06em;margin:-.12em -.02em -.06em}
.split x-i{display:inline-block;animation:sw-in .9s cubic-bezier(.23,1,.32,1) both;animation-delay:calc(var(--i,0) * 55ms + 60ms)}
@keyframes sw-in{from{transform:translateY(110%)}}
#view.enter .fq-media::after{animation:fq-cover 1.1s cubic-bezier(.23,1,.32,1) both;animation-delay:calc(var(--d,0) * 120ms + 200ms)}
#view.enter .fq-media img{animation:fq-zoom 1.4s cubic-bezier(.23,1,.32,1) both;animation-delay:calc(var(--d,0) * 120ms + 200ms)}
@keyframes fq-wipe{from{clip-path:inset(0 100% 0 0 round 8px)}}
@keyframes fq-zoom{from{transform:scale(1.18)}}
#view.enter .fq-rows{animation:fq-line .9s cubic-bezier(.23,1,.32,1) both}
@keyframes fq-line{from{border-top-color:transparent}}
#view.enter .fq-p,#view.enter .fq-act,#view.enter .fq-ey,#view.enter .fq-num{animation:enter .7s cubic-bezier(.23,1,.32,1) both;animation-delay:calc(var(--d,0) * 120ms + 320ms)}
/* thin route progress line */
.rprog{position:fixed;left:0;top:0;height:2px;width:0;background:#0455D9;z-index:120;pointer-events:none;opacity:0}
.rprog.go{animation:rprog .7s cubic-bezier(.23,1,.32,1) forwards}
@keyframes rprog{0%{width:0;opacity:1}70%{width:100%;opacity:1}100%{width:100%;opacity:0}}
/* header hides on scroll down (fdeqt) */
.gnav{transition:transform .35s cubic-bezier(.23,1,.32,1)}
body.nav-up .gnav{transform:translateY(-100%)}
@media(prefers-reduced-motion:reduce){.split x-i,#view.enter .fq-media,#view.enter .fq-media img{animation:none}.gnav{transition:none}}
.gal{transition:top .35s cubic-bezier(.23,1,.32,1)}body.nav-up .gal{top:calc(env(safe-area-inset-top,0px) + 20px)}
.fq-svc .fq-media img{object-position:50% 14%;transform-origin:50% 14%}

/* gallery: every photo fills the same 3:2 frame; full view shows the whole photo */
.gal-slide img{object-fit:cover}
.gal-zoom{cursor:zoom-in}
.thumb{aspect-ratio:3/2}
.gal-full{position:absolute;top:14px;right:14px;z-index:2;width:38px;height:38px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(255,255,255,.86);color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 4px rgba(0,0,0,.12);transition:transform .25s var(--ease-out),background-color .2s}
.gal-full:hover{transform:scale(1.06);background:#fff}
html.lb-on,html.lb-on body{overflow:hidden}
.lb{position:fixed;inset:0;z-index:200;background:#FCFCFC;display:flex;flex-direction:column;opacity:0;transition:opacity .28s cubic-bezier(.23,1,.32,1)}
.lb.in{opacity:1}
.lb-track{flex:1;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior:contain}
.lb-track::-webkit-scrollbar{display:none}
.lb-track.locked{overflow:hidden}
.lb-slide{flex:0 0 100%;scroll-snap-align:center;display:grid;place-items:center;padding:64px clamp(12px,6vw,96px) 24px;overflow:hidden;min-width:0}
.lb-slide img{max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-in;transition:transform .35s cubic-bezier(.23,1,.32,1);user-select:none;-webkit-user-drag:none}
.lb-slide.zoomed img{transform:scale(2.2);cursor:zoom-out}
.lb.in .lb-slide img{animation:lb-in .4s cubic-bezier(.23,1,.32,1)}
@keyframes lb-in{from{transform:scale(.96);opacity:0}}
.lb-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:14px;height:60px;padding:0 max(14px,env(safe-area-inset-right,0px)) 0 max(18px,env(safe-area-inset-left,0px));pointer-events:none}
.lb-top>*{pointer-events:auto}
.lb-count{color:var(--ink-2)}
.lb-name{font-size:15px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb-btn{width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(232,232,237,.9);color:var(--ink);cursor:pointer;transition:background-color .2s,opacity .2s}
.lb-btn:hover{background:#dcdce1}
.lb-btn:disabled{opacity:.3;cursor:default}
.lb-x{margin-left:auto}
.lb-prev,.lb-next{position:absolute;top:50%;margin-top:-22px}
.lb-prev{left:max(14px,env(safe-area-inset-left,0px))}.lb-next{right:max(14px,env(safe-area-inset-right,0px))}
@media(hover:none){.lb-prev,.lb-next{display:none}.lb-slide{padding:60px 0 20px}.lb-slide img{cursor:default}}
@media(prefers-reduced-motion:reduce){.lb,.lb-slide img{transition:none;animation:none}}

/* entry: EVRIGA "transformer" wordmark */
.fq-logo{margin:clamp(24px,5vh,60px) 0 0;line-height:0;color:var(--fq-ink);width:min(100%,380px)}
.lgw{position:relative;aspect-ratio:1126/215;container-type:inline-size;width:103.6%;margin:-1.8% 0 0 -1.8%}
.lg-defs{position:absolute;width:0;height:0;overflow:hidden}
.lp{position:absolute;inset:0;width:100%;height:100%;overflow:visible;will-change:transform;backface-visibility:hidden;}
.fq-charge{position:relative;display:flex;align-items:center;gap:14px;margin:clamp(14px,2.4vh,24px) 0 clamp(22px,4vh,44px);color:#7D7D7D}
.fq-charge i{flex:1;height:2px;background:#EDEDED;position:relative;overflow:hidden;order:2}
.fq-charge i::after{content:"";position:absolute;inset:0;background:#0455D9;transform-origin:left;transform:scaleX(1)}
.fq-charge .mono{order:1;white-space:nowrap}
@media(max-width:560px){.fq-charge{flex-direction:column;align-items:stretch;gap:10px}.fq-charge i{order:2;flex:none}}
@media(prefers-reduced-motion:no-preference){
  /* calm (Dan 2026-11-01): pieces assemble once on entry, no repeating pull-apart */
  /* logo animation off (Dan 2026-11-01 22:08 UTC: static logo for now, to be reworked later)
  #view.enter .lp{animation:lp-in 1.05s cubic-bezier(.34,1.45,.64,1) both;animation-delay:calc(var(--i) * 60ms + 80ms)}
  .fq-logo:hover .lp{animation:lp-poke .9s cubic-bezier(.34,1.45,.64,1);animation-delay:calc(var(--i) * 25ms)} */
  #view.enter .fq-charge i::after{animation:lg-charge 1.2s cubic-bezier(.23,1,.32,1) both 1.1s}
  #view.enter .fq-charge .mono{animation:enter .7s cubic-bezier(.23,1,.32,1) both 1.2s}
}
@keyframes lp-in{from{opacity:0;transform:translate3d(var(--fx),var(--fy),0) rotate(var(--fr)) scale(.4)}60%{opacity:1}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes lp-loop{0%,62%,100%{transform:translate3d(0,0,0)}70%,78%{transform:translate3d(var(--lx),var(--ly),0) rotate(var(--lr)) scale(.94)}88%{transform:translate3d(calc(var(--lx) * -.12),calc(var(--ly) * -.12),0) rotate(calc(var(--lr) * -.15))}94%{transform:translate3d(0,0,0)}}
@keyframes lp-poke{40%{transform:translate3d(calc(var(--lx) * .7),calc(var(--ly) * .7),0) rotate(calc(var(--lr) * .7)) scale(.96)}}
@keyframes lg-charge{from{transform:scaleX(0)}}
body.is-gate .gnav .logo{opacity:0;pointer-events:none}

/* smooth first load: composited photo cover, held animations until fonts are in */
.fq-media{transition:none;clip-path:none;isolation:isolate}
.fq-media::after{content:"";position:absolute;inset:0;z-index:1;background:#F7F7F7;transform-origin:100% 50%;transform:scaleX(0);will-change:transform;pointer-events:none}
.fq-media img{will-change:transform}
@keyframes fq-cover{from{transform:scaleX(1)}to{transform:scaleX(0)}}
#view.hold *,#view.hold *::before,#view.hold *::after{animation-play-state:paused!important}

.figs b small{font-size:.42em;font-weight:500;letter-spacing:0;color:var(--ink-2);margin-right:2px}
@media(max-width:760px){.fq-logo{display:none}}
@media(max-width:760px){
  .fq-charge{margin:8px 0 12px}
  .fq-row{grid-template-columns:minmax(0,1fr) 40%;grid-template-areas:"txt media" "act act";gap:12px 14px;padding:14px 0}
  .fq-num{display:none}
  .fq-media{aspect-ratio:auto;height:112px;min-height:0}
  .fq-h{font-size:clamp(1.55rem,7.4vw,2.2rem)}
  .fq-ey{margin-bottom:6px}.fq-p{margin-top:6px;font-size:14px}
  .fq-act{flex-direction:row}.fq-act .fq-btn{flex:1;height:42px;padding:0 10px}
}

/* catalog view switch: grid / list */
.vsw{display:inline-flex;gap:2px;padding:2px;border-radius:980px;background:var(--fill-2)}
.vsw button{display:grid;place-items:center;width:34px;height:30px;border:0;border-radius:980px;background:transparent;color:var(--ink-2);cursor:pointer;transition:background-color .2s var(--ease),color .2s var(--ease)}
.vsw button[aria-pressed="true"]{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.grid.as-list{grid-template-columns:minmax(0,1fr);gap:12px}
.as-list .card{flex-direction:row;align-items:stretch}
.as-list .card-media{flex:0 0 clamp(132px,34%,320px);aspect-ratio:4/3}
.as-list .card-media .tags{transform:scale(.88);transform-origin:top left}
.as-list .card-body{padding:14px 18px;gap:8px;min-width:0}
.as-list .card-stats{max-width:420px}
@media(max-width:600px){
  .as-list .card-media{flex-basis:38%;aspect-ratio:auto;min-height:118px}
  .as-list .pcount{display:none}
  .as-list .card-body{padding:10px 12px;gap:6px}
  .as-list .card-title h3{font-size:16px}
  .as-list .card-title p{font-size:13px}
  .as-list .card-price b{font-size:18px}.as-list .card-price span{font-size:12px}
  .as-list .card-stats{padding-top:8px;gap:4px}
  .as-list .card-stats b{font-size:13px}.as-list .card-stats span{font-size:9.5px}
}

/* phone-only simplification (test): fewer blocks, details folded */
.m-only{display:none}
@media(max-width:600px){
  .m-only{display:revert}
  .m-tg{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:6px 0;color:var(--accent);font:inherit;font-size:15px;font-weight:500;cursor:pointer;align-self:flex-start}
  .m-tg svg{transform:rotate(90deg);transition:transform .3s var(--ease)}
  .m-fold.open .m-tg svg{transform:rotate(-90deg)}
  .hero .eyebrow,.hero-h span,.hero .stats{display:none}
  .m-latest{display:block;padding-block:36px 28px}
  .hero{padding-bottom:0}
  .m-latest .grid{margin-top:14px}
  .m-all{display:flex;width:100%;margin-top:14px;justify-content:center}
  .feature-sec,.shelf,.brands{display:none}
  .tile-wide{display:flex;flex-direction:column;align-items:stretch;gap:12px}
  .tile-wide>div{display:contents}
  .tile-wide .figs{order:1;gap:12px 24px}
  .tile-wide .figs b{font-size:30px}
  .tile-wide .sup-tg{order:2}
  .tile-wide .sup-rules,.tile-wide .sup-note,.tile-wide>div>.more{order:3}
  .tile-wide:not(.open) .sup-rules,.tile-wide:not(.open) .sup-note{display:none}
  .tile-ls{display:none}
  .call-x{display:none}
  .callbox,.where{display:none}
  .specs .dup{display:none}
  .lease:not(.open) .lease-row,.lease:not(.open) .fine{display:none}
  .form:not(.open) .lf-opt{display:none}
  .sim-grid .card:nth-child(n+4){display:none}
}

/* route buttons in the apps' own colours (colour only, no logos) */
.route.route-gm,.dock .dock-gm{background:#1A73E8;color:#fff;box-shadow:none}
.route.route-wz,.dock .dock-wz{background:#33CCFF;color:#0A1E2B;box-shadow:none}
.route.route-gm:hover{background:#1765CC;filter:none}.route.route-wz:hover{background:#2BBDF0;filter:none}

/* desktop simplification (test): same blocks removed on every screen size */
.hero .eyebrow,.hero .stats,.feature-sec,.brands,.tile-ls,.call-x,.where,.callbox .copy,.specs .dup{display:none}
.m-only.lf-tg{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:6px 0;color:var(--accent);font:inherit;font-size:15px;font-weight:500;cursor:pointer;align-self:flex-start;justify-self:start}
.lf-tg svg{transform:rotate(90deg);transition:transform .3s var(--ease)}
.form.open .lf-tg svg{transform:rotate(-90deg)}
.form:not(.open) .lf-opt{display:none}

/* privacy + cookie links (static site only) */
.foot-cookie{font:inherit;color:var(--foot-link);background:none;border:0;padding:0;cursor:pointer}
.foot-cookie:hover{text-decoration:underline}
.lead-pp{margin:2px 0 0;font-size:13px;line-height:1.45;color:var(--ink-3,#6e6e73)}

/* Serviss section */
.svc-sec{padding-block:clamp(56px,8vw,112px) 0;background:var(--bg)}
.svc-sec+.contact{padding-top:clamp(48px,6vw,80px)}
.svc-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.svc-copy{display:grid;gap:14px;align-content:start}
.svc-lead{font-size:clamp(17px,1.6vw,21px);line-height:1.45;color:var(--ink-2);max-width:46ch}
.svc-hours{font-size:14px;color:var(--ink-3)}
.svc-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.svc-call{background:var(--call-svc,#c23b2e);color:#fff}.svc-call:hover{filter:brightness(1.08);text-decoration:none}.svc-call svg{width:18px;height:18px}
.svc-ph{margin:0;border-radius:var(--r-big,22px);overflow:hidden;aspect-ratio:3/2;background:var(--bg-2)}.svc-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;display:block}
.svc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:clamp(32px,4vw,56px) 0;padding:22px 0;border-block:1px solid var(--line-2)}
.svc-stats div{display:grid;gap:2px}.svc-stats b{font-size:clamp(24px,2.6vw,34px);font-weight:600;letter-spacing:-.03em;line-height:1.1}.svc-stats span{font-size:14px;color:var(--ink-2)}
.svc-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.svc-it{background:var(--bg-2);border-radius:18px;padding:24px 24px 20px;display:flex;flex-direction:column;gap:8px}
.svc-it h3{font-size:19px;line-height:1.25;letter-spacing:-.015em;font-weight:600}.svc-it p{color:var(--ink-2);font-size:15px;line-height:1.45;flex:1}
.svc-pr{color:var(--ink);margin-top:6px}
.svc-also{margin:18px 0 0;font-size:14px;color:var(--ink-2)}
.svc-buy{margin-top:clamp(24px,3vw,40px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding:clamp(22px,3vw,36px);border:1px solid var(--line-2);border-radius:var(--r-big,22px)}
.svc-buy>div{display:grid;gap:8px;max-width:62ch}.svc-buy h3{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.02em;line-height:1.15}.svc-buy p{color:var(--ink-2)}
@media (max-width:833px){.svc-top{grid-template-columns:minmax(0,1fr)}.svc-ph{order:-1}.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.svc-grid{grid-template-columns:minmax(0,1fr);gap:8px}.svc-it{padding:14px 16px;flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.svc-it h3{font-size:16px}.svc-it p{display:none}.svc-pr{margin:0}.svc-cta .btn{flex:1 1 100%}.svc-buy .btn{width:100%}}
/* phones: only the short service intro (Dan 2026-11-01) */
@media (max-width:600px){.svc-stats,.svc-grid,.svc-also{display:none}.svc-ph{aspect-ratio:16/9}.svc-lead{font-size:16px}}
/* phones/tablets: filters slide in from the left as a drawer over the dimmed catalog (Dan 2026-11-01) */
@media (max-width:833px){
  .filters{right:auto;width:min(86vw,400px);transform:translateX(-100%);box-shadow:none;z-index:1000}
  .filters.open{transform:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.32),0 0 40px rgba(0,0,0,.2)}
  .fsheet-foot{right:auto;width:min(86vw,400px);z-index:2}
}
@media (max-width:833px){html:has(.filters.open) .gnav,html:has(.filters.open) .ribbon,html:has(.filters.open) .dock{filter:brightness(.68);pointer-events:none;transition:filter .3s}}

/* net price switch on the car page (prices with PVN) */
.net-sw{display:inline-flex;align-items:center;gap:10px;margin-top:12px;font-size:14px;color:var(--ink-2);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}
.net-sw input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.net-sw i{position:relative;flex:none;width:40px;height:24px;border-radius:12px;background:#e5e5ea;transition:background .2s ease}
.net-sw i::after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.net-sw input:checked+i{background:#34c759}
.net-sw input:checked+i::after{transform:translateX(16px)}
.net-sw input:focus-visible+i{outline:2px solid #0071e3;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.net-sw i,.net-sw i::after{transition:none}}
.ek-only[hidden]{display:none!important}

/* SEO (Dan 2026-11-02): text block under the entry screen; the first screen (.fq) is unchanged */
.gx{background:#FCFCFC;border-top:1px solid #EDEDED;color:#121212}
.gx-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);padding-block:clamp(40px,6vw,72px)}
.gx-k{color:#7D7D7D;margin:0 0 12px}
.gx-h{font-size:clamp(24px,2.6vw,32px);line-height:1.15;letter-spacing:-.02em;font-weight:600;margin:0 0 12px}
.gx-p{font-size:17px;line-height:1.55;color:var(--ink-2);margin:0;max-width:46ch}
.gx-list{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;border-top:1px solid #EDEDED}
.gx-list a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:13px 0;border-bottom:1px solid #EDEDED;color:inherit;text-decoration:none}
.gx-list a:hover .gx-n{color:#0455D9}
.gx-n{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;transition:color .2s var(--ease,ease)}
.gx-m{flex:none;color:#7D7D7D}
@media (max-width:760px){.gx-in{grid-template-columns:minmax(0,1fr)}.gx-list{grid-template-columns:minmax(0,1fr)}}
/* breadcrumb trail at the bottom of car pages */
.crumbs{margin-top:clamp(40px,5vw,64px);padding-top:14px;border-top:1px solid var(--line-2);font-size:12px;line-height:1.5;color:var(--ink-2)}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;row-gap:2px}
.crumbs li{display:flex;align-items:center;min-width:0}
.crumbs li+li::before{content:"\203A";margin:0 8px;color:var(--ink-3)}
.crumbs a{color:var(--ink-2)}
.crumbs a:hover{color:var(--ink);text-decoration:underline}
.crumbs [aria-current]{color:var(--ink)}

/* ---------- SEO pages (2026-11-02): brand pages, guides /padomi/, footer link hub, brand and guide links ---------- */
.bp,.gdh,.gd{padding-block:clamp(28px,4vw,48px) clamp(56px,8vw,96px)}
.bp-head,.gdh-head{max-width:820px;margin-bottom:clamp(24px,3vw,36px)}
.bp-head .eyebrow,.gdh-head .eyebrow{margin-bottom:14px}
.bp-lead,.gdh-lead{margin-top:14px;font-size:clamp(17px,1.6vw,19px);line-height:1.5;color:var(--ink-2);max-width:68ch}
.bp-models{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bp-models li{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:980px;background:var(--bg-2);font-size:14px;font-weight:500}
.bp-models span{font-family:var(--f-mono);font-size:11px;color:var(--ink-3)}
.bp-sec,.gd-more{margin-top:clamp(56px,7vw,96px)}
.bp-h2{font-size:clamp(24px,2.6vw,32px);line-height:1.15;letter-spacing:-.022em;font-weight:600}
.bp-sec>.bp-h2,.gd-more>.bp-h2{margin-bottom:20px}
.bp-sub{color:var(--ink-2);margin:-8px 0 22px}
.bp-empty{margin-top:4px}
.bp-sold-list{list-style:none;margin:0;padding:0;display:grid;gap:0 32px;border-top:1px solid var(--line-2)}
@media (min-width:734px){.bp-sold-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bp-sold-list li{border-bottom:1px solid var(--line-2);min-width:0}
.bp-sold-list a{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;color:var(--ink)}
.bp-sold-list a:hover{text-decoration:none;color:var(--link)}
.bp-sold-m{flex:none;color:var(--ink-3)}
.bp-info{display:grid;gap:clamp(36px,4vw,56px)}
@media (min-width:900px){.bp-info{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.bp-about>p{margin-top:12px;color:var(--ink-2);max-width:60ch}
.bp-faq .bp-h2{margin-bottom:6px}

/* questions that open (brand pages and guides) */
.bp-faq details,.gd-faq details{border-bottom:1px solid var(--line-2)}
.bp-faq summary,.gd-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;font-weight:600;font-size:17px;line-height:1.35}
.bp-faq summary::-webkit-details-marker,.gd-faq summary::-webkit-details-marker{display:none}
.bp-faq summary::after,.gd-faq summary::after{content:"+";flex:none;font-weight:400;font-size:24px;line-height:1;color:var(--ink-3);transition:transform .2s var(--ease)}
.bp-faq details[open]>summary::after,.gd-faq details[open]>summary::after{transform:rotate(45deg)}
.bp-faq details p,.gd-faq details p{padding:0 0 18px;color:var(--ink-2);max-width:66ch}

/* call + address box */
.sc-cta{margin-top:28px;padding:22px 24px;border-radius:var(--r-tile);background:var(--bg-2);display:grid;gap:6px;justify-items:start}
.sc-cta-h{font-weight:600;font-size:19px;letter-spacing:-.015em}
.sc-cta p:not(.sc-cta-h){color:var(--ink-2)}
.sc-cta-b{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:10px}
.sc-cta .btn svg{width:18px;height:18px}

/* guide cards */
.gd-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.gd-card{display:flex;flex-direction:column;gap:10px;height:100%;padding:24px;border-radius:var(--r-tile);background:var(--bg-2);color:var(--ink);transition:background-color .2s var(--ease)}
.gd-card:hover{text-decoration:none;background:var(--fill-2)}
.gd-card-k{color:var(--ink-2)}
.gd-card-h{font-size:21px;line-height:1.22;letter-spacing:-.018em}
.gd-card p{color:var(--ink-2);font-size:15px;line-height:1.5;flex:1}
.gd-card .more{font-size:15px}
.gdh .gd-cards+.sc-cta{margin-top:clamp(40px,5vw,56px)}

/* guide */
.gd-head{max-width:860px}
.gd-meta{color:var(--ink-2);margin-bottom:14px}
.gd-h1{font-size:clamp(32px,4.4vw,52px);line-height:1.08;letter-spacing:-.032em}
.gd-lead{margin-top:16px;font-size:clamp(19px,1.8vw,21px);line-height:1.45;color:var(--ink-2);max-width:62ch}
.gd-fig{margin:clamp(24px,3vw,40px) 0 0;border-radius:var(--r-tile);overflow:hidden;background:var(--bg-2);aspect-ratio:16/7}
.gd-fig img{width:100%;height:100%;object-fit:cover}
@media (max-width:733px){.gd-fig{aspect-ratio:4/3}}
.gd-layout{display:grid;gap:28px;margin-top:clamp(28px,4vw,48px)}
.gd-toc{display:grid;gap:0;align-content:start;font-size:14px;line-height:1.35;padding:16px 18px;border-radius:var(--r-card);background:var(--bg-2)}
.gd-toc-h{font-weight:600;font-size:13px;color:var(--ink);margin-bottom:6px}
.gd-toc a{color:var(--ink-2);padding:5px 0}
.gd-toc a:hover{color:var(--ink);text-decoration:none}
@media (min-width:1068px){
  .gd-layout{grid-template-columns:230px minmax(0,1fr);gap:56px;align-items:start}
  .gd-toc{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--nav-h) + 24px);background:none;border-radius:0;padding:2px 0 2px 16px;border-left:1px solid var(--line-2)}
}
.gd-body{max-width:720px;min-width:0}
.gd-answer{padding:20px 22px;border-radius:var(--r-card);background:var(--accent-tint)}
.gd-answer-h{font-family:var(--f-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;font-weight:500;color:var(--accent);margin-bottom:8px}
.gd-answer p:not(.gd-answer-h){font-size:18px;line-height:1.5}
.gd-sec{margin-top:clamp(36px,4vw,48px);scroll-margin-top:calc(env(safe-area-inset-top,0px) + var(--nav-h) + 16px)}
.gd-sec h2{font-size:clamp(23px,2.4vw,28px);line-height:1.2;letter-spacing:-.02em;margin-bottom:14px}
.gd-sec p,.gd-sec ul,.gd-sec ol{margin:0 0 14px;line-height:1.6}
.gd-sec ul,.gd-sec ol{padding-left:22px}
.gd-sec li{margin:6px 0}
.gd-sec li::marker{color:var(--ink-3)}
.gd-sec ol.gd-steps{counter-reset:s;list-style:none;padding-left:0}
.gd-steps li{counter-increment:s;position:relative;padding-left:42px;margin:12px 0}
.gd-steps li::before{content:counter(s);position:absolute;left:0;top:-2px;width:28px;height:28px;border-radius:50%;background:var(--bg-2);display:grid;place-items:center;font-family:var(--f-mono);font-size:12px;font-weight:500;color:var(--ink)}
.gd-sec p.gd-ctx{font-size:15px;color:var(--ink-2)}
.gd-ctx a{font-weight:500}
.gd-table{overflow-x:auto;margin:16px 0 18px;border:1px solid var(--line-2);border-radius:var(--r-card)}
.gd-table table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.45}
.gd-table th,.gd-table td{text-align:left;vertical-align:top;padding:11px 14px;border-bottom:1px solid var(--line-2)}
.gd-table tbody tr:last-child>*{border-bottom:0}
.gd-table thead th{background:var(--bg-2);font-weight:600;font-size:13px;color:var(--ink-2)}
.gd-table tbody th{font-weight:500}
.gd-table td{font-variant-numeric:tabular-nums}
.gd-faq h2{margin-bottom:4px}
.gd-src{margin-top:40px;padding-top:18px;border-top:1px solid var(--line-2);font-size:14px}
.gd-src h2{font-size:14px;font-weight:600;letter-spacing:0;margin-bottom:8px}
.gd-src ul{margin:0;padding-left:18px;color:var(--ink-2)}
.gd-langs{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}

/* footer link hub (every public page) */
.foot .fhub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 28px;padding-block:34px 30px;justify-content:normal}
@media (min-width:834px){.foot .fhub{grid-template-columns:repeat(4,minmax(0,1fr))}}
.fhub-h{font-weight:600;color:var(--ink);font-size:12px;margin-bottom:10px}
.fhub ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.fhub-n{font-family:var(--f-mono);font-size:11px;color:var(--ink-3)}
.foot .fhub+.wrap{background:linear-gradient(var(--line-2),var(--line-2)) center top/calc(100% - 2*max(16px,var(--gut))) 1px no-repeat}

/* catalog: brand links above the results */
.brow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 22px}
.brow-k{color:var(--ink-2);margin-right:6px}
.brow a{display:inline-flex;align-items:center;gap:7px;flex:none;padding:6px 13px;border-radius:980px;border:1px solid var(--line);color:var(--ink);font-size:14px;font-weight:500;transition:border-color .2s var(--ease)}
.brow a:hover{border-color:var(--ink);text-decoration:none}
.brow a span{font-family:var(--f-mono);font-size:11px;color:var(--ink-3)}
@media (max-width:600px){
  .brow{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * max(16px,var(--gut)));padding-inline:max(16px,var(--gut))}
  .brow::-webkit-scrollbar{display:none}
  .brow-k{flex:none}
}

/* car page: brand page + guides */
.clinks{margin-top:clamp(48px,6vw,72px)}
.clinks-k{color:var(--ink-2);margin-bottom:12px}
.clinks ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.clinks a{display:inline-flex;padding:8px 14px;border-radius:980px;background:var(--bg-2);color:var(--ink);font-size:14px;font-weight:500;transition:background-color .2s var(--ease)}
.clinks a:hover{background:var(--fill);text-decoration:none}
.clinks+.crumbs{margin-top:28px}

/* sales page brand pills as links */
a.bpill:hover{text-decoration:none}

