/* ── RESPONSIVE OVERRIDES ─────────────────────────────────────── */
/* Breakpoints: 1024px | 768px | 480px                           */

/* ────────────────────────── 1024px — Tablet landscape ────────── */
@media (max-width: 1024px) {

  .container { padding: 0 28px }
  .section   { padding: 72px 0 }

  /* Shared */
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr }

  /* index */
  .hero-content   { padding: 140px 28px 80px }
  .offerings-grid { grid-template-columns: 1fr 1fr }
  .testi-grid     { grid-template-columns: 1fr 1fr }

  /* about */
  .mgmt-grid { grid-template-columns: 1fr 1fr }

  /* products */
  .products-grid { grid-template-columns: 1fr 1fr }
  .sector-grid   { grid-template-columns: repeat(2,1fr) }

  /* claims */
  .claims-process         { grid-template-columns: 1fr 1fr; gap: 32px }
  .claims-process::before { display: none }
  .industries-grid        { grid-template-columns: 1fr 1fr }

  /* services */
  .steps-row { grid-template-columns: repeat(3,1fr) }

  /* responsibility */
  .resp-grid    { grid-template-columns: 1fr 1fr }
  .sustain-grid { grid-template-columns: 1fr 1fr }
  .stake-row    { grid-template-columns: 1fr 1fr }
}

/* ────────────────────────── 768px — Tablet / large phone ──────── */
@media (max-width: 768px) {

  /* GLOBALS */
  .container { padding: 0 20px }
  .section   { padding: 56px 0 }

  /* NAV — full-width, always solid on mobile */
  .nav-floating {
    width: 100%;
    left: 0;
    top: 0;
    transform: none;
    border-radius: 0;
    max-width: 100%;
    background: rgba(255,255,255,0.97) !important;
    border-color: var(--border) !important;
    box-shadow: 0 2px 16px rgba(0,0,0,0.08);
  }
  #navLogo { filter: none !important }
  .nav-link { color: #444 !important }
  .nav-link:hover  { background: var(--red-light) !important; color: var(--red) !important }
  #mobileMenu { border-top-color: var(--border) !important }

  /* PAGE HERO */
  .page-hero   { padding: 100px 20px 56px }
  .page-hero p { font-size: 15px }

  /* FOOTER */
  .footer-grid   { grid-template-columns: 1fr 1fr; gap: 24px }
  .footer-bottom { flex-direction: column; gap: 10px; text-align: center }
  .cert-badges   { justify-content: center; flex-wrap: wrap }

  /* ── index.php ───────────────────────────── */
  .hero-content   { width: 100%; padding: 110px 20px 64px }
  .who-grid       { grid-template-columns: 1fr; gap: 40px }
  .who-img-badge  { right: 0; bottom: -14px }
  .who-stats      { grid-template-columns: 1fr 1fr }
  .offerings-grid { grid-template-columns: 1fr }
  .why-grid       { grid-template-columns: 1fr }
  .testi-grid     { grid-template-columns: 1fr }
  .vision-inner   { padding: 60px 20px }

  /* ── about.php ───────────────────────────── */
  .mission-grid { grid-template-columns: 1fr }
  .values-grid  { grid-template-columns: 1fr 1fr }
  .reg-grid     { grid-template-columns: 1fr }
  .team-grid    { grid-template-columns: 1fr }
  .mgmt-grid    { grid-template-columns: 1fr }

  /* ── services.php ────────────────────────── */
  .service-block         { grid-template-columns: 1fr; gap: 32px }
  .service-block.reverse { direction: ltr }
  .steps-row             { grid-template-columns: 1fr 1fr; gap: 24px }
  .steps-row::before     { display: none }
  .why-row               { grid-template-columns: 1fr }

  /* ── products.php ────────────────────────── */
  .products-tabs { width: 100%; justify-content: center; border-radius: 16px }
  .tab-btn       { padding: 9px 18px; font-size: 13px }
  .products-grid { grid-template-columns: 1fr }
  .life-grid     { grid-template-columns: 1fr }
  .sector-grid   { grid-template-columns: 1fr 1fr }

  /* ── claims.php ──────────────────────────── */
  .claims-process         { grid-template-columns: 1fr 1fr; gap: 28px }
  .claims-process::before { display: none }
  .risk-grid              { grid-template-columns: 1fr }
  .industries-grid        { grid-template-columns: 1fr 1fr }
  .benefits-grid          { grid-template-columns: 1fr }

  /* ── compliance.php ──────────────────────── */
  .reg-table      { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch }
  .cert-cards     { grid-template-columns: 1fr }
  .download-grid  { grid-template-columns: 1fr }
  .gov-principles { grid-template-columns: 1fr }

  /* ── responsibility.php ──────────────────── */
  .resp-grid    { grid-template-columns: 1fr }
  .csr-grid     { grid-template-columns: 1fr }
  .sustain-grid { grid-template-columns: 1fr 1fr }
  .stake-row    { grid-template-columns: 1fr 1fr }

  /* ── contact.php ─────────────────────────── */
  .contact-grid { grid-template-columns: 1fr }
  .form-row     { grid-template-columns: 1fr }
  .offices-grid { grid-template-columns: 1fr }
  .form-card    { padding: 28px 20px }

  /* ── Inline-style grid overrides ─────────── */
  /* 1fr 1fr two-column layouts → single column */
  [style*="grid-template-columns:1fr 1fr"],
  [style*="grid-template-columns: 1fr 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  /* 1fr 1.2fr (contact-grid backup) */
  [style*="grid-template-columns:1fr 1.2fr"],
  [style*="grid-template-columns: 1fr 1.2fr"] {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  /* 1fr auto (CTA banner) */
  [style*="grid-template-columns:1fr auto"],
  [style*="grid-template-columns: 1fr auto"] {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  /* repeat(3,1fr) inline */
  [style*="grid-template-columns:repeat(3,1fr)"],
  [style*="grid-template-columns: repeat(3,1fr)"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

/* ────────────────────────── 480px — Small phones ───────────────── */
@media (max-width: 480px) {

  .container { padding: 0 16px }
  .section   { padding: 44px 0 }
  .page-hero { padding: 88px 16px 44px }

  /* FOOTER */
  .footer-grid { grid-template-columns: 1fr }

  /* INDEX */
  .hero-content { padding: 96px 16px 56px }
  .hero-cta     { flex-direction: column }
  .hero-cta .btn-white,
  .hero-cta .btn-white-outline { width: 100%; justify-content: center }
  .hero-trust   { gap: 6px }
  .who-stats    { grid-template-columns: 1fr }
  .cert-logos   { gap: 24px }

  /* ABOUT */
  .values-grid { grid-template-columns: 1fr 1fr }

  /* SERVICES */
  .steps-row { grid-template-columns: 1fr }
  .sb-num    { font-size: 3rem }

  /* PRODUCTS */
  .products-tabs { flex-direction: column; align-items: stretch; border-radius: 16px }
  .tab-btn       { text-align: center }
  .sector-grid   { grid-template-columns: 1fr 1fr }

  /* CLAIMS */
  .claims-process  { grid-template-columns: 1fr }
  .industries-grid { grid-template-columns: 1fr }

  /* RESPONSIBILITY */
  .sustain-grid { grid-template-columns: 1fr 1fr }
  .stake-row    { grid-template-columns: 1fr 1fr }
}
