/* ============================================================
   R.A.M. GmbH · assets/ram-navigation.css   [Ladereihenfolge 5/5]
   GEMEINSAM fuer alle 31 Seiten.
   Mega-Menue (Submenues, Mobile-Navigation). Chat-Widget: ram-chat.css.
   Laedt zuletzt, damit die Navigation immer Vorrang hat.
   ============================================================ */
.menu{align-self:stretch}
.has-sub{position:relative;align-self:stretch;display:flex;align-items:center}
.has-sub>.caret{display:inline-flex;align-items:center;justify-content:center;margin-left:5px;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent}
.has-sub>.caret::before{content:"";display:block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.5;transition:transform .25s var(--ease),opacity .25s}
.has-sub:hover>.caret::before{opacity:1;transform:rotate(180deg)}
.submenu{position:absolute;top:100%;left:-14px;min-width:218px;margin:0;padding:8px;list-style:none;background:var(--paper-2);border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 50px rgba(20,20,20,.15);display:flex;flex-direction:column;gap:1px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .26s var(--ease),transform .26s var(--ease),visibility .26s;z-index:95}
.has-sub:hover>.submenu{opacity:1;visibility:visible;transform:translateY(0)}
.submenu li{margin:0;width:100%}
.submenu a{display:block;padding:9px 13px;font-size:.82rem;font-weight:500;letter-spacing:0;color:var(--ink);border-radius:9px;white-space:nowrap;transition:background .18s,color .18s}
.submenu a::after{display:none!important}
.submenu a:hover{background:var(--paper);color:var(--brand)}
@media(max-width:680px){
  .has-sub{align-self:auto;flex-wrap:wrap;width:100%}
  .has-sub>.caret{margin-left:auto;padding:8px 4px;color:#fff}
  .has-sub>.caret::before{border-left-width:5px;border-right-width:5px;border-top-width:6px;opacity:.85}
  .has-sub.open>.caret::before{transform:rotate(180deg)}
  .submenu{position:static;opacity:1;visibility:visible;transform:none;background:transparent;border:none;box-shadow:none;border-radius:0;min-width:0;width:100%;padding:0;gap:0;max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
  .has-sub.open>.submenu{max-height:720px;margin-top:8px}
  .submenu a{color:#fff;opacity:.82;font-size:1rem;padding:9px 0 9px 16px;border-left:2px solid var(--line-d);border-radius:0}
  .submenu a:hover{background:transparent;color:#fff;opacity:1}
}

.submenu li.lvl2>a{padding-left:28px;font-size:.78rem;opacity:.7}
  /* Software: aufklappbare Unterebene (CAMEN/vSTAT/PAT/plastPMS) */
  .submenu li.has-sub2{display:flex;flex-wrap:wrap;align-items:center;position:relative;margin:0;width:100%}
  .has-sub2>a{flex:1 1 auto}
  .caret2{flex:0 0 auto;margin-left:auto;height:34px;padding:0 9px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);-webkit-tap-highlight-color:transparent}
  .caret2::before{content:"";display:block;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid currentColor;opacity:.5;transition:opacity .2s var(--ease)}
  .has-sub2:hover>.caret2::before{opacity:1}
  .submenu2{position:absolute;top:-9px;left:100%;min-width:190px;margin:0;padding:8px;list-style:none;background:var(--paper-2);border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 50px rgba(20,20,20,.15);opacity:0;visibility:hidden;transition:opacity .18s var(--ease),visibility .18s;z-index:96}
  .has-sub2:hover>.submenu2{opacity:1;visibility:visible}
  .submenu2 li{margin:0;width:100%}
  .submenu2 a{display:block;padding:9px 13px;font-size:.8rem;font-weight:500;letter-spacing:0;color:var(--ink);opacity:.9;border-radius:9px;white-space:nowrap;transition:background .18s,color .18s,opacity .18s}
  .submenu2 a::after{display:none!important}
  .submenu2 a:hover{background:var(--paper);color:var(--brand);opacity:1}
  @media(max-width:680px){.caret2{padding:8px 6px;height:auto;color:#fff}.caret2::before{border-top:5px solid currentColor;border-bottom:0;border-left:4px solid transparent;border-right:4px solid transparent;transition:transform .25s var(--ease),opacity .25s}.has-sub2.open>.caret2::before{transform:rotate(180deg);opacity:1}.submenu2{position:static;top:auto;left:auto;min-width:0;width:100%;padding:0;background:transparent;border:none;box-shadow:none;border-radius:0;opacity:1;visibility:visible;max-height:0;overflow:hidden;transition:max-height .28s var(--ease);z-index:auto}.has-sub2.open>.submenu2{max-height:300px}.submenu2 a{color:#fff;opacity:.6;font-size:.95rem;padding:9px 0 9px 34px;border-left:2px solid var(--line-d);border-radius:0}.submenu2 a:hover{background:transparent;color:#fff;opacity:1}}
.submenu li.lvl2>a:hover{opacity:1}
@media(max-width:680px){.submenu li.lvl2>a{padding-left:34px;font-size:.95rem;opacity:.6}}

.menu-wrap{display:contents}
@media(max-width:680px){.menu-wrap{display:block;position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:80}.menu-wrap>.menu{position:absolute;pointer-events:auto}}

@media(max-width:680px){.minigrid,.minigrid.two{grid-template-columns:1fr}.ctab{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}}
