/* AIGIS Landing RC7 — Entwurf C — Responsivität. Von gross nach klein; 375 px ohne
   horizontalen Überlauf. Bei < 900 px: Burger-Menü, Zeitleiste ohne Sticky (Stufen
   klicken einzeln per Observer ein), Stapel flacher, Türen öffnen per Tipp. */

@media (max-width: 1320px){
  /* Acht Navigationspunkte + Umschalter + zwei Knöpfe müssen in EINE Zeile passen */
  .nav-links a{ padding:8px 7px; font-size:12.5px; }
  .nav-cta{ gap:6px; }
  .lang-toggle button{ padding:7px 7px; }
  .nav-logo{ margin-right:2px; }
}

@media (max-width: 1100px){
  .nav-links a{ padding:8px 7px; font-size:12.5px; }
  .hero-grid{ grid-template-columns:1fr; gap:26px; }
  .hero-visual .iso{ max-width:420px; }
  .model-grid{ grid-template-columns:1fr; gap:30px; }
  .model-iso{ max-width:560px; }
  .loop-wrap{ grid-template-columns:1fr; }
  .loop{ width:380px; height:380px; --r:158px; }
  .tl-stage{ grid-template-columns:1fr; gap:22px; }
  .tl-big-n{ font-size:clamp(90px, 14vw, 160px); }
}

@media (max-width: 900px){
  .nav-burger{ display:block; margin-left:auto; }
  .nav-links{
    display:none; position:absolute; left:0; right:0; top:100%;
    background:var(--panel); border-bottom:1px solid var(--line);
    flex-direction:column; align-items:stretch; padding:10px 16px 16px;
    box-shadow:var(--shadow-1);
  }
  .nav-links.open{ display:flex; }
  .nav-links a{ padding:12px 10px; font-size:15px; }
  .nav-cta .btn{ display:none; }
  .nav-links .mobile-only{ display:block; border-top:1px solid var(--line-soft); margin-top:6px; padding-top:6px; }
  .nav-links .mobile-only a{ color:var(--lime-text); font-weight:800; }

  /* V1.0.38 — ohne News-Kasten im Band: Live, Leitsatz, Text, Knopf. */
  .launch{ grid-template-columns:1fr; grid-template-areas:"h" "lead" "beta" "cta"; gap:8px; padding:18px; }
  .launch-cta{ justify-self:start; }
  .cd{ margin:4px 0; }
  .cd-c{ min-width:0; flex:1 1 0; }
  .hero-strip{ grid-template-columns:1fr; }
  .pillar{ grid-template-columns:1fr; gap:12px; }
  .rail-grid{ grid-template-columns:1fr; }
  .doors{ grid-template-columns:1fr; }
  .door{ min-height:340px; }
  .usecases{ grid-template-columns:1fr; }
  .sec-num{ font-size:clamp(90px, 26vw, 160px); top:-.1em; }

  /* Zeitleiste: kein Sticky — Stufen klicken einzeln beim Erreichen ein (von unten,
     damit nichts seitlich über den Rand ragt) */
  .tl{ height:auto; padding:var(--sec-pad) 0 !important; overflow:hidden; }
  .tl-sticky{ position:static; height:auto; overflow:visible; display:block; }
  .tl-track{ grid-template-columns:repeat(2, 1fr); }
  .tl-step{ transform:translateY(22px) scale(.95); }
  .tl-hint{ display:none; }
  /* 3D-Türen und Stapel dürfen die Seite nie horizontal wachsen lassen */
  #worlds, #model, .hero{ overflow:hidden; }
}

@media (max-width: 640px){
  .g2, .g3, .g4{ grid-template-columns:1fr; }
  .hero-ctas .btn{ width:100%; }
  .hero-visual .iso{ max-width:320px; }
  .plate-tag{ font-size:10px; padding:5px 8px; }
  /* Fähigkeiten-Cluster: kein Streuen im 2D-Raum (würde über den Rand ragen), sondern
     Chips, die der Reihe nach von unten in die Reihe springen */
  .cap{ height:auto; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:8px; padding:6px 0 10px; }
  .cap-box{ position:static; flex:0 0 100%; max-width:170px; margin:0 auto 6px; }
  .cap:not(.in) .cap-box{ transform:scale(.8); }
  .cap.in .cap-box{ transform:none; }
  .cap-box img{ width:90px; }
  .cap-chip{ position:static; left:auto; top:auto; font-size:11.5px; padding:6px 10px; }
  .cap:not(.in) .cap-chip{ transform:translateY(14px); opacity:0; }
  .cap.in .cap-chip{ transform:none; opacity:1; }
  .cap-target{ position:static; transform:none; flex:0 0 100%; text-align:center; margin-top:4px; }
  /* Ring → Raster: die Schleife bleibt lesbar, die Stationen leuchten weiter der Reihe nach */
  .loop{ display:none; }
  .loop-grid{ display:grid; grid-template-columns:repeat(2, 1fr); gap:8px; margin:0 0 16px; }
  .loop-grid .loop-pill{ position:static; transform:none; display:block; text-align:center; padding:12px 8px; }
  .loop-grid.live .loop-pill{ animation:stGlowFlat 9.6s linear infinite; animation-delay:calc(var(--a) * 1.2s); }
  .model-iso{ max-width:360px; margin-top:120px; }
  .model-iso.stack.in .plate--aigis{ --z:100px; }
  .model-iso.stack.in .plate--human{ --z:200px; }
  .model-iso .plate-chips .chip{ font-size:10.5px; padding:4px 8px; }
  .model-iso .plate-chips{ inset:12px 12px 44px 12px; gap:5px; }
  .cookie{ left:8px; right:8px; bottom:8px; }
  footer .foot-grid{ flex-direction:column; }
  .motto-kinetic, .motto-text{ gap:0 .2em; }
  .words{ gap:6px 10px; }
  .tl-track{ grid-template-columns:1fr; }
}
@keyframes stGlowFlat{
  0%, 100%{ background:var(--panel); color:var(--mut); border-color:var(--line); transform:scale(1); }
  3%, 11%{ background:var(--lime); color:var(--lime-ink); border-color:transparent; transform:scale(1.05); }
}

@media (max-width: 420px){
  .wrap{ padding:0 16px; }
  .cd-c b{ font-size:26px; }
  .hero-visual .iso{ max-width:280px; }
  .model-iso{ max-width:300px; }
  .door-leaf .door-num{ font-size:64px; }
  .door-room{ padding-left:56px; }
}

/* Geräte ohne Hover: Türen öffnen per Tipp (effects.js) — Hinweis entsprechend */
@media (hover: none){
  .doors-hint .hover-only{ display:none; }
}
@media (hover: hover){
  .doors-hint .touch-only{ display:none; }
}
