@media (max-width: 900px) {
    .back-to-top-button {
        display: none !important;
    }

    .page-header {
        padding-top: 2rem;
    }


    h1 {
        font-size: clamp(3.1rem, 13vw, 5rem);
        max-width: none;
    }

    h2 {
        font-size: clamp(2.4rem, 9vw, 3.7rem);
    }

    .lead {
        font-size: 1rem;
    }

    .hero-actions {
        grid-template-columns: 1fr;
        display: grid;
    }

    .feature-ribbon,
    .date-grid,
    .zoom-benefit-grid,
    .contact-grid,
    .booking-redirect-card,
    .payment-method-grid,
    .payment-process-grid,
    .faq-hero-grid,
    .policy-card-grid {
        grid-template-columns: 1fr;
    }

    .faq-sidebar,
    .policy-sidebar {
        position: static;
    }

    .hero-stage {
        min-height: auto;
    }

    .hero-media {
        min-height: 22rem;
        border-radius: 30px;
    }

    .editorial-card,
    .instagram-profile-card,
    .zoom-call-layout,
    .zoom-call-layout-page,
    .footer-top,
    .offering-row,
    .price-line {
        grid-template-columns: 1fr;
    }

    .offering-row,
    .price-line {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.6rem;
    }

    .review-card {
        flex: 0 0 min(86vw, 340px);
        min-height: 17rem;
    }

    .testimonial-marquee {
        overflow-x: auto;
        -webkit-mask-image: none;
        mask-image: none;
        padding-bottom: 0.35rem;
    }

    .testimonial-track {
        animation: none;
        padding-right: 1rem;
    }

    .zoom-stage-caption {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        margin-top: 1rem;
    }

    .zoom-stage-sidebar {
        display: none;
    }

    .zoom-highlight-copy,
    .zoom-cta-panel,
    .zoom-hero-panel,
    .form-panel,
    .ribbon-card,
    .editorial-card,
    .review-card,
    .contact-card {
        border-radius: 24px;
    }

    .booking-section-home,
    .booking-home-layout {
        gap: 1.2rem;
    }

    .booking-copy {
        padding: 1.1rem 1rem 0;
    }

    .form-panel {
        padding: 1rem;
        background:
            linear-gradient(180deg, rgba(255, 252, 248, 0.94), rgba(247, 240, 232, 0.92));
    }

    .booking-form {
        gap: 0.95rem;
    }

    .booking-form label span,
    .booking-toggle-group legend {
        font-size: 0.95rem;
    }

    .booking-form input,
    .booking-form select,
    .booking-form textarea,
    .booking-toggle-option span {
        min-height: 3.35rem;
        font-size: 16px;
    }

    .booking-form textarea {
        min-height: 8rem;
    }

    .booking-toggle-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.75rem;
    }

    .availability-note {
        padding: 0.88rem 0.92rem;
        font-size: 0.94rem;
        line-height: 1.55;
    }

    .booking-copy .support-text,
    .booking-points li {
        font-size: 0.97rem;
    }

    .site-header {
        padding-top: 1rem;
    }

    .brand-text small,
    .site-nav {
        display: none;
    }

    .footer-bottom-links {
        display: none;
    }

    .footer-legal {
        text-align: center;
        width: 100%;
    }

    .mobile-dock {
        display: grid;
    }
}

@media (max-width: 760px) {
    h1 {
        font-size: clamp(3rem, 14vw, 4.9rem);
    }

    h2 {
        font-size: clamp(2.3rem, 10vw, 3.5rem);
    }

    .hero-stage {
        min-height: auto;
    }

    .hero-note {
        max-width: 220px;
    }

    .field-row,
    .date-grid {
        grid-template-columns: 1fr;
    }

    .booking-day-picker {
        grid-auto-columns: minmax(9.5rem, 9.5rem);
    }

    .zoom-call-main,
    .zoom-call-layout-page .zoom-call-main {
        min-height: 320px;
    }

    .macbook-base {
        width: calc(100% - 1.5rem);
    }

    .zoom-stage-caption {
        margin-top: 0.9rem;
    }

    .zoom-mini-card {
        padding: 0.82rem 0.74rem;
        border-radius: 18px;
    }

    .zoom-mini-card strong {
        font-size: 0.9rem;
    }

    .zoom-call-caption {
        padding: 0.85rem 0.9rem;
    }

    .booking-copy,
    .zoom-page-copy,
    .zoom-highlight-copy,
    .editorial-copy,
    .instagram-copy {
        max-width: none;
    }

    .instagram-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.8rem;
    }

    .date-card,
    .instagram-tile,
    .review-card {
        border-radius: 22px;
    }
}

@media (max-width: 700px) {
    .admin-shell {
        width: min(calc(100% - 1rem), 1200px);
        padding-top: 1rem;
    }

    .admin-header-card,
    .admin-blocked-item,
    .admin-booking-head,
    .admin-user-head {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-header-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 560px) {


    
    .button,
    .button-small {
        width: 100%;

    }

    .hero-actions,
    .closing-actions,
    .session-option-grid {
        grid-template-columns: 1fr;
    }

    .feature-ribbon {
        grid-template-columns: 1fr;
    }

    .instagram-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.65rem;
    }

    .booking-form {
        gap: 0.9rem;
    }

    .booking-toggle-option span {
        min-height: 3.1rem;
        font-size: 0.92rem;
    }

    .testimonial-track {
        gap: 0.8rem;
    }

    .brand-logo {
        width: 2.8rem;
        height: 2.8rem;
    }

    .brand-text strong {
        font-size: 1.3rem;
    }

    .instagram-tile {
        border-radius: 18px;
    }

    .header-shell .button {
        display: none;
    }

    .footer-brand {
        flex-direction: column;
    }

    .footer-logo {
        width: 4rem;
        height: 4rem;
    }
}



@media (max-width: 480px) {
    .booking-toggle-row,
    .field-row,
    .mobile-availability-grid {
        grid-template-columns: 1fr;
    }

    .bottom-dock-app {
        gap: 0.3rem;
        padding: 0.45rem;
    }

    .bottom-dock-app a {
        min-height: 2.7rem;
        font-size: 0.68rem;
    }
}
