.about-hero {
    height: 100vh;
    background: url('../hero-about.png') center center / cover no-repeat;
    position: relative;
    z-index: 4;
}

/* ── Intro ──────────────────────────────────────────────────────────────── */

.about-intro {
    display: flex;
    align-items: center;
    background: url('../blue-background.png') center center / cover no-repeat;
    padding: 60px 6vw 80px;
    gap: 5vw;
    position: relative;
    z-index: 3;
}

.about-intro-img {
    flex: 0 0 40%;
}

.about-intro-img img {
    width: 100%;
    height: auto;
    display: block;
}

.about-intro-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.about-intro-text .body-text {
    margin: 0;
}

/* Slanted tape highlight behind ALL-CAPS words */
.tape-highlight {
    position: relative;
    isolation: isolate;
    display: inline-block;
    padding: 0 2px;
}

.tape-highlight::before {
    content: '';
    position: absolute;
    inset: 2px -5px;
    background: url('../yellow-tape.png') center center / 100% 100% no-repeat;
    z-index: -1;
    opacity: 0.9;
    transform: rotate(-2deg);
}

/* ── Favorites ──────────────────────────────────────────────────────────── */

.about-favorites {
    background: url('../yellow-stripes.png') top center / 100% auto repeat-y;
    background-color: #EBEBE4;
    padding: 60px 6vw 100px;
    text-align: center;
    position: relative;
    z-index: 2;
}

.about-fav-heading {
    margin-bottom: 52px !important;
}

.fav-cards {
    display: flex;
    justify-content: center;
    gap: 32px;
    margin: 0 auto;
}

.fav-card {
    position: relative;
    width: 200px;
    transform: rotate(var(--rot, 0deg));
    transition: transform 0.3s ease;
}

.fav-card:hover {
    transform: rotate(0deg) scale(1.04);
}

.fav-card-bg {
    width: 100%;
    height: auto;
    display: block;
}

.fav-card-content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 22px 16px;
    gap: 8px;
    text-align: center;
}

.fav-card-label {
    font-family: 'Butterclub', sans-serif;
    font-size: 12px;
    color: #5F361E;
    opacity: 0.6;
    text-transform: lowercase;
    letter-spacing: 0.05em;
    margin: 0;
}

.fav-card-value {
    font-family: 'Girthquake', serif;
    font-size: clamp(0.85rem, 1.3vw, 1.05rem);
    color: #5F361E;
    margin: 0;
    line-height: 1.25;
    max-width: 100%;
}

.about-intro .display-heading,
.about-favorites .display-heading,
.about-favorites ~ .cta .display-heading {
    font-size: clamp(1.8rem, 3vw, 3.2rem);
}

/* ── Responsive ─────────────────────────────────────────────────────────── */

@media (max-width: 768px) {
    .about-intro {
        flex-direction: column;
        padding: 48px 28px 64px;
        gap: 32px;
    }

    .about-intro-img {
        flex: none;
        width: 75%;
        max-width: 300px;
        margin: 0 auto;
    }

    .about-intro-text {
        text-align: center;
    }

    .about-favorites {
        padding: 48px 28px 64px;
    }

    /* 2x2 grid on mobile */
    .fav-cards {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        max-width: 400px;
        margin: 0 auto;
        justify-items: center;
    }

    .fav-card {
        width: 100%;
        max-width: 175px;
    }
}

@media (max-width: 480px) {
    .about-intro {
        padding: 40px 20px 56px;
    }

    .about-favorites {
        padding: 40px 20px 56px;
    }

    .fav-cards {
        gap: 14px;
    }
}
