/* ==========================================================================
   OTOFOL — Responsive
   Breakpoints: 1920 / 1600 / 1400 / 1200 / 992 / 768 / 576 / 425 / 375 / 320
   ========================================================================== */

/* Ultra-wide: cap line-length growth, let container breathe */
@media (min-width:1921px){
  :root{ --container: 1440px; }
  body{ font-size:17px; }
}

/* 1600 - large desktop */
@media (max-width:1600px){
  :root{ --container: 1160px; }
}

/* 1400 */
@media (max-width:1400px){
  .bento{ grid-template-columns:repeat(2,1fr); }
  .bento .card{ grid-column: span 1 !important; }
}

/* 1200 - small laptop */
@media (max-width:1200px){
  :root{ --container: 100%; }
  .container{ padding-inline:32px; }
  .pricing-grid{ grid-template-columns:repeat(2,1fr); }
  .price-card.is-popular{ transform:none; }
  .advantages{ grid-template-columns:repeat(3,1fr); }
  .testimonials{ grid-template-columns:repeat(2,1fr); }
  .values-grid{ grid-template-columns:repeat(2,1fr); }
  .ref-grid{ grid-template-columns:repeat(3,1fr); }
}

/* 992 - tablet landscape */
@media (max-width:992px){
  .navbar__links{ display:none; }
  .navbar__toggle{ display:flex; }
  .hero__inner{ grid-template-columns:1fr; }
  .hero__copy{ text-align:center; }
  .hero__copy p.lead{ margin-inline:auto; }
  .hero__cta{ justify-content:center; }
  .hero__trust{ justify-content:center; }
  .ticket{ max-width:480px; margin-inline:auto; }
  .stats{ grid-template-columns:repeat(2,1fr); }
  .contact-grid{ grid-template-columns:1fr; }
  .footer__grid{ grid-template-columns:1fr 1fr; }
  .section{ padding-block:88px; }
}

/* 768 - tablet portrait */
@media (max-width:768px){
  .advantages{ grid-template-columns:repeat(2,1fr); }
  .testimonials{ grid-template-columns:1fr; }
  .values-grid{ grid-template-columns:1fr; }
  .ref-grid{ grid-template-columns:repeat(2,1fr); }
  .form-row{ grid-template-columns:1fr; }
  table.compare{ min-width:680px; }
  .platforms{ flex-wrap:wrap; }
  .platform-pill{ min-width:120px; }
  .section-head{ margin-inline:auto; text-align:center; }
}

/* 576 - large phone */
@media (max-width:576px){
  .container{ padding-inline:20px; }
  .section{ padding-block:72px; }
  .stats{ grid-template-columns:1fr 1fr; }
  .pricing-grid{ grid-template-columns:1fr; }
  .price-card.is-popular{ order:-1; }
  .footer__grid{ grid-template-columns:1fr; gap:36px; }
  .footer__bottom{ flex-direction:column; align-items:flex-start; }
  .btn{ font-size:14px; padding:13px 22px; }
  h1{ font-size:2.3rem; }
  .cta-banner{ padding:44px 24px; }
  .live-chat-bubble span{ display:none; }
  .live-chat-bubble{ padding:14px; }
  .back-to-top{ left:16px; bottom:16px; width:42px; height:42px; }
}

/* 425 */
@media (max-width:425px){
  .stats{ grid-template-columns:1fr 1fr; }
  .stat{ padding:26px 12px; }
  .advantages{ grid-template-columns:1fr 1fr; }
  .faq-toolbar{ flex-direction:column; align-items:stretch; }
  .faq-filters{ justify-content:flex-start; }
  .ticket{ padding:20px; }
}

/* 375 */
@media (max-width:375px){
  h1{ font-size:2.05rem; }
  .plate{ font-size:11.5px; padding:6px 12px 6px 9px; }
  .card{ padding:24px; }
}

/* 320 - smallest supported phone */
@media (max-width:320px){
  .container{ padding-inline:16px; }
  .stats{ grid-template-columns:1fr; }
  .advantages{ grid-template-columns:1fr; }
  .ref-grid{ grid-template-columns:1fr; }
  .navbar__brand img{ height:22px; }
  .hero{ padding-top: calc(var(--nav-h) + 56px); }
}