/* ═══════════════════════════════════════════════════════
   Plutinos Technologies — Global Responsive Overrides
   Loaded via Nav.dc.html helmet → applied to every page
   Targets data-r="" attributes added to key elements
═══════════════════════════════════════════════════════ */

/* Hamburger: hidden on desktop */
.r-hamburger { display: none; }

/* ═══════════════════ TABLET: 768 – 1023px ═══════════ */
@media (max-width: 1023px) {
  [data-r="hero-grid"]   { grid-template-columns: 1fr !important; gap: 32px !important; }
  [data-r="col3"]        { grid-template-columns: 1fr 1fr !important; }
  [data-r="col4"]        { grid-template-columns: 1fr 1fr !important; }
  [data-r="footer-grid"] { grid-template-columns: 1fr 1fr !important; gap: 28px !important; }
  #hero-visual, #hero-main-canvas { display: none; }
}

/* ═══════════════════ NAV: ≤ 900px ═══════════════════ */
@media (max-width: 900px) {
  .r-nav-links { display: none !important; }
  .r-nav-cta   { display: none !important; }
  .r-hamburger { display: flex !important; }
}

/* ═══════════════════ MOBILE: ≤ 767px ════════════════ */
@media (max-width: 767px) {
  body { overflow-x: hidden; }

  /* Section & footer horizontal padding */
  section { padding-left: 20px !important; padding-right: 20px !important; }
  footer  { padding-left: 20px !important; padding-right: 20px !important; }

  /* Nav inner horizontal padding */
  .r-nav-inner { padding-left: 20px !important; padding-right: 20px !important; }

  /* Hero sections: reduce top padding */
  [data-r="hero-section"] { padding-top: 92px !important; padding-bottom: 52px !important; }

  /* Hide 3D visuals (performance on mobile) */
  #hero-visual, #hero-main-canvas { display: none !important; }
  #hero-bg-canvas { opacity: 0.25 !important; }

  /* Grids → single column */
  [data-r="hero-grid"]      { grid-template-columns: 1fr !important; gap: 0 !important; }
  [data-r="col3"]           { grid-template-columns: 1fr !important; }
  [data-r="col2"]           { grid-template-columns: 1fr !important; gap: 16px !important; }
  [data-r="col2-content"]   { grid-template-columns: 1fr !important; gap: 28px !important; }
  [data-r="contact-layout"] { grid-template-columns: 1fr !important; gap: 28px !important; }
  [data-r="form-row"]       { grid-template-columns: 1fr !important; }

  /* 4-col keeps 2-col on mobile */
  [data-r="col4"] { grid-template-columns: 1fr 1fr !important; }

  /* Footer: keep 2-col, tighten gap */
  [data-r="footer-grid"] { grid-template-columns: 1fr 1fr !important; gap: 20px !important; }

  /* Service overview cards: block stacked */
  [data-r="service-card-grid"] { display: block !important; }

  /* Footer bottom bar: stack */
  [data-r="footer-bottom"] {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 8px !important;
  }

  /* Process connector line */
  [data-r="process-line"] { display: none !important; }

  /* Hero text + CTA buttons */
  [data-r="hero-grid"] > div:first-child > div[style*="flex-wrap"] {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

/* ═══════════════════ SMALL PHONE: ≤ 480px ═══════════ */
@media (max-width: 480px) {
  [data-r="col4"]        { grid-template-columns: 1fr !important; }
  [data-r="footer-grid"] { grid-template-columns: 1fr !important; }
}
