/* ═══════════════════════════════════════════════════════════════════════════
   Jeddy Wellness — Responsive overrides (loaded last)
   Breakpoints: 1024px (tablet-landscape), 900px, 768px (mobile nav), 560px
   ═══════════════════════════════════════════════════════════════════════════ */

@media (max-width: 1024px) {
    .clip-grid { grid-template-columns: repeat(2, 1fr); }
    .post-grid { grid-template-columns: repeat(2, 1fr); }
    .ambassador-grid { grid-template-columns: repeat(3, 1fr); }
    .team-cards { grid-template-columns: 1fr; }
    .library-grid { grid-template-columns: repeat(2, 1fr); }
    .package-grid, .delivery-grid { grid-template-columns: repeat(2, 1fr); }
    .package-card--featured { order: -1; }
    .media-grid { grid-template-columns: repeat(2, 1fr); }
    .grid-4 { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .hero__inner { grid-template-columns: 1fr; gap: var(--space-12); }
    .hero__stage { max-width: 520px; }
    .hero__stats { grid-template-columns: repeat(2, 1fr); gap: var(--space-6); }
    .testimonials-grid { grid-template-columns: 1fr; }
    .testimonial-card--featured { grid-row: auto; }
    .stepper { grid-template-columns: repeat(2, 1fr); gap: var(--space-8); }
    .step:not(:last-child)::after { display: none; }
}

@media (max-width: 900px) {
    .offer__inner, .keynote-band__inner, .contact-layout,
    .ambassadors__inner, .founder, .clip-lead,
    .post-featured { grid-template-columns: 1fr; }
    .founder__photo { justify-self: start; max-width: 300px; }
    .clip-lead__shot { transform: none; max-width: 420px; }
    .ambassador-grid { grid-template-columns: repeat(2, 1fr); }
    .keynote-band__portrait { justify-self: start; }
    .team-row { grid-template-columns: 1fr; gap: var(--space-6); }
    /* Single column: photo consistently above the bio for every row */
    .team-row .team-row__photo { order: -1; justify-self: start; width: min(320px, 100%); }
    .grid-3 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .section { padding-block: var(--space-16); }
    .hero { padding-block: var(--space-16); }

    /* Mobile nav takes over */
    .nav { display: none; }
    .nav-toggle { display: grid; place-items: center; }
    .header-actions .btn { display: none; }
    .site-header__inner { gap: var(--space-4); }

    /* Sticky bottom CTA appears; give the footer room above it */
    .mobile-cta-bar { display: block; }
    body { padding-bottom: var(--cta-bar-height); }

    .library-grid { grid-template-columns: 1fr; }
    .clip-grid, .post-grid { grid-template-columns: 1fr; }
    .ambassador-grid { grid-template-columns: 1fr; }
    .team-card { grid-template-columns: 1fr; gap: var(--space-4); }
    .join-card { flex-direction: column; align-items: flex-start; }
    .article-body { font-size: var(--text-base); }
    .form-row { grid-template-columns: 1fr; }
    /* Floating chips crowd small screens — the stage panel carries the story */
    .float-chip { display: none; }
    .program-detail {
        grid-template-columns: 1fr;
        gap: var(--space-3);
    }
    .program-detail__num { padding-top: 0; }
    .contact-form-card { padding: var(--space-6); }
    .pricing-modal { padding: var(--space-2); }
    .pricing-modal__body { padding: var(--space-6); }
}

@media (max-width: 560px) {
    .package-grid, .delivery-grid, .grid-2, .grid-3, .grid-4,
    .stepper, .footer-grid { grid-template-columns: 1fr; }
    .partners__track { gap: var(--space-6); }
    .partners__track img { height: 34px; max-width: 110px; }
    .hero__actions .btn, .page-hero__actions .btn,
    .keynote-band__actions .btn, .error-hero__actions .btn { width: 100%; }
    .footer-bottom { flex-direction: column; text-align: center; }
}
