/* ============================================================
   NEXUS — Responsive System  ·  responsive.css
============================================================ */

/* ---------- ≤ 1200px ---------- */
@media (max-width:1200px){
  .float-card{display:none}
  .mc-2{display:none}
  .footer-top{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2rem}
}

/* ---------- ≤ 1024px ---------- */
@media (max-width:1024px){
  .hero-inner{grid-template-columns:1fr;text-align:left;gap:3.4rem}
  .hero-visual{order:-1;display:none}
  .hero{min-height:auto;padding-top:calc(var(--nav-h) + 5rem);padding-bottom:5.5rem}
  .scroll-hint{display:none}
  .bento{grid-template-columns:repeat(4,1fr)}
  .span-4{grid-column:span 4}.span-3{grid-column:span 2}.span-2{grid-column:span 2}
  .values-grid{grid-template-columns:repeat(2,1fr)}
  .values-grid .v-card:nth-child(even){transform:none}
  .process{grid-template-columns:repeat(3,1fr);row-gap:2.6rem}
  .process::before{display:none}
  .sol-featured{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr 1fr;gap:2.6rem}
  .wm-num{display:none}
}

/* ---------- ≤ 900px : navigation switches to mobile ---------- */
@media (max-width:900px){
  .nav-menu{display:none}
  .nav-toggle{display:flex}
  .split{grid-template-columns:1fr;gap:2.6rem}
  .split.rev .split-media{order:0}
  .contact-grid{grid-template-columns:1fr}
  .mv-grid{grid-template-columns:1fr}
  .timeline::before{left:9px}
  .tl-item,.tl-item:nth-child(even){width:100%;margin-left:0;padding:0 0 2.4rem 2.6rem}
  .tl-node,.tl-item:nth-child(even) .tl-node{left:1px;right:auto}
  .stats-grid{grid-template-columns:repeat(3,1fr)}
  .stat:nth-child(n+4){border-top:1px solid var(--line)}
  .stat:nth-child(4){border-left:none}
  .mega-menu{display:none}
}

/* ---------- ≤ 768px ---------- */
/* @media (max-width:768px){
  .section{padding:4rem 0}
  .bento{grid-template-columns:1fr 1fr}
  .span-4,.span-3,.span-2{grid-column:span 2}
  .b-card{min-height:0}
  .feature-list{grid-template-columns:1fr}
  .process{grid-template-columns:1fr 1fr}
  .g-card,.g-card:nth-child(2),.g-card:nth-child(3){transform:none;width:min(340px,100%)}
  .hero-actions .btn{width:100%;justify-content:center}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .stat{border-left:none;border-top:1px solid var(--line)}
  .stat:nth-child(-n+2){border-top:none}
  .stat:nth-child(odd){border-right:1px solid var(--line)}
  .footer-top{grid-template-columns:1fr}
  .footer-bottom{justify-content:center;text-align:center}
  .sol-cta{flex-direction:column;align-items:flex-start}
  .mc-1{right:.8rem}
  .page-hero{padding-top:calc(var(--nav-h) + 3.2rem)}
  .map-frame iframe{height:340px}
  .form-grid{grid-template-columns:1fr}
} */

/* ---------- ≤ 560px ---------- */
@media (max-width:560px){
  body{font-size:15px}
  .brand-word{font-size:1.12rem;letter-spacing:.18em}
  .bento{grid-template-columns:1fr}
  .span-4,.span-3,.span-2{grid-column:span 1}
  .process{grid-template-columns:1fr}
  .values-grid{grid-template-columns:1fr}
  .hero-type{font-size:.6rem;letter-spacing:.2em}
  .chip{font-size:.6rem}
  .stats-grid{grid-template-columns:1fr 1fr}
  .marquee-item{font-size:.85rem}
  .t-viewport{min-height:420px}
  .fab-stack{right:1rem;bottom:1rem}
  .fab{width:48px;height:48px}
  .cta-actions .btn{width:100%;justify-content:center}
  .mobile-link{font-size:1.55rem}
}

/* ---------- ≤ 400px ---------- */
@media (max-width:400px){
  .container{width:90%}
  .stat-num{font-size:2rem}
  .b-card{padding:1.6rem}
  .btn{padding:.9rem 1.6rem}
}

/* ---------- Ultra-wide ≥ 1600px ---------- */
@media (min-width:1600px){
  .container{width:min(1360px,88%)}
  body{font-size:17px}
}

/* ---------- Touch devices ---------- */
@media (hover:none){
  .glass-card:hover,.b-card:hover{transform:none}
  .media-frame:hover img{transform:none}
}
