/* Responsive overrides — mobile-first refinements */

@media (max-width: 1199.98px) {
  .bento .tile { grid-column: span 6; }
  .bento .tile.wide { grid-column: span 12; }
  .process-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 991.98px) {
  .section { padding: 72px 0; }
  .nav-main { display: none; }
  .mega-menu { display: none; }
  .hero { padding: 56px 0 72px; }
  .hero-visual { margin-top: 40px; }
  .float-card.fc-1 { top: 10px; left: 0; }
  .float-card.fc-2 { right: 0; }
  .float-card.fc-3 { left: 0; }
  .float-card.fc-4 { right: 0; }
  .cta-split .cta-left { padding: 40px 32px; }
  .cta-split .cta-right { padding: 32px; }
  .service-block .order-lg-1 { order: 0; }
  .work-card { flex: 0 0 88%; }
}

@media (max-width: 767.98px) {
  body { font-size: 16px; }
  .section { padding: 56px 0; }
  .hero h1 { font-size: clamp(38px, 8vw, 46px); }
  .hero-lede { font-size: 17px; }
  .bento { gap: 14px; }
  .bento .tile, .bento .tile.wide { grid-column: span 12; }
  .process-grid { grid-template-columns: repeat(2, 1fr); }
  .journey-step { min-width: 45%; }
  .float-card { min-width: 180px; padding: 10px 12px; font-size: 12px; }
  .float-card.fc-2, .float-card.fc-4 { display: none; }
  .testimonial-slide { padding: 28px 22px; }
  .cta-split .cta-left, .cta-split .cta-right { padding: 28px 22px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  .cookie-banner { left: 12px; right: 12px; bottom: 12px; }
  .page-hero { padding: 64px 0 40px; }
}

@media (max-width: 575.98px) {
  .process-grid { grid-template-columns: 1fr; }
  .trust-logos { gap: 14px 20px; }
  .trust-logo { font-size: 15px; padding: 8px 10px; }
}

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
  .reveal { opacity: 1; transform: none; }
}
