/* Selected CSV direction. Loaded last; archived explicit themes remain intact. */
html[data-theme="g"], .site[data-theme="g"] {
  --ink:#252a2e; --muted:#626970; --orange:#bc4b14; --orange-dark:#993a0c;
  --line:#e1e3e5; --soft:#f6f6f5; --canvas:#fff; --white:#fff;
  --header:#fff; --header-ink:#252a2e; --radius:10px;
  --body:'Manrope',Arial,sans-serif; --heading:'Manrope',Arial,sans-serif;
  --shadow:0 6px 20px #252a2e08;
}
.site[data-theme="g"] .button:not(.button-secondary):not(.button-dark) {background:var(--orange);color:#fff}
.site[data-theme="g"] .button:not(.button-secondary):not(.button-dark):hover {background:var(--orange-dark);color:#fff}
.site[data-theme="g"] .button-secondary {background:#fff;color:var(--ink);border-color:var(--line)}
.site[data-theme="g"] .button-secondary:hover {background:var(--soft);border-color:#b9bdc0}
.site[data-theme="g"] .button.is-active,.site[data-theme="g"] .compare-button.is-active {background:#fff5ee;color:var(--orange-dark);border-color:#e5bba5}
.site[data-theme="g"] .desktop-header {border-bottom:1px solid var(--line)}
.site[data-theme="g"] .ref-g-hero {background:var(--soft)}
.site[data-theme="g"] .ref-g-copy>.eyebrow {color:var(--muted)}
.site[data-theme="g"] .ref-g-home .reference-actions>a>.icon:first-child {background:var(--soft);color:var(--ink)}
.site[data-theme="g"] :is(.reference-help,.about-brand-panel,.service-aside) {background:var(--soft);color:var(--ink);border-color:var(--line)}
.site[data-theme="g"] .eyebrow {color:var(--muted)}
.site[data-theme="g"] :is(.vehicle-version,.price-caption,.price-breakdown,.compare-button) {color:var(--muted)}
.site[data-theme="g"] .category-link.is-active {background:#fff5ee;color:var(--orange-dark);border-color:#e5bba5}
.site[data-theme="g"] .category-link.is-active svg {color:var(--orange-dark)}

/* Mobile is a complete browsing and service flow, not a scaled desktop. */
.site--mobile[data-theme="g"] {font-size:15px;line-height:1.6;padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}
.site--mobile[data-theme="g"] :is(button,a,input,select,textarea,summary) {scroll-margin-top:96px;scroll-margin-bottom:180px}
.site--mobile[data-theme="g"] :is(.button,.button-secondary,.text-button,.compare-button) {font-size:14px;min-height:46px}
.site--mobile[data-theme="g"] :is(.button,.button-secondary) {border-radius:9px}
.site--mobile[data-theme="g"] .mobile-header {display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;height:64px;min-height:64px;padding:5px 18px;background:#fff;color:var(--ink);border-bottom:1px solid var(--line);box-shadow:none}
.site--mobile[data-theme="g"] .mobile-header .brand {justify-self:center;gap:0}
.site--mobile[data-theme="g"] .mobile-header .brand>img {width:52px;height:52px;object-fit:contain}
.site--mobile[data-theme="g"] .mobile-header>.mobile-menu {justify-self:start}
.site--mobile[data-theme="g"] .mobile-menu-toggle {width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:8px;font-size:13px}
.site--mobile[data-theme="g"] .mobile-header-favorites {justify-self:end;display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--ink);border-radius:8px}
.site--mobile[data-theme="g"] .mobile-header :is(.mobile-menu-toggle,.mobile-header-favorites)>.icon {width:22px;height:22px}
.site--mobile[data-theme="g"] .mobile-header-favorites:hover {background:var(--soft)}
.site--mobile[data-theme="g"] .mobile-header-favorites.is-active {color:var(--orange-dark)}
.site--mobile[data-theme="g"] .mobile-menu[open]>.mobile-menu-toggle {background:var(--soft)}
.site--mobile[data-theme="g"] .mobile-menu-panel {left:14px;right:14px;border-radius:12px;padding:10px 16px}
.site--mobile[data-theme="g"] .mobile-menu-links>a {min-height:52px;font-size:15px}
.site--mobile[data-theme="g"] .mobile-menu-legal>a {font-size:12px;min-height:46px}
.site--mobile[data-theme="g"] .mobile-bottom-nav {background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 20px #252a2e05;min-height:72px;padding-bottom:env(safe-area-inset-bottom,0px)}
.site--mobile[data-theme="g"] .bottom-nav-item {font-size:12px;color:var(--muted);min-height:64px}
.site--mobile[data-theme="g"] .bottom-nav-item.is-active {color:var(--orange-dark)}
.site--mobile[data-theme="g"] .nav-count {background:var(--orange);color:#fff;border-color:#fff;font-size:10px}
.site--mobile[data-theme="g"] :is(.reference-home,.page-heading,.mobile-catalog-intro,.detail-title,.service-heading,.legal-page,.about-intro) h1 {font-size:32px;font-weight:750;line-height:1.16;letter-spacing:-1.25px;color:var(--ink)}
.site--mobile[data-theme="g"] :is(.reference-home,.service-page,.legal-page,.about-page) h2 {font-size:23px;line-height:1.3;letter-spacing:-.65px;color:var(--ink)}
.site--mobile[data-theme="g"] .eyebrow {font-size:11px;letter-spacing:1px;line-height:1.5}
.site--mobile[data-theme="g"] .ref-g-mobile-intro {background:#fff;color:var(--ink);padding:24px 18px 20px}
.site--mobile[data-theme="g"] .ref-g-mobile-intro>.eyebrow {color:var(--muted);font-size:10px;letter-spacing:1.15px}
.site--mobile[data-theme="g"] .ref-g-mobile-intro>h1 {margin:10px 0 22px;font-size:34px;line-height:1.12;letter-spacing:-1.4px}
.site--mobile[data-theme="g"] .g-mobile-search-tools {display:flex;align-items:stretch;gap:8px;min-width:0}
.site--mobile[data-theme="g"] .reference-search {flex:1;min-width:0;min-height:52px;border:1px solid #b9bdc0;border-radius:9px;overflow:hidden;box-shadow:none}
.site--mobile[data-theme="g"] .reference-query {min-width:0;padding:0 10px;gap:8px}
.site--mobile[data-theme="g"] .reference-query>input {min-width:0;width:100%;min-height:50px;font-size:16px;color:var(--ink)}
.site--mobile[data-theme="g"] .reference-search>.button {min-width:70px;min-height:50px;padding:10px;font-size:13px;border-radius:0}
.site--mobile[data-theme="g"] .reference-search>.button>.icon {display:none}
.site--mobile[data-theme="g"] .g-home-filters {height:52px;min-width:48px;width:48px;border-radius:9px;border-color:#b9bdc0;background:#fff}
.site--mobile[data-theme="g"] .reference-actions {margin:0 18px;padding:0 0 15px;gap:6px;border-bottom:1px solid var(--line)}
.site--mobile[data-theme="g"] .reference-actions>a {justify-content:flex-start;min-height:84px;padding:6px 2px;gap:9px}
.site--mobile[data-theme="g"] .ref-g-home .reference-actions>a>.icon:first-child {box-sizing:border-box;width:42px;height:42px;padding:10px;background:var(--soft);color:var(--ink);border-radius:50%}
.site--mobile[data-theme="g"] .reference-actions strong {display:block;font-size:12px;font-weight:700;line-height:1.4;letter-spacing:-.25px;max-width:84px}
.site--mobile[data-theme="g"] .reference-mobile-categories {padding:14px 18px 0}
.site--mobile[data-theme="g"] .reference-mobile-categories .category-link {font-size:12px;min-height:44px;border-radius:8px}
.site--mobile[data-theme="g"] .reference-mobile-categories .category-link.is-active {color:var(--orange-dark);background:#fff5ee;border-color:#e5bba5}
.site--mobile[data-theme="g"] .reference-stock {padding:0 18px;margin-top:24px}
.site--mobile[data-theme="g"] .reference-section-heading {align-items:center;gap:12px;margin-bottom:16px}
.site--mobile[data-theme="g"] .reference-section-heading h2 {font-size:22px;line-height:1.25}
.site--mobile[data-theme="g"] .reference-section-heading p {font-size:13px;color:var(--muted);margin:7px 0 0}
.site--mobile[data-theme="g"] .reference-section-heading>.text-button {font-size:12px;white-space:nowrap;color:var(--ink)}
.site--mobile[data-theme="g"] :is(.reference-stock .vehicle-grid,.mobile-vehicle-list) {gap:22px}
.site--mobile[data-theme="g"] .vehicle-card {border-radius:12px;border-color:var(--line);box-shadow:none}
.site--mobile[data-theme="g"] .vehicle-picture {aspect-ratio:1.7;background:#f2f2f1}
.site--mobile[data-theme="g"] .reference-stock .vehicle-picture {aspect-ratio:1.7}
.site--mobile[data-theme="g"] .vehicle-card-body {padding:14px 17px}
.site--mobile[data-theme="g"] .reference-stock .vehicle-card-body {padding:14px 17px}
.site--mobile[data-theme="g"] .vehicle-title h3 {font-size:22px;font-weight:750;line-height:1.22;letter-spacing:-.75px}
.site--mobile[data-theme="g"] .vehicle-version {font-size:13px;line-height:1.5;margin:4px 0 9px;white-space:normal;overflow:visible}
.site--mobile[data-theme="g"] .mobile-vehicle-specs {font-size:13px;line-height:1.7;flex-wrap:wrap;margin-bottom:9px;color:var(--muted)}
.site--mobile[data-theme="g"] :is(.vehicle-type,.vehicle-location,.borrowed-image) {font-size:11px;line-height:1.5}
.site--mobile[data-theme="g"] .vehicle-location {background:#252a2ee8;bottom:10px}
.site--mobile[data-theme="g"] :is(.price-caption,.price-breakdown) {font-size:12px;line-height:1.55;color:var(--muted)}
.site--mobile[data-theme="g"] .vehicle-price {font-size:29px;font-weight:800;line-height:1.12;color:var(--ink)}
.site--mobile[data-theme="g"] .vehicle-card-price {align-items:flex-end;gap:10px;padding-top:12px}
.site--mobile[data-theme="g"] .vehicle-card-price>.button {font-size:12px;min-height:44px;padding:10px 12px}
.site--mobile[data-theme="g"] .compare-button {min-height:46px;background:var(--soft);font-size:12px;color:var(--muted)}
.site--mobile[data-theme="g"] .reference-budget {margin:24px 18px 0;font-size:13px}
.site--mobile[data-theme="g"] .reference-budget :is(a,button,span) {font-size:12px}
.site--mobile[data-theme="g"] .reference-help {margin:24px 18px 0;padding:22px;border-radius:12px;background:var(--soft);border:1px solid var(--line)}
.site--mobile[data-theme="g"] .reference-help p {font-size:15px;color:var(--muted)}
.site--mobile[data-theme="g"] .mobile-catalog-intro {padding:24px 18px 16px;background:#fff}
.site--mobile[data-theme="g"] .mobile-catalog-intro h1 {font-size:30px}
.site--mobile[data-theme="g"] .search-input input {font-size:16px;min-height:48px}
.site--mobile[data-theme="g"] .search-form {border-radius:9px;border-color:#b9bdc0}
.site--mobile[data-theme="g"] .sort-control select {font-size:16px;min-height:44px;max-width:100%}
.site--mobile[data-theme="g"] .mobile-catalog-results {padding-left:18px;padding-right:18px}
.site--mobile[data-theme="g"] .mobile-catalog-results .mobile-results-heading {padding-left:0;padding-right:0;gap:12px;flex-wrap:wrap}
.site--mobile[data-theme="g"] .result-count {font-size:13px;color:var(--muted)}
.site--mobile[data-theme="g"] .page-heading {padding-left:18px;padding-right:18px}
.site--mobile[data-theme="g"] .page-heading p {font-size:15px;line-height:1.65;color:var(--muted)}
.site--mobile[data-theme="g"] .detail-page--mobile {padding:0 18px}
.site--mobile[data-theme="g"] .detail-page--mobile :is(.breadcrumb,.detail-title,.mobile-purchase-panel,.specification-section,.finance-preview) {margin-left:0;margin-right:0;padding-left:0;padding-right:0}
.site--mobile[data-theme="g"] .breadcrumb {font-size:12px;min-height:48px;flex-wrap:wrap;gap:6px}
.site--mobile[data-theme="g"] .detail-title h1 {font-size:29px;margin-bottom:7px}
.site--mobile[data-theme="g"] .detail-title>p {font-size:14px;line-height:1.55;color:var(--muted)}
.site--mobile[data-theme="g"] .detail-location {font-size:13px;min-height:44px}
.site--mobile[data-theme="g"] .g-mobile-vehicle-overview {padding:10px 0 20px}
.site--mobile[data-theme="g"] .g-mobile-vehicle-overview .vehicle-price {font-size:34px}
.site--mobile[data-theme="g"] .vehicle-gallery {margin:0;border-radius:12px}
.site--mobile[data-theme="g"] .gallery-main {border-radius:12px;overflow:hidden}
.site--mobile[data-theme="g"] .gallery-toolbar {font-size:13px;background:#252a2eec;color:#fff}
.site--mobile[data-theme="g"] .gallery-toolbar .icon-button {background:#ffffff12;border-color:#ffffff30;color:#fff}
.site--mobile[data-theme="g"] .gallery-thumbnails {padding:12px 0;gap:8px}
.site--mobile[data-theme="g"] .gallery-thumb {min-height:48px;min-width:64px;border-radius:6px}
.site--mobile[data-theme="g"] .gallery-note {font-size:12px;line-height:1.65;margin:8px 0;color:var(--muted)}
.site--mobile[data-theme="g"] .g-mobile-keyfacts {display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;padding:18px 0;margin:0;border-bottom:1px solid var(--line)}
.site--mobile[data-theme="g"] .g-mobile-keyfacts :is(dt,dd) {margin:0;line-height:1.5;overflow-wrap:anywhere}
.site--mobile[data-theme="g"] .g-mobile-keyfacts dt {font-size:12px;color:var(--muted);margin-bottom:3px}
.site--mobile[data-theme="g"] .g-mobile-keyfacts dd {font-size:15px;font-weight:700}
.site--mobile[data-theme="g"] .mobile-purchase-panel {padding-top:20px;padding-bottom:16px;background:#fff;border:0}
.site--mobile[data-theme="g"] .detail-secondary-actions {gap:10px}
.site--mobile[data-theme="g"] .purchase-note {font-size:12px;line-height:1.65;color:var(--muted);margin:12px 0 0}
.site--mobile[data-theme="g"] .g-mobile-detail-services {display:grid;border-top:1px solid var(--line);margin:0 0 24px}
.site--mobile[data-theme="g"] .g-mobile-detail-services>a {display:flex;align-items:center;gap:12px;min-height:78px;border-bottom:1px solid var(--line);padding:16px 0;font-size:15px;font-weight:700}
.site--mobile[data-theme="g"] .g-mobile-detail-services>a>span {flex:1;min-width:0}
.site--mobile[data-theme="g"] .g-mobile-detail-services small {display:block;font-size:12px;color:var(--muted);font-weight:400;line-height:1.6;margin-top:2px}
.site--mobile[data-theme="g"] :is(.specification-list,.vehicle-specifications,.finance-preview,.mobile-comparison-card) {font-size:14px}
.site--mobile[data-theme="g"] .mobile-comparison-card {border-radius:12px;border-color:var(--line)}
.site--mobile[data-theme="g"] .mobile-comparison-card :is(dt,dd) {font-size:14px;line-height:1.6;color:var(--ink)}
.site--mobile[data-theme="g"] .mobile-comparison-card dt {color:var(--muted)}
.site--mobile[data-theme="g"] .mobile-comparison-card h2 {font-size:23px}
.site--mobile[data-theme="g"] :is(.centre-card,.about-intro,.about-steps) p {font-size:15px;line-height:1.7;color:var(--muted)}
.site--mobile[data-theme="g"] :is(.centre-card,.about-brand-panel) {border-radius:12px;border-color:var(--line)}
.site--mobile[data-theme="g"] .centre-graphic {background:var(--soft);color:var(--ink)}
.site--mobile[data-theme="g"] .centre-graphic:after {display:none}
.site--mobile[data-theme="g"] .centre-hours :is(dt,dd) {font-size:13px;line-height:1.65}
.site--mobile[data-theme="g"] .about-brand-panel {background:var(--soft);color:var(--ink)}

/* Forms remain in normal flow, with visible labels and full price context. */
.site--mobile[data-theme="g"] .service-page {padding:26px 18px 20px}
.site--mobile[data-theme="g"] .service-heading {margin-bottom:20px}
.site--mobile[data-theme="g"] .service-heading h1 {margin:8px 0 0;font-size:32px}
.site--mobile[data-theme="g"] :is(.service-page>p,.service-page .lead) {font-size:15px;line-height:1.7}
.site--mobile[data-theme="g"] .service-layout {display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.site--mobile[data-theme="g"] .service-page :is(form,.service-form) {min-width:0;padding:20px 16px;background:#fff;border:1px solid var(--line);border-radius:12px}
.site--mobile[data-theme="g"] .service-page .form-grid {grid-template-columns:minmax(0,1fr);gap:19px}
.site--mobile[data-theme="g"] .service-page fieldset {min-width:0;margin:0 0 24px;padding:18px 0;border:0;border-top:1px solid var(--line)}
.site--mobile[data-theme="g"] .service-page legend {padding:0 8px 0 0;font-size:16px;font-weight:750;line-height:1.5;max-width:100%;color:var(--ink)}
.site--mobile[data-theme="g"] .field {font-size:14px;line-height:1.5;gap:8px;min-width:0}
.site--mobile[data-theme="g"] .field :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {font-size:16px;min-height:50px;min-width:0;max-width:100%;border:1px solid #b9bdc0;border-radius:8px;background:#fff;padding:12px;color:var(--ink)}
.site--mobile[data-theme="g"] .field textarea {min-height:130px;line-height:1.6;resize:vertical}
.site--mobile[data-theme="g"] .field input[type="file"] {padding:10px 8px;font-size:13px;overflow:hidden}
.site--mobile[data-theme="g"] .field input::file-selector-button {font:inherit;font-size:13px;padding:8px;border:1px solid var(--line);border-radius:5px;background:var(--soft);color:var(--ink);margin-right:8px}
.site--mobile[data-theme="g"] :is(.field small,.service-fine,.service-page small) {font-size:12px;line-height:1.65;color:var(--muted)}
.site--mobile[data-theme="g"] .service-check {display:flex;align-items:flex-start;gap:12px;min-height:44px;font-size:14px;line-height:1.7;margin:15px 0;cursor:pointer}
.site--mobile[data-theme="g"] .service-check input {flex:none;width:20px;height:20px;min-height:20px;margin:3px 0 0;accent-color:var(--orange)}
.site--mobile[data-theme="g"] .service-check a {text-decoration:underline;text-underline-offset:3px}
.site--mobile[data-theme="g"] .service-check.trade-import-check {align-items:center;margin:0}
.site--mobile[data-theme="g"] .service-check.trade-import-check input {margin:0}
.site--mobile[data-theme="g"] .trade-import-check small {display:block;font-weight:400}
.site--mobile[data-theme="g"] .trade-stock-picker {gap:8px}
.site--mobile[data-theme="g"] .trade-stock-picker :is(.trade-stock-help,.trade-stock-status) {margin:0;font-size:12px;font-weight:400;line-height:1.6;color:var(--muted)}
.site--mobile[data-theme="g"] .trade-stock-results {border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.site--mobile[data-theme="g"] .trade-stock-list {list-style:none;margin:0;padding:0;max-height:380px;overflow-y:auto;overscroll-behavior:contain}
.site--mobile[data-theme="g"] .trade-stock-list>li+li {border-top:1px solid var(--line)}
.site--mobile[data-theme="g"] .trade-stock-option {display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:0;border-radius:0;background:#fff;color:var(--ink);text-align:left;font:inherit;font-weight:400;cursor:pointer}
.site--mobile[data-theme="g"] .trade-stock-option:focus-visible {outline:2px solid var(--orange);outline-offset:-3px;background:var(--soft)}
.site--mobile[data-theme="g"] .trade-stock-image {position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 86px;width:86px;height:70px;overflow:hidden;border-radius:6px;background:var(--soft)}
.site--mobile[data-theme="g"] .trade-stock-image img {display:block;width:100%;height:100%;object-fit:cover}
.site--mobile[data-theme="g"] .trade-stock-placeholder {padding:5px;font-size:10px;font-weight:400;line-height:1.4;text-align:center;color:var(--muted)}
.site--mobile[data-theme="g"] .trade-stock-image-note {position:absolute;inset:auto 0 0;padding:2px 3px;background:rgba(255,255,255,.94);font-size:9px;line-height:1.3;text-align:center;color:var(--ink)}
.site--mobile[data-theme="g"] .trade-stock-copy {display:flex;flex:1;flex-direction:column;gap:3px;min-width:0;overflow-wrap:anywhere}
.site--mobile[data-theme="g"] .trade-stock-copy strong {font-size:14px;line-height:1.4;font-weight:750;color:var(--ink)}
.site--mobile[data-theme="g"] .trade-stock-copy>span {font-size:12px;line-height:1.5}
.site--mobile[data-theme="g"] .trade-stock-copy small {font-weight:400;line-height:1.45}
.site--mobile[data-theme="g"] .trade-stock-selected {display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
.site--mobile[data-theme="g"] .trade-stock-clear {display:inline-flex;align-items:center;min-height:44px;margin:4px 0 0;padding:4px 0;border:0;background:none;font:inherit;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;color:var(--ink);cursor:pointer}
.site--mobile[data-theme="g"] .service-actions {display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:20px 0 10px}
.site--mobile[data-theme="g"] .service-actions>:is(a,button) {flex:0 1 auto;width:100%;min-height:48px;padding:12px 14px;font-size:14px}
.site--mobile[data-theme="g"] .service-vehicle {padding:0 0 20px;margin:0 0 20px;border-bottom:1px solid var(--line);background:#fff}
.site--mobile[data-theme="g"] .service-vehicle h2 {font-size:23px;margin:8px 0}
.site--mobile[data-theme="g"] .service-vehicle p {font-size:13px;line-height:1.65;color:var(--muted);margin:6px 0}
.site--mobile[data-theme="g"] .service-vehicle-price {margin:16px 0}
.site--mobile[data-theme="g"] .service-vehicle-price>strong {display:block;font-size:29px;line-height:1.2;letter-spacing:-.75px;margin-top:4px}
.site--mobile[data-theme="g"] .service-aside {padding:22px 18px;background:var(--soft);border-radius:12px;color:var(--ink)}
.site--mobile[data-theme="g"] .service-aside :is(p,li) {font-size:14px;line-height:1.7;color:var(--muted)}
.site--mobile[data-theme="g"] .service-direct-contact {padding:20px 16px;margin:0 0 22px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.site--mobile[data-theme="g"] .service-direct-contact h3 {font-size:18px;line-height:1.35}
.site--mobile[data-theme="g"] .service-direct-contact p {font-size:14px;line-height:1.7;color:var(--muted)}
.site--mobile[data-theme="g"] .service-direct-contact .service-actions {flex-direction:row;flex-wrap:wrap}
.site--mobile[data-theme="g"] .service-direct-contact .service-actions>* {flex:1 1 100px;width:auto}
.site--mobile[data-theme="g"] :is(.notice,.empty-state p) {font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.site--mobile[data-theme="g"] .notice p {font-size:14px;line-height:1.7}
.site--mobile[data-theme="g"] :is(.finance-numbers dt,.finance-legal,.finance-total) {font-size:12px;line-height:1.7;color:var(--muted)}
.site--mobile[data-theme="g"] .specification-section :is(dt,dd) {font-size:14px;line-height:1.65}
.site--mobile[data-theme="g"] .notice {padding:16px;border-radius:8px;background:var(--soft);color:var(--ink);border-color:var(--line)}
.site--mobile[data-theme="g"] .notice.error {background:#fff4f2;color:#8a2f22;border-color:#ebc6bf}
.site--mobile[data-theme="g"] .notice.success {background:#f0f7f1;color:#315c3a;border-color:#c7dccb}
.site--mobile[data-theme="g"] .service-facts {font-size:14px}
.site--mobile[data-theme="g"] .service-facts>div {display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.site--mobile[data-theme="g"] .service-facts :is(dt,dd) {margin:0;font-size:13px;line-height:1.6;min-width:0;overflow-wrap:anywhere}
.site--mobile[data-theme="g"] .service-facts dt {color:var(--muted)}
.site--mobile[data-theme="g"] .service-facts dd {font-weight:700;text-align:right;color:var(--ink)}
.site--mobile[data-theme="g"] .finance-monthly {font-size:15px;margin:12px 0}
.site--mobile[data-theme="g"] .finance-monthly strong {font-size:32px;color:var(--ink)}
.site--mobile[data-theme="g"] .legal-page {padding:26px 18px}
.site--mobile[data-theme="g"] .legal-page :is(p,li) {font-size:15px;line-height:1.85;color:var(--ink);overflow-wrap:anywhere}
.site--mobile[data-theme="g"] .legal-page h3 {font-size:19px;line-height:1.4}
.site--mobile[data-theme="g"] .legal-page :is(td,th) {font-size:12px;line-height:1.65}
.site--mobile[data-theme="g"] .site-footer {margin-top:36px;padding:26px 18px 18px;border-top:1px solid var(--line);background:var(--soft);color:var(--ink)}
.site--mobile[data-theme="g"] .site-footer :is(p,nav>a) {font-size:12px;line-height:1.7;color:var(--muted)}
.site--mobile[data-theme="g"] .site-footer nav>a {min-height:44px;display:flex;align-items:center}

/* Dialogs live outside #app; scope through the selected document identity. */
html[data-theme="g"] dialog#overlay {color:var(--ink);background:#fff;font-family:var(--body)}
html[data-theme="g"] dialog#overlay :is(.button,.button-secondary) {min-height:48px;font-size:14px}
html[data-theme="g"] dialog#overlay .button:not(.button-secondary) {background:var(--orange);color:#fff}
body:has(.site--mobile[data-theme="g"]) dialog#overlay {width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);padding:54px 18px 24px;border:1px solid var(--line);border-radius:14px;overscroll-behavior:contain;overflow:auto}
body:has(.site--mobile[data-theme="g"]) dialog#overlay :is(h2,.service-page h2) {font-size:24px;line-height:1.3;letter-spacing:-.75px}
body:has(.site--mobile[data-theme="g"]) dialog#overlay :is(p,label) {font-size:14px;line-height:1.7}
body:has(.site--mobile[data-theme="g"]) dialog#overlay :is(.filter-grid,.form-grid) {display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
body:has(.site--mobile[data-theme="g"]) dialog#overlay form {padding:0;border:0;box-shadow:none}
body:has(.site--mobile[data-theme="g"]) dialog#overlay .service-page {padding:0}
body:has(.site--mobile[data-theme="g"]) dialog#overlay form>button {display:flex;align-items:center;justify-content:center;width:100%;margin-top:12px;border-radius:8px}
body:has(.site--mobile[data-theme="g"]) dialog#overlay .dialog-close {color:var(--ink);width:44px;height:44px}
body:has(.site--mobile[data-theme="g"]) dialog#overlay :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {font-size:16px;min-height:50px;max-width:100%;min-width:0;border:1px solid #b9bdc0;border-radius:8px;padding:10px;background:#fff}
body:has(.site--mobile[data-theme="g"]) dialog#overlay .form-actions {display:flex;flex-direction:column;gap:10px;align-items:stretch;margin-top:22px}
body:has(.site--mobile[data-theme="g"]) dialog#overlay .form-actions>* {width:100%;min-height:48px;flex:auto}
body:has(.site--mobile[data-theme="g"]) dialog#overlay :is(.gallery-modal,.full-gallery) {padding-top:0;min-width:0}
body:has(.site--mobile[data-theme="g"]) dialog#overlay :is(.gallery-modal,.full-gallery)>img {max-height:calc(100dvh - 260px);object-fit:contain}
body:has(.site--mobile[data-theme="g"]) .privacy-notice {background:#fff;border-color:var(--line);color:var(--muted);font-size:12px;bottom:calc(82px + env(safe-area-inset-bottom,0px));box-shadow:0 4px 24px #252a2e12}
body:has(.site--mobile[data-theme="g"]) .privacy-notice>button[data-action="privacy-preferences"] {color:var(--ink);font-size:12px}

@media(max-width:359px) {
  .site--mobile[data-theme="g"] :is(.mobile-header,.ref-g-mobile-intro,.reference-mobile-categories,.reference-stock,.service-page,.legal-page,.mobile-catalog-intro,.mobile-catalog-results,.detail-page--mobile) {padding-left:14px;padding-right:14px}
  .site--mobile[data-theme="g"] :is(.reference-actions,.reference-help,.reference-budget) {margin-left:14px;margin-right:14px}
  .site--mobile[data-theme="g"] .ref-g-mobile-intro>h1 {font-size:31px}
  .site--mobile[data-theme="g"] .g-mobile-search-tools {gap:6px}
  .site--mobile[data-theme="g"] .reference-search>.button {min-width:60px;padding:10px 7px;font-size:12px}
  .site--mobile[data-theme="g"] .reference-query>.icon {display:none}
  .site--mobile[data-theme="g"] .g-home-filters {min-width:44px;width:44px}
  .site--mobile[data-theme="g"] .reference-actions strong {font-size:12px;letter-spacing:-.4px}
  .site--mobile[data-theme="g"] .reference-section-heading h2 {font-size:20px}
  .site--mobile[data-theme="g"] .reference-section-heading>.text-button {font-size:12px;gap:4px}
  .site--mobile[data-theme="g"] .vehicle-card-price {flex-wrap:wrap;align-items:flex-start}
  .site--mobile[data-theme="g"] .vehicle-card-price>.button {width:100%;margin-top:4px}
  .site--mobile[data-theme="g"] .service-page :is(form,.service-form) {padding:18px 12px}
  .site--mobile[data-theme="g"] .service-facts>div {gap:10px}
}
@media(prefers-reduced-motion:reduce) {
  html[data-theme="g"] {scroll-behavior:auto}
  .site[data-theme="g"] *,html[data-theme="g"] dialog#overlay * {transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* Preserve vertical page scrolling and native pinch zoom when swiping a photo. */
.site[data-theme="g"] .gallery-expand,html[data-theme="g"] .full-gallery>img {touch-action:pan-y pinch-zoom}

/* Phone controls, including a phone rotated beyond the portrait breakpoint. */
@media(max-width:767px),(max-height:500px) and (pointer:coarse) {
  html[data-theme="g"] .site .g-body-names a,html[data-theme="g"] .site footer.g-footer-compact nav :is(a,.footer-cookie-settings) {min-width:44px;min-height:44px}
  html[data-theme="g"] .site .g-nav-filter-links>a {min-width:44px;min-height:48px}
  html[data-theme="g"] .site .g-energy-savings-details {min-height:44px}
  html[data-theme="g"] .site .field :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea),
  html[data-theme="g"] body dialog#overlay .field :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,textarea) {font-size:16px;scroll-margin-block:70px 100px}
  html[data-theme="g"] body dialog#overlay :is(.service-check,.check-field,.checkbox-field,.consent) {display:flex;flex-direction:row;min-height:48px;align-items:center;gap:12px;cursor:pointer}
  html[data-theme="g"] body dialog#overlay input:is([type="checkbox"],[type="radio"]) {width:22px;height:22px;min-width:22px;min-height:22px;flex:0 0 22px;padding:0;accent-color:var(--orange)}
  html[data-theme="g"] body dialog#overlay .dialog-close {width:48px;height:48px;min-width:48px;min-height:48px}
  html[data-theme="g"] body:has(.site[data-theme="g"]) dialog#overlay {
    --touch-dialog-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));
    --touch-dialog-width:calc(100vw - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));
    inset:calc(8px + env(safe-area-inset-top,0px)) calc(8px + env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) calc(8px + env(safe-area-inset-left,0px));
    max-width:var(--touch-dialog-width);max-height:var(--touch-dialog-height);margin:auto;scroll-padding-block:64px 20px;
  }
  html[data-theme="g"] body:has(.site[data-theme="g"]) dialog#overlay.finance-dialog .finance-modal {max-height:calc(var(--touch-dialog-height) - 2px)}
  html[data-theme="g"] body dialog#overlay .finance-modal-scroll {scroll-padding-block:16px 24px}
  html[data-theme="g"] body dialog#overlay .full-gallery>img {max-height:calc(var(--touch-dialog-height) - 160px);object-fit:contain}
}
@media(max-height:500px) and (pointer:coarse) {
  html[data-theme="g"] body dialog#overlay .finance-modal-header {padding:12px 76px 12px 16px}
  html[data-theme="g"] body dialog#overlay.finance-dialog .finance-modal-header h2 {font-size:20px}
  html[data-theme="g"] body dialog#overlay .finance-modal-scroll {padding:14px 16px 20px}
}
