:root{
  --gf-primary:#0B1F2A;
  --gf-accent:#F0A202;
  --gf-text:#121417;
  --gf-muted:#5B6570;
  --gf-bg:#F2F4F6;
  --gf-surface:#FFFFFF;
  --gf-radius:14px;
  --gf-container:1200px;
  --gf-font-heading:"Barlow Condensed",Impact,sans-serif;
  --gf-font-body:"Manrope",system-ui,sans-serif;
}
*{box-sizing:border-box}
body.gf-body{
  margin:0;min-height:100vh;font-family:var(--gf-font-body);color:var(--gf-text);
  background:
    radial-gradient(900px 420px at 8% -10%, rgba(240,162,2,.14), transparent 50%),
    radial-gradient(800px 380px at 95% 0%, rgba(11,31,42,.12), transparent 45%),
    linear-gradient(180deg,#eef2f5 0%, var(--gf-bg) 40%, #e8edf1 100%);
  line-height:1.6;
}
img{max-width:100%;height:auto;display:block}
.gf-container{width:min(100% - 2rem,var(--gf-container));margin-inline:auto}
.gf-header{position:sticky;top:0;z-index:30;backdrop-filter:blur(12px);background:rgba(242,244,246,.9);border-bottom:1px solid rgba(11,31,42,.08)}
.gf-header__inner{display:flex;align-items:center;gap:1rem;min-height:64px}
.gf-brand{display:flex;align-items:center;flex:0 0 auto;max-width:min(220px,42vw)}
.gf-brand .custom-logo-link{display:inline-flex;align-items:center;line-height:0}
.gf-brand .custom-logo{display:block;width:auto;height:auto;max-height:40px;max-width:100%;object-fit:contain}
.gf-brand__name{font-family:var(--gf-font-heading);font-size:1.35rem;text-decoration:none;letter-spacing:.02em;text-transform:uppercase}
.gf-nav{margin-left:auto}
.gf-menu{display:flex;gap:.2rem;list-style:none;margin:0;padding:0}
.gf-menu a{display:block;padding:.55rem .8rem;text-decoration:none;border-radius:999px;color:var(--gf-muted);font-weight:600}
.gf-menu a:hover,.gf-menu .current-menu-item>a{color:var(--gf-text);background:rgba(11,31,42,.07)}
.gf-header__tools{display:flex;align-items:center;gap:.55rem}
.gf-nav-toggle{display:none;border:1px solid rgba(11,31,42,.12);background:#fff;border-radius:999px;padding:.55rem .9rem}
.gf-search{display:flex;border:1px solid rgba(11,31,42,.12);border-radius:999px;overflow:hidden;background:#fff}
.gf-search input{border:0;padding:.55rem .85rem;min-width:130px;font:inherit}
.gf-search button{border:0;background:var(--gf-primary);color:#fff;padding:.55rem .85rem;cursor:pointer}
.gf-btn{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.2rem;border-radius:999px;background:var(--gf-accent);color:#1a1408;text-decoration:none;font-weight:700;border:0;cursor:pointer;transition:transform .2s ease}
.gf-btn:hover{transform:translateY(-2px)}
.gf-btn--ghost{background:transparent;border:1px solid rgba(11,31,42,.2);color:var(--gf-primary)}
.gf-btn--small{padding:.5rem .85rem;font-size:.9rem}
.gf-hero{position:relative;min-height:min(86vh,740px);display:grid;align-items:end;overflow:hidden;color:#fff}
.gf-hero__media,.gf-hero__media img,.gf-hero__media--fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gf-hero__media--fallback{background:linear-gradient(135deg,#0b1f2a 0%,#16384a 45%,#2a2210 100%)}
.gf-hero__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,16,22,.2),rgba(8,16,22,.78))}
.gf-hero__content{position:relative;z-index:1;padding:5rem 0 3.5rem;max-width:720px}
.gf-brand-mark{font-family:var(--gf-font-heading);font-size:clamp(2.8rem,8vw,5.2rem);margin:0;line-height:.95;text-transform:uppercase;letter-spacing:.02em}
.gf-hero h1{margin:.35rem 0 .8rem;font-family:var(--gf-font-heading);font-size:clamp(1.8rem,4vw,3rem);font-weight:700;text-transform:uppercase}
.gf-hero__lead{margin:0 0 1.3rem;font-size:1.1rem;max-width:36ch;color:rgba(255,255,255,.92)}
.gf-section{padding:4.2rem 0}
.gf-section__title{font-family:var(--gf-font-heading);font-size:clamp(1.9rem,3vw,2.6rem);margin:.15rem 0 1.3rem;text-transform:uppercase}
.gf-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:800;color:var(--gf-accent);margin:0 0 .3rem}
.gf-page-hero{padding:3.2rem 0 1.2rem}
.gf-page-hero h1{font-family:var(--gf-font-heading);font-size:clamp(2rem,4vw,3.2rem);margin:0;text-transform:uppercase}
.gf-vehicle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem}
.gf-vehicle-card{background:var(--gf-surface);border-radius:var(--gf-radius);overflow:hidden;box-shadow:0 18px 40px rgba(11,31,42,.1);display:flex;flex-direction:column}
.gf-vehicle-card__media{position:relative;display:block;aspect-ratio:3/2;overflow:hidden;background:#d5dde3}
.gf-vehicle-card__media img,.gf-vehicle-card__placeholder{width:100%;height:100%;object-fit:cover}
.gf-vehicle-card__placeholder{display:block;background:linear-gradient(135deg,#0b1f2a,#6b7c86)}
.gf-vehicle-card__price{position:absolute;left:.75rem;bottom:.75rem;background:var(--gf-accent);color:#1a1408;font-weight:800;padding:.35rem .65rem;border-radius:999px;font-size:.9rem}
.gf-vehicle-card__body{padding:1rem 1.05rem 1.15rem;display:flex;flex-direction:column;gap:.35rem;flex:1}
.gf-vehicle-card__type{margin:0;color:var(--gf-muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.gf-vehicle-card__title{margin:0;font-family:var(--gf-font-heading);font-size:1.35rem;text-transform:uppercase}
.gf-vehicle-card__title a,.gf-vehicle-card__title a:visited{text-decoration:none;color:var(--gf-text)}
.gf-vehicle-card__more,.gf-vehicle-card__more:visited{color:var(--gf-primary)}
.gf-vehicle-card__meta{margin:0;color:var(--gf-muted);font-size:.92rem}
.gf-vehicle-card__more{margin-top:auto;color:var(--gf-primary);font-weight:700;text-decoration:none}
.gf-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem;background:var(--gf-surface);padding:1rem;border-radius:var(--gf-radius);border:1px solid rgba(11,31,42,.08)}
.gf-filters label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:700}
.gf-filters select,.gf-filters input{border:1px solid rgba(11,31,42,.12);border-radius:10px;padding:.55rem .65rem;font:inherit}
.gf-split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}
.gf-split--left{direction:rtl}
.gf-split--left>*{direction:ltr}
.gf-split__media img{border-radius:calc(var(--gf-radius) + 4px);box-shadow:0 18px 40px rgba(11,31,42,.14)}
.gf-split__copy h2{font-family:var(--gf-font-heading);font-size:clamp(1.8rem,3vw,2.5rem);margin:.2rem 0 .8rem;text-transform:uppercase}
.gf-cta{background:linear-gradient(135deg,var(--gf-primary),#16384a);color:#fff;border-radius:calc(var(--gf-radius) + 8px);padding:2.4rem;text-align:center}
.gf-cta h2{font-family:var(--gf-font-heading);margin-top:0;text-transform:uppercase}
.gf-usps{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}
.gf-usp{display:flex;gap:.65rem;align-items:flex-start;background:var(--gf-surface);border-radius:12px;padding:1rem;border:1px solid rgba(11,31,42,.08)}
.gf-usp strong{color:var(--gf-accent)}
.gf-vehicle-detail__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem;padding:2rem 0}
.gf-vehicle-detail__main{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:var(--gf-radius);overflow:hidden}
.gf-vehicle-detail__main img{border-radius:var(--gf-radius);width:100%;max-height:480px;object-fit:cover;display:block}
.gf-gallery-hint{position:absolute;right:.75rem;bottom:.75rem;background:rgba(11,31,42,.72);color:#fff;font-size:.78rem;font-weight:700;padding:.35rem .65rem;border-radius:999px;pointer-events:none}
.gf-vehicle-detail__thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:.6rem}
.gf-thumb{padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;cursor:pointer;background:transparent}
.gf-thumb.is-active,.gf-thumb:hover{border-color:var(--gf-accent)}
.gf-vehicle-detail__thumbs img{border-radius:10px;aspect-ratio:1;object-fit:cover;width:100%;display:block}
.gf-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(8,14,20,.92);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;padding:1rem;backdrop-filter:blur(4px)}
.gf-lightbox__stage{margin:0;display:grid;justify-items:center;gap:.75rem;max-height:100%}
.gf-lightbox__img{max-width:min(92vw,1200px);max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.gf-lightbox__counter{color:rgba(255,255,255,.85);font-weight:700;font-size:.95rem}
.gf-lightbox__close,.gf-lightbox__nav{appearance:none;border:0;background:rgba(255,255,255,.12);color:#fff;width:48px;height:48px;border-radius:999px;font-size:1.6rem;line-height:1;cursor:pointer;display:grid;place-items:center}
.gf-lightbox__close{position:absolute;top:1rem;right:1rem;font-size:1.8rem}
.gf-lightbox__nav:hover,.gf-lightbox__close:hover{background:rgba(240,162,2,.9);color:#1a1408}
body.gf-lightbox-open{overflow:hidden}
@media(max-width:700px){
  .gf-lightbox{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;justify-items:center}
  .gf-lightbox__nav{width:44px;height:44px}
  .gf-vehicle-detail__thumbs{grid-template-columns:repeat(3,1fr)}
}
.gf-vehicle-detail__price{font-family:var(--gf-font-heading);font-size:2rem;margin:.4rem 0;color:var(--gf-primary)}
.gf-badge{display:inline-block;background:rgba(240,162,2,.18);color:#8a5a00;font-weight:800;padding:.25rem .65rem;border-radius:999px;font-size:.8rem}
.gf-specs{list-style:none;margin:1rem 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.gf-specs li{background:var(--gf-surface);border:1px solid rgba(11,31,42,.08);border-radius:10px;padding:.65rem .75rem;display:flex;flex-direction:column;gap:.15rem}
.gf-specs span{color:var(--gf-muted);font-size:.8rem}
.gf-equipment-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:0 0 1rem}
.gf-equipment-badge{display:flex;align-items:center;gap:.45rem;background:var(--gf-surface);border:1px solid rgba(11,31,42,.08);border-radius:10px;padding:.65rem .75rem;font-weight:700;font-size:.92rem;box-shadow:0 8px 18px rgba(11,31,42,.05)}
.gf-equipment-badge::before{content:"✓";color:var(--gf-accent);font-weight:800}
.gf-vehicle-detail__body{display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem;padding-bottom:3rem}
.gf-inquiry{display:grid;gap:.7rem;background:var(--gf-surface);border:1px solid rgba(11,31,42,.08);border-radius:var(--gf-radius);padding:1rem}
.gf-inquiry label{display:grid;gap:.3rem;font-weight:700;font-size:.9rem}
.gf-inquiry input,.gf-inquiry textarea{border:1px solid rgba(11,31,42,.12);border-radius:10px;padding:.65rem .75rem;font:inherit}
.gf-notice{padding:.8rem 1rem;border-radius:12px;margin-bottom:1rem}
.gf-notice--ok{background:#e8f8ef;color:#065f46}
.gf-footer{padding:3rem 0 0;border-top:1px solid rgba(11,31,42,.08);background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(232,237,241,.95))}
.gf-footer__grid{display:grid;grid-template-columns:1.1fr 1fr 1.1fr;gap:2rem;padding-bottom:2rem}
.gf-footer h3{font-family:var(--gf-font-heading);text-transform:uppercase;font-size:1.15rem;margin:1rem 0 .45rem}
.gf-footer__brand{font-family:var(--gf-font-heading);font-size:1.6rem;text-transform:uppercase}
.gf-footer__logo img{max-height:64px;width:auto}
.gf-footer__hours{white-space:pre-line;color:var(--gf-muted)}
.gf-footer a{color:inherit}
.gf-footer__form .gf-inquiry{background:var(--gf-surface)}
.gf-footer__bar{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 0 1.4rem;border-top:1px solid rgba(11,31,42,.08);font-size:.92rem;color:var(--gf-muted)}
.gf-footer__credit a{color:var(--gf-primary);font-weight:700;text-decoration:none}
.gf-prose{padding-bottom:2rem}
[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
[data-reveal].is-in{opacity:1;transform:none}
@media(max-width:960px){
  .gf-vehicle-grid,.gf-split,.gf-vehicle-detail__grid,.gf-vehicle-detail__body,.gf-usps{grid-template-columns:1fr}
  .gf-split--left{direction:ltr}
  .gf-nav-toggle{display:inline-flex;margin-left:auto}
  .gf-nav{display:none;position:absolute;left:0;right:0;top:74px;background:#fff;padding:1rem;border-bottom:1px solid rgba(11,31,42,.08)}
  .gf-nav.is-open{display:block}
  .gf-menu{flex-direction:column}
  .gf-header__tools .gf-search{display:none}
  .gf-footer__grid{grid-template-columns:1fr}
  .gf-footer__bar{flex-direction:column}
  .gf-equipment-badges{grid-template-columns:1fr}
}
