
/* ============================================================
   PROJEKT TYRV – FULLSCREEN SUPER MENU
   ============================================================ */
:root{
  --mega-ink:#2b3046;
  --mega-teal:#167C78;
  --mega-orange:#F79239;
  --mega-paper:#ffffff;
  --mega-soft:#f5f7f8;
  --mega-line:rgba(43,48,70,.12);
}
.mega-menu-trigger{
  position:relative; z-index:10002; width:auto; min-width:152px; height:64px;
  border:2px solid var(--mega-ink); background:#fff; color:var(--mega-ink);
  border-radius:18px; display:flex; align-items:center; justify-content:center; gap:15px;
  padding:0 20px; cursor:pointer; font:800 14px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.16em; text-transform:uppercase; box-shadow:0 10px 30px rgba(43,48,70,.10);
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease;
}
.mega-menu-trigger:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(43,48,70,.16);background:var(--mega-ink);color:#fff}
.mega-menu-trigger .hamburger{width:34px;height:24px;display:flex;flex-direction:column;justify-content:space-between}
.mega-menu-trigger .hamburger i{display:block;height:4px;border-radius:999px;background:currentColor;transition:transform .3s ease,opacity .3s ease,width .3s ease}
.mega-menu-trigger .hamburger i:nth-child(2){width:24px;align-self:flex-end}
body.mega-open{overflow:hidden}
.mega-menu-overlay{
  position:fixed; inset:0; z-index:10000; background:rgba(255,255,255,.985); color:var(--mega-ink);
  opacity:0; visibility:hidden; pointer-events:none; transform:scale(1.015);
  transition:opacity .35s ease,visibility .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);
  overflow:auto; overscroll-behavior:contain; font-family:Arial,Helvetica,sans-serif;
}
.mega-menu-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1)}
.mega-menu-overlay::before,.mega-menu-overlay::after{content:"";position:fixed;border-radius:50%;filter:blur(4px);pointer-events:none;opacity:.13}
.mega-menu-overlay::before{width:44vw;height:44vw;background:var(--mega-teal);left:-15vw;top:-18vw}
.mega-menu-overlay::after{width:38vw;height:38vw;background:var(--mega-orange);right:-14vw;bottom:-16vw}
.mega-shell{position:relative;z-index:2;min-height:100%;max-width:1560px;margin:0 auto;padding:26px clamp(22px,5vw,82px) 52px}
.mega-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:26px;border-bottom:1px solid var(--mega-line)}
.mega-brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--mega-ink);font-weight:800;letter-spacing:.08em}
.mega-brand-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:linear-gradient(135deg,var(--mega-teal),var(--mega-orange));color:#fff;font-size:18px;box-shadow:0 12px 30px rgba(22,124,120,.18)}
.mega-brand small{display:block;font-size:11px;color:#6b7184;letter-spacing:.14em;margin-top:5px}
.mega-close{width:64px;height:64px;border-radius:18px;border:2px solid var(--mega-ink);background:#fff;cursor:pointer;display:grid;place-items:center;transition:.25s ease}
.mega-close:hover{background:var(--mega-ink);color:#fff;transform:rotate(4deg)}
.mega-close span{position:relative;width:28px;height:28px;display:block}
.mega-close span::before,.mega-close span::after{content:"";position:absolute;left:13px;top:0;width:4px;height:28px;border-radius:999px;background:currentColor}
.mega-close span::before{transform:rotate(45deg)}.mega-close span::after{transform:rotate(-45deg)}
.mega-intro{padding:42px 0 26px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:40px;align-items:end}
.mega-kicker{font-size:12px;font-weight:800;letter-spacing:.19em;text-transform:uppercase;color:var(--mega-teal);margin:0 0 12px}
.mega-title{margin:0;font-size:clamp(42px,7vw,100px);line-height:.9;letter-spacing:-.055em;color:var(--mega-ink);font-weight:900}
.mega-title em{font-style:normal;color:var(--mega-orange)}
.mega-intro p{margin:0;color:#656c7f;font-size:clamp(15px,1.25vw,19px);line-height:1.65;max-width:520px}
.mega-grid{display:grid;grid-template-columns:1.05fr 1fr 1.35fr;gap:18px;align-items:stretch}
.mega-card{background:#fff;border:1px solid var(--mega-line);border-radius:28px;padding:26px;box-shadow:0 18px 50px rgba(43,48,70,.08);position:relative;overflow:hidden}
.mega-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:6px;background:var(--accent,var(--mega-teal))}
.mega-card.orange{--accent:var(--mega-orange)}.mega-card.mix{--accent:linear-gradient(90deg,var(--mega-teal),var(--mega-orange))}
.mega-card-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;color:#7b8192;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.mega-card-label b{display:grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;background:#f0f3f4;color:var(--mega-ink);font-size:11px}
.mega-links{display:grid;gap:4px}
.mega-link{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;text-decoration:none;color:var(--mega-ink);padding:13px 12px;border-radius:14px;font-size:clamp(17px,1.35vw,22px);font-weight:800;line-height:1.12;transition:background .22s ease,transform .22s ease,color .22s ease}
.mega-link::after{content:"↗";font-size:16px;color:var(--mega-teal);transition:transform .22s ease}
.mega-link:hover{background:#f3f7f6;color:var(--mega-teal);transform:translateX(4px)}.mega-link:hover::after{transform:translate(3px,-3px)}
.mega-card.orange .mega-link::after{color:var(--mega-orange)}.mega-card.orange .mega-link:hover{background:#fff6ef;color:#d96c14}
.mega-legal .mega-link{font-size:clamp(15px,1.1vw,19px);padding:11px 12px}
.mega-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:20px;padding:20px 2px 0;color:#7a8091;font-size:12px;letter-spacing:.05em}
.mega-social-tag{display:flex;gap:8px;flex-wrap:wrap}.mega-social-tag span{background:#fff;border:1px solid var(--mega-line);border-radius:999px;padding:8px 11px;color:var(--mega-ink);font-weight:700}
/* hide all legacy navs/menu buttons wherever present */
header .nav, header nav.nav, .site-header .nav, .topbar .nav, .menu-btn{display:none!important}
/* ensure trigger aligns inside varying headers */
.site-header .mega-menu-trigger,.topbar .mega-menu-trigger{margin-left:auto;flex:0 0 auto}
@media(max-width:1100px){.mega-grid{grid-template-columns:1fr 1fr}.mega-card.mega-legal{grid-column:1/-1}.mega-intro{grid-template-columns:1fr}.mega-intro p{max-width:760px}}
@media(max-width:720px){.mega-menu-trigger{min-width:64px;width:64px;padding:0}.mega-menu-trigger .menu-word{display:none}.mega-menu-trigger .hamburger{width:30px}.mega-shell{padding:18px 16px 32px}.mega-top{padding-bottom:18px}.mega-brand span:last-child{display:none}.mega-close{width:56px;height:56px}.mega-intro{padding:30px 0 20px;gap:20px}.mega-title{font-size:clamp(42px,16vw,70px)}.mega-grid{grid-template-columns:1fr}.mega-card.mega-legal{grid-column:auto}.mega-card{padding:21px;border-radius:22px}.mega-link{font-size:20px;padding:12px 8px}.mega-legal .mega-link{font-size:17px}.mega-footer{align-items:flex-start;flex-direction:column}.mega-menu-overlay::before{width:80vw;height:80vw}.mega-menu-overlay::after{width:75vw;height:75vw}}




/* TYRV Menübutton – transparent, nur Icon + Schrift orange */
.mega-menu-trigger,
.menu-btn,
.supermenu-trigger,
button[aria-label*="Menü" i],
button[aria-label*="menu" i] {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #F79239 !important;
}
.mega-menu-trigger .menu-word,
.mega-menu-trigger .hamburger,
.mega-menu-trigger .hamburger i,
.menu-btn,
.supermenu-trigger {
  color: #F79239 !important;
}
.mega-menu-trigger .menu-word,
.mega-menu-trigger .hamburger,
.mega-menu-trigger span,
.menu-btn span,
.supermenu-trigger span {
  background: transparent !important;
  background-color: transparent !important;
}
.mega-menu-trigger .hamburger i {
  background: #F79239 !important;
}
.mega-menu-trigger:hover,
.menu-btn:hover,
.supermenu-trigger:hover {
  background: transparent !important;
  background-color: transparent !important;
  color: #F79239 !important;
  transform: scale(1.04);
  box-shadow: none !important;
}
.mega-menu-trigger:focus-visible,
.menu-btn:focus-visible,
.supermenu-trigger:focus-visible {
  outline: 2px solid #F79239 !important;
  outline-offset: 6px;
  background: transparent !important;
}

/* vier Karten im Supermenü */
@media(min-width:1101px){
  .mega-grid{grid-template-columns:1fr 1fr 1fr 1.25fr}
  .mega-card.mega-legal{grid-column:auto}
}
.mega-card.mega-report{--accent:var(--mega-orange)}
.mega-card.mega-report .mega-link::after{color:var(--mega-orange)}
.mega-card.mega-report .mega-link:hover{background:#fff6ef;color:#d96c14}
