/* Burgeon Capital · responsive.css — desktop-first, descending: 1600 / 1280 / 1024 / 768 / 480 */

/* ---------- 1600+: large desktop (1920×1080) ---------- */
@media (min-width: 1600px) {
  html { font-size: 112.5%; }
  :root { --container: 1480px; --gutter: 2rem; }
  .site-header .site-logo img { width: 260px; }
  .site-header .main-nav a { font-size: 1rem; }
}
@media (min-width: 1880px) {
  html { font-size: 118.75%; }
  :root { --container: 1560px; }
}

/* ---------- 1280: small desktop ---------- */
@media (max-width: 1280px) {
  .org-partners { --org-gap: var(--space-4); }
  :root { --fs-display: 3.75rem; --fs-h1: 3.125rem; --fs-h2: 2.5rem; --space-30: 6.5rem; }
  .site-header .main-nav { gap: var(--space-6); }
  .site-header .main-nav a { padding: 0 var(--space-2); }
  .fund-layout, .philosophy-layout, .fee-layout, .onboarding-layout { gap: var(--space-12); }
  .org-partner { padding: var(--space-6) var(--space-5); }
  .edge-item { padding: var(--space-8); }
}

/* ---------- 1024: tablet ---------- */
@media (max-width: 1024px) {
  :root { --fs-display: 3.25rem; --fs-h1: 2.75rem; --fs-h2: 2.25rem; --fs-stat: 3rem; --space-30: 5.5rem; --header-h: 132px; }

  /* Header: one menu, restyled as a drawer */
  .site-header .top-bar-contact a:first-child { display: none; }
  .site-header .header-main .container { min-height: 86px; }
  .site-header .site-logo img { width: 200px; }
  .site-header .nav-toggle { display: flex; position: relative; z-index: 120; }
  .site-header .main-nav { position: fixed; inset: 0 0 0 auto; width: min(380px, 88vw); z-index: 110; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: var(--space-8); padding: calc(var(--header-h) + var(--space-4)) var(--space-6) var(--space-8); background: var(--color-navy-900); overflow-y: auto; transform: translateX(100%); visibility: hidden; transition: transform 0.4s var(--ease), visibility 0.4s; }
  .site-header.nav-open .main-nav { transform: none; visibility: visible; box-shadow: -20px 0 40px rgba(0, 0, 0, 0.3); }
  .site-header .main-nav ul { flex-direction: column; align-items: stretch; gap: 0; }
  .site-header .main-nav li { border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .site-header .main-nav a, .site-header .main-nav > .menu > li > a { font-size: var(--fs-body); padding: 0; min-height: 52px; width: 100%; justify-content: space-between; color: var(--color-white); }
  .site-header .main-nav > .menu > li > a:hover, .site-header .main-nav > .menu > .current-menu-item > a { color: var(--color-white); }
  .site-header .main-nav .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; background: transparent; padding: 0 0 var(--space-3) var(--space-4); min-width: 0; }
  .site-header .main-nav .sub-menu li { border: 0; }
  .site-header .main-nav .sub-menu a { color: var(--color-navy-100); min-height: 40px; font-size: var(--fs-small); }
  .site-header .main-nav .sub-menu a:hover { background: transparent; color: var(--color-white); }
  .site-header .main-nav .menu-item-has-children > a::after { display: none; }
  .site-header .main-nav .header-cta { align-self: stretch; }
  .site-header.nav-open .nav-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .site-header.nav-open .nav-toggle span:nth-child(2) { opacity: 0; }
  .site-header.nav-open .nav-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  /* Split layouts stack */
  .about-layout, .fund-layout, .two-col, .contact-layout, .philosophy-layout, .onboarding-layout, .fee-layout, .aif-hero .container { grid-template-columns: minmax(0, 1fr); gap: var(--space-10); }
  .philosophy-intro, .two-col.top > .text-block:first-child, .contact-layout > .contact-panel, .contact-layout > .disclaimer-box { position: static; }
  .service-row .two-col.reverse .media { order: 0; }
  .footer-cta-inner { flex-direction: column; align-items: flex-start; }
  .split-heading { gap: var(--space-8); }
  .aif-hero .glance-card { max-width: 560px; }

  /* Grids go to two columns */
  .approach-grid, .service-grid, .edge-panel, .team-grid, .leader-grid, .card-grid, .card-grid.four, .pillar-grid, .fee-boxes, .org-partners, .structure .structure-partners { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fee-band { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fee-band .fee-item { border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
  .step-list { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--space-10); }
  .step-list li::after { display: none; }
  .stats-row .stat-card { grid-template-columns: minmax(0, 1fr); }
  .stats-row .stat-card .icon-box { grid-row: auto; margin-bottom: var(--space-2); }
  .stats-row .stat-number { font-size: 2.25rem; }
  .site-footer .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  /* Org chart: drop connectors once it wraps */
  .org-partners { padding-top: var(--space-6); }
  .org-partner::before, .org-partner::after { display: none; }

  /* Media */
  .fund-visual { max-width: 600px; }
  .onboarding-media { min-height: 0; aspect-ratio: 16 / 10; height: auto; }
  .media.tall { aspect-ratio: 4 / 3; }
  .service-row .media.wide { aspect-ratio: 4 / 3; }
}

/* ---------- 768: large phone / small tablet ---------- */
@media (max-width: 768px) {
  .hero-title br { display: none; }
  :root { --fs-display: 2.75rem; --fs-h1: 2.375rem; --fs-h2: 2rem; --fs-h3: 1.375rem; --fs-stat: 2.5rem; --space-30: 4.5rem; --gutter: 1.25rem; }
  body { font-size: var(--fs-body); }
  .heading-group p:not(.eyebrow) { font-size: var(--fs-body); }

  .site-header .top-bar-note { font-size: 11px; }
  .site-header .top-bar-contact { display: none; }

  .hero-section { align-items: flex-end; padding-bottom: var(--space-16); }
  .hero-section::before { background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.85) 60%); }
  .hero-content { gap: var(--space-5); }
  .page-hero { min-height: 420px; }
  .page-hero::before { background: linear-gradient(180deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.85)); }

  .split-heading { flex-direction: column; align-items: flex-start; gap: var(--space-5); margin-bottom: var(--space-10); }
  .split-heading-text { max-width: none; }
  .heading-group.centered { margin-bottom: var(--space-10); }

  .approach-grid, .edge-panel, .team-grid, .leader-grid, .stats-row, .card-grid.two { grid-template-columns: minmax(0, 1fr); }
  .approach-card, .service-card .service-body, .feature-card, .pillar-card, .fee-box, .info-card { padding: var(--space-6); }
  .edge-item { padding: var(--space-6); }
  .stats-row .stat-card { grid-template-columns: auto minmax(0, 1fr); padding: var(--space-6); }
  .stats-row .stat-card .icon-box { grid-row: 1 / span 2; margin-bottom: 0; }
  .team-grid, .leader-grid { max-width: 520px; }

  /* Floating cards become normal stacked cards */
  .fund-visual { padding: 0; display: flex; flex-direction: column; gap: var(--space-4); }
  .fund-visual .fund-photo { max-width: none; aspect-ratio: 4 / 3; }
  .float-card { position: static; width: auto; box-shadow: none; border: 1px solid var(--color-border); }
  .min-card { border-color: var(--color-navy-900); }

  .profile-card { grid-template-columns: minmax(0, 1fr); }
  .profile-card .media { min-height: 0; aspect-ratio: 4 / 3; }
  .profile-card .profile-body, .contact-form, .contact-panel, .disclaimer-box, .glance-card { padding: var(--space-6); }
  .fund-table th, .fund-table td { padding: var(--space-3) var(--space-4); font-size: var(--fs-small); }

  .org-investors { flex-direction: column; align-items: flex-start; text-align: left; padding: var(--space-6); }
  .org-trust { padding: var(--space-8) var(--space-6); }
  .org-line { height: var(--space-8); }

  .fee-band .fee-item { padding: var(--space-8) var(--space-6); }
  .v-steps li { grid-template-columns: 44px minmax(0, 1fr); gap: var(--space-4); }
  .v-step-num { width: 44px; height: 44px; font-size: var(--fs-small); }
  .v-steps li::before { left: 21px; top: 44px; }
  .v-steps h3 { margin-top: var(--space-2); }

  .footer-cta { padding: var(--space-20) 0 var(--space-16); margin-bottom: var(--space-12); }
  .footer-cta .heading { font-size: var(--fs-h2); }
  .site-footer .footer-grid { gap: var(--space-8); }
  .back-to-top { width: 44px; height: 44px; right: var(--space-4); bottom: var(--space-4); }
}

/* ---------- 480: phone ---------- */
@media (max-width: 480px) {
  .status-actions { flex-direction: column; width: 100%; }
  .status-actions .btn-arrow { width: 100%; }
  :root { --fs-display: 2.25rem; --fs-h1: 2rem; --fs-h2: 1.75rem; --fs-stat: 2.25rem; --header-h: 80px; --space-30: 4rem; }
  .site-header .top-bar { display: none; }
  .site-header .header-main .container { min-height: 80px; }
  .site-header .site-logo img { width: 170px; }

  .hero-actions, .cta-actions, .about-actions { flex-direction: column; align-items: stretch; gap: var(--space-5); }
  .hero-actions .btn-arrow, .cta-actions .btn-arrow, .about-actions .btn-arrow, .text-block > .btn-arrow, .fund-content > .btn-arrow, .philosophy-intro > .btn-arrow, .onboarding-content > .btn-arrow, .contact-form .btn-arrow, .split-heading > .btn-arrow, .center-action .btn-arrow { width: 100%; }
  .btn-arrow { padding: 0 var(--space-6); }

  .service-grid, .pillar-grid, .card-grid, .card-grid.four, .fee-boxes, .fee-band, .org-partners, .structure .structure-partners,
  .step-list, .form-grid, .about-cards, .check-list, .serve-list { grid-template-columns: minmax(0, 1fr); }
  .fee-band .fee-item { border-right: 0; }
  .about-media { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-3); }
  .stat-tile { padding: var(--space-4); }
  .stat-tile strong { font-size: 1.75rem; }

  .investor-grid .investor-card { flex-direction: column; }
  .investor-grid { grid-auto-rows: auto; }
  .investor-grid .investor-card .service-media { flex: none; aspect-ratio: 16 / 10; }
  .leader-card .leader-actions { flex-wrap: wrap; }
  .leader-card .leader-actions .btn-arrow { margin-left: 0; flex: 1 0 100%; }

  .glance-card dd { font-size: 1.125rem; }
  .glance-card .glance-title { flex-direction: column; align-items: flex-start; gap: var(--space-1); }
  .org-trust img { width: 140px; }
  .org-trust strong { font-size: var(--fs-h4); }

  .strategy-list li { padding: var(--space-5); }
  .contact-panel li { gap: var(--space-3); }
  .eligibility-gate { padding: var(--space-6); }

  .site-footer .footer-grid { grid-template-columns: minmax(0, 1fr); }
  .site-footer .footer-bottom { flex-direction: column; align-items: center; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
