.ad-site-body,
.ad-site-body #wrapper,
.ad-site-body #main { margin: 0 !important; padding: 0 !important; max-width: none !important; background: #fff; }
.ad-site-body { color: var(--ad-text); font-family: Montserrat, Arial, sans-serif; font-size: 16px !important; line-height: 1.6; overflow-x: hidden; }
.ad-site-body *, .ad-site-body *::before, .ad-site-body *::after { box-sizing: border-box; }
.ad-site-body .stm-footer, .ad-site-body .footer_widgets_wrapper { display: none !important; }
.ad-site-body:not(.home) p, .ad-site-body:not(.home) li, .ad-site-body:not(.home) label, .ad-site-body:not(.home) input, .ad-site-body:not(.home) textarea, .ad-site-body:not(.home) select { font-size: 15px !important; }
.ad-site-body:not(.home) .ad-page-hero h1 { font-size: clamp(40px, 5vw, 64px) !important; }
.ad-site-body:not(.home) .ad-page-content h2 { font-size: clamp(27px, 3vw, 38px) !important; }
.ad-site-body:not(.home) .ad-page-content h3 { font-size: clamp(21px, 2vw, 28px) !important; }
.ad-site-body:not(.home) .stm-single-car-page h1 { font-size: clamp(34px, 4vw, 52px) !important; }

.ad-header__phone { display: inline-flex !important; min-width: 178px; align-items: center; justify-content: flex-end; color: #fff !important; opacity: 1 !important; visibility: visible !important; }
.ad-header__phone span { color: #75c5ff !important; opacity: 1 !important; }

.ad-page { min-height: 70vh; padding-top: 64px; background: #fff; }
.admin-bar .ad-page { padding-top: 96px; }
.ad-page-hero { position: relative; overflow: hidden; padding: 78px 0 72px; color: #fff; background: linear-gradient(110deg, #030b12, #0a2435); }
.ad-page-hero::after { content: ""; position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px); background-size: 42px 42px; }
.ad-page-hero .ad-container { position: relative; z-index: 1; }
.ad-page-hero h1 { max-width: 900px; margin: 0; color: #fff; font-size: clamp(38px, 5vw, 64px); line-height: 1; letter-spacing: -.035em; text-transform: uppercase; }
.ad-page-hero > .ad-container > p:last-child:not(.ad-kicker) { max-width: 620px; margin: 18px 0 0; color: #c8d5de; font-size: 16px; }
.ad-page-hero--transit { background: linear-gradient(90deg, rgba(3,11,18,.95), rgba(3,11,18,.28)), url("../../images/import-ship.jpg") center/cover no-repeat; }
.ad-page-hero--stock { background: linear-gradient(90deg, rgba(3,11,18,.96), rgba(3,11,18,.3)), url("../../images/hero-stock-porsche.jpg") 68% center/cover no-repeat; }
.ad-page-hero--sold { background: linear-gradient(90deg, rgba(3,11,18,.97), rgba(3,11,18,.44)), url("../../images/hero-sold-mercedes.jpg") 68% center/cover no-repeat; }
.ad-page-content, .ad-page-section { padding-top: 62px; padding-bottom: 72px; }
.ad-page-content { font-size: 16px; line-height: 1.7; }
.ad-page-content h2, .ad-page-content h3 { color: var(--ad-ink); text-transform: uppercase; }
.ad-page-content a { color: var(--ad-blue-dark); }
.ad-page-content input, .ad-page-content textarea, .ad-page-content select { width: 100%; min-height: 48px; border: 1px solid var(--ad-line); border-radius: 4px; background: #fff; }
.ad-page-content textarea { min-height: 150px; }
.ad-page-content button, .ad-page-content input[type="submit"] { width: auto; min-height: 46px; padding: 0 24px; color: #fff; border: 0; border-radius: 4px; background: var(--ad-blue); font-weight: 800; text-transform: uppercase; }
.ad-page-content .container, .ad-page-content .vc_row { max-width: 100%; }
.page-about-us .ad-page-content #ev_footer_contact_block { display: none !important; }
.page-contact-us .ad-page-content { padding-top: 42px; }
.page-contact-us .ad-page-content #ev_footer_contact_block { display: flex; overflow: hidden; margin: 0 !important; border-radius: 10px; background: var(--ad-ink); box-shadow: var(--ad-shadow); }
.page-contact-us .ad-page-content #ev_footer_contact_block > .wpb_column:first-child { padding: 42px; color: #fff; }
.page-contact-us .ad-page-content #ev_footer_contact_block > .wpb_column:last-child { padding: 0; background: #e8edf0; }
.page-contact-us .ad-page-content #ev_footer_contact_block iframe { display: block; width: 100%; min-height: 420px; border: 0; }
.page-contact-us .ad-page-content #ev_footer_contact_block h2, .page-contact-us .ad-page-content #ev_footer_contact_block h3, .page-contact-us .ad-page-content #ev_footer_contact_block label { color: #fff; }
.page-contact-us .ad-page-content .wpcf7 input:not([type="submit"]), .page-contact-us .ad-page-content .wpcf7 textarea { padding: 12px 14px; color: #fff; border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.07); }
.page-contact-us .ad-page-content .wpcf7 input[type="submit"] { min-width: 150px; }
.page-contact-us .ad-page-content .icon-box { border-color: var(--ad-line); }
.ad-contact-section { padding: 70px 0; background: #fff; }
.ad-contact-grid { display: grid; grid-template-columns: 1fr .92fr; overflow: hidden; border-radius: 12px; background: var(--ad-ink); box-shadow: var(--ad-shadow); }
.ad-contact-form { padding: 48px; color: #fff; }
.ad-contact-form h2 { margin: 0 0 25px; color: #fff; text-transform: uppercase; }
.ad-contact-form label { display: block; color: #fff; }
.ad-contact-form input:not([type="submit"]), .ad-contact-form textarea { width: 100%; margin-top: 6px; padding: 12px 14px; color: #fff; border: 1px solid rgba(255,255,255,.25); border-radius: 4px; background: rgba(255,255,255,.08); }
.ad-contact-form textarea { min-height: 145px; }
.ad-contact-form input[type="submit"] { min-width: 160px; min-height: 48px; padding: 0 24px; color: #fff; border: 0; border-radius: 4px; background: var(--ad-blue); font-weight: 800; text-transform: uppercase; }
.ad-contact-map iframe { display: block; width: 100%; height: 100%; min-height: 610px; border: 0; }
.ad-contact-details { padding: 0 0 70px; }
.ad-contact-details__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ad-contact-details article { display: flex; gap: 18px; padding: 28px; border: 1px solid var(--ad-line); border-radius: 8px; background: var(--ad-soft); }
.ad-contact-details article > span { color: var(--ad-blue); font-size: 31px; }
.ad-contact-details h2 { margin: 0 0 8px; font-size: 18px !important; text-transform: uppercase; }
.ad-contact-details p { margin: 0; }
.ad-contact-details a { color: var(--ad-text); }
.ad-site-body:not(.home) .heading-font, .ad-site-body:not(.home) h1, .ad-site-body:not(.home) h2, .ad-site-body:not(.home) h3, .ad-site-body:not(.home) h4 { font-family: Montserrat, Arial, sans-serif; }
.ad-site-body:not(.home) .button, .ad-site-body:not(.home) .btn, .ad-site-body:not(.home) button[type="submit"] { border-radius: 4px; }
.ad-site-body:not(.home) .button:hover, .ad-site-body:not(.home) .btn:hover { background-color: var(--ad-blue-dark); }
.ad-site-body:not(.home) .stm-button, .ad-site-body:not(.home) input[type="submit"] { color: #fff; background-color: var(--ad-blue); }
.ad-site-body:not(.home) .stm_listing_icon_filter, .ad-site-body:not(.home) .stm-car-listing-sort-units { border-color: var(--ad-line); }
.ad-site-body:not(.home) a { transition: color var(--ad-transition), background var(--ad-transition), border-color var(--ad-transition); }
.ad-transit-page .ad-vehicle-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ad-stock-page .ad-vehicle-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.ad-sold-page .ad-vehicle-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.ad-stock-page .ad-vehicle-card__title { min-height: 42px; font-size: 15px; }
.ad-sold-page .ad-vehicle-card__title { min-height: 42px; font-size: 15px; }
.ad-stock-page .ad-vehicle-card__meta { font-size: 12px; }
.ad-sold-page .ad-vehicle-card__meta { font-size: 12px; }
.ad-stock-page .ad-vehicle-card__price { font-size: 21px; }
.ad-sold-page .ad-vehicle-card__price { font-size: 21px; }
.ad-stock-count { color: var(--ad-blue-dark); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.ad-empty-state--stock { padding: 80px 30px; }
.ad-empty-state--stock h2 { margin: 0 0 12px; color: var(--ad-ink); text-transform: uppercase; }
.ad-empty-state--stock > p:not(.ad-kicker) { max-width: 650px; margin: 0 auto; }
.ad-empty-state__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 25px; }
.ad-vehicle-browser { display: grid; grid-template-columns: 290px minmax(0, 1fr); align-items: start; gap: 28px; }
.ad-vehicle-filters { position: sticky; top: 90px; border: 1px solid var(--ad-line); background: #fff; box-shadow: 0 9px 28px rgba(3,11,18,.08); }
.admin-bar .ad-vehicle-filters { top: 122px; }
.ad-vehicle-filters__heading { display: flex; min-height: 98px; align-items: center; gap: 14px; padding: 22px; color: #fff; background: #202428; }
.ad-vehicle-filters__heading span { color: #fff; font-size: 34px; }
.ad-vehicle-filters__heading h2 { margin: 0; color: #fff; font-size: 19px !important; text-transform: none; }
.ad-vehicle-filters [data-ad-filter-form] { display: grid; gap: 15px; padding: 20px; }
.ad-filter-field { position: relative; display: grid; gap: 6px; margin: 0; }
.ad-filter-field > span, .ad-filter-price legend { color: var(--ad-ink); font-size: 12px; font-weight: 800; }
.ad-filter-field select, .ad-filter-field input, .ad-filter-price input { width: 100%; min-height: 47px; padding: 0 13px; color: #4a545d; border: 1px solid #e1e6ea; border-radius: 0; background: #f0f3f5; font-size: 13px !important; }
.ad-filter-field select { appearance: auto; }
.ad-filter-price { min-width: 0; margin: 2px 0 0; padding: 0; border: 0; }
.ad-filter-price legend { margin-bottom: 8px; }
.ad-filter-price > div { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ad-filter-price label { display: grid; min-width: 0; gap: 5px; }
.ad-filter-price label span { color: var(--ad-muted); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.ad-filter-field--features { width: 100%; min-width: 0; grid-column: 1 / -1; }
.ad-filter-field--features input { display: block; width: 100% !important; min-width: 0; max-width: 100%; margin: 0; box-sizing: border-box; appearance: none; -webkit-appearance: none; background: #fff; }
.ad-filter-field--features input::-webkit-search-decoration, .ad-filter-field--features input::-webkit-search-cancel-button { appearance: none; -webkit-appearance: none; }
.ad-filter-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.ad-filter-apply, .ad-filter-reset { min-height: 47px; margin-top: 3px; padding: 0 10px; color: #fff; border: 0; border-radius: 4px; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.ad-filter-apply { background: var(--ad-blue); }
.ad-filter-reset { background: var(--ad-ink); }
.ad-filter-apply:hover { background: var(--ad-blue-dark); }
.ad-filter-reset:hover { background: var(--ad-blue-dark); }
.ad-vehicle-sortbar { display: flex; min-height: 54px; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 18px; padding: 10px 14px; border: 1px solid var(--ad-line); background: #fff; }
.ad-vehicle-sortbar > strong { color: var(--ad-blue-dark); font-size: 11px; text-transform: uppercase; }
.ad-vehicle-sortbar label { display: flex; align-items: center; gap: 10px; margin: 0; }
.ad-sort-form { margin: 0; }
.ad-vehicle-sortbar label span { color: var(--ad-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.ad-vehicle-sortbar select { min-height: 36px; padding: 0 34px 0 12px; border: 0; background-color: #edf1f4; font-size: 12px !important; }
.ad-vehicle-browser__results .ad-vehicle-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ad-vehicle-browser, .ad-vehicle-browser__results, .ad-vehicle-browser__results .ad-vehicle-grid { overflow-anchor: none; }
.ad-vehicle-card[hidden] { display: none !important; }
.ad-vehicle-card.ad-filtered-out { display: none !important; }
.ad-browser-empty { padding: 55px 25px; color: var(--ad-muted); border: 1px solid var(--ad-line); background: var(--ad-soft); font-size: 15px; text-align: center; }
.ad-page-cta { padding: 35px 0; color: #fff; background: var(--ad-ink); }
.ad-page-cta .ad-container { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.ad-page-cta h2 { margin: 0; color: #fff; text-transform: uppercase; }
.ad-empty-state { padding: 60px 30px; text-align: center; border: 1px solid var(--ad-line); background: var(--ad-soft); }

body.single-listings.ad-site-body #main, body.post-type-archive-listings.ad-site-body #main { padding-top: 64px !important; }
.admin-bar.single-listings.ad-site-body #main, .admin-bar.post-type-archive-listings.ad-site-body #main { padding-top: 96px !important; }
body.single-listings.ad-site-body .stm-single-car-page, body.post-type-archive-listings.ad-site-body .stm-listing-directory-list-loop { font-family: Montserrat, Arial, sans-serif; }

@media (max-width: 1180px) {
    .ad-header__inner { grid-template-columns: 205px 1fr 158px; gap: 18px; }
    .ad-header__phone { min-width: 158px; font-size: 9px; }
    .ad-nav { gap: 11px; }
    .ad-vehicle-browser { grid-template-columns: 250px minmax(0, 1fr); gap: 20px; }
    .ad-vehicle-browser__results .ad-vehicle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
    .ad-header__phone { display: none !important; }
}
@media (max-width: 940px) {
    .ad-transit-page .ad-vehicle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ad-stock-page .ad-vehicle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ad-sold-page .ad-vehicle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ad-vehicle-browser { grid-template-columns: 1fr; }
    .ad-vehicle-filters { position: static; }
    .ad-vehicle-filters [data-ad-filter-form] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ad-vehicle-filters__heading, .ad-filter-actions { grid-column: 1 / -1; }
}
@media (max-width: 820px) {
    .ad-page { padding-top: 64px; }
    .ad-page-hero { padding: 58px 0; }
    .ad-page-content, .ad-page-section { padding-top: 42px; padding-bottom: 50px; }
    .page-contact-us .ad-page-content #ev_footer_contact_block { display: block; }
    .page-contact-us .ad-page-content #ev_footer_contact_block > .wpb_column:first-child { padding: 28px 20px; }
    .ad-contact-grid { grid-template-columns: 1fr; }
    .ad-contact-form { padding: 32px 24px; }
    .ad-contact-map iframe { min-height: 360px; }
    .ad-contact-details__grid { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
    .ad-transit-page .ad-vehicle-grid { display: grid; grid-template-columns: 1fr; overflow: visible; }
    .ad-transit-page .ad-vehicle-card { min-width: 0; }
    .ad-stock-page .ad-vehicle-grid { display: grid; grid-template-columns: 1fr; overflow: visible; }
    .ad-stock-page .ad-vehicle-card { min-width: 0; }
    .ad-sold-page .ad-vehicle-grid { display: grid; grid-template-columns: 1fr; overflow: visible; }
    .ad-sold-page .ad-vehicle-card { min-width: 0; }
    .ad-page-cta .ad-container { align-items: flex-start; flex-direction: column; }
    .ad-vehicle-filters [data-ad-filter-form] { grid-template-columns: 1fr; }
    .ad-filter-actions { grid-column: auto; }
    .ad-vehicle-sortbar { align-items: flex-start; flex-direction: column; }
    .ad-vehicle-sortbar label { width: 100%; justify-content: space-between; }
    .ad-sort-form { width: 100%; }
    .ad-vehicle-sortbar select { flex: 1; }
    .ad-vehicle-browser__results .ad-vehicle-grid { grid-template-columns: 1fr; }
}
