:root{
  --bg:#f6f0e6;
  --bg2:#fbf7f1;
  --panel:#fffdf8;
  --fg:#121316;
  --muted:#5b6067;
  --stroke:rgba(18,19,22,.12);
  --strokeSoft:rgba(179,155,98,.28);
  --gold:#b39b62;
  --rad:18px;
  --gap:clamp(18px,2.6vw,28px);
  --shadow:0 18px 56px rgba(17,18,20,.10);
  --shadowSoft:0 14px 34px rgba(179,155,98,.12);
}

*{box-sizing:border-box}
html,body{margin:0}

body{
  background:
    radial-gradient(1200px 760px at 12% -10%, rgba(179,155,98,.18), transparent 56%),
    radial-gradient(900px 640px at 92% 0%, rgba(18,19,22,.06), transparent 58%),
    linear-gradient(180deg, var(--bg2), var(--bg));
  color:var(--fg);
  font:16px/1.65 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}

a:focus-visible,.btn:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(179,155,98,.45);outline-offset:3px;border-radius:12px}

.container{max-width:1180px;margin:0 auto;padding:0 clamp(18px,3vw,28px)}

.skip{position:absolute;left:-999px;top:12px;z-index:999;background:#141414;color:#fff;padding:10px 12px;border-radius:12px;font-weight:800;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.skip:focus{left:clamp(18px,3vw,28px)}

/* Header */
header{
  position:sticky;top:0;z-index:60;
  background:rgba(251,247,241,.86);
  backdrop-filter:saturate(150%) blur(10px);
  border-bottom:1px solid var(--stroke);
  box-shadow:0 10px 30px rgba(17,18,20,.06);
}
.navbar,.nav{display:flex;align-items:center;gap:12px;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.brand .brandmark{width:34px;height:34px;border-radius:10px;box-shadow:none}
.brand span{font-size:.88rem;letter-spacing:.22em}
.navlinks{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.navlink{
  font-size:.78rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  padding:10px 8px;
  border-radius:12px;
}
.navlink:hover{background:rgba(18,19,22,.04);text-decoration:none;color:var(--fg)}

/* Make <details><summary> match nav links */
.nav-dd summary{
  font-size:.78rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  padding:10px 8px;
  border-radius:12px;
}
.nav-dd summary:hover{background:rgba(18,19,22,.04);color:var(--fg)}
.sp{flex:1}

.badge{
  display:inline-flex;align-items:center;gap:.45rem;
  border-radius:999px;padding:.45rem .9rem;
  border:1px solid var(--stroke);
  background:rgba(255,253,248,.78);
  font-weight:750;font-size:.76rem;
  letter-spacing:.14em;text-transform:uppercase;
}
.badge svg{width:14px;height:14px}
.dot{width:8px;height:8px;border-radius:999px;background:var(--gold);display:inline-block;box-shadow:0 0 0 3px rgba(179,155,98,.15)}

/* Dropdown via details */
.nav-dd{position:relative}
.nav-dd summary{list-style:none;cursor:pointer;padding:10px 8px;border-radius:12px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.nav-dd summary:hover{background:rgba(18,19,22,.04);text-decoration:none;color:var(--fg)}
.nav-dd summary::-webkit-details-marker{display:none}
.nav-dd[open] summary{background:rgba(18,19,22,.04);color:var(--fg)}
.ddmenu{
  position:absolute;left:0;top:46px;min-width:220px;
  background:var(--panel);
  border:1px solid var(--stroke);
  border-radius:16px;
  box-shadow:0 18px 46px rgba(17,18,20,.10);
  padding:8px;
}
.ddmenu a{display:block;padding:10px 10px;border-radius:12px;color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.ddmenu a:hover{background:rgba(18,19,22,.04);text-decoration:none;color:var(--fg)}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  padding:.86rem 1.08rem;border-radius:999px;
  border:1px solid var(--stroke);
  background:transparent;color:var(--fg);
  font-weight:800;font-size:.82rem;
  letter-spacing:.12em;text-transform:uppercase;
  cursor:pointer;
}
.btn:hover{background:rgba(18,19,22,.04);text-decoration:none}
.btn.primary{border-color:#141414;background:#141414;color:#fff}
.btn.primary:hover{background:#0f0f0f}
.btn.secondary{background:transparent}

/* Layout blocks */
main{padding:32px 0 76px}
.kicker{margin:0;font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}

h1{
  font-family:ui-serif,Georgia,"Times New Roman",serif;
  font-weight:650;
  font-size:clamp(32px,4.8vw,56px);
  letter-spacing:-.03em;
  line-height:1.05;
  margin:.35rem 0 .55rem;
}

h2{
  font-family:ui-serif,Georgia,"Times New Roman",serif;
  font-weight:650;
  font-size:clamp(22px,2.9vw,34px);
  margin:0 0 10px;
  letter-spacing:-.01em;
}

p{margin:0 0 14px}
.sub{color:var(--muted);margin:0 0 18px;max-width:82ch}

.lead{color:var(--muted);margin:0 0 14px;max-width:82ch;font-size:1.06rem;line-height:1.7}
.trustline{color:var(--muted);margin:14px 0 0;font-size:.92rem}
.meta{color:var(--muted);margin:10px 0 0;font-size:.92rem}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 0}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--gap);align-items:start}
.split.equal{grid-template-columns:1fr 1fr}
.inlineimg{margin:0;border-radius:var(--rad);overflow:hidden;border:1px solid var(--stroke);background:var(--panel);box-shadow:var(--shadow), var(--shadowSoft);aspect-ratio:3/2}
.inlineimg img{width:100%;height:100%;object-fit:cover;display:block}
.endorser{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;border:1px solid var(--stroke);background:var(--panel);margin-bottom:12px}

.small{font-size:.92rem;color:var(--muted)}

.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--gap);align-items:center}
.hero figure{margin:0;border-radius:var(--rad);overflow:hidden;border:1px solid var(--stroke);background:var(--panel);box-shadow:var(--shadow), var(--shadowSoft);aspect-ratio:3/2}
.hero figure picture{display:block;height:100%}
.hero figure img{width:100%;height:100%;object-fit:cover}

.chips{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 14px}
.chip{display:inline-flex;align-items:center;padding:.42rem .72rem;border-radius:999px;border:1px solid var(--stroke);background:rgba(255,253,248,.82);font-size:.74rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}

.link-row{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 0}

section{margin:78px 0 0;position:relative}
section::before{content:"";display:block;height:1px;background:linear-gradient(90deg, transparent, rgba(179,155,98,.38), transparent);margin:0 0 28px}
section.hero::before{display:none}

.notice{padding:14px 16px;border-radius:var(--rad);background:rgba(255,253,248,.78);border:1px solid var(--stroke)}

.cardgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--gap)}
.card{padding:20px;border-radius:var(--rad);background:var(--panel);border:1px solid var(--stroke);box-shadow:var(--shadowSoft)}
.card h3{margin:0 0 10px;font-size:1.05rem}

.modelgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap);align-items:stretch}
.modelcard{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadowSoft)}
.modelmedia{aspect-ratio:3/2;background:rgba(179,155,98,.06)}
.modelmedia picture{display:block;width:100%;height:100%}
.modelmedia img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.modelbody{padding:22px 22px 20px}
.modeltitle{margin:0;font-family:ui-serif,Georgia,"Times New Roman",serif;font-weight:650;font-size:1.4rem;letter-spacing:-.01em}
.modelmeta{margin:6px 0 0;color:var(--muted);font-size:.92rem}
.modelspec{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.modelspec li{padding-left:16px;position:relative;color:var(--muted);font-size:.95rem;line-height:1.55}
.modelspec li:before{content:"—";position:absolute;left:0;color:var(--muted)}
.modelactions{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}

.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap)}
.gallery > *{grid-column:span 6}
.gallery picture{display:block;border-radius:16px;overflow:hidden;border:1px solid var(--stroke);background:var(--panel);box-shadow:var(--shadowSoft);aspect-ratio:3/2}
.gallery picture img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transform:scale(1);transition:transform .22s ease}
.gallery picture:hover img{transform:scale(1.02)}



/* Dealer */
.dealer-name{display:block;font-weight:850}
.dealer-city{display:block;font-weight:650;color:var(--muted);font-size:.92rem;margin-top:3px}
.map-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border-radius:14px;border:1px solid var(--stroke);background:rgba(255,255,255,.72)}
.map-legal{margin-top:6px;color:var(--muted);font-size:.9rem}
iframe.map{width:100%;aspect-ratio:16/10;border:0;border-radius:14px}

/* Contact form */
form{margin-top:8px}
.fieldgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.field{display:flex;flex-direction:column;gap:6px}
label{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
input,select,textarea{
  font:inherit;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid var(--stroke);
  background:#fff;
}
textarea{min-height:140px;resize:vertical}
.hint{color:var(--muted);font-size:.92rem}
.error{color:#8a2a2a;font-size:.92rem}
.success{color:#1e5b2c;font-size:.92rem}

.checkrow{display:flex;gap:10px;align-items:flex-start;margin:12px 0}
.checkrow input{margin-top:4px;width:18px;height:18px}

/* Pricing */
.pricefrom{margin:10px 0 0;color:var(--fg);font-weight:850;letter-spacing:.06em;text-transform:uppercase;font-size:.84rem}
.pricechips{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0 0}
.pricebadge{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.42rem .82rem;border:1px solid var(--strokeSoft);background:rgba(255,253,248,.92);font-weight:850;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase}
.pricechip{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.42rem .72rem;border:1px solid var(--stroke);background:rgba(255,253,248,.86);font-size:.74rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.pricehint{margin:10px 0 0;color:var(--muted);font-size:.92rem}
.pricepanel{padding:18px;border-radius:var(--rad);background:rgba(255,253,248,.84);border:1px solid var(--stroke);box-shadow:0 10px 28px rgba(17,18,20,.06)}
.pricelines{display:grid;gap:10px;margin-top:6px}
.priceline{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:10px 12px;border-radius:14px;border:1px solid var(--stroke);background:rgba(255,253,248,.92)}
.priceline span{color:var(--muted);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}
.priceline strong{font-size:1.05rem;letter-spacing:-.01em}

/* Footer */
footer{margin-top:78px;border-top:1px solid var(--stroke);padding:26px 0 44px;color:var(--muted)}
.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--gap)}
.footcol h4{margin:0 0 10px;color:var(--fg);font-size:.9rem;letter-spacing:.14em;text-transform:uppercase}
.footcol a{display:block;padding:6px 0}
.footerbottom{margin-top:18px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.footbrand{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.footmark{width:18px;height:18px;opacity:.92}

/* Lightbox */
dialog#lb{border:0;padding:0;background:transparent}
dialog#lb::backdrop{background:rgba(0,0,0,.75)}
dialog#lb img{max-width:min(92vw,1200px);max-height:86vh;border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.55)}

@media (max-width:900px){
  .split{grid-template-columns:1fr}
  .hero{grid-template-columns:1fr}
  .hero figure{order:-1}
  section{margin:56px 0 0}
  section::before{margin:0 0 22px}
  .nav{flex-wrap:wrap}
  .sp{display:none}
  .badge{display:none}
  .nav-dd{width:100%}
  .nav-dd summary{width:100%}
  .btn.primary{width:100%}
  .ddmenu{position:static;min-width:auto;margin-top:6px}
  .modelgrid{grid-template-columns:1fr}
  .fieldgrid{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .footergrid{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:1fr}
  .gallery > *{grid-column:auto}
}

@media (prefers-reduced-motion:no-preference){
  .btn,.gallery picture img{transition:background .18s ease, transform .18s ease, box-shadow .18s ease}
  .btn:active{transform:translateY(1px)}
}

/* Bullets (clean, technical) */
.bullets{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:10px;max-width:92ch}
.bullets li{padding-left:16px;position:relative;color:var(--muted);line-height:1.6}
.bullets li:before{content:"—";position:absolute;left:0;color:var(--muted)}
