/* ==========================================================
   KAKABEKA — Responsive (v2)
   ========================================================== */

@media (max-width: 1360px){
  #main-nav ul{ gap:20px; }
  #main-nav a{ font-size:11px; letter-spacing:.05em; }
  .brand-word small{ display:none; }
  .header-actions .btn-sm{ padding:10px 16px; font-size:10px; }
}

@media (max-width: 1180px){
  #main-nav ul{ gap:15px; }
  #main-nav a{ font-size:10.5px; letter-spacing:.03em; }
  .brand-word strong{ font-size:16px; }
  .brand-mark-wrap, .brand-mark{ width:44px; }
}

@media (max-width: 1080px){
  .cols-4{ grid-template-columns:repeat(2,1fr); }
  .cols-5{ grid-template-columns:repeat(3,1fr); }
  .about-grid{ grid-template-columns:1fr; gap:64px; }
  .about-media{ max-width:440px; margin:0 auto; }
  .contact-grid{ grid-template-columns:1fr; gap:48px; }
  .industry-grid{ grid-template-columns:repeat(2,1fr); }
  .industry-card.wide{ grid-column:span 2; aspect-ratio:21/9; }
  .section-watermark{ width:400px; }
}

@media (max-width: 1024px){
  #main-nav{
    position:fixed; top:70px; left:0; right:0; bottom:0;
    background:rgba(0,0,0,.92);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    transform:translateX(100%);
    transition:transform .45s var(--ease);
    padding:40px 32px; overflow-y:auto; z-index:999;
  }
  [data-theme="light"] #main-nav{ background:rgba(245,242,235,.96); }
  #main-nav.is-open{ transform:translateX(0); }
  #main-nav ul{ flex-direction:column; gap:4px; }
  #main-nav a{ display:block; padding:17px 0; font-size:15px !important; letter-spacing:.08em !important; border-bottom:1px solid var(--line); white-space:normal; }
  #nav-toggle{ display:flex; }
  .header-actions .btn{ display:none; }
  .cols-3{ grid-template-columns:repeat(2,1fr); }
  .cols-5{ grid-template-columns:repeat(2,1fr); }
  .stat-grid{ grid-template-columns:repeat(2,1fr); }
  .hero-crest{ width:150px; height:150px; }
  .hero-logo{ width:118px; }
}

@media (max-width: 640px){
  .container{ padding:0 20px; }
  .section{ padding:78px 0; }
  .cols-4, .cols-3, .cols-5{ grid-template-columns:1fr; }
  .industry-grid{ grid-template-columns:1fr 1fr; gap:14px; }
  .industry-card span{ font-size:14px; padding:16px 16px; }
  .industry-card.wide{ grid-column:span 2; }

  .hero{ padding:120px 0 90px; }
  .hero-content h1{ font-size:31px; }
  .hero-sub{ font-size:15px; }
  .hero-actions{ flex-direction:column; align-items:stretch; }
  .hero-actions .btn{ width:100%; }
  .hero-crest{ width:130px; height:130px; margin-bottom:20px; }
  .hero-logo{ width:100px; }

  .marquee{ padding:15px 0; }
  .marquee-track span{ font-size:11.5px; }

  .form-row{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr; gap:38px; }
  .footer-logo{ width:190px; }
  .scroll-cue{ display:none; }

  .timeline::before{ left:23px; }
  .timeline li{ gap:16px; padding-bottom:38px; }
  .tl-index{ flex:0 0 48px; height:48px; font-size:12px; }

  .about-media-badge{ left:10px; bottom:14px; padding:10px 14px; }
  .about-media-badge img{ width:30px; }
  .about-media-badge span{ font-size:9.5px; }
  .frame-corner{ width:44px; height:44px; }

  .parallax-section{ background-attachment:scroll; padding:110px 0; }
  .partnership-crest{ width:64px; }

  .brand-word small{ display:none; }
  .brand-mark-wrap{ width:42px; height:42px; }
  .brand-mark{ width:42px; }
  .header-inner{ gap:12px; }

  .contact-form{ padding:28px 20px; }
  .stat-grid{ gap:18px; }
  .stat-num{ font-size:29px; }
  .testimonial-slide p{ font-size:17px; }
  .testimonial-track{ min-height:230px; }
  .quote-mark{ font-size:90px; top:-14px; }
  .cap-card{ padding:30px 22px; }
  .compliance-statement{ padding:32px 22px; }
  .compliance-statement p{ font-size:16px; }
  .section-watermark{ width:280px; opacity:.04; }
  .bg-orb{ filter:blur(70px); }
  .orb-1{ width:300px; height:300px; }
  .orb-2{ width:260px; height:260px; }
  .orb-3{ width:280px; height:280px; }
}

@media (max-width: 420px){
  .brand-word strong{ font-size:15px; }
  .btn{ padding:14px 24px; font-size:12px; }
  .eyebrow{ font-size:10.5px; letter-spacing:.22em; }
  h2{ font-size:25px; }
  .industry-grid{ grid-template-columns:1fr; }
  .industry-card.wide{ grid-column:span 1; aspect-ratio:16/10; }
  .testimonial-track{ min-height:260px; }
  .hero-content h1{ font-size:27px; }
}
