/*
 * Friday Night Cars 1.3: visual system.
 *
 * One theme for the whole site (night drive), one type family at two widths
 * (Archivo: extra-wide for display, normal for reading), one accent (sodium
 * streetlight amber), one corner radius. Loaded after every other stylesheet,
 * so these rules define the final look.
 */

:root {
	--ds-base: var(--fnc-bg, #0E1115);
	--ds-raised: #151A20;
	--ds-deep: #0A0C10;
	--ds-line: #262D36;
	--ds-text: var(--fnc-text, #E6E8EB);
	--ds-muted: #98A1AC;
	--ds-accent: var(--fnc-accent, #DDA046);
	--ds-radius: 3px;
	--ds-wide: 118%;
	--ds-wdth: 118;
	--ds-ease: cubic-bezier(.22, .8, .2, 1);
	--ds-shadow: 0 24px 48px -24px rgba(4, 6, 9, .75);

	/* Legacy tokens used by earlier stylesheets, mapped onto the dark system. */
	--fnc-white: var(--ds-raised);
	--fnc-line: var(--ds-line);
	--fnc-muted: var(--ds-muted);
	--fnc-radius: var(--ds-radius);
	--fnc-header-h: 72px;
	color-scheme: dark;
}

/* Base ----------------------------------------------------------------- */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
	background: var(--ds-base);
	color: var(--ds-text);
	font-family: var(--fnc-font-body);
	font-size: 1.0625rem;
	line-height: 1.65;
	font-variant-numeric: tabular-nums;
}
h1, h2, h3, h4 {
	font-family: var(--fnc-font-head);
	font-stretch: var(--ds-wide);
	font-variation-settings: "wdth" var(--ds-wdth);
	font-weight: 700;
	letter-spacing: -.02em;
	line-height: 1.04;
	text-wrap: balance;
	color: var(--ds-text);
}
p, li { text-wrap: pretty; }
a:hover { text-decoration-color: var(--ds-accent); }
:focus-visible { outline: 2px solid var(--ds-accent); outline-offset: 3px; }
::selection { background: var(--ds-accent); color: var(--ds-deep); }

/* One theme: section tones are tonal steps of the same night palette. */
.fnc-tone--light, .fnc-tone--white, .fnc-tone--dark { color: var(--ds-text); --fnc-muted: var(--ds-muted); --fnc-line: var(--ds-line); }
.fnc-tone--light { background: var(--ds-base); }
.fnc-tone--white { background: #11151A; }
.fnc-tone--dark { background: var(--ds-deep); }
.fnc-tone--dark h1, .fnc-tone--dark h2, .fnc-tone--dark h3 { color: var(--ds-text); }

/* Labels above headings: sentence case, only where the content supplies one. */
.fnc-eyebrow, .fnc-tone--dark .fnc-eyebrow, .fnc-eyebrow--light {
	display: block;
	margin: 0 0 .75rem;
	font-family: var(--fnc-font-body);
	font-size: .98rem;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	color: var(--ds-accent);
}
.fnc-eyebrow::before { content: none; }

/* Buttons and links ---------------------------------------------------- */
.fnc-btn {
	min-height: 48px;
	padding: .75rem 1.4rem;
	border-radius: var(--ds-radius);
	font-family: var(--fnc-font-body);
	font-weight: 600;
	letter-spacing: .005em;
	transition: background-color .22s var(--ds-ease), color .22s var(--ds-ease), border-color .22s var(--ds-ease), transform .12s var(--ds-ease);
	white-space: nowrap;
}
.fnc-btn:active { transform: translateY(1px); }
.fnc-btn--accent { background: var(--ds-accent); color: var(--ds-deep); }
.fnc-btn--accent:hover { background: color-mix(in srgb, var(--ds-accent) 86%, #fff); }
.fnc-btn--dark, .fnc-tone--dark .fnc-card .fnc-btn--dark { background: var(--ds-text); color: var(--ds-deep); }
.fnc-btn--dark:hover { background: #fff; }
.fnc-btn--ghost, .fnc-btn--line { background: transparent; color: var(--ds-text); border: 1px solid #3A434E; }
.fnc-btn--ghost:hover, .fnc-btn--line:hover { border-color: var(--ds-text); color: var(--ds-text); }
.fnc-btn--lg { min-height: 54px; padding: .9rem 1.7rem; }
.fnc-textlink {
	display: inline-flex; align-items: center; min-height: 48px; padding: 0 .25rem;
	color: var(--ds-text); font-weight: 600; text-decoration: underline;
	text-decoration-color: var(--ds-accent); text-decoration-thickness: 2px; text-underline-offset: .35em;
}
.fnc-textlink:hover { color: var(--ds-accent); }
.fnc-link { color: var(--ds-text); text-decoration-color: var(--ds-accent); }
.fnc-link:hover { color: var(--ds-accent); }
.fnc-round { background: var(--ds-raised); border-color: #3A434E; color: var(--ds-text); border-radius: var(--ds-radius); }
.fnc-round:hover { background: var(--ds-accent); border-color: var(--ds-accent); color: var(--ds-deep); }

/* Header --------------------------------------------------------------- */
.fnc-header {
	background: rgba(14, 17, 21, .88);
	-webkit-backdrop-filter: saturate(140%) blur(14px);
	backdrop-filter: saturate(140%) blur(14px);
	border-bottom: 1px solid rgba(38, 45, 54, .8);
}
.fnc-header__inner { min-height: var(--fnc-header-h); gap: 2rem; }
.fnc-nav__list a { font-weight: 500; color: #C9CED5; border-radius: var(--ds-radius); position: relative; }
.fnc-nav__list a:hover { color: var(--ds-text); }
.fnc-nav__list .current-menu-item > a, .fnc-nav__list .current-menu-ancestor > a { color: var(--ds-text); }
.fnc-nav__list .current-menu-item > a::after, .fnc-nav__list .current-menu-ancestor > a::after {
	content: ""; position: absolute; left: .8rem; right: .8rem; bottom: .2rem; height: 2px; background: var(--ds-accent);
}
.fnc-nav__list .sub-menu { background: var(--ds-raised); border: 1px solid var(--ds-line); border-radius: var(--ds-radius); box-shadow: var(--ds-shadow); }
.fnc-header__phone { color: var(--ds-text); font-weight: 600; }
.fnc-header__phone .fnc-icon { color: var(--ds-accent); }
.fnc-logo__text { font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); font-weight: 700; font-size: 1.35rem; letter-spacing: -.01em; }
@media (max-width: 1080px) {
	.fnc-nav { background: var(--ds-deep); }
	.fnc-nav__list a { font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); font-size: 1.5rem; color: var(--ds-text); border-bottom-color: var(--ds-line); }
	.fnc-nav__list .current-menu-item > a::after { content: none; }
	.fnc-nav__list .current-menu-item > a { color: var(--ds-accent); }
}

/* Hero: the photograph leads, the copy sits bottom-left ----------------- */
.fnc-hero { min-height: min(88dvh, 860px); padding-block: 6rem clamp(5.5rem, 10vw, 7.5rem); background: var(--ds-deep); }
.fnc-hero::before, .fnc-hero--overlay-light::before, .fnc-hero--overlay-strong::before {
	background:
		linear-gradient(90deg, rgba(10, 12, 16, .9) 0%, rgba(10, 12, 16, .55) 45%, rgba(10, 12, 16, .1) 75%),
		linear-gradient(0deg, rgba(10, 12, 16, .95) 0%, rgba(10, 12, 16, 0) 45%);
	opacity: 1;
}
.fnc-hero--overlay-strong::before {
	background:
		linear-gradient(90deg, rgba(10, 12, 16, .95) 0%, rgba(10, 12, 16, .7) 55%, rgba(10, 12, 16, .35) 100%),
		linear-gradient(0deg, rgba(10, 12, 16, .95) 0%, rgba(10, 12, 16, 0) 50%);
}
.fnc-hero__title, .fnc-hero .fnc-hero__title--long, .fnc-hero.fnc-hero--compact .fnc-hero__title, .fnc-hero.fnc-hero--compact .fnc-hero__title--long {
	font-size: clamp(2.3rem, 4.1vw, 3.9rem);
	max-width: 24ch;
	line-height: 1.02;
	letter-spacing: -.025em;
}
.fnc-hero .fnc-hero__title--long, .fnc-hero.fnc-hero--compact .fnc-hero__title--long { font-size: clamp(2.1rem, 3.4vw, 3.3rem); max-width: 30ch; }
.fnc-hero__line { display: inline; }
.fnc-hero__highlight { display: block; color: var(--ds-text); }
.fnc-hero__sub { max-width: 50ch; margin-top: 1.25rem; font-size: clamp(1.02rem, 1.3vw, 1.15rem); color: #C9CED5; }
.fnc-hero .fnc-actions { margin-top: 1.9rem; gap: .5rem 1.25rem; align-items: center; }
.fnc-hero__points { gap: .5rem 1.5rem; margin-top: 1.4rem; }
.fnc-hero__points li { font-weight: 500; color: #C9CED5; }
.fnc-hero__points .fnc-icon { color: var(--ds-accent); }
.fnc-hero--compact { min-height: min(66dvh, 620px); padding-top: 4.5rem; }
.fnc-hero .fnc-crumbs { margin-bottom: 1.75rem; }

/* One orchestrated moment: the hero copy settles in once on load. */
@media (prefers-reduced-motion: no-preference) {
	.fnc-hero__inner > * { animation: ds-rise .8s var(--ds-ease) both; }
	.fnc-hero__inner > :nth-child(2) { animation-delay: .06s; }
	.fnc-hero__inner > :nth-child(3) { animation-delay: .12s; }
	.fnc-hero__inner > :nth-child(4) { animation-delay: .18s; }
	.fnc-hero__inner > :nth-child(n+5) { animation-delay: .24s; }
	.fnc-hero__img { animation: ds-settle 1.6s var(--ds-ease) both; }
}
@keyframes ds-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes ds-settle { from { transform: scale(1.04); } to { transform: none; } }

/* Search band: its own layer overlapping the hero's lower edge */
.fnc-searchband { position: relative; z-index: 3; margin-top: -3.4rem; margin-bottom: 0; }
.fnc-quick {
	display: flex; flex-wrap: wrap; align-items: flex-end; gap: .75rem;
	max-width: none; margin: 0; padding: 1rem;
	background: var(--ds-raised); color: var(--ds-text);
	border: 1px solid var(--ds-line); border-radius: var(--ds-radius); box-shadow: var(--ds-shadow);
}
.fnc-quick__field { flex: 1 1 170px; }
.fnc-quick__field--grow { flex: 2 1 280px; }
.fnc-quick .fnc-btn { flex: 0 0 auto; }
.fnc-quick label { color: var(--ds-muted); font-size: .82rem; font-weight: 500; }
.fnc-quick .fnc-btn { align-self: end; }
@media (max-width: 760px) { .fnc-quick .fnc-btn { flex: 1 1 100%; } .fnc-searchband { margin-top: -2rem; } }

/* Forms (theme and form plugins) ---------------------------------------- */
input[type="text"], input[type="search"], input[type="email"], input[type="tel"], input[type="number"], input[type="url"], select, textarea,
.forminator-ui input.forminator-input, .forminator-ui textarea.forminator-textarea, .forminator-ui select, .wpcf7-form-control:not(.wpcf7-submit) {
	background: var(--ds-base) !important;
	color: var(--ds-text) !important;
	border: 1px solid #333C47 !important;
	border-radius: var(--ds-radius) !important;
	min-height: 48px;
}
input::placeholder, textarea::placeholder { color: #7E8893; opacity: 1; }
input:focus, select:focus, textarea:focus { border-color: var(--ds-accent) !important; outline: none; box-shadow: 0 0 0 3px color-mix(in srgb, var(--ds-accent) 30%, transparent); }
select { color-scheme: dark; }
.forminator-ui label, .forminator-ui .forminator-label { color: #C9CED5 !important; }

/* Sections ------------------------------------------------------------- */
.fnc-sec { padding-block: clamp(4.5rem, 9vw, 7rem) clamp(5rem, 10vw, 8rem); }
.fnc-searchband + .fnc-sec { padding-top: clamp(4rem, 8vw, 6rem); }
.fnc-sec__head { align-items: flex-end; margin-bottom: clamp(2rem, 4vw, 3rem); }
.fnc-sec__title { font-size: clamp(1.9rem, 3.3vw, 2.9rem); max-width: 22ch; }
.fnc-sec__intro { color: var(--ds-muted); max-width: 60ch; }
.fnc-page-head { background: var(--ds-deep); padding-block: clamp(3rem, 7vw, 5rem) clamp(2.5rem, 5vw, 3.75rem); border-bottom: 1px solid var(--ds-line); }
.fnc-page-head__title { font-size: clamp(2.3rem, 4.6vw, 4rem); max-width: 22ch; }
.fnc-page-head__desc { color: var(--ds-muted); }
.fnc-crumbs { color: var(--ds-muted); font-size: .9rem; }
.fnc-crumbs a:hover { color: var(--ds-text); }

/* Division bays: the signature. Three garage bays; the one you point at opens up. */
.fnc-sec--categories .fnc-tiles--2, .fnc-sec--categories .fnc-tiles--3, .fnc-sec--categories .fnc-tiles--4 {
	display: flex; gap: .6rem; height: clamp(440px, 72vh, 660px);
}
.fnc-sec--categories .fnc-tiles--2 > .fnc-tile, .fnc-sec--categories .fnc-tiles--3 > .fnc-tile, .fnc-sec--categories .fnc-tiles--4 > .fnc-tile {
	flex: 1 1 0; min-width: 0; transition: flex-grow .7s var(--ds-ease);
}
.fnc-sec--categories .fnc-tile:hover, .fnc-sec--categories .fnc-tile:focus-within { flex-grow: 1.9; }
.fnc-sec--categories .fnc-tile a { height: 100%; min-height: 0; padding: clamp(1.25rem, 2.4vw, 2rem); border-radius: var(--ds-radius); }
.fnc-tile a::before { background: linear-gradient(180deg, rgba(10, 12, 16, .05) 30%, rgba(10, 12, 16, .92) 100%); }
.fnc-tile__img { filter: grayscale(.45) brightness(.85); transition: filter .6s var(--ds-ease), transform .9s var(--ds-ease); }
.fnc-tile a:hover .fnc-tile__img, .fnc-tile a:focus-visible .fnc-tile__img { filter: none; transform: scale(1.03); }
.fnc-tile__name { font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); font-size: clamp(1.6rem, 2.5vw, 2.3rem); letter-spacing: -.02em; }
.fnc-tile__desc { max-width: 40ch; color: #C9CED5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.fnc-tile__count { color: var(--ds-accent); font-weight: 600; }
.fnc-tile__more { color: var(--ds-text); }
.fnc-tile__logo { max-height: 38px; filter: grayscale(1) invert(1); mix-blend-mode: screen; }
@media (max-width: 860px) {
	.fnc-sec--categories .fnc-tiles--2, .fnc-sec--categories .fnc-tiles--3, .fnc-sec--categories .fnc-tiles--4 { flex-direction: column; height: auto; }
	.fnc-sec--categories .fnc-tile a { min-height: 320px; }
	.fnc-sec--categories .fnc-tile:hover, .fnc-sec--categories .fnc-tile:focus-within { flex-grow: 1; }
}
@media (prefers-reduced-motion: reduce) { .fnc-sec--categories .fnc-tile { transition: none; } }

/* Vehicle and post cards: no panels, the photograph is the card --------- */
.fnc-grid { gap: clamp(1.75rem, 3vw, 2.5rem) clamp(1.25rem, 2.4vw, 1.75rem); }
.fnc-card, .fnc-tone--white .fnc-card, .fnc-tone--dark .fnc-card { background: transparent; color: var(--ds-text); border-radius: 0; overflow: visible; }
.fnc-card__media { border-radius: var(--ds-radius); background: var(--ds-raised); }
.fnc-card__body { padding: 1rem 0 0; }
.fnc-card__dealer { color: var(--ds-muted); font-size: .82rem; margin-bottom: .35rem; }
.fnc-card__title { font-size: 1.22rem; font-stretch: 108%; font-variation-settings: "wdth" 108; font-weight: 650; line-height: 1.2; letter-spacing: -.01em; }
.fnc-card__title a:hover { text-decoration: none; color: var(--ds-accent); }
.fnc-card__sub { color: var(--ds-muted); }
.fnc-strip { border-top-color: var(--ds-line); color: #C9CED5; }
.fnc-card__price { margin-top: .9rem; font-family: var(--fnc-font-head); font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); font-size: 1.25rem; font-weight: 700; color: var(--ds-text); }
.fnc-card__noimg { color: #4A5360; }
.fnc-badge { border-radius: var(--ds-radius); }
.fnc-post-card { background: transparent; color: var(--ds-text); border-radius: 0; }
.fnc-post-card__media { border-radius: var(--ds-radius); background: var(--ds-raised); }
.fnc-post-card__body { padding: 1rem 0 0; }
.fnc-post-card__title { font-size: 1.2rem; font-stretch: 106%; font-variation-settings: "wdth" 106; font-weight: 650; line-height: 1.22; letter-spacing: -.01em; }
.fnc-post-card__title a:hover { color: var(--ds-accent); text-decoration: none; }
.fnc-post-card__excerpt { color: var(--ds-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.fnc-meta { color: var(--ds-muted); }

/* Tabs ------------------------------------------------------------------ */
.fnc-tabs__list { border-bottom-color: var(--ds-line); gap: .5rem; }
.fnc-tabs__tab { font-stretch: 110%; font-variation-settings: "wdth" 110; font-size: 1.1rem; font-weight: 600; letter-spacing: -.01em; color: var(--ds-muted); padding-inline: .25rem; margin-right: 1.25rem; }
.fnc-tabs__tab[aria-selected="true"], .fnc-tone--dark .fnc-tabs__tab[aria-selected="true"] { color: var(--ds-text); }
.fnc-tabs__count { background: var(--ds-raised); color: var(--ds-muted); border-radius: var(--ds-radius); }

/* Process: a real sequence, so it is numbered --------------------------- */
.fnc-steps { border-top: 0; gap: 0; counter-reset: none; }
.fnc-step { padding: 1.5rem 1.5rem 0 0; border-bottom: 0; border-top: 1px solid var(--ds-line); }
.fnc-step__num { font-family: var(--fnc-font-head); font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); font-size: 1.1rem; font-weight: 700; color: var(--ds-accent); margin-bottom: 1.1rem; }
.fnc-step__icon { display: none; }
.fnc-step__title { font-size: 1.25rem; font-stretch: 108%; font-variation-settings: "wdth" 108; }
.fnc-step__text { color: var(--ds-muted); }

/* Figures: plain, divided by hairlines, no boxes ------------------------ */
.fnc-stats { background: none; border: 0; border-radius: 0; gap: 0; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); }
.fnc-stat, .fnc-tone--white .fnc-stat, .fnc-tone--dark .fnc-stat { background: none; padding: .25rem 1.5rem 0; border-left: 1px solid var(--ds-line); }
.fnc-stat:first-child { border-left: 0; padding-left: 0; }
.fnc-stat__icon { display: none; }
.fnc-stat__value { font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); font-size: clamp(2.6rem, 4.6vw, 3.9rem); letter-spacing: -.03em; color: var(--ds-text); }
.fnc-stat__title { font-weight: 500; color: var(--ds-muted); }
@media (max-width: 640px) { .fnc-stat { border-left: 0; padding: 1rem 0 0; border-top: 1px solid var(--ds-line); } .fnc-stat:first-child { border-top: 0; } }

/* Image and text -------------------------------------------------------- */
.fnc-split__img { border-radius: var(--ds-radius); }
.fnc-split__media::after { content: none; }
.fnc-split__text { color: #C9CED5; }
.fnc-split__points .fnc-icon { background: none; color: var(--ds-accent); padding: 0; width: 20px; height: 20px; }
.fnc-split__points strong { font-family: var(--fnc-font-body); font-stretch: 100%; font-variation-settings: "wdth" 100; font-size: 1rem; font-weight: 600; display: inline; }

/* Gallery, chips, logos ------------------------------------------------- */
.fnc-gal__grid { gap: .5rem; }
.fnc-gal__item { border-radius: var(--ds-radius); }
.fnc-gal__item::after { content: none; }
.fnc-chip { border-radius: var(--ds-radius); border-color: #333C47; color: #C9CED5; }
.fnc-chip:hover { border-color: var(--ds-text); color: var(--ds-text); }
.fnc-chip[aria-pressed="true"] { background: var(--ds-text); border-color: var(--ds-text); color: var(--ds-deep); }
.fnc-logos { border: 0; gap: .5rem; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.fnc-logos li, .fnc-tone--white .fnc-logos li { border: 0; background: var(--ds-raised); border-radius: var(--ds-radius); min-height: 104px; }
/* Makes a black-on-white or colour logo read as a light mark on the dark tile. */
.fnc-logos__img { filter: grayscale(1) invert(1); mix-blend-mode: screen; opacity: .78; }
.fnc-logos li:hover .fnc-logos__img { filter: grayscale(1) invert(1); opacity: 1; }
.fnc-brands { border: 0; gap: .5rem; }
.fnc-brands li { border: 0; background: var(--ds-raised); border-radius: var(--ds-radius); }
.fnc-brands a:hover { background: #1B2129; }
.fnc-brands__name { font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); font-size: 1.1rem; }

/* FAQ ------------------------------------------------------------------- */
.fnc-faq__list, .fnc-faq__item { border-color: var(--ds-line); }
.fnc-faq__q { padding: 1.35rem 0; }
.fnc-faq__q h3 { font-weight: 600; font-size: 1.08rem; color: var(--ds-text); }
.fnc-faq__q:hover h3 { color: var(--ds-accent); }
.fnc-faq__mark { color: var(--ds-accent); }
.fnc-faq__a { color: #C9CED5; }

/* Reviews --------------------------------------------------------------- */
.fnc-review, .fnc-tone--white .fnc-review, .fnc-tone--dark .fnc-review { background: var(--ds-raised); border-top: 0; border-left: 2px solid var(--ds-accent); border-radius: var(--ds-radius); }

/* Contact, form band ---------------------------------------------------- */
.fnc-cards__item, .fnc-tone--light .fnc-cards__item { background: var(--ds-raised); border-radius: var(--ds-radius); }
.fnc-cards dt .fnc-icon, .fnc-contact .fnc-icon { color: var(--ds-accent); }
.fnc-cards dd { color: #C9CED5; }
.fnc-formcard { background: var(--ds-raised); color: var(--ds-text); border: 1px solid var(--ds-line); border-radius: var(--ds-radius); box-shadow: var(--ds-shadow); }
.fnc-formsec { background: var(--ds-deep); }
.fnc-formsec::before { background: linear-gradient(100deg, rgba(10, 12, 16, .97) 40%, rgba(10, 12, 16, .8)); }
.fnc-formcard .forminator-button-submit, .fnc-formcard input[type="submit"], .fnc-formcard button[type="submit"] { border-radius: var(--ds-radius) !important; }
.fnc-map { border-radius: var(--ds-radius); }
.fnc-map iframe { filter: grayscale(1) invert(.92) contrast(.9); }

/* Inventory and vehicle page -------------------------------------------- */
.fnc-filters { background: var(--ds-raised); border: 1px solid var(--ds-line); border-radius: var(--ds-radius); }
.fnc-count { color: var(--ds-muted); }
.fnc-empty { background: var(--ds-raised); border-radius: var(--ds-radius); }
.fnc-vehicle__top { background: var(--ds-deep); }
.fnc-vehicle__jump { background: rgba(14, 17, 21, .92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-bottom-color: var(--ds-line); }
.fnc-vehicle__jump a:hover { color: var(--ds-accent); }
.fnc-summary__title { font-size: clamp(2.1rem, 3.6vw, 3.2rem); line-height: 1.02; }
.fnc-summary__price { font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); color: var(--ds-text); }
.fnc-summary__dealer a { color: var(--ds-accent); }
.fnc-facts, .fnc-facts div { border-color: var(--ds-line); }
.fnc-facts dt { color: var(--ds-muted); }
.fnc-gallery__stage { border-radius: var(--ds-radius); }
.fnc-gallery__thumb { border-radius: var(--ds-radius); }
.fnc-spec-table { background: var(--ds-raised); border-radius: var(--ds-radius); }
.fnc-spec-table th { color: var(--ds-muted); }
.fnc-features .fnc-icon { color: var(--ds-accent); }
.fnc-enquiry { background: var(--ds-raised); border: 1px solid var(--ds-line); border-radius: var(--ds-radius); }
.fnc-vehicle__h { font-size: clamp(1.6rem, 2.8vw, 2.2rem); }

/* Reading ---------------------------------------------------------------- */
.fnc-prose { color: #C9CED5; max-width: 68ch; }
.fnc-prose h2, .fnc-prose h3, .fnc-prose h4, .fnc-prose strong { color: var(--ds-text); }
.fnc-prose h2 { font-size: clamp(1.5rem, 2.6vw, 2rem); }
.fnc-prose h3 { font-size: clamp(1.2rem, 2vw, 1.45rem); }
.fnc-prose a { color: var(--ds-text); text-decoration-color: var(--ds-accent); text-decoration-thickness: 2px; }
.fnc-prose blockquote { border-left-color: var(--ds-accent); color: var(--ds-text); }
.fnc-prose th, .fnc-prose td { border-bottom-color: var(--ds-line); }
.fnc-collapse::after, .fnc-tone--white .fnc-collapse::after { background: linear-gradient(transparent, #11151A); }
.fnc-tone--light .fnc-collapse::after { background: linear-gradient(transparent, var(--ds-base)); }
.fnc-tags a { border-color: var(--ds-line); border-radius: var(--ds-radius); color: #C9CED5; }
.fnc-pagination a, .fnc-pagination span { background: var(--ds-raised); border-color: var(--ds-line); border-radius: var(--ds-radius); color: var(--ds-text); }
.fnc-pagination .current { background: var(--ds-text); border-color: var(--ds-text); color: var(--ds-deep); }
.fnc-admin-hint { background: #211B10; border-color: var(--ds-accent); color: var(--ds-text); }
.fnc-enquiry-note { background: var(--ds-raised); }

/* Footer: quiet, the last thing on the page ----------------------------- */
.fnc-footer { background: var(--ds-deep); border-top: 1px solid var(--ds-line); }
.fnc-footer__title { font-family: var(--fnc-font-body); font-stretch: 100%; font-variation-settings: "wdth" 100; font-size: .98rem; font-weight: 600; color: var(--ds-text); margin-bottom: .9rem; }
.fnc-footer__menu a { color: var(--ds-muted); }
.fnc-footer__menu a:hover { color: var(--ds-text); }
.fnc-footer__desc { color: var(--ds-muted); }
.fnc-footer__bottom { border-top-color: var(--ds-line); color: #7E8893; }
.fnc-social a { border-radius: var(--ds-radius); border-color: var(--ds-line); }

/* Ticker (still available as a section type) uses the one accent quietly */
.fnc-ticker--accent { background: var(--ds-raised); color: var(--ds-text); }
.fnc-ticker__row li { font-stretch: var(--ds-wide); font-variation-settings: "wdth" var(--ds-wdth); text-transform: none; letter-spacing: -.01em; }
