/* ================ RESPONSIVE ================ */

@media (max-width: 1180px) {
  .hero-inner { grid-template-columns: 1fr; gap: 60px; }
  .hero-right { max-width: 640px; margin: 0 auto; width: 100%; }
  .about .section-inner { grid-template-columns: 1fr; gap: 60px; }
  .composition { height: 460px; max-width: 560px; margin: 0 auto; }
  .feat-grid { grid-template-columns: repeat(2, 1fr); }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1.6fr 1fr 1fr; row-gap: 50px; }
  .newsletter { grid-column: 1 / -1; max-width: 500px; }
}

@media (max-width: 900px) {
  .site-header, .site-header.scrolled { padding: 16px 20px; }
  .nav { display: none; }
  .menu-toggle { display: inline-flex; }
  .hero { padding: 120px 20px 60px; }
  .hero-foot { display: none; }
  .hero-stats { gap: 20px; }
  .hero-stats > div .num { font-size: 24px; }
  .section-inner { padding: 100px 20px; }
  .section-head { margin-bottom: 56px; }
  .manifesto li { grid-template-columns: 60px 1fr; gap: 16px; }
  .manifesto li p { grid-column: 2; max-width: none; }
  .mt-head, .mt-row { grid-template-columns: 1.4fr 1fr .8fr 1fr; padding: 14px 16px; gap: 10px; }
  .hide-sm { display: none !important; }
  .footer-grid { grid-template-columns: 1fr 1fr; padding: 60px 20px 40px; gap: 40px; }
  .foot-brand { grid-column: 1 / -1; }
  .newsletter { grid-column: 1 / -1; }
  .foot-bottom { padding: 20px; flex-direction: column; gap: 8px; text-align: center; }
  .cursor-dot, .cursor-ring { display: none; }
  .float-chip { display: none; }
  .legal-main { padding: 120px 20px 60px; }
}

@media (max-width: 640px) {
  .feat-grid { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: 1fr; }
  .composition { height: auto; display: flex; flex-direction: column; gap: 16px; }
  .composition .comp-card { position: static; width: 100%; }
  .hero-stats { grid-template-columns: 1fr 1fr 1fr; }
  .review-card { padding: 28px; }
  .review-card > p { font-size: 18px; }
  .dash-portfolio { grid-template-columns: 1fr; gap: 16px; }
  .dash-assets { flex-direction: row; flex-wrap: wrap; }
  .btn { padding: 12px 18px; font-size: 13.5px; }
  .mt-head, .mt-row { grid-template-columns: 1.4fr 1fr .8fr; }
  .mt-vol { display: none; }
  .marquee-track span { font-size: 40px; }
  .about-list li { grid-template-columns: 34px 1fr; font-size: 14.5px; }
}
