﻿    body.homepage {
        /* Stretch gradient to full page height so open accordion never hits a flat fill */
        background-color: #002d2f;
        background-size: 240% 100%;
        background-position: center top;
    }

    .home-hero {
        padding-top: 1.75rem;
        padding-bottom: 0;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.aps-mobile-redesign .home-hero-heading-mobile {
        display: block;
        text-align: center;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .home-hero-heading-mobile .line {
        display: block;
        font-family: 'Wix Madefor Display', sans-serif;
        font-weight: 400;
        font-size: clamp(1.75rem, 7.2vw, 2.15rem);
        line-height: 1.2;
        letter-spacing: 0.01em;
        color: #fff;
    }

    .home-hero-heading-mobile .solved {
        display: block;
        margin-top: 0.35rem;
        font-family: 'Covered By Your Grace', cursive;
        font-size: clamp(3.25rem, 14vw, 4.25rem);
        line-height: 1;
        color: #e6ff14;
        font-weight: 400;
    }

    .home-hero-trust {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        margin-top: 1.75rem;
        padding: 0 0.65rem;
        width: 100%;
        box-sizing: border-box;
    }

    .home-hero-trust-item {
        flex: 1 1 0;
        min-width: 0;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        text-align: left;
        gap: 0.35rem;
        color: #ffffff;
    }

    .home-hero-trust-item img {
        width: 1.75rem;
        height: 1.75rem;
        object-fit: contain;
        flex-shrink: 0;
        filter: none;
    }

    .home-hero-trust-item span {
        font-family: 'Wix Madefor Display', sans-serif;
        font-size: 0.58rem;
        font-weight: 700;
        letter-spacing: 0.03em;
        line-height: 1.2;
        text-transform: uppercase;
        color: #ffffff;
    }

    .home-hero-heading-desktop,
    #home-features-bar {
        display: none !important;
    }

    /* Search cards â€” full-bleed white stack, collapsed by default (mobile only) */
    .home-search-section {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.75rem;
        background: #ffffff;
        width: 100%;
        max-width: none;
        margin: 1.25rem 0 0 !important;
        padding: 1.15rem 1.1rem 0.65rem;
        box-sizing: border-box;
        border-radius: 0;
    }

    .home-search-section .home-search-card {
        min-height: 0 !important;
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
        border-radius: 12px;
        border: 1.5px solid #054f59;
        overflow: hidden;
        background: #054f59;
        box-shadow: none;
        display: flex;
        flex-direction: column;
    }

    /* Default: teal border on all cards; yellow only when active (is-search-active) */
    .home-search-section .home-search-card.is-search-active {
        border-color: #E6FF14 !important;
        border-width: 2px !important;
    }

    #home-search-all-wrap.is-search-active .home-search-card--all,
    #home-search-all-wrap.is-dropdown-open .home-search-card--all {
        border-color: #E6FF14 !important;
        border-width: 2px !important;
    }

    /* Neutralize Tailwind hover:border on mobile â€” yellow only via is-search-active */
    .home-search-section .home-search-card:hover:not(.is-search-active) {
        border-color: #054f59 !important;
        border-width: 1.5px !important;
    }

    .home-search-section .home-search-card-header {
        position: relative;
        z-index: 3;
        flex-shrink: 0;
    }

    .home-search-section .home-search-card-header .group {
        position: relative;
        z-index: 1;
    }

    /* “What is this?” — open upward above the trigger */
    .home-search-section .home-search-card-header .group > .absolute {
        top: auto;
        bottom: calc(100% + 0.4rem);
        left: auto;
        right: 0;
        transform: none;
        margin-bottom: 0;
        z-index: 120;
    }

    .home-search-section .home-search-card-header .group > .absolute > span.absolute {
        top: 100%;
        bottom: auto;
        left: auto;
        right: 0.85rem;
        transform: none;
        border-top-color: #1f2937;
        border-bottom-color: transparent;
    }

    .home-search-section .home-search-card-header .group:hover > .absolute,
    .home-search-section .home-search-card-header .group.is-tooltip-open > .absolute {
        opacity: 1;
        visibility: visible;
    }

    .home-search-section .home-search-card-header .group:hover,
    .home-search-section .home-search-card-header .group.is-tooltip-open {
        z-index: 110;
    }

    .home-search-section .home-search-card:has(.home-search-card-header .group.is-tooltip-open),
    .home-search-section .home-search-card:has(.home-search-card-header .group:hover) {
        overflow: visible;
        position: relative;
        z-index: 40;
    }

    .home-search-section:has(.home-search-card-header .group.is-tooltip-open),
    .home-search-section:has(.home-search-card-header .group:hover) {
        overflow: visible;
    }

    .home-search-section .home-search-card > .bg-\[\#054f59\],
    .home-search-section .home-search-card-header {
        padding: 0.8rem 1rem !important;
        border-radius: 0 !important;
        background-color: #054f59 !important;
    }

    /* White bodies fill the card shell so rounded borders stay solid */
    .home-search-section #vin-search-block,
    .home-search-section #vehicleSearchForm,
    .home-search-section .home-search-card--oem > .bg-white.pt-8,
    .home-search-card--all .home-search-all-body {
        flex: 1 1 auto;
        width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    .home-search-section .home-search-card h3 {
        font-size: 1.05rem !important;
        font-weight: 700;
        color: #fff !important;
        line-height: 1.2;
    }

    .home-search-section .home-search-card .text-\[12px\] {
        font-size: 11px !important;
        letter-spacing: 0.06em;
        color: #00FFB5 !important;
        display: inline-flex;
        align-items: center;
        gap: 0.3rem;
        white-space: nowrap;
    }

    .home-search-section .home-search-card .text-\[12px\] .fa-question-circle {
        font-size: 1.2rem;
        line-height: 1;
    }

    /* Compact bodies â€” underline fields like mockup */
    .home-search-section #vin-search-block,
    .home-search-section #vin-search-block > .bg-white.pt-6,
    .home-search-section #vehicleSearchForm,
    .home-search-section .home-search-card--oem .bg-white.pt-8,
    .home-search-section .home-search-card--oem > .bg-white.rounded-b-2xl,
    .home-search-section .home-search-all-body {
        background: #fff !important;
        border-radius: 0 !important;
    }

    .home-search-section #vin-search-block > .bg-white.pt-6,
    .home-search-section #vehicleSearchForm,
    .home-search-section .home-search-card--oem .bg-white.pt-8 {
        padding: 0.55rem 1rem 0.85rem !important;
    }

    .home-search-section #vin-input-row {
        margin-bottom: 0 !important;
        gap: 0 !important;
    }

    .home-search-section #vin-decode-btn {
        display: none !important;
    }

    .home-search-section #vin-input-row input {
        border: none !important;
        border-bottom: 1px solid #e5e7eb !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0.65rem 0.1rem !important;
        font-size: 0.95rem !important;
        color: #054f59;
    }

    .home-search-section #vin-input-row input::placeholder {
        color: #054f59;
        opacity: 0.85;
    }

    .home-search-section #oem_number {
        border: none !important;
        border-bottom: 1px solid #e5e7eb !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0.65rem 0.1rem !important;
        font-size: 0.95rem !important;
    }

    .home-search-section #oem_number::placeholder {
        color: #9ca3af;
    }

    .home-search-section #vehicleSearchForm button[id$="-trigger"],
    .home-search-section #vin-search-block button[id$="-trigger"] {
        border: none !important;
        border-bottom: 1px solid #e5e7eb !important;
        border-radius: 0 !important;
        background: transparent !important;
        padding-left: 0.1rem !important;
        padding-right: 0.1rem !important;
        min-height: 0;
    }

    .home-search-section #vehicleSearchForm .space-y-4,
    .home-search-section #vin-search-block .space-y-4 {
        gap: 0 !important;
    }

    /* VIN: hide YMM + Search until successful decode (or manual fallback) */
    .home-search-section .home-search-card--vin:not(.is-ymm-open) #vin-search-block .space-y-4,
    .home-search-section .home-search-card--vin:not(.is-ymm-open) #vin-search-block > .bg-white.rounded-b-2xl,
    .home-search-section .home-search-card--vin:not(.is-ymm-open) #vin-display-row {
        display: none !important;
    }

    .home-search-section .home-search-card--vin.is-ymm-open #vin-search-block .space-y-4 {
        display: block !important;
        margin-top: 0.35rem;
    }

    .home-search-section .home-search-card--vin.is-ymm-open #vin-search-block > .bg-white.rounded-b-2xl {
        display: block !important;
        padding: 0.75rem 1rem 1rem !important;
        margin-top: 0 !important;
        background: #fff !important;
        border-radius: 0 !important;
    }

    /* Search buttons — same inset rounded mint style across VIN / Vehicle / OEM */
    .home-search-section .home-search-card--vin.is-ymm-open #vin-search-submit-btn,
    .home-search-section .home-search-card--vehicle.is-model-set #vehicleSearchBtn,
    .home-search-section .home-search-card--oem.is-oem-ready #oemSearchBtn {
        appearance: none !important;
        -webkit-appearance: none !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        border-radius: 0.75rem !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .home-search-section .home-search-card--vin.is-ymm-open #vin-search-submit-btn:focus,
    .home-search-section .home-search-card--vehicle.is-model-set #vehicleSearchBtn:focus,
    .home-search-section .home-search-card--oem.is-oem-ready #oemSearchBtn:focus {
        outline: none !important;
        box-shadow: none !important;
        --tw-ring-shadow: 0 0 #0000 !important;
        --tw-ring-offset-shadow: 0 0 #0000 !important;
    }

    /* Vehicle: progressive reveal Year â†’ Make â†’ Model â†’ Part(s) â†’ Search */
    .home-search-section .home-search-card--vehicle .home-vehicle-field--make,
    .home-search-section .home-search-card--vehicle .home-vehicle-field--model,
    .home-search-section .home-search-card--vehicle .home-vehicle-field--part,
    .home-search-section .home-search-card--vehicle .home-vehicle-search-actions {
        display: none !important;
    }

    .home-search-section .home-search-card--vehicle.is-year-set .home-vehicle-field--make {
        display: block !important;
    }

    .home-search-section .home-search-card--vehicle.is-make-set .home-vehicle-field--model {
        display: block !important;
    }

    .home-search-section .home-search-card--vehicle.is-model-set .home-vehicle-field--part,
    .home-search-section .home-search-card--vehicle.is-model-set .home-vehicle-search-actions {
        display: block !important;
    }

    .home-search-section .home-search-card--vehicle .home-vehicle-search-actions {
        padding: 0.75rem 1rem 1rem !important;
        margin-top: 0 !important;
        background: #fff !important;
        border-radius: 0 !important;
    }

    /* OEM: show Search only after a part number is entered */
    .home-search-section .home-search-card--oem > .bg-white.rounded-b-2xl {
        display: none !important;
    }

    .home-search-section .home-search-card--oem.is-oem-ready > .bg-white.rounded-b-2xl {
        display: block !important;
        padding: 0.75rem 1rem 1rem !important;
        margin-top: 0 !important;
        background: #fff !important;
        border-radius: 0 !important;
    }

    /* Match VIN/Vehicle: no hard divider line above the Search button */
    .home-search-section .home-search-card--oem.is-oem-ready #oem_number {
        border-bottom-color: transparent !important;
    }

    /* SEARCH ALL â€” dropdown sits outside clipped card shell */
    .home-search-section .home-search-card--all {
        overflow: hidden !important;
        position: relative;
        z-index: 1;
    }

    #home-search-all-wrap .home-search-card--all {
        overflow: hidden;
    }

    .home-search-card--all .home-search-all-body {
        background: #fff !important;
        padding: 0.55rem 1rem 0.9rem;
        position: relative;
        z-index: 1;
        border-radius: 0 !important;
    }
    .home-search-card--all .home-search-all-input {
        width: 100%;
        border: none;
        border-bottom: 1px solid #e5e7eb;
        border-radius: 0;
        outline: none;
        font-size: 0.95rem;
        color: #374151;
        background: transparent;
        padding: 0.65rem 0.1rem;
    }
    .home-search-card--all .home-search-all-input::placeholder {
        color: #9ca3af;
    }

    #home-search-all-wrap {
        position: relative;
        z-index: 5;
    }

    #home-search-all-wrap.is-dropdown-open {
        z-index: 45;
    }

    .home-search-all-dropdown {
        margin-top: 0.35rem;
        background: #ffffff;
        border: 2px solid #E6FF14;
        border-radius: 0.75rem;
        max-height: min(18rem, 52vh);
        overflow-x: hidden;
        overflow-y: auto;
        z-index: 200;
        -webkit-overflow-scrolling: touch;
        box-shadow:
            0 0 0 1px rgba(230, 255, 20, 0.15),
            0 8px 20px -6px rgba(230, 255, 20, 0.35),
            0 16px 40px -8px rgba(0, 0, 0, 0.22);
    }

    .home-search-all-dropdown__item {
        display: block;
        width: 100%;
        text-align: left;
        padding: 0.8rem 1rem;
        font-size: 0.875rem;
        line-height: 1.35;
        color: #1f2937;
        background: #ffffff;
        border: none;
        border-bottom: 1px solid #e5e7eb;
        cursor: pointer;
        transition: background-color 0.15s ease;
    }

    .home-search-all-dropdown__item:last-child {
        border-bottom: none;
    }

    .home-search-all-dropdown__item:active,
    .home-search-all-dropdown__item:hover {
        background: rgba(0, 255, 181, 0.18);
    }

    #home-search-all-loading,
    #home-search-all-empty {
        padding: 0.85rem 1rem;
        color: #4b5563;
        font-size: 0.875rem;
    }

    /* Hide recent searches on mobile homepage */
    #recent-searches-section {
        display: none !important;
    }

    /* Hide other ways to search on mobile homepage */
    #featured-makes {
        display: none !important;
    }

    /* Mobile below-fold story + accordion â€” inherits homepage body gradient */
    .home-mobile-story {
        padding: 1.5rem 1.15rem 2rem;
        color: #fff;
        background: none;
    }

    .home-mobile-story__ctas {
        display: flex;
        gap: 0.65rem;
        justify-content: center;
        margin-bottom: 1.75rem;
    }

    .home-mobile-story__ctas a {
        flex: 1;
        max-width: 10.5rem;
        text-align: center;
        padding: 0.55rem 0.75rem;
        border-radius: 9999px;
        background: #7ef0e8;
        color: #042426;
        font-family: 'Wix Madefor Display', sans-serif;
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        text-decoration: none;
    }

    .home-mobile-story__deals {
        margin-bottom: 1.75rem;
    }

    .home-mobile-story__deals h2 {
        text-align: center;
        font-family: 'Wix Madefor Display', sans-serif;
        font-size: clamp(1.65rem, 7vw, 2rem);
        font-weight: 600;
        line-height: 1.2;
        margin: 0 0 0.85rem;
    }

    .home-mobile-story__deals h2 span {
        color: #00ffb7;
    }

    .home-mobile-story__deals-list {
        list-style: none;
        margin: 0 0 1.1rem;
        padding: 0;
        font-family: 'Roboto', sans-serif;
        font-size: 0.95rem;
        font-weight: 400;
        line-height: 1.55;
        color: rgba(255, 255, 255, 0.95);
        text-align: center;
    }

    .home-mobile-story__deals-form {
        display: flex;
        align-items: center;
        gap: 0.55rem;
        max-width: 100%;
    }

    .home-mobile-story__deals-form input {
        flex: 1;
        min-width: 0;
        padding: 0.7rem 1rem;
        border: none;
        border-radius: 9999px;
        background: #fff;
        color: #374151;
        font-family: 'Roboto', sans-serif;
        /* 16px minimum — iOS Safari zooms focused inputs under 16px */
        font-size: 16px;
        text-align: left;
        outline: none;
    }

    .home-mobile-story__deals-form input::placeholder {
        color: #9ca3af;
    }

    .home-mobile-story__deals-form button {
        flex-shrink: 0;
        padding: 0.7rem 1rem;
        border: none;
        border-radius: 9999px;
        background: #00ffb5;
        color: #002d2f;
        font-family: 'Roboto', sans-serif;
        font-size: 0.68rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        cursor: pointer;
    }

    .home-mobile-accordion {
        border-top: 1px solid rgba(255, 255, 255, 0.55);
    }

    .home-mobile-accordion__item {
        border-bottom: 1px solid rgba(255, 255, 255, 0.55);
    }

    .home-mobile-accordion__trigger {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        padding: 1rem 0.15rem;
        background: transparent;
        border: none;
        color: #fff;
        text-align: left;
        cursor: pointer;
        font-family: 'Wix Madefor Display', sans-serif;
        font-size: 1.05rem;
        font-weight: 500;
        line-height: 1.3;
    }

    .home-mobile-accordion__trigger > span:first-child {
        flex: 1;
        min-width: 0;
    }

    .home-mobile-accordion__trigger span.accent {
        color: #00ffb7;
    }

    .home-mobile-accordion__chevron {
        flex-shrink: 0;
        width: 1.1rem;
        height: 1.1rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: transform 0.2s ease;
        color: #7ef0e8;
        font-size: 0.85rem;
    }

    .home-mobile-accordion__item.is-open .home-mobile-accordion__chevron {
        transform: rotate(90deg);
    }

    .home-mobile-accordion__panel {
        display: none;
        padding: 0 0.15rem 1.15rem;
        font-family: 'Roboto', sans-serif;
    }

    .home-mobile-accordion__item.is-open .home-mobile-accordion__panel {
        display: block;
    }

    .home-mobile-accordion__panel p {
        font-family: 'Roboto', sans-serif;
        font-size: 0.92rem;
        line-height: 1.55;
        color: rgba(255, 255, 255, 0.92);
        margin: 0 0 0.75rem;
    }

    .home-mobile-accordion__panel .home-mobile-accordion__cta {
        display: inline-block;
        margin-top: 0.35rem;
        padding: 0.45rem 1.35rem;
        border-radius: 9999px;
        background: #dcfb11;
        color: #000;
        font-family: 'Roboto', sans-serif;
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        text-decoration: none;
    }

    .home-mobile-accordion__icons {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1rem 0.75rem;
        margin: 0.5rem 0 1rem;
        text-align: center;
    }

    .home-mobile-accordion__icons img {
        width: 4.25rem;
        height: 4.25rem;
        margin: 0 auto 0.4rem;
        display: block;
    }

    .home-mobile-accordion__icons p {
        font-family: 'Roboto', sans-serif;
        font-size: 0.72rem;
        line-height: 1.35;
        margin: 0;
        opacity: 0.9;
    }

    .home-mobile-accordion__video {
        position: relative;
        width: 100%;
        aspect-ratio: 16 / 9;
        margin: 0.25rem 0 0.85rem;
        border: 0;
        padding: 0;
        background: #111;
        overflow: hidden;
        cursor: pointer;
    }

    .home-mobile-accordion__video img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .home-mobile-accordion__video-play {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(0, 0, 0, 0.25);
        color: #fff;
        font-size: 1.75rem;
        pointer-events: none;
    }

    /* Mobile testimonial â€” reuse /mechanics .gal-testimonial with compact quote + footer */
    .home-mobile-testimonial.gal-testimonial {
        --gal-ink: #01323c;
        background: #fff;
        padding: 2rem 1rem 2rem;
        margin-bottom: 0;
        text-align: center;
        color: var(--gal-ink);
    }

    .home-mobile-testimonial .gal-stars {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 1.35rem;
        line-height: 0;
    }

    .home-mobile-testimonial .gal-star-cell {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        background: #004040;
        color: #e6ff14;
        font-size: 1.15rem;
        flex-shrink: 0;
    }

    .home-mobile-testimonial .gal-star-link {
        position: relative;
        width: 14px;
        height: 12px;
        background: #004040;
        flex-shrink: 0;
    }

    .home-mobile-testimonial .gal-star-link::before,
    .home-mobile-testimonial .gal-star-link::after {
        content: '';
        position: absolute;
        left: 50%;
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background: #fff;
        transform: translateX(-50%);
    }

    .home-mobile-testimonial .gal-star-link::before { top: -5px; }
    .home-mobile-testimonial .gal-star-link::after { bottom: -5px; }

    .home-mobile-testimonial .gal-quote {
        font-family: 'Wix Madefor Display', sans-serif;
        font-size: clamp(1.2rem, 5.2vw, 1.4rem);
        line-height: 1.55;
        color: #004b5e;
        width: 100%;
        max-width: 20.5rem;
        margin: 0 auto 1.1rem;
        font-weight: 700;
        text-align: center;
        letter-spacing: 0.01em;
    }

    .home-mobile-testimonial .gal-quote mark {
        background: #e6ff14;
        color: #004b5e;
        padding: 0.08em 0.28em;
        font-weight: inherit;
        border-radius: 0.45em;
        box-decoration-break: clone;
        -webkit-box-decoration-break: clone;
    }

    .home-mobile-testimonial .gal-quote-author {
        font-family: 'Covered By Your Grace', cursive;
        font-size: 1.7rem;
        font-weight: 400;
        color: #01323c;
        margin: 0 0 1.6rem;
        line-height: 1.15;
    }

    .home-mobile-testimonial .gal-quote-author-business {
        font-family: 'Roboto', sans-serif;
        font-size: 1.05rem;
        color: #01323c;
        font-weight: 400;
        margin-left: 0.2rem;
        letter-spacing: 0.01em;
    }

    .home-mobile-testimonial__features {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 0.5rem;
        align-items: center;
        width: 100%;
        padding: 1rem 1.35rem 0;
        box-sizing: border-box;
    }

    .home-mobile-testimonial__feature {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 0.35rem;
        min-width: 0;
        max-width: 100%;
        color: #054f59;
        text-decoration: none;
    }

    .home-mobile-testimonial__feature i {
        flex: 0 0 1.9rem;
        width: 1.9rem;
        height: 1.9rem;
        font-size: 1.7rem;
        line-height: 1.9rem;
        color: #00FFC8;
        text-align: center;
        overflow: hidden;
    }

    .home-mobile-testimonial__feature img {
        flex: 0 0 1.9rem;
        width: 1.9rem;
        height: 1.9rem;
        object-fit: contain;
        display: block;
    }

    .home-mobile-testimonial__feature-text {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0.05rem;
        min-width: 0;
        font-family: 'Wix Madefor Display', sans-serif;
        font-size: clamp(0.5rem, 2.4vw, 0.62rem);
        font-weight: 800;
        letter-spacing: 0.01em;
        line-height: 1.15;
        text-transform: uppercase;
        text-align: center;
        color: #054f59;
    }

    .home-mobile-testimonial__feature-text > span {
        display: block;
        white-space: nowrap;
    }
