
:root { --ink:#10283d; --ink-2:#183b55; --orange:#e95f25; --orange-dark:#c64715; --cream:#f6f3ec; --paper:#fffefd; --line:#d9e0e5; --muted:#607080; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; }
.admin-bar .site-header { top:32px; }
.screen-reader-text { 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; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
button,select,input,textarea { font:inherit; }
.shell { width:min(1180px,calc(100% - 48px)); margin:0 auto; }

.site-header { height:84px; padding:0 clamp(24px,5vw,76px); display:flex; align-items:center; gap:44px; background:var(--white); border-bottom:1px solid var(--line); position:relative; z-index:20; }
.brand { display:flex; align-items:center; margin-right:auto; }
.brand-logo { width:216px; height:auto; }
.site-header nav { display:flex; align-items:center; gap:30px; font-size:13px; font-weight:700; }
.site-header nav a { position:relative; padding:32px 0; }
.site-header nav a::after { content:""; position:absolute; height:2px; left:0; right:100%; bottom:22px; background:var(--orange); transition:right .2s ease; }
.site-header nav a:hover::after { right:0; }
.header-contact { padding:12px 19px; border:1px solid var(--ink); font-size:12px; font-weight:800; }
.menu-toggle { display:none; }

.hero { min-height:710px; background:var(--cream); display:grid; grid-template-columns:55% 45%; grid-template-rows:1fr auto; position:relative; overflow:hidden; }
.hero::before { content:""; width:240px; height:240px; position:absolute; left:-135px; top:120px; border:54px solid rgba(233,95,37,.1); border-radius:50%; }
.hero-copy { padding:96px 7vw 124px max(7vw,calc((100vw - 1180px)/2)); position:relative; z-index:2; }
.eyebrow,.section-index { margin:0 0 18px; color:var(--orange); font-size:11px; letter-spacing:.23em; font-weight:900; }
.hero h1 { margin:0; max-width:720px; font-size:clamp(39px,4.6vw,68px); line-height:1.22; letter-spacing:-.045em; }
.hero h1 em { color:var(--orange); font-style:normal; position:relative; }
.hero h1 em::after { content:""; height:8px; background:rgba(233,95,37,.18); position:absolute; left:0; right:0; bottom:2px; }
.hero-lead { max-width:660px; margin:30px 0 24px; color:#445868; line-height:2; font-size:15px; }
.hero-principles { display:flex; flex-wrap:wrap; gap:8px; }
.hero-principles span { padding:7px 11px; background:rgba(255,255,255,.72); border:1px solid #e4ddd2; font-size:11px; font-weight:700; }
.hero-media { min-height:600px; position:relative; background:var(--ink); }
.hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(16,40,61,.24),transparent 40%),linear-gradient(0deg,rgba(16,40,61,.35),transparent 45%); }
.hero-media img { width:100%; height:100%; object-fit:cover; filter:saturate(.8) contrast(1.03); }
.hero-caption { position:absolute; z-index:2; right:clamp(16px,2vw,32px); bottom:88px; background:var(--orange); color:white; display:flex; align-items:center; gap:14px; padding:22px 30px; pointer-events:none; }
.hero-caption b { font-size:46px; line-height:1; }
.hero-caption span { font-size:12px; line-height:1.6; font-weight:700; }

.finder { grid-column:1/3; width:min(1080px,calc(100% - 48px)); margin:-72px auto 50px; background:var(--white); box-shadow:0 22px 60px rgba(16,40,61,.16); padding:28px 34px 20px; z-index:5; }
.finder-heading { display:flex; align-items:center; gap:14px; margin-bottom:18px; }
.step-number { color:var(--orange); font-family:Georgia,serif; font-size:30px; font-style:italic; }
.finder-kicker { margin:0 0 2px; font-size:10px; color:var(--muted); letter-spacing:.16em; }
.finder h2 { margin:0; font-size:20px; }
.finder-fields { display:grid; grid-template-columns:1fr 1fr .82fr; gap:12px; }
.finder-fields label { border:1px solid var(--line); display:grid; padding:10px 16px 8px; }
.finder-fields label span { font-size:10px; color:var(--muted); font-weight:700; }
.finder select { appearance:none; border:0; background:transparent; color:var(--ink); outline:0; font-weight:800; padding:5px 0; }
.finder-button { background:var(--orange); color:white; display:flex; align-items:center; justify-content:space-between; padding:0 22px; font-weight:900; transition:background .2s ease; }
.finder-button { border:0; cursor:pointer; text-align:left; }
.finder-button:hover,.primary-cta:hover { background:var(--orange-dark); }
.finder-button span { font-size:22px; }
.finder-note { margin:13px 0 0; color:var(--muted); font-size:11px; }

.trust-strip { min-height:105px; display:flex; align-items:stretch; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.trust-strip>div { flex:1; display:flex; justify-content:center; align-items:center; gap:12px; border-right:1px solid var(--line); }
.trust-strip>div:last-child { border-right:0; }
.trust-strip b { color:var(--orange); font-size:25px; }
.trust-strip span { color:var(--muted); font-size:11px; font-weight:700; }

.section { padding-top:112px; padding-bottom:112px; }
.section-heading { margin-bottom:44px; }
.section-heading h2 { margin:0; font-size:clamp(31px,3.6vw,50px); letter-spacing:-.035em; line-height:1.3; }
.section-heading>p:last-child { color:var(--muted); line-height:1.9; }
.split-heading { display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:80px; }
.split-heading>p { margin:0 0 2px; }
.visual-guide { padding-bottom:60px; }
.visual-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:stretch; }
.visual-card { height:100%; background:#fff; border:1px solid var(--line); box-shadow:0 16px 38px rgba(16,40,61,.06); display:flex; flex-direction:column; }
.visual-card-media { aspect-ratio:3/2; position:relative; overflow:hidden; background:#e8ecee; }
.visual-card-media::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(16,40,61,.38),transparent 45%); pointer-events:none; }
.visual-card-media img { width:100%; height:100%; object-fit:cover; filter:saturate(.85) contrast(1.03); transition:transform .45s ease; }
.visual-card:hover .visual-card-media img { transform:scale(1.025); }
.visual-card-media>span { position:absolute; z-index:2; left:18px; bottom:15px; color:white; font:italic 25px Georgia,serif; }
.visual-card-media>small { position:absolute; z-index:2; right:13px; bottom:13px; padding:4px 7px; background:rgba(16,40,61,.72); color:white; font-size:8px; }
.visual-card-copy { height:100%; padding:24px 24px 27px; display:flex; flex-direction:column; }
.visual-card-copy>p { margin:0 0 8px; color:var(--orange); font-size:9px; font-weight:900; letter-spacing:.18em; }
.visual-card-copy h3 { margin:0 0 11px; font-size:19px; }
.visual-card-copy>span { margin-top:auto; color:var(--muted); font-size:11px; line-height:1.8; }
.visual-guide-note { margin:24px 0 0; color:#87939c; font-size:9px; text-align:right; }
.focus-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:56px; }
.focus-card { min-height:132px; padding:22px; border:1px solid var(--line); background:white; display:flex; align-items:center; gap:18px; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.focus-card:hover { transform:translateY(-3px); border-color:var(--orange); box-shadow:0 14px 35px rgba(16,40,61,.08); }
.focus-rank { color:#a9b4bd; font-family:Georgia,serif; font-size:20px; font-style:italic; }
.focus-card small { color:var(--orange); font-size:10px; font-weight:800; }
.focus-card h3 { margin:5px 0 0; font-size:24px; }
.circle-arrow { margin-left:auto; width:36px; height:36px; border:1px solid var(--line); border-radius:50%; display:grid; place-items:center; }
.area-directory { border-top:1px solid var(--ink); }
.area-row { display:grid; grid-template-columns:180px 1fr; border-bottom:1px solid var(--line); padding:24px 0; }
.area-row h3 { margin:3px 0; font-size:15px; }
.area-row div { display:flex; flex-wrap:wrap; gap:7px 10px; }
.area-row a { min-width:72px; padding:6px 8px; color:#536575; font-size:12px; border-bottom:1px solid transparent; }
.area-row a:hover { color:var(--orange); border-color:var(--orange); }

.feature-band { background:var(--ink); color:white; padding:110px 0; position:relative; overflow:hidden; }
.feature-band::after { content:"TRUCK FIVE"; position:absolute; left:48%; bottom:-18px; color:rgba(255,255,255,.035); font-size:116px; font-weight:900; white-space:nowrap; }
.feature-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; position:relative; z-index:2; }
.pr-label { display:inline-block; border:1px solid rgba(255,255,255,.55); padding:3px 8px; margin-bottom:28px; font-size:10px; }
.pale { color:#e7a486; }
.feature-intro h2 { margin:0; font-size:clamp(32px,4vw,54px); line-height:1.35; }
.feature-intro>p:not(.section-index) { color:#bfd0dc; line-height:2; font-size:14px; }
.primary-cta { margin:30px 0 15px; max-width:360px; background:var(--orange); color:white; display:flex; justify-content:space-between; padding:18px 22px; font-weight:900; }
.feature-intro>small { display:block; max-width:470px; color:#8fa5b5; font-size:9px; line-height:1.7; }
.feature-list { list-style:none; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.22); }
.feature-list li { display:grid; grid-template-columns:54px 1fr; gap:20px; padding:21px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.feature-list li>span { color:#e7a486; font-family:Georgia,serif; font-size:18px; font-style:italic; }
.feature-list h3 { margin:0 0 6px; font-size:17px; }
.feature-list p { margin:0; color:#aebfcb; font-size:12px; line-height:1.8; }

.vehicle-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.vehicle-grid a { min-height:210px; padding:23px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:white; transition:background .2s ease,color .2s ease; }
.vehicle-grid a:hover { background:var(--ink); color:white; }
.vehicle-number { color:var(--orange); font-family:Georgia,serif; font-size:16px; }
.vehicle-grid h3 { margin:38px 0 10px; font-size:18px; }
.vehicle-grid p { margin:0; color:var(--muted); font-size:11px; }
.vehicle-grid a:hover p { color:#aebfcb; }
.text-link { display:inline-block; margin-top:25px; font-size:10px; font-weight:800; }

.editorial { background:var(--cream); }
.editorial-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:110px; }
.sticky-heading { align-self:start; position:sticky; top:32px; }
.guide-list { border-top:1px solid var(--ink); }
.guide-list a { display:grid; grid-template-columns:52px 1fr 34px; gap:18px; align-items:center; padding:29px 0; border-bottom:1px solid #cdd2d3; }
.guide-list>a>span { color:var(--orange); font-family:Georgia,serif; font-style:italic; }
.guide-list small { color:var(--muted); font-size:10px; }
.guide-list h3 { margin:5px 0 7px; font-size:18px; }
.guide-list p { margin:0; color:var(--muted); font-size:11px; }
.guide-list b { width:34px; height:34px; display:grid; place-items:center; border:1px solid #bfc6c9; border-radius:50%; }

.method { display:grid; grid-template-columns:.8fr 1.2fr; gap:95px; }
.method-title h2 { margin:0; font-size:clamp(28px,3.4vw,46px); line-height:1.45; }
.method-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }
.method-grid article { border-top:2px solid var(--ink); padding-top:20px; }
.method-grid span { color:var(--orange); font-family:Georgia,serif; font-style:italic; }
.method-grid h3 { margin:40px 0 12px; font-size:17px; }
.method-grid p { color:var(--muted); font-size:11px; line-height:1.9; }

.site-footer { background:#0b1e2d; color:white; padding-top:75px; }
.footer-top { display:grid; grid-template-columns:1fr .55fr .55fr; gap:80px; padding-bottom:60px; }
.footer-brand { display:grid; align-content:start; }
.footer-logo { width:228px; height:auto; padding:7px; background:#fff; border-radius:5px; }
.footer-brand p { margin:14px 0 0; color:#8ea1af; font-size:11px; }
.footer-links { display:grid; gap:13px; align-content:start; color:#b7c4cd; font-size:11px; }
.footer-links a:hover { color:white; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.14); padding:22px 0 26px; display:flex; justify-content:space-between; color:#708493; font-size:10px; }

/* Interior pages */
.breadcrumbs { min-height:52px; display:flex; align-items:center; gap:9px; color:#788692; font-size:10px; }
.breadcrumbs a:hover { color:var(--orange); }
.breadcrumbs b { color:var(--ink); font-weight:700; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.area-hero { padding:58px 0; background:var(--cream); border-bottom:1px solid var(--line); overflow:hidden; }
.area-hero-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr) minmax(205px,.52fr); gap:30px; align-items:center; }
.area-hero-copy { min-width:0; }
.area-hero h1,.subpage-hero h1,.company-hero h1 { margin:0; font-size:clamp(36px,4.5vw,62px); line-height:1.32; letter-spacing:-.045em; }
.area-hero h1 { font-size:clamp(31px,3.25vw,49px); overflow-wrap:anywhere; }
.area-hero-grid>div>p:not(.eyebrow) { max-width:760px; margin:24px 0 20px; color:#4d6171; font-size:13px; line-height:1.95; }
.area-hero-media { min-width:0; height:100%; min-height:390px; margin:0; position:relative; overflow:hidden; background:#dce3e6; box-shadow:0 18px 45px rgba(16,40,61,.13); }
.area-hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(16,40,61,.34),transparent 48%); pointer-events:none; }
.area-hero-media img { width:100%; height:100%; object-fit:cover; filter:saturate(.83) contrast(1.03); }
.area-hero-media figcaption { position:absolute; z-index:2; left:13px; bottom:12px; padding:5px 8px; color:white; background:rgba(16,40,61,.72); font-size:8px; }
.update-line { display:flex; align-items:center; gap:11px; color:#6f7d88; font-size:10px; }
.update-line b { color:var(--ink); }
.update-line span:last-child { padding:4px 8px; border:1px solid #c9d0d5; background:rgba(255,255,255,.45); }
.area-summary-card { min-width:0; padding:23px 22px; background:var(--ink); color:white; box-shadow:12px 12px 0 rgba(233,95,37,.13); }
.area-summary-card small { color:#e9a383; font-weight:900; letter-spacing:.08em; }
.area-summary-card ol { margin:20px 0 0; padding:0; list-style:none; counter-reset:item; }
.area-summary-card li { counter-increment:item; display:grid; grid-template-columns:26px 1fr; gap:8px; padding:13px 0; border-top:1px solid rgba(255,255,255,.14); font-size:12px; line-height:1.6; }
.area-summary-card li::before { content:"0" counter(item); color:#e9a383; font-family:Georgia,serif; font-style:italic; }
.content-layout { display:grid; grid-template-columns:minmax(0,1fr) 275px; gap:70px; padding-top:82px; padding-bottom:110px; }
.article-main { min-width:0; }
.selection-chip { margin-bottom:22px; padding:14px 18px; display:flex; align-items:center; gap:12px; background:#fff4ee; border:1px solid #f0c6b3; font-size:10px; }
.selection-chip span { color:#7b655b; }
.selection-chip b { color:var(--orange); font-size:13px; }
.selection-chip a { margin-left:auto; font-weight:800; }
.toc { border-top:3px solid var(--ink); border-bottom:1px solid var(--line); padding:21px 0; display:flex; flex-wrap:wrap; gap:11px 20px; font-size:11px; }
.toc b { margin-right:14px; }
.toc a { color:#526675; text-decoration:underline; text-underline-offset:3px; }
.toc a:hover { color:var(--orange); }
.article-section { padding:78px 0 0; scroll-margin-top:20px; }
.article-section.no-top { padding-top:0; }
.article-heading { display:grid; grid-template-columns:48px 1fr; gap:18px; margin-bottom:28px; }
.article-heading>span { color:var(--orange); font-family:Georgia,serif; font-size:22px; font-style:italic; }
.article-heading small { color:var(--orange); font-size:9px; letter-spacing:.18em; font-weight:900; }
.article-heading h2 { margin:5px 0 0; font-size:clamp(25px,3vw,36px); line-height:1.45; letter-spacing:-.03em; }
.article-main>section>p,.section-lead { color:#526574; font-size:14px; line-height:2; }
.rank-card { border:1px solid var(--line); background:white; box-shadow:0 18px 48px rgba(16,40,61,.08); }
.featured-rank { margin-top:32px; border-top:0; }
.rank-bar { min-height:42px; padding:0 18px; background:var(--ink); color:white; display:flex; align-items:center; gap:14px; font-size:11px; }
.rank-bar span { padding:3px 8px; color:var(--ink); background:white; font-size:9px; font-weight:900; }
.rank-body { padding:30px 32px 28px; }
.rank-title { display:flex; justify-content:space-between; align-items:start; gap:24px; }
.rank-title small { color:var(--muted); font-size:10px; }
.rank-title h3 { margin:5px 0 0; font-size:29px; }
.rank-title strong { color:#e7e8e7; font-family:Georgia,serif; font-size:58px; font-style:italic; line-height:.85; }
.rank-body>p { color:#506371; font-size:13px; line-height:1.9; }
.service-facts { display:grid; grid-template-columns:repeat(3,1fr); margin:26px 0; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.service-facts>div { display:grid; gap:5px; padding:15px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.service-facts dt { color:var(--muted); font-size:9px; }
.service-facts dd { margin:0; color:var(--orange); font-size:15px; font-weight:900; }
.check-list { display:grid; gap:9px; margin:0; padding:0; list-style:none; color:#405463; font-size:11px; }
.check-list li { position:relative; padding-left:23px; }
.check-list li::before { content:"✓"; position:absolute; left:0; color:var(--orange); font-weight:900; }
.rank-actions { display:flex; align-items:center; gap:24px; margin-top:26px; }
.rank-actions .primary-cta { margin:0; flex:1; }
.secondary-link { color:var(--ink); border-bottom:1px solid var(--ink); font-size:11px; font-weight:800; }
.source-note { display:block; margin-top:17px; color:#8b969e; font-size:8px; line-height:1.7; }
.selection-notice,.directory-pending { margin-top:26px; padding:22px 24px; background:var(--cream); border-left:3px solid var(--orange); }
.verified-dealers { display:grid; gap:22px; margin-top:26px; }
.local-dealer-card .service-facts dd { color:var(--ink); font-size:11px; line-height:1.55; overflow-wrap:anywhere; }
.selection-notice b,.directory-pending b { font-size:13px; }
.selection-notice p,.directory-pending p { margin:8px 0 0; color:var(--muted); font-size:11px; line-height:1.8; }
.city-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:26px; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.city-grid a { min-height:64px; padding:0 16px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; font-size:12px; font-weight:800; }
.city-grid>.city-planned { min-height:64px; padding:0 16px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; color:#7f8b94; font-size:12px; font-weight:800; }
.city-grid>.city-planned small { color:#9ba5ac; font-size:8px; font-weight:700; }
.city-grid a:hover { color:white; background:var(--ink); }
.city-grid b { color:var(--orange); }
.directory-link { text-align:right; }
.directory-link a { color:var(--orange); font-size:11px; font-weight:800; }
.compare-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.compare-cards article { min-height:210px; padding:23px 20px; background:var(--cream); border-top:2px solid var(--ink); }
.compare-cards span { color:var(--orange); font-family:Georgia,serif; font-style:italic; }
.compare-cards h3 { margin:28px 0 12px; font-size:16px; line-height:1.55; }
.compare-cards p { margin:0; color:var(--muted); font-size:10px; line-height:1.8; }
.quote-box { margin-top:28px; padding:28px 32px; border:1px solid var(--line); }
.quote-box h3 { margin:0 0 18px; font-size:17px; }
.quote-box ul { display:grid; grid-template-columns:1fr 1fr; gap:11px 30px; margin:0; padding-left:20px; color:#566875; font-size:11px; }
.faq-list { border-top:1px solid var(--ink); }
.faq-list details { border-bottom:1px solid var(--line); padding:0 4px; }
.faq-list summary { cursor:pointer; padding:23px 42px 23px 32px; position:relative; font-size:13px; font-weight:800; list-style:none; }
.faq-list summary::before { content:"Q"; position:absolute; left:4px; color:var(--orange); font-family:Georgia,serif; font-size:19px; }
.faq-list summary::after { content:"＋"; position:absolute; right:4px; color:var(--orange); }
.faq-list details[open] summary::after { content:"−"; }
.faq-list p { margin:-4px 0 20px 32px; color:var(--muted); font-size:11px; line-height:1.9; }
.editor-box { margin-top:78px; padding:31px; background:var(--ink); color:white; }
.editor-box h2 { margin:0 0 13px; font-size:18px; }
.editor-box p { color:#b3c2cc; font-size:11px; line-height:1.9; }
.editor-box a { color:#ef9a72; font-size:10px; font-weight:800; }
.article-sidebar { display:grid; align-content:start; gap:22px; }
.side-cta { padding:24px; background:var(--orange); color:white; }
.side-cta>span { padding:3px 7px; border:1px solid white; font-size:8px; }
.side-cta h2 { margin:22px 0 8px; font-size:21px; }
.side-cta p { font-size:10px; line-height:1.7; }
.side-cta a { margin-top:18px; padding:13px; display:block; background:white; color:var(--ink); font-size:11px; font-weight:900; text-align:center; }
.side-links { border-top:2px solid var(--ink); }
.side-links h2 { margin:0; padding:17px 0; font-size:14px; }
.side-links>a { padding:13px 2px; border-top:1px solid var(--line); display:flex; justify-content:space-between; color:#536573; font-size:11px; }
.side-links>a:hover { color:var(--orange); }
.side-links .back-area { color:var(--ink); font-weight:800; }

/* Company profile */
.company-hero { padding:90px 0; background:var(--ink); color:white; overflow:hidden; position:relative; }
.company-hero::after { content:"TRUCK FIVE"; position:absolute; right:-40px; bottom:-25px; color:rgba(255,255,255,.035); font-size:110px; font-weight:900; white-space:nowrap; }
.company-hero-grid { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; }
.dark-label { border-color:#7f96a7; }
.company-lead { max-width:630px; color:#b8c8d3; line-height:2; font-size:14px; }
.company-actions { display:flex; align-items:center; gap:20px; margin-top:28px; }
.company-actions .primary-cta { margin:0; min-width:310px; }
.company-actions small { color:#8299a9; font-size:9px; }
.company-numbers { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid rgba(255,255,255,.2); border-left:1px solid rgba(255,255,255,.2); }
.company-numbers article { min-height:132px; padding:22px; border-right:1px solid rgba(255,255,255,.2); border-bottom:1px solid rgba(255,255,255,.2); display:grid; align-content:center; }
.company-numbers b { color:#ef9a72; font-family:Georgia,serif; font-size:37px; }
.company-numbers b small { font-family:inherit; font-size:12px; }
.company-numbers span { color:#aabcc8; font-size:10px; }
.company-numbers>p { grid-column:1/3; margin:12px 0 0; color:#7890a0; font-size:8px; }
.company-point-list { border-top:1px solid var(--ink); }
.company-point-list article { display:grid; grid-template-columns:105px 1fr; gap:30px; padding:30px 0; border-bottom:1px solid var(--line); }
.company-point-list article>span { color:var(--orange); font:italic 24px Georgia,serif; }
.company-point-list h3 { margin:0 0 9px; font-size:19px; }
.company-point-list p { margin:0; max-width:760px; color:var(--muted); font-size:12px; line-height:1.9; }
.cream-section { padding:90px 0; background:var(--cream); }
.company-details { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; }
.company-details h2,.company-check h2 { margin:0; font-size:clamp(29px,3.4vw,45px); }
.company-details p { color:var(--muted); font-size:12px; line-height:1.9; }
.tag-panel { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #c9ced0; border-left:1px solid #c9ced0; }
.tag-panel span { min-height:56px; border-right:1px solid #c9ced0; border-bottom:1px solid #c9ced0; display:grid; place-items:center; background:rgba(255,255,255,.45); font-size:11px; font-weight:800; }
.company-check { display:grid; grid-template-columns:.65fr 1.35fr; gap:90px; }
.company-check ol { list-style:none; margin:0; padding:0; border-top:1px solid var(--ink); }
.company-check li { display:grid; grid-template-columns:190px 1fr; gap:24px; padding:21px 0; border-bottom:1px solid var(--line); }
.company-check li b { font-size:14px; }
.company-check li p { margin:0; color:var(--muted); font-size:11px; line-height:1.8; }
.final-cta { padding:92px 0; background:var(--ink); color:white; text-align:center; }
.final-cta h2 { margin:14px 0 20px; font-size:clamp(30px,4vw,50px); line-height:1.4; }
.final-cta p { color:#afc0cc; font-size:12px; }
.final-cta .primary-cta { margin:28px auto 15px; text-align:left; }
.final-cta small { display:block; color:#7f96a5; font-size:8px; }

/* Static pages, guides and contact */
.subpage-hero { padding:74px 0 70px; background:var(--cream); border-bottom:1px solid var(--line); }
.subpage-hero .shell>p:last-child { max-width:720px; margin:22px 0 0; color:var(--muted); font-size:13px; line-height:1.9; }
.guide-hero,.vehicle-hero,.city-hero { background:linear-gradient(115deg,var(--cream),#ebe6dc); }
.narrow-content { width:min(800px,calc(100% - 48px)); }
.prose-content>h2,.prose-content>section>h2 { margin:58px 0 18px; padding-top:4px; font-size:25px; line-height:1.5; letter-spacing:-.02em; }
.prose-content>h2:first-child { margin-top:0; }
.prose-content>p,.prose-content>section>p { color:#4f6271; font-size:13px; line-height:2.05; }
.prose-content a { color:var(--orange); text-decoration:underline; text-underline-offset:3px; }
.company-table { border-top:2px solid var(--ink); margin:28px 0 65px; }
.company-table>div { display:grid; grid-template-columns:180px 1fr; border-bottom:1px solid var(--line); }
.company-table dt,.company-table dd { margin:0; padding:19px 16px; font-size:12px; }
.company-table dt { background:var(--cream); font-weight:800; }
.policy-date { margin-top:55px; border-top:1px solid var(--line); padding-top:18px; font-size:10px!important; }
.contact-intro { margin-bottom:35px; padding:25px 28px; background:var(--cream); border-left:3px solid var(--orange); }
.contact-intro h2 { margin:0 0 10px; font-size:17px; }
.contact-intro p { margin:0; color:var(--muted); font-size:11px; line-height:1.9; }
.contact-form { border-top:2px solid var(--ink); }
.form-row { display:grid; grid-template-columns:210px 1fr; gap:24px; align-items:start; padding:22px 0; border-bottom:1px solid var(--line); }
.form-row label { padding-top:12px; font-size:12px; font-weight:800; }
.form-row em { margin-left:6px; color:var(--orange); font-size:9px; font-style:normal; }
.form-row input,.form-row select,.form-row textarea { width:100%; border:1px solid #cbd3d8; background:white; padding:13px 14px; color:var(--ink); outline:0; }
.form-row textarea { resize:vertical; }
.form-row input:focus,.form-row select:focus,.form-row textarea:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(233,95,37,.09); }
.privacy-check { margin:25px 0 0 234px; display:flex; gap:9px; align-items:center; font-size:11px; }
.privacy-check a { color:var(--orange); text-decoration:underline; }
.form-submit { width:calc(100% - 234px); margin:19px 0 0 234px; border:0; background:var(--orange); color:white; padding:17px 20px; display:flex; justify-content:space-between; font-weight:900; cursor:pointer; }
.form-submit:hover { background:var(--orange-dark); }
.form-note { margin-left:234px; color:var(--muted); font-size:9px; }
.tg-hp { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.form-complete { padding:36px; background:var(--cream); border-top:3px solid var(--orange); }
.form-complete b { font-size:18px; }
.form-complete p { color:var(--muted); font-size:11px; line-height:1.9; }
.form-complete button { border:1px solid var(--ink); background:white; padding:10px 17px; cursor:pointer; }
.key-takeaway { margin-bottom:55px; padding:27px 30px; background:var(--ink); color:white; }
.key-takeaway b { color:#ef9a72; font-size:11px; letter-spacing:.08em; }
.key-takeaway p { margin:10px 0 0; color:#bdcbd4; font-size:12px; line-height:1.9; }
.chapter-number { margin:55px 0 0!important; color:var(--orange)!important; font:italic 18px Georgia,serif!important; }
.guide-next { margin-top:70px; padding:32px; background:var(--cream); border-left:3px solid var(--orange); }
.guide-next h2 { margin:0 0 9px!important; font-size:20px!important; }
.guide-next p { margin:0 0 18px; color:var(--muted); font-size:11px; }
.guide-next a { font-size:11px; font-weight:900; }
.compact-rank { margin-top:0; }

@media (max-width:960px) {
  .site-header nav { display:none; }
	.menu-toggle { width:48px; height:48px; padding:8px; border:0; background:transparent; display:grid; place-content:center; gap:4px; cursor:pointer; }
	.menu-toggle span { width:25px; height:2px; display:block; background:var(--ink); transition:transform .2s ease,opacity .2s ease; }
	.menu-toggle b { margin-top:2px; font-size:7px; font-weight:800; }
	.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
	.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
	.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
	.site-header nav.is-open { position:absolute; left:0; right:0; top:83px; padding:18px 24px 25px; background:#fff; border-top:1px solid var(--line); border-bottom:1px solid var(--line); box-shadow:0 18px 35px rgba(16,40,61,.12); display:grid; gap:0; }
	.site-header nav.is-open a { padding:14px 4px; border-bottom:1px solid var(--line); }
	.site-header nav.is-open a::after { display:none; }
  .hero { grid-template-columns:1fr; grid-template-rows:auto 360px auto; }
  .hero-copy { padding:70px 32px 54px; }
  .hero-media { min-height:360px; }
  .hero-caption { right:20px; bottom:52px; }
  .finder { grid-column:1; margin-top:-40px; }
  .feature-layout,.editorial-layout,.method { grid-template-columns:1fr; gap:60px; }
  .visual-card-grid { grid-template-columns:repeat(2,1fr); }
  .focus-grid { grid-template-columns:repeat(2,1fr); }
  .vehicle-grid { grid-template-columns:repeat(2,1fr); }
  .sticky-heading { position:static; }
  .area-hero-grid,.company-hero-grid,.company-details,.company-check { grid-template-columns:1fr; gap:48px; }
  .content-layout { grid-template-columns:minmax(0,1fr) 230px; gap:35px; }
}

@media (max-width:640px) {
  .shell { width:min(100% - 30px,1180px); }
  .site-header { height:70px; padding:0 15px; }
  .brand-logo { width:184px; }
  .header-contact { display:none; }
	.site-header nav.is-open { top:69px; }
  .hero-copy { padding:55px 20px 45px; }
  .hero h1 { font-size:36px; }
  .hero-lead { font-size:13px; }
  .hero-media { min-height:290px; }
  .hero-caption { right:15px; bottom:48px; padding:15px 20px; }
  .finder { width:calc(100% - 30px); padding:22px 18px 16px; }
  .finder-fields { grid-template-columns:1fr; }
  .finder-button { min-height:54px; }
  .trust-strip { display:grid; grid-template-columns:repeat(3,1fr); }
  .trust-strip>div { min-height:75px; }
  .trust-strip>div { display:grid; place-items:center; align-content:center; gap:3px; text-align:center; }
  .section { padding-top:78px; padding-bottom:78px; }
  .split-heading { grid-template-columns:1fr; gap:20px; }
  .visual-card-grid { grid-template-columns:1fr; }
  .visual-guide-note { text-align:left; line-height:1.6; }
  .focus-grid { grid-template-columns:1fr; }
  .area-row { grid-template-columns:1fr; gap:14px; }
  .area-row div { gap:4px; }
  .area-row a { min-width:62px; }
  .feature-band { padding:78px 0; }
  .vehicle-grid { grid-template-columns:1fr 1fr; }
  .vehicle-grid a { min-height:180px; padding:18px; }
  .vehicle-grid h3 { margin-top:28px; }
  .guide-list p { display:none; }
  .method-grid { grid-template-columns:1fr; }
  .method-grid h3 { margin-top:18px; }
  .footer-top { grid-template-columns:1fr 1fr; gap:36px 24px; }
  .footer-brand { grid-column:1/3; }
  .footer-bottom { display:grid; gap:8px; }
  .breadcrumbs { min-height:44px; }
  .area-hero,.company-hero,.subpage-hero { padding:55px 0; }
  .area-hero { background:var(--cream); }
  .area-hero h1,.subpage-hero h1,.company-hero h1 { font-size:34px; }
  .content-layout { grid-template-columns:1fr; padding-top:55px; padding-bottom:78px; }
  .article-sidebar { grid-row:1; }
  .selection-chip { display:grid; gap:5px; }
  .selection-chip a { margin-left:0; }
  .side-cta { display:none; }
  .side-links { display:none; }
  .article-heading { grid-template-columns:36px 1fr; gap:10px; }
  .article-heading h2 { font-size:24px; }
  .article-section { padding-top:60px; }
  .rank-body { padding:24px 19px 22px; }
  .rank-title strong { font-size:43px; }
  .service-facts { grid-template-columns:1fr; }
  .rank-actions { display:grid; gap:17px; }
  .city-grid { grid-template-columns:1fr 1fr; }
  .compare-cards { grid-template-columns:1fr; }
  .compare-cards article { min-height:auto; }
  .quote-box ul { grid-template-columns:1fr; }
  .company-actions { display:grid; }
  .company-actions .primary-cta { min-width:0; width:100%; }
  .company-numbers b { font-size:30px; }
  .company-point-list article { grid-template-columns:45px 1fr; gap:14px; }
  .tag-panel { grid-template-columns:1fr 1fr; }
  .company-check li { grid-template-columns:1fr; gap:7px; }
  .narrow-content { width:calc(100% - 30px); }
  .company-table>div,.form-row { grid-template-columns:1fr; gap:5px; }
  .company-table dt,.company-table dd { padding:14px; }
  .privacy-check,.form-submit,.form-note { margin-left:0; width:100%; }
}

@media screen and (max-width:782px) {
  .admin-bar .site-header { top:46px; }
}

/* Verified buyer directory and advertiser visual */
.truck-five-visual { margin:28px 0 24px; border:1px solid rgba(255,255,255,.22); background:#fff; }
.truck-five-visual img { width:100%; height:auto; }
.truck-five-visual figcaption { padding:8px 10px; background:#f3f1ec; color:#64727d; font-size:8px; line-height:1.6; }
.company-proof { display:grid; gap:20px; }
.company-proof figure { margin:0; border:1px solid rgba(255,255,255,.2); background:#fff; }
.company-proof figure img { width:100%; height:auto; }
.company-proof figcaption { padding:8px 10px; color:#6c7d89; background:#eef1f2; font-size:8px; line-height:1.55; }
.dealer-card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:18px; margin-top:30px; }
.dealer-card { min-width:0; padding:27px 25px; background:#fff; border:1px solid var(--line); box-shadow:0 14px 38px rgba(16,40,61,.055); display:flex; flex-direction:column; }
.dealer-card-heading { display:flex; justify-content:space-between; align-items:start; gap:18px; }
.dealer-card-heading small { color:var(--orange); font-size:9px; font-weight:900; letter-spacing:.08em; }
.dealer-card-heading h3 { margin:7px 0 0; font-size:21px; line-height:1.4; }
.dealer-card-heading>span { flex:none; padding:4px 7px; border:1px solid #cbd4da; color:#677784; font-size:8px; font-weight:800; }
.dealer-card>p { color:var(--muted); font-size:11px; line-height:1.85; }
.dealer-card dl { margin:16px 0; border-top:1px solid var(--line); }
.dealer-card dl>div { display:grid; grid-template-columns:72px 1fr; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); }
.dealer-card dt { color:#75838e; font-size:9px; }
.dealer-card dd { margin:0; font-size:10px; font-weight:800; line-height:1.65; overflow-wrap:anywhere; }
.dealer-card ul { display:grid; gap:8px; margin:0 0 21px; padding:0; list-style:none; color:#405463; font-size:10px; line-height:1.6; }
.dealer-card li { position:relative; padding-left:19px; }
.dealer-card li::before { content:"✓"; position:absolute; left:0; color:var(--orange); font-weight:900; }
.dealer-card-actions { margin-top:auto; display:flex; flex-wrap:wrap; align-items:center; gap:16px; }
.dealer-card-actions .primary-cta { margin:0; min-width:min(100%,300px); }
.official-link { color:var(--muted); border-bottom:1px solid #aab5bc; font-size:10px; font-weight:800; }
.directory-order-note { margin:26px 0 0; padding:14px 18px; border-left:3px solid var(--orange); background:#fff7f1; color:#677681; font-size:10px; line-height:1.8; }
.directory-summary { display:grid; grid-template-columns:repeat(3,1fr); margin:30px 0 46px; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.directory-summary article { min-height:105px; padding:18px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:center; gap:16px; background:#fff; }
.directory-summary b { color:var(--orange); font:italic 38px Georgia,serif; }
.directory-summary span { color:#5b6c78; font-size:9px; font-weight:800; line-height:1.55; }
.directory-subheading { margin:46px 0 18px; padding-bottom:13px; border-bottom:2px solid var(--ink); display:flex; justify-content:space-between; align-items:end; gap:20px; }
.directory-subheading small { color:var(--orange); font-size:8px; font-weight:900; letter-spacing:.12em; }
.directory-subheading h3 { margin:5px 0 0; font-size:19px; line-height:1.5; }
.directory-subheading>span { flex:none; color:#74828c; font-size:8px; font-weight:800; }
.directory-compact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.directory-compact-card { min-width:0; padding:23px 21px; border:1px solid var(--line); background:#fff; display:flex; flex-direction:column; }
.directory-compact-card>div:first-child small { color:var(--orange); font-size:8px; font-weight:900; }
.directory-compact-card h4 { margin:6px 0 0; font-size:18px; line-height:1.45; }
.directory-compact-card>p { color:var(--muted); font-size:10px; line-height:1.8; }
.directory-compact-card dl { margin:8px 0 19px; border-top:1px solid var(--line); }
.directory-compact-card dl>div { display:grid; grid-template-columns:62px 1fr; gap:10px; padding:9px 0; border-bottom:1px solid var(--line); }
.directory-compact-card dt { color:#7b8992; font-size:8px; }
.directory-compact-card dd { margin:0; font-size:9px; font-weight:700; line-height:1.65; overflow-wrap:anywhere; }
.nationwide-list { border-top:1px solid var(--line); }
.nationwide-list>a { min-height:82px; padding:15px 5px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:minmax(170px,.8fr) minmax(0,1.2fr) 22px; gap:16px; align-items:center; }
.nationwide-list>a:hover { color:var(--orange); }
.nationwide-list span { display:grid; gap:4px; }
.nationwide-list small { color:#7b8992; font-size:8px; }
.nationwide-list b { font-size:13px; }
.nationwide-list em { color:#60717d; font-size:9px; font-style:normal; line-height:1.7; }
.nationwide-list strong { color:var(--orange); text-align:right; }
.candidate-note { margin-top:28px; padding:20px 22px; border:1px dashed #b9c2c8; background:#f6f7f7; }
.candidate-note b { font-size:12px; }
.candidate-note p { margin:7px 0 0; color:#667681; font-size:9px; line-height:1.8; }
.city-heading { margin-top:52px; }
.buyer-preview .dealer-card-grid { margin-top:0; }
.directory-more { display:flex; align-items:center; gap:28px; margin-top:30px; }
.directory-more .primary-cta { min-width:310px; margin:0; }
.directory-more p { color:var(--muted); font-size:10px; }
.directory-hero { background:linear-gradient(120deg,var(--cream),#e8edef); }
.directory-section { padding-bottom:105px; }
.truck-five-directory-card { display:grid; grid-template-columns:1.05fr .95fr; gap:42px; align-items:center; padding:34px; border:1px solid var(--line); background:#fff; box-shadow:0 18px 50px rgba(16,40,61,.07); }
.truck-five-directory-visual { background:#f3f1ec; border:1px solid var(--line); }
.truck-five-directory-visual img { width:100%; height:auto; }
.truck-five-directory-card h3 { margin:6px 0 13px; font-size:30px; }
.truck-five-directory-card>div>p:not(.section-index) { color:var(--muted); font-size:12px; line-height:1.9; }
.truck-five-directory-card .pr-label { margin-bottom:13px; }
.directory-list-band { background:var(--cream); }
.dealer-profile-hero .update-line { margin-top:23px; }
.dealer-profile-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:80px; align-items:start; }
.dealer-profile-layout h2 { margin:0 0 22px; font-size:clamp(25px,3vw,38px); }
.dealer-profile-layout article h2:not(:first-of-type) { margin-top:60px; }
.profile-highlight-list { display:grid; gap:12px; padding:0; list-style:none; }
.profile-highlight-list li { padding:17px 18px 17px 48px; position:relative; background:var(--cream); font-size:12px; }
.profile-highlight-list li::before { content:"✓"; position:absolute; left:20px; color:var(--orange); font-weight:900; }
.profile-disclaimer { margin-top:28px; color:#75838e; font-size:10px; line-height:1.8; }
.profile-side-card { position:sticky; top:28px; padding:28px; background:var(--ink); color:#fff; }
.profile-side-card>small { color:#ee9a73; font-size:9px; font-weight:900; }
.profile-side-card h2 { margin:9px 0 14px; font-size:22px; }
.profile-side-card p { color:#b5c4ce; font-size:11px; line-height:1.8; }
.profile-side-card .primary-cta { margin:24px 0 18px; }
.profile-side-card .secondary-link { color:#fff; border-color:#fff; }

@media (max-width:960px) {
  .truck-five-directory-card,.dealer-profile-layout { grid-template-columns:1fr; gap:35px; }
  .profile-side-card { position:static; }
}

@media (max-width:640px) {
	.dealer-card-grid { grid-template-columns:1fr; }
	.dealer-card { padding:22px 19px; }
	.directory-summary { margin-bottom:38px; }
	.directory-summary article { min-height:92px; padding:13px 10px; display:grid; gap:3px; text-align:center; }
	.directory-summary b { font-size:30px; }
	.directory-summary span { font-size:7px; }
	.directory-subheading { align-items:start; }
	.directory-subheading>span { max-width:90px; text-align:right; line-height:1.5; }
	.directory-compact-grid { grid-template-columns:1fr; }
	.nationwide-list>a { grid-template-columns:1fr 20px; gap:7px 12px; }
	.nationwide-list em { grid-column:1; }
	.nationwide-list strong { grid-column:2; grid-row:1/3; }
	.directory-more { align-items:stretch; flex-direction:column; gap:12px; }
  .directory-more .primary-cta { width:100%; min-width:0; }
  .truck-five-directory-card { padding:18px; }
  .truck-five-directory-card h3 { font-size:25px; }
}

/* Nationwide directory release 2.0 */
.area-finder-panel { padding:34px 32px; margin-top:56px; background:var(--cream); border-top:3px solid var(--ink); }
.area-finder-panel.article-section { padding-top:34px; }
.vehicle-chip-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-top:24px; }
.vehicle-chip-grid a { min-height:50px; padding:10px; display:grid; place-items:center; text-align:center; background:#fff; border:1px solid var(--line); color:#465b6a; font-size:10px; font-weight:800; }
.vehicle-chip-grid a:hover { color:#fff; background:var(--ink); border-color:var(--ink); }
.quick-city-links { display:flex; flex-wrap:wrap; align-items:center; gap:8px 15px; margin-top:22px; padding-top:19px; border-top:1px solid #d7d7d1; }
.quick-city-links b { width:100%; margin-bottom:3px; font-size:11px; }
.quick-city-links a { color:var(--orange); font-size:10px; font-weight:800; }
.directory-compact-card h3 { margin:6px 0 0; font-size:18px; line-height:1.45; }
.common-selling-guide>p { margin-bottom:29px; }
.guide-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.guide-check-grid article { min-width:0; padding:23px 22px; background:#fff; border:1px solid var(--line); border-top:2px solid var(--ink); }
.guide-check-grid article>span { color:var(--orange); font:italic 17px Georgia,serif; }
.guide-check-grid h3 { margin:20px 0 10px; font-size:16px; line-height:1.55; }
.guide-check-grid p { margin:0; color:#5b6d7a; font-size:10px; line-height:1.9; }
.guide-check-grid.compact-guide { grid-template-columns:repeat(2,minmax(0,1fr)); }
.guide-to-parent { margin-top:25px!important; text-align:right; }
.guide-to-parent a { color:var(--orange); font-size:11px; font-weight:900; }
.region-check-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:27px; }
.region-check-grid article { padding:23px 20px; background:var(--cream); border-top:2px solid var(--ink); }
.region-check-grid h3 { margin:0 0 12px; font-size:15px; line-height:1.55; }
.region-check-grid p { margin:0; color:var(--muted); font-size:10px; line-height:1.85; }
.editor-box { margin-top:76px; padding:31px 32px; background:var(--ink); color:#fff; }
.editor-box h2 { margin:0 0 13px; font-size:20px; }
.editor-box p { margin:0; color:#b7c7d1; font-size:10px; line-height:1.9; }
.editor-box a { display:inline-block; margin-top:18px; color:#ef9a72; font-size:10px; font-weight:900; }

@media (max-width:1080px) {
  .area-hero-grid { grid-template-columns:minmax(0,1fr) minmax(300px,.85fr); gap:28px; }
  .area-summary-card { grid-column:1/3; display:grid; grid-template-columns:145px 1fr; align-items:center; box-shadow:8px 8px 0 rgba(233,95,37,.13); }
  .area-summary-card ol { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:0; }
  .area-summary-card li { border-top:0; border-left:1px solid rgba(255,255,255,.14); padding:9px 12px; }
}

@media (max-width:640px) {
  .area-hero-grid { grid-template-columns:1fr; gap:24px; }
  .area-hero-media { min-height:260px; grid-row:2; }
  .area-summary-card { grid-column:auto; display:block; grid-row:3; box-shadow:6px 6px 0 rgba(233,95,37,.13); }
  .area-summary-card ol { display:block; margin-top:17px; }
  .area-summary-card li { border-left:0; border-top:1px solid rgba(255,255,255,.14); padding:12px 0; }
  .area-finder-panel { padding:25px 18px; margin-top:34px; }
  .vehicle-chip-grid { grid-template-columns:1fr 1fr; }
  .guide-check-grid,.guide-check-grid.compact-guide,.region-check-grid { grid-template-columns:1fr; }
  .guide-check-grid article { padding:21px 18px; }
  .editor-box { padding:25px 21px; }
}

/* Human-readable HTML sitemap */
.sitemap-content { width:min(1120px,calc(100% - 48px)); }
.tg-html-sitemap { display:grid; gap:78px; }
.tg-sitemap-intro { display:grid; grid-template-columns:minmax(0,1fr) 440px; gap:70px; align-items:center; padding:34px 38px; background:var(--cream); border-top:3px solid var(--ink); }
.tg-sitemap-intro>p { margin:0; color:#526675; font-size:13px; line-height:2; }
.tg-sitemap-counts { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #d5d8d4; border-left:1px solid #d5d8d4; background:#fff; }
.tg-sitemap-counts>div { min-height:96px; padding:15px 10px; border-right:1px solid #d5d8d4; border-bottom:1px solid #d5d8d4; display:grid; place-content:center; gap:2px; text-align:center; }
.tg-sitemap-counts b { color:var(--orange); font:italic 31px Georgia,serif; }
.tg-sitemap-counts span { color:#647580; font-size:9px; font-weight:800; }
.tg-sitemap-navigation { display:grid; gap:90px; }
.tg-sitemap-section-heading { margin-bottom:30px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px 25px; align-items:end; border-bottom:2px solid var(--ink); padding-bottom:17px; }
.tg-sitemap-section-heading>p { grid-column:1/3; margin:0; color:var(--orange); font-size:9px; font-weight:900; letter-spacing:.17em; }
.tg-sitemap-section-heading h2 { margin:0; font-size:clamp(25px,3vw,36px); line-height:1.35; }
.tg-sitemap-section-heading>span { max-width:390px; color:#77858e; font-size:10px; line-height:1.7; text-align:right; }
.tg-sitemap-fixed-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.tg-sitemap-fixed-groups>section { min-width:0; padding:25px 25px 22px; background:#fff; border:1px solid var(--line); }
.tg-sitemap-fixed-groups h3 { margin:0 0 16px; color:var(--ink); font-size:15px; }
.tg-sitemap-links { margin:0; padding:0; list-style:none; display:grid; gap:1px; }
.tg-sitemap-links li { min-width:0; }
.tg-sitemap-links a { min-height:42px; padding:9px 4px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:minmax(0,1fr) 18px; gap:10px; align-items:center; color:#4e6270; font-size:11px; font-weight:700; line-height:1.55; overflow-wrap:anywhere; }
.tg-sitemap-links a:hover { color:var(--orange); border-color:#e9a383; }
.tg-sitemap-links a span { color:var(--orange); text-align:right; }
.tg-sitemap-region-list,.tg-sitemap-dealer-groups { display:grid; gap:12px; }
.tg-sitemap-region,.tg-sitemap-dealer-group { border:1px solid var(--line); background:#fff; }
.tg-sitemap-region>summary,.tg-sitemap-dealer-group>summary { min-height:73px; padding:18px 58px 18px 25px; position:relative; display:flex; align-items:center; justify-content:space-between; gap:20px; cursor:pointer; list-style:none; }
.tg-sitemap-region>summary::-webkit-details-marker,.tg-sitemap-dealer-group>summary::-webkit-details-marker { display:none; }
.tg-sitemap-region>summary::after,.tg-sitemap-dealer-group>summary::after { content:"＋"; position:absolute; right:23px; top:50%; transform:translateY(-50%); color:var(--orange); font-size:19px; }
.tg-sitemap-region[open]>summary::after,.tg-sitemap-dealer-group[open]>summary::after { content:"−"; }
.tg-sitemap-region>summary:hover,.tg-sitemap-dealer-group>summary:hover { background:#fff8f3; }
.tg-sitemap-region>summary b,.tg-sitemap-dealer-group>summary b { font-size:17px; }
.tg-sitemap-region>summary span,.tg-sitemap-dealer-group>summary span { color:#77858f; font-size:9px; font-weight:800; }
.tg-sitemap-region-body { padding:6px 24px 27px; border-top:1px solid var(--line); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; background:var(--cream); }
.tg-sitemap-prefecture { min-width:0; margin-top:18px; padding:20px; background:#fff; border-top:2px solid var(--ink); }
.tg-sitemap-prefecture-heading { margin-bottom:8px; display:flex; align-items:center; justify-content:space-between; gap:15px; }
.tg-sitemap-prefecture-heading h3 { margin:0; font-size:15px; }
.tg-sitemap-prefecture-heading h3 a { display:flex; gap:10px; align-items:center; }
.tg-sitemap-prefecture-heading h3 a:hover { color:var(--orange); }
.tg-sitemap-prefecture-heading h3 span { color:var(--orange); }
.tg-sitemap-prefecture-heading small { flex:none; color:#85919a; font-size:8px; font-weight:800; }
.tg-sitemap-city-links { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; }
.tg-sitemap-city-links a { min-height:36px; padding:7px 2px; font-size:10px; }
.tg-sitemap-dealer-group>.tg-sitemap-links { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 22px; padding:5px 24px 26px; border-top:1px solid var(--line); }
.tg-sitemap-auto-note { margin:23px 0 0; color:#77858f; font-size:9px; line-height:1.8; text-align:right; }

@media (max-width:960px) {
  .tg-sitemap-intro { grid-template-columns:1fr; gap:25px; }
  .tg-sitemap-region-body { grid-template-columns:1fr; }
  .tg-sitemap-dealer-group>.tg-sitemap-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:640px) {
  .sitemap-content { width:calc(100% - 30px); }
  .tg-html-sitemap { gap:58px; }
  .tg-sitemap-intro { padding:25px 19px; }
  .tg-sitemap-intro>p { font-size:11px; }
  .tg-sitemap-counts>div { min-height:82px; padding:10px 5px; }
  .tg-sitemap-counts b { font-size:27px; }
  .tg-sitemap-navigation { gap:67px; }
  .tg-sitemap-section-heading { grid-template-columns:1fr; align-items:start; }
  .tg-sitemap-section-heading>p { grid-column:auto; }
  .tg-sitemap-section-heading>span { text-align:left; }
  .tg-sitemap-fixed-groups { grid-template-columns:1fr; }
  .tg-sitemap-fixed-groups>section { padding:22px 18px; }
  .tg-sitemap-region>summary,.tg-sitemap-dealer-group>summary { min-height:65px; padding:15px 47px 15px 17px; }
  .tg-sitemap-region>summary::after,.tg-sitemap-dealer-group>summary::after { right:17px; }
  .tg-sitemap-region-body { padding:2px 12px 17px; }
  .tg-sitemap-prefecture { padding:17px 14px; }
  .tg-sitemap-city-links { grid-template-columns:1fr 1fr; gap:0 9px; }
  .tg-sitemap-dealer-group>.tg-sitemap-links { grid-template-columns:1fr; padding:4px 16px 20px; }
  .tg-sitemap-auto-note { text-align:left; }
}
