/* ==========================================================================
   ASIA DOWNSTREAM SPACE SUMMIT 2026 — RESPONSIVE OVERRIDES
   ========================================================================== */

/* --------------------------------------------------------------------------
   Large desktops / wide screens
   -------------------------------------------------------------------------- */
@media (min-width: 1400px) {
  .container { max-width: 1260px; }
}

/* --------------------------------------------------------------------------
   Desktop (>=992px) — hide the mobile nav toggler, nav links show inline
   -------------------------------------------------------------------------- */
@media (min-width: 992px) {
  .navbar-toggler-custom { display: none; }
}

/* --------------------------------------------------------------------------
   Laptops / small desktops (<=1199.98px)
   -------------------------------------------------------------------------- */
@media (max-width: 1199.98px) {
  :root { --section-pad: 5.5rem; }

  .hv-scene { gap: 1rem; }
  .hv-disc-label { font-size: 0.66rem; }
}

/* --------------------------------------------------------------------------
   Tablets (<=991.98px)
   -------------------------------------------------------------------------- */
@media (max-width: 991.98px) {
  :root { --section-pad: 4.5rem; }

  .navbar-collapse {
    background: var(--navy-900);
    margin-top: 1rem;
    padding: 1.5rem;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-soft);
  }

  /* On mobile the logo stays visible in the bar at all times */
  .site-navbar .navbar-brand {
    position: static;
    transform: none;
    opacity: 1;
    visibility: visible;
  }

  .nav-link-custom { padding: 0.75rem 0.5rem !important; }
  .nav-link-custom::after { display: none; }
  .nav-link-custom.nav-link-gsi { display: inline-block; padding: 0.5rem 1rem !important; margin: 0.25rem 0; }
  .btn-nav-cta { margin-top: 1rem; display: inline-flex; }

  #hero { min-height: auto; }
  .scroll-cue { display: none; }

  .hero-grid { flex-direction: column; min-height: auto; }
  .hero-content {
    padding: 8.5rem 0 3rem;
    text-align: center;
    align-items: center;
  }
  .hero-meta { align-items: center; }
  .hero-theme-title { max-width: 560px; margin-left: auto; margin-right: auto; }
  .hero-lede { margin-left: auto; margin-right: auto; }

  .hero-visual { flex: 0 0 auto; padding: 3rem 0; }
  .hv-scene { transform: scale(0.9); }

  .vision-visual { margin-top: 3rem; }
  .orbit-scene { max-width: 420px; }
  .orbit-badge { width: 40px; height: 40px; font-size: 0.95rem; }

  .layer-grid::before { display: none; }
  .layer-card { margin-bottom: 2.5rem; }
  .layer-card:last-child { margin-bottom: 0; }

  .colocated-map-bg { display: none; }
  .contact-block, .summit-recap { padding-top: 2rem; margin-top: 2rem; }

  .footer-inner { flex-direction: column; text-align: center; }
  .footer-legal { justify-content: center; }
  .contact-social { justify-content: flex-start; }
}

/* --------------------------------------------------------------------------
   Mobile landscape / large phones (<=767.98px)
   -------------------------------------------------------------------------- */
@media (max-width: 767.98px) {
  .section { padding: 3.75rem 0; }

	.hero-logo {display: none;}
  .hero-logo img { width: 200px; }
  .hero-content { padding-top: 7.5rem; }

  .hv-scene { flex-direction: column; transform: none; gap: 2rem; }
  .hv-stack::before { top: 35px; bottom: 0; left:0; width: 100%; height: 2px; background: linear-gradient(90deg, rgba(240,169,110,0) 0%, rgba(240,169,110,0.55) 20%, rgba(240,169,110,0.55) 80%, rgba(240,169,110,0) 100%); }
  .hv-stack { flex-direction: row; align-items: flex-end; gap: 1.25rem; }
  .hv-disc { flex-direction: column; }
  .hv-disc:not(:last-child) { margin-bottom: 0; }
  .hv-disc-line { display: none; }
  .hv-disc-label { white-space: normal; text-align: center; margin-top: 0.5rem; }
	
	.hv-earth-wrap {margin: 0 3rem 0 0;}

  .bar-chart { gap: 1.5rem; height: 170px; }
  .bar-shape { width: 46px; }
}

/* --------------------------------------------------------------------------
   Small phones (<=575.98px)
   -------------------------------------------------------------------------- */
@media (max-width: 575.98px) {
  .section-title { font-size: 1.55rem; }

  .hero-theme-title { font-size: 1.6rem; }
  .hero-meta { gap: 0.65rem; }
  .btn-hero-cta { width: 100%; justify-content: center; }

  .hv-earth-wrap { width: 150px; }
  .hv-disc-shapecol { width: 58px; }
  .hv-node { width: 46px; height: 46px; font-size: 1.05rem; }
  .hv-disc-label { font-size: 0.6rem; }

  .pillar-card, .focus-card { padding: 1.75rem 1.4rem; }
  .icon-badge { width: 48px; height: 48px; font-size: 1.25rem; }

  .chart-panel { padding: 1.5rem 1.25rem; }

  .stat-inline { flex-basis: 45%; padding-right: 1rem; }
  .stat-inline:not(:last-child)::after { display: none; }

  .back-to-top { right: 1.1rem; bottom: 1.1rem; width: 44px; height: 44px; font-size: 1rem; }

  .geosmart-logo { font-size: 1.4rem; }
}

/* --------------------------------------------------------------------------
   Extra small phones (<=380px)
   -------------------------------------------------------------------------- */
@media (max-width: 380px) {
  .hero-logo img { width: 180px; }
  .brand-text { font-size: 0.82rem; }
  .bar-chart { gap: 1rem; }
  .bar-shape { width: 38px; }
}

/* --------------------------------------------------------------------------
   Accessibility: reduced motion
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}
