/**
 * Fitzpatrick theme — "Velocity" skin (light).
 *
 * The same high-energy zoomshop-style design language — Anton condensed display
 * type, JetBrains Mono numerics, cyan signature, chunky pressed pill buttons —
 * on a bright white surface system instead of black.
 *
 * Class names are unchanged from earlier versions, so every template and the
 * Fitz Inventory plugin restyle without any markup change.
 *
 * Colour tokens (--fdg-cyan, --fdg-black, --fdg-ink) are overridden at runtime
 * by inc/dynamic-css.php from the Customizer, so the palette stays editable.
 */

:root{
	/* Brand — overridable from the Customizer via dynamic-css. */
	--fdg-black:#000000;
	--fdg-cyan:#52c8e5;        /* fills: buttons, badges, highlights */
	--fdg-cyan-deep:#0c7a99;   /* text-safe cyan on white */
	--fdg-cyan-shadow:#2a9dbb; /* pressed-button shadow */
	--fdg-gold:#f5a623;
	--fdg-gold-deep:#9a6400;
	--fdg-gold-ink:#241500;
	--fdg-trust:#1a7f4b;
	--fdg-accent-ink:#00171d;
	--fdg-ink:#0b0b0d;

	/* Light surface system. */
	--fdg-bg:#ffffff;          /* page base */
	--fdg-surface:#ffffff;     /* cards */
	--fdg-surface-2:#f6f7f9;   /* inputs, alt bands, hover */
	--fdg-surface-3:#eceef2;   /* deeper alt surface */
	--fdg-ink-soft:#5f6570;    /* muted text */
	--fdg-ink-faint:#8b909b;   /* faintest text */
	--fdg-line:#e4e7ec;
	--fdg-line-soft:#f0f2f5;
	--fdg-cyan-ink:#00171d;    /* text on a cyan fill */

	/* Type. */
	--fdg-display:"Anton","Archivo Narrow","Impact",-apple-system,sans-serif;
	--fdg-body:"DM Sans","DM Sans Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	--fdg-mono:"JetBrains Mono","SF Mono",Menlo,Consolas,monospace;

	/* Layout. */
	--fdg-radius:14px;
	--fdg-radius-lg:22px;
	--fdg-radius-sm:9px;
	--fdg-maxw:1280px;
	--fdg-gutter:clamp(18px,4vw,44px);
	--fdg-shadow:0 1px 2px rgba(11,11,13,.05),0 6px 18px rgba(11,11,13,.06);
	--fdg-shadow-lg:0 18px 50px rgba(11,11,13,.13);
	--fdg-ease:cubic-bezier(.2,.7,.2,1);
	--fdg-ease-out:cubic-bezier(.16,1,.3,1);
}

/* Base ------------------------------------------------------------------- */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.fdg{margin:0;background:var(--fdg-bg);color:var(--fdg-ink);
	font-family:var(--fdg-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.fdg img{max-width:100%;height:auto;display:block}
.fdg a{color:var(--fdg-cyan-deep);text-decoration:none}
.fdg a:hover{color:#0a637d}
.fdg h1,.fdg h2,.fdg h3,.fdg h4{font-family:var(--fdg-display);font-weight:400;letter-spacing:.005em;line-height:.96;margin:0;color:var(--fdg-ink)}
.fdg h1,.fdg h2{text-transform:uppercase}
.fdg p{margin:0 0 1em}
.fdg-wrap{max-width:var(--fdg-maxw);margin:0 auto;padding-left:var(--fdg-gutter);padding-right:var(--fdg-gutter)}
/* Full-bleed variant for the shop page, aligned to the plugin grid gutter. */
.fdg-wrap--shop{max-width:none;padding-left:var(--fdg-gutter);padding-right:var(--fdg-gutter)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.fdg-skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--fdg-cyan);color:var(--fdg-cyan-ink);padding:10px 16px;border-radius:0 0 8px 0}
.fdg-skip:focus{left:0}
.fdg-main{display:block}
.fdg-main--app{max-width:none;padding:0;margin:0}
.fdg-main--app .fdg-page__content{max-width:none}

/* Eyebrow / mono label --------------------------------------------------- */
.fdg-eyebrow,.fdg-hero__eyebrow{display:inline-flex;align-items:center;gap:8px;
	font-family:var(--fdg-mono);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--fdg-cyan-deep)}

/* Buttons ---------------------------------------------------------------- */
.fdg-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
	font-family:var(--fdg-body);font-weight:700;font-size:15px;letter-spacing:.01em;line-height:1;
	padding:14px 26px;border:2px solid transparent;border-radius:999px;cursor:pointer;text-decoration:none;white-space:nowrap;
	transition:transform .22s var(--fdg-ease),background .22s var(--fdg-ease),box-shadow .22s var(--fdg-ease),color .22s var(--fdg-ease),border-color .22s var(--fdg-ease)}
.fdg .fdg-btn--primary{background:var(--fdg-cyan);color:var(--fdg-cyan-ink);border-color:var(--fdg-cyan);box-shadow:0 6px 0 var(--fdg-cyan-shadow)}
.fdg .fdg-btn--primary:hover{background:#66d4ef;color:var(--fdg-cyan-ink);transform:translateY(-2px);box-shadow:0 8px 0 var(--fdg-cyan-shadow)}
.fdg .fdg-btn--primary:active{transform:translateY(4px);box-shadow:0 2px 0 var(--fdg-cyan-shadow)}
.fdg .fdg-btn--accent{background:var(--fdg-cyan);color:var(--fdg-cyan-ink);border-color:var(--fdg-cyan);box-shadow:0 6px 0 var(--fdg-cyan-shadow)}
.fdg .fdg-btn--accent:hover{background:#66d4ef;color:var(--fdg-cyan-ink);transform:translateY(-2px);box-shadow:0 8px 0 var(--fdg-cyan-shadow)}
.fdg .fdg-btn--accent:active{transform:translateY(4px);box-shadow:0 2px 0 var(--fdg-cyan-shadow)}
.fdg .fdg-btn--dark{background:var(--fdg-ink);color:#fff;border-color:var(--fdg-ink);box-shadow:0 6px 0 #000}
.fdg .fdg-btn--dark:hover{background:#24242c;color:#fff;transform:translateY(-2px)}
.fdg .fdg-btn--ghost{background:#fff;color:var(--fdg-ink);border-color:var(--fdg-line)}
.fdg .fdg-btn--ghost:hover{border-color:var(--fdg-cyan);color:var(--fdg-cyan-deep)}
.fdg-btn--block{width:100%}
.fdg-btn--small{padding:10px 18px;font-size:13px}

/* Topbar ----------------------------------------------------------------- */
.fdg-topbar{background:var(--fdg-ink);color:#d6d8dd;font-family:var(--fdg-mono);font-size:12px;letter-spacing:.04em}
.fdg-topbar .fdg-wrap{padding-top:9px;padding-bottom:9px;text-align:center}

/* Header / nav ----------------------------------------------------------- */
.fdg-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--fdg-line)}
.fdg-header__in{display:flex;align-items:center;gap:20px;padding-top:16px;padding-bottom:16px}
.fdg-header__brand img{max-height:44px;width:auto}
/* The FDG mark is black type + a cyan swoosh, which reads correctly as-is on
   the light header — no knock-out filter, so the cyan is preserved. */
.fdg-header__brand .custom-logo-link{display:inline-block;line-height:0}
.fdg-header__name{font-family:var(--fdg-display);font-size:1.5rem;text-transform:uppercase;color:var(--fdg-ink)}
.fdg-nav{display:flex;align-items:center;gap:26px;margin-left:auto}
.fdg-menu{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.fdg-menu a{font-family:var(--fdg-body);font-weight:500;font-size:15px;color:var(--fdg-ink);letter-spacing:.01em}
.fdg-menu a:hover{color:var(--fdg-cyan-deep)}
.fdg-nav__cta{display:flex;align-items:center;gap:16px}
.fdg-header__phone{display:inline-flex;align-items:center;gap:7px;font-family:var(--fdg-mono);font-weight:700;font-size:14px;color:var(--fdg-ink)}
.fdg-header__phone:hover{color:var(--fdg-cyan-deep)}
.fdg-ic{display:inline-flex;width:16px;height:16px}
.fdg-ic svg{width:100%;height:100%}
.fdg-header__cta{padding:11px 20px}

/* Header search box. */
.fdg-hsearch{display:flex;align-items:center;gap:9px;flex:1;max-width:380px;margin:0 6px 0 12px;
	background:var(--fdg-surface-2);border:1.5px solid var(--fdg-line);border-radius:999px;padding:.55em .95em}
.fdg-hsearch__ic{display:flex;color:var(--fdg-ink-faint);flex:none}
.fdg-hsearch input{border:none;background:none;outline:none;font:inherit;font-size:.9rem;width:100%;color:var(--fdg-ink)}
.fdg-hsearch input::placeholder{color:var(--fdg-ink-faint)}
.fdg-hsearch:focus-within{border-color:var(--fdg-cyan);background:#fff;box-shadow:0 0 0 3px rgba(82,200,229,.2)}

.fdg-navtoggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;margin-left:auto}
.fdg-navtoggle span{width:24px;height:2px;background:var(--fdg-ink);border-radius:2px;transition:.2s}

/* Hero ------------------------------------------------------------------- */
.fdg-hero{position:relative;background:var(--fdg-bg);color:var(--fdg-ink);overflow:hidden;
	padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(52px,7vw,104px)}
.fdg-hero::before{content:"";position:absolute;inset:0;z-index:0;
	background:radial-gradient(115% 85% at 88% 4%,rgba(82,200,229,.20),transparent 58%);pointer-events:none}
.fdg-hero__swoosh{display:none}
.fdg-hero__in{position:relative;z-index:1;max-width:var(--fdg-maxw)}
.fdg-hero__eyebrow{margin:0 0 20px}
.fdg-hero .fdg-hero__h1{font-family:var(--fdg-display);text-transform:uppercase;
	font-size:clamp(50px,8.4vw,124px);line-height:1;letter-spacing:-.005em;margin:0 0 24px;max-width:15ch;color:var(--fdg-ink)}
/* Cyan block behind the emphasised word: keeps the pop, keeps the contrast. */
.fdg-hero .fdg-hero__h1 em{font-style:normal;background:var(--fdg-cyan);color:var(--fdg-cyan-ink);padding:0 .1em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.fdg-hero__sub{font-size:1.12rem;color:var(--fdg-ink-soft);max-width:48ch;margin:0 0 30px}

/* Inverted hero — light text on a dark hero. Pairs with a hero photo, whose
   wash then runs toward black instead of white (see inc/dynamic-css.php). */
.fdg-hero--invert{background:var(--fdg-ink);color:#fff}
.fdg-hero--invert::before{background:radial-gradient(115% 85% at 88% 4%,rgba(82,200,229,.26),transparent 58%)}
/* Every piece of hero copy is white on the inverted hero — headline, eyebrow,
   sub-heading, stat figures and stat labels. */
.fdg-hero--invert .fdg-hero__h1{color:#fff}
.fdg-hero--invert .fdg-hero__eyebrow{color:#fff}
.fdg-hero--invert .fdg-hero__sub{color:#fff}
.fdg-hero--invert .fdg-hero__stats{border-top-color:rgba(255,255,255,.35)}
.fdg-hero--invert .fdg-hero__stat strong{color:#fff}
.fdg-hero--invert .fdg-hero__stat span{color:#fff}
.fdg-hero__stats{display:flex;gap:44px;flex-wrap:wrap;margin-top:38px;padding-top:30px;border-top:2px solid var(--fdg-ink)}
.fdg-hero__stat strong{font-family:var(--fdg-display);font-size:clamp(38px,4vw,56px);line-height:1;color:var(--fdg-ink);display:block}
.fdg-hero__stat span{font-family:var(--fdg-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fdg-cyan-deep);margin-top:7px;display:block;font-weight:700}

/* Quick-filter chips ----------------------------------------------------- */
.fdg-chips{background:var(--fdg-bg);border-bottom:1px solid var(--fdg-line)}
.fdg-chips__in{display:flex;gap:9px;overflow-x:auto;padding-top:16px;padding-bottom:16px;scrollbar-width:none;-ms-overflow-style:none}
.fdg-chips__in::-webkit-scrollbar{display:none}
.fdg .fdg-chip{flex:none;font-family:var(--fdg-body);font-size:.82rem;font-weight:600;padding:.6em 1.05em;
	border:1.5px solid var(--fdg-line);border-radius:999px;color:var(--fdg-ink);background:#fff;white-space:nowrap;
	transition:border-color .18s,background .18s,color .18s}
.fdg .fdg-chip:hover{border-color:var(--fdg-cyan);background:#f2fbfe;color:var(--fdg-cyan-ink)}
.fdg .fdg-chip--primary{background:var(--fdg-ink);color:#fff;border-color:var(--fdg-ink)}
.fdg .fdg-chip--primary:hover{background:#24242c;color:#fff;border-color:#24242c}

/* Search card (homepage) ------------------------------------------------- */
.fdg-searchcard{position:relative;max-width:var(--fdg-maxw);margin:-40px auto 0;z-index:5;
	background:#fff;border:1px solid var(--fdg-line);border-radius:var(--fdg-radius-lg);
	padding:16px;box-shadow:var(--fdg-shadow-lg)}
.fdg-herosearch__row{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:18px 10px}
/* .fdg-field is a <label> wrapping the <select> — a layout wrapper only. It must
   NOT take input styling, or the select ends up boxed inside a second box. */
.fdg-field{display:block;min-width:0}
/* Sits below the row as a sibling. The gap has to clear the submit button's
   6px pressed drop shadow, which has no layout height of its own. */
.fdg-herosearch__kw{margin-top:16px}
.fdg-searchform__field,.fdg-herosearch select,.fdg-herosearch input[type="search"]{
	font:inherit;width:100%;padding:.9em 1em;border:1.5px solid var(--fdg-line);border-radius:var(--fdg-radius-sm);
	background:var(--fdg-surface-2);color:var(--fdg-ink)}
.fdg-herosearch input::placeholder{color:var(--fdg-ink-faint)}
.fdg-herosearch select:focus,.fdg-herosearch input:focus{outline:none;border-color:var(--fdg-cyan);background:#fff;box-shadow:0 0 0 3px rgba(82,200,229,.22)}
.fdg-herosearch__go{white-space:nowrap}

/* Sections --------------------------------------------------------------- */
.fdg-section{padding-top:clamp(48px,6vw,88px)}
.fdg-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}
.fdg-section__head h2{font-size:clamp(30px,4vw,50px);text-transform:uppercase;line-height:1.02}
.fdg-section__intro{color:var(--fdg-ink-soft);margin:10px 0 0;max-width:60ch}
.fdg-section__more{font-family:var(--fdg-mono);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fdg-cyan-deep);white-space:nowrap}

/* Browse tiles ----------------------------------------------------------- */
.fdg-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.fdg-tile{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:24px;
	border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);background:#fff;color:var(--fdg-ink);
	text-decoration:none;box-shadow:var(--fdg-shadow);transition:transform .2s var(--fdg-ease),border-color .2s,box-shadow .2s}
.fdg-tile:hover{transform:translateY(-4px);border-color:var(--fdg-cyan);box-shadow:var(--fdg-shadow-lg)}
.fdg-tile__ic{width:46px;height:46px;display:grid;place-items:center;color:var(--fdg-cyan-deep)}
.fdg-tile__ic svg{width:100%;height:100%}
.fdg-tile strong{font-family:var(--fdg-display);font-size:1.15rem;text-transform:uppercase;letter-spacing:.01em}

/* Value props ------------------------------------------------------------ */
.fdg-value{padding-top:clamp(48px,6vw,88px);background:var(--fdg-surface-2);margin-top:clamp(48px,6vw,88px);padding-bottom:clamp(48px,6vw,88px)}
.fdg-value .fdg-value__heading{font-size:clamp(30px,4vw,50px);text-transform:uppercase;line-height:1.02;margin-bottom:30px}
.fdg-value__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fdg-value__item{padding:26px;border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);background:#fff}
.fdg-value__ic{width:48px;height:48px;border-radius:var(--fdg-radius-sm);background:var(--fdg-cyan);color:var(--fdg-cyan-ink);display:grid;place-items:center;margin-bottom:16px;padding:11px}
.fdg-value__ic svg{width:100%;height:100%}
.fdg-value__item h3{font-size:1.25rem;text-transform:uppercase;margin-bottom:8px}
.fdg-value__item p{color:var(--fdg-ink-soft);margin:0;font-size:.95rem}

/* Dealers ---------------------------------------------------------------- */
.fdg-dealers__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.fdg-dealer{display:flex;gap:16px;padding:22px;border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);background:#fff;box-shadow:var(--fdg-shadow);transition:border-color .2s,transform .2s,box-shadow .2s}
.fdg-dealer:hover{border-color:var(--fdg-cyan);transform:translateY(-3px);box-shadow:var(--fdg-shadow-lg)}
.fdg-dealer__badge{flex:none;width:52px;height:52px;border-radius:12px;background:var(--fdg-cyan);color:var(--fdg-cyan-ink);
	display:grid;place-items:center;font-family:var(--fdg-display);font-size:1.5rem}
.fdg-dealer__b{display:flex;flex-direction:column;gap:3px;min-width:0}
.fdg-dealer__b strong{font-size:1.05rem;font-family:var(--fdg-body);font-weight:700}
.fdg-dealer__name{color:var(--fdg-ink)}.fdg-dealer__name:hover{color:var(--fdg-cyan-deep)}
.fdg-dealer__city{color:var(--fdg-ink-soft);font-size:.9rem}
.fdg-dealer__desc{color:var(--fdg-ink-soft);font-size:.86rem;margin-top:4px}
.fdg-award{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-family:var(--fdg-mono);font-size:11px;font-weight:700;
	letter-spacing:.05em;text-transform:uppercase;color:var(--fdg-gold-deep)}
.fdg-award svg{width:14px;height:14px;color:var(--fdg-gold)}
.fdg-dealer__cta{margin-top:10px;font-family:var(--fdg-mono);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--fdg-cyan-deep)}
.fdg-socials{display:flex;gap:8px;margin-top:12px}
.fdg-soc{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:var(--fdg-surface-2);color:var(--fdg-cyan-deep);border:1px solid var(--fdg-line);transition:.18s}
.fdg-soc:hover{background:var(--fdg-cyan);color:var(--fdg-cyan-ink);border-color:var(--fdg-cyan)}
.fdg-soc svg{width:16px;height:16px}

/* Finance band ----------------------------------------------------------- */
.fdg-financeband{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;
	padding:clamp(30px,4vw,54px);border-radius:var(--fdg-radius-lg);
	background:var(--fdg-ink);border:1px solid var(--fdg-ink);position:relative;overflow:hidden}
.fdg-financeband::after{content:"";position:absolute;right:-60px;top:-60px;width:300px;height:300px;
	background:radial-gradient(circle,rgba(82,200,229,.28),transparent 70%);pointer-events:none}
.fdg-financeband h2{font-size:clamp(26px,3.4vw,44px);text-transform:uppercase;line-height:1.04;color:#fff;position:relative}
.fdg-financeband p{color:#b9bdc6;margin:8px 0 0;max-width:52ch;position:relative}
.fdg-financeband .fdg-btn{position:relative}

/* Trust strip ------------------------------------------------------------ */
.fdg-trustwrap{padding-top:26px}
.fdg-trust{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;
	background:var(--fdg-line);border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);overflow:hidden}
.fdg-trust__heading{grid-column:1/-1;background:#fff;color:var(--fdg-ink-soft);font-family:var(--fdg-mono);
	font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:12px 18px;margin:0}
.fdg-trust__i{display:flex;gap:12px;align-items:flex-start;padding:18px;background:#fff}
.fdg-trust--light .fdg-trust__i,.fdg-trust--light .fdg-trust__heading{background:var(--fdg-surface-2)}
.fdg-trust__ic{flex:none;width:34px;height:34px;color:var(--fdg-cyan-deep)}
.fdg-trust__ic svg{width:100%;height:100%}
.fdg-trust__b{display:flex;flex-direction:column;gap:2px}
.fdg-trust__t{font-family:var(--fdg-body);font-weight:700;font-size:.95rem;color:var(--fdg-ink)}
.fdg-trust__s{font-size:.84rem;color:var(--fdg-ink-soft)}
.fdg-trust__i--trust .fdg-trust__ic{color:var(--fdg-trust)}
.fdg-trust__i--gold .fdg-trust__ic{color:var(--fdg-gold-deep)}

/* Trust panel (decision pages) ------------------------------------------- */
.fdg-tpanel{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:22px 0}
.fdg-tpanel__i{padding:20px;border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);background:#fff;text-align:center;box-shadow:var(--fdg-shadow)}
.fdg-tpanel__ic{width:40px;height:40px;margin:0 auto 10px;color:var(--fdg-cyan-deep)}
.fdg-tpanel__ic svg{width:100%;height:100%}

/* Footer ----------------------------------------------------------------- */
/* Light footer: the FDG mark reads as uploaded, so footer.php's Site Identity
   fallback no longer needs a white knock-out. */
.fdg-footer{background:var(--fdg-surface-2);color:var(--fdg-ink-soft);margin-top:clamp(56px,7vw,100px);border-top:1px solid var(--fdg-line)}
.fdg-footer__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px;padding-top:56px;padding-bottom:40px}
.fdg-footer__brand{max-width:34ch}
.fdg-footer__logo{max-height:46px;width:auto;margin-bottom:16px}
/* The footer background is light. The fallback uses the header logo (often a
   white/knockout version), so darken it here so it's readable. A dedicated
   footer logo uploaded in the Customizer is shown exactly as-is. */
.fdg-footer__logo:not(.fdg-footer__logo--custom){filter:brightness(0) saturate(100%)}
.fdg-footer__logo--custom{filter:none}
.fdg-footer__name{font-family:var(--fdg-display);font-size:1.6rem;text-transform:uppercase;color:var(--fdg-ink);margin-bottom:14px}
.fdg-footer__about{font-size:.9rem;line-height:1.6}
.fdg-footer__col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.fdg-footer__col h3,.fdg-footer__col h4{font-family:var(--fdg-mono);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fdg-ink);margin:0 0 6px}
.fdg-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.fdg-footer__col li{list-style:none}
.fdg-footer__col a{display:block;color:var(--fdg-ink-soft);font-size:.92rem}
.fdg-footer__col a:hover{color:var(--fdg-cyan-deep)}
.fdg-footer__social{display:flex;gap:10px;margin-top:18px}
.fdg-footer__legal{border-top:1px solid var(--fdg-line);padding-top:22px;padding-bottom:30px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.82rem;color:var(--fdg-ink-faint)}
.fdg-footer__legal a{color:var(--fdg-ink-faint)}
.fdg-footer__legal a:hover{color:var(--fdg-cyan-deep)}

/* Pages / prose ---------------------------------------------------------- */
.fdg-page{padding-top:40px}
.fdg-page__head{padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid var(--fdg-line)}
.fdg-page__title{font-size:clamp(34px,5vw,68px);text-transform:uppercase;line-height:1.02}
.fdg-page__title--foot{font-size:clamp(24px,3vw,38px)}
.fdg-inventory__foot{padding-top:12px;padding-bottom:48px;border-top:1px solid var(--fdg-line);margin-top:28px}
.fdg-inventory__intro{max-width:70ch;color:var(--fdg-ink-soft)}
.fdg-prose{color:var(--fdg-ink);line-height:1.7;max-width:72ch}
.fdg-prose h2{font-size:1.9rem;text-transform:uppercase;margin:1.4em 0 .5em}
.fdg-prose h3{font-size:1.3rem;margin:1.3em 0 .4em}
.fdg-prose a{color:var(--fdg-cyan-deep);text-decoration:underline}
.fdg-crumbs{font-family:var(--fdg-mono);font-size:12px;letter-spacing:.04em;color:var(--fdg-ink-faint);padding:18px 0}
.fdg-crumbs a{color:var(--fdg-ink-soft)}
.fdg-crumbs__sep{margin:0 8px;opacity:.5}
.fdg-notice{padding:40px;text-align:center;color:var(--fdg-ink-soft);border:1px dashed var(--fdg-line);border-radius:var(--fdg-radius);margin:30px auto;max-width:var(--fdg-maxw)}

/* Blog list -------------------------------------------------------------- */
.fdg-postlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:30px 0}
.fdg-postcard{border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);overflow:hidden;background:#fff;box-shadow:var(--fdg-shadow);transition:transform .2s,border-color .2s,box-shadow .2s}
.fdg-postcard:hover{transform:translateY(-4px);border-color:var(--fdg-cyan);box-shadow:var(--fdg-shadow-lg)}
.fdg-postcard__thumb{aspect-ratio:16/9;background:var(--fdg-surface-2);overflow:hidden}
.fdg-postcard__thumb img{width:100%;height:100%;object-fit:cover}
.fdg-postcard__title{font-size:1.2rem;padding:16px 18px 0}
.fdg-postcard__meta{font-family:var(--fdg-mono);font-size:11px;letter-spacing:.05em;color:var(--fdg-ink-faint);padding:8px 18px}
.fdg-postcard__excerpt{padding:0 18px 18px;color:var(--fdg-ink-soft);font-size:.92rem}
.fdg-pagelinks{display:flex;gap:8px;justify-content:center;padding:30px 0}
.fdg-pagelinks .page-numbers{display:inline-grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--fdg-line);border-radius:999px;color:var(--fdg-ink);font-family:var(--fdg-mono);font-size:14px;background:#fff}
.fdg-pagelinks .page-numbers.current{background:var(--fdg-ink);color:#fff;border-color:var(--fdg-ink)}

/* Forms (contact / approve / faq) --------------------------------------- */
.fdg-cform__row input,.fdg-cform__row select,.fdg-cform__row textarea,.fdg-contact__form input,.fdg-contact__form select,.fdg-contact__form textarea{
	font:inherit;width:100%;padding:.9em 1em;border:1.5px solid var(--fdg-line);border-radius:var(--fdg-radius-sm);background:#fff;color:var(--fdg-ink)}
.fdg-cform__row input:focus,.fdg-cform__row textarea:focus,.fdg-cform__row select:focus,.fdg-contact__form input:focus,.fdg-contact__form textarea:focus{outline:none;border-color:var(--fdg-cyan);box-shadow:0 0 0 3px rgba(82,200,229,.2)}
.fdg-cform__row{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-bottom:14px}
.fdg-cform__msg{grid-column:1/-1}
.fdg-contact__stores{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.fdg-contact__stores .fdg-contact__h2{grid-column:1 / -1;margin-top:0}
.fdg-contact__store{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);background:#fff;box-shadow:var(--fdg-shadow)}
.fdg-contact__store-name{font-size:1.08rem}
.fdg-contact__store-addr{color:var(--fdg-ink-soft);font-size:.9rem;line-height:1.4}
.fdg-contact__store-links{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.92rem}
.fdg-contact__store-links a{color:var(--fdg-accent-deep);text-decoration:none;font-weight:600}
.fdg-contact__store-links a:hover{color:var(--fdg-brand)}
/* Embedded store map */
.fdg-storemap{position:relative;width:100%;height:var(--fdg-storemap-h,160px);border-radius:10px;overflow:hidden;border:1px solid var(--fdg-line);background:var(--fdg-surface-2)}
.fdg-storemap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.fdg-faq__list{display:flex;flex-direction:column;gap:12px}
.fdg-faq__item{border:1px solid var(--fdg-line);border-radius:var(--fdg-radius);background:#fff;padding:18px 20px}
.fdg-faq__title{font-family:var(--fdg-body);font-weight:700;font-size:1.05rem;color:var(--fdg-ink);margin:0 0 6px}
.fdg-faq__a{color:var(--fdg-ink-soft);margin:0}
.fdg-approve{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:start;padding-top:36px}

/* 404 -------------------------------------------------------------------- */
.fdg-404{text-align:center;padding:80px 0}
.fdg-404 .fdg-page__title{font-size:clamp(80px,16vw,220px);color:var(--fdg-cyan);line-height:.8}
.fdg-404__cta{display:flex;gap:12px;justify-content:center;margin-top:26px;flex-wrap:wrap}

/* SEO footer links (theme fallback) ------------------------------------- */
.fdg-seofooter{padding-top:30px;padding-bottom:30px;border-top:1px solid var(--fdg-line);margin-top:30px}

/* Responsive ------------------------------------------------------------- */
@media(max-width:1024px){
	.fdg-tiles,.fdg-value__grid{grid-template-columns:repeat(2,1fr)}
	.fdg-herosearch__row{grid-template-columns:repeat(2,1fr)}
	.fdg-herosearch__go{grid-column:1/-1}
	.fdg-footer__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
	.fdg-navtoggle{display:flex}
	.fdg-header{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
	.fdg-nav{position:fixed;top:var(--fdg-nav-top,72px);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;
		background:#fff;border-bottom:1px solid var(--fdg-line);padding:12px var(--fdg-gutter) 0;
		margin:0;z-index:49;box-shadow:var(--fdg-shadow-lg);max-height:85vh;overflow-y:auto;
		visibility:hidden;opacity:0;transform:translateY(-10px);
		transition:opacity .22s ease,transform .22s ease,visibility .22s;pointer-events:none}
	.fdg-nav.is-open{visibility:visible;opacity:1;transform:none;pointer-events:auto}
	.fdg-menu{flex-direction:column;gap:2px}
	.fdg-menu a{display:block;padding:12px 0;border-bottom:1px solid var(--fdg-line-soft)}
	.fdg-nav__cta{flex-direction:column;align-items:stretch;gap:12px;
		margin:18px calc(-1 * var(--fdg-gutter)) 0;
		padding:20px var(--fdg-gutter) 22px;
		background:color-mix(in srgb, var(--fdg-cyan) 16%, #fff);
		background:rgba(82,200,229,.16)}
	.fdg-hsearch{order:-1;max-width:none;margin:0 0 10px}
	.fdg-approve{grid-template-columns:1fr}
	.fdg-cform__row{grid-template-columns:1fr}
	.fdg-hero__stats{gap:28px}
}
@media(max-width:560px){
	.fdg-tiles,.fdg-value__grid,.fdg-footer__grid{grid-template-columns:1fr}
	.fdg-herosearch__row{grid-template-columns:1fr}
}

/* ============================================================
   Get Approved (financing) page
   ============================================================ */
.fdg-approve-hero{
	background:var(--fdg-ink);color:#fff;position:relative;overflow:hidden;
	padding:clamp(48px,7vw,88px) 0 clamp(40px,6vw,72px);
}
.fdg-approve-hero::before{
	content:"";position:absolute;inset:0;
	background:radial-gradient(120% 90% at 90% 0%,rgba(82,200,229,.28),transparent 60%);
	pointer-events:none;
}
.fdg-approve-hero__inner{position:relative;max-width:760px}
.fdg-approve-hero__eyebrow{
	display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
	color:var(--fdg-accent);margin-bottom:14px;
}
.fdg-approve-hero__title{
	font-size:clamp(2.1rem,5vw,3.4rem);line-height:1.05;margin:0 0 18px;color:#fff;
}
.fdg-approve-hero__intro{font-size:clamp(1.02rem,1.6vw,1.2rem);line-height:1.55;color:rgba(255,255,255,.9);margin:0 0 26px;max-width:640px}
.fdg-approve-hero__intro p{margin:0 0 12px}
.fdg-approve-hero__points{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:30px}
.fdg-approve-hero__point{display:inline-flex;align-items:center;gap:9px;font-size:.95rem;font-weight:600;color:#fff}
.fdg-approve-hero__point svg{width:20px;height:20px;flex:none;color:var(--fdg-accent)}
.fdg-approve-hero__cta{font-size:1.05rem;padding:14px 30px}

/* How it works */
.fdg-approve-steps{
	display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:step;
}
.fdg-approve-step{
	background:var(--fdg-surface);border:1px solid var(--fdg-line);border-radius:16px;
	padding:26px 24px;position:relative;
}
.fdg-approve-step__n{
	display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
	background:var(--fdg-accent);color:var(--fdg-ink);font-weight:800;font-size:1.05rem;margin-bottom:14px;
}
.fdg-approve-step h3{font-size:1.12rem;margin:0 0 8px}
.fdg-approve-step p{margin:0;color:var(--fdg-ink-soft);font-size:.95rem;line-height:1.5}

/* Section headers on the page */
.fdg-approve-sechead{text-align:center;max-width:560px;margin:0 auto 30px}
.fdg-approve-sechead h2{font-size:clamp(1.6rem,3.2vw,2.2rem);margin:0 0 8px}
.fdg-approve-sechead p{margin:0;color:var(--fdg-ink-soft)}

/* Apply grid */
.fdg-approve-grid{
	display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;
}
.fdg-approve-card{
	display:flex;flex-direction:column;background:var(--fdg-surface);
	border:1px solid var(--fdg-line);border-radius:16px;overflow:hidden;
	transition:transform .14s ease,box-shadow .18s ease,border-color .18s ease;
}
.fdg-approve-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,0,0,.10);border-color:var(--fdg-accent)}
.fdg-approve-card__body{padding:24px 22px 8px;flex:1}
.fdg-approve-card__name{font-size:1.22rem;margin:0 0 6px}
.fdg-approve-card__city{display:flex;align-items:center;gap:6px;color:var(--fdg-ink-soft);font-size:.9rem;margin:0 0 12px}
.fdg-approve-card__city svg{width:15px;height:15px;flex:none;opacity:.7}
.fdg-approve-card__desc{margin:0;color:var(--fdg-ink-soft);font-size:.95rem;line-height:1.5}
.fdg-approve-card__foot{padding:16px 22px 22px;display:flex;flex-direction:column;gap:12px}
.fdg-approve-card__soon{font-size:.9rem;color:var(--fdg-ink-soft);text-align:center;padding:10px;background:var(--fdg-surface-2);border-radius:10px}
.fdg-approve-card__phone{display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--fdg-brand);font-weight:600;text-decoration:none;font-size:1rem}
.fdg-approve-card__phone svg{width:16px;height:16px;flex:none}
.fdg-approve-card__phone:hover{color:var(--fdg-accent-deep)}

/* Reassurance block */
.fdg-approve-reassure{
	text-align:center;max-width:720px;margin:0 auto 36px;
}
.fdg-approve-reassure h2{font-size:clamp(1.5rem,3vw,2rem);margin:0 0 12px}
.fdg-approve-reassure p{margin:0;color:var(--fdg-ink-soft);font-size:1.05rem;line-height:1.6}

.fdg-approve-trust{margin-top:8px}

/* Disclaimer */
.fdg-approve-disclaimer{
	font-size:.82rem;line-height:1.5;color:var(--fdg-ink-soft);
	max-width:820px;margin:0 auto;text-align:center;opacity:.85;
}

@media (max-width:720px){
	.fdg-approve-steps{grid-template-columns:1fr}
}

/* Hero background photo (randomly chosen per page load from up to 5 slots) */
.fdg-hero--photo .fdg-hero__photo{
	position:absolute;inset:0;z-index:0;pointer-events:none;
	background-image:var(--fdg-hero-photo);
	background-size:cover;background-position:center;
}
/* Wash layer keeps the headline readable: fades toward the hero background
   colour. Light hero (dark text) washes toward white; inverted hero (light
   text) washes toward the dark ink. --fdg-hero-wash sets the strength. */
.fdg-hero--photo .fdg-hero__photo::after{
	content:"";position:absolute;inset:0;
	background:rgba(255,255,255,.55);
	background:linear-gradient(0deg,
		color-mix(in srgb, var(--fdg-bg) var(--fdg-hero-wash, 55%), transparent),
		color-mix(in srgb, var(--fdg-bg) var(--fdg-hero-wash, 55%), transparent));
}
.fdg-hero--photo.fdg-hero--invert .fdg-hero__photo::after{
	background:rgba(11,11,13,.55);
	background:linear-gradient(0deg,
		color-mix(in srgb, var(--fdg-ink) var(--fdg-hero-wash, 55%), transparent),
		color-mix(in srgb, var(--fdg-ink) var(--fdg-hero-wash, 55%), transparent));
}
/* Keep the hero content above the photo + wash */
.fdg-hero__in{position:relative;z-index:2}
.fdg-hero__swoosh{position:relative;z-index:1}

/* ============================================================
   About page
   ============================================================ */
.fdg-about-hero{
	background:var(--fdg-ink);color:#fff;position:relative;overflow:hidden;
	padding:clamp(52px,7vw,92px) 0 clamp(44px,6vw,72px);
}
.fdg-about-hero::before{
	content:"";position:absolute;inset:0;
	background:radial-gradient(120% 90% at 88% 0%,rgba(82,200,229,.26),transparent 60%);
	pointer-events:none;
}
.fdg-about-hero__in{position:relative;max-width:760px}
.fdg-about-hero__eyebrow{
	display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
	color:var(--fdg-accent);margin-bottom:14px;
}
.fdg-about-hero__title{font-size:clamp(2.2rem,5.2vw,3.6rem);line-height:1.04;margin:0 0 16px;color:#fff}
.fdg-about-hero__intro{font-size:clamp(1.05rem,1.7vw,1.28rem);line-height:1.5;color:rgba(255,255,255,.9);margin:0;max-width:620px}

/* Stats band overlapping the hero bottom */
.fdg-about-statsband{margin-top:clamp(-40px,-4vw,-28px);position:relative;z-index:3}
.fdg-about-stats{
	display:grid;grid-template-columns:repeat(3,1fr);gap:0;
	background:var(--fdg-surface);border:1px solid var(--fdg-line);border-radius:18px;
	box-shadow:0 12px 30px rgba(0,0,0,.08);overflow:hidden;
}
.fdg-about-stat{
	text-align:center;padding:26px 18px;border-right:1px solid var(--fdg-line);
}
.fdg-about-stat:last-child{border-right:none}
.fdg-about-stat strong{display:block;font-size:clamp(1.7rem,3.4vw,2.4rem);line-height:1;color:var(--fdg-accent-deep);font-weight:800}
.fdg-about-stat span{display:block;margin-top:6px;font-size:.9rem;color:var(--fdg-ink-soft)}

/* Body prose */
.fdg-about-body__prose{max-width:760px;font-size:1.06rem;line-height:1.7}
.fdg-about-body__prose p{margin:0 0 18px}
.fdg-about-body__prose h2,.fdg-about-body__prose h3{margin:32px 0 12px}

/* Value cards */
.fdg-about-values{
	display:grid;grid-template-columns:repeat(3,1fr);gap:22px;
}
.fdg-about-value{
	background:var(--fdg-surface);border:1px solid var(--fdg-line);border-radius:16px;
	padding:28px 24px;transition:transform .14s ease,box-shadow .18s ease,border-color .18s ease;
}
.fdg-about-value:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.09);border-color:var(--fdg-accent)}
.fdg-about-value__ic{
	display:grid;place-items:center;width:52px;height:52px;border-radius:14px;
	background:rgba(82,200,229,.14);color:var(--fdg-accent-deep);margin-bottom:16px;
}
.fdg-about-value__ic svg{width:26px;height:26px}
.fdg-about-value h3{font-size:1.2rem;margin:0 0 8px}
.fdg-about-value p{margin:0;color:var(--fdg-ink-soft);line-height:1.55}

@media (max-width:760px){
	.fdg-about-stats{grid-template-columns:1fr}
	.fdg-about-stat{border-right:none;border-bottom:1px solid var(--fdg-line)}
	.fdg-about-stat:last-child{border-bottom:none}
	.fdg-about-values{grid-template-columns:1fr}
}

/* Dealer logo support on dealer cards */
.fdg-dealer__badge--logo{
	background:#fff;border:1px solid var(--fdg-line);padding:6px;overflow:hidden;
}
.fdg-dealer__badge--logo img{
	width:100%;height:100%;object-fit:contain;display:block;
}
/* Get Approved card logo */
.fdg-approve-card__logo{display:block;margin-bottom:10px}
.fdg-approve-card__logo img{max-height:44px;width:auto;max-width:70%;object-fit:contain;display:block}
/* Contact store card logo */
.fdg-contact__store-logo{display:block}
.fdg-contact__store-logo img{max-height:38px;width:auto;max-width:65%;object-fit:contain;display:block}

/* Dealer card phone line (replaces the old blurb) */
.fdg-dealer__phone{
	display:inline-flex;align-items:center;gap:6px;
	color:var(--fdg-ink-soft);font-size:.95rem;text-decoration:none;font-weight:600;margin-top:2px;
}
.fdg-dealer__phone svg{width:15px;height:15px;flex:none;opacity:.75}
.fdg-dealer__phone:hover{color:var(--fdg-brand)}

/* ============================================================
   Contact page
   ============================================================ */
.fdg-contact-hero{
	background:var(--fdg-ink);color:#fff;position:relative;overflow:hidden;
	padding:clamp(46px,6vw,80px) 0 clamp(38px,5vw,64px);
}
.fdg-contact-hero::before{
	content:"";position:absolute;inset:0;
	background:radial-gradient(120% 90% at 88% 0%,rgba(82,200,229,.26),transparent 60%);
	pointer-events:none;
}
.fdg-contact-hero__in{position:relative;max-width:720px}
.fdg-contact-hero__eyebrow{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fdg-accent);margin-bottom:12px}
.fdg-contact-hero__title{font-size:clamp(2rem,4.6vw,3.1rem);line-height:1.05;margin:0 0 14px;color:#fff}
.fdg-contact-hero__intro{font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.5;color:rgba(255,255,255,.9);margin:0;max-width:600px}

/* Two-column layout: form + stores */
.fdg-contact{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}
.fdg-contact__h2{font-size:1.4rem;margin:0 0 18px}

/* Form panel as a card */
.fdg-contact__form{
	background:var(--fdg-surface);border:1px solid var(--fdg-line);border-radius:18px;
	padding:clamp(22px,3vw,32px);box-shadow:0 8px 26px rgba(0,0,0,.06);
}
.fdg-cform__row input,.fdg-cform__row select,.fdg-cform__row textarea,
.fdg-contact__form input,.fdg-contact__form select,.fdg-contact__form textarea{
	width:100%;padding:12px 14px;border:1px solid var(--fdg-line);border-radius:10px;
	font:inherit;font-size:.98rem;background:#fff;color:var(--fdg-ink);
}
.fdg-contact__form textarea{margin-bottom:14px;resize:vertical}
.fdg-contact__form .fdg-btn{width:100%;padding:14px;font-size:1rem}
.fdg-hp{position:absolute!important;left:-9999px!important}
.fdg-cform__msg{margin:14px 0 0;font-size:.92rem}
.fdg-cform__msg.is-ok{color:var(--fdg-trust,#1a7f4b)}
.fdg-cform__msg.is-err{color:#c0392b}

/* Form sits alone full-width; stores show two-per-row below, one-up on phones. */
@media (max-width:640px){
	.fdg-contact__stores{grid-template-columns:1fr}
}


/* Page hero titles sit on a dark background — force white text with enough
   specificity to beat the global `.fdg h1,h2,... { color: var(--fdg-ink) }` rule. */
.fdg .fdg-approve-hero__title,
.fdg .fdg-about-hero__title,
.fdg .fdg-contact-hero__title{color:#fff}
.fdg .fdg-approve-hero__eyebrow,
.fdg .fdg-about-hero__eyebrow,
.fdg .fdg-contact-hero__eyebrow{color:var(--fdg-accent)}

/* ============================================================
   Trade-in form
   ============================================================ */
.fdg-trade{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:22px}
.fdg-trade__group{
	background:var(--fdg-surface);border:1px solid var(--fdg-line);border-radius:18px;
	padding:clamp(26px,3.4vw,36px) clamp(20px,3vw,30px);box-shadow:0 8px 26px rgba(0,0,0,.05);
}
.fdg-trade__h{font-size:1.25rem;margin:0;padding:6px 0 22px;border-bottom:1px solid var(--fdg-line-soft);margin-bottom:22px}
.fdg-trade__hint{margin:-6px 0 16px;color:var(--fdg-ink-soft);font-size:.92rem;line-height:1.45}
.fdg-trade__row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.fdg-trade__row--3{grid-template-columns:1fr 1fr 1fr}
.fdg-trade__row:last-child{margin-bottom:0}
.fdg-trade input,.fdg-trade select,.fdg-trade textarea{
	width:100%;padding:12px 14px;border:1px solid var(--fdg-line);border-radius:10px;
	font:inherit;font-size:.98rem;background:#fff;color:var(--fdg-ink);
}
.fdg-trade textarea{resize:vertical}
.fdg-trade input:focus,.fdg-trade select:focus,.fdg-trade textarea:focus{
	outline:none;border-color:var(--fdg-cyan);box-shadow:0 0 0 3px rgba(82,200,229,.2);
}

/* Photo uploads */
.fdg-trade__uploads{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fdg-trade__upload{display:block;cursor:pointer}
.fdg-trade__upload-label{display:block;font-weight:600;font-size:.92rem;margin-bottom:8px}
.fdg-trade__upload input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.fdg-trade__drop{
	display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
	text-align:center;padding:26px 16px;border:2px dashed var(--fdg-line);border-radius:14px;
	color:var(--fdg-ink-soft);font-size:.92rem;background:var(--fdg-surface-2);transition:border-color .15s,color .15s;
}
.fdg-trade__upload:hover .fdg-trade__drop,
.fdg-trade__upload input:focus + .fdg-trade__drop{border-color:var(--fdg-cyan);color:var(--fdg-accent-deep)}
.fdg-trade__drop svg{width:26px;height:26px;opacity:.6}

/* Consent */
.fdg-trade__consent{
	display:flex;gap:11px;align-items:flex-start;margin-top:16px;
	font-size:.92rem;line-height:1.45;color:var(--fdg-ink);cursor:pointer;
}
.fdg-trade__consent input{width:18px;height:18px;flex:none;margin-top:2px;accent-color:var(--fdg-accent-deep)}

.fdg-trade__submit{width:100%;padding:15px;font-size:1.02rem}
.fdg-trade__msg{margin:0;font-size:.95rem;text-align:center}
.fdg-trade__msg.is-ok{color:var(--fdg-trust,#1a7f4b)}
.fdg-trade__msg.is-err{color:#c0392b}

@media (max-width:620px){
	.fdg-trade__row,.fdg-trade__row--3,.fdg-trade__uploads{grid-template-columns:1fr}
}

/* Homepage entity blurb + FAQ (SEO/AEO) */
.fdg-entity { max-width: 900px; }
.fdg-entity__text { font-size: 1.05rem; line-height: 1.6; color: var(--fdg-ink-soft); margin: 0; }
.fdg-faq-wrap .fdg-faq { max-width: 860px; margin: 0 auto; }
.fdg-faq__title { font-size: clamp(24px, 3vw, 34px); margin: 0 0 18px; }
.fdg-faq__list { display: flex; flex-direction: column; gap: 10px; }
.fdg-faq__item { border: 1px solid var(--fdg-line); border-radius: 12px; background: #fff; padding: 2px 18px; }
.fdg-faq__item summary { cursor: pointer; font-weight: 600; padding: 14px 0; list-style: none; }
.fdg-faq__item summary::-webkit-details-marker { display: none; }
.fdg-faq__item[open] summary { color: var(--fdg-cyan-deep); }
.fdg-faq__a { padding: 0 0 16px; color: var(--fdg-ink-soft); line-height: 1.6; }

/* ---------------------------------------------------------------- */
/* Accessibility (WCAG 2.1 AA)                                       */
/* ---------------------------------------------------------------- */
:root { --fdg-input-border: #767e8b; }
/* Visible keyboard focus on every interactive control (>=3:1 on light and dark). */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible,
.fdg-navtoggle:focus-visible {
	outline: 2px solid var(--fdg-cyan-deep, #0c7a99);
	outline-offset: 2px;
	border-radius: 3px;
}
/* Form controls need a >=3:1 border so their boundary is perceivable. */
input:not([type=checkbox]):not([type=radio]):not([type=range]),
select, textarea { border-color: var(--fdg-input-border); }
/* Honor a user's reduced-motion setting. */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}
}

/* ---------------------------------------------------------------- */
/* Header mobile tap-to-call (visible when the nav is collapsed)     */
/* ---------------------------------------------------------------- */
.fdg-header__callmobile{display:none;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;color:var(--fdg-ink);margin-left:auto}
.fdg-header__callmobile .fdg-ic{width:20px;height:20px}
@media (max-width:860px){
	.fdg-header__callmobile{display:inline-flex}
}

/* ---------------------------------------------------------------- */
/* Sticky mobile call/text bar (fixed -> no layout shift)           */
/* ---------------------------------------------------------------- */
.fdg-mobilebar{display:none}
@media (max-width:860px){
	.fdg-mobilebar{
		display:grid;grid-template-columns:1fr 1fr;gap:0;
		position:fixed;left:0;right:0;bottom:0;z-index:1000;
		background:var(--fdg-ink);box-shadow:0 -2px 12px rgba(0,0,0,.18);
		padding-bottom:env(safe-area-inset-bottom,0);
	}
	.fdg-mobilebar__btn{
		display:flex;align-items:center;justify-content:center;gap:8px;
		padding:14px 8px;font-family:var(--fdg-body);font-weight:700;font-size:15px;
		color:#fff;text-decoration:none;line-height:1;min-height:52px;
	}
	.fdg-mobilebar__btn .fdg-ic{width:19px;height:19px}
	.fdg-mobilebar__call{background:var(--fdg-cyan-deep,#0c7a99)}
	.fdg-mobilebar__text{background:transparent;color:#fff}
	.fdg-mobilebar__call{color:#fff}
	/* Beat the global ".fdg a" link color so the Call link's text + icon stay white on the cyan button. */
	.fdg-mobilebar .fdg-mobilebar__btn,
	.fdg-mobilebar .fdg-mobilebar__btn:hover,
	.fdg-mobilebar .fdg-mobilebar__btn:visited{color:#fff}
	/* Reserve space so the fixed bar never covers content (set up front = no CLS). */
	body.fdg{padding-bottom:52px}
}

/* ---------------------------------------------------------------- */
/* CLS: metric-matched fallback for the body font so the web-font    */
/* swap doesn't reflow text. Values tuned for DM Sans over Arial.    */
/* ---------------------------------------------------------------- */
@font-face{
	font-family:"DM Sans Fallback";
	src:local("Arial");
	ascent-override:92.8%;
	descent-override:29%;
	line-gap-override:0%;
	size-adjust:100.06%;
}

/* Footer store NAP block (name / full address / tap-to-call) */
.fdg-footer__store{margin:0 0 14px;line-height:1.45}
.fdg-footer__storename{display:block;font-weight:700}
.fdg-footer__storeaddr{display:block;font-size:13px;opacity:.8}
.fdg-footer__storephone{display:inline-block;margin-top:2px;font-family:var(--fdg-mono);font-weight:700;font-size:13px}

/* ---------------------------------------------------------------- */
/* Multi-store call/text chooser (used in header + mobile bar)      */
/* ---------------------------------------------------------------- */
.fdg-callmenu{position:relative}
.fdg-callmenu>summary{list-style:none;cursor:pointer}
.fdg-callmenu>summary::-webkit-details-marker{display:none}
.fdg-callmenu__caret{display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;margin-left:6px;vertical-align:middle}
.fdg-callmenu__pop{position:absolute;z-index:1100;min-width:236px;list-style:none;margin:0;padding:6px;
	background:#fff;border:1px solid var(--fdg-line);border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.17)}
.fdg-callmenu__pop li{margin:0}
.fdg-callmenu__pop a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-radius:8px;color:var(--fdg-ink);text-decoration:none}
.fdg-callmenu__pop a:hover,.fdg-callmenu__pop a:focus-visible{background:var(--fdg-surface-2,#f6f7f9)}
.fdg-callmenu__store{font-family:var(--fdg-body);font-weight:600;font-size:14px}
.fdg-callmenu__num{font-family:var(--fdg-mono);font-weight:700;font-size:13px;color:var(--fdg-cyan-deep,#0c7a99);white-space:nowrap}
/* Header: drop down, right-aligned under the trigger */
.fdg-callmenu--header .fdg-callmenu__pop,
.fdg-callmenu--headermobile .fdg-callmenu__pop{top:calc(100% + 8px);right:0}
/* Mobile bar: each chooser fills its grid cell; menu pops UP above the bar */
.fdg-mobilebar>.fdg-callmenu--bar{display:flex}
.fdg-mobilebar>.fdg-callmenu--bar>summary{flex:1}
.fdg-callmenu--bar .fdg-callmenu__pop{bottom:calc(100% + 8px);left:8px;right:8px;min-width:0}

/* VDP sticky bar: Check Availability button (secondary, transparent) */
@media (max-width:860px){
	.fdg-mobilebar__check{background:transparent;color:#fff;font-size:13.5px}
	.fdg-mobilebar__btn{white-space:nowrap}
}
