/* Responsive — Apple-esque breakpoints */

@media (max-width: 1024px) {
    :root {
        --section-gap: 120px;
    }

    .tile-bg {
        gap: 6px;
        padding: 16px;
    }

    .bento-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bento-tile--large {
        grid-column: span 2;
    }

    .bento-tile--full {
        grid-column: span 2;
    }

    .stats-row {
        gap: 48px;
    }

    .pricing-card {
        padding: 32px 24px;
    }
}

@media (max-width: 768px) {
    :root {
        --section-gap: 96px;
    }

    html {
        font-size: 17px;
    }

    .tile-bg {
        display: none;
    }

    .spotlight {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .spotlight--reverse {
        direction: ltr;
    }

    .spotlight__visual {
        max-height: 260px;
    }

    .cookie-layout {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .chat-mockup {
        max-width: 100%;
        order: -1;
    }

    .benefits-row {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .benefit {
        text-align: left;
        display: flex;
        align-items: flex-start;
        gap: 20px;
        padding: 16px 0;
    }

    .benefit__icon {
        margin: 0;
        flex-shrink: 0;
        width: 52px;
        height: 52px;
    }

    .benefit p {
        margin: 0;
    }

    .pricing-grid {
        grid-template-columns: 1fr;
        max-width: 400px;
    }

    .pricing-card--featured {
        transform: none;
        order: -1;
    }

    .pricing-card--featured:hover {
        transform: translateY(-4px);
    }

    .stats-row {
        gap: 32px;
    }
}

@media (max-width: 640px) {
    :root {
        --section-gap: 80px;
    }

    html {
        font-size: 16px;
    }

    .container {
        padding: 0 20px;
    }

    .bento-grid {
        grid-template-columns: 1fr;
    }

    .bento-tile--large,
    .bento-tile--full {
        grid-column: span 1;
    }

    .hero__cta {
        flex-direction: column;
        align-items: center;
    }

    .hero__cta .btn {
        width: 100%;
        max-width: 300px;
    }

    .site-header__nav .btn--small {
        padding: 8px 18px;
        font-size: 0.82rem;
    }

    .site-header__wordmark {
        font-size: 1.15rem;
    }

    .scroll-indicator {
        display: none;
    }

    .stats-row {
        flex-direction: column;
        gap: 24px;
    }

    .pricing-card__amount {
        font-size: 2.2rem;
    }
}

@media (max-width: 400px) {
    .chat-mockup {
        padding: 20px;
    }

    .chat-bubble {
        max-width: 90%;
        font-size: 0.84rem;
    }
}
