/* =========================================================
   HAZWANN. — responsive.css
   Breakpoints: 1440 / 1024 / 768 / 430 / 390 / 360
========================================================= */

/* ----- 1024px: tighten hero + two-col ----- */
@media (max-width:1024px){
  .container{ padding:0 20px; }

  .nav-links{ display:none; }
  .nav-toggle{ display:flex; }

  .hero .container{
    grid-template-columns:1fr;
    gap:48px;
  }
  .hero-copy{ order:2; }
  .card-stage{ order:1; }
  .hero{ padding-top:calc(var(--nav-h) + 32px); text-align:left; }

  .two-col{ grid-template-columns:1fr; gap:32px; }

  .skills-grid{ grid-template-columns:repeat(2,1fr); }

  .mission-card{
    grid-template-columns:60px 1fr;
  }
  .mission-status{ grid-column:1/-1; }

  .hobby-row{ grid-template-columns:repeat(2,1fr); }

  .main-game{ grid-template-columns:1fr; }
  .game-grid{ grid-template-columns:repeat(2,1fr); }

  .contact-grid{ grid-template-columns:1fr; gap:40px; }

  .status-cards{ grid-template-columns:1fr; }
  .stats-grid{ grid-template-columns:repeat(3,1fr); }

  .footer-top{ flex-direction:column; gap:32px; }
}

/* ----- 768px: timeline collapses to single column ----- */
@media (max-width:768px){
  .section{ padding:64px 0; }
  .section-tight{ padding:48px 0; }

  .timeline-track{ left:20px; transform:none; }
  .timeline-item{
    grid-template-columns:40px 1fr;
    margin-bottom:40px;
  }
  .timeline-dot{ grid-column:1; justify-self:start; margin-left:12px; }
  .timeline-item:nth-child(odd) .timeline-card,
  .timeline-item:nth-child(even) .timeline-card{
    grid-column:2;
    text-align:left;
    transform:translateY(30px);
  }
  .timeline-item.is-visible:nth-child(odd) .timeline-card,
  .timeline-item.is-visible:nth-child(even) .timeline-card{
    transform:translate(0,0);
  }

  .gaming-stats{ grid-template-columns:1fr; }
  .game-grid{ grid-template-columns:repeat(2,1fr); }

  .cursor-dot{ display:none; }
}

/* ----- 430px / 390px / 360px: mobile ----- */
@media (max-width:430px){
  .container{ padding:0 18px; }

  .hero{ min-height:auto; padding-top:calc(var(--nav-h) + 24px); padding-bottom:48px; }
  .hero-cta{ flex-direction:column; }
  .hero-cta .btn{ justify-content:center; }

  .stats-grid{ grid-template-columns:1fr; }
  .stat{ border-left:none; border-top:1px solid var(--border); }
  .stat:first-child{ border-top:none; }

  .skills-grid{ grid-template-columns:1fr; }
  .hobby-row{ grid-template-columns:1fr; }

  .mission-card{ padding:24px 20px; }
  .mission-id{ font-size:28px; }

  .game-grid{ grid-template-columns:1fr; }

  .status-cards{ grid-template-columns:1fr; }

  .closing-cta{ flex-direction:column; align-items:stretch; }
  .closing-cta .btn{ justify-content:center; }

  .footer-cols{ flex-direction:column; gap:28px; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; }

  .mobile-menu a{ font-size:26px; }
}

@media (max-width:390px){
  .hero-copy h1{ font-size:44px; }
  .page-header h1{ font-size:38px; }
  .closing h2{ font-size:30px; }
  .target-block h2{ font-size:40px; }
}

/* ensure no horizontal scroll anywhere */
html, body{ max-width:100%; overflow-x:hidden; }
