/*
 * Autos Esquivel · V2 refinement
 * A calm visual pass: more breathing room, clearer grouping and motion that
 * confirms an interaction without changing any public flow or destination.
 */

body.public-site-v2 {
    --ae-v2-ease: cubic-bezier(.2, .72, .18, 1);
    --ae-v2-lift-shadow: 0 24px 58px rgba(26, 20, 16, .14);
}

body.public-site-v2 .ae-v2-home {
    overflow: clip;
}

body.public-site-v2 .ae-v2-section {
    padding-block: clamp(78px, 8vw, 132px);
}

body.public-site-v2 .ae-v2-section + .ae-v2-section {
    border-top: 1px solid color-mix(in srgb, var(--ae-v2-taupe) 19%, transparent);
}

body.public-site-v2 .ae-v2-section-head {
    align-items: end;
    gap: 24px;
    margin-bottom: clamp(26px, 3.4vw, 42px);
    padding-bottom: 22px;
}

body.public-site-v2 .ae-v2-section-head__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

body.public-site-v2 .ae-v2-section-head__link:hover,
body.public-site-v2 .ae-v2-section-head__link:focus-visible {
    color: var(--ae-v2-taupe);
    letter-spacing: .065em;
}

body.public-site-v2 .ae-v2-categories,
body.public-site-v2 .ae-v2-grid,
body.public-site-v2 .ae-v2-home .vehicle-grid {
    gap: clamp(14px, 1.55vw, 24px);
}

body.public-site-v2 .ae-v2-category {
    border-radius: 18px !important;
    box-shadow: 0 12px 28px rgba(18, 14, 11, .10);
    isolation: isolate;
}

body.public-site-v2 .ae-v2-category::before {
    position: absolute;
    z-index: 1;
    top: 14px;
    right: 14px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ae-v2-taupe);
    box-shadow: 0 0 0 5px rgba(140, 122, 107, .18);
    content: "";
    opacity: 0;
    transform: scale(.5);
    transition: opacity .28s ease, transform .28s var(--ae-v2-ease);
}

body.public-site-v2 .ae-v2-category:hover,
body.public-site-v2 .ae-v2-category:focus-visible {
    box-shadow: var(--ae-v2-lift-shadow);
    transform: translate3d(0, -5px, 0);
}

body.public-site-v2 .ae-v2-category:hover::before,
body.public-site-v2 .ae-v2-category:focus-visible::before {
    opacity: 1;
    transform: scale(1);
}

body.public-site-v2 .ae-v2-energy-categories {
    gap: clamp(14px, 1.6vw, 22px);
    margin-top: clamp(20px, 2.4vw, 32px);
}

body.public-site-v2 .ae-v2-energy-category {
    border-radius: 18px !important;
}

body.public-site-v2 .ae-v2-energy-category::before {
    position: absolute;
    inset: auto -12% -86% auto;
    width: 220px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgba(255, 255, 255, .10);
    content: "";
    transform: scale(.72);
    transition: transform .6s var(--ae-v2-ease);
}

body.public-site-v2 .ae-v2-energy-category:hover::before,
body.public-site-v2 .ae-v2-energy-category:focus-visible::before {
    transform: scale(1.18);
}

body.public-site-v2 .ae-v2-stats {
    overflow: hidden;
    border-radius: 18px !important;
}

body.public-site-v2 .ae-v2-stat {
    padding: clamp(24px, 2.7vw, 36px);
    transition: background-color .28s ease, transform .28s var(--ae-v2-ease), box-shadow .28s ease;
}

body.public-site-v2 .ae-v2-stat:hover {
    position: relative;
    z-index: 1;
    background: color-mix(in srgb, var(--ae-v2-taupe) 10%, #fff);
    box-shadow: 0 18px 38px rgba(36, 28, 22, .13);
    transform: translate3d(0, -4px, 0);
}

html[data-theme="dark"] body.public-site-v2 .ae-v2-stat:hover {
    background: color-mix(in srgb, var(--ae-v2-taupe) 18%, #151515);
}

body.public-site-v2 .ae-v2-home .vehicle-grid > * {
    min-width: 0;
}

body.public-site-v2 :is(.vehicle-card, .ae-v2-vehicle-card) {
    border-radius: 18px !important;
    overflow: hidden;
    transition: transform .3s var(--ae-v2-ease), box-shadow .3s ease, border-color .3s ease;
}

body.public-site-v2 :is(.vehicle-card, .ae-v2-vehicle-card):hover {
    border-color: color-mix(in srgb, var(--ae-v2-taupe) 72%, transparent);
    box-shadow: var(--ae-v2-lift-shadow);
    transform: translate3d(0, -5px, 0);
}

body.public-site-v2 :is(.vehicle-card, .ae-v2-vehicle-card) img {
    transition: transform .58s var(--ae-v2-ease), filter .38s ease;
}

body.public-site-v2 :is(.vehicle-card, .ae-v2-vehicle-card):hover img {
    filter: saturate(1.06) contrast(1.02);
    transform: scale(1.025);
}

body.public-site-v2 .ae-v2-sell,
body.public-site-v2 .ae-v2-finance-strip {
    overflow: hidden;
    border-radius: 22px !important;
}

body.public-site-v2 .ae-v2-sell {
    box-shadow: var(--ae-v2-lift-shadow);
}

body.public-site-v2 .ae-v2-sell__media img {
    transition: transform .8s var(--ae-v2-ease), filter .42s ease;
}

body.public-site-v2 .ae-v2-sell:hover .ae-v2-sell__media img {
    filter: saturate(1.12) contrast(1.04) brightness(1);
    transform: scale(1.045);
}

body.public-site-v2 .ae-v2-finance-strip {
    border: 1px solid rgba(140, 122, 107, .54);
    box-shadow: 0 15px 36px rgba(51, 40, 32, .09);
}

body.public-site-v2 :is(.ae-v2-button, .ae-hero__cta, .ae-legacy-search__submit) {
    box-shadow: 0 10px 22px rgba(12, 10, 9, .16);
}

body.public-site-v2 :is(.ae-v2-button, .ae-hero__cta, .ae-legacy-search__submit):hover,
body.public-site-v2 :is(.ae-v2-button, .ae-hero__cta, .ae-legacy-search__submit):focus-visible {
    box-shadow: 0 16px 30px rgba(12, 10, 9, .24);
    transform: translate3d(0, -3px, 0);
}

body.public-site-v2 :is(input, select, textarea):focus-visible,
body.public-site-v2 button:focus-visible,
body.public-site-v2 a:focus-visible {
    outline: 2px solid var(--ae-v2-taupe);
    outline-offset: 3px;
}

@media (max-width: 760px) {
    body.public-site-v2 .ae-v2-section {
        padding-block: 64px;
    }

    body.public-site-v2 .ae-v2-section-head {
        align-items: start;
        margin-bottom: 24px;
    }

    body.public-site-v2 :is(.ae-v2-category, .ae-v2-energy-category, .ae-v2-stats, .ae-v2-sell, .ae-v2-finance-strip, .vehicle-card, .ae-v2-vehicle-card) {
        border-radius: 14px !important;
    }

    body.public-site-v2 .ae-v2-stat {
        min-height: 142px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.public-site-v2 *,
    body.public-site-v2 *::before,
    body.public-site-v2 *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }
}

/* The rest of the public funnel uses the same spacing and calm interaction
   language as the showroom without changing a form, filter, or endpoint. */
body.public-site-v2 :is(
    .ae-inventory-hero__stage,
    .ae-financing-hero__deck-stage,
    .ae-financing-simulator,
    .ae-finance-ui__workspace,
    .ae-sell-page__configurator,
    .ae-contact__form-panel,
    .ae-contact-map__shell,
    .favorites-premium__selection
) {
    border-radius: 20px !important;
    box-shadow: 0 18px 46px rgba(26, 20, 16, .10);
}

body.public-site-v2 :is(
    .ae-inventory-hero__stage,
    .ae-financing-hero__deck-stage,
    .ae-sell-page__configurator,
    .ae-contact__form-panel,
    .ae-contact-map__shell
) {
    overflow: hidden;
}

body.public-site-v2 :is(
    .ae-inventory-results,
    .ae-financing-overview,
    .ae-financing-products,
    .ae-financing-faq,
    .ae-sell-page__rail,
    .ae-sell-page__faq,
    .ae-contact__workspace,
    .favorites-premium__selection
) {
    padding-block: clamp(64px, 7vw, 116px);
}

body.public-site-v2 :is(
    .ae-inventory-card-wrap,
    .ae-financing-product-card,
    .ae-sell__option,
    .ae-contact__branch-card,
    .ae-contact__info-grid article,
    .favorites-premium__counter
) {
    border-radius: 16px !important;
    transition: transform .28s var(--ae-v2-ease), box-shadow .28s ease, border-color .28s ease, background-color .28s ease;
}

body.public-site-v2 :is(
    .ae-inventory-card-wrap,
    .ae-financing-product-card,
    .ae-sell__option,
    .ae-contact__branch-card,
    .ae-contact__info-grid article
):hover {
    box-shadow: 0 19px 38px rgba(26, 20, 16, .14);
    transform: translate3d(0, -4px, 0);
}

body.public-site-v2 :is(
    .ae-inventory-button,
    .ae-financing-button,
    .ae-sell-page__primary,
    .ae-sell-page__secondary,
    .ae-contact__submit,
    .favorites-premium__button,
    .favorites-premium__empty-action,
    .ae-finance-ui button
) {
    transition: transform .22s var(--ae-v2-ease), box-shadow .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease;
}

body.public-site-v2 :is(
    .ae-inventory-button,
    .ae-financing-button,
    .ae-sell-page__primary,
    .ae-sell-page__secondary,
    .ae-contact__submit,
    .favorites-premium__button,
    .favorites-premium__empty-action,
    .ae-finance-ui button
):hover,
body.public-site-v2 :is(
    .ae-inventory-button,
    .ae-financing-button,
    .ae-sell-page__primary,
    .ae-sell-page__secondary,
    .ae-contact__submit,
    .favorites-premium__button,
    .favorites-premium__empty-action,
    .ae-finance-ui button
):focus-visible {
    box-shadow: 0 14px 28px rgba(26, 20, 16, .18);
    transform: translate3d(0, -2px, 0);
}

body.public-site-v2 :is(.ae-contact__field, .ae-finance-ui__field):focus-within {
    border-color: color-mix(in srgb, var(--ae-v2-taupe) 74%, transparent);
    box-shadow: 0 0 0 4px rgba(140, 122, 107, .13);
}

body.public-site-v2 .favorites-premium__hero,
body.public-site-v2 .ae-financing-hero,
body.public-site-v2 .ae-inventory-hero,
body.public-site-v2 .ae-sell-page__hero {
    position: relative;
    isolation: isolate;
}

body.public-site-v2 .favorites-premium__hero::after,
body.public-site-v2 .ae-financing-hero::after,
body.public-site-v2 .ae-inventory-hero::after,
body.public-site-v2 .ae-sell-page__hero::after {
    position: absolute;
    z-index: -1;
    inset: auto 8% 0 auto;
    width: min(24vw, 320px);
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(140, 122, 107, .20), transparent 68%);
    content: "";
    pointer-events: none;
}

@media (max-width: 760px) {
    body.public-site-v2 :is(
        .ae-inventory-hero__stage,
        .ae-financing-hero__deck-stage,
        .ae-financing-simulator,
        .ae-finance-ui__workspace,
        .ae-sell-page__configurator,
        .ae-contact__form-panel,
        .ae-contact-map__shell,
        .favorites-premium__selection
    ) {
        border-radius: 14px !important;
    }

    body.public-site-v2 :is(
        .ae-inventory-results,
        .ae-financing-overview,
        .ae-financing-products,
        .ae-financing-faq,
        .ae-sell-page__rail,
        .ae-sell-page__faq,
        .ae-contact__workspace,
        .favorites-premium__selection
    ) {
        padding-block: 54px;
    }
}
