/* Gears shared styles — subpages (car detail + content pages) */
:root{
  --marine:#1f1f1f; --marine-deep:#141414; --marine-darker:#000000; --marine-ink:#0d0d0d;
  --marine-mid:#3a3a3a; --marine-soft:rgba(0,0,0,0.08);
  --ink:#1c1c1c; --muted:#5c6662; --line:#dddddd; --grey:#f5f4f4; --cream:#fdfcfc; --white:#fff;
  --ease:cubic-bezier(0.22,1,0.36,1);
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:"Albert Sans",system-ui,sans-serif;background:var(--white);color:var(--ink);-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;}

/* Nav */
.nav{position:sticky;top:0;z-index:100;background:var(--marine-deep);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0.85rem clamp(1rem,4vw,2.5rem);gap:1rem;}
.nav-burger{display:none;appearance:none;border:0;background:transparent;color:#fff;cursor:pointer;width:44px;height:44px;padding:0;align-items:center;justify-content:center;border-radius:8px;}
.nav-burger svg{width:26px;height:26px;}
.nav-burger:hover{background:rgba(255,255,255,0.1);}
.nav img{height:28px;filter:brightness(0) invert(1);}
.nav__links{display:flex;gap:1.25rem;align-items:center;font-size:0.9rem;font-weight:500;}
.nav__links a{color:rgba(255,255,255,0.82);text-decoration:none;}
.nav__links a:hover,.nav__links a[aria-current="page"]{color:#fff;}
.nav__cta{display:flex;gap:0.5rem;align-items:center;}
.nav-wa{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#25D366;color:#fff;transition:background 0.2s,transform 0.2s var(--ease);}
.nav-wa:hover{background:#1eb455;transform:translateY(-1px);}
.nav-wa svg{width:20px;height:20px;}
.nav-tamba{margin-right:auto;display:inline-flex;align-items:center;gap:0.45rem;background:var(--marine);color:#fff!important;text-decoration:none;padding:0.42rem 0.85rem;border-radius:999px;font-size:0.82rem;font-weight:600;transition:background 0.2s,transform 0.2s var(--ease);}
.nav-tamba::before{content:"";width:7px;height:7px;border-radius:50%;background:#bdbdbd;box-shadow:0 0 0 3px rgba(170,170,170,0.25);animation:tambaBlink 2.2s ease-in-out infinite;}
.nav-tamba:hover{background:var(--marine-mid);transform:translateY(-1px);}
@keyframes tambaBlink{0%,100%{opacity:1;}50%{opacity:0.35;}}
.nt-short{display:none;}

/* Badge */
.badge{display:inline-block;width:fit-content;font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;background:var(--marine-soft);color:var(--marine-ink);padding:0.25rem 0.5rem;border-radius:6px;}

/* Car detail */
.detail-wrap{max-width:1200px;margin:0 auto;padding:1.5rem clamp(1rem,4vw,2.5rem) 3rem;}
.back{display:inline-block;margin-bottom:1rem;font-size:0.85rem;font-weight:600;color:var(--marine);text-decoration:none;}
.back:hover{text-decoration:underline;}
.detail{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(1.25rem,3vw,2.5rem);align-items:start;}
.gallery__main{border-radius:16px;overflow:hidden;background:#eee;border:1px solid var(--line);aspect-ratio:3/2;}
.gallery__main img{width:100%;height:100%;object-fit:cover;}
.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:0.5rem;margin-top:0.6rem;}
.thumb{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;background:#eee;aspect-ratio:4/3;transition:border-color 0.2s;}
.thumb img{width:100%;height:100%;object-fit:cover;}
.thumb:hover{border-color:var(--marine-soft);}
.thumb.is-active{border-color:var(--marine);}

.d-info{position:sticky;top:80px;display:flex;flex-direction:column;gap:0.7rem;}
.d-make{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);}
.d-title{margin:0;font-size:clamp(1.4rem,3vw,2rem);font-weight:800;letter-spacing:-0.02em;line-height:1.15;color:var(--marine-ink);}
.d-price{display:flex;align-items:baseline;gap:0.6rem;flex-wrap:wrap;font-size:1.6rem;font-weight:800;letter-spacing:-0.02em;color:var(--marine-ink);margin-top:0.2rem;}
.d-price small{flex-basis:100%;font-size:0.75rem;font-weight:500;color:var(--muted);}
.d-was{font-size:1rem;font-weight:600;color:var(--muted);text-decoration:line-through;}
.d-save{font-size:0.68rem;font-weight:800;text-transform:uppercase;letter-spacing:0.04em;padding:0.22rem 0.5rem;border-radius:6px;background:#e7f3ec;color:#0f5132;}
.d-specs{display:grid;grid-template-columns:1fr 1fr;gap:0.55rem;margin:0.5rem 0;}
.d-spec{background:var(--grey);border-radius:10px;padding:0.6rem 0.75rem;}
.d-spec dt{font-size:0.68rem;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;color:var(--muted);}
.d-spec dd{margin:0.15rem 0 0;font-size:0.98rem;font-weight:600;color:var(--ink);}
.d-actions{display:flex;flex-direction:column;gap:0.55rem;margin-top:0.3rem;}
.d-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;text-decoration:none;font-weight:700;font-size:0.92rem;padding:0.85rem 1rem;border-radius:12px;transition:0.2s var(--ease);}
.d-btn svg{width:20px;height:20px;}
.d-wa{background:#25D366;color:#fff;}
.d-wa:hover{background:#1eb455;}
.d-call{background:var(--marine-deep);color:#fff;}
.d-call:hover{background:var(--marine);}
.d-dir{background:var(--grey);color:var(--marine-ink);}
.d-dir:hover{background:var(--marine-soft);}
.d-note{margin:0.4rem 0 0;font-size:0.85rem;color:var(--muted);line-height:1.55;}
.d-note a{color:var(--marine);font-weight:600;}

/* Content pages */
.page{padding:2.5rem clamp(1rem,4vw,2.5rem) 3.5rem;}
.page__col{max-width:760px;margin:0 auto;}
.page__col .eyebrow{margin:0 0 0.35rem;font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:700;color:var(--marine);}
.page__col h1{margin:0 0 1rem;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;letter-spacing:-0.02em;line-height:1.1;color:var(--marine-ink);}
.page__col h2{margin:2rem 0 0.6rem;font-size:clamp(1.2rem,2.5vw,1.5rem);font-weight:700;color:var(--marine-ink);}
.page__col p{margin:0 0 1rem;line-height:1.7;color:var(--ink);}
.page__col .lead{font-size:1.15rem;color:var(--marine-deep);font-weight:500;}
.page__list{margin:0 0 1rem;padding-left:1.2rem;line-height:1.7;}
.page__list li{margin-bottom:0.5rem;}
.page__img{border-radius:16px;width:100%;height:auto;margin:1.25rem 0;border:1px solid var(--line);}
.page__cta{display:inline-flex;align-items:center;justify-content:center;background:var(--marine);color:#fff;font-weight:700;text-decoration:none;padding:0.85rem 1.25rem;border-radius:12px;transition:background 0.2s;}
.page__cta:hover{background:var(--marine-mid);}
.page__cta--ghost{background:var(--grey);color:var(--marine-ink);}
.page__cta--ghost:hover{background:var(--marine-soft);}
.page__ctas{display:flex;gap:0.6rem;flex-wrap:wrap;margin:0.5rem 0 1rem;}
.showrooms{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:0.5rem 0 1.5rem;}
.showroom{background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:1.1rem 1.25rem;}
.showroom h3{margin:0 0 0.5rem;font-size:1.05rem;color:var(--marine-ink);}
.showroom p{margin:0 0 0.6rem;line-height:1.6;font-size:0.92rem;}
.showroom__hours span{display:inline-block;min-width:6.5em;font-weight:700;color:var(--marine-ink);}
.showroom a{color:var(--marine);font-weight:600;text-decoration:none;font-size:0.9rem;}
.showroom a:hover{text-decoration:underline;}
.page__map{border-radius:16px;overflow:hidden;border:1px solid var(--line);height:360px;margin-top:0.5rem;}
.page__map iframe{width:100%;height:100%;border:0;display:block;}

/* Footer */
.footer{background:var(--marine-darker);color:rgba(255,255,255,0.7);padding:1.25rem clamp(1rem,4vw,2.5rem);font-size:0.82rem;display:flex;flex-wrap:wrap;gap:0.75rem;justify-content:space-between;margin-top:2.5rem;}
.footer a{color:#d9d9d9;text-decoration:none;}
.footer a:hover{text-decoration:underline;}
.footer__links{max-width:100%;}

/* WhatsApp FAB */
.wa-fab{position:fixed;right:1.25rem;bottom:1.25rem;z-index:9000;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#25D366;color:#fff;text-decoration:none;box-shadow:0 8px 24px rgba(37,211,102,0.45);transition:transform 0.2s var(--ease),box-shadow 0.2s;}
.wa-fab:hover{transform:scale(1.06);}
.wa-fab svg{width:30px;height:30px;}
.wa-fab__pulse{position:absolute;inset:0;border-radius:50%;background:#25D366;opacity:0.5;z-index:-1;animation:waPulse 2.4s var(--ease) infinite;}
@keyframes waPulse{0%{transform:scale(1);opacity:0.5;}70%{transform:scale(1.7);opacity:0;}100%{opacity:0;}}

@media (max-width:800px){
  .nav{flex-wrap:nowrap;gap:0.5rem;}
  .nav img{height:24px;}
  .nav-burger{display:inline-flex;}
  .nav__links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:0.35rem 0;background:var(--marine-deep);box-shadow:0 14px 34px rgba(0,0,0,0.35);border-top:1px solid rgba(255,255,255,0.08);z-index:130;}
  .nav.is-open .nav__links{display:flex;}
  .nav__links a{padding:0.95rem clamp(1rem,4vw,2.5rem);font-size:1rem;color:#fff;}
  .nav__links a:hover,.nav__links a[aria-current="page"]{background:var(--marine);color:#fff;}
  .nav-wa{width:44px;height:44px;}
  .nav-tamba{font-size:0.74rem;padding:0.4rem 0.7rem;}
  .detail{grid-template-columns:1fr;}
  .d-info{position:static;}
  .showrooms{grid-template-columns:1fr;}
  .wa-fab{right:1rem;bottom:1rem;}
}
@media (max-width:520px){
  .nt-pre{display:none;}
  .nt-short{display:inline;}
  .d-specs{grid-template-columns:1fr 1fr;}
}

/* Car detail — full specification list */
.d-fullspec{max-width:1200px;margin:2.5rem auto 0;padding:1.8rem clamp(1rem,4vw,2.5rem) 0;border-top:1px solid var(--line);}
.d-fullspec h2{margin:0 0 1rem;font-size:1.2rem;font-weight:700;color:var(--marine-ink);}
.d-fslist{list-style:none;margin:0;padding:0;columns:3;column-gap:2.2rem;}
.d-fslist li{break-inside:avoid;position:relative;padding:0.4rem 0 0.4rem 1.15rem;font-size:0.92rem;color:var(--ink);border-bottom:1px solid var(--line);}
.d-fslist li::before{content:"";position:absolute;left:0;top:0.72rem;width:6px;height:6px;border-radius:50%;background:var(--marine);}
@media(max-width:800px){.d-fslist{columns:2;}}
@media(max-width:520px){.d-fslist{columns:1;}}

/* Car detail — main gallery prev/next arrows */
.gallery__main{position:relative;}
.g-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(0,0,0,0.5);color:#fff;font-size:1.9rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 0.2s;z-index:3;padding:0 0 4px;}
.g-nav:hover{background:rgba(0,0,0,0.78);}
.g-prev{left:10px;} .g-next{right:10px;}
.g-count{position:absolute;bottom:10px;right:10px;background:rgba(0,0,0,0.55);color:#fff;font-size:0.75rem;font-weight:600;padding:0.2rem 0.55rem;border-radius:999px;z-index:3;}

/* Facebook nav icon */
.nav-fb{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#1877F2;color:#fff;transition:background 0.2s,transform 0.2s var(--ease);}
.nav-fb:hover{background:#0e5fce;transform:translateY(-1px);}
.nav-fb svg{width:20px;height:20px;}
@media (max-width:800px){.nav-wa,.nav-fb{width:44px;height:44px;}}

/* ---- Enquiry form ------------------------------------------------------ */
.enq { display: grid; gap: 0.8rem; max-width: 640px; margin: 1.25rem 0 2rem; }
.enq .enq-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.8rem; }
.enq label {
  display: grid; gap: 0.3rem; font-size: 0.75rem; font-weight: 600;
  letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted, #666);
}
.enq input, .enq textarea {
  appearance: none; font: inherit; font-size: 16px;
  border: 1px solid var(--line, #e2e2e2); border-radius: 10px;
  padding: 0.75rem 0.9rem; min-height: 48px; background: #fff;
  color: var(--ink, #1a1a1a); width: 100%; box-sizing: border-box;
}
.enq textarea { min-height: 140px; resize: vertical; }
.enq input:focus-visible, .enq textarea:focus-visible {
  outline: 2px solid var(--marine, #1f1f1f); outline-offset: 1px;
}
.enq .enq-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.enq button { min-height: 50px; justify-self: start; padding: 0 1.6rem; }
.enq-status { font-size: 0.9rem; margin: 0; min-height: 1.4em; }
.enq-status.is-ok { color: #1a7f4b; }
.enq-status.is-bad { color: #b3261e; }
@media (max-width: 620px) {
  .enq .enq-row { grid-template-columns: 1fr; }
  .enq button { justify-self: stretch; width: 100%; }
}
.d-btn.d-ghost {
  background: transparent; color: var(--ink, #1a1a1a);
  border: 1px solid var(--line, #e2e2e2);
}
