/*
 * BreakoutCasting — Mobile Responsive Styles
 * Applies only at max-width: 768px
 * Desktop styles are completely untouched
 */

/* ── NAV ───────────────────────────────────────────────── */
@media (max-width: 768px) {
  nav {
    padding: 14px 20px;
    position: fixed;
  }
  .nav-links {
    display: none;
    position: fixed;
    top: 57px;
    left: 0;
    right: 0;
    background: rgba(8,8,7,0.99);
    border-bottom: 1px solid rgba(200,169,110,0.15);
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 12px 0;
    z-index: 99;
  }
  .nav-links.open {
    display: flex;
  }
  .nav-link {
    padding: 13px 24px;
    font-size: 11px;
    border-bottom: 1px solid rgba(200,169,110,0.06);
  }
  .nav-link:last-of-type {
    border-bottom: none;
  }
  .nav-cta {
    margin: 12px 20px 4px;
    padding: 13px 20px;
    text-align: center;
    clip-path: polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
  }
  .nav-burger {
    display: flex !important;
  }
}

/* ── HERO / PAGE HEADERS ────────────────────────────────── */
@media (max-width: 768px) {
  .hero { min-height: 85vh; }
  .hero-title { font-size: clamp(32px,9vw,48px) !important; }
  .hero-inner { padding: 100px 20px 48px; }
  .hero-stats { flex-wrap: wrap; gap: 20px; }
  .hero-card { display: none; }

  .page-header { padding: 82px 20px 24px; flex-direction: column; align-items: flex-start; gap: 12px; }
  .header-right { width: 100%; justify-content: space-between; }
}

/* ── GENERAL SECTIONS ───────────────────────────────────── */
@media (max-width: 768px) {
  .section { padding: 56px 20px !important; }
  .section-inner { padding: 56px 20px !important; }
  .manifesto-inner { padding: 56px 20px; flex-direction: column; gap: 32px; }
  .manifesto-text { max-width: 100%; }
  .manifesto-image { width: 100%; height: 220px; }
  .audience-inner { padding: 56px 20px; }
  .categories-inner { padding: 56px 20px; }
}

/* ── GRIDS → SINGLE COLUMN ──────────────────────────────── */
@media (max-width: 768px) {
  .values-grid { grid-template-columns: 1fr !important; }
  .audience-grid { grid-template-columns: 1fr !important; }
  .categories-grid { grid-template-columns: 1fr 1fr !important; }
  .stats-grid { grid-template-columns: repeat(2,1fr) !important; }
  .grid-2 { grid-template-columns: 1fr !important; }
  .grid-3 { grid-template-columns: 1fr !important; }
  .grid-4 { grid-template-columns: 1fr 1fr !important; }
  .pricing-grid { grid-template-columns: 1fr !important; }
  .compare-table { overflow-x: auto; }
  .dob-wrap { grid-template-columns: 1fr 1fr !important; }
}

/* ── ROSTER ─────────────────────────────────────────────── */
@media (max-width: 768px) {
  .roster-wrap { padding: 0 12px 40px; }
  .roster-grid { grid-template-columns: 1fr 1fr; }
  .controls-bar { padding: 0 12px 16px; }
  .controls-inner { flex-direction: column; }
  .search-wrap { min-width: unset; width: 100%; }
  .filter-select { width: 100%; }
  .view-toggle { align-self: flex-end; }
  .active-filters { padding: 0 12px 12px; }
  .pagination-wrap { padding: 24px 12px 48px; flex-direction: column; gap: 12px; }
  .new-talent-section { padding: 0 12px 24px; }
  .new-talent-grid { grid-template-columns: 1fr 1fr !important; }
}

@media (max-width: 480px) {
  .roster-grid { grid-template-columns: 1fr; }
  .new-talent-grid { grid-template-columns: 1fr !important; }
}

/* ── TALENT PROFILE ─────────────────────────────────────── */
@media (max-width: 768px) {
  .profile-wrap, .profile-wrap.premium-layout {
    grid-template-columns: 1fr !important;
    gap: 32px;
    padding: 20px 20px 48px;
  }
  .photo-col { position: static !important; }
  .photo-thumbs { grid-template-columns: repeat(4,1fr); }
  .photo-thumbs-premium { grid-template-columns: repeat(5,1fr); }
  .talent-name { font-size: clamp(28px,7vw,44px) !important; }
  .breadcrumb { padding: 78px 20px 0; }
  .back-bar { padding: 0 20px 32px; }
}

/* ── CASTING ────────────────────────────────────────────── */
@media (max-width: 768px) {
  .casting-wrap { padding: 0 12px 48px; }
  .casting-grid { grid-template-columns: 1fr !important; }
  .card-actions { flex-direction: column; }
  .btn-apply, .btn-inquire { width: 100%; text-align: center; }
}

/* ── PRODUCTIONS ────────────────────────────────────────── */
@media (max-width: 768px) {
  .pricing-top .section-inner { padding: 48px 20px; }
}

/* ── APPLY FORM ─────────────────────────────────────────── */
@media (max-width: 768px) {
  .form-wrap { padding: 0 20px 60px; }
  .page-header { padding: 82px 20px 24px; }
  .upload-grid { grid-template-columns: 1fr !important; }
  .upload-slot-span { grid-column: span 1 !important; }
  .cat-grid { grid-template-columns: 1fr !important; }
  .exp-grid { grid-template-columns: 1fr !important; }
  .height-wrap { flex-direction: column; align-items: flex-start; }
  .unit-toggle { align-self: flex-start; }
  .gender-toggle { display: grid; grid-template-columns: 1fr 1fr; }
  .guide-img-row { grid-template-columns: 1fr !important; }
}

/* ── PREMIUM ────────────────────────────────────────────── */
@media (max-width: 768px) {
  .price-card { padding: 32px 20px; }
  .price-num { font-size: 36px !important; }
  .breakdown-grid { grid-template-columns: 1fr !important; }
  .faq-strip { padding: 48px 20px; }
  .cta-bottom { padding: 48px 20px; }
}

/* ── FAQ ────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .faq-inner { padding: 48px 20px; flex-direction: column; gap: 32px; }
  .faq-sidebar { position: static; width: 100%; }
  .faq-sidebar-links { display: none; }
}

/* ── ABOUT / CONTACT ────────────────────────────────────── */
@media (max-width: 768px) {
  .about-inner, .contact-inner { padding: 48px 20px; flex-direction: column; gap: 32px; }
  .contact-grid { grid-template-columns: 1fr !important; }
}

/* ── LEGAL PAGES ────────────────────────────────────────── */
@media (max-width: 768px) {
  .legal-inner, .legal-wrap { padding: 82px 20px 48px !important; max-width: 100% !important; }
}

/* ── FOOTER ─────────────────────────────────────────────── */
@media (max-width: 768px) {
  footer {
    padding: 24px 20px;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .footer-links { flex-wrap: wrap; gap: 16px; }
}

/* ── MODALS ─────────────────────────────────────────────── */
@media (max-width: 768px) {
  .modal { padding: 28px 20px; }
  .locked-box { padding: 36px 24px; }
}

/* ── MISC ───────────────────────────────────────────────── */
@media (max-width: 768px) {
  .related-grid { grid-template-columns: 1fr 1fr !important; }
  .final-cta-inner { padding: 48px 20px !important; }
  h2.section-title { font-size: clamp(24px,7vw,38px) !important; }
}
