:root {
  --paper: #fafbfc;
  --ink: #141b20;
  --soft: #4e5b64;
  --line: #cdd3d7;
  --accent: #115d82;
  --serif: "Iowan Old Style", "AppleMyungjo", "Batang", "Nanum Myeongjo", serif;
  color-scheme: light;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 20px; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.66 -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif; word-break: keep-all; overflow-wrap: anywhere; }
h1,h2,h3,p,figure,dl,dd,fieldset,ol { margin: 0; }
a { color: inherit; text-decoration: none; }
button,input,select,textarea { font: inherit; }
button,summary,select { cursor: pointer; }
img { max-width: 100%; display: block; }
:focus-visible { outline: 3px solid #3981a9; outline-offset: 3px; }
[hidden] { display: none !important; }
.frame { width: min(1240px, calc(100% - clamp(48px,10vw,168px))); margin-inline: auto; }
.skip { position: absolute; left: -9999px; }
.skip:focus { left: 4px; background: white; z-index: 10; }
h2 { font: 500 clamp(33px,4.1vw,61px)/1.18 var(--serif); letter-spacing: -.065em; }
h3 { font-size: clamp(19px,2vw,25px); line-height: 1.38; letter-spacing: -.045em; }
.eyeline,.kicker { font-size: 13px; font-weight: 650; letter-spacing: .02em; color: var(--soft); margin-bottom: 15px; }
.mast { background: #101518; color: #f6f8fa; border-bottom: 1px solid #ffffff28; }
.mast .frame,.mast nav,.actions,.record-tools,.record-tools nav,footer { display: flex; align-items: center; }
.mast .frame,footer { justify-content: space-between; gap: 15px; }
.mast .frame { min-height: 70px; }
.mast nav,.actions { gap: 22px; flex-wrap: wrap; }
.mast nav a,.under,.plain { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; font-size: 14px; }
.mast nav a:last-child { color: #f4f7f9; border:1px solid #657079; padding-inline:15px; border-radius:2px; }
.nameplate { font: 700 24px/1 var(--serif); letter-spacing: -.045em; }
.nameplate span { font: 500 12px/1.4 -apple-system,sans-serif; margin-left: 10px; padding-left: 12px; border-left: 1px solid #89908a; }
.btn { display: inline-flex; align-items: center; justify-content: space-between; min-height: 46px; padding: 10px 17px; gap: 22px; border: 1px solid #939f9b; border-radius: 3px; font-weight: 650; font-size: 14px; }
.ink,.mobilebar a:first-child { background: var(--accent); color: white; border-color: var(--accent); }
.under,.plain { text-decoration: underline; text-underline-offset: 5px; }
.hero { position: relative; isolation: isolate; background: #171e20; color: #fffefa; }
.hero-scene { position: absolute; inset: 0; z-index: -1; overflow: hidden; }
.hero-scene img { width: 100%; height: 100%; object-fit: cover; object-position: 65% 4%; }
.hero-scene::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #111818e8 0%, #111818bb 27%, #12191a60 49%, transparent 69%); }
.hero-scene figcaption { position: absolute; bottom: 13px; right: 16px; z-index: 1; padding: 2px 6px; background: #111818ac; color: #f7f6ef; font-size: 11px; }
.hero-inner { display: flex; align-items: center; min-height: clamp(490px,48vw,690px); padding-block: clamp(35px,6vw,92px); }
.hero .kicker { color: #e6e5dc; margin-bottom: 20px; }
.hero h1 { font: 500 clamp(44px,5.15vw,76px)/1.14 var(--serif); letter-spacing: -.065em; }
.hero-byline { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin-top: 24px; font-weight: 700; font-size: 20px; }
.byline-contact { display:inline-flex; align-items:center; min-height:44px; padding-inline:3px; color:inherit; font-size:14px; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.contact-download { margin-top:12px; }
.hero-byline span { font-size: 13px; font-weight: 500; }
.lead { color: #f1f2e9; margin-block: 12px 26px; font-size: 16px; }
.solid { color: #151c21; background: #f7f9fa; border-color: #f7f9fa; }
.glass { background: #11212475; border-color: #c9c7bb; }
.actions { gap: 10px; }
.feature,.advisor,.faq,.section { padding-block: clamp(46px,6.8vw,95px); }
.feature-title { display: grid; grid-template-columns: 1.05fr .85fr; align-items: end; column-gap: 40px; margin-bottom: 30px; }
.feature-title .eyeline { grid-column: 1/-1; }
.feature-title>p:last-child { max-width: 33ch; color: var(--soft); }
.guide-layout { display: grid; grid-template-columns: 1.05fr .85fr; background: #f0f3f4; }
.field-photo { position: relative; min-height: 360px; }
.field-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.field-photo figcaption { position: absolute; bottom: 12px; left: 13px; background: #1a2324cf; color: white; padding: 3px 7px; font-size: 11px; }
.guide-panel { align-self: center; padding: clamp(20px,3vw,46px); min-width: 0; }
#topics { display: flex; border-bottom: 1px solid #9ea79c; margin-bottom: 22px; }
#topics button { flex: 1; border: 0; border-bottom: 3px solid transparent; background: none; color: var(--soft); padding: 10px 4px; min-height: 44px; }
#topics button[aria-pressed=true] { color: var(--ink); border-bottom-color: var(--accent); font-weight: 750; }
.guide-card>.eyeline { font-size: 12px; margin-bottom: 5px; }
.guide-card>p:not(.eyeline) { margin: 9px 0 16px; color: var(--soft); }
#question-list { padding: 0; border: 0; }
#question-list legend { font-size: 12px; color: var(--soft); padding: 0; margin-bottom: 3px; }
#question-list label { display: flex; align-items: baseline; gap: 9px; min-height: 38px; padding: 6px 0; cursor: pointer; font-size: 15px; }
#question-list input { width: 16px; height: 16px; accent-color: var(--accent); flex-shrink: 0; margin: 0; }
.guide-action { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); min-height: 46px; margin-top: 12px; font-weight: 680; }
.visit-band { background: #1a232a; color: #faf8ee; }
.visit-inner,.faq { display: grid; grid-template-columns: .85fr 1.15fr; gap: 9%; }
.visit-inner { padding-block: clamp(44px,6vw,86px); }
.visit-heading .eyeline { color: #c4d4dc; }
.visit-steps { list-style: none; padding: 0; counter-reset: visit; }
.visit-steps li { position: relative; padding: 20px 0 20px 46px; border-top: 1px solid #ffffff40; counter-increment: visit; }
.visit-steps li::before { content: counter(visit,decimal-leading-zero); font: italic 18px/1.4 Georgia,serif; position: absolute; left: 0; color: #b7c9d2; }
.visit-steps li p { margin-top: 6px; color: #e0e6df; }
.advisor { display: grid; grid-template-columns: .72fr 1.28fr; align-items: center; gap: 9%; }
.profile-photo { background: #aaa; max-width: 360px; }
.profile-photo img { width: 100%; height: auto; aspect-ratio: 4/4.6; object-fit: cover; object-position: 50% 22%; }
.advisor-copy h2 small { font: 550 16px/1.4 -apple-system,sans-serif; letter-spacing: normal; }
.affiliation { color: var(--soft); margin-top: 9px; }
.advisor-copy>p:not(.eyeline,.affiliation) { margin-block: 22px; max-width: 38ch; font-size: 18px; }
.advisor-links { border-top: 1px solid var(--line); display: flex; gap: 18px; justify-content: space-between; align-items: center; flex-wrap: wrap; padding-top: 12px; }
.number,.hotline { font: 500 clamp(25px,2.7vw,38px)/1.4 Georgia,serif; letter-spacing: -.035em; }
.section { border-top: 1px solid var(--line); }
.faq-list details { padding: 13px 0; border-top: 1px solid var(--line); }
summary { cursor: pointer; min-height: 32px; font-weight: 650; }
.faq-list summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; gap: 12px; font-size: 17px; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; font: 23px/1 Georgia,serif; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list p { padding: 2px 25px 8px 0; color: var(--soft); }
.section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; margin-bottom: 25px; }
.section-heading p { color: var(--soft); font-size: 15px; max-width: 40ch; }
.record-tools { justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.record-tools nav { gap: 6px; }
.record-tools button,button.basic { color: var(--ink); background: transparent; border: 1px solid var(--line); border-radius: 3px; min-height: 44px; padding: 8px 12px; }
.record-tools button[aria-pressed=true] { color: #fff; border-color: var(--ink); background: var(--ink); }
.find { display: flex; gap: 8px; align-items: center; font-size: 13px; }
input:not([type=checkbox]),select,textarea { background: #fff; border: 1px solid #aeb6ad; border-radius: 3px; min-height: 44px; padding: 8px 12px; max-width: 100%; }
textarea { resize: vertical; }
.notes { margin-top: 16px; }
.empty { padding: 22px 0; border-top: 1px solid var(--line); color: var(--soft); }
.notes article,.admin-list article { border-top: 1px solid var(--line); padding: 15px 0; }
.notes article summary { font-size: 18px; }
.notes img,.admin-list img { max-height: 320px; object-fit: contain; margin-top: 10px; }
.notes article p,.admin-list article p { white-space: pre-wrap; }
.contact-band { background: #172127; color: #fffaf0; padding-block: clamp(40px,6vw,86px); }
.contact-grid,.location { display: grid; grid-template-columns: 1.12fr 1fr; gap: clamp(20px,7vw,95px); }
.contact-band .light,.contact-grid>div>p:not(.light) { color: #d7e0db; }
.contact-grid>div>p:not(.light) { margin-top: 16px; max-width: 34ch; }
.hotline { display: inline-block; margin-top: 20px; }
form { display: grid; gap: 12px; }
#sms-form,#web-lead { background: #fafbfc; color: var(--ink); padding: clamp(20px,3vw,36px); border-radius: 4px; }
form label:not(.check) { display: grid; gap: 4px; font-size: 14px; }
#sms-text,.fine { color: var(--soft); font-size: 14px; }
.fine { font-size: 13px; }
.plain { border: 0; padding: 0; background: none; color: var(--ink); justify-self: start; }
#copy-status { font-size: 13px; }
#copy-status:empty { display: none; }
#web-lead { grid-column: 2; }
#web-lead p { font-size: 14px; margin-block: 10px; }
.location p,.location dl,.location .actions { margin-top: 14px; }
.location dt { font-size: 12px; color: var(--soft); margin-top: 10px; }
footer { border-top: 1px solid var(--line); padding-block: 24px; flex-wrap: wrap; font-size: 13px; color: var(--soft); }
footer p { margin-right: auto; }
.mobilebar { display: none; }
.admin { max-width: 840px; margin: 30px auto; padding: 0 20px; }
.admin section { padding-block: 24px; border-top: 1px solid var(--line); }
.admin .actions,.admin-list { margin-top: 12px; }
.admin h1 { font-size: 35px; }
.admin-list button { margin-right: 6px; }
.check { display: flex; align-items: baseline; gap: 8px; }
.notice { padding: 12px; background: #e6ede8; }
.compact { max-width: 630px; }
.admin nav { display: flex; gap: 10px; margin: 15px 0; }
.admin button { min-height: 44px; }
button:disabled { cursor: default; opacity: .55; }
@media (max-width: 760px) {
  .frame { width: calc(100% - 36px); }
  .mast .frame { min-height: 54px; }
  .mast nav { gap: 12px; }
  .mast nav a:last-child { padding-inline:9px; min-height:36px; }
  .mast nav a { font-size: 12px; }
  .nameplate { font-size: 21px; }
  .nameplate span { display: none; }
  .hero { display: flex; flex-direction: column; }
  .hero-scene { position: relative; inset: auto; z-index: 0; height: clamp(234px,70vw,372px); }
  .hero-scene img { object-position: 72% 35%; }
  .hero-scene::after { background: linear-gradient(0deg,#171e20 0%,transparent 24%); }
  .hero-scene figcaption { right: 9px; bottom: 12px; }
  .hero-inner { min-height: 0; padding-block: 10px 32px; }
  .hero h1 { font-size: clamp(39px,9.7vw,64px); }
  .hero .kicker { margin-bottom: 8px; font-size: 12px; }
  .hero-byline { margin-top: 15px; gap: 8px; font-size: 18px; }
  .hero-byline span { font-size: 12px; }
  .lead { margin: 8px 0 18px; font-size: 15px; }
  .feature-title,.guide-layout,.visit-inner,.faq,.contact-grid,.location { grid-template-columns: 1fr; gap: 18px; }
  .feature-title { gap: 0; margin-bottom: 20px; }
  .feature-title .eyeline { margin-bottom: 6px; }
  .feature-title br { display: none; }
  .feature-title>p:last-child { margin-top: 12px; }
  .guide-layout { gap: 0; }
  .field-photo { min-height: 0; aspect-ratio: 1.48; }
  .visit-steps li { padding-left: 35px; }
  .advisor { grid-template-columns: minmax(100px,.52fr) 1fr; gap: 20px; align-items: start; }
  .advisor-copy>p:not(.eyeline,.affiliation) { font-size: 16px; }
  .advisor-copy .eyeline { margin-bottom: 7px; }
  .advisor-copy h2 small { display: block; font-size: 14px; margin-top: 4px; }
  .affiliation { font-size: 13px; }
  .advisor-links { gap: 0 12px; }
  .faq-list summary { font-size: 16px; }
  .section-heading { align-items: start; flex-direction: column; gap: 8px; }
  .find { width: 100%; }.find input { flex: 1; width: 100px; }
  #web-lead { grid-column: 1; }
  .mobilebar { position: fixed; bottom: 0; left: 0; right: 0; z-index: 4; display: flex; background: var(--paper); border-top: 1px solid var(--line); padding: 6px 12px max(8px,env(safe-area-inset-bottom)); gap: 8px; }
  .mobilebar a { display: grid; place-items: center; flex: 1; border: 1px solid var(--line); border-radius: 3px; font-size: 14px; font-weight: 650; min-height: 44px; }
  footer { margin-bottom: 65px; }
}
@media (max-width: 440px) {
  .advisor { grid-template-columns: 1fr; gap: 24px; }
  .profile-photo { max-width: 78%; }
  .profile-photo img { aspect-ratio: 1.12; object-position: 50% 17%; }
  .advisor-copy h2 small { display: inline; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Model search and comparison share one visual hierarchy on both screen sizes. */
.catalog { padding-block:clamp(42px,6vw,86px); }
.catalog-heading,.results-bar,.search-tools,.car-actions,.buying-links a {
  display:flex; align-items:center; justify-content:space-between; gap:14px;
}
.catalog-heading { align-items:end; margin-bottom:24px; }
.catalog-heading .eyeline { margin-bottom:8px; }
.catalog-heading .under { color:var(--soft); }
.search-tools { justify-content:flex-start; border-block:1px solid var(--line); padding:10px 0; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.model-search { flex:1; position:relative; min-width:0; }
.model-search::before,.model-search::after { content:""; position:absolute; left:4px; pointer-events:none; }
.model-search::before { top:12px; width:12px; height:12px; border:1.5px solid var(--ink); border-radius:50%; }
.model-search::after { top:26px; left:17px; width:7px; height:1.5px; background:var(--ink); transform:rotate(45deg); }
.model-search #model-search { border:0; background:transparent; color:var(--ink); width:100%; min-height:44px; padding-left:38px; }
.filter-trigger { display:inline-flex; gap:9px; align-items:center; justify-content:center; min-height:44px; background:white; border:1px solid #b9c0c5; border-radius:2px; padding:6px 16px; color:var(--ink); font-weight:600; }
#active-filter-count:not(:empty) { font-variant-numeric:tabular-nums; color:var(--accent); }
.disclosure-chevron { width:8px; height:8px; border-right:1.5px solid; border-bottom:1.5px solid; transform:translateY(-2px) rotate(45deg); }
[aria-expanded=true] .disclosure-chevron { transform:translateY(2px) rotate(225deg); }
.catalog-controls { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:16px;background:#f2f4f5; }
.catalog-controls label,.trim-label { display:grid;gap:5px;color:var(--soft);font-size:13px;min-width:0; }
.catalog-controls select,.trim-label select { width:100%;min-width:0;color:var(--ink);background-color:white; }
.results-bar { position:sticky;top:0;z-index:2;min-height:54px;margin-bottom:16px;background:var(--paper);border-bottom:1px solid var(--line);font-size:13px; }
.result-info { display:flex; align-items:center; gap:10px; min-width:0; }
.result-info .plain { font-size:12px; white-space:nowrap; }
#model-count { color:var(--soft); }
#pick-summary { color:var(--soft); overflow:hidden; white-space:nowrap; text-overflow:ellipsis; margin-left:auto; text-align:right; }
#compare-count { display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap;padding:5px 10px;font-weight:650; }
#compare-count.has-picks { color:var(--accent); }
.model-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.2vw,32px);align-items:start; }
.car-card { min-width:0; background:#fff; border:1px solid #cfd5d9; }
.car-card.selected { border-color:var(--accent); }
.car-view { display:block;position:relative;overflow:hidden; background:linear-gradient(165deg,#f6f7f7,#e6eaed); }
.car-view img { display:block;width:100%;height:auto;aspect-ratio:2.48;object-fit:contain; }
.car-view .model-render { transform:scale(1.45); }
.car-view.studio img { aspect-ratio:2.26; object-fit:cover; object-position:center 38%; }
.car-info { padding:clamp(17px,2.4vw,32px);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 16px; }
.car-meta,.car-fuels { font-size:13px; color:var(--soft); }
.car-info h3 { margin:4px 0 0; font:400 clamp(28px,3vw,44px)/1.12 Georgia,var(--serif); letter-spacing:-.04em; }
.car-fuels { grid-column:1/-1; }
.car-price { grid-column:2;grid-row:1;font-size:clamp(18px,1.7vw,23px);line-height:1.3;font-weight:650;font-variant-numeric:tabular-nums;align-self:end;white-space:nowrap; }
.trim-label { grid-column:1/-1; margin-top:7px; }
.trim-label select { font-size:15px; }
.car-actions { grid-column:1/-1;justify-content:flex-start;gap:10px;margin-top:8px;flex-wrap:wrap; }
.add-car,.car-actions a { display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 15px;border:1px solid #abb5bc;border-radius:2px;background:white;color:var(--ink);font-weight:620;font-size:14px; }
.car-actions a { background:var(--ink);border-color:var(--ink);color:white; }
.add-car[aria-pressed=true] {color:var(--accent);border-color:var(--accent);background:#eef5f9;}
.car-links { grid-column:1/-1;border-top:1px solid var(--line);font-size:14px;margin-top:7px; }
.car-links summary { display:flex;align-items:center;justify-content:space-between;min-height:44px; }
.car-links summary::-webkit-details-marker { display:none; }
.car-links summary::after { content:"+"; font-size:20px;font-weight:400; }
.car-links[open] summary::after { content:"−"; }
.car-links p {color:var(--soft);margin-bottom:5px;}
.car-links a,.source-note a,#comparison-table td a {text-decoration:underline;text-underline-offset:4px;}
.car-links a {display:inline-block;margin-right:14px;min-height:44px;padding-block:8px;}
.more-wrap {display:flex;align-items:center;justify-content:center;gap:18px;margin:22px auto;}
#load-models {background:white;color:var(--ink);}
.source-note,.table-hint {font-size:13px;color:var(--soft);margin-top:16px;}
.compare-band {padding-block:clamp(42px,5.6vw,80px);background:#edf0f2;}
.compare-help {color:var(--soft);margin:12px 0 24px;}
#catalog-status:not(:empty) {font-size:14px;margin-bottom:10px;}
#example-compare {display:grid;grid-template-columns:1fr 1fr;position:relative;align-items:end;max-width:850px;background:white;border:1px solid var(--line);}
.example-model {padding:0 0 14px;min-width:0;}
.example-model + .example-model {border-left:1px solid var(--line);}
.example-model img {width:100%;height:auto;aspect-ratio:2.25;object-fit:cover;object-position:center 38%;margin-bottom:12px;}
.example-model strong {padding-inline:15px;font:400 clamp(22px,3vw,36px)/1.25 Georgia,serif;}
.example-action {grid-column:1/-1;display:flex;justify-content:space-between;padding:14px 18px;border-top:1px solid var(--line);font-weight:650;}
#compare-empty>.under {margin-top:10px;}
.diff-label {display:inline-flex;align-items:center;gap:9px;cursor:pointer;min-height:44px;margin-bottom:8px;}
.diff-label input {appearance:none;width:34px;height:20px;border:1px solid #79868e;border-radius:12px;background:#fff;position:relative;margin:0;}
.diff-label input::before {content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;background:#65737c;border-radius:100%;}
.diff-label input:checked {background:var(--accent);border-color:var(--accent);}
.diff-label input:checked::before {transform:translateX(14px);background:white;}
.diff-label input:disabled {opacity:.55;}
.compare-scroll {overflow-x:auto;max-width:100%;overscroll-behavior-inline:contain;background:white;}
#comparison-table {table-layout:fixed;width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums;}
#comparison-table th,#comparison-table td {padding:12px clamp(9px,1.6vw,22px);text-align:left;vertical-align:top;border-bottom:1px solid var(--line);}
#comparison-table th:first-child {width:17%;font-weight:550;font-size:13px;color:var(--soft);background:#f8f9fa;}
#comparison-table thead th {vertical-align:bottom;background:white;}
#comparison-table th img {width:min(200px,100%);height:auto;aspect-ratio:2.75;object-fit:contain;}
#comparison-table th .studio-photo {width:min(310px,100%);aspect-ratio:2.55;object-fit:cover;object-position:center 38%;margin-bottom:8px;}
#comparison-table strong {display:block;font:400 clamp(18px,2.4vw,34px)/1.16 Georgia,var(--serif);}
#comparison-table th button {min-height:44px;color:var(--soft);}
#comparison-table td a {display:inline-flex;min-height:44px;align-items:center;margin-right:12px;}
#comparison-table .price-row td {font-weight:700;color:var(--accent);font-size:17px;}
.table-hint {display:none;}
.compare-band .actions {margin-top:20px;}
.buying-links {display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding-block:25px;}
.buying-links a {border-bottom:1px solid var(--line);min-height:51px;font-size:14px;font-weight:650;}
.vehicle-context {color:var(--accent);border-left:3px solid var(--accent);padding-left:10px;font-weight:650;}
@media(max-width:760px){
  .catalog-heading {align-items:start;flex-wrap:wrap;gap:4px 15px;margin-bottom:16px;}
  .catalog-controls {grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:12px;}
  .catalog-controls select,.trim-label select {font-size:16px;}
  .model-grid {gap:14px;}
  .car-info {gap:6px 10px;}
  .buying-links {grid-template-columns:1fr 1fr;gap:4px 16px;}
  .compare-scroll tbody th,.compare-scroll thead th:first-child {position:sticky;left:0;background:#f6f8f9;}
  #comparison-table:has(thead th:nth-child(4)) {min-width:550px;}
  #comparison-table th:first-child {width:21%;}
  #comparison-table:has(thead th:nth-child(4)) th:first-child {width:80px;}
  #comparison-table th,#comparison-table td {font-size:13px;padding:8px;}
  #comparison-table strong {font-size:19px;}
  #pick-summary {display:none;}
  @media(max-width:590px){ .table-hint:not([hidden]) {display:block;} }
}
@media(max-width:650px){.model-grid {grid-template-columns:1fr;}}

@media (hover:hover) and (pointer:fine) {
  .mast a:hover,.under:hover,.car-links a:hover,.buying-links a:hover { text-decoration:underline; text-underline-offset:5px; }
  .filter-trigger:hover,.add-car:not(:disabled):hover,#load-models:hover { border-color:var(--accent); color:var(--accent); }
  .car-actions a:hover,.btn.ink:hover { background:#294354; }
  #example-compare:hover .example-action { background:#edf4f8; }
  .btn:hover>span[aria-hidden],.btn:hover>span:last-child { transform:translateX(2px); }
}
@media (prefers-reduced-motion:no-preference) {
  .car-view img,.car-card,.filter-trigger,.add-car,.car-actions a,.btn,.diff-label input,.diff-label input::before,.disclosure-chevron,.example-action,.btn>span {
    transition-property:transform,background-color,border-color,color;
    transition-duration:170ms;
    transition-timing-function:cubic-bezier(.2,.75,.25,1);
  }
  .btn:active,.filter-trigger:active,.add-car:not(:disabled):active { transform:scale(.98); }
  .catalog-controls:not([hidden]) { animation:filter-open 160ms ease-out both; }
  @keyframes filter-open { from { transform:translateY(-4px);opacity:.5; } to { transform:translateY(0);opacity:1; } }
}

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .car-view:hover img:not(.model-render) { transform:scale(1.025); }
  .car-view:hover .model-render { transform:scale(1.50); }
}

.turntable { padding-block:clamp(36px,5.6vw,80px);background:#edf0f2; }
.spin-heading {display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px;}
.spin-heading .eyeline {margin-bottom:8px;}
.spin-model {display:grid;gap:5px;min-width:min(280px,100%);color:var(--soft);font-size:13px;}
.spin-model select {width:100%;background:#fff;color:var(--ink);font-size:16px;}
.spin-stage {
  position:relative;display:grid;place-items:center;min-height:clamp(250px,29vw,400px);
  overflow:hidden;isolation:isolate;touch-action:pan-y;user-select:none;
  background:radial-gradient(ellipse at 50% 42%,#fff 0%,#f5f7f8 48%,#e1e6e9 100%);
  border:1px solid #cdd3d7;border-bottom:0;
}
.spin-stage.ready {cursor:grab;}.spin-stage.ready:active {cursor:grabbing;}
.spin-caption {position:absolute;inset:16px 20px auto;display:flex;justify-content:space-between;align-items:baseline;gap:12px;pointer-events:none;}
.spin-caption strong {min-width:0;font:400 clamp(23px,2.3vw,35px)/1.2 Georgia,var(--serif);}
.spin-caption output {flex-shrink:0;font-variant-numeric:tabular-nums;color:#46545d;font-size:14px;}
.spin-image { width:min(83%,760px);aspect-ratio:2.48;background-repeat:no-repeat;background-size:600% 600%;pointer-events:none; }
#spin-status:not(:empty) {position:absolute;top:50%;transform:translateY(-50%);text-align:center;color:var(--soft);font-size:14px;}
#spin-retry {position:absolute;top:60%;background:white;color:var(--ink);}
.spin-footer {display:flex;align-items:center;gap:clamp(12px,2.6vw,40px);padding:16px clamp(12px,2vw,28px);background:white;border:1px solid var(--line);}
.spin-controls {display:flex;align-items:center;gap:8px;flex:0 1 340px;}
.spin-controls button {display:grid;place-items:center;flex:none;width:44px;height:44px;background:#fff;border:1px solid var(--line);border-radius:50%;font-size:19px;color:var(--ink);}
.spin-range {flex:1;min-width:35px;display:flex;align-items:center;}
.spin-range input[type=range] {width:100%;min-height:44px;padding:0;margin:0;accent-color:var(--accent);border:0;background:none;cursor:pointer;}
.spin-footer p {font-size:14px;color:var(--soft);}
.spin-footer .under {margin-left:auto;white-space:nowrap;}
.car-media {position:relative;}
.spin-link {position:absolute;bottom:10px;right:12px;display:inline-flex;align-items:center;min-height:44px;padding:6px 14px;background:#fff;color:var(--ink);border:1px solid #aeb8bf;border-radius:2px;font-size:14px;font-weight:650;}
@media(hover:hover) and (pointer:fine) {
 .spin-controls button:not(:disabled):hover,.spin-link:hover {border-color:var(--accent);color:var(--accent);}
}
@media(max-width:760px) {
 .spin-heading {align-items:stretch;flex-direction:column;gap:16px;margin-bottom:12px;}
 .spin-model {min-width:0;}.spin-stage {min-height:clamp(218px,46vw,320px);}
 .spin-caption {inset:10px 13px auto;}.spin-image {width:100%;}
 .spin-footer {display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:10px 12px;}
 .spin-controls {grid-column:1/-1;}.spin-footer p {font-size:12px;}
 .spin-footer .under {font-size:12px;}
 .hero .actions {gap:7px;}.hero .actions .btn {padding-inline:12px;gap:10px;}
}
