@font-face{font-family:"PP Neue Montreal";src:url("../fonts/pp-neue-montreal-book.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap}
.logo{display:block;line-height:0}.logo-svg{height:34px;width:auto;display:block}.ftr .logo-svg{height:30px;margin-bottom:20px}
/* Layout: CRISAM® Website-CI (Styleguide 14.10.2026). Dunkler Hero, heller Körper mit Haarlinien, Abschlussband in brand-deep.
   Bewusst ein einziges Erscheinungsbild (Marken-CI), daher keine Dark-Mode-Variante. Alles unter .cs gescoped, damit es als
   Custom-HTML-Block in WordPress nicht mit Theme-Styles kollidiert. */
:root{
  color-scheme: light;
  --brand-green:#59f22e; --brand-green-hover:#37b81f; --brand-teal:#147373;
  --brand-deep:#245459; --brand-ink:#052426; --brand-ink-raised:#0a3134;
  --surface:#ffffff; --surface-soft:#fafafa;
  --heading:#052426; --text:#000000; --text-muted:#4a5a5c; --accent-text:#147373;
  --line:rgba(5,36,38,.12); --line-soft:rgba(5,36,38,.08);
  --on-action:#052426; --status-partly:#b8923a;
  --d-text:rgba(255,255,255,.9); --d-muted:rgba(255,255,255,.7); --d-line:rgba(255,255,255,.14); --d-line-soft:rgba(255,255,255,.08); --white:#ffffff;
  --font:'PP Neue Montreal','Neue Montreal','Inter',Arial,sans-serif;
  --container:1160px;
}
body{background:var(--surface);color:var(--text);font-family:var(--font);margin:0}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--brand-ink)}
.cs{font-family:var(--font);font-size:19px;line-height:1.6;color:var(--text);-webkit-font-smoothing:antialiased}
.cs *{box-sizing:border-box;border-radius:0}
.cs a{color:var(--accent-text);text-decoration:none}
.cs a:hover{text-decoration:underline}
.cs :focus-visible{outline:2px solid var(--brand-green);outline-offset:3px}
.wrap{max-width:calc(var(--container) + 64px);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media(min-width:720px){.wrap{padding-left:max(32px,env(safe-area-inset-left,0px));padding-right:max(32px,env(safe-area-inset-right,0px))}}
.cs h1,.cs h2,.cs h3{font-weight:400;color:var(--heading);margin:0;text-wrap:balance}
.cs h1{font-size:clamp(2.1rem,3.9vw,3.1rem);line-height:1.08;letter-spacing:-.025em}
.cs h2{font-size:clamp(2rem,3.5vw,2.9rem);line-height:1.1;letter-spacing:-.025em}
.cs h3{font-size:1.3rem;line-height:1.3;letter-spacing:-.015em}
.cs p{margin:0}
.lead{font-size:21px;line-height:1.58;max-width:42em}
.eyebrow{font-size:16px;font-weight:500;letter-spacing:.16em;color:var(--accent-text);line-height:1.4}
.small{font-size:16px;line-height:1.5}
.muted{color:var(--text-muted)}
.dark{background:var(--brand-ink);--heading:var(--white);--text:var(--d-text);--text-muted:var(--d-muted);--accent-text:var(--brand-green);--line:var(--d-line);--line-soft:var(--d-line-soft);color:var(--text)}
.band{background:var(--brand-deep);--heading:var(--white);--text:var(--d-text);--text-muted:var(--d-muted);--accent-text:var(--brand-green);--line:var(--d-line);--line-soft:var(--d-line-soft);color:var(--text)}
.soft{background:var(--surface-soft)}
.sec{padding-block:132px}
.sec.compact{padding-block:96px}
@media(max-width:720px){.sec{padding-block:80px}.sec.compact{padding-block:64px}}
.sec-head{max-width:840px;margin:0 auto 72px;text-align:center;display:grid;gap:20px;justify-items:center}
.sec-head.left{text-align:left;justify-items:start;margin-left:0}
@media(max-width:720px){.sec-head{margin-bottom:48px}}

/* Buttons */
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-block;font-size:16px;line-height:1.5;padding:14px 28px;background:var(--brand-green);color:var(--on-action)!important;border:1px solid var(--brand-green);font-family:inherit;cursor:pointer;text-decoration:none!important}
.btn:hover{background:var(--brand-green-hover);border-color:var(--brand-green-hover);color:var(--white)!important}
.btn.ghost{background:transparent;color:var(--heading)!important;border-color:var(--heading)}
.btn.ghost:hover{background:var(--heading);color:var(--brand-ink)!important}
.btn.ghost.on-light:hover{color:var(--white)!important}

/* Draft bar */
.draftbar{background:var(--surface-soft);border-bottom:1px solid var(--line);font-size:14px;color:var(--text-muted)}
.draftbar .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;justify-content:space-between;padding-block:8px}
.draftbar label{display:flex;gap:8px;align-items:center;cursor:pointer}
.draftbar strong{color:var(--heading);font-weight:500}

/* Header */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--brand-ink);border-bottom:1px solid var(--d-line)}
.hdr .wrap{display:flex;align-items:center;gap:24px;min-height:76px}
.logo-ph{border:1px dashed var(--d-muted);color:var(--d-muted);font-size:12px;letter-spacing:.12em;padding:8px 12px;white-space:nowrap;line-height:1.3}
.logo-ph b{display:block;color:var(--white);font-weight:500;letter-spacing:0;font-size:14px}
.nav{display:flex;gap:28px;margin-left:auto;align-items:center}
.nav a{color:var(--d-text)!important;font-size:16px;padding-block:24px;border-bottom:3px solid transparent}
.nav a:hover{text-decoration:none;color:var(--white)!important}
.nav a[aria-current="page"]{border-bottom-color:var(--brand-green);color:var(--white)!important}
.hdr .btn{padding:10px 20px}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--d-line);color:var(--white);font:inherit;font-size:16px;padding:8px 14px;cursor:pointer}
@media(max-width:900px){
  .menu-btn{display:block}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--brand-ink);flex-direction:column;align-items:stretch;gap:0;padding:8px max(16px,env(safe-area-inset-right,0px)) 20px max(16px,env(safe-area-inset-left,0px));border-bottom:1px solid var(--d-line)}
  .nav.open{display:flex}
  .nav a{padding-block:14px;border-bottom:1px solid var(--d-line-soft)}
  .nav a[aria-current="page"]{border-bottom-color:var(--d-line-soft);color:var(--brand-green)!important}
  .hdr .btn.hdr-cta{display:none}
}

/* Hero */
.hero{position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--d-line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--d-line-soft) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 80% 0%,#000 0%,transparent 65%);-webkit-mask-image:radial-gradient(ellipse at 80% 0%,#000 0%,transparent 65%);pointer-events:none}
.hero::after{content:"";position:absolute;width:760px;height:760px;right:-260px;top:-360px;background:radial-gradient(circle,rgba(20,115,115,.55),transparent 65%);pointer-events:none}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:64px;align-items:center;padding-block:104px 112px}
.hero.sub .wrap{grid-template-columns:minmax(0,1fr);padding-block:88px 88px}
.hero-copy{display:grid;gap:24px;min-width:0}
.hero-copy .btns{margin-top:12px}
.hero h1 em,.cs h2 em{font-style:normal;color:var(--accent-text)}
@media(max-width:900px){.hero .wrap{grid-template-columns:minmax(0,1fr);gap:48px;padding-block:72px 80px}}

/* Event panel in hero */
.evt{background:var(--brand-ink-raised);border:1px solid var(--d-line);min-width:0}
.evt-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;padding:22px 28px;border-bottom:1px solid var(--d-line-soft);align-items:baseline}
.evt-row:last-child{border-bottom:0}
.evt-k{font-size:14px;letter-spacing:.14em;color:var(--d-muted)}
.evt-v{color:var(--white);font-size:19px;line-height:1.45}
.evt-v .small{color:var(--d-muted);display:block}
.count{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--d-line)}
.count div{padding:22px 8px 18px;text-align:center;border-right:1px solid var(--d-line-soft)}
.count div:last-child{border-right:0}
.count b{display:block;font-weight:400;font-size:2.4rem;line-height:1;color:var(--white);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.count span{font-size:13px;letter-spacing:.14em;color:var(--d-muted)}
@media(max-width:480px){.evt-row{grid-template-columns:minmax(0,1fr);gap:4px;padding:18px 20px}.count b{font-size:1.9rem}}

/* Stats */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.stat{padding:36px 28px;border-right:1px solid var(--line-soft);display:grid;gap:6px;align-content:start}
.stat:last-child{border-right:0}
.stat b{font-weight:400;font-size:2.7rem;line-height:1;color:var(--brand-ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stat span{font-size:16px;line-height:1.45}
@media(max-width:820px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}}

/* Hairline columns */
.cols{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}
.col{padding:0 44px;border-left:1px solid var(--line-soft);display:grid;gap:14px;align-content:start;min-width:0}
.col:first-child{border-left:0;padding-left:0}
.col:last-child{padding-right:0}
.col .lbl{font-size:16px;font-weight:500;letter-spacing:.16em;color:var(--accent-text)}
.col p{font-size:19px}
@media(max-width:980px){.cols{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}.col:nth-child(odd){border-left:0;padding-left:0}.col:nth-child(even){padding-right:0}}
@media(max-width:600px){.cols{grid-template-columns:minmax(0,1fr)}.col{border-left:0;padding:0 0 32px;border-bottom:1px solid var(--line-soft)}.col:last-child{border-bottom:0;padding-bottom:0}}

/* Keynote split */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.split > *{min-width:0}
@media(max-width:900px){.split{grid-template-columns:minmax(0,1fr);gap:40px}}
.img-ph{aspect-ratio:4/3;max-width:100%;border:1px dashed var(--line);display:grid;place-items:center;text-align:center;padding:24px;color:var(--text-muted);font-size:16px;background:var(--brand-ink-raised)}
.facts{display:grid;gap:0;margin-top:8px}
.facts div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:14px 0;border-top:1px solid var(--line-soft);font-size:17px}
.facts dt,.facts .k{color:var(--text-muted);font-size:15px;letter-spacing:.06em}

/* Agenda */
.tabs{display:flex;gap:36px;border-bottom:1px solid var(--line);margin-bottom:8px;overflow-x:auto}
.tab{background:none;border:0;border-bottom:3px solid transparent;padding:14px 0;font:inherit;font-size:19px;color:var(--text-muted);cursor:pointer;white-space:nowrap;margin-bottom:-1px}
.tab[aria-selected="true"]{border-bottom-color:var(--brand-green);color:var(--heading)}
.tab .small{display:block;font-size:14px;color:var(--text-muted)}
.ag-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:32px;padding:26px 0;border-bottom:1px solid var(--line-soft);align-items:baseline}
.ag-time{font-size:19px;font-variant-numeric:tabular-nums;color:var(--brand-ink)}
.ag-body{display:grid;gap:6px;min-width:0}
.ag-body .tag{font-size:14px;letter-spacing:.14em;color:var(--accent-text);font-weight:500}
.ag-row.hl .ag-time{color:var(--brand-teal)}
@media(max-width:600px){.ag-row{grid-template-columns:minmax(0,1fr);gap:6px;padding:20px 0}}
.talks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;border-top:1px solid var(--line-soft)}
.talk{padding:18px 28px 6px;border-left:1px solid var(--line-soft);display:grid;gap:6px;align-content:start;min-width:0}
.talk:first-child{border-left:0;padding-left:0}
.talk h3{font-size:1.1rem}
.talk .who{font-size:16px;color:var(--text-muted)}
@media(max-width:900px){.talks{grid-template-columns:minmax(0,1fr)}.talk{border-left:0;padding:16px 0;border-bottom:1px solid var(--line-soft)}.talk:last-child{border-bottom:0}}
.streams{display:flex;flex-wrap:wrap;gap:9px;margin-top:4px}
.chip{display:inline-block;border:1px solid var(--line);background:var(--surface);padding:6px 14px;font-size:16px;line-height:1.4;color:var(--heading)}
.dark .chip,.band .chip{background:transparent}

/* Workshop table */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line)}
.tbl{border-collapse:collapse;width:100%;min-width:760px;font-size:16px;line-height:1.45}
.tbl th,.tbl td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line-soft);vertical-align:top}
.tbl thead th{background:var(--brand-ink);color:var(--white);font-weight:500;letter-spacing:.06em}
.tbl tbody th{font-weight:400;font-variant-numeric:tabular-nums;color:var(--brand-ink);white-space:nowrap}
.tbl td .p{color:var(--text-muted);font-size:14px}

/* Speakers */
.spk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 32px}
@media(max-width:980px){.spk-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.spk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}}
.spk{display:grid;gap:10px;align-content:start;min-width:0}
.portrait{aspect-ratio:1;max-width:100%;background:var(--brand-deep);display:grid;place-items:center;position:relative;overflow:hidden}
.portrait span{font-size:2.6rem;color:var(--white);letter-spacing:-.02em}
.portrait::after{content:"Foto folgt";position:absolute;left:10px;bottom:8px;font-size:12px;letter-spacing:.12em;color:var(--d-muted)}
.spk h3{font-size:1.15rem}
.spk .role{font-size:15px;color:var(--text-muted)}
.spk .talk-ref{font-size:16px;line-height:1.45;padding-top:10px;border-top:1px solid var(--line-soft)}
.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:48px}
.filters button{font:inherit;font-size:16px;padding:8px 16px;border:1px solid var(--line);background:var(--surface);color:var(--heading);cursor:pointer}
.filters button[aria-pressed="true"]{border-color:var(--brand-ink);box-shadow:inset 0 -3px 0 var(--brand-green)}

/* Neu 2027: einziger Kasten-Abschnitt, Hervorhebung mit grünem Rahmen */
.news3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.new-item{border:1px solid var(--line);padding:36px 32px;display:grid;gap:14px;align-content:start;min-width:0}
.new-item.hl-box{background:var(--brand-ink);border:1px solid var(--brand-green);--heading:var(--white);--accent-text:var(--brand-green);color:var(--d-text)}
.new-item.hl-box a{color:var(--brand-green)}
.new-k{font-size:14px;font-weight:500;letter-spacing:.16em;color:var(--accent-text)}
@media(max-width:900px){.news3{grid-template-columns:minmax(0,1fr)}}
.evt-free{background:var(--brand-ink);box-shadow:inset 0 0 0 1px var(--brand-green)}
.evt-free .evt-k{color:var(--brand-green)}
.ticket .price.free{color:var(--brand-teal)}

/* Checklist */
.check{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.check li{position:relative;padding-left:32px}
.check li::before{content:"✓";position:absolute;left:0;color:var(--accent-text)}

/* Tickets */
.tickets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line)}
.ticket{padding:36px 32px;border-left:1px solid var(--line);display:grid;gap:14px;align-content:start;min-width:0}
.ticket:first-child{border-left:0}
.ticket .price{font-size:2rem;line-height:1.1;color:var(--brand-ink);letter-spacing:-.02em}
.ticket .btn{justify-self:start;margin-top:8px}
@media(max-width:900px){.tickets{grid-template-columns:minmax(0,1fr)}.ticket{border-left:0;border-top:1px solid var(--line)}.ticket:first-child{border-top:0}}

/* FAQ */
.faq{border-top:1px solid var(--line);max-width:900px;margin:0 auto}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;gap:24px;justify-content:space-between;align-items:center;padding:24px 0;font-size:1.2rem;color:var(--heading);letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:0 0 36px;height:36px;border:1px solid var(--line);display:grid;place-items:center;color:var(--brand-teal);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq .ans{padding:0 60px 28px 0;display:grid;gap:12px}
.faq ul{margin:0;padding-left:22px}

/* CTA band */
.cta .wrap{display:grid;grid-template-columns:minmax(0,1.3fr) auto;gap:48px;align-items:end}
.cta .wrap > div{display:grid;gap:20px;min-width:0}
@media(max-width:820px){.cta .wrap{grid-template-columns:minmax(0,1fr)}}

/* Footer */
.ftr{background:var(--brand-ink);color:var(--d-text);font-size:16px;line-height:1.55}
.ftr .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,.8fr);gap:40px;padding-block:72px 32px;align-items:start}
.ftr-logo{grid-column:1/-1}.ftr .ftr-logo .logo-svg{margin-bottom:0}
.ftr h4{margin:0 0 12px;font-weight:500;font-size:14px;letter-spacing:.16em;color:var(--brand-green)}
.ftr a{color:var(--d-text)!important}
.ftr .legal{grid-column:1/-1;border-top:1px solid var(--d-line);padding-top:24px;display:flex;flex-wrap:wrap;gap:12px 28px;color:var(--d-muted);font-size:14px}
@media(max-width:820px){.ftr .wrap{grid-template-columns:minmax(0,1fr)}}

/* Draft annotations */
.note{display:none;font-size:14px;line-height:1.45;color:var(--brand-ink);background:#fbf6ea;border:1px solid var(--status-partly);padding:8px 12px;margin-top:10px;max-width:44em}
.note::before{content:"● Prüfen  ";color:var(--status-partly);font-weight:500;white-space:pre}
.show-notes .note{display:block}
.show-notes .note.inline{display:inline-block}

.page[hidden]{display:none!important}
.linkrow{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:8px;font-size:17px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* Ergänzungen Version 2 */
.news3{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1080px){.news3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.news3{grid-template-columns:minmax(0,1fr)}}
.days{border-top:1px solid var(--line)}
.days-head,.day-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:baseline}
.days-head{padding:18px 0;border-bottom:1px solid var(--line);position:sticky;top:calc(env(safe-area-inset-top,0px) + 76px);background:var(--surface);z-index:5}
.days-head .dh{display:grid;gap:2px}
.days-head .dh b{font-weight:400;font-size:1.3rem;color:var(--heading);letter-spacing:-.015em}
.days-head .dh span{font-size:15px;color:var(--text-muted)}
.day-row{padding:22px 0;border-bottom:1px solid var(--line-soft)}
.day-row .blk{display:grid;gap:4px;min-width:0}
.day-row .blk .tag{font-size:14px;letter-spacing:.14em;color:var(--accent-text);font-weight:500}
.day-row .blk p{font-size:17px;color:var(--text)}
.day-row .t{font-size:19px;font-variant-numeric:tabular-nums;color:var(--brand-ink)}
.day-row .t small{display:block;font-size:14px;color:var(--text-muted)}
.day-row.quiet .blk h3{font-size:1.1rem;color:var(--text-muted)}
.day-row.quiet .t{color:var(--text-muted)}
.mob-l{display:none}
@media(max-width:700px){
  .days-head{display:none}
  .day-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 20px}
  .day-row .blk{grid-column:1/-1}
  .mob-l{display:block;font-size:13px;letter-spacing:.12em;color:var(--text-muted)}
}
.hotels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-soft)}
.hotel{padding:32px 32px 8px;border-left:1px solid var(--line-soft);display:grid;gap:12px;align-content:start;min-width:0}
.hotel:first-child{border-left:0;padding-left:0}
.hotel .badge{justify-self:start;font-size:14px;letter-spacing:.06em;padding:4px 10px;border:1px solid var(--brand-teal);color:var(--brand-teal)}
.hotel .badge.none{border-color:var(--line);color:var(--text-muted)}
.hotel .sel{user-select:all;font-size:16px;color:var(--heading)}
@media(max-width:900px){.hotels{grid-template-columns:minmax(0,1fr)}.hotel{border-left:0;padding:24px 0;border-bottom:1px solid var(--line-soft)}}
.tickets.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.tickets.two{grid-template-columns:minmax(0,1fr)}}
.slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
@media(max-width:900px){.slots{grid-template-columns:repeat(2,minmax(0,1fr))}}
.slot{border:1px dashed var(--line);aspect-ratio:1;max-width:100%;display:grid;place-items:center;text-align:center;padding:16px;color:var(--text-muted);font-size:16px}

/* ===== V7 Interaktion ===== */
.hero-cv{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.hero .wrap{z-index:1}
.hdr .wrap{transition:min-height .25s ease}
.hdr.scrolled .wrap{min-height:60px}
.hdr.scrolled .logo-svg{height:28px}
.logo-svg{transition:height .25s ease}
.count b{display:block;overflow:hidden}
.count b.roll{animation:roll .45s cubic-bezier(.2,.8,.2,1)}
@keyframes roll{from{transform:translateY(-40%);opacity:.2}to{transform:none;opacity:1}}
.evt-free{animation:freeGlow 3.2s ease-in-out infinite}
@keyframes freeGlow{0%,100%{box-shadow:inset 0 0 0 1px var(--brand-green)}50%{box-shadow:inset 0 0 0 1px var(--brand-green),0 0 28px rgba(89,242,46,.18)}}
.new-item{position:relative;overflow:hidden;transition:transform .25s ease,border-color .25s ease}
.new-item::before{content:"";position:absolute;inset:0;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(20,115,115,.10),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}
.new-item.hl-box::before{background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(89,242,46,.16),transparent 60%)}
.new-item:hover::before{opacity:1}
.new-item:hover{transform:translateY(-4px);border-color:var(--brand-teal)}
.new-item > *{position:relative}
.btn{transition:background .2s,color .2s,transform .2s}
.btn:active{transform:translateY(1px)}

/* Segmented control */
.seg{display:inline-flex;border:1px solid var(--line);background:var(--surface);flex-wrap:wrap}
.seg button{font:inherit;font-size:16px;padding:12px 22px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--text-muted);cursor:pointer;box-shadow:inset 0 -3px 0 transparent;transition:color .2s,box-shadow .2s}
.seg button:last-child{border-right:0}
.seg button[aria-pressed="true"]{color:var(--heading);box-shadow:inset 0 -3px 0 var(--brand-green)}
.seg button:hover{color:var(--heading)}

/* Planer */
.planer{display:grid;gap:40px}
.planer-top{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
.plan-sum{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.plan-sum div{padding:24px 20px;border-left:1px solid var(--line-soft);display:grid;gap:4px}
.plan-sum div:first-child{border-left:0;padding-left:0}
.plan-sum b{font-weight:400;font-size:2.4rem;line-height:1;color:var(--brand-ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;transition:color .3s}
.plan-sum b.zero{color:var(--line)}
.plan-sum span{font-size:15px;line-height:1.4}
@media(max-width:820px){.plan-sum{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-sum div{border-left:0;padding-left:0;border-bottom:1px solid var(--line-soft)}}
.plan-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.plan-cta .small{color:var(--text-muted)}

/* Gantt */
.gantt-scroll{overflow-x:auto;padding-bottom:4px}
.gantt{min-width:680px;display:grid;gap:14px}
.g-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center;transition:opacity .35s}
.g-row.off{opacity:.18}
.g-lbl{display:grid;line-height:1.3}
.g-lbl b{font-weight:400;font-size:1.1rem;color:var(--heading)}
.g-lbl span{font-size:14px;color:var(--text-muted)}
.g-track{position:relative;height:56px;background:repeating-linear-gradient(90deg,var(--line-soft) 0 1px,transparent 1px calc(100%/11))}
.g-seg{position:absolute;top:6px;bottom:6px;border:0;padding:0;cursor:pointer;transform-origin:left center;animation:grow .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i)*35ms);transition:filter .2s,top .2s,bottom .2s}
@keyframes grow{from{transform:scaleX(0)}to{transform:none}}
.g-seg:hover,.g-seg.sel{filter:brightness(1.12)}
.gantt-scroll{padding-top:6px}
.g-seg.sel{outline:2px solid var(--brand-ink);outline-offset:-2px}
.g-seg.k-news{background:#147373}.g-seg.k-talk{background:#245459}.g-seg.k-ws{background:#0a3134}
.g-seg.k-key{background:#59f22e}.g-seg.k-gt{background:linear-gradient(90deg,#f2cdac,rgba(242,205,172,0))}
.g-seg.k-reg{background:#0897b4}.g-seg.k-open{background:#d6dedd}
.g-seg.k-pause{background:repeating-linear-gradient(135deg,rgba(5,36,38,.10) 0 4px,transparent 4px 8px);top:18px;bottom:18px}
.g-axis{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px}
.g-ticks{position:relative;height:20px;font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}
.g-ticks span{position:absolute;transform:translateX(-50%)}
.g-ticks span:last-child{transform:translateX(-100%)}
.routes .seg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.routes .seg button{padding:12px 8px}
@media(max-width:480px){.routes .seg{grid-template-columns:repeat(2,minmax(0,1fr))}.routes .seg button:nth-child(2){border-right:0}.routes .seg button:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.g-legend{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:15px;color:var(--text)}
.g-legend i{display:inline-block;width:14px;height:14px;margin-right:8px;vertical-align:-2px}
.seg-detail{min-height:92px;border-top:1px solid var(--line-soft);padding-top:20px;display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;align-items:start}
.seg-detail .when{font-size:19px;font-variant-numeric:tabular-nums;color:var(--brand-teal)}
.seg-detail h3{margin-bottom:6px}
.seg-detail p{font-size:17px}
@media(max-width:600px){.seg-detail{grid-template-columns:minmax(0,1fr);gap:6px}}

/* Map */
.map-wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:start}
@media(max-width:960px){.map-wrap{grid-template-columns:minmax(0,1fr)}}
.map-box{border:1px solid var(--line);background:var(--surface);position:relative}
.map-box svg{display:block;width:100%;height:auto}
.map-cap{font-size:13px;color:var(--text-muted);padding:10px 14px;border-top:1px solid var(--line-soft)}
.m-dim{transition:opacity .35s}
.map-box.focus .m-dim{opacity:.22}
.map-box.focus .m-dim.on{opacity:1}
.m-route{fill:none;stroke:#59f22e;stroke-width:4;stroke-dasharray:8 7;opacity:0;transition:opacity .3s}
.m-route.on{opacity:1;animation:dash 1s linear infinite}
@keyframes dash{to{stroke-dashoffset:-15}}
.m-pin{cursor:pointer}
.m-pin:focus{outline:none}
.m-pin:focus-visible circle.ring{stroke:#052426;stroke-width:3}
.pulse{transform-box:fill-box;transform-origin:center;animation:pulse 2s ease-out infinite}
@keyframes pulse{from{transform:scale(1);opacity:.6}to{transform:scale(3);opacity:0}}
.routes{display:grid;gap:20px}
.route-steps{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:st}
.route-steps li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:16px;padding:16px 0;border-bottom:1px solid var(--line-soft);font-size:17px;animation:fadeUp .4s ease both;animation-delay:calc(var(--i)*70ms)}
.route-steps li::before{counter-increment:st;content:counter(st);width:32px;height:32px;border:1px solid var(--line);display:grid;place-items:center;font-size:15px;color:var(--brand-teal)}
@keyframes fadeUp{from{transform:translateY(8px)}to{transform:none}}
.route-steps li b{font-weight:500;color:var(--heading)}
@media(prefers-reduced-motion:reduce){.g-seg,.route-steps li,.count b.roll,.evt-free,.m-route.on,.pulse{animation:none!important}}

/* ===== V8 Mein Programm ===== */
.cs [hidden]{display:none!important}
.pick{display:inline-flex;align-items:center;gap:10px;font:inherit;font-size:17px;line-height:1.3;font-variant-numeric:tabular-nums;color:var(--brand-ink);background:var(--surface);border:1px solid var(--line);padding:7px 12px 7px 8px;cursor:pointer;margin:0 6px 6px 0;transition:background .2s,color .2s,border-color .2s}
.pick:hover{border-color:var(--brand-teal)}
.pick .box{width:18px;height:18px;border:1px solid var(--brand-teal);display:grid;place-items:center;font-size:12px;line-height:1;flex:0 0 18px;transition:background .2s}
.pick[aria-pressed="true"]{background:var(--brand-ink);border-color:var(--brand-ink);color:#fff}
.pick[aria-pressed="true"] .box{background:var(--brand-green);border-color:var(--brand-green);color:var(--brand-ink)}
.pick[aria-pressed="true"] .box::before{content:"✓"}
.pick.pop{animation:pop .3s ease}
@keyframes pop{50%{transform:scale(1.06)}}
.my-tools{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;padding:20px 24px;margin-bottom:8px;background:var(--brand-ink);color:var(--d-text)}
.my-tools p{font-size:17px;max-width:34em}
.my-tools p b{color:#fff;font-weight:500}
.my-tools .presets{display:flex;flex-wrap:wrap;gap:8px}
.my-tools .presets button{font:inherit;font-size:15px;padding:8px 14px;background:transparent;color:#fff;border:1px solid var(--d-line);cursor:pointer}
.my-tools .presets button:hover{border-color:var(--brand-green)}
.g-seg.mine{box-shadow:inset 0 0 0 3px #59f22e;filter:none}
.g-seg.mine::after{content:"✓";position:absolute;right:5px;top:50%;transform:translateY(-50%);width:20px;height:20px;display:grid;place-items:center;background:#59f22e;color:#052426;font-size:13px;line-height:1;font-weight:500}
.g-seg.k-key.mine{box-shadow:inset 0 0 0 3px #052426}.g-seg.k-key.mine::after{background:#052426;color:#59f22e}
.g-seg.mine.soft{box-shadow:inset 0 0 0 2px rgba(89,242,46,.55)}.g-seg.mine.soft::after{display:none}
.g-seg.can{cursor:copy}
.g-seg.can:not(.mine):hover{box-shadow:inset 0 0 0 2px rgba(255,255,255,.7)}
.g-status{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:15px;color:var(--text-muted)}
.g-status.on{color:var(--brand-ink)}
.g-status.on::before{content:"✓";display:grid;place-items:center;width:20px;height:20px;background:#59f22e;color:#052426;font-size:13px}
.add-btn{margin-top:12px;font:inherit;font-size:15px;padding:8px 14px;border:1px solid var(--brand-ink);background:var(--surface);color:var(--brand-ink);cursor:pointer}
.add-btn[aria-pressed="true"]{background:var(--brand-ink);color:#fff}
.mybar{position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--brand-ink);border-top:2px solid var(--brand-green);transform:translateY(110%);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.mybar.show{transform:none}
.mybar .in{max-width:calc(var(--container) + 64px);margin:0 auto;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;padding:14px max(16px,env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.mybar .lbl{color:#fff;font-size:17px}
.mybar .lbl b{display:inline-grid;place-items:center;min-width:32px;height:32px;border:1px solid var(--brand-green);color:var(--brand-green);font-weight:400;margin-right:10px;font-variant-numeric:tabular-nums}
.mp-ov{position:fixed;inset:0;z-index:90;background:rgba(5,36,38,.55);display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.mp{background:var(--surface);width:min(760px,100%);max-height:100%;overflow:auto;display:grid;gap:24px;padding:32px;animation:mpIn .3s cubic-bezier(.2,.8,.2,1)}
@keyframes mpIn{from{transform:translateY(16px)}to{transform:none}}
@media(max-width:600px){.mp{padding:22px}}
.mp-head{display:flex;justify-content:space-between;gap:16px;align-items:start}
.mp-x{font:inherit;font-size:22px;line-height:1;width:40px;height:40px;border:1px solid var(--line);background:var(--surface);color:var(--brand-ink);cursor:pointer;flex:0 0 40px}
.mp label.fld{display:grid;gap:6px;font-size:15px;color:var(--text-muted)}
.mp input[type=text]{font:inherit;font-size:18px;padding:12px 14px;border:1px solid var(--line);color:var(--brand-ink);background:var(--surface)}
.mp input[type=text]:focus{outline:2px solid var(--brand-green);outline-offset:0;border-color:var(--brand-ink)}
.mp-day h4{margin:0 0 4px;font-weight:400;font-size:1.15rem;color:var(--heading)}
.mp-day+.mp-day{margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}
.mp-item{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:12px 16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line-soft)}
.mp-item .tm{font-variant-numeric:tabular-nums;color:var(--brand-teal);font-size:16px}
.mp-item .ti{font-size:17px;color:var(--brand-ink);display:grid;gap:6px}
.mp-item .rm{font:inherit;font-size:14px;border:0;background:none;color:var(--text-muted);cursor:pointer;text-decoration:underline}
.mp-item .strm{display:flex;flex-wrap:wrap;gap:6px}
.mp-item .strm button{font:inherit;font-size:13px;padding:4px 10px;border:1px solid var(--line);background:var(--surface);color:var(--text-muted);cursor:pointer}
.mp-item .strm button[aria-pressed="true"]{border-color:var(--brand-ink);color:var(--brand-ink);box-shadow:inset 0 -2px 0 var(--brand-green)}
@media(max-width:520px){.mp-item{grid-template-columns:minmax(0,1fr) auto}.mp-item .tm{grid-column:1/-1}}
.mp-empty{color:var(--text-muted);font-size:17px}
.mp-dl{display:flex;flex-wrap:wrap;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:20px}
.mp-dl .btn.ghost{color:var(--brand-ink)!important;border-color:var(--brand-ink)}
.mp-dl .btn.ghost:hover{background:var(--brand-ink);color:#fff!important}
.mp-dl .lnk{font:inherit;font-size:15px;border:0;background:none;color:var(--text-muted);cursor:pointer;text-decoration:underline;margin-left:auto}
.mp-msg{font-size:15px;color:var(--brand-teal);min-height:1.4em}
.btn[disabled]{opacity:.5;cursor:wait}
.g-track{height:72px}
.g-seg.lane{bottom:auto}
.g-seg.lane:hover,.g-seg.lane.sel{filter:brightness(1.25)}
.g-seg.lane.sel{outline-offset:1px}
.g-seg.lane.mine::after{width:14px;height:14px;font-size:10px;right:3px;background:#052426;color:#59f22e}
.g-seg.lane.mine:not(.soft){background:#59f22e;box-shadow:none}
.g-seg.lane::before{content:attr(data-o);position:absolute;left:5px;top:50%;transform:translateY(-50%);font-size:10px;line-height:1;letter-spacing:.06em;color:rgba(255,255,255,.75)}
.g-seg.lane.mine:not(.soft)::before{color:#052426}
.g-seg.lane:hover,.g-seg.lane.sel{filter:brightness(1.25)}
.g-hint{font-size:15px;color:var(--text-muted)}
.slot-grp{display:grid;gap:8px;padding:12px 0}
.slot-grp+.slot-grp{border-top:1px dashed var(--line);}
.slot-grp:first-of-type{padding-top:0}
.slot-grp .slot-t{font-size:15px;color:var(--brand-ink);font-variant-numeric:tabular-nums;display:flex;gap:8px;align-items:baseline}
.slot-grp .opts{display:grid;gap:6px;max-width:300px}
.slot-grp.k-talk .opts{grid-template-columns:minmax(0,1fr)}
.slot-grp.k-ws .opts{grid-template-columns:repeat(2,minmax(0,1fr))}
.slot-grp .opts .pick{margin:0;width:100%;justify-content:flex-start}
.slot-grp .pick{font-size:15px;padding:6px 10px 6px 7px;margin:0 5px 5px 0}
.par-note{font-size:14px;color:var(--text-muted);margin-top:6px}

/* ===== V10 Hero-Bühne ===== */
.hero.has-stage .wrap.top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-block:96px 48px;gap:48px}
.stage{position:relative;min-width:0;display:grid;gap:18px}
.stage-cv{width:100%;aspect-ratio:5/4;max-width:100%;display:block;cursor:crosshair;touch-action:pan-y}
.stage-cap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid var(--d-line);padding-top:16px}
.stage-cap p{color:#fff;font-size:19px;line-height:1.4;min-height:1.4em}
.stage-cap p em{font-style:normal;color:var(--brand-green)}
.stage-dots{display:flex;gap:8px}
.stage-dots button{width:36px;height:6px;padding:0;border:0;background:var(--d-line);cursor:pointer;position:relative;overflow:hidden}
.stage-dots button span{position:absolute;inset:0;background:var(--brand-green);transform:scaleX(0);transform-origin:left}
.stage-dots button[aria-current="true"] span{animation:fillbar var(--dur,4.5s) linear forwards}
.stage.paused .stage-dots button[aria-current="true"] span{animation-play-state:paused}
@keyframes fillbar{to{transform:none}}
.stage-hint{position:absolute;top:0;right:0;font-size:13px;letter-spacing:.12em;color:var(--d-muted);pointer-events:none}
.hero .wrap.strip-wrap{display:block;padding-block:0 72px}
.evt.strip{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(4,minmax(0,1fr))}
.evt.strip .count b{font-size:2rem}
.evt.strip .count span{font-size:12px}
.evt.strip .count{border-bottom:0;border-right:1px solid var(--d-line);align-content:center}
.evt.strip .evt-row{grid-template-columns:minmax(0,1fr);gap:6px;border-bottom:0;border-left:1px solid var(--d-line-soft);padding:22px 22px;align-content:start}
.evt.strip .evt-row:nth-child(2){border-left:0}
.evt.strip .evt-v{font-size:17px}
@media(max-width:1080px){.evt.strip{grid-template-columns:repeat(2,minmax(0,1fr))}.evt.strip .count{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--d-line)}.evt.strip .evt-row{border-left:0;border-bottom:1px solid var(--d-line-soft)}.evt.strip .evt-row:nth-child(odd){border-left:1px solid var(--d-line-soft)}}
@media(max-width:900px){.hero.has-stage .wrap.top{grid-template-columns:minmax(0,1fr);padding-block:64px 32px}.stage{max-width:560px}}
@media(max-width:560px){.evt.strip{grid-template-columns:minmax(0,1fr)}.evt.strip .evt-row:nth-child(odd){border-left:0}}
@media(prefers-reduced-motion:reduce){.stage-dots button[aria-current="true"] span{animation:none;transform:none}}

/* ===== V13 Highlight-Video ===== */
.vid-frame{position:relative;aspect-ratio:16/9;max-width:100%;background:#0a3134;border:1px solid var(--d-line);overflow:hidden}
.vid-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.vid-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,36,38,.35),transparent 30%,transparent 70%,rgba(5,36,38,.45));pointer-events:none}
.vid-tag{position:absolute;left:16px;top:14px;z-index:2;font-size:13px;letter-spacing:.14em;color:#fff;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.vid-tag::before{content:"";width:8px;height:8px;background:var(--brand-green);animation:freeGlow 2s ease-in-out infinite}
.vid-pp{position:absolute;right:12px;bottom:14px;z-index:2;width:40px;height:40px;border:1px solid rgba(255,255,255,.4);background:rgba(5,36,38,.55);color:#fff;font-size:13px;cursor:pointer;display:grid;place-items:center}
.vid-pp:hover{border-color:var(--brand-green)}
.vid-bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.15);z-index:2}
.vid-bar i{display:block;height:100%;width:0;background:var(--brand-green)}
.stage.vid .stage-cap a:hover{text-decoration:underline}

/* ===== V17 Speaker-Karten ===== */
.sp-filter{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:40px}
.sp-filter button{font:inherit;font-size:16px;padding:8px 16px;border:1px solid var(--line);background:var(--surface);color:var(--text-muted);cursor:pointer;box-shadow:inset 0 -3px 0 transparent;transition:color .2s,box-shadow .2s}
.sp-filter button[aria-pressed="true"]{color:var(--heading);border-color:var(--brand-ink);box-shadow:inset 0 -3px 0 var(--brand-green)}
.sp-filter .sep{width:1px;background:var(--line);margin:0 6px}
.sp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
@media(max-width:1080px){.sp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.sp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:520px){.sp-grid{grid-template-columns:minmax(0,1fr)}.sp-inner{aspect-ratio:1/1}}
.sp-card{perspective:1400px;min-width:0;animation:fadeUp .4s ease both;animation-delay:calc(var(--i)*40ms)}
.sp-inner{position:relative;aspect-ratio:3/4.3;max-width:100%;transition:transform .7s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d}
.sp-card.flipped .sp-inner{transform:rotateY(180deg)}
.sp-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line)}
.sp-front{background:var(--surface)}
.sp-back{background:var(--brand-ink);color:var(--d-text);transform:rotateY(180deg);padding:22px;gap:12px;border-color:var(--brand-green)}
.sp-photo{position:relative;flex:1 1 auto;min-height:0;background:var(--brand-deep);overflow:hidden}
.sp-photo::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1.5px);background-size:14px 14px}
.sp-photo svg{position:absolute;left:50%;bottom:0;transform:translateX(-50%);height:82%;width:auto}
.sp-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sp-tag{position:absolute;left:12px;top:12px;font-size:12px;letter-spacing:.12em;padding:4px 8px;background:var(--brand-ink);color:#fff;text-transform:uppercase}
.sp-tag.key{background:var(--brand-green);color:var(--brand-ink)}
.sp-ph{position:absolute;right:12px;top:12px;font-size:11px;letter-spacing:.12em;color:rgba(255,255,255,.7);border:1px dashed rgba(255,255,255,.45);padding:3px 7px}
.sp-meta{padding:14px 16px 16px;display:grid;gap:2px;border-top:1px solid var(--line-soft)}
.sp-meta h3{font-size:1.15rem}
.sp-meta .role{font-size:15px;color:var(--text-muted);line-height:1.4}
.sp-flip{position:absolute;right:10px;bottom:10px;z-index:2;width:38px;height:38px;border:1px solid var(--line);background:var(--surface);color:var(--brand-ink);font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:transform .3s,border-color .2s}
.sp-flip:hover{border-color:var(--brand-teal);transform:rotate(90deg)}
.sp-front{cursor:pointer}
.sp-back .when{font-size:13px;letter-spacing:.12em;color:var(--brand-green);text-transform:uppercase}
.sp-back h4{margin:0;font-weight:400;color:#fff;font-size:1.15rem;line-height:1.3;letter-spacing:-.01em}
.sp-back p{font-size:15px;line-height:1.5;color:var(--d-muted)}
.sp-back .acts{margin-top:auto;display:grid;gap:8px}
.sp-back .acts button{font:inherit;font-size:15px;padding:10px 12px;cursor:pointer;text-align:left;border:1px solid var(--d-line);background:transparent;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:8px}
.sp-back .acts button.add{background:var(--brand-green);border-color:var(--brand-green);color:var(--brand-ink)}
.sp-back .acts button.add[aria-pressed="true"]{background:transparent;color:var(--brand-green)}
.sp-back .acts button:hover{border-color:var(--brand-green)}
.sp-back .sp-flip{background:transparent;color:#fff;border-color:var(--d-line);top:10px;bottom:auto}
.sp-card[hidden]{display:none}
.sp-ov{position:fixed;inset:0;z-index:95;background:rgba(5,36,38,.6);display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.sp-dlg{background:var(--surface);width:min(860px,100%);max-height:100%;overflow:auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);animation:mpIn .3s cubic-bezier(.2,.8,.2,1)}
.sp-dlg .sp-photo{min-height:320px}
.sp-dlg .body{padding:32px;display:grid;gap:18px;align-content:start}
.sp-dlg .talk{border-top:1px solid var(--line);padding-top:18px;display:grid;gap:8px}
.sp-dlg .talk .when{font-size:14px;letter-spacing:.12em;color:var(--brand-teal);text-transform:uppercase}
.sp-dlg .links{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
@media(max-width:700px){.sp-dlg{grid-template-columns:minmax(0,1fr)}.sp-dlg .sp-photo{min-height:220px}.sp-dlg .body{padding:22px}}
@media(prefers-reduced-motion:reduce){.sp-inner{transition:none}.sp-card{animation:none}}

/* ===== V19 Academy-Widget ===== */
.ct-wrap{margin-top:56px;border:1px solid var(--line);background:var(--surface)}
.ct-head{display:flex;flex-wrap:wrap;gap:20px 32px;justify-content:space-between;align-items:end;padding:28px 32px;border-bottom:1px solid var(--line-soft)}
.ct-panel{padding:24px 32px 32px;min-height:220px}
.ct-fallback{padding:28px 32px 32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:32px;align-items:center}
.ct-sk{display:grid;gap:10px;padding:20px;border:1px dashed var(--line);background:var(--surface-soft)}
.ct-sk i{display:block;height:12px;background:var(--line-soft)}.ct-sk i:nth-child(1){width:60%;height:18px}.ct-sk i:nth-child(3){width:80%}
.ct-sk b{display:block;width:130px;height:40px;background:#245459;margin-top:8px}
@media(max-width:700px){.ct-head,.ct-panel,.ct-fallback{padding-left:20px;padding-right:20px}.ct-fallback{grid-template-columns:minmax(0,1fr)}}

/* ===== V20 einklappbare Leiste ===== */
.mybar .btns{align-items:center}
.my-clr{font:inherit;font-size:15px;height:44px;padding:0 16px;border:1px solid var(--d-line);background:transparent;color:#fff;cursor:pointer}
.my-clr:hover{border-color:var(--brand-green)}
.my-min{width:44px;height:44px;border:1px solid var(--d-line);background:transparent;color:#fff;font-size:18px;line-height:1;cursor:pointer}
.my-min:hover{border-color:var(--brand-green)}
.mytab{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:70;display:flex;align-items:center;gap:10px;font:inherit;font-size:15px;padding:10px 14px 10px 10px;background:var(--brand-ink);color:#fff;border:1px solid var(--brand-green);cursor:pointer;transform:translateY(calc(100% + 40px));transition:transform .35s cubic-bezier(.2,.8,.2,1);box-shadow:0 6px 24px rgba(5,36,38,.25)}
.mytab.show{transform:none}
.mytab b{display:inline-grid;place-items:center;min-width:26px;height:26px;background:var(--brand-green);color:var(--brand-ink);font-weight:500;font-variant-numeric:tabular-nums}
.mytab span{color:var(--brand-green)}

/* ===== V21 Anleitung + Coach-Mark ===== */
.howto{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.hstep{flex:1 1 220px;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:14px;align-items:center;padding:16px 18px;border:1px solid var(--line);background:var(--surface);min-width:0}
.hn{width:30px;height:30px;border:1px solid var(--line);display:grid;place-items:center;font-size:15px;color:var(--brand-teal)}
.hill{position:relative;width:64px;height:40px;display:grid;place-items:center}
.hb{width:52px;height:28px;background:#245459;position:relative;display:grid;place-items:center}
.hb.on{box-shadow:inset 0 0 0 3px #59f22e}
.hb.on i{font-style:normal;width:16px;height:16px;background:#59f22e;color:#052426;font-size:11px;display:grid;place-items:center;position:absolute;right:4px}
.hcur{position:absolute;width:20px;height:20px;right:2px;bottom:-2px;animation:hTap 2.4s ease-in-out infinite}
@keyframes hTap{0%,100%{transform:translate(8px,8px)}40%,60%{transform:translate(-8px,-6px)}50%{transform:translate(-8px,-6px) scale(.85)}}
.hill .hb{animation:hFlash 2.4s ease-in-out infinite}
.hill .hb.on{animation:none}
@keyframes hFlash{0%,45%{box-shadow:none}52%,100%{box-shadow:inset 0 0 0 3px #59f22e}}
.hill.files{display:flex;gap:3px;width:auto}
.hill.files em{font-style:normal;font-size:10px;letter-spacing:.06em;padding:4px 4px;border:1px solid var(--brand-ink);color:var(--brand-ink)}
.hill.files em:first-child{background:var(--brand-green);border-color:var(--brand-green)}
.ht{display:grid;gap:2px;font-size:14px;line-height:1.4;color:var(--text-muted)}
.ht b{font-weight:500;font-size:16px;color:var(--heading)}
.harr{align-self:center;color:var(--brand-teal);font-size:20px}
@media(max-width:860px){.harr{display:none}}
.coach-host{position:relative}
.coach{position:absolute;z-index:6;pointer-events:none;transition:opacity .4s}
.coach[hidden]{display:none}
.coach .ring{position:absolute;left:-18px;top:-18px;width:36px;height:36px;border:2px solid #59f22e;animation:cRing 1.8s ease-out infinite}
@keyframes cRing{0%{transform:scale(.4);opacity:1}100%{transform:scale(1.6);opacity:0}}
.coach svg{position:absolute;left:-4px;top:-4px;width:30px;height:30px;filter:drop-shadow(0 2px 4px rgba(5,36,38,.35));animation:cTap 1.8s ease-in-out infinite}
@keyframes cTap{0%,100%{transform:translate(10px,10px)}45%,60%{transform:translate(0,0)}52%{transform:translate(0,0) scale(.88)}}
.coach .bub{position:absolute;left:28px;top:20px;white-space:nowrap;background:#052426;color:#fff;font-size:14px;padding:8px 12px;border-left:3px solid #59f22e;pointer-events:auto;display:flex;gap:10px;align-items:center}
.coach .bub.left{left:auto;right:28px}
.coach .bub button{font:inherit;font-size:13px;background:none;border:0;color:var(--brand-green);cursor:pointer;padding:0;text-decoration:underline}
@media(prefers-reduced-motion:reduce){.hcur,.hill .hb,.coach .ring,.coach svg{animation:none}}

/* ===== V23 Neuerungen als ganze Kacheln ===== */
a.new-item{display:flex;flex-direction:column;gap:14px;padding:32px 28px;text-decoration:none!important;color:var(--text);cursor:pointer}
a.new-item.hl-box{color:var(--d-text)}
a.new-item h3{min-height:2.6em;margin:0}
a.new-item p{font-size:17px;line-height:1.55;flex:1 1 auto}
a.new-item .more{margin-top:8px;font-size:17px;color:var(--accent-text);transition:transform .25s}
a.new-item:hover .more{transform:translateX(4px)}
a.new-item:focus-visible{outline:2px solid var(--brand-green);outline-offset:3px}

/* ===== V24 Hotels ===== */
.hotels.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border-top:0}
.hotels.four .hotel{display:flex;flex-direction:column;gap:12px;padding:32px;border:1px solid var(--line)}
.hotels.four .hotel h3{margin:4px 0 0}
.hotels.four .hotel .badge{align-self:flex-start}
.hotels.four .hotel p{margin:0}
.hotels.four .hotel .small:not(.muted){flex:1 1 auto}
.h-links{display:grid;gap:6px;margin-top:8px;padding-top:16px;border-top:1px solid var(--line-soft);font-size:16px}
.h-links a{overflow-wrap:anywhere}
@media(max-width:900px){.hotels.four{grid-template-columns:minmax(0,1fr);gap:16px}.hotels.four .hotel{padding:24px}}

/* ===== V27 FAQ neu ===== */
.fq-wrap{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start;max-width:1080px;margin:0 auto}
.fq-wrap.compact{grid-template-columns:minmax(0,1fr);max-width:900px}
.fq-side{position:sticky;top:calc(env(safe-area-inset-top,0px) + 96px);display:grid;gap:20px}
.fq-search{position:relative}
.fq-search input{width:100%;font:inherit;font-size:17px;padding:13px 14px 13px 42px;border:1px solid var(--line);background:var(--surface);color:var(--brand-ink)}
.fq-search input:focus{outline:2px solid var(--brand-green);outline-offset:0;border-color:var(--brand-ink)}
.fq-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px}
.fq-cats{display:grid;border-top:1px solid var(--line)}
.fq-cats button{font:inherit;font-size:16px;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;border:0;border-bottom:1px solid var(--line-soft);background:none;color:var(--text-muted);cursor:pointer;transition:color .2s,padding .2s}
.fq-cats button span{font-size:13px;min-width:26px;height:22px;display:grid;place-items:center;border:1px solid var(--line);color:var(--text-muted);font-variant-numeric:tabular-nums}
.fq-cats button:hover{color:var(--heading)}
.fq-cats button[aria-pressed="true"]{color:var(--heading)}
.fq-cats button[aria-pressed="true"] span{background:var(--brand-green);border-color:var(--brand-green);color:var(--brand-ink)}
.fq-help{font-size:15px;color:var(--text-muted);line-height:1.5}
.fq-help a{display:inline-block;margin-top:4px}
.fq-list{display:grid;gap:12px;min-width:0}
.fq{border:1px solid var(--line);background:var(--surface);transition:border-color .25s,box-shadow .25s}
.fq:hover{border-color:rgba(5,36,38,.3)}
.fq.open{border-color:var(--brand-ink);box-shadow:0 8px 28px rgba(5,36,38,.08)}
.fq-q{width:100%;font:inherit;text-align:left;background:none;border:0;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:8px 20px;align-items:center;padding:20px 22px;color:var(--heading)}
.fq-q .fq-c{grid-column:1;font-size:12px;letter-spacing:.14em;color:var(--brand-teal);text-transform:uppercase}
.fq-q .fq-t{grid-column:1;font-size:1.15rem;line-height:1.35;letter-spacing:-.01em}
.fq-q .fq-i{grid-column:2;grid-row:1/span 2;width:40px;height:40px;border:1px solid var(--line);position:relative;transition:background .25s,border-color .25s,transform .35s}
.fq-q .fq-i::before,.fq-q .fq-i::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;background:var(--brand-teal);transform:translate(-50%,-50%);transition:transform .35s,background .25s}
.fq-q .fq-i::after{transform:translate(-50%,-50%) rotate(90deg)}
.fq.open .fq-i{background:var(--brand-green);border-color:var(--brand-green);transform:rotate(180deg)}
.fq.open .fq-i::before,.fq.open .fq-i::after{background:var(--brand-ink)}
.fq.open .fq-i::after{transform:translate(-50%,-50%) rotate(0deg)}
.fq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.8,.2,1)}
.fq.open .fq-a{grid-template-rows:1fr}
.fq-a>div{overflow:hidden;min-height:0}
.fq-in{padding:0 22px 22px;display:grid;gap:14px;font-size:17px;line-height:1.6}
.fq-in ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.fq-in li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px}
.fq-in li::before{content:"✓";color:var(--brand-teal)}
.fq-acts{display:flex;flex-wrap:wrap;gap:10px;padding-top:14px;border-top:1px solid var(--line-soft)}
.fq-acts a{font-size:15px;padding:8px 14px;border:1px solid var(--line);color:var(--brand-ink)!important;text-decoration:none!important;transition:border-color .2s,background .2s}
.fq-acts a:hover{border-color:var(--brand-ink);background:var(--surface-soft)}
.fq-acts a.pri{background:var(--brand-green);border-color:var(--brand-green)}
.fq mark{background:rgba(89,242,46,.45);color:inherit;padding:0 1px}
.fq-empty{border:1px dashed var(--line);padding:28px;text-align:center;color:var(--text-muted)}
.fq[hidden]{display:none}
@media(max-width:900px){.fq-wrap{grid-template-columns:minmax(0,1fr);gap:24px}.fq-side{position:static}.fq-cats{display:flex;overflow-x:auto;gap:8px;border-top:0;padding-bottom:4px}.fq-cats button{flex:0 0 auto;border:1px solid var(--line);padding:8px 12px}.fq-cats button[aria-pressed="true"]{border-color:var(--brand-ink);box-shadow:inset 0 -3px 0 var(--brand-green)}.fq-help{display:none}}
@media(prefers-reduced-motion:reduce){.fq-a,.fq-i,.fq-i::before,.fq-i::after{transition:none}}

/* ===== V28 Formate ===== */
.fm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.fm{display:flex;flex-direction:column;gap:16px;padding:28px;border:1px solid var(--line);background:var(--surface)}
.fm-vis{height:92px;display:flex;align-items:center;padding:12px;background:var(--surface-soft);border:1px solid var(--line-soft)}
.fm-lanes{width:100%;display:grid;gap:4px}
.fm-lanes span{display:flex;align-items:center;height:16px;padding:0 8px}
.fm-lanes.plen{grid-template-columns:1fr 1fr .9fr;gap:6px}
.fm-lanes.plen span{height:52px}
.fm-lanes i{font-style:normal;font-size:11px;letter-spacing:.08em;color:rgba(255,255,255,.85);text-transform:uppercase}
.fm-k{font-size:13px;letter-spacing:.14em;color:var(--brand-teal);text-transform:uppercase}
.fm-n{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line-soft)}
.fm-n b{font-weight:400;font-size:3rem;line-height:1;color:var(--brand-ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.fm-n span{font-size:15px;line-height:1.4;color:var(--heading)}
.fm p{font-size:17px;line-height:1.55;margin:0}
@media(max-width:960px){.fm-grid{grid-template-columns:minmax(0,1fr)}}

/* ===== V30 Stream-Farben ===== */
.sw{width:10px;height:10px;flex:0 0 10px;display:inline-block}
.sw[data-o="G"]{background:#147373}.sw[data-o="R"]{background:#0897b4}.sw[data-o="C"]{background:#f2cdac}
.sw[data-o="1"],.sw[data-o="2"],.sw[data-o="3"],.sw[data-o="4"]{display:none}
.slot-grp.k-talk .pick[data-o="G"]{box-shadow:inset 0 -3px 0 #147373}
.slot-grp.k-talk .pick[data-o="R"]{box-shadow:inset 0 -3px 0 #0897b4}
.slot-grp.k-talk .pick[data-o="C"]{box-shadow:inset 0 -3px 0 #f2cdac}
.slot-grp .pick[aria-pressed="true"]{box-shadow:none}
.slot-grp .pick[aria-pressed="true"] .sw{outline:1px solid rgba(255,255,255,.6)}
.slot-grp.k-ws .pick{font-variant-numeric:tabular-nums}
.slot-hint{display:none;font-size:13px;color:var(--brand-ink);background:rgba(89,242,46,.25);padding:4px 8px;justify-self:start}
.slot-grp.pending .slot-hint{display:block}
.slot-grp.pending .opts{outline:2px dashed #59f22e;outline-offset:4px}
.g-seg.lane.k-talk[data-o="G"]{background:#147373}
.g-seg.lane.k-talk[data-o="R"]{background:#0897b4}
.g-seg.lane.k-talk[data-o="C"]{background:#f2cdac}
.g-seg.lane.k-talk[data-o="C"]::before{color:#052426}
.g-legend i{vertical-align:-1px}
.g-seg.lane.k-talk.mine:not(.soft){background:#59f22e}
.g-seg.lane.k-talk.mine:not(.soft)::before{color:#052426}

/* ===== V31 Agenda statt Tabelle ===== */
.ag2-switch{display:none;margin-bottom:16px}
.ag2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.ag2-col{border:1px solid var(--line);background:var(--surface);min-width:0}
.ag2-head{display:grid;grid-template-columns:auto 1fr;gap:2px 14px;align-items:baseline;padding:20px 22px;background:var(--brand-ink);color:#fff;position:sticky;top:calc(env(safe-area-inset-top,0px) + 76px);z-index:4}
.ag2-head b{font-weight:400;font-size:1.5rem;letter-spacing:-.02em;grid-row:1/span 2}
.ag2-head span{font-size:16px}
.ag2-head em{font-style:normal;font-size:14px;color:var(--d-muted)}
.ag2-list{display:grid;padding:8px 0}
.ag2-it{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:4px 16px;align-items:start;padding:16px 22px;border-top:1px solid var(--line-soft);background:var(--surface);text-align:left;font:inherit;color:inherit;width:100%;margin:0;border-left:0;border-right:0;border-bottom:0;transition:background .2s}
.ag2-list>:first-child{border-top:0}
.ag2-it.one{cursor:pointer}
.ag2-it.one.pick{display:grid;border:0;border-top:1px solid var(--line-soft);padding:16px 22px;margin:0;font-size:inherit;line-height:inherit;background:var(--surface);color:inherit;align-items:start}
.ag2-list>.ag2-it.one.pick:first-child{border-top:0}
.ag2-it.one.pick:hover{background:var(--surface-soft);border-color:var(--line-soft)}
.ag2-it.one.pick[aria-pressed="true"]{color:inherit}
.ag2-it.one:hover{background:var(--surface-soft)}
.ag2-time{display:grid;line-height:1.25;font-variant-numeric:tabular-nums}
.ag2-time b{font-weight:400;font-size:19px;color:var(--brand-ink)}
.ag2-time small{font-size:13px;color:var(--text-muted)}
.ag2-body{display:grid;gap:4px;min-width:0}
.ag2-tag{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.sq{width:10px;height:10px;display:inline-block;flex:0 0 10px}
.sq.k-reg{background:#0897b4}.sq.k-open{background:#d6dedd}.sq.k-news{background:#147373}.sq.k-talk{background:linear-gradient(90deg,#147373 33%,#0897b4 33% 66%,#f2cdac 66%)}.sq.k-ws{background:#0a3134}.sq.k-key{background:#59f22e}.sq.k-gt{background:#f2cdac}
.ag2-body h4{margin:0;font-weight:400;font-size:17px;line-height:1.35;color:var(--heading)}
.ag2-chk{align-self:center;display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-muted)}
.ag2-chk .box{flex:0 0 22px;width:22px;height:22px;box-sizing:border-box;border:1px solid var(--brand-teal);display:grid;place-items:center;font-size:13px}
.ag2-chk .lbl-on{display:none}
.ag2-it.one[aria-pressed="true"]{background:rgba(89,242,46,.12)}
.ag2-it.one[aria-pressed="true"] .box{background:var(--brand-green);border-color:var(--brand-green);color:var(--brand-ink)}
.ag2-it.one[aria-pressed="true"] .box::before{content:"✓"}
.ag2-it.one[aria-pressed="true"] .lbl-on{display:inline;color:var(--brand-ink)}
.ag2-it.one[aria-pressed="true"] .lbl-off{display:none}
.ag2-it.par{grid-template-columns:72px minmax(0,1fr)}
.ag2-opts{display:grid;gap:6px;margin-top:10px}
.ag2-it.k-talk .ag2-opts{grid-template-columns:repeat(3,minmax(0,1fr))}
.ag2-it.k-ws .ag2-opts{grid-template-columns:repeat(4,minmax(0,1fr))}
.ag2-opts .pick.opt{margin:0;width:100%;justify-content:flex-start;gap:7px;font-size:14px;padding:8px 8px;min-width:0;white-space:nowrap;overflow:hidden}
.ag2-opts .pick.opt .box{width:16px;height:16px;flex:0 0 16px;font-size:10px}
.ag2-it.k-talk .pick.opt[data-id$="-G"]{box-shadow:inset 0 -3px 0 #147373}
.ag2-it.k-talk .pick.opt[data-id$="-R"]{box-shadow:inset 0 -3px 0 #0897b4}
.ag2-it.k-talk .pick.opt[data-id$="-C"]{box-shadow:inset 0 -3px 0 #f2cdac}
.ag2-opts .pick.opt[aria-pressed="true"]{box-shadow:none}
.ag2-it.par.pending{background:rgba(89,242,46,.08)}
.ag2-it.par.pending .ag2-opts{outline:2px dashed #59f22e;outline-offset:3px}
.ag2-it.par .slot-hint{margin-top:8px}
.ag2-it.par.pending .slot-hint{display:block}
.ag2-pause{display:flex;justify-content:space-between;gap:12px;padding:8px 22px;font-size:13px;letter-spacing:.06em;color:var(--text-muted);background:repeating-linear-gradient(135deg,rgba(5,36,38,.05) 0 6px,transparent 6px 12px);border-top:1px solid var(--line-soft)}
.ag2-pause.end{background:var(--surface-soft);color:var(--brand-ink)}
@media(max-width:1100px){.ag2-it.k-ws .ag2-opts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){
  .ag2-switch{display:inline-flex}
  .ag2{grid-template-columns:minmax(0,1fr)}
  .ag2[data-show="1"] .ag2-col[data-d="2"],.ag2[data-show="2"] .ag2-col[data-d="1"]{display:none}
  .ag2-head{position:static}
}
@media(max-width:480px){.ag2-it.one.pick{padding:14px}.ag2-it{grid-template-columns:58px minmax(0,1fr) auto;padding:14px 14px;gap:4px 10px}.ag2-it.par{grid-template-columns:58px minmax(0,1fr)}.ag2-it.k-talk .ag2-opts{grid-template-columns:minmax(0,1fr)}.ag2-chk .lbl-off,.ag2-chk .lbl-on{display:none!important}.ag2-pause{padding:8px 14px}}

/* ===== V37 Tagesreise ===== */
.jr{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.jr-line{position:absolute;left:0;right:0;top:44px;height:2px;background:linear-gradient(90deg,#147373,#0897b4 35%,#0a3134 65%,#59f22e);transform-origin:left;animation:jrLine 1.4s cubic-bezier(.2,.8,.2,1) both}
@keyframes jrLine{from{transform:scaleX(.15)}to{transform:none}}
.jr-st{position:relative;display:grid;grid-template-rows:auto auto 1fr;gap:12px;text-decoration:none!important;color:var(--text)!important;min-width:0}
.jr-card h3{color:var(--heading)}
.fm-lanes span[style*="#f2cdac"] i{color:#052426}
.jr-time{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-teal);height:20px}
.jr-node{width:22px;height:22px;border:3px solid var(--surface);outline:1px solid var(--line);position:relative;z-index:1;transition:transform .3s}
.jr-node.k-news{background:#147373}.jr-node.k-talk{background:linear-gradient(90deg,#147373 33%,#0897b4 33% 66%,#f2cdac 66%)}.jr-node.k-ws{background:#0a3134}.jr-node.k-key{background:#59f22e}
.jr-card{display:flex;flex-direction:column;gap:12px;padding:22px;border:1px solid var(--line);background:var(--surface);transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s;height:100%}
.jr-card h3{margin:4px 0 0;font-size:1.25rem}
.jr-txt{font-size:17px;line-height:1.55;flex:1 1 auto}
.jr-more{font-size:16px;color:var(--accent-text);transition:transform .25s}
.jr-vis{height:84px}
.fm-lanes.plen2{grid-template-columns:1fr 1fr;display:grid;gap:6px}
.fm-lanes.plen2 span{height:48px}
.jr-st:hover .jr-card,.jr-st:focus-visible .jr-card{transform:translateY(-6px);border-color:var(--brand-ink);box-shadow:0 12px 30px rgba(5,36,38,.10)}
.jr-st:hover .jr-node{transform:scale(1.25)}
.jr-st:hover .jr-more{transform:translateX(4px)}
.jr-st:focus-visible{outline:none}
@media(max-width:1000px){.jr{grid-template-columns:repeat(2,minmax(0,1fr))}.jr-line{display:none}}
@media(max-width:600px){.jr{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.jr-line{animation:none}.jr-card,.jr-node{transition:none}}

/* ===== V38 Keynote-Bühne ===== */
.kn-sec{position:relative;overflow:hidden}
.kn-sec::after{content:"";position:absolute;width:820px;height:820px;left:-320px;bottom:-460px;background:radial-gradient(circle,rgba(89,242,46,.14),transparent 62%);pointer-events:none}
.kn{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}
.kn-pic{position:relative;aspect-ratio:4/5;max-width:100%;background:var(--brand-ink-raised);border:1px solid var(--d-line);overflow:hidden}
.kn-pic::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1.5px);background-size:16px 16px}
.kn-pic svg.sil{position:absolute;left:50%;bottom:0;transform:translateX(-50%);height:78%;width:auto}
.kn-pic .scan{position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#59f22e,transparent);box-shadow:0 0 18px rgba(89,242,46,.7);animation:knScan 3.2s ease-in-out infinite}
@keyframes knScan{0%{top:12%}50%{top:86%}100%{top:12%}}
.kn-pic .q{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(5rem,12vw,9rem);color:rgba(255,255,255,.08);letter-spacing:-.04em;user-select:none}
.kn-badge{position:absolute;left:16px;top:16px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;background:var(--brand-green);color:var(--brand-ink);padding:6px 10px}
.kn-plate{position:absolute;left:0;right:0;bottom:0;padding:18px 20px;background:linear-gradient(0deg,rgba(5,36,38,.95),rgba(5,36,38,0));display:grid;gap:2px}
.kn-plate b{font-weight:400;font-size:1.4rem;color:#fff}
.kn-plate span{font-size:15px;color:var(--d-muted)}
.kn-body{display:grid;gap:20px;min-width:0}
.kn-body h2 em{font-style:normal;color:var(--brand-green)}
.kn-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--d-line);border-bottom:1px solid var(--d-line)}
.kn-facts div{padding:16px 18px 16px 0;display:grid;gap:4px}
.kn-facts div+div{padding-left:18px;border-left:1px solid var(--d-line-soft)}
.kn-facts span{font-size:12px;letter-spacing:.14em;color:var(--d-muted);text-transform:uppercase}
.kn-facts b{font-weight:400;font-size:17px;color:#fff}
.kn-bio{font-size:17px;line-height:1.6;color:var(--d-text);max-width:38em}
.kn-demo{margin-top:32px;cursor:pointer;gap:8px;align-items:center}
.show-notes .kn-demo{display:flex}
@media(max-width:900px){.kn{grid-template-columns:minmax(0,1fr);gap:36px}.kn-pic{max-width:380px}.kn-facts{grid-template-columns:minmax(0,1fr)}.kn-facts div+div{padding-left:0;border-left:0;border-top:1px solid var(--d-line-soft)}}
@media(prefers-reduced-motion:reduce){.kn-pic .scan{animation:none;top:50%}}

/* ===== V39 Neuerungen, Spotlight, Kombi, Footer ===== */
.hero h1 + .motto:empty{display:none}
.hero .motto{font-size:clamp(1.2rem,2vw,1.6rem);color:var(--brand-green);margin:-8px 0 0}
.evt.strip{grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr))}
@media(max-width:1080px){.evt.strip{grid-template-columns:repeat(3,minmax(0,1fr))}.evt.strip .evt-row,.evt.strip .evt-row:nth-child(odd){border-left:1px solid var(--d-line-soft)}.evt.strip .evt-row:nth-child(2){border-left:0}}
@media(max-width:700px){.evt.strip{grid-template-columns:minmax(0,1fr)}.evt.strip .evt-row,.evt.strip .evt-row:nth-child(odd){border-left:0}}
.news2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media(max-width:700px){.news2{grid-template-columns:minmax(0,1fr)}}
.spot{margin-top:24px;background:var(--brand-ink);color:var(--d-text);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1fr);border:1px solid var(--brand-green)}
.spot-head{padding:36px 32px;display:grid;gap:12px;align-content:start}
.spot-head .new-k{color:var(--brand-green)}
.spot-head h3{color:#fff;margin:0}
.spot-head p{color:var(--d-muted);font-size:17px;line-height:1.55;margin:0}
a.spot-card{padding:36px 32px;border-left:1px solid var(--d-line);display:flex;flex-direction:column;gap:12px;color:var(--d-text);text-decoration:none!important;transition:background .25s}
a.spot-card:hover{background:rgba(255,255,255,.04)}
a.spot-card:focus-visible{outline:2px solid var(--brand-green);outline-offset:-2px}
.spot-tag{align-self:flex-start;font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;background:#147373;color:#fff}
.spot-card.uk .spot-tag{background:var(--brand-green);color:var(--brand-ink)}
.spot-card h4{margin:0;font-weight:400;font-size:1.5rem;line-height:1.25;color:#fff}
.spot-card p{margin:0;flex:1 1 auto;font-size:17px;line-height:1.55}
.spot-card .more{color:var(--brand-green);font-size:17px;transition:transform .25s}
a.spot-card:hover .more{transform:translateX(4px)}
@media(max-width:980px){.spot{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.spot-head{grid-column:1/-1;padding-bottom:8px}.spot-card:nth-of-type(1){border-left:0}a.spot-card{border-top:1px solid var(--d-line)}a.spot-card.uk{border-left:1px solid var(--d-line)}}
@media(max-width:620px){.spot{grid-template-columns:minmax(0,1fr)}a.spot-card.uk{border-left:0}.spot-head,a.spot-card{padding:28px 22px}}
.hdl{width:30px;height:30px}
.info-big .fm-grid{margin-top:8px}
.ticket.combo{background:var(--brand-ink);color:var(--d-text);--heading:#fff;outline:1px solid var(--brand-green);outline-offset:-1px}
.ticket.combo .eyebrow{color:var(--brand-green)}
.ticket.combo h3{color:#fff}
.ticket.combo .price.free{color:var(--brand-green)}
.ticket.combo .muted{color:var(--d-muted)!important}
.ticket.combo .check li{color:var(--d-text)}
.ftr .wrap{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,.7fr)}
@media(max-width:1000px){.ftr .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.ftr .wrap{grid-template-columns:minmax(0,1fr)}}

/* ===== V40 Spotlight-Karussell ===== */
.spot{grid-template-columns:minmax(0,.9fr) minmax(0,2fr)}
.spot-nav{display:flex;align-items:center;gap:14px;margin-top:12px}
.spot-arr{width:44px;height:44px;border:1px solid var(--d-line);background:none;color:#fff;font:inherit;font-size:18px;cursor:pointer;transition:border-color .2s,color .2s}
.spot-arr:hover,.spot-arr:focus-visible{border-color:var(--brand-green);color:var(--brand-green);outline:none}
.spot-no{font-size:15px;color:var(--d-muted);font-variant-numeric:tabular-nums}.spot-no b{font-weight:400;color:#fff}
.spot-stage{position:relative;border-left:1px solid var(--d-line);display:grid;min-height:300px}
a.spot-slide{grid-area:1/1;padding:36px 40px 64px;display:flex;flex-direction:column;gap:12px;color:var(--d-text);text-decoration:none!important;animation:spotIn .5s ease both}
a.spot-slide[hidden]{display:none}
a.spot-slide:hover{background:rgba(255,255,255,.03)}
a.spot-slide:focus-visible{outline:2px solid var(--brand-green);outline-offset:-2px}
@keyframes spotIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
.spot-slide.uk .spot-tag{background:var(--brand-green);color:var(--brand-ink)}
.spot-meta{font-size:14px;letter-spacing:.06em;color:var(--brand-green)}
.spot-slide h4{margin:0;font-weight:400;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.2;color:#fff}
.spot-slide p{margin:0;flex:1 1 auto;font-size:17px;line-height:1.6;max-width:60ch}
.spot-slide .more{color:var(--brand-green);font-size:17px;transition:transform .25s}
a.spot-slide:hover .more{transform:translateX(4px)}
.spot-dots{position:absolute;left:40px;right:40px;bottom:28px;display:flex;gap:8px}
.spot-dots button{flex:1 1 0;max-width:72px;height:4px;padding:0;border:0;background:var(--d-line);cursor:pointer;position:relative;overflow:hidden}
.spot-dots button::after{content:"";position:absolute;inset:0;background:var(--brand-green);transform:scaleX(0);transform-origin:left}
.spot-dots button.done::after{transform:none}
.spot-dots button[aria-current="true"]::after{animation:spotBar var(--spot-dur,7s) linear forwards}
.spot.paused .spot-dots button[aria-current="true"]::after{animation-play-state:paused}
@keyframes spotBar{to{transform:none}}
@media(max-width:860px){.spot{grid-template-columns:minmax(0,1fr)}.spot-head{padding-bottom:20px}.spot-stage{border-left:0;border-top:1px solid var(--d-line)}a.spot-slide{padding:28px 22px 60px}.spot-dots{left:22px;right:22px}}
@media(prefers-reduced-motion:reduce){a.spot-slide{animation:none}.spot-dots button[aria-current="true"]::after{animation:none;transform:none}}

/* ===== V41 Spotlight feste Höhe ===== */
a.spot-slide{visibility:hidden;opacity:0;animation:none}
a.spot-slide.on{visibility:visible;opacity:1;animation:spotIn .5s ease both}
@media(prefers-reduced-motion:reduce){a.spot-slide.on{animation:none}}

/* ===== V42 Agenda nur lesend ===== */
.ag2-it.ro{grid-template-columns:72px minmax(0,1fr);cursor:default}
.ag2-it.ro:hover{background:var(--surface)}
.ag2-desc{margin:2px 0 0;font-size:15px;line-height:1.5;color:var(--text-muted)}
.ag2-opts.ro{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ag2-opt{display:inline-flex;align-items:center;gap:7px;font-size:14px;padding:6px 10px;border:1px solid var(--line-soft);background:var(--surface-soft);color:var(--brand-ink)}
.ag2-opt .sw{width:10px;height:10px;flex:0 0 10px;background:#0a3134}
.ag2-opt[data-o="G"] .sw{background:#147373}.ag2-opt[data-o="R"] .sw{background:#0897b4}.ag2-opt[data-o="C"] .sw{background:#f2cdac}
@media(max-width:480px){.ag2-it.ro{grid-template-columns:58px minmax(0,1fr)}}

/* ===== V43 Agenda mit Details ===== */
.ag2-it.ro .ag2-body{gap:6px}
.ag2-desc{font-size:15px;line-height:1.6;color:var(--text);max-width:62ch}
.ag2-lanes{display:grid;gap:8px;margin-top:10px}
.ag2-lanes.k-talk{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1100px) and (min-width:861px),(max-width:560px){.ag2-lanes.k-talk{grid-template-columns:minmax(0,1fr)}}
.ag2-lanes.k-ws{grid-template-columns:repeat(2,minmax(0,1fr))}
.ag2-lane{border:1px solid var(--line-soft);background:var(--surface-soft);padding:12px 14px;display:grid;gap:4px;min-width:0}
.ag2-lane b{display:flex;align-items:center;gap:8px;font-weight:500;font-size:15px;color:var(--brand-ink)}
.ag2-lane .sw{width:10px;height:10px;flex:0 0 10px;background:#0a3134}
.ag2-lane[data-o="G"] .sw{background:#147373}.ag2-lane[data-o="R"] .sw{background:#0897b4}.ag2-lane[data-o="C"] .sw{background:#f2cdac}
.ag2-lane span{font-size:14px;line-height:1.5;color:var(--text)}
.ag2-lane em{font-style:normal;font-size:13px;color:var(--text-muted)}
@media(max-width:480px){.ag2-lanes.k-ws{grid-template-columns:minmax(0,1fr)}}

/* ===== V44 Speaker in der Agenda ===== */
.ag2-spk{display:flex;align-items:center;gap:10px;margin-top:6px;padding:4px 10px 4px 4px;border:1px solid var(--line-soft);background:var(--surface);font:inherit;color:inherit;text-align:left;cursor:pointer;justify-self:start;max-width:100%;transition:border-color .2s,background .2s}
.ag2-spk:hover,.ag2-spk:focus-visible{border-color:var(--brand-teal);background:#fff;outline:none}
.ag2-spk .av{width:36px;height:36px;flex:0 0 36px;background:#245459;display:block;overflow:hidden}
.ag2-spk .av svg,.ag2-spk .av img{width:100%;height:100%;display:block;object-fit:cover}
.ag2-spk .nm{display:grid;line-height:1.25;min-width:0}
.ag2-spk .nm b{font-weight:500;font-size:14px;color:var(--brand-ink)}
.ag2-spk .nm small{font-size:12px;color:var(--text-muted)}
.ag2-spk .go{margin-left:auto;font-size:13px;color:var(--brand-teal);white-space:nowrap;padding-left:6px}
.ag2-lane .ag2-spk{background:var(--surface)}

/* ===== V45 Streams als Zeilen ===== */
.ag2-lanes.k-talk{grid-template-columns:minmax(0,1fr)!important}
.ag2-lanes.k-talk .ag2-lane{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px}
.ag2-lanes.k-talk .ag2-lane b{grid-column:1}.ag2-lanes.k-talk .ag2-lane em{grid-column:1}
.ag2-lanes.k-talk .ag2-spk{grid-column:2;grid-row:1/span 2;margin-top:0}
@media(max-width:480px){.ag2-lanes.k-talk .ag2-lane{grid-template-columns:minmax(0,1fr)}.ag2-lanes.k-talk .ag2-spk{grid-column:1;grid-row:auto;margin-top:6px}}

/* ===== V46 Speaker bei jedem Slot ===== */
.ag2-lanes.k-ws .ag2-lane{align-content:start}
.ag2-lanes.k-ws .ag2-spk{margin-top:6px}
.ag2-lanes.k-ws .ag2-spk .go{display:none}
@media(min-width:1101px),(max-width:860px) and (min-width:481px){.ag2-lanes.k-ws .ag2-spk .go{display:inline}}

/* ===== V47 Speaker im Programmwähler, Abstände ===== */
.g-spk{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}
.g-spk .ag2-spk{margin-top:0}
#tagesablauf{padding-bottom:40px!important}
#tagesablauf .btns{margin-top:40px!important}
#zeitleiste{padding-top:64px!important}

/* ===== V47b mehrere Speaker pro Slot ===== */
.spk-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.spk-row .ag2-spk{margin-top:0}
.ag2-lanes.k-talk .ag2-lane{grid-template-columns:minmax(0,1fr)}
.ag2-lanes.k-talk .spk-row{grid-column:1;grid-row:auto;margin-top:6px;justify-content:flex-start}
.ag2-lanes.k-ws .spk-row{margin-top:6px}
@media(max-width:480px){.ag2-lanes.k-talk .spk-row{grid-column:1;grid-row:auto;margin-top:6px;justify-content:flex-start}}

/* ===== V48 Agenda zeilenweise ausgerichtet ===== */
.ag2.rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:0;align-items:stretch}
.ag2.rows .ag2-head{position:sticky}
.ag2-cell{border-left:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface);display:grid;min-width:0}
.ag2-cell>*{height:100%;box-sizing:border-box}
.ag2-cell.first>.ag2-it{border-top:0}
.ag2-cell.first{padding-top:8px}
.ag2-cell.last{border-bottom:1px solid var(--line);align-self:start}
.ag2-cell.last>*{height:auto}
@media(max-width:860px){
  .ag2.rows{grid-template-columns:minmax(0,1fr)}
  .ag2.rows>[data-d]{grid-column:1!important;grid-row:auto!important}
  .ag2.rows[data-show="1"]>[data-d="2"],.ag2.rows[data-show="2"]>[data-d="1"]{display:none}
}

/* ===== V49 Räume sauber ===== */
.ag2-lane{box-sizing:border-box}
.ag2-lane .spk-row{display:grid;gap:6px;margin-top:8px}
.ag2-lane .ag2-spk{width:100%;box-sizing:border-box;padding:4px 10px 4px 4px}
.ag2-lane .ag2-spk .nm{flex:1 1 auto}
.ag2-lane .ag2-spk .nm b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ag2-lanes.k-ws .ag2-spk .go{display:none!important}
.ag2-lanes.k-ws .ag2-spk::after{content:"→";margin-left:auto;color:var(--brand-teal);font-size:14px;padding-left:6px}
.ag2-lanes.k-ws{gap:8px}
.ag2-lanes.k-ws .ag2-lane{padding:12px}
.ag2-lanes.k-ws .ag2-lane em{margin-bottom:0}
.ag2-lane .ag2-spk .nm{min-width:0}
.ag2-lane .ag2-spk .nm b{display:block}
@media(max-width:1240px) and (min-width:861px){.ag2-lanes.k-ws{grid-template-columns:minmax(0,1fr)!important}}

/* ===== V50 Wien-Kachel mit Gloriette ===== */
a.new-item.img-card{background:var(--brand-ink);border-color:var(--brand-ink);color:#fff;min-height:440px;justify-content:flex-end}
@media(max-width:700px){a.new-item.img-card{min-height:400px}a.new-item.img-card>.img-bg{background-size:auto 62%!important;background-position:center top!important}}
a.new-item.img-card>.img-bg{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,36,38,0) 0%,rgba(5,36,38,.2) 38%,rgba(5,36,38,.88) 62%,rgba(5,36,38,.97) 100%),url("../img/schloss-schoenbrunn.webp") center top/100% auto no-repeat,var(--brand-ink);transition:transform .6s ease}
a.new-item.img-card:hover>.img-bg{transform:scale(1.04)}
a.new-item.img-card{overflow:hidden}
a.new-item.img-card .new-k{color:var(--brand-green)}
a.new-item.img-card h3{color:#fff;min-height:0}
a.new-item.img-card p{color:rgba(255,255,255,.88);flex:0 0 auto}
a.new-item.img-card .more{color:var(--brand-green)}
a.new-item.img-card:hover{border-color:var(--brand-green)}
@media(prefers-reduced-motion:reduce){a.new-item.img-card>.img-bg{transition:none}a.new-item.img-card:hover>.img-bg{transform:none}}

/* ===== V51 Speaker-Badges ohne Kollision ===== */
.sp-tag{max-width:calc(100% - 24px);white-space:normal;line-height:1.35;z-index:1}
.sp-ph{top:auto;bottom:12px;right:12px;background:rgba(5,36,38,.55);z-index:1}
.cs .tk-intro{display:grid;gap:8px;margin:0 0 20px;max-width:42em}
.cs .tk-intro p:last-child{margin:0;font-size:19px;line-height:1.6;color:var(--text)}

/* ===== WordPress: Admin-Leiste (nur angemeldet) ===== */
.admin-bar .hdr{top:32px}
@media(max-width:782px){.admin-bar .hdr{top:46px}}
@media(max-width:600px){.admin-bar .hdr{top:0}}
