/* Town homepages extend the approved regional shell. */
.town-homepage .kc-content .town-opening-copy>p {max-width:none}
.town-homepage .town-opening-copy {width:100%;margin-bottom:32px}
.town-homepage .town-opening-copy>p:last-child {margin-bottom:0}
.town-homepage .town-opening-media {align-items:start}
.town-homepage .town-opening-media .cs-slider-track {margin-top:0}
.town-homepage .town-service-grid {align-items:stretch;gap:28px}
.town-homepage .town-service-card {display:grid;grid-template-rows:subgrid;gap:22px;min-width:0}
.town-homepage .town-with-photos>.town-service-card {grid-row:span 4}
.town-homepage .town-without-photos>.town-service-card {grid-row:span 6}
.town-homepage .kc-content .town-service-card>ul.town-card-checklist {grid-row:span 3;grid-template-rows:subgrid;row-gap:0;margin:0}
.town-homepage .town-service-card>h3,.town-homepage .town-service-card>.cs-slider {margin:0}
.town-homepage .town-service-card>.tm-action-row {align-self:end;margin:0}
.town-homepage .town-service-card .tm-action-row .btn {width:100%}
.town-homepage .town-card-copy>p:first-child {margin-top:0}
.town-homepage .town-card-copy>p:last-child {margin-bottom:0}
.town-homepage .rh-client-priorities .tm-checklist {display:grid;grid-template-columns:1fr;margin-top:24px}
.town-homepage #new-vehicle-protection .kc-source>p {max-width:none}
.town-homepage .town-dealer-panel {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);align-items:start;gap:38px;border:0;border-top:3px solid #c8102d;padding-top:28px;margin-top:32px}
.town-homepage .town-dealer-sidebar {min-width:0;align-self:start;background:#f3f3f5;padding:24px}
.town-homepage .kc-content .town-dealer-kicker {font:700 .8rem/1.5 var(--body);letter-spacing:.12em;text-transform:uppercase;color:#c8102d;margin:0 0 16px}
.town-homepage .town-dealer-sidebar .kc-video {width:100%;margin:0 auto;box-shadow:none}
.town-homepage .town-dealer-sidebar-copy {min-width:0}
.town-homepage .town-dealer-sidebar-copy h3 {font:700 1.65rem/1.15 var(--heading);color:#17171b;margin:24px 0 14px}
.town-homepage .town-title-ending {display:inline-block;max-width:100%;vertical-align:bottom}
.town-homepage .kc-content .town-dealer-sidebar-copy>p {margin:0;font:inherit}
.town-homepage .town-dealer-directory {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 36px;min-width:0}
.town-homepage .town-dealer-group {display:grid;grid-template-rows:subgrid;grid-row:span var(--dealer-group-rows);row-gap:22px;min-width:0;border-bottom:1px solid #dcdce2;padding-bottom:28px}
.town-homepage .town-dealer-group-heading {min-width:0}
.town-homepage .town-dealer-group-heading h3 {font:700 1.8rem/1.12 var(--heading);text-transform:uppercase;color:#17171b;margin:0}
.town-homepage .kc-content .town-dealer-qualifier {font:400 .8rem/1.5 var(--body);letter-spacing:.06em;text-transform:uppercase;color:#5a5a61;margin:7px 0 0}
.town-homepage .town-dealer-entries {display:grid;grid-template-rows:subgrid;grid-row:span var(--dealer-entry-rows);row-gap:24px;min-width:0}
.town-homepage .town-dealer-entry {min-width:0}
.town-homepage .town-dealer-entry h4 {font:700 1em/1.5 var(--body);text-transform:none;color:#17171b;margin:0 0 7px}
.town-homepage .kc-content .town-dealer-description {margin:0;max-width:none}
.town-homepage .kc-content .town-dealer-links {margin:10px 0 0;max-width:none}
.town-homepage .kc-content .town-dealer-links a {color:#c8102d;text-decoration:underline;text-decoration-color:#c8102d66;text-decoration-thickness:1px;text-underline-offset:4px;line-height:1.9}
.town-homepage .kc-content .town-dealer-links a:hover {color:#980c22;text-decoration-color:currentColor;text-decoration-thickness:2px}
.town-homepage .kc-content .town-dealer-links a:focus-visible {outline:2px solid #c8102d;outline-offset:4px;border-radius:1px;text-decoration-color:currentColor}
.town-homepage .town-dealer-gallery {width:100%;max-width:none;padding:14px 0 0;margin:0;box-sizing:border-box}
.town-homepage .town-dealer-slider {--dealer-columns:5;--dealer-gap:16px;position:relative;width:100%;max-width:none;margin:0}
.cs-page.cs-client-page .town-dealer-slider.cs-slider .cs-slider-track {grid-auto-columns:calc((100% - (var(--dealer-columns) - 1)*var(--dealer-gap))/var(--dealer-columns));grid-template-rows:repeat(4,auto);gap:var(--dealer-gap);align-items:stretch}
.town-homepage .town-dealer-slider .cs-slider-track>figure {display:grid;grid-template-rows:subgrid;grid-row:span 4;gap:0}
.town-homepage .town-dealer-slider figcaption {display:grid;grid-template-rows:subgrid;grid-row:span 3;gap:0;padding:14px 16px;background:#fff;border:1px solid #dcdce2;border-top:0;font-size:.95rem;line-height:1.5}
.town-homepage .town-dealer-slider figcaption strong {display:block;margin-bottom:5px;color:#c8102d}
.town-homepage .town-dealer-slider figcaption span {display:block}
.town-homepage .town-dealer-slider>.cs-slide-arrow {top:var(--dealer-arrow-top,100px)}
.town-homepage .town-dealer-slider>[data-dealer-prev] {left:10px}
.town-homepage .town-dealer-slider>[data-dealer-next] {right:10px}
.town-homepage .kc-content .cs-slide-image img {object-fit:cover}
.town-homepage [data-planned-route] {text-decoration-style:dotted}
.town-homepage .town-dealer-directory-single {grid-template-columns:minmax(0,1fr);align-self:center}
.town-homepage .town-dealer-directory-single .town-dealer-group {display:block}
.town-homepage .town-dealer-directory-single .town-dealer-group-heading {margin-bottom:24px}
.town-homepage .town-dealer-directory-single .town-dealer-entries {display:block}
.town-homepage .town-dealer-directory-single .town-dealer-description+.town-dealer-description {margin-top:18px}
@media(max-width:1100px){.town-homepage .town-dealer-panel{grid-template-columns:1fr}.town-homepage .town-dealer-sidebar{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:0 32px}.town-homepage .town-dealer-sidebar .kc-video{grid-column:1;grid-row:2}.town-homepage .town-dealer-sidebar-copy{grid-column:2;grid-row:1/span 2;align-self:center}.town-homepage .town-dealer-sidebar-copy h3{margin-top:0}}
@media(max-width:650px){.town-homepage .town-dealer-panel{gap:32px;padding-top:22px}.town-homepage .town-dealer-sidebar{display:block;padding:24px}.town-homepage .town-dealer-sidebar .kc-video{max-width:280px}.town-homepage .town-dealer-sidebar-copy h3{margin-top:24px}.town-homepage .town-dealer-directory{display:block}.town-homepage .town-dealer-group{display:block;margin:0 0 28px;padding-bottom:28px}.town-homepage .town-dealer-group:last-child{margin-bottom:0}.town-homepage .town-dealer-entries{display:block}.town-homepage .town-dealer-group-heading{margin-bottom:24px}.town-homepage .town-dealer-entry+.town-dealer-entry{margin-top:26px}}
@media(max-width:1599px){.town-homepage .town-dealer-slider{--dealer-columns:4}}
@media(max-width:1199px){.town-homepage .town-dealer-slider{--dealer-columns:3}}
@media(max-width:799px){.town-homepage .town-dealer-slider{--dealer-columns:2}}
@media(max-width:519px){.town-homepage .town-dealer-slider{--dealer-columns:1}}
@media(max-width:700px){.town-homepage .town-service-card{display:flex;flex-direction:column}.town-homepage .kc-content .town-service-card>ul.town-card-checklist{grid-template-rows:none}.town-homepage .town-service-card>.tm-action-row{margin-top:auto;width:100%}}

/* Regular carousel descriptions preserve the compact image frames. */
.town-homepage [data-cs-slider] .cs-slider-track figcaption{padding:14px 16px;background:#f3f3f5;border:1px solid #dcdce2;border-top:0;font-size:1rem;line-height:1.55;color:#52525b}

/* A single source group can contain several separate dealerships. */
.town-homepage .town-dealer-directory-multiple-entries{align-self:start}
.town-homepage .town-dealer-directory-multiple-entries .town-dealer-entry+.town-dealer-entry{margin-top:28px}
