/* ============================================================
   R.A.M. GmbH · assets/ram-responsive.css   [Ladereihenfolge 3/5]
   GEMEINSAM fuer alle 31 Seiten.
   Breakpoints <=980px und <=680px sowie prefers-reduced-motion.
   WICHTIG: Muss NACH den seitenspezifischen Grid-Regeln (Teil a),
   aber VOR den uebrigen Seitenmodulen (Teil b) geladen werden,
   sonst greift die Einspaltigkeit auf Mobilgeraeten nicht.
   ============================================================ */
  /* ---------- RESPONSIVE ---------- */
  @media(max-width:980px){
    .hero-grid,.intro,.faq-wrap,.cta-band .wrap{grid-template-columns:1fr;gap:40px}
    .subhero-grid{grid-template-columns:1fr;gap:34px}
    .panel{max-width:440px}
    .logo-grid{grid-template-columns:repeat(3,1fr)}
    .card-grid{grid-template-columns:repeat(2,1fr)}
    .sol-grid,.news-grid{grid-template-columns:repeat(2,1fr)}
    .stats .row{grid-template-columns:repeat(2,1fr)}
    .stat:nth-child(2){border-right:none}
    .stat{border-bottom:1px solid var(--line-d)}
    .foot-grid{grid-template-columns:1fr 1fr}
  }
  @media(max-width:680px){
    .wrap{padding:0 18px}
    .menu{
      position:fixed;inset:0 0 0 auto;width:78%;max-width:320px;background:var(--ink);
      flex-direction:column;align-items:flex-start;justify-content:center;gap:26px;padding:40px;
      transform:translateX(100%);transition:transform .4s var(--ease);z-index:80;
    }
    .menu.open{transform:none}
    .menu a{color:#fff;font-size:1.1rem}
    .menu a::after{background:var(--signal)}
    .burger{display:flex}
    .nav-cta .btn{display:none}
    section.block{padding:72px 0}
    .card-grid,.sol-grid,.news-grid,.logo-grid{grid-template-columns:1fr}
    .stats .row{grid-template-columns:1fr 1fr}
    .util-left .hours{display:none}
    .hero{padding:80px 0 70px}
    .panel-foot .big{font-size:2rem}
  }
  @media(prefers-reduced-motion:reduce){
    *{animation:none!important}
    .reveal{opacity:1;transform:none}
  }

/* ===== Robustheit: lange Wörter und Rasterzellen (Checkup 2026-09-29) =====
   Rasterzellen dürfen schmaler als ihr Inhalt werden (min-width:0), lange
   deutsche Komposita in Überschriften werden getrennt statt überzustehen. */
/* Überschriften nie mit Bindestrich trennen: Wörter wandern ganz in die nächste
   Zeile; nur ein Wort, das allein breiter als die Zeile ist, darf umbrechen. */
h1,h2,h3,h4,h5,h6,.display,h3.hx{hyphens:manual;-webkit-hyphens:manual;overflow-wrap:break-word}
[class*="grid"]>*,.intro>*,.tl-item>*{min-width:0}
.kicker{flex-wrap:wrap;row-gap:4px}
@media(max-width:400px){
  .def{padding:18px 14px}
  p,li,dd,td,th{overflow-wrap:break-word;hyphens:auto}
}

/* Kennzahlenleiste mit drei Werten (seit 2026-09-30, „4 Industrien“ entfernt) */
.stats .row.row-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:980px){.stats .row.row-3{grid-template-columns:repeat(2,1fr)}.stats .row.row-3 .stat:last-child{grid-column:1/-1}}

/* Audit 2026-10-02: Tippflächen und Mindestschriftgröße auf dem Smartphone */
@media(max-width:680px){
  .util-right a{display:inline-flex;align-items:center;min-height:32px;padding:0 2px}
  .langsw button{min-width:40px;min-height:32px}
  .cta-contact .l,.cap,.spec .grp,.mt,.label,.sub,.chip-s,.scode,.tag,.i40,.badge,.coord,.dur,.eyebrow,.role,.tl-badge,.mfi-tag,.flow-hint,.clabel,.lbl,.vtag{font-size:.72rem!important}
}
@media(max-width:380px){.util-right{gap:10px}.langsw button{min-width:34px}}
