/*
Theme Name: Fuel America 2026
Theme URI: https://fuelamericacoffee.com/
Author: Fuel America
Description: A lightweight, accessible, marketing-ready theme for Fuel America cafés.
Version: 0.9.144
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: fuel-america-2026
*/

:root {
	--fuel-red: #b2292e;
	--fuel-red-dark: #8f2025;
	--fuel-ink: #101820;
	--fuel-navy: #073c47;
	--fuel-cream: #f5f0e7;
	--fuel-paper: #fffdf9;
	--fuel-mist: #ece8e1;
	--fuel-muted: #625f5a;
	--fuel-display: "Fuel Display", "Arial Black", Impact, sans-serif;
	--fuel-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--fuel-shell: min(1180px, calc(100vw - 48px));
	--fuel-radius: 22px;
	--fuel-shadow: 0 22px 70px rgba(22, 22, 22, 0.12);
}

/* 0.9.34-r4 local candidate: remove only the duplicate generic Catering title band. */
.fuel-catering-content {
	padding-top: clamp(38px, 5vw, 72px);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--fuel-ink); background: var(--fuel-paper); font-family: var(--fuel-body); font-size: 17px; line-height: 1.62; text-rendering: optimizeLegibility; }
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.18em; }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 6px #1967d2; }
.fuel-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { text-wrap: balance; }
h1, h2 { font-family: var(--fuel-display); text-transform: uppercase; line-height: 0.94; letter-spacing: -0.025em; }
h1 { font-size: clamp(3.8rem, 9vw, 8.5rem); }
h2 { font-size: clamp(2.5rem, 5vw, 5.4rem); }
h3 { font-size: 1.35rem; line-height: 1.12; }

.fuel-shell { width: var(--fuel-shell); margin-inline: auto; }
.fuel-section { padding-block: clamp(76px, 10vw, 144px); }
.fuel-kicker { margin-bottom: 18px; color: var(--fuel-red-dark); font-size: 0.75rem; font-weight: 900; letter-spacing: 0.22em; line-height: 1.35; text-transform: uppercase; }
.fuel-button-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.fuel-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; padding: 13px 23px; border: 2px solid var(--fuel-red); border-radius: 5px; background: var(--fuel-red); color: #fff; font-family: var(--fuel-display); font-size: 0.92rem; font-weight: 800; letter-spacing: 0.045em; line-height: 1; text-decoration: none; text-transform: uppercase; transition: transform 160ms ease, background 160ms ease, border-color 160ms ease; }
.fuel-button:hover { transform: translateY(-2px); background: var(--fuel-red-dark); border-color: var(--fuel-red-dark); }
.fuel-button--dark { background: var(--fuel-navy); border-color: var(--fuel-navy); }
.fuel-button--dark:hover { background: #032a32; border-color: #032a32; }
.fuel-button--ghost { background: transparent; color: var(--fuel-ink); border-color: #bcb7af; }
.fuel-button--ghost:hover { background: #eee9e1; border-color: #807b73; }
.fuel-button--outline-light { background: transparent; border-color: rgba(255,255,255,.78); color: #fff; }
.fuel-button--outline-light:hover { background: #fff; border-color: #fff; color: var(--fuel-ink); }
.fuel-text-link { display: inline-flex; gap: 9px; align-items: center; color: var(--fuel-ink); font-family: var(--fuel-display); font-size: 0.94rem; font-weight: 800; letter-spacing: 0.04em; text-decoration: none; text-transform: uppercase; }
.fuel-text-link span { color: var(--fuel-red); transition: transform 160ms ease; }
.fuel-text-link:hover span { transform: translateX(4px); }
.fuel-text-link--light { color: #fff; }
.fuel-link-button { padding: 8px; border: 0; background: transparent; color: inherit; cursor: pointer; text-decoration: underline; }

.fuel-skip-link { position: fixed; z-index: 100000; top: 12px; left: 12px; padding: 12px 18px; transform: translateY(-150%); background: #fff; color: #000; font-weight: 800; }
.fuel-skip-link:focus { transform: translateY(0); }

.fuel-site-header { position: relative; z-index: 1000; background: #fffdf9; border-bottom: 1px solid rgba(23,23,23,.08); }
.fuel-site-header.is-sticky { position: sticky; top: 0; box-shadow: 0 10px 35px rgba(0,0,0,.08); }
.fuel-header-inner { width: min(1280px, calc(100vw - 34px)); min-height: 102px; margin-inline: auto; display: grid; grid-template-columns: 180px 1fr auto; gap: 34px; align-items: center; }
.fuel-brand { display: inline-flex; width: 145px; height: 84px; align-items: center; text-decoration: none; }
.fuel-brand img { width: 142px; height: 78px; object-fit: contain; }
.fuel-primary-nav { display: flex; gap: clamp(20px, 3vw, 42px); justify-content: center; align-items: center; }
.fuel-primary-nav a { position: relative; font-family: var(--fuel-display); font-size: 0.88rem; letter-spacing: 0.045em; text-decoration: none; text-transform: uppercase; }
.fuel-primary-nav a::after { position: absolute; right: 0; bottom: -8px; left: 0; height: 2px; transform: scaleX(0); background: var(--fuel-red); content: ""; transition: transform 160ms ease; }
.fuel-primary-nav a:hover::after, .fuel-primary-nav a:focus-visible::after { transform: scaleX(1); }
.fuel-menu-toggle { display: none; border: 0; background: transparent; color: var(--fuel-ink); }

.fuel-hero { position: relative; min-height: min(840px, calc(100svh - 102px)); display: grid; align-items: center; isolation: isolate; overflow: hidden; background-color: #1c1c1c; background-image: var(--fuel-hero-image-mobile, var(--fuel-hero-image-desktop)); background-position: center; background-size: cover; background-repeat: no-repeat; color: #fff; }
.fuel-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.45) 48%, rgba(0,0,0,.1) 80%); content: ""; }
.fuel-hero-shade { position: absolute; inset: 0; background: radial-gradient(circle at 78% 35%, transparent 0 16%, rgba(0,0,0,.08) 55%, rgba(0,0,0,.22) 100%); }
.fuel-hero-content { position: relative; z-index: 2; padding-block: 90px 120px; }
.fuel-hero h1 { max-width: 720px; margin-bottom: 30px; color: #fff; }
.fuel-hero-copy { max-width: 625px; margin-bottom: 32px; font-size: clamp(1.06rem, 1.6vw, 1.3rem); line-height: 1.5; }
.fuel-hero-scroll { position: absolute; z-index: 3; right: 32px; bottom: 80px; display: inline-flex; align-items: center; min-height: 44px; gap: 12px; color: #fff; font-size: .77rem; font-weight: 900; letter-spacing: .18em; text-decoration: none; text-transform: uppercase; }

.fuel-quick-actions { display: grid; grid-template-columns: repeat(5, 1fr); border-bottom: 1px solid #dcd7cf; background: #fff; }
.fuel-quick-actions a { min-height: 160px; display: flex; flex-direction: column; gap: 4px; align-items: center; justify-content: center; padding: 22px 14px; border-right: 1px solid #e4dfd7; text-align: center; text-decoration: none; transition: background 180ms ease, color 180ms ease; }
.fuel-quick-actions a:last-child { border-right: 0; }
.fuel-quick-actions a:hover { background: var(--fuel-cream); color: var(--fuel-ink); }
.fuel-quick-actions a:hover small { opacity: 1; }
.fuel-quick-actions a > span { width: 42px; height: 42px; display: grid; place-items: center; margin-bottom: 6px; border: 1px solid rgba(178,41,46,.2); border-radius: 50%; background: #fff8f4; color: #b2292e; font-size: 1.05rem; }
.fuel-quick-actions a > span svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.fuel-quick-actions strong { font-family: var(--fuel-display); font-size: .9rem; letter-spacing: .04em; text-transform: uppercase; }
.fuel-quick-actions small { opacity: .65; }

.fuel-seasonal { min-height: 690px; display: grid; grid-template-columns: 1.1fr .9fr; background: var(--fuel-red); color: #fff; overflow: hidden; }
.fuel-seasonal-image { min-height: 580px; background-color: #b52f24; background-image: var(--fuel-seasonal-image-mobile, var(--fuel-seasonal-image-desktop)); background-position: center; background-size: cover; background-repeat: no-repeat; }
.fuel-seasonal-content { display: flex; flex-direction: column; justify-content: center; padding: clamp(56px, 7vw, 110px); }
.fuel-seasonal .fuel-kicker, .fuel-seasonal .fuel-text-link span { color: #fff5d8; }
.fuel-seasonal h2 { margin-bottom: 25px; color: #fff; }
.fuel-seasonal-content > p:not(.fuel-kicker) { max-width: 590px; font-size: 1.1rem; }
.fuel-seasonal-list { margin: 18px 0 30px; padding: 0; columns: 2; column-gap: 32px; list-style: none; }
.fuel-seasonal-list li { break-inside: avoid; margin-bottom: 8px; padding-bottom: 8px; border-bottom: 1px solid rgba(255,255,255,.25); font-weight: 750; }
.fuel-seasonal .fuel-text-link { color: #fff; }

.fuel-section-heading { display: flex; gap: 44px; align-items: end; justify-content: space-between; margin-bottom: 52px; }
.fuel-section-heading h2 { max-width: 760px; margin-bottom: 0; }
.fuel-section-heading > p { max-width: 460px; margin-bottom: 8px; color: var(--fuel-muted); }
.fuel-category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.fuel-category-card a { display: block; text-decoration: none; }
.fuel-card-image { overflow: hidden; margin-bottom: 22px; border-radius: var(--fuel-radius); background: #eee8df; aspect-ratio: 1/1; }
.fuel-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 350ms ease; }
.fuel-category-card:hover .fuel-card-image img { transform: scale(1.035); }
.fuel-category-card h3 { margin-bottom: 9px; font-family: var(--fuel-display); text-transform: uppercase; }
.fuel-category-card p { min-height: 78px; color: var(--fuel-muted); font-size: .94rem; }

.fuel-brand-panel { padding-block: clamp(75px, 10vw, 145px); background: var(--fuel-navy); color: #fff; }
.fuel-brand-panel-inner { display: grid; grid-template-columns: 1fr .8fr; gap: clamp(50px, 10vw, 145px); align-items: end; }
.fuel-brand-panel h2 { max-width: 740px; margin-bottom: 0; }
.fuel-brand-panel-inner > div:last-child > p { max-width: 520px; margin-bottom: 28px; font-size: 1.2rem; }

.fuel-location-strip { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.fuel-location-tile { position: relative; min-height: 420px; display: flex; overflow: hidden; align-items: end; border-radius: 12px; isolation: isolate; background-color: #333; background-image: var(--fuel-location-image-mobile, var(--fuel-location-image-desktop)); background-position: center; background-size: cover; background-repeat: no-repeat; color: #fff; text-decoration: none; }
.fuel-location-tile::before { position: absolute; z-index: -1; inset: 0; background: inherit; content: ""; transition: transform 350ms ease; }
.fuel-location-tile:hover::before { transform: scale(1.04); }
.fuel-location-tile-shade { position: absolute; z-index: -1; inset: 0; background: linear-gradient(transparent 30%, rgba(0,0,0,.82)); }
.fuel-location-tile-copy { width: 100%; display: flex; flex-direction: column; padding: 24px 20px; }
.fuel-location-tile-copy strong { font-family: var(--fuel-display); font-size: 1.2rem; line-height: 1.05; text-transform: uppercase; }
.fuel-location-tile-copy small { margin-top: 7px; opacity: .78; }

.fuel-rewards-callout { padding-block: clamp(58px, 7vw, 95px); background: var(--fuel-navy); color: #fff; }
.fuel-rewards-callout-inner { display: flex; gap: 50px; align-items: center; justify-content: space-between; }
.fuel-rewards-callout h2 { margin-bottom: 18px; }
.fuel-rewards-callout p:not(.fuel-kicker) { max-width: 600px; margin-bottom: 0; }

.fuel-feature-split { min-height: 660px; display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; padding: 0; background: var(--fuel-cream); }
.fuel-feature-image { min-height: 640px; display: grid; place-items: center; overflow: hidden; background: #d9d0c3; }
.fuel-feature-image img { width: 100%; height: 100%; object-fit: cover; }
.fuel-feature-image--app img { object-fit: contain; padding: clamp(35px, 6vw, 100px); }
.fuel-feature-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(60px, 9vw, 135px); }
.fuel-feature-copy h2 { margin-bottom: 25px; }
.fuel-feature-copy > p:not(.fuel-kicker) { max-width: 540px; margin-bottom: 30px; font-size: 1.12rem; }

.fuel-dual-promos { display: grid; grid-template-columns: 1fr 1fr; }
.fuel-dual-promos article { position: relative; min-height: 580px; display: flex; align-items: end; isolation: isolate; overflow: hidden; background-color: #222; background-image: var(--fuel-promo-image-mobile, var(--fuel-promo-image-desktop)); background-position: center; background-size: cover; background-repeat: no-repeat; color: #fff; }
.fuel-dual-promos article::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(15deg, rgba(0,0,0,.78), rgba(0,0,0,.08) 70%); content: ""; }
.fuel-dual-promos article > div { padding: clamp(40px, 7vw, 90px); }
.fuel-dual-promos h2 { max-width: 570px; font-size: clamp(2.5rem, 4vw, 4.6rem); }

.fuel-page-hero { min-height: 520px; display: flex; align-items: end; padding-block: clamp(90px, 10vw, 145px); }
.fuel-page-hero h1 { max-width: 970px; margin-bottom: 25px; font-size: clamp(4rem, 8vw, 8rem); }
.fuel-page-hero p:not(.fuel-kicker) { max-width: 720px; margin-bottom: 0; font-size: 1.22rem; }
.fuel-page-hero--red { background: var(--fuel-red); color: #fff; }
.fuel-page-hero--red .fuel-kicker { color: #fff5d8; }
.fuel-page-hero--dark { background: var(--fuel-navy); color: #fff; }
.fuel-page-hero--cream { background: var(--fuel-cream); }
.fuel-page-hero--menu { min-height: 0; padding-block: 0; align-items: stretch; background: var(--fuel-cream); color: var(--fuel-ink); }
.fuel-menu-hero-inner { display: grid; grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr); gap: clamp(42px,6vw,90px); align-items: center; }
.fuel-menu-hero-copy { padding-block: clamp(76px,9vw,132px); }
.fuel-page-hero--menu h1 { max-width: 680px; font-size: clamp(3.7rem,6.7vw,7rem); }
.fuel-page-hero--menu .fuel-kicker { color: var(--fuel-red-dark); }
.fuel-page-hero--menu::after { display: none; }
.fuel-menu-hero-image { min-height: 620px; height: 100%; margin-right: calc((100vw - min(1180px, calc(100vw - 48px)))/ -2); overflow: hidden; }
.fuel-menu-hero-image picture, .fuel-menu-hero-image img { display: block; width: 100%; height: 100%; }
.fuel-menu-hero-image img { object-fit: cover; object-position: center; }
.fuel-page-hero--image { position: relative; min-height: 700px; align-items: center; isolation: isolate; background: #1d1d1d var(--fuel-page-image) center/cover no-repeat; color: #fff; }
.fuel-page-hero--image::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.82), rgba(0,0,0,.16)); content: ""; }
.fuel-page-hero--image .fuel-shell { padding-block: 80px; }
.fuel-page-hero--image p:not(.fuel-kicker) { margin-bottom: 30px; }

/* Rewards refinement: art-direct the approved desktop/mobile photography while
   preserving the restrained official-brand watermark on the hero. */
.fuel-page-hero--rewards {
	min-height: clamp(600px, 72vh, 720px);
	background-image: var(--fuel-page-image);
	background-position: center;
}
.fuel-page-hero--rewards::before {
	position: absolute;
	z-index: 0;
	inset: 0;
	background: linear-gradient(90deg, rgba(8,17,20,.18) 0%, rgba(8,17,20,.22) 44%, rgba(8,17,20,.12) 76%, rgba(8,17,20,.05) 100%);
	content: "";
	pointer-events: none;
}
.fuel-page-hero--rewards h1 {
	max-width: 760px;
	font-size: clamp(3.5rem, 5.4vw, 5.3rem);
	line-height: .9;
	text-wrap: balance;
}

.fuel-notice-bar { display: flex; gap: 30px; align-items: center; justify-content: space-between; margin-bottom: 55px; padding: 22px 26px; border-left: 5px solid var(--fuel-red); background: var(--fuel-cream); }
.fuel-notice-bar p { margin: 0; }
.fuel-menu-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; }
.fuel-menu-card { display: grid; grid-template-columns: 190px 1fr; gap: 28px; align-items: center; padding: 18px; border: 1px solid #ded8ce; border-radius: var(--fuel-radius); background: #fff; }
.fuel-menu-card-image { overflow: hidden; border-radius: 13px; aspect-ratio: 4/3; }
.fuel-menu-card-image img { width: 100%; height: 100%; object-fit: cover; }
.fuel-menu-card h2 { margin-bottom: 12px; font-size: 2rem; }
.fuel-menu-card p { margin-bottom: 0; color: var(--fuel-muted); font-size: .95rem; }
.fuel-centered-cta { max-width: 900px; margin: 110px auto 0; padding: clamp(55px, 7vw, 85px); border-radius: var(--fuel-radius); background: var(--fuel-cream); text-align: center; }
.fuel-centered-cta h2 { font-size: clamp(2.5rem, 4vw, 4rem); }
.fuel-centered-cta--dark { max-width: none; margin: 0; border-radius: 0; background: var(--fuel-navy); color: #fff; }
.fuel-centered-cta--dark .fuel-button-row { justify-content: center; }

.fuel-location-directory { display: grid; gap: 34px; }
.fuel-location-card { display: grid; grid-template-columns: minmax(280px, .9fr) 1.1fr; overflow: hidden; border: 1px solid #ded8ce; border-radius: var(--fuel-radius); background: #fff; box-shadow: 0 12px 40px rgba(0,0,0,.04); }
.fuel-location-card:nth-child(even) { grid-template-columns: 1.1fr minmax(280px, .9fr); }
.fuel-location-card:nth-child(even) .fuel-location-card-image { order: 2; }
.fuel-location-card-image { min-height: 390px; overflow: hidden; }
.fuel-location-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 350ms ease; }
.fuel-location-card:hover .fuel-location-card-image img { transform: scale(1.025); }
.fuel-location-card-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(38px, 6vw, 75px); }
.fuel-location-card-copy h2 { margin-bottom: 18px; font-size: clamp(2.3rem, 4vw, 4.1rem); }
.fuel-location-card-copy h2 a { text-decoration: none; }
.fuel-location-hours { color: var(--fuel-muted); }
.fuel-inline-links { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 16px; }
.fuel-inline-links a { color: var(--fuel-red); font-family: var(--fuel-display); font-size: .84rem; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }

.fuel-rewards-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.fuel-rewards-steps article { position: relative; min-height: 320px; overflow: hidden; padding: 38px; border: 1px solid transparent; border-radius: var(--fuel-radius); background: var(--fuel-cream); transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease, background-color 220ms ease; }
.fuel-rewards-steps article::before { position: absolute; top: 0; right: 0; left: 0; height: 3px; transform: scaleX(0); transform-origin: left center; background: var(--fuel-red); content: ""; transition: transform 260ms ease; }
.fuel-rewards-steps span { display: inline-block; color: var(--fuel-red-dark); font-family: var(--fuel-display); font-size: 1rem; transition: color 220ms ease, transform 220ms ease; }
.fuel-values-grid span { color: #fff5d8; font-family: var(--fuel-display); font-size: 1rem; }
.fuel-rewards-steps h2 { margin-top: 70px; margin-bottom: 18px; font-size: 3.2rem; }
@media (hover: hover) and (pointer: fine) {
	.fuel-rewards-steps article:hover { transform: translateY(-6px); border-color: rgba(178, 41, 46, .22); background: #fbf7ee; box-shadow: 0 18px 42px rgba(16, 24, 32, .1); }
	.fuel-rewards-steps article:hover::before { transform: scaleX(1); }
	.fuel-rewards-steps article:hover span { color: var(--fuel-red); transform: translateX(3px); }
}
@media (prefers-reduced-motion: reduce) {
	.fuel-rewards-steps article:hover,
	.fuel-rewards-steps article:hover span { transform: none; }
}
.fuel-two-column { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(50px, 10vw, 140px); }
.fuel-two-column dl { margin: 0; }
.fuel-two-column dl > div { padding: 25px 0; border-top: 1px solid #cfc9bf; }
.fuel-two-column dt { font-family: var(--fuel-display); font-size: 1.5rem; text-transform: uppercase; }
.fuel-two-column dd { margin: 4px 0 0; color: var(--fuel-muted); }

.fuel-app-hero { padding-block: clamp(75px, 10vw, 135px); background: var(--fuel-cream); }
.fuel-app-hero-inner { display: grid; grid-template-columns: 1fr .8fr; gap: 70px; align-items: center; }
.fuel-app-hero h1 { margin-bottom: 28px; }
.fuel-app-hero h1 { max-width: 8.8ch; font-size: clamp(3.4rem, 6.3vw, 6.35rem); }
.fuel-app-hero p:not(.fuel-kicker) { max-width: 620px; margin-bottom: 30px; font-size: 1.15rem; }
.fuel-feature-icons { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.fuel-feature-icons article { display: flex; flex-direction: column; align-items: flex-start; padding: 36px; border: 1px solid var(--fuel-line); border-top: 5px solid var(--fuel-red); border-radius: var(--fuel-radius); background: #fff; }
.fuel-feature-icon { display: grid; width: 50px; height: 50px; margin-bottom: 30px; place-items: center; border: 1px solid rgba(177, 42, 47, .22); border-radius: 50%; background: #fff8f4; color: var(--fuel-red-dark); }
.fuel-feature-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.fuel-feature-icons strong { font-family: var(--fuel-display); font-size: 1.45rem; text-transform: uppercase; }
.fuel-feature-icons p { margin-bottom: 0; }

.fuel-story-split { display: grid; grid-template-columns: 1fr 1fr; padding: 0; }
.fuel-story-image { min-height: 700px; }
.fuel-story-image img { width: 100%; height: 100%; object-fit: cover; }
.fuel-story-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(55px, 9vw, 135px); }
.fuel-story-copy h2 { margin-bottom: 25px; }
.fuel-story-copy p:not(.fuel-kicker) { max-width: 610px; }
.fuel-values { background: var(--fuel-navy); color: #fff; }
.fuel-values-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.fuel-values-grid article { min-height: 280px; padding: 30px; border: 1px solid rgba(255,255,255,.2); border-radius: 12px; }
.fuel-values-grid h3 { margin-top: 75px; font-family: var(--fuel-display); font-size: 1.4rem; text-transform: uppercase; }
.fuel-photo-cta { min-height: 680px; display: flex; align-items: end; isolation: isolate; position: relative; background: #222 var(--fuel-photo-cta) center/cover no-repeat; color: #fff; }
.fuel-photo-cta::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(transparent, rgba(0,0,0,.78)); content: ""; }
.fuel-photo-cta > div { width: var(--fuel-shell); margin: 0 auto; padding-block: 80px; }

.fuel-contact-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 24px; }
.fuel-contact-grid article { padding: clamp(35px, 5vw, 60px); border: 1px solid #ddd7ce; border-radius: var(--fuel-radius); }
.fuel-contact-grid article:first-child { background: var(--fuel-cream); }
.fuel-contact-grid h2 { font-size: clamp(2.1rem, 3vw, 3.6rem); }

.fuel-location-hero { position: relative; min-height: 680px; display: flex; align-items: end; isolation: isolate; background-color: #222; background-image: var(--fuel-location-hero-mobile, var(--fuel-location-hero-desktop)); background-position: center; background-size: cover; background-repeat: no-repeat; color: #fff; }
.fuel-location-hero-shade { position: absolute; z-index: -1; inset: 0; background: linear-gradient(transparent 18%, rgba(0,0,0,.82)); }
.fuel-location-hero .fuel-shell { padding-block: 85px; }
.fuel-location-hero .fuel-kicker { color: #fff5d8; text-shadow: 0 2px 18px rgba(0,0,0,.45); }
.fuel-location-hero h1 { max-width: 1050px; margin-bottom: 15px; text-shadow: 0 2px 24px rgba(0,0,0,.38); }
.fuel-location-qualifier { white-space: nowrap; }
.fuel-location-hero .fuel-shell > p:last-child { font-size: 1.25rem; text-shadow: 0 2px 24px rgba(0,0,0,.38); }
.fuel-location-main-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(55px, 10vw, 135px); align-items: start; }
.fuel-location-story h2 { margin-bottom: 25px; }
.fuel-location-story p:not(.fuel-kicker) { max-width: 670px; font-size: 1.12rem; }
.fuel-location-info { padding: clamp(34px, 5vw, 60px); border-radius: var(--fuel-radius); background: var(--fuel-cream); }
.fuel-location-info h2 { font-size: 2.6rem; }
.fuel-location-info dl > div { padding: 18px 0; border-top: 1px solid #cec7bd; }
.fuel-location-info dt { color: var(--fuel-muted); font-size: .72rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.fuel-location-info dd { margin: 5px 0 0; font-weight: 650; }
.fuel-location-info dd a { text-decoration: none; }
.fuel-location-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 25px; }
.fuel-location-actions .fuel-text-link { width: 100%; margin-top: 10px; }
.fuel-location-next { padding-block: 45px; background: var(--fuel-navy); color: #fff; }
.fuel-location-next .fuel-shell { display: flex; gap: 25px; align-items: center; justify-content: space-between; }
.fuel-location-next p { margin: 0; font-family: var(--fuel-display); font-size: 1.4rem; text-transform: uppercase; }

.fuel-prose { max-width: 850px; }
.fuel-prose h2 { margin-top: 1.4em; font-size: clamp(2.2rem, 4vw, 3.8rem); }
.fuel-prose h3 { margin-top: 2em; font-family: var(--fuel-display); text-transform: uppercase; }
.fuel-prose p, .fuel-prose li { color: #393733; }
.fuel-legal-review { margin-bottom: 45px; padding: 18px 20px; border: 2px solid #bc7f00; background: #fff6d7; color: #3f2b00; }

.fuel-site-footer { padding: 85px 0 30px; background: #171717; color: #c8c5bf; }
.fuel-footer-grid { width: var(--fuel-shell); margin-inline: auto; display: grid; grid-template-columns: 1.35fr repeat(3, .7fr); gap: 65px; }
.fuel-footer-brand img { width: 175px; height: 110px; object-fit: contain; object-position: left center; }
.fuel-footer-brand p { max-width: 320px; margin-top: 22px; }
.fuel-footer-brand > a:last-child { color: #fff; font-weight: 750; }
.fuel-site-footer h2 { margin-bottom: 24px; color: #77736d; font-family: var(--fuel-body); font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; }
.fuel-site-footer ul { margin: 0; padding: 0; list-style: none; }
.fuel-site-footer li { margin-bottom: 12px; }
.fuel-site-footer li a { color: #fff; text-decoration: none; }
.fuel-site-footer li a:hover { color: #ff796c; }
.fuel-footer-social { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 27px !important; }
.fuel-footer-social li { margin: 0; }
.fuel-footer-social a { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: rgba(255,255,255,.035); color: #fff; transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, transform 160ms ease; }
.fuel-footer-social a:hover { border-color: var(--fuel-red); background: var(--fuel-red); color: #fff; transform: translateY(-2px); }
.fuel-footer-social a:focus-visible { outline: 3px solid #ff8b80; outline-offset: 3px; }
.fuel-footer-social svg { width: 17px; height: 17px; display: block; overflow: visible; }
.fuel-social-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.fuel-footer-motion { width: var(--fuel-shell); margin: 52px auto 0; display: grid; grid-template-columns: minmax(30px, 1fr) auto minmax(30px, 1fr); gap: clamp(18px, 3vw, 48px); align-items: center; color: #fff; }
.fuel-footer-motion::before, .fuel-footer-motion::after { height: 1px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.18)); content: ""; }
.fuel-footer-motion::after { background: linear-gradient(90deg, rgba(255,255,255,.18), transparent); }
.fuel-footer-gear-defs { position: absolute; width: 0; height: 0; overflow: hidden; pointer-events: none; }
.fuel-footer-gears { display: flex; gap: clamp(10px, 1.25vw, 20px); align-items: center; justify-content: center; }
.fuel-footer-gear { width: clamp(30px, 2.3vw, 38px); height: auto; overflow: visible; opacity: .86; }
.fuel-footer-gear__outer, .fuel-footer-gear__orbit, .fuel-footer-gear__core { fill: currentColor; transform-box: fill-box; transform-origin: center; }
.fuel-footer-gear__outer { animation-name: fuel-footer-gear-turn; animation-duration: var(--gear-speed); animation-delay: var(--gear-delay); animation-timing-function: linear; animation-iteration-count: infinite; animation-direction: var(--gear-direction); }
.fuel-footer-gear__orbit { opacity: .68; animation-name: fuel-footer-gear-turn; animation-duration: var(--orbit-speed); animation-delay: var(--orbit-delay); animation-timing-function: linear; animation-iteration-count: infinite; animation-direction: var(--orbit-direction); }
.fuel-footer-gear__core { opacity: .96; }
.fuel-footer-gear--1 { --gear-speed: 47s; --gear-delay: -11s; --gear-direction: normal; --orbit-speed: 31s; --orbit-delay: -5s; --orbit-direction: reverse; }
.fuel-footer-gear--2 { --gear-speed: 39s; --gear-delay: -23s; --gear-direction: reverse; --orbit-speed: 28s; --orbit-delay: -17s; --orbit-direction: normal; }
.fuel-footer-gear--3 { --gear-speed: 53s; --gear-delay: -31s; --gear-direction: normal; --orbit-speed: 37s; --orbit-delay: -9s; --orbit-direction: reverse; }
.fuel-footer-gear--4 { --gear-speed: 43s; --gear-delay: -7s; --gear-direction: reverse; --orbit-speed: 33s; --orbit-delay: -24s; --orbit-direction: normal; }
.fuel-footer-gear--5 { --gear-speed: 59s; --gear-delay: -41s; --gear-direction: normal; --orbit-speed: 41s; --orbit-delay: -13s; --orbit-direction: reverse; }
@keyframes fuel-footer-gear-turn { to { transform: rotate(1turn); } }
.fuel-footer-legal { width: var(--fuel-shell); margin: 32px auto 0; padding-top: 26px; border-top: 1px solid #353535; display: flex; gap: 30px; align-items: center; justify-content: space-between; font-size: .8rem; }
.fuel-footer-legal p { margin: 0; }
.fuel-footer-legal > div { display: flex; flex-wrap: wrap; gap: 18px; }
.fuel-footer-legal a, .fuel-footer-cookie-button { border: 0; background: none; color: #c8c5bf; cursor: pointer; font: inherit; padding: 0; text-decoration: none; }
.fuel-footer-legal a:hover, .fuel-footer-cookie-button:hover { color: #fff; }

.fuel-cookie-banner { position: fixed; z-index: 5000; right: 24px; bottom: 24px; width: min(470px, calc(100vw - 48px)); padding: 26px; border: 1px solid #d5cec4; border-top: 5px solid var(--fuel-red); border-radius: 16px; display: grid; gap: 20px; background: #fff; box-shadow: 0 24px 80px rgba(0,0,0,.24); }
.fuel-cookie-banner[hidden] { display: none; }
.fuel-cookie-copy > strong { display: block; font-family: var(--fuel-display); font-size: 1.18rem; letter-spacing: .015em; line-height: 1.1; text-transform: uppercase; }
.fuel-cookie-copy p { margin: 8px 0 10px; color: var(--fuel-muted); font-size: .92rem; line-height: 1.5; }
.fuel-cookie-policy-link { color: var(--fuel-ink); font-size: .82rem; font-weight: 750; }
.fuel-cookie-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-items: center; }
.fuel-cookie-actions .fuel-button { min-height: 46px; padding-inline: 15px; font-size: .78rem; }
.fuel-cookie-manage { grid-column: 1 / -1; justify-self: start; padding: 4px 0; color: var(--fuel-ink); font-size: .86rem; font-weight: 750; }
.fuel-cookie-dialog { width: min(680px, calc(100vw - 32px)); max-height: min(880px, calc(100svh - 32px)); overflow: auto; padding: 0; border: 0; border-radius: 18px; background: #fff; box-shadow: 0 30px 110px rgba(0,0,0,.35); }
.fuel-cookie-dialog::backdrop { background: rgba(0,0,0,.65); }
.fuel-cookie-dialog form { position: relative; padding: clamp(30px, 6vw, 52px); }
.fuel-cookie-dialog-kicker { margin-bottom: 10px; color: var(--fuel-red-dark); font-size: .72rem; font-weight: 900; letter-spacing: .2em; text-transform: uppercase; }
.fuel-cookie-dialog h2 { margin-bottom: 14px; font-size: clamp(2.2rem, 6vw, 3.4rem); }
.fuel-cookie-dialog-intro { max-width: 560px; margin-bottom: 28px; color: var(--fuel-muted); }
.fuel-cookie-dialog-intro a { color: var(--fuel-ink); font-weight: 750; }
.fuel-dialog-close { position: absolute; top: 16px; right: 18px; width: 42px; height: 42px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: var(--fuel-cream); color: var(--fuel-ink); cursor: pointer; font-size: 1.7rem; line-height: 1; }
.fuel-consent-row { display: flex; gap: 25px; align-items: center; justify-content: space-between; padding: 18px 0; border-top: 1px solid #ddd6cc; }
.fuel-consent-row span { display: flex; flex-direction: column; }
.fuel-consent-row small { color: var(--fuel-muted); }
.fuel-consent-row input { width: 24px; height: 24px; flex: 0 0 auto; accent-color: var(--fuel-red); }
.fuel-cookie-dialog .fuel-cookie-actions { grid-template-columns: repeat(3, 1fr); margin-top: 28px; }
.fuel-cookie-dialog .fuel-cookie-actions .fuel-button { width: 100%; }
.fuel-cookie-withdraw-help { margin: 14px 0 0; color: var(--fuel-muted); font-size: .85rem; line-height: 1.5; }

@media (max-width: 1050px) {
	.fuel-header-inner { grid-template-columns: 150px 1fr auto; }
	.fuel-primary-nav { gap: 18px; }
	.fuel-menu-grid { grid-template-columns: 1fr; }
	.fuel-location-strip { grid-template-columns: repeat(3, 1fr); }
	.fuel-location-tile:nth-child(n+4) { min-height: 330px; }
	.fuel-category-grid { grid-template-columns: repeat(2, 1fr); }
	.fuel-values-grid { grid-template-columns: repeat(2, 1fr); }
	.fuel-contact-grid { grid-template-columns: 1fr 1fr; }
	.fuel-contact-grid article:first-child { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
	:root { --fuel-shell: min(100% - 34px, 680px); }
	body { font-size: 16px; }
	.fuel-menu-hero-inner { grid-template-columns: 1fr; gap: 0; }
	.fuel-menu-hero-copy { padding-block: 72px 54px; }
	.fuel-menu-hero-image { min-height: 420px; margin-right: 0; }
	.fuel-header-inner { min-height: 82px; grid-template-columns: 1fr auto; }
	.fuel-brand { width: 118px; height: 70px; }
	.fuel-brand img { width: 112px; height: 64px; }
	.fuel-menu-toggle { display: flex; gap: 12px; align-items: center; padding: 10px; cursor: pointer; font-family: var(--fuel-display); text-transform: uppercase; }
	.fuel-menu-toggle-icon { width: 26px; display: grid; gap: 6px; }
	.fuel-menu-toggle-icon i { height: 2px; display: block; background: currentColor; transition: transform 160ms ease; }
	.fuel-menu-toggle[aria-expanded="true"] .fuel-menu-toggle-icon i:first-child { transform: translateY(4px) rotate(45deg); }
	.fuel-menu-toggle[aria-expanded="true"] .fuel-menu-toggle-icon i:last-child { transform: translateY(-4px) rotate(-45deg); }
	.fuel-primary-nav { position: fixed; inset: 82px 0 0; display: none; flex-direction: column; gap: 12px; align-items: stretch; justify-content: flex-start; padding: 35px 26px; background: var(--fuel-paper); }
	.fuel-primary-nav.is-open { display: flex; }
	.fuel-primary-nav a { padding: 14px 0; border-bottom: 1px solid #ddd6cc; font-size: 1.35rem; }
	.fuel-header-order { display: none; }
	.fuel-hero { min-height: calc(100svh - 82px); }
	.fuel-hero::after { background: linear-gradient(90deg, rgba(0,0,0,.76), rgba(0,0,0,.26)); }
	.fuel-hero-content { padding-block: 90px; }
	.fuel-hero-scroll { display: none; }
	.fuel-quick-actions { grid-template-columns: repeat(2, 1fr); }
	.fuel-quick-actions a { min-height: 130px; }
	.fuel-quick-actions a:nth-child(5) { grid-column: 1 / -1; }
	.fuel-seasonal, .fuel-feature-split, .fuel-story-split { grid-template-columns: 1fr; }
	.fuel-seasonal-image, .fuel-feature-image, .fuel-story-image { min-height: 500px; }
	.fuel-seasonal-content { padding: 60px 26px 72px; }
	.fuel-section-heading { display: block; }
	.fuel-section-heading > p, .fuel-section-heading > a { margin-top: 22px; }
	.fuel-brand-panel-inner, .fuel-two-column, .fuel-app-hero-inner, .fuel-location-main-grid { grid-template-columns: 1fr; gap: 55px; }
	.fuel-location-strip { grid-template-columns: repeat(2, 1fr); }
	.fuel-location-tile { min-height: 330px; }
	.fuel-rewards-callout-inner { display: block; }
	.fuel-rewards-callout .fuel-button-row { margin-top: 28px; }
	.fuel-dual-promos { grid-template-columns: 1fr; }
	.fuel-menu-grid, .fuel-contact-grid { grid-template-columns: 1fr; }
	.fuel-location-card, .fuel-location-card:nth-child(even) { grid-template-columns: 1fr; }
	.fuel-location-card:nth-child(even) .fuel-location-card-image { order: 0; }
	.fuel-location-card-image { min-height: 360px; }
	.fuel-rewards-steps, .fuel-feature-icons { grid-template-columns: 1fr; }
	.fuel-values-grid { grid-template-columns: 1fr 1fr; }
	.fuel-footer-grid { grid-template-columns: 1fr 1fr; }
	.fuel-footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 560px) {
	:root { --fuel-shell: calc(100vw - 28px); --fuel-radius: 16px; }
	h1 { font-size: clamp(3.3rem, 17vw, 5.4rem); }
	h2 { font-size: clamp(2.35rem, 12vw, 3.8rem); }
	.fuel-section { padding-block: 75px; }
	.fuel-button-row .fuel-button { width: 100%; }
	.fuel-hero-content { padding-block: 65px; }
	.fuel-quick-actions a { padding-inline: 9px; }
	.fuel-seasonal-list { columns: 1; }
	.fuel-category-grid, .fuel-location-strip, .fuel-values-grid { grid-template-columns: 1fr; }
	.fuel-location-tile { min-height: 390px; }
	.fuel-menu-card { grid-template-columns: 1fr; }
	.fuel-menu-card-image { max-height: 260px; }
	.fuel-notice-bar, .fuel-location-next .fuel-shell { align-items: flex-start; flex-direction: column; }
	.fuel-page-hero { min-height: 430px; }
	section.fuel-page-hero--policy h1 { font-size: clamp(2.85rem, 14vw, 3.4rem); }
	.fuel-location-hero { min-height: 570px; }
	.fuel-location-hero h1 { font-size: clamp(3rem, 14vw, 4rem); }
	.fuel-location-qualifier { display: block; white-space: normal; }
	.fuel-footer-grid { grid-template-columns: 1fr; gap: 38px; }
	.fuel-footer-brand { grid-column: auto; }
	.fuel-footer-motion { margin-top: 40px; gap: 14px; }
	.fuel-footer-gears { gap: 9px; }
	.fuel-footer-gear { width: 29px; }
	.fuel-footer-legal { margin-top: 26px; align-items: flex-start; flex-direction: column; }
	.fuel-cookie-banner { right: 10px; bottom: 10px; width: calc(100vw - 20px); max-height: calc(100svh - 20px); overflow: auto; padding: 20px; }
	.fuel-cookie-actions { width: 100%; }
	.fuel-cookie-dialog form { padding: 52px 22px 26px; }
	.fuel-cookie-dialog .fuel-cookie-actions { grid-template-columns: 1fr; }
	.fuel-consent-row { align-items: flex-start; gap: 16px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.fuel-footer-gear__outer, .fuel-footer-gear__orbit { animation: none !important; transform: none !important; }
}

@media print {
	.fuel-site-header, .fuel-site-footer, .fuel-cookie-banner, .fuel-cookie-dialog, .fuel-button { display: none !important; }
	body { background: #fff; color: #000; }
}

/* --------------------------------------------------------------
   Visual stabilization layer
   Keeps the custom theme resilient when Elementor's global kit CSS
   is loaded after the theme stylesheet.
-------------------------------------------------------------- */
body.elementor-kit-6 {
	color: var(--fuel-ink);
	font-family: var(--fuel-body);
	font-size: 17px;
	line-height: 1.62;
}

body.elementor-kit-6 p,
body.elementor-kit-6 li {
	line-height: 1.5;
}

body.elementor-kit-6 h1,
body.elementor-kit-6 h2 {
	font-family: var(--fuel-display);
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: .94;
	text-transform: uppercase;
}

body.elementor-kit-6 h1 {
	font-size: clamp(3.8rem, 9vw, 8.5rem);
}

body.elementor-kit-6 h2 {
	font-size: clamp(2.5rem, 5vw, 5.4rem);
}

body.elementor-kit-6 .fuel-page-hero h1 {
	font-size: clamp(4rem, 8vw, 8rem);
}

body.elementor-kit-6 .fuel-dual-promos h2 {
	font-size: clamp(2.5rem, 4vw, 4.6rem);
}

body.elementor-kit-6 .fuel-location-info h2 {
	font-size: 2.6rem;
}

body.elementor-kit-6 .fuel-prose h2 {
	font-size: clamp(2.2rem, 4vw, 3.8rem);
}

body.elementor-kit-6 .fuel-category-card h3 {
	font-family: var(--fuel-display);
	font-size: 1.35rem;
	line-height: 1.12;
	text-transform: uppercase;
}

body.elementor-kit-6 a.fuel-button {
	color: #fff;
	font-family: var(--fuel-display);
	line-height: 1;
}

body.elementor-kit-6 a.fuel-button--ghost,
body.elementor-kit-6 a.fuel-button--outline-light:hover {
	color: var(--fuel-ink);
}

body.elementor-kit-6 a.fuel-text-link {
	color: var(--fuel-ink);
	font-family: var(--fuel-display);
	line-height: 1.3;
}

body.elementor-kit-6 a.fuel-text-link--light,
body.elementor-kit-6 .fuel-seasonal a.fuel-text-link,
body.elementor-kit-6 .fuel-location-next a,
body.elementor-kit-6 .fuel-photo-cta a {
	color: #fff;
}

body.elementor-kit-6 .fuel-hero h1,
body.elementor-kit-6 .fuel-seasonal h2,
body.elementor-kit-6 .fuel-brand-panel h2,
body.elementor-kit-6 .fuel-rewards-callout h2,
body.elementor-kit-6 .fuel-dual-promos h2,
body.elementor-kit-6 .fuel-location-hero h1,
body.elementor-kit-6 .fuel-photo-cta h2 {
	color: #fff;
}

body.elementor-kit-6 a.fuel-location-tile,
body.elementor-kit-6 a.fuel-location-tile strong,
body.elementor-kit-6 a.fuel-location-tile small {
	color: #fff;
}

body.elementor-kit-6 .fuel-quick-actions strong {
	line-height: 1.2;
}

body.elementor-kit-6 .fuel-quick-actions small,
body.elementor-kit-6 .fuel-location-tile-copy small {
	line-height: 1.35;
}

body.elementor-kit-6 .fuel-location-tile-copy strong {
	line-height: 1.05;
}

body.elementor-kit-6 .fuel-category-card p,
body.elementor-kit-6 .fuel-seasonal-content > p:not(.fuel-kicker),
body.elementor-kit-6 .fuel-feature-copy > p:not(.fuel-kicker),
body.elementor-kit-6 .fuel-brand-panel-inner > div:last-child > p,
body.elementor-kit-6 .fuel-rewards-callout p:not(.fuel-kicker),
body.elementor-kit-6 .fuel-footer-brand p {
	line-height: 1.55;
}

body.elementor-kit-6 .fuel-site-footer h2 {
	color: #aaa59e;
	font-family: var(--fuel-body);
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .2em;
	line-height: 1.35;
}

body.elementor-kit-6 .fuel-site-footer a {
	color: #fff;
}

.fuel-utility-bar {
	min-height: 40px;
	display: flex;
	align-items: center;
	background: var(--fuel-navy);
	color: #fff;
}

.fuel-utility-inner {
	width: min(1280px, calc(100vw - 34px));
	margin-inline: auto;
	display: flex;
	justify-content: flex-end;
}

.fuel-utility-nav {
	display: flex;
	align-items: stretch;
}

.fuel-utility-nav a {
	min-height: 40px;
	display: inline-flex;
	align-items: center;
	padding: 7px 18px;
	border-left: 1px solid rgba(255,255,255,.2);
	color: #fff;
	font-family: var(--fuel-display);
	font-size: .76rem;
	font-weight: 800;
	letter-spacing: .06em;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
}

.fuel-utility-nav a:last-child {
	border-right: 1px solid rgba(255,255,255,.2);
}

.fuel-utility-nav a:hover,
.fuel-utility-nav a:focus-visible {
	background: rgba(255,255,255,.12);
	color: #fff;
}

body.elementor-kit-6 .fuel-utility-nav a {
	color: #fff;
	font-family: var(--fuel-display);
	line-height: 1;
}

.fuel-site-header.is-sticky .fuel-utility-bar {
	display: none;
}

.fuel-hero {
	min-height: min(840px, calc(100svh - 142px));
}

@media (max-width: 820px) {
	.fuel-primary-nav {
		inset: 122px 0 0;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
	}

	.fuel-site-header.is-sticky .fuel-primary-nav {
		inset: 82px 0 0;
	}

	.fuel-hero {
		min-height: calc(100svh - 122px);
	}
}

@media (max-width: 560px) {
	.fuel-primary-nav {
		gap: 4px;
		padding: 18px 22px;
	}

	.fuel-primary-nav a {
		padding-block: 10px;
		font-size: 1.15rem;
	}

	.fuel-utility-inner {
		width: 100%;
		justify-content: center;
	}

	.fuel-utility-nav {
		width: 100%;
	}

	.fuel-utility-nav a {
		flex: 1;
		justify-content: center;
		padding-inline: 10px;
	}

	.fuel-seasonal-image,
	.fuel-feature-image,
	.fuel-story-image {
		min-height: 360px;
	}

	.fuel-feature-image--app img {
		padding: 28px;
	}

	.fuel-category-card p {
		min-height: 0;
	}
}



/* === Homepage Visual System 2026-08-19 === */
/* Fuel America visual system — homepage stabilization */
:root {
  --fuel-red: #d83a2e;
  --fuel-red-dark: #b62b22;
  --fuel-navy: #073f4b;
  --fuel-ink: #172126;
  --fuel-cream: #f7f3eb;
  --fuel-paper: #fffdf8;
  --fuel-sand: #e8dfd2;
  --fuel-line: rgba(23,33,38,.14);
  --fuel-shadow: 0 18px 48px rgba(23,33,38,.14);
  --fuel-radius-sm: 10px;
  --fuel-radius: 18px;
  --fuel-radius-lg: 28px;
  --fuel-shell: min(1180px, calc(100% - 48px));
  --fuel-section-space: clamp(72px, 8vw, 124px);
}
html { scroll-behavior: smooth; }
body { background: var(--fuel-paper); color: var(--fuel-ink); }
.fuel-shell { width: var(--fuel-shell); }
.fuel-section { padding-block: var(--fuel-section-space); }
.fuel-kicker { letter-spacing: .18em; font-size: clamp(.72rem, .8vw, .84rem); line-height: 1.35; }
.fuel-section-heading { max-width: 760px; margin-bottom: clamp(32px, 4vw, 56px); }
.fuel-section-heading h2, .fuel-brand-panel h2, .fuel-rewards-callout h2,
.fuel-feature-copy h2, .fuel-dual-promos h2 { text-wrap: balance; line-height: .94; }
.fuel-button {
  min-height: 50px; padding: 14px 22px; border-radius: 8px; letter-spacing: .07em;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.fuel-button:hover, .fuel-button:focus-visible {
  transform: translateY(-2px); box-shadow: 0 10px 26px rgba(23,33,38,.18);
}
.fuel-button:focus-visible, .fuel-text-link:focus-visible, .fuel-category-card:focus-visible,
.fuel-location-tile:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 6px #1967d2; }
.fuel-utility-bar { background: var(--fuel-navy); }
.fuel-utility-nav a { padding-inline: 22px; }
.fuel-header-inner { min-height: 100px; }
.fuel-brand img { max-height: 70px; }
.fuel-primary-nav a { position: relative; }
.fuel-primary-nav a::after {
  content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 3px;
  background: var(--fuel-red); transition: right .2s ease;
}
.fuel-primary-nav a:hover::after, .fuel-primary-nav a:focus-visible::after { right: 0; }
.fuel-hero {
  min-height: clamp(650px, 78vh, 860px); display: grid; align-items: center; background-position: center;
}
.fuel-hero-shade {
  background: linear-gradient(90deg, rgba(8,17,20,.88) 0%, rgba(8,17,20,.68) 45%,
    rgba(8,17,20,.18) 78%, rgba(8,17,20,.08) 100%);
}
.fuel-hero-content { padding-block: clamp(72px, 9vw, 130px); }
.fuel-hero-copy { max-width: 690px; }
.fuel-hero h1 {
  max-width: 680px; font-size: clamp(4.1rem, 8.2vw, 7.5rem); line-height: .84;
  letter-spacing: -.035em; text-wrap: balance;
}
.fuel-hero-copy > p:not(.fuel-kicker) {
  max-width: 650px; font-size: clamp(1.08rem, 1.5vw, 1.32rem); line-height: 1.55;
}
.fuel-button-row { gap: 12px; flex-wrap: wrap; }
.fuel-quick-actions {
  width: min(1100px, calc(100% - 48px)); margin: -42px auto 0; position: relative; z-index: 3;
  border-radius: var(--fuel-radius); overflow: hidden; box-shadow: var(--fuel-shadow);
  background: var(--fuel-paper);
}
.fuel-quick-actions a {
  min-height: 116px; padding: 24px 20px; border-color: var(--fuel-line);
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.fuel-quick-actions a:hover { background: var(--fuel-cream); color: var(--fuel-ink); transform: translateY(-3px); }
.fuel-seasonal {
  width: min(1260px, calc(100% - 48px)); margin: var(--fuel-section-space) auto 0;
  border-radius: var(--fuel-radius-lg); overflow: hidden; box-shadow: var(--fuel-shadow);
  background: var(--fuel-red);
}
.fuel-seasonal-image img { height: 100%; object-fit: cover; }
.fuel-seasonal-content { padding: clamp(42px, 6vw, 82px); }
.fuel-seasonal-list { gap: 10px 22px; }
.fuel-seasonal-list li { line-height: 1.4; }
.fuel-menu-preview { background: var(--fuel-paper); }
.fuel-category-grid { gap: clamp(18px, 2.5vw, 30px); }
.fuel-category-card {
  border-radius: var(--fuel-radius); overflow: hidden; background: #fff; border: 1px solid var(--fuel-line);
  box-shadow: 0 12px 34px rgba(23,33,38,.08); transition: transform .24s ease, box-shadow .24s ease;
}
.fuel-category-card:hover { transform: translateY(-7px); box-shadow: var(--fuel-shadow); }
.fuel-card-image { aspect-ratio: 4 / 3; overflow: hidden; }
.fuel-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.fuel-category-card:hover .fuel-card-image img { transform: scale(1.04); }
.fuel-category-card h3, .fuel-category-card p, .fuel-category-card .fuel-text-link { margin-inline: 24px; }
.fuel-category-card h3 { margin-top: 24px; line-height: 1; }
.fuel-category-card .fuel-text-link { margin-bottom: 26px; }
.fuel-brand-panel {
  margin-inline: 24px; border-radius: var(--fuel-radius-lg); overflow: hidden; background: var(--fuel-navy);
}
.fuel-brand-panel-inner {
  min-height: 520px; align-items: center; padding-block: clamp(70px, 9vw, 125px);
}
.fuel-brand-panel-inner > * { max-width: 720px; }
.fuel-locations-home { background: var(--fuel-cream); }
.fuel-location-strip { gap: 16px; }
.fuel-location-tile {
  min-height: 340px; border-radius: var(--fuel-radius); overflow: hidden;
  box-shadow: 0 12px 34px rgba(23,33,38,.11); transition: transform .24s ease, box-shadow .24s ease;
}
.fuel-location-tile:hover { transform: translateY(-6px); box-shadow: var(--fuel-shadow); }
.fuel-location-tile-shade { background: linear-gradient(180deg, transparent 35%, rgba(8,17,20,.9) 100%); }
.fuel-location-tile-copy { padding: 26px; }
.fuel-rewards-callout {
  width: min(1180px, calc(100% - 48px)); margin: var(--fuel-section-space) auto;
  border-radius: var(--fuel-radius-lg); overflow: hidden; box-shadow: var(--fuel-shadow);
}
.fuel-rewards-callout-inner { padding: clamp(54px, 7vw, 92px); }
.fuel-feature-split {
  width: min(1180px, calc(100% - 48px)); margin-inline: auto; padding: 0;
  border-radius: var(--fuel-radius-lg); overflow: hidden; border: 1px solid var(--fuel-line);
  box-shadow: var(--fuel-shadow);
}
.fuel-feature-image { min-height: 560px; }
.fuel-feature-copy { padding: clamp(48px, 6vw, 86px); }
.fuel-dual-promos {
  width: min(1180px, calc(100% - 48px)); margin: var(--fuel-section-space) auto; gap: 22px;
}
.fuel-dual-promos article {
  min-height: 430px; border-radius: var(--fuel-radius-lg); overflow: hidden;
  box-shadow: var(--fuel-shadow); transition: transform .24s ease;
}
.fuel-dual-promos article:hover { transform: translateY(-6px); }
@media (max-width: 900px) {
  :root { --fuel-shell: min(100% - 36px, 760px); --fuel-section-space: 78px; }
  .fuel-menu-hero-image { margin-right: 0; }
  .fuel-header-inner { min-height: 82px; }
  .fuel-brand img { max-height: 58px; }
  .fuel-hero { min-height: 680px; background-position: 62% center; }
  .fuel-hero h1 { font-size: clamp(3.8rem, 12vw, 6rem); max-width: 620px; }
  .fuel-hero-shade { background: linear-gradient(90deg, rgba(8,17,20,.9), rgba(8,17,20,.58) 72%, rgba(8,17,20,.34)); }
  .fuel-quick-actions { width: calc(100% - 36px); grid-template-columns: repeat(2,1fr); margin-top: -34px; }
  .fuel-quick-actions a:last-child { grid-column: 1 / -1; }
  .fuel-seasonal { width: calc(100% - 36px); grid-template-columns: 1fr; }
  .fuel-seasonal-image { min-height: 430px; }
  .fuel-category-grid { grid-template-columns: repeat(2,1fr); }
  .fuel-brand-panel { margin-inline: 18px; }
  .fuel-location-strip { grid-template-columns: repeat(2,1fr); }
  .fuel-feature-split { width: calc(100% - 36px); grid-template-columns: 1fr; }
  .fuel-feature-image { min-height: 460px; }
  .fuel-dual-promos { width: calc(100% - 36px); grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  :root { --fuel-shell: calc(100% - 28px); --fuel-section-space: 62px; }
  .fuel-utility-nav { width: 100%; }
  .fuel-utility-nav a { flex: 1; padding: 12px 8px; text-align: center; }
  .fuel-header-inner { min-height: 82px; }
  .fuel-hero { min-height: 650px; background-position: 64% center; }
  .fuel-hero-content { padding-top: 66px; padding-bottom: 92px; }
  .fuel-hero h1 { font-size: clamp(3.35rem, 18vw, 4.8rem); line-height: .87; }
  .fuel-hero-copy > p:not(.fuel-kicker) { font-size: 1rem; line-height: 1.5; }
  .fuel-button-row { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .fuel-button-row .fuel-button:first-child { grid-column: 1 / -1; }
  .fuel-button { justify-content: center; text-align: center; }
  .fuel-hero-scroll { display: none; }
  .fuel-quick-actions { width: calc(100% - 28px); margin-top: -28px; grid-template-columns: 1fr 1fr; }
  .fuel-quick-actions a { min-height: 104px; padding: 18px 12px; }
  .fuel-seasonal { width: calc(100% - 28px); margin-top: 62px; }
  .fuel-seasonal-image { min-height: 310px; }
  .fuel-seasonal-content { padding: 34px 24px 40px; }
  .fuel-category-grid { grid-template-columns: 1fr; }
  .fuel-card-image { aspect-ratio: 16 / 11; }
  .fuel-brand-panel { margin-inline: 14px; }
  .fuel-brand-panel-inner { min-height: 440px; padding-block: 64px; }
  .fuel-location-strip { display: grid; grid-template-columns: 1fr; }
  .fuel-location-tile { min-height: 300px; }
  .fuel-rewards-callout { width: calc(100% - 28px); margin-block: 62px; }
  .fuel-rewards-callout-inner { padding: 46px 26px; }
  .fuel-feature-split { width: calc(100% - 28px); }
  .fuel-feature-image { min-height: 360px; }
  .fuel-feature-copy { padding: 40px 26px 46px; }
  .fuel-dual-promos { width: calc(100% - 28px); margin-block: 62px; }
  .fuel-dual-promos article { min-height: 360px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}



/* === Header Commerce Consolidation 2026-08-19 === */
.fuel-primary-nav { gap: clamp(14px, 2vw, 30px); }
.fuel-primary-nav .fuel-nav-commerce {
  color: var(--fuel-muted);
  font-size: .76rem;
  letter-spacing: .055em;
}
.fuel-primary-nav .fuel-nav-commerce--first {
  margin-left: clamp(4px, 1vw, 16px);
  padding-left: clamp(14px, 1.5vw, 24px);
  border-left: 1px solid rgba(23, 23, 23, .18);
}
@media (max-width: 820px) {
  .fuel-primary-nav .fuel-nav-commerce {
    color: var(--fuel-ink);
    font-size: 1.35rem;
    letter-spacing: .045em;
  }
  .fuel-primary-nav .fuel-nav-commerce--first {
    margin-left: 0;
    padding-left: 0;
    border-left: 0;
  }
}


/* === Gift Cards Navigation 2026-08-19 === */
.fuel-nav-dropdown { position: relative; }
.fuel-nav-dropdown summary {
  display: flex; gap: 7px; align-items: center; cursor: pointer; list-style: none;
  font-family: var(--fuel-display); font-size: .76rem; letter-spacing: .055em;
  text-transform: uppercase;
}
.fuel-nav-dropdown summary::-webkit-details-marker { display: none; }
.fuel-nav-dropdown summary::after { content: "+"; color: var(--fuel-red); font-size: 1rem; line-height: 1; }
.fuel-nav-dropdown[open] summary::after { content: "−"; }
.fuel-nav-dropdown-menu {
  position: absolute; z-index: 20; top: calc(100% + 18px); right: 0; width: 220px;
  display: grid; gap: 2px; padding: 12px; border: 1px solid rgba(23, 23, 23, .1);
  border-radius: 12px; background: var(--fuel-paper); box-shadow: 0 18px 50px rgba(22, 22, 22, .16);
}
.fuel-primary-nav .fuel-nav-dropdown-menu a {
  padding: 12px 13px; border-radius: 8px; color: var(--fuel-ink); font-size: .78rem;
}
.fuel-primary-nav .fuel-nav-dropdown-menu a::after { display: none; }
.fuel-primary-nav .fuel-nav-dropdown-menu a:hover,
.fuel-primary-nav .fuel-nav-dropdown-menu a:focus-visible { background: var(--fuel-cream); color: var(--fuel-red); }
@media (max-width: 820px) {
  .fuel-nav-dropdown { width: 100%; }
  .fuel-nav-dropdown summary {
    padding: 14px 0; border-bottom: 1px solid #ddd6cc; color: var(--fuel-ink);
    font-size: 1.35rem; letter-spacing: .045em;
  }
  .fuel-nav-dropdown-menu {
    position: static; width: 100%; gap: 0; padding: 4px 0 8px 18px;
    border: 0; border-radius: 0; background: transparent; box-shadow: none;
  }
  .fuel-primary-nav .fuel-nav-dropdown-menu a {
    padding: 11px 0; border-radius: 0; font-size: 1rem;
  }
}


/* === Header Utility Legibility 2026-08-19 === */
.fuel-primary-nav .fuel-nav-commerce {
  color: #3d3934;
  font-size: .82rem;
  letter-spacing: .052em;
}
.fuel-primary-nav .fuel-nav-commerce--first::after {
  left: clamp(14px, 1.5vw, 24px);
}
.fuel-nav-dropdown summary {
  color: #3d3934;
  font-size: .82rem;
  letter-spacing: .052em;
}
@media (max-width: 820px) {
  .fuel-primary-nav .fuel-nav-commerce {
    color: var(--fuel-ink);
    font-size: 1.35rem;
    letter-spacing: .045em;
  }
  .fuel-primary-nav .fuel-nav-commerce--first::after { left: 0; }
  .fuel-nav-dropdown summary {
    color: var(--fuel-ink);
    font-size: 1.35rem;
    letter-spacing: .045em;
  }
}


/* Cycle 2: app media, rewards proof, and expanded support routing. */
.fuel-app-hero-media {
  width: min(100%, 430px);
  justify-self: center;
}
.fuel-app-hero-media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--fuel-radius-lg);
  box-shadow: var(--fuel-shadow);
}
.fuel-rewards-proof {
  padding-top: clamp(28px, 4vw, 54px);
  background: #fff;
}
.fuel-rewards-proof-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(170px, .6fr));
  align-items: center;
  gap: 0;
  overflow: hidden;
  border: 1px solid #ddd7ce;
  border-radius: var(--fuel-radius-lg);
  background: var(--fuel-cream);
  box-shadow: 0 18px 48px rgba(25,31,32,.08);
}
.fuel-rewards-proof-intro {
  display: flex;
  align-items: center;
  gap: 30px;
  padding: clamp(28px, 4vw, 48px);
}
.fuel-rewards-proof-intro img {
  flex: 0 0 76px;
  display: block;
  width: 76px;
  height: 76px;
}
.fuel-rewards-proof-intro .fuel-kicker { margin-bottom: 8px; }
.fuel-rewards-proof-intro p:last-child { max-width: 30ch; margin: 0; font-size: 1.08rem; }
.fuel-rewards-proof-metric {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(28px, 4vw, 48px);
  border-left: 1px solid #d8d0c4;
}
.fuel-rewards-proof .fuel-rewards-proof-metric strong {
  display: block;
  padding: 0;
  border: 0;
  background: none;
  color: var(--fuel-red-dark);
  font-family: var(--fuel-display);
  font-size: clamp(2.7rem, 4.3vw, 4rem);
  line-height: .9;
}
.fuel-rewards-proof .fuel-rewards-proof-metric span {
  display: block;
  margin-top: 10px;
  color: var(--fuel-ink);
  font-family: var(--fuel-display);
  font-size: .88rem;
  letter-spacing: .05em;
  line-height: 1.15;
  text-transform: uppercase;
}
.fuel-contact-grid--expanded {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.fuel-contact-grid--expanded article {
  grid-column: span 2;
}
.fuel-contact-grid--expanded article:nth-child(-n + 2) {
  grid-column: span 3;
}
@media (max-width: 1024px) {
  .fuel-contact-grid--expanded {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .fuel-contact-grid--expanded article,
  .fuel-contact-grid--expanded article:nth-child(-n + 2) {
    grid-column: auto;
  }
}
@media (max-width: 767px) {
	.fuel-app-hero h1 { max-width: 10ch; font-size: clamp(3rem, 13vw, 4.2rem); }
  .fuel-app-hero-media {
    width: min(100%, 330px);
  }
  .fuel-contact-grid--expanded {
    grid-template-columns: 1fr;
  }
}

/* Cycle 3: local-page imagery, internal pathways, and LCP presentation. */
.fuel-location-gallery {
  background: var(--fuel-cream);
}
.fuel-location-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
.fuel-location-gallery-grid.is-single {
  grid-template-columns: minmax(0, 1fr);
}
.fuel-location-gallery-grid figure {
  margin: 0;
}
.fuel-location-gallery-grid img {
  display: block;
  width: 100%;
  height: clamp(320px, 42vw, 620px);
  object-fit: cover;
  border-radius: var(--fuel-radius-lg);
  box-shadow: var(--fuel-shadow);
}
.fuel-location-gallery-grid figcaption {
  padding-top: 14px;
  color: #55514b;
  font-size: .95rem;
}
.fuel-location-links-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.fuel-location-links-grid article {
  padding: clamp(32px, 4vw, 52px);
  border: 1px solid #ddd7ce;
  border-radius: var(--fuel-radius);
}
.fuel-location-links-grid article:first-child {
  background: var(--fuel-cream);
}
.fuel-location-links-grid h2 {
  margin-bottom: 18px;
  font-size: clamp(2.2rem, 3vw, 3.4rem);
}
@media (max-width: 900px) {
  .fuel-location-links-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .fuel-location-gallery-grid,
  .fuel-location-gallery-grid.is-single {
    grid-template-columns: 1fr;
  }
  .fuel-location-gallery-grid img {
    height: auto;
  }
}

/* Cycle 4: policy-page clarity and pre-launch review state. */
.fuel-policy-notice {
  margin: 0 0 32px;
  padding: 22px 24px;
  border-left: 5px solid var(--fuel-red);
  background: var(--fuel-cream);
  color: var(--fuel-ink);
}
.fuel-policy-meta {
  color: #625f59;
  font-size: .95rem;
}
.fuel-policy ul {
  margin: 20px 0 28px;
  padding-left: 1.35rem;
}
.fuel-policy li + li {
  margin-top: 12px;
}
.fuel-inline-cookie-button {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--fuel-red);
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

/* Cycle 7: native, accessible data-deletion request flow. */
.fuel-delete-request-layout {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(40px, 7vw, 96px);
  align-items: start;
}
.fuel-delete-request-form {
  display: grid;
  gap: 20px;
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid #ddd7ce;
  border-radius: var(--fuel-radius);
  background: #fff;
  box-shadow: var(--fuel-shadow);
}
.fuel-delete-request-details {
  max-width: 850px;
  margin-top: clamp(48px, 6vw, 80px);
  padding-top: clamp(30px, 4vw, 48px);
  border-top: 1px solid #ddd7ce;
}
.fuel-delete-request-details h2:first-child { margin-top: 0; }
form.fuel-delete-request-form label {
	display: block;
	color: var(--fuel-ink);
	font-weight: 700;
}
.fuel-delete-request-form input,
.fuel-delete-request-form textarea {
	display: block;
	width: 100%;
	margin-top: 8px;
	padding: 13px 14px;
  border: 1px solid #a9a49c;
  border-radius: 4px;
  background: #fff;
  color: var(--fuel-ink);
  font: inherit;
}
.fuel-delete-request-form input:focus,
.fuel-delete-request-form textarea:focus {
  outline: 3px solid rgba(219, 57, 47, .24);
  border-color: var(--fuel-red);
}
.fuel-form-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.fuel-field-optional,
.fuel-form-help {
  color: #625f59;
  font-size: .9rem;
  font-weight: 400;
}
form.fuel-delete-request-form .fuel-field-optional { margin-left: 8px; }
.fuel-form-help { margin: -10px 0 0; }
.fuel-form-status {
  margin-bottom: 20px;
  padding: 18px 20px;
  border-left: 5px solid var(--fuel-red);
  background: var(--fuel-cream);
}
.fuel-form-status.is-success { border-left-color: #287a45; }
.fuel-form-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}
@media (max-width: 800px) {
  .fuel-delete-request-layout,
  .fuel-form-row { grid-template-columns: 1fr; }
}

/* Cycle 9: serve appropriately sized CSS background images. */
@media (min-width: 768px) {
  .fuel-hero { background-image: var(--fuel-hero-image-desktop, var(--fuel-hero-image-mobile)); }
  .fuel-seasonal-image { background-image: var(--fuel-seasonal-image-desktop, var(--fuel-seasonal-image-mobile)); }
  .fuel-location-tile { background-image: var(--fuel-location-image-desktop, var(--fuel-location-image-mobile)); }
  .fuel-dual-promos article { background-image: var(--fuel-promo-image-desktop, var(--fuel-promo-image-mobile)); }
  .fuel-location-hero { background-image: var(--fuel-location-hero-desktop, var(--fuel-location-hero-mobile)); }
}

/* Release 0.9.27: keep the expanded navigation usable before it can collide. */
@media (max-width: 1120px) {
  .fuel-header-inner {
    min-height: 82px;
    grid-template-columns: 1fr auto;
  }
  .fuel-brand { width: 118px; height: 70px; }
  .fuel-brand img { width: 112px; height: 64px; max-height: 64px; }
  .fuel-menu-toggle {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 10px;
    cursor: pointer;
    font-family: var(--fuel-display);
    text-transform: uppercase;
  }
  .fuel-menu-toggle-icon { width: 26px; display: grid; gap: 6px; }
  .fuel-menu-toggle-icon i { height: 2px; display: block; background: currentColor; transition: transform 160ms ease; }
  .fuel-menu-toggle[aria-expanded="true"] .fuel-menu-toggle-icon i:first-child { transform: translateY(4px) rotate(45deg); }
  .fuel-menu-toggle[aria-expanded="true"] .fuel-menu-toggle-icon i:last-child { transform: translateY(-4px) rotate(-45deg); }
  .fuel-primary-nav {
    position: fixed;
    inset: 82px 0 0;
    display: none;
    overflow-y: auto;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
    justify-content: flex-start;
    padding: 30px 26px;
    background: var(--fuel-paper);
    overscroll-behavior: contain;
  }
  .fuel-primary-nav.is-open { display: flex; }
  .fuel-primary-nav a,
  .fuel-primary-nav .fuel-nav-commerce {
    padding: 13px 0;
    border-bottom: 1px solid #ddd6cc;
    color: var(--fuel-ink);
    font-size: 1.25rem;
    letter-spacing: .045em;
  }
  .fuel-primary-nav .fuel-nav-commerce--first {
    margin-left: 0;
    padding-left: 0;
    border-left: 0;
  }
  .fuel-primary-nav .fuel-nav-commerce--first::after { left: 0; }
  .fuel-nav-dropdown { width: 100%; }
  .fuel-nav-dropdown summary {
    padding: 13px 0;
    border-bottom: 1px solid #ddd6cc;
    color: var(--fuel-ink);
    font-size: 1.25rem;
    letter-spacing: .045em;
  }
  .fuel-nav-dropdown-menu {
    position: static;
    width: 100%;
    gap: 0;
    padding: 4px 0 8px 18px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .fuel-primary-nav .fuel-nav-dropdown-menu a {
    padding: 11px 0;
    border-radius: 0;
    font-size: 1rem;
  }
  .fuel-header-order { display: none; }
}

/* v0.9.29 homepage, maintainability, and privacy refinements */
.fuel-quick-actions a > span { width: 52px; height: 52px; font-size: 1.15rem; }
.fuel-seasonal { min-height: 620px; }
.fuel-seasonal-image { background-position: var(--fuel-seasonal-position, center); }
.fuel-seasonal-groups { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px 30px; margin: 22px 0 28px; }
.fuel-seasonal-groups h3 { margin: 0 0 10px; color: #fff5d8; font-family: var(--fuel-display); font-size: .84rem; letter-spacing: .1em; text-transform: uppercase; }
.fuel-seasonal-list { columns: auto; margin: 0; }
.fuel-category-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
.fuel-category-card .fuel-card-image { aspect-ratio: 4 / 3; }
.fuel-category-card .fuel-card-image img { width: 100%; height: 100%; object-fit: cover; }
.fuel-brand-panel { padding-block: 0; }
.fuel-brand-panel-inner { min-height: 0; grid-template-columns: minmax(0,3fr) minmax(320px,2fr); gap: 0; align-items: stretch; padding-block: 0; }
.fuel-brand-panel-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(54px,5.5vw,74px) clamp(42px,7vw,100px) clamp(54px,5.5vw,74px) 0; }
.fuel-brand-panel-copy h2 { max-width: 720px; margin-bottom: 26px; }
.fuel-brand-panel-copy > p:not(.fuel-kicker) { max-width: 620px; margin-bottom: 30px; font-size: 1.1rem; }
.fuel-brand-panel-image { min-height: 460px; margin-right: calc((100vw - var(--fuel-shell))/ -2); overflow: hidden; }
.fuel-brand-panel-image img { width: 100%; height: 100%; object-fit: cover; }
.fuel-location-tile { background-position: var(--fuel-location-position, center); }
.fuel-location-tile--lazy { background-image: none; }
.fuel-location-tile--lazy::before { content: none; }
.fuel-location-tile-photo { position: absolute; z-index: -2; inset: 0; }
.fuel-location-tile-photo img { width: 100%; height: 100%; object-fit: cover; object-position: var(--fuel-location-position, center); transition: transform 350ms ease; }
.fuel-location-tile--lazy:hover .fuel-location-tile-photo img { transform: scale(1.04); }
.fuel-review-showcase { background: #efe9df; }
.fuel-review-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.fuel-review-card { margin: 0; padding: clamp(26px,3vw,40px); border: 1px solid #d8d1c8; border-radius: 18px; background: var(--fuel-paper); box-shadow: 0 14px 35px rgba(22,22,22,.06); }
.fuel-stars { margin-bottom: 18px; color: var(--fuel-red); font-size: 1.15rem; letter-spacing: .14em; }
.fuel-review-card blockquote { margin: 0 0 24px; font-size: 1.08rem; line-height: 1.65; }
.fuel-review-card figcaption { display: flex; align-items: center; justify-content: space-between; gap: 16px; color: var(--fuel-muted); font-size: .9rem; }
.fuel-review-card figcaption>span { display: flex; flex-direction: column; gap: 2px; }
.fuel-review-card figcaption strong { color: var(--fuel-ink); }
.fuel-review-card figcaption small { color: var(--fuel-muted); font-size: .82rem; }
.fuel-review-card figcaption a { flex: 0 0 auto; }
.fuel-review-card--featured { max-width: 820px; margin-inline: auto; text-align: center; }
.fuel-rewards-callout { padding-block: 0; }
.fuel-rewards-callout-inner { display: grid; grid-template-columns: minmax(0,3fr) minmax(340px,2fr); width: 100%; gap: 0; padding: 0; overflow: hidden; }
.fuel-rewards-copy { padding: clamp(54px,6vw,82px); }
.fuel-rewards-copy > p:not(.fuel-kicker) { max-width: 560px; }
.fuel-rewards-callout .fuel-rewards-proof { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 30px 0; padding-top: 0; background: transparent; }
.fuel-rewards-callout .fuel-rewards-proof strong { padding: 16px 18px; border: 1px solid rgba(255,255,255,.28); border-radius: 12px; background: rgba(255,255,255,.07); color: #fff; font-size: .95rem; text-transform: uppercase; }
.fuel-rewards-callout .fuel-rewards-proof span { display: block; color: #fff5d8; font-family: var(--fuel-display); font-size: 2rem; line-height: 1; }
.fuel-rewards-image { min-height: 470px; overflow: hidden; }
.fuel-rewards-image img { width: 100%; height: 100%; object-fit: cover; }
.fuel-feature-split { grid-template-columns: minmax(0,45fr) minmax(0,55fr); }
.fuel-feature-image--app { padding: 0; background: #ded6ca; }
.fuel-feature-image--app img { width: 100%; height: 100%; padding: 0; object-fit: cover; object-position: center bottom; }
.fuel-dual-promos .fuel-coffee-promo::after { background: linear-gradient(90deg,rgba(8,17,18,.9) 0%,rgba(8,17,18,.68) 44%,rgba(8,17,18,.08) 78%); }
.fuel-coffee-promo > div { max-width: 560px; }
.fuel-coffee-promo .fuel-kicker { color: #fff5d8; }
.fuel-dual-promos .fuel-gift-promo { display: grid; grid-template-rows: auto 1fr; align-items: stretch; padding: clamp(28px,4vw,48px); background: var(--fuel-cream); color: var(--fuel-ink); }
.fuel-dual-promos .fuel-gift-promo::after { display: none; }
.fuel-gift-art { overflow: hidden; border-radius: 14px; box-shadow: 0 18px 36px rgba(35,24,16,.18); }
.fuel-gift-art img { width: 100%; height: auto; aspect-ratio: 1.587 / 1; object-fit: contain; }
.fuel-dual-promos .fuel-gift-copy { padding: 28px 0 0; }
.fuel-dual-promos .fuel-gift-promo .fuel-gift-copy h2 { margin-bottom: 14px; color: var(--fuel-ink); }
.fuel-gift-copy .fuel-kicker { color: var(--fuel-red-dark); }
.fuel-gift-copy .fuel-button-row { align-items: center; }
.fuel-gpc-notice { padding: 12px 14px; border-left: 4px solid var(--fuel-navy); background: #e8f5f7; color: var(--fuel-ink); }
@media (max-width: 900px) {
  .fuel-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fuel-brand-panel-inner, .fuel-rewards-callout-inner { grid-template-columns: 1fr; }
	.fuel-feature-split { grid-template-columns: 1fr; }
  .fuel-brand-panel-copy { padding: 64px 28px; }
  .fuel-brand-panel-image { min-height: 390px; margin-right: 0; }
  .fuel-review-grid { grid-template-columns: 1fr; }
  .fuel-rewards-copy { padding: 54px 28px; }
  .fuel-rewards-image { min-height: 380px; }
}
@media (max-width: 600px) {
  .fuel-quick-actions a > span { width: 48px; height: 48px; }
  .fuel-seasonal-groups, .fuel-category-grid, .fuel-rewards-proof { grid-template-columns: 1fr; }
  .fuel-rewards-proof-panel { grid-template-columns: 1fr; }
  .fuel-rewards-proof-intro,
  .fuel-rewards-proof-metric { padding: 26px; }
  .fuel-rewards-proof-intro { gap: 22px; }
  .fuel-rewards-proof-intro img { flex-basis: 68px; width: 68px; height: 68px; }
  .fuel-rewards-proof-metric { border-top: 1px solid #d8d0c4; border-left: 0; }
  .fuel-brand-panel-inner { min-height: 0; padding-block: 0; }
  .fuel-brand-panel-image { min-height: 320px; }
  .fuel-review-card figcaption { align-items: flex-start; flex-direction: column; }
  .fuel-dual-promos .fuel-gift-promo { min-height: 0; }
}

/* Fuel America official-brand system — restrained Savin/Elkay EIS treatment. */
:root {
	--fuel-brand-red: #b2292e;
	--fuel-brand-navy: #101820;
	--fuel-brand-slate: #89a1a2;
	--fuel-brand-blush: #d99397;
	--fuel-brand-cream: #fff8de;
}

.fuel-brand-panel,
.fuel-locations-home,
.fuel-rewards-callout,
.fuel-page-hero,
.fuel-location-hero,
.fuel-site-footer {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.fuel-brand-panel > *,
.fuel-locations-home > *,
.fuel-rewards-callout > *,
.fuel-page-hero > *,
.fuel-location-hero > *,
.fuel-site-footer > * {
	position: relative;
	z-index: 1;
}

.fuel-brand-panel::before {
	position: absolute;
	z-index: 0;
	top: 0;
	right: -4%;
	width: min(58vw, 900px);
	height: 42%;
	background: url("assets/brand/fuel-america-type-pattern-wide.svg") top right / contain no-repeat;
	content: "";
	opacity: 0.11;
	pointer-events: none;
}

.fuel-locations-home::before {
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	left: 0;
	height: clamp(22px, 3vw, 36px);
	background: url("assets/brand/fuel-america-gear-border-pattern.svg") top center / auto 100% repeat-x;
	content: "";
	opacity: 0.08;
	pointer-events: none;
}

.fuel-page-hero::after,
.fuel-location-hero::after {
	position: absolute;
	z-index: 0;
	right: clamp(-52px, -2vw, -18px);
	bottom: clamp(-68px, -4vw, -30px);
	width: clamp(180px, 24vw, 360px);
	aspect-ratio: 1;
	background: url("assets/brand/fuel-america-f-circle-single.svg") center / contain no-repeat;
	content: "";
	opacity: 0.045;
	pointer-events: none;
}

.fuel-site-footer::before {
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	left: 0;
	height: 24px;
	background: url("assets/brand/fuel-america-gear-border-pattern.svg") top center / auto 100% repeat-x;
	content: "";
	filter: invert(1);
	opacity: 0.08;
	pointer-events: none;
}

@media (max-width: 720px) {
	.fuel-brand-panel::before {
		width: 92vw;
		height: 30%;
		opacity: 0.08;
	}

	.fuel-locations-home::before,
	.fuel-site-footer::before {
		opacity: 0.09;
	}

	.fuel-page-hero::after,
	.fuel-location-hero::after {
		right: -70px;
		bottom: -60px;
		width: 210px;
	}

	.fuel-page-hero--rewards {
		min-height: 560px;
		background-image: var(--fuel-page-image-mobile, var(--fuel-page-image));
		background-position: center;
	}
	.fuel-page-hero--rewards::before {
		background: linear-gradient(90deg, rgba(8,17,20,.89) 0%, rgba(8,17,20,.7) 70%, rgba(8,17,20,.4) 100%);
	}
	.fuel-page-hero--rewards h1 { font-size: clamp(2.6rem, 10.8vw, 3.4rem); }
}

/* 0.9.35 brand and UX refinement candidate.
   Authentic photography remains primary; official Savin/Elkay EIS artwork is
   used as a quiet structural voice rather than as competing campaign copy. */
.fuel-hero h1 {
	max-width: 10.5ch;
	font-size: clamp(3.8rem, 6.45vw, 6.55rem);
	line-height: .9;
}

.fuel-hero-copy {
	max-width: 590px;
}

.fuel-page-hero--menu h1 {
	max-width: 10.5ch;
	font-size: clamp(3.55rem, 5.45vw, 5.75rem);
	line-height: .92;
}

.fuel-menu-hero-copy {
	position: relative;
}

.fuel-menu-hero-copy::after {
	width: 92px;
	height: 9px;
	display: block;
	margin-top: 34px;
	background: url("assets/brand/fuel-america-red-block-divider.svg") left center / contain no-repeat;
	content: "";
	opacity: .9;
}

.fuel-app-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.fuel-app-hero::after {
	position: absolute;
	z-index: -1;
	top: 8%;
	right: -5%;
	width: min(620px, 42vw);
	height: 44%;
	background: url("assets/brand/fuel-america-dot-block-texture-scattered.webp") center / cover no-repeat;
	content: "";
	mix-blend-mode: multiply;
	opacity: .11;
	pointer-events: none;
}

.fuel-app-hero h1 {
	max-width: 10.5ch;
	font-size: clamp(3.35rem, 5.15vw, 5.35rem);
	line-height: .93;
}

.fuel-app-hero-media {
	position: relative;
}

.fuel-app-hero-media::before {
	position: absolute;
	z-index: -1;
	right: -24px;
	bottom: -24px;
	width: 78%;
	height: 62%;
	border-radius: 28px;
	background: #e9ddd0;
	content: "";
}

.fuel-page-hero--about h1,
body.elementor-kit-6 .fuel-page-hero--about h1 {
	max-width: 13ch;
	font-size: clamp(3.35rem, 4.75vw, 4.85rem);
	line-height: .96;
}

.fuel-story-split--material .fuel-story-copy {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background: #f8f3ea;
}

.fuel-story-split--material .fuel-story-copy::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	background:
		linear-gradient(rgba(248,243,234,.9), rgba(248,243,234,.9)),
		url("assets/brand/fuel-america-collage-background.webp") center / cover no-repeat;
	content: "";
	opacity: .8;
}

.fuel-values {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.fuel-values::after {
	position: absolute;
	z-index: -1;
	top: 0;
	right: -4%;
	width: min(620px, 48vw);
	height: 38%;
	background: url("assets/brand/fuel-america-dot-block-texture-scattered.webp") center / cover no-repeat;
	content: "";
	mix-blend-mode: screen;
	opacity: .08;
	pointer-events: none;
}

.fuel-values .fuel-section-heading h2 {
	max-width: 12ch;
	font-size: clamp(2.8rem, 4.3vw, 4.45rem);
}

.fuel-locations-home .fuel-location-strip {
	position: relative;
}

/* Keep the official Gather accent beside the cards, within the outer gutter. */
.fuel-locations-home .fuel-location-strip::after {
	position: absolute;
	z-index: 0;
	top: 0;
	left: calc(100% + 28px);
	width: 60px;
	height: 100%;
	background: url("assets/brand/fuel-america-wordmark-gather-vertical.webp") center / contain no-repeat;
	content: "";
	mix-blend-mode: multiply;
	opacity: .075;
	pointer-events: none;
}

.fuel-locations-home .fuel-shell {
	position: relative;
	z-index: 1;
}

.fuel-brand-panel h2,
.fuel-rewards-callout h2,
.fuel-feature-copy h2,
.fuel-dual-promos h2,
.fuel-section-heading h2 {
	font-size: clamp(2.7rem, 4.4vw, 4.55rem);
	line-height: .96;
}

.fuel-seasonal h2 {
	max-width: 10ch;
	font-size: clamp(2.9rem, 4.2vw, 4.35rem);
	line-height: .94;
}

.fuel-seasonal-list li {
	display: flex;
	align-items: center;
	gap: 11px;
}

.fuel-seasonal-list li > img {
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 7px;
	object-fit: cover;
}

.fuel-seasonal-list li > span {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
}

.fuel-seasonal-list li strong {
	font: inherit;
}

.fuel-seasonal-list li small {
	color: rgba(255,255,255,.82);
	font-size: .82rem;
	font-weight: 500;
	line-height: 1.35;
}

.fuel-location-card-copy h2,
body.elementor-kit-6 .fuel-location-card-copy h2 {
	max-width: 13ch;
	font-size: clamp(2.25rem, 3.2vw, 3.35rem);
	line-height: .98;
}

.fuel-location-card-copy {
	padding: clamp(36px, 5vw, 64px);
}

.fuel-location-card-image img {
	object-position: center;
}

@media (max-width: 1439px) {
	.fuel-locations-home .fuel-location-strip::after {
		display: none;
	}
}

@media (max-width: 900px) {
	.fuel-app-hero::after {
		width: 80vw;
		height: 24%;
		opacity: .075;
	}
}

@media (max-width: 720px) {
	.fuel-hero h1 {
		max-width: 9ch;
		font-size: clamp(3.05rem, 14vw, 3.85rem);
		line-height: .9;
	}

	.fuel-page-hero--menu h1,
	.fuel-app-hero h1,
	.fuel-page-hero--about h1,
	body.elementor-kit-6 .fuel-page-hero--about h1 {
		max-width: 11ch;
		font-size: clamp(2.8rem, 12.5vw, 3.45rem);
		line-height: .94;
	}

	.fuel-menu-hero-copy::after {
		margin-top: 25px;
	}

	.fuel-app-hero-media::before {
		right: -12px;
		bottom: -12px;
	}

	.fuel-brand-panel h2,
	.fuel-rewards-callout h2,
	.fuel-feature-copy h2,
	.fuel-dual-promos h2,
	.fuel-section-heading h2,
	.fuel-seasonal h2,
	.fuel-values .fuel-section-heading h2 {
		font-size: clamp(2.45rem, 11.4vw, 3.25rem);
		line-height: .97;
	}
}

@media (prefers-contrast: more) {
	.fuel-app-hero::after,
	.fuel-values::after,
	.fuel-locations-home .fuel-location-strip::after,
	.fuel-story-split--material .fuel-story-copy::before {
		display: none;
	}
}

@media (prefers-contrast: more) {
	.fuel-brand-panel::before,
	.fuel-locations-home::before,
	.fuel-page-hero::after,
	.fuel-location-hero::after,
	.fuel-site-footer::before {
		display: none;
	}
}

/* Keep the Rewards-only hierarchy authoritative after Elementor's compatibility
   layer without changing any other page title. */
body.elementor-kit-6 .fuel-page-hero--rewards h1 {
	max-width: 760px;
	font-size: clamp(3.5rem, 5.4vw, 5.3rem);
	line-height: .9;
}

@media (max-width: 720px) {
	body.elementor-kit-6 .fuel-page-hero--rewards h1 {
		font-size: clamp(2.6rem, 10.8vw, 3.4rem);
	}
}

/* About restraint: keep the existing editorial structure and authentic
   photography while bringing only the introductory display scale down. */
.fuel-page-hero--about {
	min-height: clamp(460px, 48vw, 590px);
	padding-block: clamp(76px, 8vw, 112px);
}
body.elementor-kit-6 .fuel-page-hero--about h1 {
	max-width: 900px;
	font-size: clamp(3.65rem, 5.5vw, 5.5rem);
	line-height: .94;
	text-wrap: balance;
}
.fuel-page-hero--about p:not(.fuel-kicker) {
	max-width: 720px;
	font-size: clamp(1.05rem, 1.4vw, 1.18rem);
}

@media (max-width: 720px) {
	.fuel-page-hero--about {
		min-height: 420px;
		padding-block: 68px;
	}
	body.elementor-kit-6 .fuel-page-hero--about h1 {
		max-width: 12ch;
		font-size: clamp(2.7rem, 11.8vw, 3.35rem);
	}
}

/* Utility-page hierarchy: Contact and Café Finder should orient guests, not
   compete with the primary actions and directory content that follow. */
.fuel-page-hero--utility {
	min-height: clamp(430px, 44vw, 520px);
	padding-block: clamp(72px, 8vw, 108px);
}
body.elementor-kit-6 .fuel-page-hero--utility h1 {
	max-width: 900px;
	font-size: clamp(3.55rem, 5.25vw, 5.2rem);
	line-height: .94;
	text-wrap: balance;
}
.fuel-page-hero--utility p:not(.fuel-kicker) {
	max-width: 720px;
	font-size: clamp(1.04rem, 1.35vw, 1.16rem);
}

@media (max-width: 720px) {
	.fuel-page-hero--utility {
		min-height: 400px;
		padding-block: 64px;
	}
	body.elementor-kit-6 .fuel-page-hero--utility h1 {
		max-width: 13ch;
		font-size: clamp(2.65rem, 11vw, 3.3rem);
	}
}

/* Policy pages prioritize reading and review over promotional display scale. */
.fuel-page-hero--policy {
	min-height: clamp(320px, 32vw, 390px);
	padding-block: clamp(58px, 7vw, 86px);
}
.fuel-page-hero--policy h1,
body.elementor-kit-6 .fuel-page-hero--policy h1 {
	max-width: 860px;
	font-size: clamp(3.15rem, 4.5vw, 4.5rem);
	line-height: .98;
	text-wrap: balance;
}

@media (max-width: 720px) {
	.fuel-page-hero--policy {
		min-height: 290px;
		padding-block: 54px;
	}
	.fuel-page-hero--policy h1,
	body.elementor-kit-6 .fuel-page-hero--policy h1 {
		max-width: 14ch;
		font-size: clamp(2.55rem, 10.5vw, 3.1rem);
	}
}

/* Final 0.9.35 hierarchy authority after the cumulative r6–r10 page rules. */
body.elementor-kit-6 .fuel-page-hero--rewards h1 {
	max-width: 13ch;
	font-size: clamp(3.35rem, 4.85vw, 4.85rem);
	line-height: .93;
}

body.elementor-kit-6 .fuel-page-hero--about h1 {
	max-width: 13ch;
	font-size: clamp(3.35rem, 4.75vw, 4.85rem);
	line-height: .96;
}

@media (max-width: 720px) {
	body.elementor-kit-6 .fuel-page-hero--rewards h1,
	body.elementor-kit-6 .fuel-page-hero--about h1 {
		max-width: 11ch;
		font-size: clamp(2.8rem, 12.5vw, 3.45rem);
		line-height: .94;
	}
}

/* Release 0.9.36: reusable, owner-published Homepage Feature Bar. */
.fuel-featurebar {
	--fuel-featurebar-surface: var(--fuel-red);
	--fuel-featurebar-text: #fff;
	--fuel-featurebar-accent: #fff5d8;
	--fuel-featurebar-rule: rgba(255,255,255,.25);
	position: relative;
	display: grid;
	grid-template-columns: minmax(0,1.08fr) minmax(420px,.92fr);
	width: min(1260px,calc(100% - 48px));
	min-height: 620px;
	margin: var(--fuel-section-space) auto 0;
	overflow: hidden;
	border-radius: var(--fuel-radius-lg);
	background: var(--fuel-featurebar-surface);
	box-shadow: var(--fuel-shadow);
	color: var(--fuel-featurebar-text);
}

.fuel-featurebar--cream {
	--fuel-featurebar-surface: var(--fuel-cream);
	--fuel-featurebar-text: var(--fuel-ink);
	--fuel-featurebar-accent: var(--fuel-red-dark);
	--fuel-featurebar-rule: rgba(23,33,38,.2);
}

.fuel-featurebar--navy {
	--fuel-featurebar-surface: var(--fuel-navy);
	--fuel-featurebar-text: #fff;
	--fuel-featurebar-accent: #ffcab9;
	--fuel-featurebar-rule: rgba(255,255,255,.24);
}

.fuel-featurebar-media {
	min-height: 100%;
	background-color: var(--fuel-sand);
	background-image: var(--fuel-featurebar-image-mobile,var(--fuel-featurebar-image-desktop));
	background-position: var(--fuel-featurebar-position,50% 50%);
	background-size: cover;
	background-repeat: no-repeat;
}

.fuel-featurebar-content {
	display: flex;
	min-width: 0;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	padding: clamp(44px,5.5vw,80px);
	background: var(--fuel-featurebar-surface);
	color: var(--fuel-featurebar-text);
}

.fuel-featurebar .fuel-kicker,
.fuel-featurebar .fuel-text-link,
.fuel-featurebar .fuel-text-link span,
.fuel-featurebar-groups h3 {
	color: var(--fuel-featurebar-accent);
}

.fuel-featurebar h2,
body.elementor-kit-6 .fuel-featurebar h2 {
	max-width: 10ch;
	margin: 0 0 24px;
	color: var(--fuel-featurebar-text);
	font-size: clamp(2.9rem,4.2vw,4.35rem);
	line-height: .94;
	text-wrap: balance;
}

.fuel-featurebar-body {
	max-width: 590px;
	margin: 0 0 26px;
	font-size: clamp(1rem,1.25vw,1.12rem);
	line-height: 1.58;
}

.fuel-featurebar-groups {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	width: 100%;
	gap: 18px 30px;
	margin: 2px 0 28px;
}

.fuel-featurebar-groups h3 {
	margin: 0 0 10px;
	font-family: var(--fuel-display);
	font-size: .84rem;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.fuel-featurebar-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.fuel-featurebar-list li {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-bottom: 8px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--fuel-featurebar-rule);
	font-weight: 750;
	line-height: 1.4;
}

.fuel-featurebar-list li > img {
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 7px;
	object-fit: cover;
}

.fuel-featurebar-list li > span {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
}

.fuel-featurebar-list li strong { font: inherit; }
.fuel-featurebar-list li small { color: inherit; font-size: .82rem; font-weight: 500; line-height: 1.35; opacity: .78; }
.fuel-featurebar .fuel-text-link { margin-top: 2px; }
body.elementor-kit-6 .fuel-featurebar a.fuel-text-link,
body.elementor-kit-6 .fuel-featurebar a.fuel-text-link span {
	color: var(--fuel-featurebar-accent);
}

.fuel-featurebar--split-right {
	grid-template-columns: minmax(420px,.92fr) minmax(0,1.08fr);
}
.fuel-featurebar--split-right .fuel-featurebar-content { order: 1; }
.fuel-featurebar--split-right .fuel-featurebar-media { order: 2; }

.fuel-featurebar--image-overlay {
	display: block;
	min-height: 640px;
	isolation: isolate;
}
.fuel-featurebar--image-overlay .fuel-featurebar-media {
	position: absolute;
	inset: 0;
	z-index: -2;
}
.fuel-featurebar--image-overlay::after {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg,rgba(7,20,24,.08) 20%,rgba(7,20,24,.62) 100%);
	content: "";
}
.fuel-featurebar--image-overlay .fuel-featurebar-content {
	width: min(540px,calc(100% - 72px));
	min-height: 480px;
	margin: 80px clamp(36px,5vw,72px) 80px auto;
	border: 1px solid rgba(255,255,255,.2);
	border-radius: var(--fuel-radius);
	background: color-mix(in srgb,var(--fuel-featurebar-surface) 92%,transparent);
	box-shadow: 0 18px 50px rgba(8,17,20,.24);
	backdrop-filter: blur(8px);
}

.fuel-featurebar--compact {
	display: block;
	width: min(1180px,calc(100% - 48px));
	min-height: 0;
}
.fuel-featurebar--compact .fuel-featurebar-content {
	display: grid;
	grid-template-columns: minmax(240px,.9fr) minmax(300px,1.25fr) auto;
	grid-template-rows: auto auto;
	gap: 8px clamp(28px,4vw,58px);
	padding: clamp(34px,4vw,52px);
}
.fuel-featurebar--compact .fuel-kicker { grid-column: 1; grid-row: 1; margin: 0; }
.fuel-featurebar--compact h2,
body.elementor-kit-6 .fuel-featurebar--compact h2 { grid-column: 1; grid-row: 2; max-width: 13ch; margin: 0; font-size: clamp(2rem,3vw,3.1rem); }
.fuel-featurebar--compact .fuel-featurebar-body { grid-column: 2; grid-row: 1 / 3; align-self: center; margin: 0; }
.fuel-featurebar--compact .fuel-text-link { grid-column: 3; grid-row: 1 / 3; align-self: center; white-space: nowrap; }

.fuel-featurebar-preview {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 5;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 42px;
	padding: 8px 18px;
	background: #fff;
	box-shadow: 0 2px 12px rgba(23,33,38,.14);
	color: var(--fuel-ink);
	font-size: .82rem;
	line-height: 1.35;
	text-align: center;
}

@media (min-width: 768px) {
	.fuel-featurebar-media { background-image: var(--fuel-featurebar-image-desktop,var(--fuel-featurebar-image-mobile)); }
}

@media (max-width: 900px) {
	.fuel-featurebar,
	.fuel-featurebar--split-right {
		grid-template-columns: 1fr;
		width: calc(100% - 36px);
		min-height: 0;
	}
	.fuel-featurebar--split-right .fuel-featurebar-media { order: 0; }
	.fuel-featurebar--split-right .fuel-featurebar-content { order: 1; }
	.fuel-featurebar-media { min-height: 430px; }
	.fuel-featurebar--image-overlay { display: block; min-height: 600px; }
	.fuel-featurebar--image-overlay .fuel-featurebar-content { min-height: 430px; margin-block: 74px 44px; }
	.fuel-featurebar--compact { width: calc(100% - 36px); }
	.fuel-featurebar--compact .fuel-featurebar-content { grid-template-columns: 1fr auto; }
	.fuel-featurebar--compact .fuel-kicker,
	.fuel-featurebar--compact h2,
	body.elementor-kit-6 .fuel-featurebar--compact h2 { grid-column: 1; }
	.fuel-featurebar--compact .fuel-featurebar-body { grid-column: 1 / -1; grid-row: 3; margin-top: 12px; }
	.fuel-featurebar--compact .fuel-text-link { grid-column: 2; grid-row: 1 / 3; }
}

@media (max-width: 600px) {
	.fuel-featurebar,
	.fuel-featurebar--compact {
		width: calc(100% - 28px);
		margin-top: 62px;
		border-radius: 18px;
	}
	.fuel-featurebar-media { min-height: 310px; }
	.fuel-featurebar-content { padding: 38px 24px 42px; }
	.fuel-featurebar h2,
	body.elementor-kit-6 .fuel-featurebar h2 { font-size: clamp(2.45rem,11.4vw,3.25rem); line-height: .97; }
	.fuel-featurebar-groups { grid-template-columns: 1fr; }
	.fuel-featurebar--image-overlay { min-height: 560px; }
	.fuel-featurebar--image-overlay::after { background: linear-gradient(180deg,rgba(7,20,24,.12),rgba(7,20,24,.7)); }
	.fuel-featurebar--image-overlay .fuel-featurebar-content { width: auto; min-height: 0; margin: 210px 16px 16px; padding: 32px 24px 36px; }
	.fuel-featurebar--compact .fuel-featurebar-content { display: flex; gap: 0; }
	.fuel-featurebar--compact .fuel-kicker { margin-bottom: 10px; }
	.fuel-featurebar--compact .fuel-featurebar-body { margin-top: 18px; }
	.fuel-featurebar--compact .fuel-text-link { margin-top: 8px; white-space: normal; }
	.fuel-featurebar-preview { align-items: flex-start; flex-direction: column; gap: 1px; padding: 8px 14px; text-align: left; }
}

@media (prefers-reduced-transparency: reduce) {
	.fuel-featurebar--image-overlay .fuel-featurebar-content { background: var(--fuel-featurebar-surface); backdrop-filter: none; }
}

/* Release 0.9.40 candidate: quiet official craft marks and a consistent Rewards badge. */
.fuel-category-card > a {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.fuel-category-card > a > *:not(.fuel-card-craft-mark) {
	position: relative;
	z-index: 1;
}

.fuel-card-craft-mark {
	position: absolute;
	right: 15px;
	bottom: 11px;
	z-index: 0;
	width: 74px;
	height: 74px;
	opacity: .075;
	pointer-events: none;
}

.fuel-coffee-craft-rail {
	position: relative;
	display: flex;
	width: min(410px, 72vw);
	height: 112px;
	margin: clamp(36px, 5vw, 58px) auto clamp(42px, 5vw, 60px);
	align-items: flex-end;
	justify-content: center;
	gap: clamp(24px, 4.5vw, 54px);
}

.fuel-coffee-craft-rail::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	background: color-mix(in srgb, var(--fuel-ink) 18%, transparent);
	content: "";
}

.fuel-coffee-craft-rail img {
	position: relative;
	z-index: 1;
	width: auto;
	max-width: 112px;
	height: auto;
	max-height: 96px;
	opacity: .42;
	filter: grayscale(1);
	pointer-events: none;
}

.fuel-coffee-craft-rail__grinder { transform: translateY(1px); }
.fuel-coffee-craft-rail__kettle { transform: translateY(2px); }
.fuel-coffee-craft-rail__cup { transform: translateY(1px); }

.fuel-rewards-kicker {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-bottom: 12px;
}

.fuel-rewards-kicker .fuel-kicker { margin: 0; }

.fuel-rewards-kicker img {
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	opacity: .88;
	filter: brightness(0) invert(1);
}

/* 0.9.41: restrained official-asset Americana system. */
.fuel-coffee-provenance {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
}

.fuel-coffee-provenance .fuel-kicker { margin: 0; }

.fuel-coffee-provenance img {
	flex: 0 0 22px;
	width: 22px;
	height: 28px;
	opacity: .82;
	filter: brightness(0) invert(1);
}

.fuel-story-split--material { position: relative; }

.fuel-americana-stars {
	position: absolute;
	z-index: 2;
	bottom: clamp(28px, 4vw, 54px);
	left: 50%;
	width: min(520px, calc(100% - 64px));
	display: flex;
	align-items: center;
	gap: clamp(14px, 2vw, 22px);
	transform: translateX(-50%);
	line-height: 0;
	pointer-events: none;
}

.fuel-americana-stars::before,
.fuel-americana-stars::after {
	flex: 1 1 auto;
	height: 1px;
	content: "";
	opacity: .32;
}

.fuel-americana-stars::before { background: var(--fuel-ink); }
.fuel-americana-stars::after { background: var(--fuel-red); }

.fuel-americana-stars img {
	display: block;
	flex: 0 0 auto;
	width: clamp(136px, 14vw, 176px);
	height: auto;
	opacity: .78;
}

.fuel-catering-page .fa-catering-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.fuel-catering-page .fa-catering-hero::after {
	position: absolute;
	z-index: 0;
	top: clamp(24px, 4vw, 48px);
	right: clamp(-42px, -2.5vw, -18px);
	width: clamp(190px, 24vw, 320px);
	aspect-ratio: 144.96 / 41.98;
	background: url("assets/brand/fuel-america-type-pattern-compact.svg") center / contain no-repeat;
	content: "";
	opacity: .1;
	transform: rotate(-3deg);
	pointer-events: none;
}

.fuel-catering-page .fa-catering-hero > * {
	position: relative;
	z-index: 1;
}

@media (max-width: 700px) {
	.fuel-americana-stars {
		bottom: 24px;
		width: min(300px, calc(100% - 48px));
		gap: 12px;
	}

	.fuel-americana-stars img { width: 132px; }

	.fuel-catering-page .fa-catering-hero::after {
		top: 18px;
		right: -54px;
		width: 210px;
		opacity: .08;
	}
}

@media (prefers-contrast: more) {
	.fuel-catering-page .fa-catering-hero::after { display: none; }
	.fuel-americana-stars img { opacity: 1; }
}

@media (max-width: 600px) {
	.fuel-card-craft-mark {
		right: 14px;
		bottom: 9px;
		width: 68px;
		height: 68px;
	}

	.fuel-coffee-craft-rail {
		width: min(330px, 86vw);
		height: 86px;
		margin-block: 32px 40px;
		gap: 24px;
	}

	.fuel-coffee-craft-rail img {
		max-width: 86px;
		max-height: 72px;
	}
}

/* Release 0.9.45: preserve the restrained policy typography while correcting
   the document outline from H1 → H3 to H1 → H2. */
.fuel-prose--policy h2,
body.elementor-kit-6 .fuel-prose--policy h2 {
	margin-top: 2em;
	font-family: var(--fuel-display);
	font-size: 1.35rem;
	line-height: 1.12;
	text-transform: uppercase;
}

/* Release 0.9.50: owner-provided walking-cup running loop. The original
   raster artwork is deterministically separated into its cup and two legs so
   the character can move without a GIF, video, library, or redraw. */
.fuel-walking-cup {
	--fuel-walk-cycle: 1.5s;
	position: relative;
	width: 100%;
	aspect-ratio: 2 / 3;
	filter: drop-shadow(0 12px 18px rgba(0, 0, 0, .13));
	pointer-events: none;
	user-select: none;
}

.fuel-walking-cup__stage,
.fuel-walking-cup__layer {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.fuel-walking-cup__stage {
	animation: fuel-walking-cup-bob var(--fuel-walk-cycle) cubic-bezier(.45, 0, .55, 1) infinite;
	transform-origin: 50% 74%;
}

.fuel-walking-cup__layer {
	object-fit: contain;
	object-position: center;
}

.fuel-walking-cup__leg {
	z-index: 1;
	animation-duration: var(--fuel-walk-cycle);
	animation-timing-function: cubic-bezier(.45, 0, .55, 1);
	animation-iteration-count: infinite;
}

.fuel-walking-cup__leg--left {
	animation-name: fuel-walking-cup-step-left;
	transform-origin: 41.25% 72.9%;
}

.fuel-walking-cup__leg--right {
	animation-name: fuel-walking-cup-step-right;
	transform-origin: 57% 69.8%;
}

.fuel-walking-cup__body { z-index: 2; }

.fuel-walking-cup--404 {
	--fuel-walk-cycle: 1.35s;
}

.fuel-walking-cup--menu {
	--fuel-walk-cycle: 1.65s;
	opacity: .88;
}

@keyframes fuel-walking-cup-step-left {
	0%, 100% { transform: rotate(-12deg); }
	50% { transform: rotate(12deg); }
}

@keyframes fuel-walking-cup-step-right {
	0%, 100% { transform: rotate(12deg); }
	50% { transform: rotate(-12deg); }
}

@keyframes fuel-walking-cup-bob {
	0%, 50%, 100% { transform: translate3d(0, 0, 0) rotate(0); }
	25% { transform: translate3d(-1px, -3px, 0) rotate(-.45deg); }
	75% { transform: translate3d(1px, -3px, 0) rotate(.45deg); }
}

.fuel-404-hero { overflow: hidden; }

.fuel-404-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) clamp(150px, 17vw, 220px);
	gap: clamp(34px, 7vw, 100px);
	align-items: end;
}

.fuel-404-copy h1 { max-width: 850px; }
.fuel-404-copy > p:not(.fuel-kicker) { margin-bottom: 30px; }
.fuel-404-character { width: 100%; align-self: center; justify-self: end; transform: translateY(-40px); }

.fuel-menu-order-cta {
	position: relative;
	isolation: isolate;
}

.fuel-menu-order-egg {
	position: absolute;
	z-index: 2;
	top: -76px;
	right: clamp(24px, 6vw, 72px);
	width: clamp(74px, 7vw, 94px);
	transform: rotate(2deg);
}

@media (max-width: 820px) {
	.fuel-404-layout {
		grid-template-columns: minmax(0, 1fr) 135px;
		gap: 28px;
	}

	.fuel-404-character { transform: translateY(-24px); }
	.fuel-menu-order-egg { right: 26px; }
}

@media (max-width: 560px) {
	.fuel-404-layout { grid-template-columns: 1fr; }
	.fuel-404-character { width: 100px; margin-top: 4px; transform: none; }
	.fuel-menu-order-egg { top: -62px; right: 18px; width: 72px; }
}

@media (prefers-reduced-motion: reduce) {
	.fuel-walking-cup__stage,
	.fuel-walking-cup__leg {
		animation: none !important;
		transform: none !important;
	}
}

@media print {
	.fuel-walking-cup { display: none !important; }
}

/* About-page community proof: the authentic Worcester event image stays
   atmospheric while the values and their reading order remain primary. */
.fuel-values--community {
	background:
		linear-gradient(112deg, rgba(4, 53, 63, .91) 0%, rgba(7, 60, 71, .86) 48%, rgba(4, 48, 58, .94) 100%),
		url("assets/images/fuel-america-about-values-worcester-community-r1-1600x1067.webp") center 47% / cover no-repeat;
}

.fuel-values--community .fuel-shell {
	position: relative;
	z-index: 1;
}

.fuel-values--community .fuel-section-heading {
	margin-bottom: clamp(40px, 5vw, 62px);
}

.fuel-values--community .fuel-values-grid article {
	position: relative;
	display: flex;
	min-height: 292px;
	flex-direction: column;
	isolation: isolate;
	overflow: hidden;
	border-color: rgba(255, 255, 255, .27);
	border-radius: 16px;
	background: linear-gradient(145deg, rgba(5, 55, 65, .8), rgba(4, 47, 56, .67));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .07), 0 16px 34px rgba(1, 20, 25, .12);
	transition: transform 220ms ease, border-color 220ms ease, background-color 220ms ease, box-shadow 220ms ease;
}

.fuel-values--community .fuel-values-grid article::before {
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	left: 0;
	height: 4px;
	transform: scaleX(0);
	transform-origin: left center;
	background: var(--fuel-red);
	content: "";
	transition: transform 260ms ease;
}

.fuel-values--community .fuel-values-grid article::after {
	position: absolute;
	z-index: -2;
	inset: 0;
	background: radial-gradient(circle at 10% 4%, rgba(255, 255, 255, .11), transparent 48%);
	content: "";
	pointer-events: none;
}

.fuel-values--community .fuel-values-grid span {
	display: grid;
	width: 43px;
	height: 43px;
	place-items: center;
	border: 1px solid rgba(255, 245, 216, .42);
	border-radius: 50%;
	background: rgba(4, 42, 50, .43);
	transition: color 220ms ease, border-color 220ms ease, background-color 220ms ease, transform 220ms ease;
}

.fuel-values--community .fuel-values-grid h3 {
	margin-top: auto;
	padding-top: 68px;
}

.fuel-values--community .fuel-values-grid p {
	margin-bottom: 0;
	color: rgba(255, 255, 255, .88);
}

@media (hover: hover) and (pointer: fine) {
	.fuel-values--community .fuel-values-grid article:hover {
		transform: translateY(-7px);
		border-color: rgba(255, 245, 216, .52);
		background: linear-gradient(145deg, rgba(7, 72, 83, .96), rgba(4, 49, 59, .92));
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 24px 52px rgba(1, 20, 25, .3);
	}

	.fuel-values--community .fuel-values-grid article:hover::before { transform: scaleX(1); }

	.fuel-values--community .fuel-values-grid article:hover span {
		transform: translateY(-2px);
		border-color: var(--fuel-red);
		background: var(--fuel-red);
		color: #fff;
	}
}

.fuel-footer-social-defs {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
	pointer-events: none;
}

.fuel-footer-grid > div:last-child { min-width: 186px; }
.fuel-footer-social { flex-wrap: nowrap; gap: 4px; }
.fuel-footer-social a { width: 34px; height: 34px; border-color: rgba(255, 255, 255, .34); background: rgba(255, 255, 255, .065); }
.fuel-footer-social svg { width: 18px; height: 18px; transition: transform 160ms ease; }
.fuel-footer-social a:hover svg { transform: scale(1.08); }

/* Integrate the homepage Rewards photograph as the full-height image side of
   the navy panel instead of presenting it as a separate floating card. */
.fuel-rewards-image {
	position: relative;
	align-self: stretch;
	overflow: hidden;
}

.fuel-rewards-image img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 0;
	object-fit: cover;
	object-position: center center;
	box-shadow: none;
}

.fuel-rewards-image::after {
	position: absolute;
	inset: 0;
	border-radius: 0;
	background: linear-gradient(90deg, rgba(7, 63, 75, .24), transparent 16%);
	box-shadow: inset 1px 0 rgba(255, 255, 255, .08);
	content: "";
	pointer-events: none;
}

/* Show the gift-card artwork as a physical card, not a generic brand block. */

.fuel-dual-promos .fuel-gift-art {
	position: relative;
	width: 100%;
	max-width: 470px;
	margin-inline: auto;
	overflow: visible;
	padding: 0;
	border-radius: 0;
	box-shadow: none;
}

.fuel-gift-art img {
	display: block;
	border: 1px solid rgba(143, 32, 37, .14);
	border-radius: 20px;
	box-shadow: 0 18px 38px rgba(35, 24, 16, .2);
}

.fuel-gift-art-label {
	position: absolute;
	right: 14px;
	bottom: 14px;
	padding: 7px 11px 6px;
	border: 1px solid rgba(16, 24, 32, .13);
	border-radius: 999px;
	background: rgba(255, 248, 222, .94);
	box-shadow: 0 6px 18px rgba(35, 24, 16, .14);
	color: var(--fuel-ink);
	font-family: var(--fuel-display);
	font-size: .72rem;
	letter-spacing: .08em;
	line-height: 1;
	text-transform: uppercase;
}

@media (max-width: 720px) {
	.fuel-values--community {
		background-position: 44% center;
	}

	.fuel-values--community .fuel-values-grid article {
		min-height: 250px;
	}

	.fuel-values--community .fuel-values-grid h3 {
		padding-top: 54px;
	}

	.fuel-gift-art img { border-radius: 16px; }
	.fuel-gift-art-label { right: 10px; bottom: 10px; }
}

@media (prefers-reduced-motion: reduce) {
	.fuel-values--community .fuel-values-grid article:hover,
	.fuel-values--community .fuel-values-grid article:hover span,
	.fuel-footer-social a:hover,
	.fuel-footer-social a:hover svg {
		transform: none;
	}
}

@media (prefers-contrast: more) {
	.fuel-values--community { background: var(--fuel-navy); }
	.fuel-values--community .fuel-values-grid article { background: var(--fuel-navy); }
	.fuel-rewards-image::after { background: none; box-shadow: inset 2px 0 0 #fff; }
}

/* 0.9.66: keep ordering and keyboard targets usable beside consent controls. */
.fuel-mobile-order { display: none; }
html { scroll-padding-top: 110px; scroll-padding-bottom: var(--fuel-consent-inset, 0px); }
body { padding-bottom: var(--fuel-consent-inset, 0px); }
.fuel-hero .fuel-kicker,
.fuel-page-hero--dark .fuel-kicker,
.fuel-page-hero--image .fuel-kicker,
.fuel-rewards-callout .fuel-kicker,
.fuel-values .fuel-kicker,
.fuel-photo-cta .fuel-kicker { color: #fff5d8; }
.fuel-menu-browse-link { margin-top: 14px; }
.fuel-cafe-menus { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(40px, 7vw, 100px); align-items: center; padding-bottom: clamp(44px, 5vw, 72px); margin-bottom: 40px; border-bottom: 1px solid var(--fuel-line); }
.fuel-cafe-menus h2 { margin-bottom: 22px; font-size: clamp(2.5rem, 4vw, 3.6rem); line-height: .98; }
.fuel-cafe-menus-copy > p:not(.fuel-kicker) { max-width: 34ch; }
.fuel-cafe-menu-links { margin: 0; padding: 0; list-style: none; }
.fuel-cafe-menu-links li { margin: 0; border-bottom: 1px solid var(--fuel-line); }
.fuel-cafe-menu-links li:first-child { border-top: 1px solid var(--fuel-line); }
.fuel-cafe-menu-link { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 76px; padding: 15px 10px; color: var(--fuel-ink); text-decoration: none; transition: background-color .2s ease; }
.fuel-cafe-menu-link:hover { background: var(--fuel-cream); }
.fuel-cafe-menu-link:focus-visible { outline: 3px solid #1967d2; outline-offset: 3px; }
.fuel-cafe-menu-place { min-width: 0; }
.fuel-cafe-menu-place strong { display: block; font-family: var(--fuel-display); font-size: 1.05rem; font-weight: 800; line-height: 1.2; text-transform: uppercase; }
.fuel-cafe-menu-place > span { display: block; margin-top: 5px; color: var(--fuel-muted); font-size: .85rem; line-height: 1.4; }
.fuel-cafe-menu-action { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 12px; color: var(--fuel-red-dark); font-family: var(--fuel-display); font-size: .78rem; font-weight: 800; text-transform: uppercase; }
.fuel-cafe-menu-action > span { font-family: var(--fuel-body); font-size: 1.2rem; }
@media (max-width: 800px) {
	.fuel-cafe-menus { grid-template-columns: 1fr; gap: 28px; }
	.fuel-cafe-menus-copy > p:not(.fuel-kicker) { max-width: 46ch; }
}
.fuel-policy h2 { font-size: clamp(1.5rem, 5vw, 2rem); overflow-wrap: anywhere; }
.fuel-contact-grid > article { min-width: 0; }
.fuel-contact-grid .fuel-button { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 1120px) {
	.fuel-header-inner { grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; }
	.fuel-mobile-order { display: inline-flex; padding: 12px; min-height: 44px; font-size: .75rem; letter-spacing: .04em; white-space: nowrap; }
	.fuel-primary-nav { padding-bottom: calc(30px + var(--fuel-consent-inset, 0px)); scroll-padding-bottom: var(--fuel-consent-inset, 0px); }
}
@media (max-width: 600px) {
	.fuel-page-hero--about h1 { font-size: clamp(2rem, 9vw, 3rem); overflow-wrap: anywhere; }
	.fuel-story-split--material .fuel-story-copy h2,
	.fuel-values .fuel-section-heading h2,
	.fuel-photo-cta h2 { font-size: clamp(1.8rem, 7vw, 2.4rem); overflow-wrap: anywhere; }
	.fuel-header-inner { gap: 8px; }
	.fuel-header-inner .fuel-brand { width: 92px; }
	.fuel-header-inner .fuel-brand img { width: 88px; }
	.fuel-menu-toggle { padding-inline: 8px; gap: 8px; }
	.fuel-cookie-banner { left: 10px; right: 10px; width: auto; padding: 14px; gap: 12px; max-height: calc(100svh - 112px); }
	.fuel-cookie-copy strong { font-size: 1.08rem; }
	.fuel-cookie-copy p { font-size: .875rem; line-height: 1.4; margin-block: 8px 0; }
	.fuel-cookie-actions { gap: 8px; }
	.fuel-cookie-actions .fuel-button { min-height: 44px; }
	.fuel-cafe-menu-link { gap: 12px; padding-inline: 0; }
}
@media (max-width: 360px) {
	.fuel-header-inner .fuel-brand { width: 74px; }
	.fuel-header-inner .fuel-brand img { width: 72px; }
	.fuel-mobile-order { padding-inline: 10px; }
	.fuel-menu-toggle-icon { display: none; }
}

/* 0.9.69: a compact, useful introduction to the café directory. */
.fuel-finder-intro { padding: clamp(40px, 5vw, 64px) 0 24px; background: var(--fuel-cream); }
.fuel-finder-intro-top { display: grid; grid-template-columns: minmax(0, 1fr) 132px; gap: 64px; align-items: center; }
.fuel-finder-intro h1 { max-width: 15ch; margin: 0 0 22px; color: var(--fuel-ink); font-size: clamp(3rem, 5.3vw, 5rem); line-height: .95; text-wrap: balance; }
.fuel-finder-intro-copy > p:not(.fuel-kicker) { max-width: 52ch; margin: 0; font-size: 1.08rem; line-height: 1.55; }
.fuel-finder-badge { display: block; width: 132px; height: 132px; }
.fuel-finder-jump { display: flex; align-items: center; gap: 28px; margin-top: 36px; padding-top: 20px; border-top: 1px solid rgba(16, 24, 32, .18); }
.fuel-finder-jump > p { flex: 0 0 auto; margin: 0; color: var(--fuel-muted); font-size: .85rem; }
.fuel-finder-jump ul { display: flex; flex: 1; flex-wrap: wrap; justify-content: space-between; gap: 4px 22px; margin: 0; padding: 0; list-style: none; }
.fuel-finder-jump li { margin: 0; }
.fuel-finder-jump a { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--fuel-ink); font-family: var(--fuel-display); font-size: .85rem; font-weight: 800; line-height: 1.2; text-decoration: none; text-transform: uppercase; }
.fuel-finder-jump a > span { color: var(--fuel-red-dark); font-family: var(--fuel-body); font-size: 1.15rem; }
.fuel-finder-jump a:hover { text-decoration: underline; text-decoration-color: var(--fuel-red-dark); text-underline-offset: 5px; }
.fuel-finder-jump a:focus-visible, .fuel-finder-results .fuel-location-card:focus-visible { outline: 3px solid #1967d2; outline-offset: 5px; }
.fuel-finder-results { padding-top: 48px; }
.fuel-finder-results .fuel-location-card { scroll-margin-top: 16px; }
@media (max-width: 900px) {
	.fuel-finder-jump { align-items: flex-start; flex-direction: column; gap: 10px; margin-top: 28px; }
	.fuel-finder-jump ul { justify-content: flex-start; gap: 4px 28px; }
}
@media (max-width: 720px) {
	.fuel-finder-intro-top { grid-template-columns: 1fr; gap: 0; }
	.fuel-finder-badge { display: none; }
	.fuel-finder-intro h1 { font-size: clamp(2.7rem, 10vw, 3.8rem); }
	.fuel-finder-intro-copy > p:not(.fuel-kicker) { font-size: 1rem; }
	.fuel-finder-jump ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 16px; width: 100%; }
	.fuel-finder-jump li:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.fuel-finder-jump a { width: 100%; justify-content: space-between; }
	.fuel-finder-results { padding-top: 32px; }
}
@media (prefers-contrast: more) {
	.fuel-finder-jump { border-top-color: currentColor; }
	.fuel-finder-jump > p { color: var(--fuel-ink); }
}

/* 0.9.70: keep Catering options aligned inside the page's content column. */
.fuel-catering-page .fa-catering-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fuel-catering-page .fa-catering-grid > article { min-width: 0; padding: 36px 24px; }
.fuel-catering-page .fa-catering-grid h2 { min-height: 2.1em; margin: 0 0 16px; font-size: clamp(1.6rem, 2.25vw, 2rem); line-height: 1.05; letter-spacing: -.015em; }
.fuel-catering-page .fa-catering-grid p { margin: 0; font-size: 1rem; line-height: 1.65; }
@media (max-width: 800px) {
	.fuel-catering-page .fa-catering-grid { grid-template-columns: minmax(0, 1fr); }
	.fuel-catering-page .fa-catering-grid > article { padding: 28px 24px; }
	.fuel-catering-page .fa-catering-grid h2 { min-height: 0; margin-bottom: 12px; }
}

/* 0.9.71: give Catering's opening and closing panels their own spacing and brand buttons. */
.fuel-catering-page .fuel-catering-content { padding-block: clamp(40px, 5vw, 72px); }
.fuel-catering-page .fa-catering-hero,
.fuel-catering-page .fa-catering-cta { padding-block: clamp(40px, 5vw, 72px); }
.fuel-catering-page .fa-catering-hero h2,
.fuel-catering-page .fa-catering-cta h2 { margin: 16px auto 20px; }
.fuel-catering-page .fa-catering-hero > .fa-eyebrow,
.fuel-catering-page .fa-catering-cta > p { margin: 0 auto; }
.fuel-catering-page .fa-catering-hero > .fa-lede { margin: 0 auto; }
.fuel-catering-page .fa-catering-hero > p:last-child,
.fuel-catering-page .fa-catering-cta > p:last-child { margin: 28px auto 0; }
.fuel-catering-page .fa-catering-cta > p { color: #fff; }
.fuel-catering-page .fa-button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; max-width: 100%; padding: 14px 22px; border: 2px solid transparent; border-radius: 8px; font-family: var(--fuel-display); font-size: .92rem; font-weight: 800; letter-spacing: .07em; line-height: 1; text-align: center; text-transform: uppercase; transition: transform .2s ease, background-color .2s ease, border-color .2s ease; }
.fuel-catering-page .fa-button-primary { background: var(--fuel-red); border-color: var(--fuel-red); }
.fuel-catering-page .fa-button:hover { opacity: 1; }
.fuel-catering-page .fa-button-primary:hover { background: var(--fuel-red-dark); border-color: var(--fuel-red-dark); }
.fuel-catering-page .fa-button-light:hover { background: var(--fuel-cream); }
@media (prefers-reduced-motion: reduce) {
	.fuel-catering-page .fa-button:hover { transform: none; }
}

/* 0.9.72: round the outside of each Catering group and keep its internal join flush. */
.fuel-catering-page { --fuel-catering-radius: var(--fuel-radius-lg); }
.fuel-catering-page .fa-catering-hero,
.fuel-catering-page .fa-catering-grid { border-radius: var(--fuel-catering-radius) var(--fuel-catering-radius) 0 0; }
.fuel-catering-page .fa-catering-visual { width: 100%; margin: 0 0 clamp(40px, 5vw, 72px); border-radius: 0 0 var(--fuel-catering-radius) var(--fuel-catering-radius); box-shadow: none; }
.fuel-catering-page .fa-catering-grid { overflow: hidden; }
.fuel-catering-page .fa-catering-cta { border-radius: 0 0 var(--fuel-catering-radius) var(--fuel-catering-radius); }
@media (max-width: 700px) {
	.fuel-catering-page { --fuel-catering-radius: var(--fuel-radius); }
}

/* 0.9.73 — confirmed launch-audit composition defects. */
.fuel-location-hero > .fuel-location-hero-shade {
  position: absolute;
  z-index: 0;
  inset: 0;
  pointer-events: none;
}
#main-content .fuel-page-hero--about h1 { max-width: none; overflow-wrap: normal; }
#main-content .fuel-page-hero--about h1 span { display: block; }
#main-content .fuel-values .fuel-section-heading h2 { max-width: 22ch; overflow-wrap: normal; }
#main-content .fuel-rewards-steps article { min-height: 0; }
#main-content .fuel-rewards-steps h2 { margin-top: 28px; }
#main-content .fuel-menu-order-cta h2,
#main-content .fuel-centered-cta--dark h2 { margin: 0 0 24px; }
@media (max-width: 700px) {
  #main-content .fuel-values .fuel-section-heading h2 { max-width: 100%; }
  #main-content .fuel-values-grid article { min-height: 0; }
  #main-content .fuel-values-grid h3 { margin-top: 28px; padding-top: 0; }
  .fuel-app-hero .fuel-button-row,
  .fuel-feature-split .fuel-button-row,
  .fuel-rewards-callout .fuel-button-row,
  .fuel-centered-cta--dark .fuel-button-row { grid-template-columns: minmax(0, 1fr); }
  .fuel-app-hero .fuel-button-row > .fuel-button,
  .fuel-feature-split .fuel-button-row > .fuel-button,
  .fuel-rewards-callout .fuel-button-row > .fuel-button,
  .fuel-centered-cta--dark .fuel-button-row > .fuel-button { grid-column: 1 / -1; white-space: nowrap; }
}

/* 0.9.75: focused guest-journey and visual-accessibility improvements. */
.fuel-site-footer h2 { color: #9d9890; }
.fuel-brand-panel .fuel-kicker { color: #fff5d8; }
.fuel-featurebar-content > .fuel-kicker,
.fuel-featurebar-content > .fuel-text-link { color: #fff; }
.fuel-primary-nav > a[aria-current] { text-decoration: underline; text-decoration-color: var(--fuel-red-dark); text-decoration-thickness: 2px; text-underline-offset: 7px; }
.fuel-contact-intro { padding: clamp(40px, 5vw, 64px) 0; background: var(--fuel-cream); }
.fuel-contact-intro h1 { max-width: 18ch; margin-bottom: 24px; font-size: clamp(2.6rem, 5vw, 4.5rem); line-height: .98; }
.fuel-contact-intro p:not(.fuel-kicker) { max-width: 55ch; margin-bottom: 0; }
.fuel-contact-page > .fuel-section { padding-top: clamp(32px, 4vw, 56px); }
.fuel-contact-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(260px, .75fr); gap: clamp(32px, 5vw, 72px); align-items: start; }
.fuel-contact-main > h2 { margin-bottom: 18px; font-size: clamp(2.3rem, 4vw, 3.6rem); }
.fuel-contact-main > p:not(.fuel-kicker) { max-width: 56ch; margin-bottom: 30px; }
.fuel-contact-form { display: grid; gap: 22px; padding: clamp(24px, 3vw, 40px); border: 1px solid #ddd7ce; border-radius: var(--fuel-radius); background: #fff; box-shadow: 0 14px 44px rgba(22, 22, 22, .07); }
.fuel-contact-form label { display: block; min-width: 0; color: var(--fuel-ink); font-weight: 700; }
.fuel-contact-form input:not([type="hidden"]), .fuel-contact-form select, .fuel-contact-form textarea { display: block; width: 100%; margin-top: 8px; padding: 13px 14px; border: 1px solid #817a70; border-radius: 6px; background: #fff; color: var(--fuel-ink); font: inherit; font-weight: 400; line-height: 1.4; }
.fuel-contact-form textarea { min-height: 150px; resize: vertical; }
.fuel-contact-form :is(input, select, textarea):focus-visible { outline: 3px solid #fff; outline-offset: 2px; border-color: var(--fuel-red); box-shadow: 0 0 0 6px #1967d2; }
.fuel-contact-form .fuel-button { justify-self: start; min-height: 48px; }
.fuel-contact-help-panel { padding: clamp(26px, 3vw, 38px); border: 1px solid #e4ddd2; border-radius: var(--fuel-radius); background: var(--fuel-cream); }
.fuel-contact-help-panel h2 { margin-bottom: 32px; font-size: clamp(1.75rem, 2.5vw, 2.3rem); line-height: 1.05; }
.fuel-contact-help-panel > div { padding: 21px 0; border-top: 1px solid #d6cfc4; }
.fuel-contact-help-panel h3 { margin-bottom: 8px; font-size: 1rem; }
.fuel-contact-help-panel > div p { margin-bottom: 10px; font-size: .94rem; }
.fuel-contact-help-panel .fuel-text-link { display: inline-block; min-height: 44px; }
@media (max-width: 900px) {
  .fuel-contact-layout { grid-template-columns: 1fr; }
  .fuel-contact-help-panel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 24px; }
  .fuel-contact-help-panel > .fuel-kicker, .fuel-contact-help-panel > h2 { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
  .fuel-contact-form { padding: 22px; }
  .fuel-contact-help-panel { display: block; }
}
.fuel-contact-page .fuel-contact-grid article { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(26px, 3vw, 40px); }
.fuel-contact-page .fuel-contact-grid h2 { font-size: clamp(1.8rem, 2.7vw, 2.6rem); line-height: 1; margin-bottom: 20px; }
.fuel-contact-page .fuel-contact-grid article > p:not(.fuel-kicker) { margin-bottom: 28px; }
.fuel-contact-page .fuel-contact-grid article > a { margin-top: auto; min-height: 44px; }
@media (min-width: 1025px) {
  .fuel-contact-page .fuel-contact-grid article:nth-child(n + 3) h2 { min-height: 2em; }
}
@media (max-width: 600px) {
  .fuel-contact-intro h1 { font-size: clamp(2.3rem, 9.5vw, 3.2rem); }
}

/* Owner-approved homepage refinements, September 15, 2026. */

/* Three owner-selected scenes; the opening image also works without JavaScript. */
body.home .fuel-hero { background: #101820; }
.fuel-hero-scenes { position: absolute; inset: 0; z-index: -2; }
.fuel-hero-scene { position: absolute; inset: 0; opacity: 0; background-position: right center; background-size: auto 100%; background-repeat: no-repeat; transition: opacity 1.2s ease-in-out; }
.fuel-hero-scene:first-child { background-image: url("assets/images/fuel-hero-food-r2.webp"); }
.fuel-hero-scene.is-active { opacity: 1; }
body.home .fuel-hero::after { background: linear-gradient(90deg, #101820 0%, #101820 max(40%, calc(100% - 1100px)), rgba(16,24,32,.85) max(46%, calc(100% - 960px)), rgba(16,24,32,.15) max(62%, calc(100% - 600px)), transparent max(76%, calc(100% - 300px))); }
body.home .fuel-hero-shade { background: none; }
.fuel-hero-controls { position: absolute; right: 32px; bottom: 135px; z-index: 3; display: flex; align-items: center; padding: 2px 8px; border: 1px solid rgba(255,255,255,.35); border-radius: 30px; background: rgba(16,24,32,.75); }
.fuel-hero-controls[hidden] { display: none; }
.fuel-hero-controls button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: white; cursor: pointer; }
.fuel-hero-dot span { display: block; width: 6px; height: 6px; border-radius: 5px; background: rgba(255,255,255,.6); transition: width .3s, background .3s; }
.fuel-hero-dot[aria-pressed="true"] span { width: 20px; background: #fff; }
.fuel-hero-controls button:hover { background: rgba(255,255,255,.12); }
.fuel-hero-controls button:focus-visible { outline: 2px solid #fff; outline-offset: 1px; }
@media (max-width: 1199px) {
 body.home .fuel-hero { --fuel-hero-photo-height: clamp(280px, 66.7vw, 480px); min-height: 0; padding-top: calc(var(--fuel-hero-photo-height) - 26px); align-items: start; }
 .fuel-hero-scenes { height: var(--fuel-hero-photo-height); }
 .fuel-hero-scene { background-size: cover; background-position: center; }
 .fuel-hero-scene:first-child { background-image: url("assets/images/fuel-hero-food-mobile-r2.webp"); }
 body.home .fuel-hero::after { background: linear-gradient(180deg, transparent 0, transparent calc(var(--fuel-hero-photo-height) - 105px), #101820 var(--fuel-hero-photo-height)); }
 body.home .fuel-hero-content { padding-top: 22px; padding-bottom: 64px; }
 body.home .fuel-hero-scroll, .fuel-hero-controls { display: none; }
}
@media (prefers-reduced-motion: reduce) { .fuel-hero-scene, .fuel-hero-dot span { transition: none; } }

body.home { --fuel-brand-overlap: 64px; }
body.home .fuel-brand-panel {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
  margin-bottom: calc(-1 * var(--fuel-brand-overlap));
  border-radius: var(--fuel-radius-lg);
  box-shadow: var(--fuel-shadow);
  z-index: 2;
}
body.home .fuel-locations-home { padding-top: calc(var(--fuel-section-space) + var(--fuel-brand-overlap)); }
body.home .fuel-brand-panel-inner {
  width: 100%;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0;
  padding: 0;
  align-items: stretch;
}
body.home .fuel-brand-panel-inner > * { max-width: none; min-width: 0; }
body.home .fuel-brand-panel-copy { padding: clamp(40px, 4vw, 64px); }
body.home .fuel-brand-panel-image { margin: 0; min-height: 460px; }
body.home .fuel-brand-panel-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
body.home .fuel-brand-panel::before,
body.home .fuel-brand-panel + .fuel-locations-home::before { content: none; display: none; }
@media (max-width: 900px) {
  body.home { --fuel-brand-overlap: 28px; }
  body.home .fuel-brand-panel { width: calc(100% - 36px); }
  body.home .fuel-brand-panel-inner { grid-template-columns: 1fr; }
  body.home .fuel-brand-panel-image { min-height: 0; aspect-ratio: 4 / 3; }
}
@media (max-width: 600px) {
  body.home .fuel-brand-panel { width: calc(100% - 28px); }
  body.home .fuel-brand-panel-copy { padding: 40px 26px 46px; }
}



body.home .fuel-quick-actions a:hover { box-shadow: 0 3px 0 var(--fuel-red); }


body.home .fuel-rewards-image picture { display: block; width: 100%; height: 100%; }

/* Approved About coffee story: one compact editorial panel. */
.fuel-coffee-story { padding: 48px 0 64px; }
.fuel-coffee-story-layout { background: #f2ede4; border-radius: 28px; padding: clamp(28px, 5vw, 64px); }
.fuel-coffee-story .fuel-kicker::before { content: ""; display: block; width: 40px; height: 3px; background: #db352b; margin-bottom: 20px; }
.fuel-coffee-story h2 { max-width: 24ch; font-size: clamp(32px, 3.2vw, 48px); line-height: 1.08; margin-bottom: 22px; }
.fuel-coffee-story-layout > div { max-width: 760px; margin-inline: auto; }
.fuel-coffee-story-layout > div > p:last-child { margin-bottom: 0; }
@media (max-width: 760px) { .fuel-coffee-story { padding: 28px 0 40px; } .fuel-coffee-story-layout { width: calc(100% - 32px); border-radius: 24px; } }

/* Owner-selected bean pour still, one shared panel with flush image edge. */
.fuel-coffee-story-layout { display: grid; grid-template-columns: 1.15fr 1fr; padding: 0; overflow: hidden; }
.fuel-coffee-story-layout > div { max-width: none; margin: 0; min-width: 0; }
.fuel-coffee-story-copy { padding: clamp(28px, 4vw, 56px); align-self: center; }
.fuel-coffee-story-copy p:last-child { margin-bottom: 0; }
.fuel-coffee-story-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 760px) { .fuel-coffee-story-layout { grid-template-columns: 1fr; } .fuel-coffee-story-image { aspect-ratio: 1.15; overflow: hidden; } .fuel-coffee-story-image img { object-position: center 55%; } }

/* About location invitation: approved landscape exterior, with signage above copy. */
.fuel-about-location-cta { background-position: center 48%; }
@media (max-width: 760px) {
 .fuel-about-location-cta { min-height: 480px; background-position: 100% center; }
 .fuel-about-location-cta > div { padding-block: 48px; }
}

/* Preserve the complete owner-verified Weymouth mural and seating composition. */
.fuel-location-gallery-grid img[src*='fuel-america-weymouth-mural-seating'] { height: auto; max-width: 1000px; }

/* Owner-selected September menu photography: preserve complete 3:2 compositions. */
.fuel-category-card .fuel-card-image, .fuel-menu-card-image { aspect-ratio: 3 / 2; }
.fuel-menu-card-image { max-height: none; }

/* Keep the app promise in three complete, compact lines. */
.fuel-feature-split--app .fuel-feature-copy h2 { max-width: none; font-size: clamp(1.85rem, 4vw, 3.7rem); }
.fuel-feature-split--app .fuel-feature-copy h2 span { display: block; white-space: nowrap; }
.fuel-feature-split--app .fuel-feature-image { min-height: 480px; }
@media (min-width: 901px) { .fuel-feature-split--app .fuel-feature-copy { padding-block: 60px; } }
@media (max-width: 600px) { .fuel-feature-split--app .fuel-feature-image { min-height: 360px; } }

.fuel-feature-split--app { min-height: 0; }
@media (min-width: 901px) { .fuel-feature-split--app .fuel-feature-image { position: relative; } .fuel-feature-split--app .fuel-feature-image img { position: absolute; inset: 0; } }

@media (min-width: 901px) { .fuel-feature-split--app .fuel-feature-image { min-height: 560px; } .fuel-feature-split--app .fuel-feature-image img { object-position: center; } }

/* One discreet global motion preference; external SVG gets a static twin. */
.fuel-motion-control { min-height: 28px; }
.fuel-motion-control:focus-visible { outline: 2px solid #fff; outline-offset: 4px; border-radius: 2px; }
.fuel-motion-control[hidden] { display: none; }
.fuel-rewards-motion-static { display: none !important; }
.fuel-motion-off .fuel-rewards-motion-animated { display: none !important; }
.fuel-motion-off .fuel-rewards-motion-static { display: block !important; }
.fuel-motion-off *, .fuel-motion-off *::before, .fuel-motion-off *::after { animation-play-state: paused !important; scroll-behavior: auto !important; }
.fuel-motion-off .fuel-hero-scene, .fuel-motion-off .fuel-hero-dot span { transition: none !important; }
@media (prefers-reduced-motion: reduce) {
  .fuel-rewards-motion-animated { display: none !important; }
  .fuel-rewards-motion-static { display: block !important; }
}

/* Mercantile closer-look pair preserves both full photographic compositions. */
.fuel-location-gallery-grid--mercantile img { height: auto; aspect-ratio: 3 / 2; }

/* Weymouth gallery retains natural framing for the mural and window seating. */
.fuel-location-gallery-grid--weymouth img { height: auto; aspect-ratio: 3 / 2; }

/* Grove Street closer-look pair uses matching landscape frames. */
.fuel-location-gallery-grid--grove img { height: auto; aspect-ratio: 3 / 2; }

/* Preserve Brighton mural photo framing at all screen sizes. */
.fuel-location-gallery-grid--brighton img { height: auto; aspect-ratio: 3 / 2; }

/* Show the complete owner-selected catering package without clipping the cup. */
.fuel-catering-page .fa-catering-visual img[src*="fuel-catering-coffee-pastries-img-9868"] { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; }

/* Keep Mercantile's Fuel mural and service counter in the wide hero. */
.fuel-location-hero[style*="mercantile-wide-interior-img-9604"] { background-position: center 10%; }
@media (max-width: 767px) {
  .fuel-location-hero[style*="mercantile-wide-interior-img-9604"] { background-position: 62% center; }
}

/* Complementary Northeastern views share equal landscape frames. */
.fuel-location-gallery-grid--northeastern img { height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.fuel-location-gallery-grid--northeastern img[src*="window-seating-img-9987"] { object-position: center bottom; }

/* 0.9.109: stronger header presence using the original official vector. */
.fuel-header-inner .fuel-brand { width: 145px; height: 90px; }
.fuel-header-inner .fuel-brand img { width: 118px; height: 88px; max-height: 88px; object-position: left center; }
@media (max-width: 1120px) {
 .fuel-header-inner .fuel-brand { width: 112px; height: 78px; }
 .fuel-header-inner .fuel-brand img { width: 100px; height: 74px; max-height: 74px; }
}
@media (max-width: 360px) {
 .fuel-header-inner .fuel-brand { width: 94px; }
 .fuel-header-inner .fuel-brand img { width: 90px; height: 67px; max-height: 67px; }
}
/* Shared heading space keeps values copy aligned despite different paragraph lengths. */
.fuel-values--community .fuel-values-grid h3 {
 margin-top: 68px;
 padding-top: 0;
 min-height: 2.4em;
 line-height: 1.2;
}
@media (max-width: 600px) {
 .fuel-values--community .fuel-values-grid h3 { min-height: 0; }
}

/* Piper review: consistent footer controls and deliberate photo framing. */
.fuel-footer-legal > div { align-items: center; }
.fuel-footer-legal > div > a, .fuel-footer-legal > div > button:not([hidden]) { display: inline-flex; align-items: center; min-height: 28px; font-size: inherit; line-height: 1.4; }
.fuel-location-hero .fuel-location-qualifier { display: block; }
.fuel-location-directory .fuel-location-card-image { position: relative; }
.fuel-location-directory .fuel-location-card-image img { position: absolute; inset: 0; width: 100%; height: 100%; }
.fuel-coffee-story-image { position: relative; align-self: stretch; min-height: 360px; }
.fuel-coffee-story-image img { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; object-position: 35% center; }
body.home .fuel-brand-panel-image img { object-position: center 48%; }
.fuel-catering-page .fa-catering-visual { height: auto; margin-bottom: 0; }
.fuel-catering-craft { display:flex; align-items:center; justify-content:center; gap:clamp(24px,5vw,70px); padding:30px 20px; }
.fuel-catering-craft img { width:clamp(50px,8vw,90px); height:90px; object-fit:contain; opacity:.45; }
@media (max-width:720px) { .fuel-catering-craft { padding:22px 16px; } .fuel-catering-craft img { height:65px; } }
/* A single joined coffee panel, with natural framing when stacked. */
@media (max-width: 900px) { .fuel-coffee-story-layout { grid-template-columns: 1fr; } .fuel-coffee-story-image { min-height: 0; aspect-ratio: 3 / 2; } }

/* Keep the portrait story photo from setting an oversized desktop panel. */
@media (min-width: 901px) { body.home .fuel-brand-panel-image { position: relative; min-height: 560px; } body.home .fuel-brand-panel-image img { position: absolute; inset: 0; } }

/* Read complete app promises instead of a narrow stack of isolated words. */
.fuel-app-hero { padding-block: clamp(56px, 6vw, 88px); }
.fuel-app-hero h1 { max-width: none; font-size: clamp(2.6rem, 4.1vw, 4rem); line-height: 1; }
.fuel-app-hero h1 span { display: block; }
.fuel-app-hero--lifestyle .fuel-app-hero-media { width: min(100%, 680px); }
.fuel-app-hero--lifestyle .fuel-app-hero-media img { aspect-ratio: 3 / 2; object-fit: cover; }
.fuel-feature-image--app picture { display: block; width: 100%; height: 100%; }
@media (min-width: 1101px) {
 .fuel-app-hero--lifestyle .fuel-app-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 4vw, 64px); }
}
@media (min-width: 821px) and (max-width: 1100px) {
 .fuel-app-hero--lifestyle .fuel-app-hero-inner { grid-template-columns: 1fr; gap: 40px; }
 .fuel-app-hero--lifestyle .fuel-app-hero-inner > div:first-child { width: min(100%, 680px); margin-inline: auto; }
}
@media (max-width: 767px) {
 .fuel-app-hero--lifestyle .fuel-app-hero-media { width: min(100%, 390px); }
 .fuel-app-hero--lifestyle .fuel-app-hero-media img { aspect-ratio: 5 / 4; object-position: left center; }
}
/* Related location cards share heading, description and action rows. */
@media (min-width: 901px) {
 .fuel-location-links-grid { row-gap: 0; }
 .fuel-location-links-grid article { display: grid; grid-template-rows: subgrid; grid-row: span 4; padding: 36px; }
 .fuel-location-links-grid h2 { font-size: clamp(1.9rem, 2.4vw, 2.35rem); line-height: 1.1; }
 .fuel-location-links-grid .fuel-text-link { align-self: end; margin-top: 12px; }
}
.fuel-location-gallery-grid.is-single { max-width: 960px; margin-inline: auto; }
/* Keep phone footer navigation compact and easy to scan. */
@media (max-width: 600px) {
 .fuel-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 24px; }
 .fuel-footer-brand, .fuel-footer-grid > div:last-child { grid-column: 1 / -1; }
 .fuel-footer-grid > div { min-width: 0; }
 .fuel-footer-brand img { width: 145px; height: 95px; }
}/* Phone heroes need a readable title and a portrait-friendly, approved view. */
@media (max-width: 600px) {
 .fuel-location-hero h1, body.elementor-kit-6 .fuel-location-hero h1 { font-size: clamp(2.25rem, 11vw, 4rem); }
 .fuel-location-hero[style*="fuel-america-worcester-grove-verified-"] { background-image: url('assets/images/fuel-grove-courtyard-img-9911.webp'); background-position: center top; }
 .fuel-location-hero[style*="fuel-america-weymouth-exterior-storefront-"] { background-image: url('assets/images/fuel-america-weymouth-mural-seating.webp'); background-position: 62% center; }
 .fuel-location-hero[style*="fuel-america-brighton-exterior-sign-"] { background-image: url('assets/images/fuel-brighton-storefront-img-9886.webp'); background-position: 48% center; }
 .fuel-location-hero[style*="fuel-america-northeastern-counter-"] { background-image: url('assets/images/fuel-northeastern-counter-img-0036.webp'); background-position: 66% center; }
}

@media (max-width: 350px) { section.fuel-page-hero--policy h1, body.elementor-kit-6 section.fuel-page-hero--policy h1 { font-size: 2.6rem; } }

/* About's adjacent full-width sections share an edge, without generic section gutters. */
.fuel-page-hero--about + .fuel-story-split { padding-block: 0; }

/* Attach the fade to the photograph, so it cannot drift away from the photo edge
   on wide displays. Keep the cup and handoff clear, and copy on a dark ground. */
.fuel-page-hero--rewards {
 --fuel-rewards-height: clamp(560px, 34vw, 660px);
 min-height: var(--fuel-rewards-height);
 padding-block: 72px;
 background: #081114;
}
.fuel-page-hero--rewards::before {
 inset: 0 0 0 auto;
 width: calc(var(--fuel-rewards-height) * 1.333333);
 background: var(--fuel-page-image) right top / cover no-repeat;
 -webkit-mask-image: linear-gradient(90deg, transparent, #000 20%);
 mask-image: linear-gradient(90deg, transparent, #000 20%);
}
.fuel-page-hero--rewards .fuel-shell { padding-block: 0; }
.fuel-page-hero--rewards .fuel-shell > p { max-width: 42%; }
.fuel-page-hero--rewards h1, body.elementor-kit-6 .fuel-page-hero--rewards h1 {
 max-width: 42%; font-size: clamp(2.8rem, 3.7vw, 4.2rem); line-height: 1;
}
@media (max-width: 720px) {
 .fuel-page-hero--rewards { min-height: 0; padding-top: calc(75vw + 12px); padding-bottom: 48px; }
 .fuel-page-hero--rewards::before {
  inset: 0 0 auto; width: 100%; height: 75vw;
  background-size: 100% auto;
  -webkit-mask-image: linear-gradient(#000 72%, transparent 100%);
  mask-image: linear-gradient(#000 72%, transparent 100%);
 }
 .fuel-page-hero--rewards .fuel-shell > p,
 .fuel-page-hero--rewards h1, body.elementor-kit-6 .fuel-page-hero--rewards h1 { max-width: 100%; }
 .fuel-page-hero--rewards h1, body.elementor-kit-6 .fuel-page-hero--rewards h1 { font-size: clamp(2.6rem, 6vw, 3.4rem); }
}
@media (min-width: 1201px) and (max-width: 1350px) { .fuel-page-hero--rewards { --fuel-rewards-height: 500px; padding-block: 48px; } }

/* Keep the complete About badge inside the cream panel. */
.fuel-page-hero--about::after {
 right: clamp(24px, 3vw, 56px);
 bottom: 24px;
 width: clamp(140px, 20vw, 300px);
}
@media (max-width: 1000px) {
 .fuel-page-hero--about::after { top: 24px; right: 20px; bottom: auto; width: clamp(64px, 12vw, 110px); }
}

/* About: balanced copy/photo, with the star divider in the copy flow. */
.fuel-page-hero--about + .fuel-story-split .fuel-story-image { position: relative; min-height: 0; }
.fuel-page-hero--about + .fuel-story-split .fuel-story-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 45% center; }
.fuel-page-hero--about + .fuel-story-split .fuel-story-copy { padding: clamp(48px, 5vw, 80px); }
.fuel-page-hero--about + .fuel-story-split h2 { font-size: clamp(2.3rem, 3.5vw, 4rem); line-height: 1.05; }
.fuel-page-hero--about + .fuel-story-split .fuel-americana-stars { position: static; width: min(320px, 100%); transform: none; margin: 32px auto 0; flex-shrink: 0; }
.fuel-page-hero--about + .fuel-story-split .fuel-americana-stars img { width: 140px; height: auto; max-width: 60%; }
body.home .fuel-rewards-image img { object-position: 60% center; }
@media (max-width: 1000px) {
 .fuel-page-hero--about + .fuel-story-split { grid-template-columns: 1fr; }
 .fuel-page-hero--about + .fuel-story-split .fuel-story-image { aspect-ratio: 3 / 2; }
 .fuel-page-hero--about + .fuel-story-split .fuel-story-copy { padding: 48px max(24px, 6vw); }
}

/* Align the joined About story with the inset coffee panel below. */
.fuel-page-hero--about + .fuel-story-split {
 width: var(--fuel-shell);
 margin: clamp(28px, 4vw, 48px) auto 0;
 border-radius: 28px;
 overflow: hidden;
}
.fuel-page-hero--about + .fuel-story-split .fuel-story-copy { padding: clamp(32px, 3.5vw, 52px); }
.fuel-page-hero--about + .fuel-story-split h2 { font-size: clamp(2.3rem, 3vw, 3.1rem); }
@media (max-width: 760px) {
 .fuel-page-hero--about + .fuel-story-split { width: calc(100% - 32px); border-radius: 24px; }
 .fuel-page-hero--about + .fuel-story-split .fuel-story-copy { padding: 32px 24px; }
}

/* Full lower hand, with the photo inset toward the copy rather than the screen edge. */
@media (min-width: 1201px) {
 .fuel-page-hero--rewards { --fuel-rewards-height: clamp(600px, 39vw, 740px); }
 .fuel-page-hero--rewards::before {
  right: 8vw; width: calc(var(--fuel-rewards-height) * 1.08374);
  background-size: 100% 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
 }
}
@media (max-width: 720px) {
 .fuel-page-hero--rewards { padding-top: calc(92.273vw + 12px); }
 .fuel-page-hero--rewards::before { height: 92.273vw; background-size: 100% auto; }
}
.fuel-coffee-story-image img { object-position: left 65%; }

/* Rewards portrait: use nearly half the desktop hero, keeping the face and handoff visible. */
@media (min-width: 1201px) {
 .fuel-page-hero--rewards { --fuel-rewards-height: clamp(760px, 47vw, 900px); }
 .fuel-page-hero--rewards::before {
  right: 0; width: 48vw;
  background-size: cover; background-position: center 20%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 14%);
  mask-image: linear-gradient(90deg, transparent, #000 14%);
 }
}
@media (max-width: 720px) {
 .fuel-page-hero--rewards { padding-top: calc(121.5vw + 12px); }
 .fuel-page-hero--rewards::before { height: 121.5vw; }
}
/* Tablets need the message and action beside the portrait, not below a screen-
   filling photo. Keep enough height to show both the face and coffee handoff. */
@media (min-width: 721px) and (max-width: 1200px) {
 .fuel-page-hero--rewards {
  --fuel-rewards-height: clamp(580px, 62vw, 700px);
  padding-block: 48px;
 }
 .fuel-page-hero--rewards::before {
  inset: 0 0 0 auto; width: 48%; height: 100%;
  background-size: cover; background-position: center 20%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 14%);
  mask-image: linear-gradient(90deg, transparent, #000 14%);
 }
 .fuel-page-hero--rewards h1, body.elementor-kit-6 .fuel-page-hero--rewards h1 {
  max-width: 46%; font-size: clamp(2rem, 4.5vw, 3.4rem);
 }
 .fuel-page-hero--rewards .fuel-shell > p { max-width: 44%; font-size: 1.1rem; }
}
/* Show the entire landscape photograph within a deliberate inset frame. */
.fuel-coffee-story-layout > .fuel-coffee-story-image { align-self: center; min-height: 0; aspect-ratio: auto; margin: 24px; border-radius: 18px; overflow: hidden; }
.fuel-coffee-story-image img { position: static; display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; }
@media (max-width: 900px) { .fuel-coffee-story-layout > .fuel-coffee-story-image { margin: 0 24px 24px; } }

/* Keep the commerce divider outside the Shop Coffee underline. */
@media (min-width: 1121px) {
 .fuel-primary-nav .fuel-nav-commerce--first { margin-left: calc(clamp(4px, 1vw, 16px) + clamp(14px, 1.5vw, 24px) + 1px); padding-left: 0; border-left: 0; }
 .fuel-primary-nav .fuel-nav-commerce--first::before { content: ''; position: absolute; top: 0; bottom: 0; left: calc(-1 * (clamp(14px, 1.5vw, 24px) + 1px)); width: 1px; background: rgba(23, 23, 23, .18); }
 .fuel-primary-nav .fuel-nav-commerce--first::after { left: 0; right: 0; transform: scaleX(0); transform-origin: left; transition: transform 160ms ease; }
.fuel-primary-nav .fuel-nav-commerce--first:hover::after, .fuel-primary-nav .fuel-nav-commerce--first:focus-visible::after { transform: scaleX(1); }
}

/* Policy headings and comparison tables need their own reading layout. */
@media (min-width: 700px) {
 .fuel-page-hero--terms h1, body.elementor-kit-6 .fuel-page-hero--terms h1 {
  max-width: none;
  font-size: clamp(2.7rem, 4.1vw, 4rem);
  white-space: nowrap;
 }
}
.fuel-prose--policy .table-wrap, .fuel-policy .table-wrap {
 max-width: 100%;
 margin-block: 26px 32px;
 overflow-x: auto;
 border: 1px solid var(--fuel-line);
 border-radius: 12px;
 -webkit-overflow-scrolling: touch;
}
.fuel-prose--policy .table-wrap table, .fuel-policy .table-wrap table {
 width: 100%;
 min-width: 620px;
 margin: 0;
 border-collapse: separate;
 border-spacing: 0;
 table-layout: fixed;
}
.fuel-prose--policy .table-wrap :is(th, td), .fuel-policy .table-wrap :is(th, td) {
 padding: 17px 20px;
 text-align: left;
 vertical-align: top;
 line-height: 1.5;
 overflow-wrap: anywhere;
}
.fuel-prose--policy .table-wrap th, .fuel-policy .table-wrap th {
 background: var(--fuel-navy);
 color: #fff;
 font-weight: 700;
}
.fuel-prose--policy .table-wrap td, .fuel-policy .table-wrap td {
 border-top: 1px solid var(--fuel-line);
}
.fuel-prose--policy .table-wrap tbody tr:nth-child(even), .fuel-policy .table-wrap tbody tr:nth-child(even) {
 background: var(--fuel-cream);
}
.fuel-prose--policy .table-wrap :is(th, td):first-child, .fuel-policy .table-wrap :is(th, td):first-child { width: 30%; }
.fuel-prose--policy .table-wrap :is(th, td):nth-child(2), .fuel-policy .table-wrap :is(th, td):nth-child(2) { width: 35%; }
.fuel-prose--policy .table-wrap :is(th, td):last-child, .fuel-policy .table-wrap :is(th, td):last-child { width: 35%; }
.fuel-prose--policy .table-wrap td:first-child, .fuel-policy .table-wrap td:first-child { font-weight: 650; }
