/* Mobile-only editorial homepage. Desktop is byte-identical.
   Aspect ratios use the padding-bottom hack because the theme's
   `img { height: auto }` rule defeats the modern `aspect-ratio` property
   when the image is sized via its container. */
@media (max-width: 575.98px) {
    /* ── Page-level mobile container */
    .home-mobile {
        background: #FFFFFF;
        font-family: 'Montserrat', sans-serif;
        color: #1F1F1F;
        position: relative;
    }

    .home-mobile,
    .home-mobile *,
    .home-mobile *::before,
    .home-mobile *::after {
        box-sizing: border-box;
    }

    /* ── Hero */
    .home-mobile__hero {
        display: block;
        width: 100%;
    }

    .home-mobile__hero-image-wrap {
        position: relative;
        display: block;
        width: 100%;
        padding-bottom: 130%;            /* 400 / 520 portrait ≈ 1.3 */
        background-color: #EFEAE4;
        overflow: hidden;
    }

    .home-mobile__hero-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        max-width: none;                 /* override theme img { max-width: 100% } */
        object-fit: cover;
        object-position: center;
        display: block;
    }

    .home-mobile__hero-copy {
        text-align: center;
        padding: 36px 28px 0;
    }

    .home-mobile__kicker {
        font-family: 'Montserrat', sans-serif;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 4px;
        text-transform: uppercase;
        color: #D89B7A;
        margin-bottom: 18px;
    }

    .home-mobile__headline {
        font-family: 'Cormorant Garamond', serif;
        font-weight: 400;
        font-size: 44px;
        line-height: 1.02;
        letter-spacing: -0.5px;
        color: #1F1F1F;
        margin: 0;
    }

    .home-mobile__headline em {
        font-style: italic;
        color: #C2825F;
    }

    .home-mobile__body {
        font-family: 'Montserrat', sans-serif;
        font-size: 14px;
        font-weight: 400;
        line-height: 1.6;
        color: #6B6863;
        max-width: 280px;
        margin: 24px auto 0;
    }

    .home-mobile__cta-primary {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        margin-top: 26px;
        padding: 14px 28px;
        background: transparent;
        border: 1.5px solid #1F1F1F;
        color: #1F1F1F;
        font-family: 'Montserrat', sans-serif;
        font-size: 11px;
        font-weight: 600;
        letter-spacing: 2.4px;
        text-transform: uppercase;
        text-decoration: none;
        border-radius: 0;
        cursor: pointer;
    }

    .home-mobile__cta-primary:hover,
    .home-mobile__cta-primary:focus {
        color: #1F1F1F;
        text-decoration: none;
    }

    .home-mobile__cta-primary .arrow,
    .home-mobile__cta-visit .arrow,
    .home-mobile__designer-shop .arrow {
        font-size: 14px;
        line-height: 1;
    }

    .home-mobile__cta-sub {
        margin-top: 12px;
        font-family: 'Montserrat', sans-serif;
        font-size: 10px;
        font-weight: 500;
        letter-spacing: 1.8px;
        color: #6B6863;
        text-transform: uppercase;
    }

    /* ── Editorial section dividers (I., II., III.) */
    .home-mobile__divider {
        display: flex;
        align-items: center;
        gap: 14px;
        padding: 40px 28px 0;
    }

    .home-mobile__divider::before,
    .home-mobile__divider::after {
        content: "";
        flex: 1 1 auto;
        height: 1px;
        background: #D8D4CC;
        display: block;
    }

    .home-mobile__divider-mark {
        font-family: 'Cormorant Garamond', serif;
        font-size: 22px;
        font-style: italic;
        font-weight: 400;
        color: #C2825F;
        line-height: 1;
    }

    /* ── Section headers (eyebrow + heading) */
    .home-mobile__section-head {
        text-align: center;
        padding: 28px 28px 4px;
    }

    .home-mobile__eyebrow {
        font-family: 'Montserrat', sans-serif;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 3px;
        text-transform: uppercase;
        color: #6B6863;
        margin-bottom: 8px;
    }

    .home-mobile__heading {
        font-family: 'Cormorant Garamond', serif;
        font-weight: 400;
        font-size: 32px;
        line-height: 1.05;
        letter-spacing: -0.3px;
        color: #1F1F1F;
        margin: 0;
    }

    .home-mobile__heading em {
        font-style: italic;
        color: #1F1F1F;
    }

    /* ── Designer stack */
    .home-mobile__designer-stack {
        display: block;
        padding: 24px 18px 0;
    }

    .home-mobile__designer-card {
        position: relative;
        display: block;
        width: 100%;
        margin-bottom: 22px;
        background: #EFEAE4;
        overflow: hidden;
        text-decoration: none;
        color: #FFFFFF;
    }

    .home-mobile__designer-card:last-child {
        margin-bottom: 0;
    }

    .home-mobile__designer-card:hover,
    .home-mobile__designer-card:focus {
        text-decoration: none;
        color: #FFFFFF;
    }

    .home-mobile__designer-image-wrap {
        position: relative;
        display: block;
        width: 100%;
        padding-bottom: 125%;            /* 4:5 → 5/4 = 1.25 */
        background-color: #EFEAE4;
        overflow: hidden;
    }

    .home-mobile__designer-image-wrap::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0.45) 100%);
        pointer-events: none;
    }

    .home-mobile__designer-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        max-width: none;
        object-fit: cover;
        object-position: center;
        display: block;
    }

    .home-mobile__designer-bottom {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 0 22px 22px;
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 14px;
        z-index: 1;
    }

    .home-mobile__designer-name {
        font-family: 'Cormorant Garamond', serif;
        font-weight: 400;
        font-size: 32px;
        line-height: 1;
        letter-spacing: -0.3px;
        color: #FFFFFF;
    }

    .home-mobile__designer-shop {
        font-family: 'Montserrat', sans-serif;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 2.4px;
        text-transform: uppercase;
        color: #FFFFFF;
        padding-bottom: 6px;
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }

    /* ── Why Plush values */
    .home-mobile__values {
        padding: 24px 28px 0;
    }

    .home-mobile__value {
        display: flex;
        gap: 16px;
        padding: 18px 0;
        border-top: 1px solid #E5E1DA;
        align-items: flex-start;
    }

    .home-mobile__value:last-child {
        border-bottom: 1px solid #E5E1DA;
    }

    .home-mobile__value-num {
        font-family: 'Cormorant Garamond', serif;
        font-size: 22px;
        font-style: italic;
        font-weight: 400;
        color: #D89B7A;
        line-height: 1;
        margin-top: 2px;
        flex-shrink: 0;
    }

    .home-mobile__value-body {
        flex: 1 1 auto;
        min-width: 0;
    }

    .home-mobile__value-title {
        font-family: 'Montserrat', sans-serif;
        font-size: 14px;
        font-weight: 600;
        color: #1F1F1F;
        letter-spacing: -0.1px;
        margin: 0 0 6px;
    }

    .home-mobile__value-desc {
        font-family: 'Montserrat', sans-serif;
        font-size: 12.5px;
        line-height: 1.6;
        color: #6B6863;
        margin: 0;
    }

    /* ── The Visit */
    .home-mobile__map {
        position: relative;
        display: block;
        width: 100%;
        padding-bottom: 56.25%;            /* 16:9 */
        background: #ECE8E2;
        overflow: hidden;
        margin-top: 24px;
    }

    .home-mobile__map iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }

    .home-mobile__address {
        text-align: center;
        padding: 24px 28px 0;
        font-family: 'Cormorant Garamond', serif;
        font-style: italic;
        font-size: 13.5px;
        line-height: 1.7;
        color: #3A3A3A;
    }

    .home-mobile__hours {
        text-align: center;
        padding: 18px 28px 0;
    }

    .home-mobile__hours-label {
        font-family: 'Montserrat', sans-serif;
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 1.8px;
        text-transform: uppercase;
        color: #6B6863;
        margin-bottom: 6px;
    }

    .home-mobile__hours-days {
        font-family: 'Montserrat', sans-serif;
        font-size: 11px;
        font-weight: 400;
        color: #1F1F1F;
    }

    .home-mobile__hours-time {
        font-family: 'Montserrat', sans-serif;
        font-size: 11px;
        font-weight: 600;
        color: #1F1F1F;
    }

    .home-mobile__visit-cta-wrap {
        text-align: center;
        padding: 22px 28px 36px;
    }

    .home-mobile__cta-visit {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        padding: 16px 28px;
        background: #1F1F1F;
        color: #FFFFFF;
        font-family: 'Montserrat', sans-serif;
        font-size: 11px;
        font-weight: 600;
        letter-spacing: 2.4px;
        text-transform: uppercase;
        text-decoration: none;
        border: 1.5px solid #1F1F1F;
        border-radius: 0;
        cursor: pointer;
    }

    .home-mobile__cta-visit:hover,
    .home-mobile__cta-visit:focus {
        color: #FFFFFF;
        text-decoration: none;
    }

    /* ── Brand footer block (matches the cream editorial footer
       on the designer collection and product details pages) */
    .home-mobile__brand-footer {
        background: #FAF7F1;
        border-top: 1px solid #E5E1DA;
        padding: 28px 28px 32px;
        text-align: center;
    }

    .home-mobile__brand-logotype {
        display: block;
        font-family: 'Cormorant Garamond', serif;
        font-size: 24px;
        font-weight: 400;
        letter-spacing: 3px;
        color: #1F1F1F;
        margin-bottom: 8px;
        text-decoration: none;
    }

    .home-mobile__brand-logotype:hover,
    .home-mobile__brand-logotype:focus {
        color: #1F1F1F;
        text-decoration: none;
    }

    .home-mobile__brand-address {
        font-family: 'Cormorant Garamond', serif;
        font-style: italic;
        font-size: 14px;
        color: #6B6863;
        margin-bottom: 4px;
    }

    .home-mobile__brand-hours {
        font-family: 'Montserrat', sans-serif;
        font-size: 11px;
        letter-spacing: 0.4px;
        color: #6B6863;
        margin-bottom: 16px;
    }

    .home-mobile__brand-links {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: baseline;
        gap: 10px;
        font-family: 'Montserrat', sans-serif;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 2px;
        text-transform: uppercase;
    }

    .home-mobile__brand-links a {
        color: #3A3A3A;
        text-decoration: none;
    }

    .home-mobile__brand-links a:hover,
    .home-mobile__brand-links a:focus {
        color: #cc9966;
        text-decoration: none;
    }

    .home-mobile__brand-links-sep {
        color: #cc9966;
    }

    /* On mobile, the editorial brand footer above is the single source
       of identity, address, hours, and site links. The layout footer's
       widget columns and credit-card icons are redundant — hide them.
       The copyright line remains visible. */
    .footer .footer-middle,
    .footer .footer-payments {
        display: none;
    }
}
