/* =========================================================================
   OTT 2027 – Oberländische Turntage Wimmis – Stylesheet
   Farben, Schriften und Abstände stehen ganz oben als Variablen.
   ========================================================================= */

/* ---------- Schriften (lokal, kein Google-Server) ---------- */
/* DINish: freie DIN-Schrift (SIL Open Font License, siehe OFL-DINish.txt) – nahe an DIN Pro aus Logo und Dossier */
@font-face{font-family:"DINish Condensed";font-style:normal;font-weight:600;font-display:optional;src:url(../fonts/dinish-condensed-600.woff2) format("woff2")}
@font-face{font-family:"DINish Condensed";font-style:normal;font-weight:700;font-display:optional;src:url(../fonts/dinish-condensed-700.woff2) format("woff2")}
@font-face{font-family:"DINish Condensed";font-style:normal;font-weight:800;font-display:optional;src:url(../fonts/dinish-condensed-800.woff2) format("woff2")}
@font-face{font-family:"DINish";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/dinish-400.woff2) format("woff2")}
@font-face{font-family:"DINish";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/dinish-500.woff2) format("woff2")}
@font-face{font-family:"DINish";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/dinish-600.woff2) format("woff2")}
@font-face{font-family:"DINish";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/dinish-700.woff2) format("woff2")}
@font-face{font-family:"DINish";font-style:normal;font-weight:800;font-display:optional;src:url(../fonts/dinish-800.woff2) format("woff2")}

/* Ersatzschrift mit angepasster Breite, damit beim Laden nichts springt */
@font-face{font-family:"BC Fallback";src:local("Arial Narrow"),local("ArialNarrow"),local("Arial"),local("Liberation Sans"),local("Helvetica");size-adjust:82%;ascent-override:100%;descent-override:25%}
@font-face{font-family:"Barlow Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica");size-adjust:92%}

/* ---------- Design-Variablen ---------- */
:root{
  --red:#E7000E; --red-dark:#B8000B; --red-soft:#FDEBEC;
  --ink:#151314; --ink-2:#2A2627;
  --paper:#FFFFFF; --stone:#F4F2F2; --line:#E4DFDF; --muted:#655D5F;
  --ok:#1E7A3C; --warn:#B26A00; --wa:#25D366;
  --display:"DINish Condensed","BC Fallback","Arial Narrow",Arial,sans-serif;
  --head:"DINish","Barlow Fallback",Arial,sans-serif;
  --body:"DINish","Barlow Fallback",Arial,Helvetica,sans-serif;
  --wrap:1160px;
  --gut:max(16px,env(safe-area-inset-left,0px));
  --gut-r:max(16px,env(safe-area-inset-right,0px));
  color-scheme:light;
}

/* ---------- Basis ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:110px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
a{color:inherit}
p{margin:0}
h1,h2,h3,h4{font-family:var(--display);font-weight:700;line-height:1.02;text-wrap:balance;margin:0;text-transform:uppercase}
h2{font-size:clamp(32px,5vw,52px);letter-spacing:.01em}
h3{font-size:clamp(21px,2.4vw,25px);letter-spacing:.02em}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;font-weight:600;text-decoration:none}
.skip:focus{top:12px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut-r)}
.eyebrow{display:inline-block;font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:14px;color:var(--red)}
.muted{color:var(--muted)}
.prose{max-width:68ch;display:grid;gap:16px}
.prose a{color:var(--red);font-weight:600}
.placeholder-note{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--warn);background:#FFF4E0;padding:3px 9px;border-radius:2px}

/* ---------- Live-Banner (oben auf allen Seiten) ---------- */
.livebar{background:var(--ink);color:#fff;font-size:15px}
.livebar.dringend{background:var(--red)}
.livebar .wrap{display:flex;gap:12px;align-items:center;justify-content:center;padding-block:9px;text-align:center;flex-wrap:wrap}
.livebar a{color:#fff;font-weight:600}
.livebar .dot{width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:0 0 0 0 rgba(231,0,14,.6);animation:pulse 1.8s infinite}
.livebar.dringend .dot{background:#fff}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.5)}70%{box-shadow:0 0 0 9px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}

/* ---------- Kopfzeile & Menü ---------- */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:var(--paper);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:92px;padding-block:8px}
.brand{display:block;flex:none}
.brand img{height:74px;width:auto;display:block}
nav.main{display:flex;gap:2px;align-items:center}
.nav-item{position:relative}
.nav-item>a,.nav-item>button{font-family:var(--display);font-weight:600;font-size:18px;text-transform:uppercase;letter-spacing:.03em;text-decoration:none;color:var(--ink);background:none;border:0;padding:12px 9px;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}
.nav-item>button::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);opacity:.6}
.nav-item>a:hover,.nav-item>button:hover,.nav-item.active>a,.nav-item.active>button,.nav-item>a[aria-current="page"]{color:var(--red)}
.sub{position:absolute;left:0;top:100%;background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 34px rgba(21,19,20,.13);min-width:250px;padding:8px;display:none}
.nav-item:hover .sub,.nav-item:focus-within .sub,.nav-item.open .sub{display:block}
.sub a{display:block;padding:10px 12px;text-decoration:none;font-weight:500}
.sub a:hover,.sub a[aria-current="page"]{background:var(--stone);color:var(--red)}
.cta-btn{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:17px;background:var(--red);color:#fff;text-decoration:none;padding:11px 18px;margin-left:10px;white-space:nowrap}
.cta-btn:hover{background:var(--red-dark)}
.burger{display:none;background:none;border:0;padding:12px;cursor:pointer;margin-right:-8px}
.burger span{display:block;width:26px;height:3px;background:var(--ink);margin:5px 0;transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media (max-width:1180px){
  .burger{display:block}
  nav.main{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:8px var(--gut-r) 18px var(--gut);max-height:calc(100vh - 90px);overflow-y:auto;box-shadow:0 18px 30px rgba(21,19,20,.12)}
  nav.main.open{display:flex}
  .nav-item>a,.nav-item>button{width:100%;justify-content:space-between;padding:14px 4px;font-size:20px;border-bottom:1px solid var(--line)}
  .sub{position:static;display:none;border:0;box-shadow:none;padding:4px 0 8px 12px;min-width:0}
  .nav-item:hover .sub{display:none}
  .nav-item.open .sub,.nav-item:focus-within .sub{display:block}
  .sub a{padding:12px 8px}
  .cta-btn{margin:14px 0 0;text-align:center;padding:14px}
}
@media (max-width:600px){.brand img{height:58px}.bar{min-height:74px}}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:18px;line-height:1.1;padding:14px 22px;min-height:48px;text-decoration:none;border:2px solid transparent;cursor:pointer;background:none;color:inherit;text-align:center}
.btn svg{width:20px;height:20px;flex:none}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--red-dark)}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:var(--ink-2)}
.btn-line{border-color:currentColor}.btn-line:hover{color:var(--red)}
.btn-wa{background:var(--ink);color:#fff}.btn-wa svg{color:var(--wa)}.btn-wa:hover{background:#000}
.btn[aria-disabled="true"],.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.textlink{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--red);text-decoration:none}
.textlink:hover{text-decoration:underline}

/* ---------- Titelbereich Startseite ---------- */
.hero{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.hero .wrap{position:relative;z-index:1;padding-block:72px 128px;display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.hero h1{font-size:clamp(46px,9.6vw,118px);font-weight:800;line-height:.9;overflow-wrap:anywhere;hyphens:manual}
.hero h1 em{font-style:normal;color:var(--red)}
.hero .meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;font-family:var(--display);font-size:clamp(22px,2.6vw,31px);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.hero .meta .sq{width:9px;height:9px;background:var(--red)}
.niesen{position:absolute;inset:auto 0 0 0;height:62%;z-index:0;pointer-events:none}
.niesen svg{width:100%;height:100%;display:block}
.niesen-label{position:absolute;right:var(--gut-r);bottom:14px;z-index:1;font-family:var(--display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.45)}
@media (prefers-reduced-motion:no-preference){
  .hero .meta,.hero .btns{animation:rise .7s cubic-bezier(.2,.7,.2,1) both}
  .hero .meta{animation-delay:.1s}.hero .btns{animation-delay:.18s}
  .niesen .ridge{stroke-dasharray:420;stroke-dashoffset:420;animation:draw 1.6s .3s ease-out forwards}
}
@keyframes rise{from{opacity:.001;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes draw{to{stroke-dashoffset:0}}

/* ---------- Countdown ---------- */
.count{background:var(--red);color:#fff}
.count .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 32px;padding-block:22px}
.count .units{display:flex;gap:28px}
.count .u{font-family:var(--display);text-transform:uppercase;letter-spacing:.08em;font-size:14px;font-weight:600}
.count .u b{display:block;font-size:46px;line-height:1;letter-spacing:0;font-weight:800;font-variant-numeric:tabular-nums}
.count .lead{font-family:var(--display);font-size:24px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.count a{color:#fff}
.count .cal{display:flex;gap:10px;flex-wrap:wrap}
.count .cal .btn{border-color:#fff;color:#fff;padding:10px 16px;min-height:44px;font-size:16px}
.count .cal .btn:hover{background:#fff;color:var(--red)}

/* ---------- Abschnitte ---------- */
section.block{padding-block:clamp(52px,7vw,80px)}
section.block.alt{background:var(--stone)}
section.block.dark{background:var(--ink);color:#fff}
.head{display:grid;gap:12px;margin-bottom:34px;max-width:780px}
.grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:900px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.grid2,.grid3{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.grid4{grid-template-columns:minmax(0,1fr)}}
.fact{border-top:4px solid var(--red);padding-top:16px;display:grid;gap:6px;min-width:0;align-content:start}
.fact .k{font-family:var(--display);text-transform:uppercase;letter-spacing:.12em;font-size:14px;color:var(--muted);font-weight:600}
.fact .v{font-family:var(--display);font-size:28px;font-weight:700;line-height:1.1;text-transform:uppercase}

/* ---------- Zeitstrahl ---------- */
.dates{display:grid;border-left:3px solid var(--ink);margin-left:6px}
.date{position:relative;padding:0 0 26px 28px}
.date:last-child{padding-bottom:0}
.date::before{content:"";position:absolute;left:-9px;top:6px;width:15px;height:15px;background:var(--paper);border:3px solid var(--ink);border-radius:50%}
.date.main::before{background:var(--red);border-color:var(--red)}
.date .d{font-family:var(--display);font-weight:700;font-size:22px;text-transform:uppercase}
.date .t{color:var(--muted)}
.alt .date::before{background:var(--stone)}
.alt .date.main::before{background:var(--red)}

/* ---------- Seitenkopf Unterseiten ---------- */
.pagehead{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.pagehead .wrap{padding-block:52px 60px;position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.pagehead h1{font-size:clamp(38px,7vw,82px);font-weight:800;line-height:.92;overflow-wrap:anywhere}
.pagehead .crumb{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;font-size:14px;color:rgba(255,255,255,.6)}
.pagehead .crumb a{color:inherit;text-decoration:none}
.pagehead .crumb a:hover{color:#fff}
.pagehead .intro{max-width:62ch;color:rgba(255,255,255,.82);font-size:18px}
.pagehead .niesen{height:85%;opacity:.55}

/* ---------- Kästen & Hinweise ---------- */
.soon{display:grid;gap:16px;max-width:680px;padding:32px;border:2px dashed var(--line);background:var(--paper)}
.tag{display:inline-block;justify-self:start;font-family:var(--display);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:13px;background:var(--ink);color:#fff;padding:5px 10px}
.tag.red{background:var(--red)}
.note{background:var(--stone);padding:16px 18px;font-size:16px}
.alt .note{background:var(--paper)}
.callout{border-left:5px solid var(--red);background:var(--red-soft);padding:16px 18px}

/* ---------- Downloads / PDF-Kacheln ---------- */
.dl{display:grid;gap:12px}
.dl-item{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);padding:16px 18px;background:var(--paper);min-height:72px;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
.dl-item .ic{width:40px;height:40px;flex:none;display:grid;place-items:center;background:var(--stone);color:var(--muted)}
.dl-item .ic svg{width:22px;height:22px}
.dl-item .txt{flex:1;min-width:0}
.dl-item .n{font-weight:600;display:block}
.dl-item .s{color:var(--muted);font-size:14px}
.dl-item.ready{border-color:var(--ink)}
.dl-item.ready .ic{background:var(--red);color:#fff}
a.dl-item.ready:hover{border-color:var(--red);transform:translateY(-1px)}
.pill{font-family:var(--display);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:13px;padding:6px 10px;white-space:nowrap}
.pill.red{background:var(--red);color:#fff}
.pill.gray{background:var(--stone);color:var(--muted)}
.pill.green{background:#E3F3E8;color:var(--ok)}
.alt .dl-item .ic{background:var(--stone)}

/* Ranglisten-Kacheln */
.rank-day{display:grid;gap:18px}
.rank-day+.rank-day{margin-top:44px}
.rank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:720px){.rank-grid{grid-template-columns:minmax(0,1fr)}}
.rank{display:grid;gap:14px;align-content:start;padding:24px;background:var(--paper);border-top:5px solid var(--line);min-width:0}
.rank.ready{border-top-color:var(--red)}
.rank .cat{font-family:var(--display);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:13px;color:var(--muted)}
.rank h3{font-size:26px}
.rank .extra{display:grid;gap:8px}
.rank .extra a{color:var(--red);font-weight:600}

/* ---------- Sponsoring ---------- */
.tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:900px){.tiers{grid-template-columns:minmax(0,1fr)}}
.tier{background:var(--ink);color:#fff;padding:28px;display:grid;gap:14px;align-content:start;min-width:0;border-top:6px solid #3a3536}
.tier.platin{border-top-color:var(--red)}
.tier .price{font-family:var(--display);font-size:36px;font-weight:800}
.tier .price small{font-size:16px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.7;margin-right:6px}
.tier ul{margin:0;padding-left:18px;display:grid;gap:6px;color:rgba(255,255,255,.86)}
.tier .label{font-family:var(--display);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:15px;color:var(--red)}
.tier .btn{margin-top:6px;border-color:#fff;color:#fff;justify-self:start}
.tier .btn:hover{background:#fff;color:var(--ink)}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.table{width:100%;border-collapse:collapse}
.table th,.table td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.table th{font-family:var(--display);text-transform:uppercase;letter-spacing:.1em;font-size:14px;color:var(--muted);font-weight:600}
.table td.p{font-family:var(--display);font-weight:700;font-size:20px;white-space:nowrap;font-variant-numeric:tabular-nums}
@media (max-width:640px){
  .table.stack thead{display:none}
  .table.stack tr{display:grid;gap:4px;padding:14px 0;border-bottom:1px solid var(--line)}
  .table.stack td{border:0;padding:0}
}
/* Sponsoren-Präsentation */
.tier-head{display:flex;align-items:center;gap:16px;margin:48px 0 18px}
.tier-head.first{margin-top:0}
.tier-head::after{content:"";flex:1;height:1px;background:var(--line)}
.tier-name{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:26px}
.logos{display:grid;gap:18px}
.logos-platin{grid-template-columns:repeat(2,minmax(0,1fr))}
.logos-gold{grid-template-columns:repeat(5,minmax(0,1fr))}
.logos-silber{grid-template-columns:repeat(4,minmax(0,1fr))}
.logos-strip{grid-template-columns:repeat(6,minmax(0,1fr))}
@media (max-width:760px){.logos-platin{grid-template-columns:minmax(0,1fr)}.logos-gold,.logos-silber{grid-template-columns:repeat(2,minmax(0,1fr))}.logos-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:420px){.logos-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
.logo-slot{background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;text-align:center;padding:16px;color:var(--muted);font-family:var(--display);text-transform:uppercase;letter-spacing:.1em;font-size:14px;max-width:100%;text-decoration:none;aspect-ratio:3/2;min-width:0;transition:border-color .15s}
.logos-platin .logo-slot{aspect-ratio:2/1}
.logos-gold .logo-slot{aspect-ratio:5/3}
.logo-slot img{max-width:80%;max-height:70%;width:auto;height:auto;object-fit:contain}
a.logo-slot:hover{border-color:var(--ink)}
.logo-slot.free{background:transparent;border:2px dashed var(--line);color:var(--red);font-weight:700}
.logo-slot.free:hover{border-color:var(--red)}
.alt .logo-slot{background:var(--paper)}
.patrons{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}
.patron{border-top:4px solid var(--ink);padding-top:14px;display:grid;gap:6px;min-width:0;align-content:start}
.patron .what{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:19px;line-height:1.1}
.patron .who{color:var(--muted)}
.patron .who a{color:var(--ink);font-weight:600}
.patron img{max-height:56px;width:auto;margin-top:6px}
.names{color:var(--muted);max-width:68ch}

/* ---------- Team / OK ---------- */
.team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}
@media (max-width:860px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.team{grid-template-columns:minmax(0,1fr)}}
.member{display:grid;gap:8px;min-width:0;align-content:start}
.avatar{aspect-ratio:1;max-width:100%;background:var(--stone);position:relative;overflow:hidden;margin-bottom:6px}
.avatar img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block}

.member .role{font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:14px;color:var(--red)}
.member .name{font-family:var(--display);font-weight:700;font-size:25px;text-transform:uppercase;line-height:1}
.contact-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.contact-line a{font-weight:600;color:var(--ink);text-decoration:none;word-break:break-all}
.contact-line a:hover{color:var(--red);text-decoration:underline}
.copy{border:1px solid var(--line);background:var(--paper);cursor:pointer;font-size:13px;font-weight:600;padding:4px 9px;color:var(--muted);min-height:32px}
.copy:hover{border-color:var(--ink);color:var(--ink)}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%) translateY(20px);background:var(--ink);color:#fff;padding:12px 18px;font-weight:600;opacity:0;transition:.25s;z-index:90;pointer-events:none}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- Akkordeon (A–Z, FAQ) ---------- */
.az-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:20px}
.search{position:relative;flex:1 1 280px;min-width:0}
.search input{font:inherit;width:100%;padding:14px 16px 14px 46px;border:2px solid var(--line);background:var(--paper);min-height:52px}
.search input:focus{outline:none;border-color:var(--red)}
.search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--muted)}
.letters{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}
.letters a{font-family:var(--display);font-weight:700;font-size:18px;min-width:40px;height:40px;display:grid;place-items:center;text-decoration:none;background:var(--stone)}
.letters a:hover{background:var(--red);color:#fff}
.az-letter{font-family:var(--display);font-weight:800;font-size:42px;color:var(--red);padding-top:22px;line-height:1.2}
.acc{border-bottom:1px solid var(--line)}
.acc>button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:none;border:0;padding:18px 2px;cursor:pointer;text-align:left;font-family:var(--display);font-weight:700;font-size:22px;text-transform:uppercase;color:var(--ink);min-height:56px}
.acc>button:hover{color:var(--red)}
.acc>button .pm{width:22px;height:22px;flex:none;position:relative}
.acc>button .pm::before,.acc>button .pm::after{content:"";position:absolute;left:3px;right:3px;top:10px;height:2px;background:currentColor;transition:transform .25s}
.acc>button .pm::after{transform:rotate(90deg)}
.acc>button[aria-expanded="true"] .pm::after{transform:rotate(0)}
.acc .panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}
.acc .panel>div{overflow:hidden}
.acc.open .panel{grid-template-rows:1fr}
.acc .panel .inner{padding:0 2px 20px;display:grid;gap:12px;max-width:72ch}
.acc .panel .inner a{color:var(--red);font-weight:600}
.empty{padding:22px;background:var(--stone)}
@media (prefers-reduced-motion:reduce){.acc .panel{transition:none}}

/* ---------- News ---------- */
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media (max-width:900px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.news-grid{grid-template-columns:minmax(0,1fr)}}
.news-card{display:grid;grid-template-rows:auto 1fr;background:var(--paper);border:1px solid var(--line);min-width:0;transition:transform .15s,border-color .15s}
.news-card:hover{transform:translateY(-2px);border-color:var(--ink)}
.news-card .img{aspect-ratio:16/9;background:var(--ink);position:relative;overflow:hidden}
.news-card .img img{width:100%;height:100%;object-fit:cover;display:block}
.news-card .img .ph{position:absolute;inset:0;display:grid;place-items:center}
.news-card .img .ph svg{width:100%;height:100%}
.news-card .body{padding:20px;display:grid;gap:10px;align-content:start}
.news-card time{font-family:var(--display);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:14px;color:var(--red)}
.news-card h3{font-size:24px}
.news-card h3 a{text-decoration:none}
.news-card h3 a::after{content:"";position:absolute;inset:0}
.news-card{position:relative}
.news-card .more{font-family:var(--display);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.article{max-width:760px;display:grid;gap:20px}
.article time{font-family:var(--display);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--red)}
.article h2{font-size:clamp(32px,5vw,48px)}
.article .img img{width:100%;height:auto;display:block}
.article .text{display:grid;gap:14px;font-size:18px}
.article .text a{color:var(--red);font-weight:600}
.share{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding-top:14px;border-top:1px solid var(--line)}

/* ---------- WhatsApp-Bereich ---------- */
.wa{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.wa .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:clamp(52px,7vw,80px)}
@media (max-width:820px){.wa .wrap{grid-template-columns:minmax(0,1fr)}}
.wa ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.wa li{display:flex;gap:12px;align-items:flex-start}
.wa li svg{width:22px;height:22px;flex:none;color:var(--red);margin-top:2px}
.wa .qr{background:#fff;color:var(--ink);padding:22px;display:grid;gap:12px;justify-items:center;text-align:center;max-width:320px;justify-self:center;width:100%}
.wa .qr .box{width:100%;aspect-ratio:1;display:grid;place-items:center;border:2px dashed var(--line);color:var(--muted);font-size:14px;padding:12px}
.wa .qr img{width:100%;height:auto;display:block}

/* ---------- Helfer ---------- */
.areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width:1000px){.areas{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.areas{grid-template-columns:minmax(0,1fr)}}
.area{background:var(--paper);padding:24px;display:grid;gap:12px;align-content:start;border-top:5px solid var(--red);min-width:0}
.area .icon{width:48px;height:48px;display:grid;place-items:center;background:var(--ink);color:#fff}
.area .icon svg{width:26px;height:26px}
.area .days{display:flex;flex-wrap:wrap;gap:6px}
.area .days span{font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase;background:var(--stone);padding:4px 8px}
.slots{display:grid;gap:0;border-top:1px solid var(--line)}
.slot{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:8px 24px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.slot .day{font-family:var(--display);font-weight:700;font-size:21px;text-transform:uppercase}
.slot .what{color:var(--muted)}
.slot .chips{display:flex;gap:6px;flex-wrap:wrap}
.slot .chips span{font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.05em;text-transform:uppercase;padding:5px 9px;border:1px solid var(--ink)}
@media (max-width:700px){.slot{grid-template-columns:minmax(0,1fr)}}
.sizes{display:flex;flex-wrap:wrap;gap:8px}
.sizes span{font-family:var(--display);font-weight:700;font-size:18px;min-width:52px;height:44px;display:grid;place-items:center;border:2px solid var(--ink);padding:0 8px}

/* ---------- Festführer & Live ---------- */
.quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:900px){.quick{grid-template-columns:repeat(2,minmax(0,1fr))}}
.quick a{display:grid;gap:10px;align-content:start;padding:20px;background:var(--paper);border:1px solid var(--line);text-decoration:none;min-height:120px;transition:border-color .15s,transform .15s;min-width:0}
.quick a:hover{border-color:var(--red);transform:translateY(-2px)}
.quick svg{width:30px;height:30px;color:var(--red)}
.quick b{font-family:var(--display);font-weight:700;font-size:21px;text-transform:uppercase;line-height:1.05}
.quick span{color:var(--muted);font-size:15px}
.feed{display:grid;gap:14px}
.msg{display:grid;grid-template-columns:110px minmax(0,1fr);gap:6px 20px;padding:18px 20px;background:var(--paper);border-left:5px solid var(--ink)}
.msg.dringend{border-left-color:var(--red);background:var(--red-soft)}
.msg.aenderung{border-left-color:var(--warn)}
.msg time{font-family:var(--display);font-weight:700;font-size:18px;font-variant-numeric:tabular-nums}
.msg .typ{font-family:var(--display);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:13px;color:var(--muted)}
.msg h3{font-size:21px;margin-bottom:4px}
@media (max-width:560px){.msg{grid-template-columns:minmax(0,1fr)}}
.prog{display:grid;gap:0;border-top:2px solid var(--ink)}
.prog-row{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(0,220px);gap:6px 20px;padding:14px 0;border-bottom:1px solid var(--line)}
.prog-row .zeit{font-family:var(--display);font-weight:700;font-size:20px}
.prog-row .ort{color:var(--muted)}
@media (max-width:640px){.prog-row{grid-template-columns:minmax(0,1fr)}}
.qrbox{display:flex;gap:20px;align-items:center;flex-wrap:wrap;background:var(--paper);padding:20px;border:1px solid var(--line)}
.qrbox img{width:140px;height:140px}

/* ---------- Galerie ---------- */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.tabs button{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:.05em;text-transform:uppercase;padding:10px 16px;border:2px solid var(--ink);background:var(--paper);cursor:pointer;min-height:44px}
.tabs button[aria-selected="true"]{background:var(--ink);color:#fff}
.tabs button .n{opacity:.6;margin-left:6px;font-weight:600}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
@media (max-width:480px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}}
.gallery button{display:block;padding:0;border:0;background:var(--stone);aspect-ratio:1;overflow:hidden;cursor:zoom-in;position:relative}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s,opacity .3s}
.gallery button:hover img{transform:scale(1.04)}
.gallery-more{display:flex;justify-content:center;margin-top:22px}
.lightbox{position:fixed;inset:0;z-index:95;background:rgba(10,9,9,.96);display:none;color:#fff;touch-action:pan-y}
.lightbox.open{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.lb-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:calc(10px + env(safe-area-inset-top,0px)) var(--gut-r) 10px var(--gut)}
.lb-top .count-lb{font-family:var(--display);font-weight:600;letter-spacing:.08em}
.lb-top .acts{display:flex;gap:8px}
.lb-btn{background:rgba(255,255,255,.1);color:#fff;border:0;min-width:48px;height:48px;display:grid;place-items:center;cursor:pointer;text-decoration:none;font-weight:600;padding:0 12px}
.lb-btn:hover{background:rgba(255,255,255,.22)}
.lb-btn svg{width:22px;height:22px}
.lb-stage{position:relative;display:grid;place-items:center;min-height:0;padding:0 56px}
.lb-stage img{max-width:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
.lb-prev,.lb-next{position:absolute;top:50%;transform:translateY(-50%)}
.lb-prev{left:8px}.lb-next{right:8px}
.lb-cap{text-align:center;padding:10px var(--gut) calc(14px + env(safe-area-inset-bottom,0px));color:rgba(255,255,255,.7);font-size:14px}
@media (max-width:600px){.lb-stage{padding:0 4px}.lb-prev,.lb-next{display:none}}

/* ---------- Fusszeile ---------- */
footer.site{background:var(--ink);color:rgba(255,255,255,.82)}
footer.site .wrap{padding-block:56px 30px;display:grid;gap:36px}
.fgrid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:28px}
@media (max-width:900px){.fgrid{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.fgrid{grid-template-columns:minmax(0,1fr)}}
footer .flogo{height:96px;width:auto}
footer h4{font-size:15px;letter-spacing:.12em;color:#fff;margin:0 0 12px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
footer a{text-decoration:none;color:rgba(255,255,255,.82)}
footer a:hover{color:#fff;text-decoration:underline}
footer .az-link{display:inline-block;background:var(--red);color:#fff;font-family:var(--display);font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:9px 14px}
footer .az-link:hover{text-decoration:none;background:var(--red-dark)}
footer .wa-link{display:inline-flex;align-items:center;gap:8px}
footer .wa-link svg{width:18px;height:18px;color:var(--wa)}
.legal{border-top:1px solid rgba(255,255,255,.15);padding-top:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:14px;color:rgba(255,255,255,.55)}

/* ---------- Druck ---------- */
@media print{header.site,footer.site,.livebar,.count,.wa,.burger{display:none!important}.pagehead,.hero{background:none;color:#000}.niesen{display:none}}

/* ---------- Eingangs-Animation ---------- */
@media (prefers-reduced-motion:no-preference){
  .reveal{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}
}

/* ---------- Schmale Bildschirme: nichts darf breiter werden ---------- */
.dl{grid-template-columns:minmax(0,1fr)}
.dl-item{min-width:0}
.dl-item .txt{overflow-wrap:anywhere}
.grid2>*,.grid3>*{min-width:0}
div[style*="display:grid"]{grid-template-columns:minmax(0,1fr)}
@media (max-width:480px){.dl-item{padding:14px;gap:12px}.dl-item .pill{white-space:normal;text-align:center;max-width:110px}}
footer .contact-line a{color:rgba(255,255,255,.88)}
footer .copy{background:transparent;border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.75)}
footer .copy:hover{border-color:#fff;color:#fff}
.lightbox{background:#0b0a0a}

/* ---------- Lesbarkeit (Kontrast) & Galerie-Platzhalter ---------- */
:root{--red-text:#E7000E;--red-on-dark:#E7000E}
.eyebrow,.textlink,.member .role,.news-card time,.article time,.prose a,.acc .panel .inner a,.rank .extra a,.note a{color:var(--red-text)}
.hero .eyebrow,.wa .eyebrow,.pagehead .eyebrow,.tier .label,section.block.dark .eyebrow{color:var(--red-on-dark)}
footer h2.fh{font-size:15px;letter-spacing:.12em;color:#fff;margin:0 0 12px}
.gallery-wrap{min-height:440px}
.gallery-wrap.leer{min-height:0}
.btn[aria-disabled="true"]{opacity:.6}
.tabs:empty{min-height:44px}

/* News ohne eigenes Bild: kleines Eventlogo statt grosser Fläche */
.news-card .img.img-logo{aspect-ratio:auto;height:120px;background:var(--paper);border-bottom:1px solid var(--line)}
.news-card .img.img-logo .ph{position:absolute;inset:0;display:grid;place-items:center}
.news-card .img.img-logo .ph img{width:auto;height:84px;object-fit:contain}

/* Fusszeile: Links ohne Trennpunkte */
.legal-links{display:flex;flex-wrap:wrap;gap:8px 20px}
/* Sponsoren: feste Reihen wie gehabt, «Ihr Logo hier?» + auslaufende Felder = offen für beliebig viele */
.logos-platin{grid-template-columns:repeat(2,minmax(0,1fr))}
.logos-gold{grid-template-columns:repeat(3,minmax(0,1fr))}
.logos-silber{grid-template-columns:repeat(4,minmax(0,1fr))}
.logos-helfer{grid-template-columns:repeat(4,minmax(0,1fr))}
.logos-helfer .logo-slot{aspect-ratio:3/2}
@media (max-width:760px){.logos-helfer{grid-template-columns:repeat(2,minmax(0,1fr))}.logos-platin{grid-template-columns:minmax(0,1fr)}.logos-gold,.logos-silber{grid-template-columns:repeat(2,minmax(0,1fr))}}
.logo-slot.free{gap:6px;align-content:center}
.logo-slot.free .plus{font-size:30px;line-height:1;font-weight:400;letter-spacing:0}
.logo-slot.blank{border:2px dashed var(--line);background:transparent}
/* Patronate: ruhige Karten mit Platz für mehrere Logos */
.patrons{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:24px;align-items:start}
.patron{border:1px solid var(--line);background:var(--paper);padding:28px;display:grid;gap:22px;align-content:start}
.patron .p-head{display:grid;gap:6px}
.patron .p-tag{font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:13px;color:var(--red-text)}
.patron .what{font-size:22px}
.patron .p-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.patron .p-logos .logo-slot{aspect-ratio:3/2;padding:10px;font-size:12px}
.patron .p-logos .logo-slot.free .plus{font-size:24px}
@media (max-width:420px){.patron{padding:20px}.patron .p-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Auf einen Blick */
.glance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.glance-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:820px){.glance,.glance-2{grid-template-columns:minmax(0,1fr)}}
.gl{background:var(--paper);border:1px solid var(--line);padding:26px 24px;display:grid;grid-template-rows:auto auto auto 1fr;gap:10px;min-width:0}
.block:not(.alt) .gl{background:var(--stone);border-color:transparent}
.gl-ic{width:52px;height:52px;background:var(--ink);color:#fff;display:grid;place-items:center;margin-bottom:6px}
.gl-ic svg{width:26px;height:26px}
.gl .k{font-family:var(--display);text-transform:uppercase;letter-spacing:.12em;font-size:14px;color:var(--muted);font-weight:600}
.gl .v{font-family:var(--display);font-size:26px;font-weight:700;line-height:1.1;text-transform:uppercase}
.gl .textlink{align-self:end;margin-top:8px}
.gl p{margin:0}
/* Samstagabend: Abendessen & Bar */
.evening{background:var(--ink);color:#fff}
.evening .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:40px;align-items:center;padding-block:clamp(52px,7vw,80px)}
@media (max-width:860px){.evening .wrap{grid-template-columns:minmax(0,1fr)}}
.evening .ev-head{display:grid;gap:14px}
.evening .ev-head p{color:rgba(255,255,255,.8);margin:0}
.evening .eyebrow{color:var(--red-on-dark)}
.evening .ev-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:560px){.evening .ev-items{grid-template-columns:minmax(0,1fr)}}
.evening .ev{background:rgba(255,255,255,.06);border-top:4px solid var(--red);padding:24px;display:grid;gap:10px;align-content:start;min-width:0}
.evening .ev .icon svg{width:34px;height:34px;color:var(--red-on-dark);display:block}
.evening .ev h3{font-size:24px;color:#fff}
.evening .ev p{color:rgba(255,255,255,.75);margin:0}
.evening .ev-badge{justify-self:start;background:var(--red);color:#fff;font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:13px;padding:4px 10px}
/* Logos immer in die Kachel einpassen (Kacheln bleiben gleich hoch) */
.logo-slot,.patron .p-tile{position:relative;overflow:hidden}
.logo-slot img,.patron .p-tile img{position:absolute;left:12%;top:15%;width:76%;height:70%;max-width:none;max-height:none;object-fit:contain;margin:0}
.patrons{align-items:start}
/* Gold: 5 pro Reihe, Logos etwas flacher */
.logos-gold .logo-slot{aspect-ratio:5/3}
@media (max-width:760px){.logos-gold{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Sponsoring-Pakete: hell, mit Platin-/Gold-/Silberfarben, Buttons auf einer Linie */
.tier{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-top:0;padding:0 28px 28px;grid-template-rows:auto auto auto 1fr auto;align-content:stretch;position:relative;overflow:hidden}
.tier::before{content:"";display:block;height:8px;margin:0 -28px 12px;background:linear-gradient(90deg,#e4e7ea,#a7b0b8)}
.tier.gold::before{background:linear-gradient(90deg,#efd98f,#b9902e)}
.tier.silber::before{background:linear-gradient(90deg,#eef0f1,#b4b9bd)}
.tier .label,.tier.platin .label{color:#5f6b75}
.tier.gold .label{color:#8a6a12}
.tier.silber .label{color:#6c7176}
.tier ul{color:var(--muted)}
.tier .btn{align-self:end;justify-self:start;border-color:var(--ink);color:var(--ink);margin-top:10px}
.tier .btn:hover{background:var(--ink);color:#fff}
.tier ul{align-content:start}

/* ===== Hellere Gestaltung: weniger Schwarz (Fusszeile und Startbild bleiben dunkel) ===== */
.evening{background:var(--stone);color:var(--ink)}
.evening .eyebrow{color:var(--red-text)}
.evening .ev-head p{color:var(--muted)}
.evening .ev{background:var(--paper);border:1px solid var(--line);border-top:1px solid var(--line)}
.evening .ev .icon svg{color:var(--red)}
.evening .ev h3{color:var(--ink)}
.evening .ev p{color:var(--muted)}
/* Sponsor werden: Übersicht wie im Dossier */
.overview{display:grid;max-width:860px}
.ov-row{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;text-decoration:none;color:var(--ink);font-size:16px}
.ov-row:nth-child(odd){background:var(--paper)}
.ov-row:hover span:first-child{color:var(--red-text);text-decoration:underline}
.ov-p{white-space:nowrap;font-weight:600}
@media (max-width:480px){.ov-row{flex-direction:column;gap:2px}.ov-p{font-weight:600;color:var(--muted)}}
.tier{scroll-margin-top:110px}
.pat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:18px;align-items:start}
.pat{background:var(--paper);border:1px solid var(--line);padding:24px;display:grid;gap:10px;align-content:start;min-width:0}
.block:not(.alt) .pat{background:var(--stone);border-color:transparent}
.pat h3{font-size:22px}
.pat-price{font-family:var(--display);font-weight:800;font-size:26px}
.pat ul{margin:0;padding-left:18px;display:grid;gap:6px;color:var(--muted)}
.pat p{margin:0;color:var(--muted)}
#patronate,#weitere,#anfrage{scroll-margin-top:90px}

/* Grosse Titel in DINish (wie Logo), übrige Auszeichnungen in DINish Condensed */
h1,h2{font-family:var(--head);font-weight:800;letter-spacing:-.005em}
/* Willkommen: erwartete Teilnehmende */
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
@media (max-width:820px){.stats{grid-template-columns:minmax(0,1fr)}}
.stat{background:var(--ink);color:#fff;padding:26px 24px;display:grid;gap:4px;align-content:start;min-width:0}
.stat .day{font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:14px;color:var(--red-on-dark)}
.stat b{font-family:var(--head);font-weight:800;font-size:clamp(48px,6vw,68px);line-height:1;margin-top:6px}
.stat b small{font-family:var(--display);font-size:18px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-right:8px;opacity:.75}
.stat .lbl{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:21px;letter-spacing:.02em}
.stat .s{color:rgba(255,255,255,.72);font-size:15px}
.stats-note{margin:22px 0 0;max-width:70ch;color:var(--muted)}
/* Sponsor werden: Kacheln unten bündig */
.pat-grid{align-items:stretch}
h1,h2,h3{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}@media (max-width:420px){h2{overflow-wrap:anywhere}}
/* Hero-Titel: passt auch auf 320 px ohne Trennung */
.hero h1{font-size:clamp(28px,9.2vw,118px);overflow-wrap:normal}
/* Grosse Zahlen und Titel in der (vorgeladenen) DINish */
.count .u b,.tier .price,.pat-price,.az-letter,.tier-name{font-family:var(--head)}

/* Schrift auch in Buttons und Feldern */
button,input,select,textarea{font-family:inherit}
/* Zweispaltige Bereiche unten bündig (Festführer-Kontakte, Sponsoring-Kontakt) */
.grid2.eq{align-items:stretch}
.grid2.eq>*{display:grid;grid-template-rows:auto auto 1fr;align-content:stretch!important}
.grid2.eq>.dl,.grid2.eq>.note{grid-template-rows:none;grid-auto-rows:1fr}
.grid2.eq .dl{grid-auto-rows:1fr;align-content:stretch}
.grid2.eq .qrbox{align-content:center}
#anfrage .note{display:flex;flex-direction:column;justify-content:center}
strong,b{font-weight:600}
