/* Remaining page polish loaded last. Keep approved directory pages untouched. */
body.route-requests.page-public,
body.route-pricing.page-public,
body.route-contact.page-public,
body.route-for-customers.page-public,
body.route-for-artists.page-public,
body.route-for-tutors.page-public,
body.route-for-students.page-public,
body.route-for-vendors.page-public,
body.route-for-suppliers.page-public,
body.route-trust-safety.page-public,
body.route-quality-guidelines.page-public,
body.route-legal.page-public,
body.route-how-it-works.page-public,
body.route-about.page-public,
body.route-login.page-auth {
  --remaining-shell: min(1160px, calc(100% - 40px));
}

body.route-requests.page-public .page-hero,
body.route-pricing.page-public .page-hero,
body.route-contact.page-public .page-hero,
body.route-for-customers.page-public .page-hero,
body.route-for-artists.page-public .page-hero,
body.route-for-tutors.page-public .page-hero,
body.route-for-students.page-public .page-hero,
body.route-for-vendors.page-public .page-hero,
body.route-for-suppliers.page-public .page-hero,
body.route-trust-safety.page-public .page-hero,
body.route-quality-guidelines.page-public .page-hero,
body.route-legal.page-public .page-hero,
body.route-how-it-works.page-public .page-hero,
body.route-about.page-public .page-hero {
  width: var(--remaining-shell) !important;
  margin: 28px auto 24px !important;
  padding: 58px 28px !important;
  border: 1px solid rgba(122, 70, 28, .22) !important;
  border-radius: 8px !important;
  background-color: rgba(255, 252, 246, .96) !important;
  text-align: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.route-requests.page-public .section,
body.route-pricing.page-public .section,
body.route-contact.page-public .section,
body.route-for-customers.page-public .section,
body.route-for-artists.page-public .section,
body.route-for-tutors.page-public .section,
body.route-for-students.page-public .section,
body.route-for-vendors.page-public .section,
body.route-for-suppliers.page-public .section,
body.route-trust-safety.page-public .section,
body.route-quality-guidelines.page-public .section,
body.route-legal.page-public .section,
body.route-how-it-works.page-public .section,
body.route-about.page-public .section {
  width: var(--remaining-shell) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.route-login.page-auth .auth-command-wrap {
  width: min(1120px, calc(100% - 40px)) !important;
  min-height: auto !important;
  margin: 34px auto !important;
  padding: 16px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .8fr) !important;
  align-items: stretch !important;
  gap: 16px !important;
  border: 1px solid rgba(122, 70, 28, .22) !important;
  border-radius: 8px !important;
  background: rgba(255, 252, 246, .96) !important;
  box-sizing: border-box !important;
}

body.route-login.page-auth .auth-intro-panel,
body.route-login.page-auth .auth-card,
body.route-login.page-auth .auth-role-grid article {
  border: 1px solid rgba(122, 70, 28, .22) !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #fff, #fff7ec) !important;
  box-shadow: 0 18px 40px rgba(64, 29, 9, .08) !important;
  box-sizing: border-box !important;
}

body.route-login.page-auth .auth-intro-panel {
  padding: 28px !important;
  display: grid !important;
  align-content: center !important;
  gap: 16px !important;
}

body.route-login.page-auth .auth-intro-panel h1 {
  margin: 0 !important;
  color: #241711 !important;
  font-size: 3rem !important;
  line-height: 1.08 !important;
}

body.route-login.page-auth .auth-role-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

body.route-login.page-auth .auth-role-grid article {
  min-height: 142px !important;
  padding: 16px !important;
}

body.route-login.page-auth .auth-role-grid span {
  display: inline-flex !important;
  margin-bottom: 10px !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  background: #fff0db !important;
  color: #9b0008 !important;
  font-weight: 900 !important;
  font-size: .72rem !important;
  text-transform: uppercase !important;
}

body.route-login.page-auth .auth-card {
  width: 100% !important;
  max-width: none !important;
  padding: 28px !important;
}

body.route-login.page-auth .auth-card h2 {
  margin-top: 0 !important;
  color: #241711 !important;
}

body.phase1-foundation .role-faq-section,
body.phase1-foundation .pricing-faq-section {
  display: block !important;
  text-align: center !important;
}

body.phase1-foundation .role-faq-section .faq-list,
body.phase1-foundation .pricing-faq-section .faq-list {
  max-width: 760px !important;
  margin: 20px auto 0 !important;
}

@media (max-width: 760px) {
  body.route-requests.page-public,
  body.route-pricing.page-public,
  body.route-contact.page-public,
  body.route-for-customers.page-public,
  body.route-for-artists.page-public,
  body.route-for-tutors.page-public,
  body.route-for-students.page-public,
  body.route-for-vendors.page-public,
  body.route-for-suppliers.page-public,
  body.route-trust-safety.page-public,
  body.route-quality-guidelines.page-public,
  body.route-legal.page-public,
  body.route-how-it-works.page-public,
  body.route-about.page-public,
  body.route-login.page-auth {
    --remaining-shell: calc(100% - 18px);
    overflow-x: hidden !important;
  }

  body.route-requests.page-public .page-hero,
  body.route-pricing.page-public .page-hero,
  body.route-contact.page-public .page-hero,
  body.route-for-customers.page-public .page-hero,
  body.route-for-artists.page-public .page-hero,
  body.route-for-tutors.page-public .page-hero,
  body.route-for-students.page-public .page-hero,
  body.route-for-vendors.page-public .page-hero,
  body.route-for-suppliers.page-public .page-hero,
  body.route-trust-safety.page-public .page-hero,
  body.route-quality-guidelines.page-public .page-hero,
  body.route-legal.page-public .page-hero,
  body.route-how-it-works.page-public .page-hero,
  body.route-about.page-public .page-hero {
    margin-top: 10px !important;
    padding: 34px 14px !important;
  }

  body.route-requests.page-public .page-hero h1,
  body.route-pricing.page-public .page-hero h1,
  body.route-contact.page-public .page-hero h1,
  body.route-for-customers.page-public .page-hero h1,
  body.route-for-artists.page-public .page-hero h1,
  body.route-for-tutors.page-public .page-hero h1,
  body.route-for-students.page-public .page-hero h1,
  body.route-for-vendors.page-public .page-hero h1,
  body.route-for-suppliers.page-public .page-hero h1,
  body.route-trust-safety.page-public .page-hero h1,
  body.route-quality-guidelines.page-public .page-hero h1,
  body.route-legal.page-public .page-hero h1,
  body.route-how-it-works.page-public .page-hero h1,
  body.route-about.page-public .page-hero h1,
  body.route-login.page-auth .auth-intro-panel h1 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 1.65rem !important;
    line-height: 1.12 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
  }

  body.route-requests.page-public .page-hero > p:not(.eyebrow),
  body.route-pricing.page-public .page-hero > p:not(.eyebrow),
  body.route-contact.page-public .page-hero > p:not(.eyebrow),
  body.route-for-customers.page-public .page-hero > p:not(.eyebrow),
  body.route-for-artists.page-public .page-hero > p:not(.eyebrow),
  body.route-for-tutors.page-public .page-hero > p:not(.eyebrow),
  body.route-for-students.page-public .page-hero > p:not(.eyebrow),
  body.route-for-vendors.page-public .page-hero > p:not(.eyebrow),
  body.route-for-suppliers.page-public .page-hero > p:not(.eyebrow),
  body.route-trust-safety.page-public .page-hero > p:not(.eyebrow),
  body.route-quality-guidelines.page-public .page-hero > p:not(.eyebrow),
  body.route-legal.page-public .page-hero > p:not(.eyebrow),
  body.route-how-it-works.page-public .page-hero > p:not(.eyebrow),
  body.route-about.page-public .page-hero > p:not(.eyebrow),
  body.route-login.page-auth .auth-intro-panel > p {
    max-width: 100% !important;
    font-size: .88rem !important;
    line-height: 1.48 !important;
    overflow-wrap: anywhere !important;
  }

  body.route-requests.page-public .page-hero .trust-strip,
  body.route-pricing.page-public .page-hero .trust-strip,
  body.route-contact.page-public .page-hero .trust-strip,
  body.route-legal.page-public .page-hero .trust-strip,
  body.route-requests.page-public .marketplace-command-strip,
  body.route-requests.page-public .hero-actions,
  body.route-contact.page-public .hero-actions,
  body.route-for-customers.page-public .hero-actions,
  body.route-for-artists.page-public .hero-actions,
  body.route-for-tutors.page-public .hero-actions,
  body.route-for-students.page-public .hero-actions,
  body.route-for-vendors.page-public .hero-actions,
  body.route-for-suppliers.page-public .hero-actions,
  body.route-trust-safety.page-public .hero-actions,
  body.route-quality-guidelines.page-public .hero-actions,
  body.route-legal.page-public .hero-actions,
  body.route-pricing.page-public .pricing-decision-strip,
  body.route-pricing.page-public .plan-recommender,
  body.route-requests.page-public .lead-next-steps,
  body.route-contact.page-public .action-grid,
  body.route-for-customers.page-public .action-grid,
  body.route-for-artists.page-public .action-grid,
  body.route-for-tutors.page-public .action-grid,
  body.route-for-students.page-public .action-grid,
  body.route-for-vendors.page-public .action-grid,
  body.route-for-suppliers.page-public .action-grid,
  body.route-trust-safety.page-public .trust-command-grid,
  body.route-quality-guidelines.page-public .trust-command-grid,
  body.route-legal.page-public .legal-assurance-grid,
  body.route-legal.page-public .trust-command-grid,
  body.route-login.page-auth .auth-command-wrap,
  body.route-login.page-auth .auth-role-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 10px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.route-requests.page-public .page-hero .trust-strip span,
  body.route-pricing.page-public .page-hero .trust-strip span,
  body.route-contact.page-public .page-hero .trust-strip span,
  body.route-legal.page-public .page-hero .trust-strip span,
  body.route-requests.page-public .marketplace-command-card,
  body.route-requests.page-public .hero-actions .button,
  body.route-contact.page-public .hero-actions .button,
  body.route-for-customers.page-public .hero-actions .button,
  body.route-for-artists.page-public .hero-actions .button,
  body.route-for-tutors.page-public .hero-actions .button,
  body.route-for-students.page-public .hero-actions .button,
  body.route-for-vendors.page-public .hero-actions .button,
  body.route-for-suppliers.page-public .hero-actions .button,
  body.route-trust-safety.page-public .hero-actions .button,
  body.route-quality-guidelines.page-public .hero-actions .button,
  body.route-legal.page-public .hero-actions .button,
  body.route-pricing.page-public .pricing-decision-strip article,
  body.route-pricing.page-public .plan-recommender article,
  body.route-login.page-auth .auth-intro-panel,
  body.route-login.page-auth .auth-card,
  body.route-login.page-auth .auth-role-grid article {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  body.route-pricing.page-public table {
    display: block !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    box-sizing: border-box !important;
  }

  body.route-login.page-auth .auth-command-wrap {
    margin: 10px auto 20px !important;
    padding: 8px !important;
  }

  body.route-login.page-auth .auth-intro-panel,
  body.route-login.page-auth .auth-card {
    padding: 16px !important;
  }
}
