/* ==========================================================================
   XONBARY — Responsive rules
   Breakpoints: >=1200 desktop (default in style.css), 992-1199 laptop,
   768-991 tablet, <768 mobile
   ========================================================================== */

/* ---- Laptop / small desktop ---- */
@media (max-width: 1199px){
  .grid-4{ grid-template-columns:repeat(3,1fr); }
  .footer-grid{ grid-template-columns:1.2fr 1fr 1fr; }
  .footer-grid .footer-col:last-child{ grid-column:1 / -1; }
}

/* ---- Tablet ---- */
@media (max-width: 991px){
  .section{ padding:70px 0; }
  :root{ --nav-h:74px; }

  .main-nav{
    position:fixed; top:74px; left:0; right:0; bottom:0;
    background:var(--ink);
    flex-direction:column; align-items:stretch;
    padding:20px 24px 40px;
    overflow-y:auto;
    transform:translateX(100%);
    transition:transform .3s ease;
  }
  .main-nav.is-open{ transform:translateX(0); }
  .main-nav > ul{ flex-direction:column; align-items:stretch; gap:0; }
  .main-nav a{ padding:16px 6px; border-bottom:1px solid var(--steel-line-dark); border-radius:0; }
  .main-nav a.active::after{ display:none; }
  .dropdown{
    position:static; opacity:1; visibility:visible; transform:none; box-shadow:none;
    background:var(--ink-soft); display:none; margin:0 0 8px;
  }
  .has-dropdown.is-open .dropdown{ display:block; }
  .dropdown a{ color:#C9D6D5; }
  .dropdown a:hover{ background:rgba(255,255,255,.06); color:var(--amber); }
  .nav-cta{ margin:16px 0 0; }
  .nav-toggle{ display:flex; }

  .grid-2,.grid-3,.grid-4{ grid-template-columns:repeat(2,1fr); }
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .legal-layout{ grid-template-columns:1fr; }
  .legal-nav{ position:static; margin-bottom:36px; }
  .legal-nav ul{ display:flex; flex-wrap:wrap; gap:6px; }
  .form-grid{ grid-template-columns:1fr; }
  .cta-band{ flex-direction:column; align-items:flex-start; padding:40px; }
  .spec-strip{ grid-template-columns:repeat(2,1fr); row-gap:24px; }
  .spec-item:nth-child(2n){ border-right:none; }
}

/* ---- Mobile ---- */
@media (max-width: 767px){
  .container{ padding:0 18px; }
  .section{ padding:56px 0; }
  h2.section-title{ font-size:1.7rem; }

  .hero{ min-height:92vh; }
  .hero-inner{ padding-top:150px; padding-bottom:44px; }
  .hero-actions .btn{ width:100%; }
  .hero-actions{ flex-direction:column; }

  .breadcrumb-bar{ padding-top:110px; }
  .page-hero{ padding-bottom:60px; }

  .grid-2,.grid-3,.grid-4{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr; gap:34px; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; }

  .stat-card{ border-right:none; border-bottom:1px solid var(--steel-line-dark); padding:24px 10px; }
  .stat-card:last-child{ border-bottom:none; }
  .brand-strip{ gap:30px; }
  .brand-chip .name{ font-size:1.4rem; }

  .cta-band{ padding:32px 24px; border-radius:16px; }
  .wa-float{ width:52px; height:52px; right:16px; bottom:16px; }
  .to-top{ right:16px; bottom:80px; width:42px; height:42px; }

  .map-wrap iframe{ height:300px; }
  .scroll-cue{ display:none; }
}

@media (max-width: 420px){
  .spec-strip{ grid-template-columns:1fr; }
  .spec-item{ border-right:none; padding-right:0; border-bottom:1px solid rgba(255,255,255,.18); padding-bottom:16px; }
  .spec-item:last-child{ border-bottom:none; }
}

/* Print (basic, e.g. for printing an enquiry form) */
@media print{
  .site-header,.site-footer,.wa-float,.to-top,.breadcrumb-bar,.hero-media{ display:none !important; }
}
