/* B3 «Nacht & Gold», Runde 4: eigene Module, Gold als Licht (Glühen, Lichtkanten, Spotlight); Metall nur auf Knöpfen (4b).
   Dieselbe Datei trägt C1 «Tag & Gold» (gleicher Körper, Klasse .vc1): Farben nur über Tokens, Tagwerte in c1.css.
   Board-Nummern: 16 Lamp, 18 Stacking Cards, 20 Focus Cards, 22 Card Hover, 24 Vertical Marquee, 25 Wall of Love,
   26 3D Marquee, 27 Card Stack, 28 Awards List, 33 Animated Tabs, 34 Tickets, 35 Sticky Scroll, 36 Week Strip,
   37 Formular, 38 Akkordeon, 40 Last Call; Effekte 41 Border Beam, 42 Shine Border, 43 Magic Card, 44 Glowing Effect,
   45 Light Rays, 46 Aurora, 47 Shimmer Button, 50 Verlaufstext.
   Kontraste auf #0c0c0d: Creme #f2eee8 17,3:1, Creme-2 #b3aea6 8,9:1, Gold #d4a24c 8,6:1, Hellgold #f0cf8f 13,1:1.
   Dauerbewegung pausiert außerhalb des Bildschirms (.is-off) und in versteckten Varianten. */

@property --b3-a { syntax: "<angle>"; initial-value: 0deg; inherits: false; }
@property --b3-b { syntax: "<angle>"; initial-value: 0deg; inherits: false; }

.vb3 {
  --f-disp: "Tenor Sans", "Optima", "Avenir Next", sans-serif;
  --f-ui: "Nunito Sans", "Avenir Next", system-ui, sans-serif;
  --f-num: var(--f-disp); --num-w: 400; --disp-w: 400; --disp-ls: -0.005em;
  --radius: 1rem;
  --gutter: clamp(1rem, 4vw, 3.5rem);
  /* Flächen: neutral schwarz (Runde 4b: kein Braun mehr); Graphit per Panel, Tag & Gold (C1) in c1.css */
  --s-bg: #0c0c0d; --bg-rgb: 12 12 13; --bg-deep: #070708; --deep: 7 7 8; --bg-alt: #121213; --bg-rv: #0a0a0b;
  --s-card: #19191b; --s-card-2: #1c1c1f; --card-hi: #212124; --card-lo: #151517; --field: #0e0e10;
  --s-ink: #f2eee8; --s-ink-2: #b3aea6; --ink-3: #8b8780; --dot-off: #5a5752;
  --s-rule: #2a2a2e; --s-rule-strong: #46464c; --hd-bg: rgb(10 10 11 / 0.82);
  --mq-card: rgb(26 26 28 / 0.92); --mq-ink: #d6d1c9; --scrim: 9 9 10; --sh: 0 0 0; --sh-k: 1;
  --stack-dim: 0.45; --focus-dim: 0.5;
  --aur-1: rgb(212 162 76 / 0.2); --aur-2: rgb(176 104 116 / 0.14); --aur-3: rgb(82 44 70 / 0.35);
  /* Gold: als Licht (Linien, Glühen) und als Metall nur auf Knöpfen */
  --s-acc: #d4a24c; --s-acc-t: #e2b565; --s-hi: #f0cf8f; --s-focus: #f0cf8f;
  --gold: #d4a24c; --gold-hi: #f0cf8f; --gold-glow: rgb(226 168 72 / 0.5); --lg: 240 207 143; --gg: 226 168 72;
  --gold-ink: #1f1608;
  --gold-fill: repeating-linear-gradient(90deg, rgb(255 255 255 / 0.05) 0 1px, transparent 1px 3px),
    linear-gradient(176deg, #f8e7b3 0%, #e7c676 16%, #c89a45 40%, #a7782d 54%, #cfa352 70%, #f0d796 86%, #c79c4c 100%);
  --gold-bevel: inset 0 1px 0 rgb(255 250 230 / 0.85), inset 0 -1px 0 rgb(96 62 14 / 0.5), 0 0 0 1px rgb(140 100 34 / 0.55);
  --s-btn: #d4a24c; --s-btn-ink: #1f1608; --s-ihb: #f2eee8; --s-ihb-ink: #1f1608;
  --ring: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  --h2-size: clamp(2.5rem, 5.2vw, 5rem);
  --price-size: 1.3rem;
  color-scheme: dark;
  font-size: 1.0625rem;
}
/* Grund Graphit statt Schwarz (Panel «Graphit», nur B3): zum Vergleich, beide ohne Braun */
html.bg-graphit .vb3:not(.vc1) { --s-bg: #1a1b1d; --bg-rgb: 26 27 29; --bg-deep: #131416; --deep: 19 20 22; --bg-alt: #202124; --bg-rv: #17181a;
  --s-card: #25262a; --s-card-2: #28292d; --card-hi: #2d2e33; --card-lo: #1f2023; --field: #16171a; --s-rule: #37383d; --s-rule-strong: #55575e;
  --hd-bg: rgb(26 27 29 / 0.84); --mq-card: rgb(37 38 42 / 0.92); }
html.font-serif .vb3 { --f-disp: "Noto Serif Display", "Didot", "Bodoni 72", serif; --disp-w: 300; --num-w: 300; --disp-ls: -0.01em; }
.vb3 .h2 { color: var(--s-ink); }
.vb3 [hidden] { display: none !important; }
.vb3 .hd { background: var(--hd-bg); backdrop-filter: blur(12px); border-bottom-color: rgb(var(--lg) / 0.14); }
.vb3 .mnav { background: var(--s-bg); }

/* Hauptmenü B3 (Runde 5) «Spotlight»: der Punkt unter dem Cursor leuchtet golden, unter ihm ein Lichtkegel, eine Lichtlinie
   öffnet sich aus der Mitte; die übrigen Punkte treten ins Dunkel. Mobil «Lichtkreis»: das Menü öffnet sich als Kreis aus dem
   Menüknopf, die Worte kommen unscharf und glühend aus dem Dunkel. Nur B3, C1 hat eigene Werte in c1.css. */
.vb3:not(.vc1) .hd-nav a { position: relative; isolation: isolate; transition: color 0.35s, opacity 0.45s, text-shadow 0.45s; }
.vb3:not(.vc1) .hd-nav a::before { content: ""; position: absolute; z-index: -1; left: 50%; top: 55%; width: 190%; height: 300%; translate: -50% -50%; border-radius: 50%;
  background: radial-gradient(closest-side, rgb(var(--gg) / 0.3), rgb(var(--gg) / 0.09) 55%, transparent); opacity: 0; scale: 0.55; transition: opacity 0.5s, scale 0.7s var(--ease); pointer-events: none; }
.vb3:not(.vc1) .hd-nav a::after { content: ""; position: absolute; left: 50%; right: 50%; bottom: 0.15rem; height: 1px; pointer-events: none;
  background: linear-gradient(90deg, transparent, var(--gold-hi), transparent); box-shadow: 0 0 0.6rem rgb(var(--gg) / 0.8); transition: left 0.55s var(--ease), right 0.55s var(--ease); }
.vb3:not(.vc1) .hd-nav a:is(:hover, :focus-visible) { color: var(--gold-hi); text-shadow: 0 0 1rem rgb(var(--gg) / 0.7); }
.vb3:not(.vc1) .hd-nav a:is(:hover, :focus-visible)::before { opacity: 1; scale: 1; }
.vb3:not(.vc1) .hd-nav a:is(:hover, :focus-visible)::after { left: -12%; right: -12%; }
.vb3:not(.vc1) .hd-nav ul:has(a:is(:hover, :focus-visible)) a:not(:hover, :focus-visible) { opacity: 0.42; }
.vb3:not(.vc1) .mnav { background: radial-gradient(70% 45% at 100% 0%, rgb(var(--gg) / 0.16), transparent 70%), radial-gradient(60% 40% at 0% 100%, rgb(var(--gg) / 0.07), transparent 70%), var(--s-bg); }
.vb3:not(.vc1) .mnav li a:is(:hover, :focus-visible) { color: var(--gold-hi); text-shadow: 0 0 1.2rem rgb(var(--gg) / 0.6); }
@media (prefers-reduced-motion: no-preference) {
  html:not(.fx-off) .vb3:not(.vc1) .mnav:not([hidden]) { animation: b3-iris 0.8s var(--ease) backwards; }
  html:not(.fx-off) .vb3:not(.vc1) .mnav:not([hidden]) li a { animation: b3-glow-in 1s var(--ease) backwards; animation-delay: calc(0.25s + var(--i) * 80ms); }
  html:not(.fx-off) .vb3:not(.vc1) .mnav:not([hidden]) :is(address, .btn) { animation: b3-fade 0.7s var(--ease) 0.7s both; }
}
@keyframes b3-iris { from { clip-path: circle(0% at calc(100% - 2.75rem) 2.25rem); } to { clip-path: circle(150% at calc(100% - 2.75rem) 2.25rem); } }
@keyframes b3-glow-in { from { opacity: 0; filter: blur(10px); transform: translateY(0.5rem); color: var(--gold-hi); text-shadow: 0 0 2rem rgb(var(--gg) / 0.95); }
  55% { opacity: 1; filter: blur(0); color: var(--gold-hi); text-shadow: 0 0 1.4rem rgb(var(--gg) / 0.7); } to { opacity: 1; filter: none; transform: none; } }
.b3-kick { font-size: 0.75rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--s-acc-t); }
.b3-stars { color: var(--gold); letter-spacing: 0.12em; font-size: 0.85em; }
.b3-link { color: var(--s-ink); text-decoration: none; font-size: 0.8rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; border-bottom: 1px solid rgb(var(--lg) / 0.5); padding-bottom: 0.25rem; transition: color 0.3s, border-color 0.3s; }
.b3-link:hover { color: var(--gold-hi); border-color: var(--gold-hi); }

/* ---------- 47 Goldknopf: Metallverlauf mit Fase, Lichtband um den Rand, Glanz beim Hover (Runde 4b) ---------- */
.vb3 :is(.b3-shine, .btn-main, .bar-book) { border: 0; background: var(--gold-fill); color: var(--gold-ink); font-weight: 700; text-shadow: 0 1px 0 rgb(255 244 214 / 0.45);
  box-shadow: var(--gold-bevel), 0 0.9rem 2.2rem -1rem rgb(var(--gg) / 0.65); transition: filter 0.35s, box-shadow 0.4s, transform 0.35s var(--ease); }
.vb3 :is(.b3-shine, .btn-main, .bar-book):hover { filter: brightness(1.07) saturate(1.08); box-shadow: var(--gold-bevel), 0 1rem 2.6rem -0.9rem rgb(var(--gg) / 0.9); }
.vb3 :is(.b3-shine, .btn-main):active { transform: translateY(1px); }
.b3-shine { border-radius: 999px; letter-spacing: 0.15em; }
.b3-shine::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; pointer-events: none;
  background: conic-gradient(from var(--b3-a), transparent 0 70%, rgba(255, 248, 228, 0.95) 82%, transparent 92%);
  -webkit-mask: var(--ring); -webkit-mask-composite: xor; mask: var(--ring); mask-composite: exclude; animation: b3-spin 3.6s linear infinite; }
.vb3 :is(.b3-shine, .btn-main)::after { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; pointer-events: none;
  background: linear-gradient(110deg, transparent 30%, rgb(255 252 240 / 0.65) 50%, transparent 70%); transform: translateX(-120%); transition: transform 0.9s var(--ease); }
.vb3 :is(.b3-shine, .btn-main):is(:hover, :focus-visible)::after { transform: translateX(120%); }
.vb3 .btn-line { border-color: rgb(var(--lg) / 0.55); transition: border-color 0.3s, box-shadow 0.4s, color 0.3s; }
.vb3 .btn-line:hover { border-color: var(--gold-hi); color: var(--gold-hi); box-shadow: 0 0 1.4rem -0.5rem var(--gold-glow); }
@keyframes b3-spin { to { --b3-a: 360deg; } }

/* ---------- 44 Glowing Effect: Kante leuchtet auf der Seite des Cursors ---------- */
[data-glow] { position: relative; }
.vb3 [data-glow]::after { content: ""; position: absolute; inset: -1px; border-radius: inherit; padding: 1.5px; pointer-events: none;
  background: conic-gradient(from calc(var(--ga, 0deg) - 75deg), transparent 0deg, rgb(var(--lg) / 0.95) 75deg, transparent 150deg);
  -webkit-mask: var(--ring); -webkit-mask-composite: xor; mask: var(--ring); mask-composite: exclude; opacity: var(--gon, 0); transition: opacity 0.35s; }
.vb3 [data-glow].is-glow { box-shadow: 0 0 2.4rem -0.8rem var(--gold-glow); }
.vb3 [data-glow]:focus-visible { outline: none; box-shadow: 0 0 0 1.5px var(--gold-hi), 0 0 2.4rem -0.8rem var(--gold-glow); }

/* ---------- Gemeinsame Hero-Teile (Kino): Ort, Unterzeile, Markenname mit einmaligem Lichtstreif (50) ---------- */
.b3-place { position: relative; z-index: 3; display: inline-flex; align-items: center; gap: 0.45rem; margin-top: clamp(2rem, 5vh, 3.25rem);
  font-size: 0.75rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--s-ink-2); }
.b3-place .ico { width: 1.1rem; height: 1.1rem; color: var(--gold); }
.b3-sub { order: -1; display: block; font: 600 0.82rem/1.4 var(--f-ui); letter-spacing: 0.22em; text-transform: uppercase; color: var(--gold-hi); margin-bottom: clamp(0.5rem, 1.5vh, 1rem); }
.b3-brand { display: block; font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(3.6rem, 12.4vw, 13rem); line-height: 0.92; letter-spacing: var(--disp-ls); white-space: nowrap; color: var(--s-ink); }
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .b3-brand { background: linear-gradient(100deg, var(--s-ink) 0 38%, #fff6de 46%, var(--gold-hi) 50%, var(--s-ink) 58% 100%) 100% 0 / 260% 100% no-repeat;
    -webkit-background-clip: text; background-clip: text; color: transparent; animation: b3-sheen 2.6s var(--ease) 0.9s both; }
  .b3-brand:hover { animation: b3-sheen 1.8s var(--ease) both; }
}
@keyframes b3-sheen { from { background-position: 100% 0; } to { background-position: 0% 0; } }
.b3-short { font-size: 1.12rem; line-height: 1.55; color: var(--s-ink); }
.b3-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; }
.b3-score-line { font-size: 0.95rem; line-height: 1.5; color: var(--s-ink-2); }
.b3-score-line strong { color: var(--s-ink); font-weight: 700; }
.b3-tr { font-size: 0.75rem; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold-hi); }

/* ---------- 18 Stacking Cards + 43 Magic Card + 27 Card Stack ---------- */
.b3-svc { --sec-pad: clamp(5rem, 9vw, 8rem); }
.b3-stack { display: grid; gap: clamp(1.25rem, 2vw, 1.75rem); }
.b3-card { position: relative; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: clamp(1.5rem, 3.5vw, 3.5rem);
  padding: clamp(1.5rem, 3vw, 2.75rem); border-radius: 1.5rem; border: 1px solid var(--s-rule); transform-origin: 50% 0;
  background: radial-gradient(42rem circle at var(--mx, 75%) var(--my, -15%), rgb(var(--gg) / 0.1), transparent 45%), linear-gradient(180deg, var(--card-hi), var(--card-lo));
  box-shadow: 0 2.5rem 5rem -2.5rem rgb(var(--sh) / calc(0.75 * var(--sh-k))); }
.b3-card::before { content: ""; position: absolute; inset: -1px; border-radius: inherit; padding: 1px; pointer-events: none;
  background: radial-gradient(24rem circle at var(--mx, 50%) var(--my, 0%), rgb(var(--lg) / 0.9), transparent 45%);
  -webkit-mask: var(--ring); -webkit-mask-composite: xor; mask: var(--ring); mask-composite: exclude; opacity: var(--spot, 0); transition: opacity 0.5s; }
.b3-card.is-spot { --spot: 1; }
.b3-card-h { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(2.2rem, 4vw, 3.6rem); line-height: 1; letter-spacing: var(--disp-ls); }
.b3-card-sub { margin: 0.6rem 0 1.25rem; font-size: 0.78rem; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--s-acc-t); }
.b3-card .row { padding: 0.9rem 0; }
.vb3 .row-name { font-weight: 600; font-size: 1rem; }
.vb3 .row-price { color: var(--gold-hi); }
.vb3 .row-cta { border-radius: 999px; border-color: rgb(var(--lg) / 0.35); font-weight: 600; }
.vb3 .row-cta:hover { background: var(--gold-fill); border-color: transparent; color: var(--gold-ink); box-shadow: var(--gold-bevel), 0 0 1.5rem -0.4rem var(--gold-glow); }
@media (max-width: 47.99rem) { .vb3 .row-cta, .vb3 .row-cta:hover { border-radius: 0; background: none; box-shadow: none; color: var(--gold-hi); } }
.b3-card-more { margin-top: 1rem; font-size: 0.9rem; }
.b3-card-more a { color: var(--s-acc-t); text-underline-offset: 0.25em; }
.b3-card-side { display: grid; align-content: start; }
.b3-card-fig { margin: 0; border-radius: 1rem; overflow: clip; aspect-ratio: 4 / 5; max-height: 34rem; width: 100%; box-shadow: 0 0 0 1px rgb(var(--lg) / 0.14); }
.b3-card-fig img { width: 100%; height: 100%; object-fit: cover; object-position: var(--fp, 50% 40%); }
.b3-deck { position: relative; z-index: 1; margin: -3.5rem 0.9rem 0; display: grid; gap: 0.6rem; }
.b3-deck-cards { display: grid; padding-top: 1.6rem; }
.b3-deck-card { grid-area: 1 / 1; transition: transform 0.65s var(--ease), opacity 0.5s, filter 0.5s; }
.b3-deck-card[data-pos="0"] { z-index: 3; }
.b3-deck-card[data-pos="1"] { z-index: 2; transform: translateY(-0.8rem) scale(0.95); opacity: 0.55; filter: blur(0.5px); }
.b3-deck-card[data-pos="2"] { z-index: 1; transform: translateY(-1.6rem) scale(0.9); opacity: 0.3; filter: blur(1px); }
.b3-deck-next { justify-self: end; display: inline-flex; align-items: center; gap: 0.5rem; min-height: 2.75rem; padding: 0 0.25rem; background: none; border: 0; color: var(--s-acc-t);
  font-size: 0.75rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; cursor: pointer; }
.b3-deck-next .ico { width: 1rem; height: 1rem; transition: transform 0.4s var(--ease); }
.b3-deck-next:hover .ico { transform: translateX(0.25rem); }
.b3-stack.is-sticky .b3-card { position: sticky; top: var(--st, calc(var(--hd-h) + 1rem)); transform: scale(calc(1 - var(--k, 0) * 0.05)); filter: brightness(calc(1 - var(--k, 0) * var(--stack-dim))); }
.b3-stack.is-sticky { gap: 12vh; }
/* Tastatur: solange der Fokus im Stapel ist, kleben die Karten nicht, damit nichts unter der nächsten Karte liegt */
.b3-stack.is-sticky:has(:focus-visible) .b3-card { position: relative; top: auto; transform: none; filter: none; }

/* Bewertungskarte (Wand, Deck) */
.b3-rv { position: relative; margin: 0; padding: 1.25rem 1.35rem 1.2rem; border-radius: 1rem; background: var(--s-card-2); border: 1px solid rgb(var(--lg) / 0.13);
  box-shadow: 0 1rem 2rem -1.5rem rgb(var(--sh) / calc(0.7 * var(--sh-k))); transition: box-shadow 0.4s, transform 0.5s var(--ease); }
.b3-rv-top { display: flex; justify-content: space-between; align-items: center; gap: 0.75rem; margin-bottom: 0.7rem; }
.b3-rv-src { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--s-acc-t); }
.b3-rv-text { margin: 0; }
.b3-rv-text p { font-size: 0.95rem; line-height: 1.6; color: var(--s-ink); }
.b3-rv figcaption { display: grid; gap: 0.1rem; margin-top: 0.85rem; }
.b3-rv-name { font-weight: 700; font-size: 0.9rem; }
.b3-rv-meta { font-size: 0.8rem; color: var(--s-ink-2); }

/* ---------- 26 3D Marquee + 28 Awards List ---------- */
.b3-proof { position: relative; isolation: isolate; overflow: clip; padding: clamp(5.5rem, 11vw, 10rem) var(--gutter); background: var(--bg-deep); }
.b3-mq { position: absolute; inset: -20% -15%; z-index: -2; perspective: 80rem; opacity: 0.55; pointer-events: none;
  -webkit-mask: radial-gradient(ellipse 60% 65% at 50% 50%, #000 25%, transparent 78%); mask: radial-gradient(ellipse 60% 65% at 50% 50%, #000 25%, transparent 78%); }
.b3-mq-grid { display: grid; grid-template-columns: repeat(4, 17rem); gap: 1.1rem; justify-content: center; height: 100%; transform: rotateX(48deg) rotateZ(-28deg) scale(1.15); transform-style: preserve-3d; }
.b3-mq-col { display: grid; gap: 1.1rem; align-content: start; animation: b3-up 90s linear infinite; }
.b3-mq-col:nth-child(even) { animation-direction: reverse; animation-duration: 110s; }
@keyframes b3-up { to { transform: translateY(calc(-50% - 0.55rem)); } }
.b3-mq-card { padding: 1rem 1.1rem; border-radius: 0.9rem; background: var(--mq-card); border: 1px solid rgb(var(--lg) / 0.2); font-size: 0.85rem; line-height: 1.5; color: var(--mq-ink); }
.b3-mq-card .b3-stars { display: block; margin-bottom: 0.4rem; font-size: 0.75rem; }
.b3-mq-by { display: block; margin-top: 0.5rem; font-size: 0.75rem; color: var(--ink-3); }
.b3-proof::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse 45% 70% at 25% 50%, rgb(var(--deep) / 0.92), rgb(var(--deep) / 0.55) 60%, transparent), radial-gradient(ellipse 45% 70% at 78% 50%, rgb(var(--deep) / 0.9), transparent 75%); }
.b3-proof-in { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(2.5rem, 6vw, 6rem); align-items: center; }
.b3-score { display: grid; gap: 1rem; }
.b3-big { display: grid; gap: 0.75rem; }
.b3-big-n { font-family: var(--f-num); font-weight: var(--num-w); font-size: clamp(7rem, 17vw, 15.5rem); line-height: 0.82; color: var(--gold-hi); letter-spacing: -0.02em;
  text-shadow: 0 0 3.5rem rgb(var(--gg) / 0.35); font-variant-numeric: lining-nums; }
.b3-big-l { font-size: 1.05rem; color: var(--s-ink); max-width: 20rem; }
.b3-dims { font-size: 0.9rem; color: var(--s-ink-2); font-variant-numeric: tabular-nums; }
.b3-google { font-size: 0.95rem; color: var(--s-ink); }
.b3-aw-h { --h2-size: clamp(2.2rem, 4vw, 3.8rem); margin-bottom: 1rem; }
.b3-awards .lead { margin-bottom: 1.75rem; }
.b3-aw-list { display: grid; gap: 0.35rem; margin: 0 0 1.75rem; padding: 0; list-style: none; }
.b3-aw-list a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: clamp(1rem, 3vw, 2.5rem); padding: 1rem 1.25rem; border-radius: 0.9rem;
  border: 1px solid var(--s-rule); background: rgb(var(--bg-rgb) / 0.7); text-decoration: none; transition: background 0.4s, border-color 0.4s; }
.b3-aw-list a:hover { background: rgb(var(--gg) / 0.08); border-color: rgb(var(--lg) / 0.3); }
.b3-aw-y { font-family: var(--f-num); font-weight: var(--num-w); font-size: clamp(1.9rem, 3vw, 2.6rem); line-height: 1; color: var(--s-ink); transition: color 0.3s; font-variant-numeric: lining-nums; }
.b3-aw-list a:hover .b3-aw-y { color: var(--gold-hi); }
.b3-aw-t { font-size: 0.8rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--s-ink-2); }
.b3-aw-a .ico { width: 1.25rem; height: 1.25rem; color: var(--gold); transition: transform 0.4s var(--ease); }
.b3-aw-list a:hover .b3-aw-a .ico { transform: translateX(0.3rem); }
.b3-aw-fig { position: relative; margin: 0; max-width: 24rem; border-radius: 1rem; overflow: clip; box-shadow: 0 0 0 1px rgb(var(--lg) / 0.18); }
.b3-aw-fig img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.b3-aw-fig .note { bottom: auto; top: 0.6rem; }

/* ---------- 20 Focus Cards + 42 Shine Border: Räume ---------- */
.b3-rg { --sec-pad: clamp(4.5rem, 8vw, 7rem); }
.b3-rooms { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 1rem; margin: 0 0 1rem; padding: 0; list-style: none; border-radius: 1.25rem; }
.b3-rooms:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 4px; }
.b3-room:nth-child(-n+3) { grid-column: span 2; }
.b3-room:nth-child(n+4) { grid-column: span 3; }
.b3-room figure { position: relative; height: 100%; margin: 0; border-radius: 1.25rem; overflow: clip; aspect-ratio: 4 / 5; background: var(--s-card); transition: filter 0.55s var(--ease), transform 0.6s var(--ease), box-shadow 0.5s; }
.b3-room:nth-child(n+4) figure { aspect-ratio: 16 / 9; }
.b3-room img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.b3-room figure .note.on-photo { bottom: auto; top: 0.6rem; }
.b3-room figcaption { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: grid; gap: 0.35rem; padding: clamp(1rem, 2vw, 1.6rem); color: #f7efe4;
  background: linear-gradient(180deg, transparent, rgb(var(--scrim) / 0.78) 38%, rgb(var(--scrim) / 0.92)); }
.b3-room-s { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold-hi); }
.b3-room-t { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(1.4rem, 2vw, 1.85rem); line-height: 1.1; }
.b3-room-d { font-size: 0.9rem; line-height: 1.5; color: #ddd6cc; max-width: 32rem; }
.b3-room figure::after { content: ""; position: absolute; inset: 0; z-index: 3; border-radius: inherit; padding: 1.5px; pointer-events: none;
  background: linear-gradient(115deg, rgb(var(--lg) / 0.05) 25%, var(--gold-hi) 42%, #fff4d8 50%, var(--gold) 58%, rgb(var(--lg) / 0.05) 75%) 0 0 / 300% 300%;
  -webkit-mask: var(--ring); -webkit-mask-composite: xor; mask: var(--ring); mask-composite: exclude; opacity: 0; transition: opacity 0.45s;
  animation: b3-shine 3.8s linear infinite paused; }
@keyframes b3-shine { from { background-position: 100% 100%; } to { background-position: 0% 0%; } }
@media (hover: hover) and (pointer: fine) {
  .b3-rooms:has(.b3-room:hover) .b3-room:not(:hover) figure { filter: blur(3px) brightness(var(--focus-dim)) saturate(0.75); transform: scale(0.985); }
  .b3-room:hover figure { transform: translateY(-0.35rem); box-shadow: 0 0 3.5rem -1rem var(--gold-glow); }
  .b3-room:hover figure::after { opacity: 1; animation-play-state: running; }
}

/* ---------- 33 Animated Tabs: Anliegen ---------- */
.b3-an { --sec-pad: clamp(5rem, 10vw, 8.5rem); background: var(--bg-alt); }
.b3-tablist { position: relative; display: inline-flex; max-width: 100%; gap: 0.25rem; padding: 0.35rem; border-radius: 999px; background: var(--s-card); border: 1px solid var(--s-rule); overflow-x: auto; scrollbar-width: none; }
.b3-tablist [role="tab"] { position: relative; z-index: 1; flex: none; min-height: 2.75rem; padding: 0 1.25rem; border: 0; border-radius: 999px; background: none; color: var(--s-ink-2);
  font-size: 0.92rem; font-weight: 600; white-space: nowrap; cursor: pointer; transition: color 0.35s; }
.b3-tablist [role="tab"]:hover { color: var(--s-ink); }
.b3-tablist [role="tab"][aria-selected="true"] { color: var(--gold-ink); }
.b3-tabs:not(.has-ind) [role="tab"][aria-selected="true"] { background: var(--gold-fill); }
.b3-tab-ind { position: absolute; z-index: 0; left: 0; top: 0.35rem; height: calc(100% - 0.7rem); width: var(--ti-w, 0); transform: translateX(var(--ti-x, 0)); border-radius: 999px;
  background: var(--gold-fill); box-shadow: var(--gold-bevel), 0 0 1.6rem -0.3rem rgb(var(--gg) / 0.75); transition: transform 0.55s var(--ease), width 0.55s var(--ease); }
.b3-an-panels { position: relative; margin-top: 2.25rem; }
.b3-an-panels::before, .b3-an-panels::after { content: ""; position: absolute; left: 3%; right: 3%; top: -0.9rem; height: 3rem; border-radius: 1.5rem 1.5rem 0 0; background: var(--card-hi); border: 1px solid var(--s-rule); border-bottom: 0; z-index: 0; }
.b3-an-panels::after { left: 6%; right: 6%; top: -1.7rem; background: var(--card-lo); opacity: 0.8; z-index: -1; }
.b3-an-p { position: relative; z-index: 1; border-radius: 1.5rem; }
.b3-an-p:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 4px; }
.b3-an-card { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); min-height: 25rem; border-radius: 1.5rem; overflow: clip; background: var(--s-card);
  border: 1px solid rgb(var(--lg) / 0.22); box-shadow: 0 2rem 4rem -2rem rgb(var(--sh) / calc(0.8 * var(--sh-k))), 0 0 3rem -1.8rem var(--gold-glow); }
.b3-an-card img { width: 100%; height: 100%; object-fit: cover; }
.b3-an-body { display: grid; align-content: center; gap: 0.9rem; padding: clamp(1.5rem, 4vw, 3.25rem); }
.b3-an-h { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.08; }
.b3-an-meta { font-family: var(--f-num); font-size: 1.2rem; color: var(--gold-hi); font-variant-numeric: tabular-nums; }
.b3-an-body .an-list a { border-bottom-color: var(--s-rule); }
.b3-an-cta { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 0.5rem; }
.vb3 .b3-an-cta .btn { border-radius: 999px; }
@media (prefers-reduced-motion: no-preference) { html:not(.fx-off) .b3-an-p.is-in .b3-an-card { animation: b3-card-in 0.65s var(--ease) both; } }
@keyframes b3-card-in { from { opacity: 0.35; transform: translateY(1rem) scale(0.985); } to { opacity: 1; transform: none; } }

/* ---------- 22 Card Hover Effect: Team ---------- */
.b3-team { --sec-pad: clamp(4.5rem, 8vw, 7rem); }
.b3-team-wrap { position: relative; }
.b3-team-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.b3-tm { display: grid; gap: 0.65rem; align-content: start; padding: clamp(1.5rem, 2.5vw, 2.25rem); border-radius: 1.25rem; border: 1px solid var(--s-rule); transition: border-color 0.4s; }
.b3-tm-img { width: 7.5rem; height: 7.5rem; margin-bottom: 0.6rem; border-radius: 50%; object-fit: cover; object-position: 50% 22%;
  box-shadow: 0 0 0 1px rgb(var(--lg) / 0.45), 0 0 2.2rem -0.6rem var(--gold-glow); }
.b3-tm-name { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: 2.3rem; line-height: 1; }
.b3-tm-role { color: var(--s-ink-2); font-size: 0.95rem; }
.b3-tm-rev { font-size: 0.85rem; color: var(--gold-hi); font-variant-numeric: tabular-nums; }
.b3-tm-q { margin: 0.5rem 0 0; padding-left: 1rem; border-left: 1px solid rgb(var(--lg) / 0.4); }
.b3-tm-q p { font-size: 0.98rem; line-height: 1.6; }
.b3-tm-q footer { margin-top: 0.5rem; font-size: 0.78rem; color: var(--s-ink-2); }
.b3-tm-book { justify-self: start; display: inline-flex; align-items: center; gap: 0.5rem; min-height: 2.75rem; margin-top: 0.5rem; color: var(--s-acc-t);
  font-size: 0.75rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; text-decoration: none; }
.b3-tm-book .ico { width: 1rem; height: 1rem; transition: transform 0.4s var(--ease); }
.b3-tm-book:hover .ico { transform: translateX(0.3rem); }
.b3-plate { position: absolute; z-index: 0; left: 0; top: 0; width: var(--pw, 0); height: var(--ph, 0); transform: translate(var(--px, 0), var(--py, 0)); border-radius: 1.25rem; pointer-events: none;
  background: linear-gradient(180deg, rgb(var(--gg) / 0.13), rgb(var(--gg) / 0.03)); box-shadow: inset 0 0 0 1px rgb(var(--lg) / 0.6), 0 0 3.5rem -1.2rem var(--gold-glow);
  opacity: 0; transition: transform 0.55s var(--ease), width 0.55s var(--ease), height 0.55s var(--ease), opacity 0.35s; }
.b3-team-wrap.has-plate .b3-plate { opacity: 1; }
.b3-team-wrap:not(.is-js) .b3-tm:is(:hover, :focus-within) { border-color: rgb(var(--lg) / 0.6); }

/* ---------- 25 Wall of Love + 24 Vertical Marquee + 46 Aurora ---------- */
.b3-rvs { position: relative; isolation: isolate; overflow: clip; background: var(--bg-rv); --sec-pad: clamp(5.5rem, 11vw, 9.5rem); }
.b3-aurora { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.b3-aurora span { position: absolute; border-radius: 50%; filter: blur(90px); animation: b3-aur 26s ease-in-out infinite alternate; }
.b3-aurora span:nth-child(1) { width: 46vw; height: 36vw; left: -8vw; top: -6vw; background: var(--aur-1); }
.b3-aurora span:nth-child(2) { width: 38vw; height: 30vw; right: -6vw; top: 18%; background: var(--aur-2); animation-duration: 32s; animation-delay: -8s; }
.b3-aurora span:nth-child(3) { width: 42vw; height: 32vw; left: 30%; bottom: -12vw; background: var(--aur-3); animation-duration: 38s; animation-delay: -16s; }
@keyframes b3-aur { from { transform: translate(0, 0) scale(1); } to { transform: translate(6vw, 4vw) scale(1.12); } }
.b3-rv-bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 2rem; }
.b3-chips { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.b3-chip { min-height: 2.75rem; padding: 0 1.15rem; border-radius: 999px; border: 1px solid var(--s-rule-strong); background: rgb(var(--bg-rgb) / 0.65); color: var(--s-ink-2);
  font-size: 0.88rem; font-weight: 600; cursor: pointer; transition: color 0.3s, border-color 0.3s, background 0.3s, box-shadow 0.4s; }
.b3-chip:hover { color: var(--s-ink); border-color: rgb(var(--lg) / 0.6); }
.b3-chip[aria-pressed="true"] { background: var(--gold-fill); border-color: transparent; color: var(--gold-ink); box-shadow: var(--gold-bevel), 0 0 1.6rem -0.3rem rgb(var(--gg) / 0.7); }
.b3-pause { min-height: 2.75rem; padding: 0 1rem; border-radius: 999px; border: 1px solid var(--s-rule-strong); background: none; color: var(--s-ink-2); font-size: 0.8rem; cursor: pointer; }
.b3-pause:hover { color: var(--s-ink); }
.b3-wall-list { columns: 3 19rem; column-gap: 1rem; margin: 0; padding: 0; list-style: none; }
.b3-wall-list > li { break-inside: avoid; margin-bottom: 1rem; }
.b3-wall-list > li[hidden] { display: none; }
.b3-wall.is-clamp .b3-wall-list > li:nth-child(n+7) { display: none; }
.b3-more { display: flex; margin: 0.5rem auto 0; min-height: 3rem; padding: 0 1.4rem; align-items: center; border-radius: 999px; border: 1px solid rgb(var(--lg) / 0.45); background: none; color: var(--s-ink); font-weight: 600; cursor: pointer; }
.b3-wall.is-drift .b3-wall-list { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); }
.b3-drift { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; height: min(48rem, 82vh); overflow: clip;
  -webkit-mask: linear-gradient(transparent, #000 10%, #000 88%, transparent); mask: linear-gradient(transparent, #000 10%, #000 88%, transparent); }
.b3-drift-col { display: grid; gap: 1rem; align-content: start; animation: b3-drift 95s linear infinite; }
.b3-drift-col:nth-child(2) { animation-duration: 120s; animation-direction: reverse; }
.b3-drift-col:nth-child(3) { animation-duration: 105s; }
@keyframes b3-drift { to { transform: translateY(calc(-50% - 0.5rem)); } }
.b3-drift:hover .b3-drift-col, .b3-wall.is-paused .b3-drift-col { animation-play-state: paused; }
.b3-rv-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 0.75rem 2rem; margin-top: 2.25rem; padding-top: 1.25rem; border-top: 1px solid var(--s-rule); font-size: 0.92rem; color: var(--s-ink-2); }
.b3-rv-foot a { color: var(--s-acc-t); text-underline-offset: 0.25em; }
.b3-rv-legal { margin-top: 1rem; max-width: 52rem; font-size: 0.82rem; line-height: 1.55; color: var(--s-ink-2); }

/* ---------- 35 Sticky Scroll Reveal + 34 Tickets + 41 Border Beam: Akademie ---------- */
.b3-ak { --sec-pad: clamp(5rem, 10vw, 8rem); }
.b3-ak-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.b3-ak-head { display: grid; gap: 1rem; margin-bottom: 2.5rem; }
.b3-ak-head .h2 { --h2-size: clamp(2.4rem, 4.4vw, 4.3rem); }
.b3-tickets { display: grid; gap: 1rem; margin: 0 0 1rem; padding: 0; list-style: none; }
.b3-ticket { position: relative; display: grid; gap: 0.45rem; padding: 1.5rem 2rem; border-radius: 1.25rem; background: var(--card-lo); border: 1px solid var(--s-rule); transition: border-color 0.5s, background 0.5s;
  -webkit-mask: radial-gradient(circle 0.75rem at 0 50%, #0000 97%, #000) left / 51% 100% no-repeat, radial-gradient(circle 0.75rem at 100% 50%, #0000 97%, #000) right / 51% 100% no-repeat;
  mask: radial-gradient(circle 0.75rem at 0 50%, #0000 97%, #000) left / 51% 100% no-repeat, radial-gradient(circle 0.75rem at 100% 50%, #0000 97%, #000) right / 51% 100% no-repeat; }
.b3-ticket-h { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(1.45rem, 2.2vw, 1.9rem); line-height: 1.1; transition: color 0.5s; }
.b3-ticket p { font-size: 0.95rem; line-height: 1.55; color: var(--s-ink-2); }
.b3-ticket .b3-ticket-terms { font-size: 0.75rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--s-ink-2); padding-top: 0.6rem; border-top: 1px dashed var(--s-rule-strong); }
.b3-ticket-badge { justify-self: start; padding: 0.2rem 0.65rem; border-radius: 999px; border: 1px solid rgb(var(--lg) / 0.55); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--gold-hi); }
.b3-ticket-go { justify-self: start; display: inline-flex; align-items: center; gap: 0.5rem; min-height: 2.75rem; color: var(--s-acc-t); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; text-decoration: none; }
.b3-ticket-go .ico { width: 1rem; height: 1rem; }
.b3-ak-grid.is-js .b3-ticket:not(.is-active) .b3-ticket-h { color: var(--ink-3); }
.b3-ticket.is-active { border-color: rgb(var(--lg) / 0.45); background: var(--card-hi); }
.b3-ticket.is-beam::after { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1.5px; pointer-events: none;
  background: conic-gradient(from var(--b3-b), transparent 0 68%, rgb(var(--lg) / 0.15) 74%, var(--gold-hi) 86%, #fff4d8 89%, transparent 92%);
  -webkit-mask: var(--ring); -webkit-mask-composite: xor; mask: var(--ring); mask-composite: exclude; animation: b3-beam 6s linear infinite; }
@keyframes b3-beam { to { --b3-b: 360deg; } }
.b3-ak-panel { position: sticky; top: calc(var(--hd-h) + 2rem); display: grid; gap: 1.5rem; }
.b3-ak-fig { position: relative; margin: 0; height: min(calc(100svh - var(--hd-h) - 5rem), 44rem); border-radius: 1.5rem; overflow: clip; background: var(--s-card); box-shadow: 0 0 0 1px rgb(var(--lg) / 0.3), 0 0 4.5rem -1.8rem var(--gold-glow); }
.b3-ak-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: var(--op, 50% 40%); opacity: 0; transform: scale(1.05); transition: opacity 0.9s var(--ease), transform 1.6s var(--ease); }
.b3-ak-img.is-on { opacity: 1; transform: none; }
.b3-ak-fig .note { bottom: auto; top: 0.6rem; }
/* Bildunterschrift wechselt mit dem aktiven Kurs: man sieht, worauf das Bild reagiert */
.b3-ak-cap { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; display: grid; gap: 0.3rem; padding: 3rem clamp(1.1rem, 2vw, 1.6rem) clamp(1rem, 2vw, 1.4rem); color: #f7efe4;
  background: linear-gradient(180deg, transparent, rgb(var(--scrim) / 0.55) 40%, rgb(var(--scrim) / 0.85)); pointer-events: none; }
.b3-ak-cap-k { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: #f0cf8f; }
.b3-ak-cap-t { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(1.4rem, 2.2vw, 1.9rem); line-height: 1.1; }
@media (prefers-reduced-motion: no-preference) { html:not(.fx-off) .b3-ak-cap-t.is-new { animation: b3-cap 0.6s var(--ease) both; } }
@keyframes b3-cap { from { opacity: 0; transform: translateY(0.5rem); } to { opacity: 1; transform: none; } }
.b3-ak-after { display: grid; gap: 1.5rem; margin-top: 2rem; }
.b3-ticket { transition: border-color 0.5s, background 0.5s, transform 0.6s var(--ease), box-shadow 0.6s; }
.b3-ak-grid.is-js .b3-ticket.is-active { transform: translateX(0.6rem); box-shadow: 0 1.2rem 2.6rem -1.8rem rgb(var(--sh) / calc(0.9 * var(--sh-k))), 0 0 2.4rem -1.4rem var(--gold-glow); }
@media (min-width: 62rem) { .b3-ak-list { padding-bottom: 12vh; } }
.b3-ak-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; }
.vb3 .b3-ak-cta .btn { border-radius: 999px; }

/* ---------- 36 Week Strip + 37 Formular ---------- */
.b3-st { --sec-pad: clamp(4.5rem, 8vw, 7rem); background: var(--bg-alt); }
.b3-st-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); gap: clamp(2.5rem, 6vw, 6rem); align-items: start; }
.b3-st-info .h2 { --h2-size: clamp(2.3rem, 4.4vw, 4.2rem); }
.b3-st-status { display: inline-flex; align-items: center; gap: 0.55rem; min-height: 1.6rem; margin-top: 1rem; font-size: 0.85rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--s-ink-2); }
.b3-st-status:empty { display: none; }
.b3-st-status::before { content: ""; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: var(--dot-off); }
.b3-st-status.is-open { color: var(--gold-hi); }
.b3-st-status.is-open::before { background: var(--gold-hi); box-shadow: 0 0 0 0 rgb(var(--lg) / 0.6); animation: b3-pulse 2.2s var(--ease-out) infinite; }
@keyframes b3-pulse { to { box-shadow: 0 0 0 0.7rem rgb(var(--lg) / 0); } }
.b3-week { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 0.45rem; margin: 1.5rem 0 0.75rem; padding: 0; list-style: none; }
.b3-week li { display: grid; gap: 0.4rem; align-content: start; min-height: 6.25rem; padding: 0.95rem 0.55rem; border-radius: 0.9rem; border: 1px solid var(--s-rule); text-align: center; transition: border-color 0.4s; }
.b3-wd { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: 1.35rem; line-height: 1; }
.b3-wh { font-size: 0.78rem; line-height: 1.35; color: var(--s-ink-2); font-variant-numeric: tabular-nums; }
.b3-week li.is-today { border-color: rgb(var(--lg) / 0.75); background: rgb(var(--gg) / 0.09); box-shadow: 0 0 2.2rem -0.7rem var(--gold-glow); }
.b3-week li.is-today .b3-wd { color: var(--gold-hi); }
.b3-addr { display: flex; gap: 0.6rem; margin-top: 1.75rem; font-style: normal; font-size: 1.05rem; line-height: 1.5; }
.b3-addr .ico { width: 1.4rem; height: 1.4rem; flex: none; color: var(--gold); margin-top: 0.1rem; }
.b3-st-links { display: grid; gap: 0.5rem; margin: 1rem 0 0; padding: 0; list-style: none; font-size: 0.95rem; color: var(--s-ink-2); }
.b3-st-links a { color: var(--s-acc-t); text-underline-offset: 0.25em; margin-right: 0.35rem; }
.b3-form { position: relative; display: grid; gap: 1.1rem; padding: clamp(1.5rem, 3vw, 2.5rem); border-radius: 1.5rem; background: linear-gradient(180deg, var(--s-card), var(--card-lo)); border: 1px solid var(--s-rule);
  box-shadow: 0 2rem 4rem -2.5rem rgb(var(--sh) / calc(0.8 * var(--sh-k))); }
.b3-form-h { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(1.8rem, 2.8vw, 2.4rem); line-height: 1.05; }
.b3-form-lead { font-size: 0.95rem; line-height: 1.55; color: var(--s-ink-2); }
.b3-field { display: grid; gap: 0.45rem; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--s-ink-2); }
.b3-field :is(input, select, textarea) { width: 100%; min-height: 3rem; padding: 0.8rem 0.95rem; font: 400 1rem/1.4 var(--f-ui); letter-spacing: 0; text-transform: none; color: var(--s-ink);
  border: 1px solid transparent; border-radius: 0.8rem; appearance: none;
  background: linear-gradient(var(--field), var(--field)) padding-box, radial-gradient(14rem circle at var(--mx, -40%) var(--my, -40%), rgb(var(--lg) / 0.95), var(--s-rule-strong) 55%) border-box; }
.b3-field select { background: linear-gradient(var(--field), var(--field)) padding-box, radial-gradient(14rem circle at var(--mx, -40%) var(--my, -40%), rgb(var(--lg) / 0.95), var(--s-rule-strong) 55%) border-box; padding-right: 2.5rem; }
.b3-field:has(select) { position: relative; }
.b3-field:has(select)::after { content: ""; position: absolute; right: 1.1rem; bottom: 1.25rem; width: 0.5rem; height: 0.5rem; border-right: 1.5px solid var(--gold); border-bottom: 1.5px solid var(--gold); transform: rotate(45deg); pointer-events: none; }
.b3-field :is(input, select, textarea):focus-visible { outline: none; box-shadow: 0 0 0 1.5px var(--gold-hi), 0 0 1.8rem -0.5rem var(--gold-glow); }
.b3-form .btn { justify-self: start; margin-top: 0.25rem; }
.b3-form-status { min-height: 1.4em; font-size: 0.9rem; color: var(--gold-hi); }

/* ---------- 38 Akkordeon im Licht ---------- */
.b3-faq { --sec-pad: clamp(4.5rem, 8vw, 6.5rem); }
.b3-faq .h2 { margin: 0 auto clamp(2rem, 4vw, 3rem); text-align: center; }
.b3-faq-list { display: grid; gap: 0.75rem; max-width: 52rem; margin: 0 auto 1rem; }
.b3-faq details { border-radius: 1rem; border: 1px solid var(--s-rule); background: var(--card-lo); transition: border-color 0.45s, background 0.45s, box-shadow 0.5s; }
.b3-faq details[open] { border-color: rgb(var(--lg) / 0.6); background: linear-gradient(180deg, rgb(var(--gg) / 0.09), rgb(var(--gg) / 0.02)); box-shadow: 0 0 2.8rem -1.2rem var(--gold-glow); }
.b3-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; min-height: 3.75rem; padding: 1rem 1.4rem; cursor: pointer; list-style: none; font-size: 1.05rem; font-weight: 600; line-height: 1.4; }
.b3-faq summary::-webkit-details-marker { display: none; }
.b3-faq details[open] summary { color: var(--gold-hi); }
.b3-faq details p { padding: 0 1.4rem 1.35rem; color: var(--s-ink-2); line-height: 1.65; max-width: 44rem; }
.b3-faq details p:has(+ .faq-act) { padding-bottom: 0.8rem; }
@media (prefers-reduced-motion: no-preference) { html:not(.fx-off) .b3-faq details[open] p { animation: b3-fade 0.5s var(--ease) both; } }
@keyframes b3-fade { from { opacity: 0; transform: translateY(-0.35rem); } to { opacity: 1; transform: none; } }
.b3-faq > .note { display: flex; margin-inline: auto; }

/* ---------- 40 Last Call: Abschluss mit Glut ---------- */
.b3-ft { background: var(--bg-deep); color: var(--s-ink); padding-top: clamp(2rem, 5vw, 4rem); }
.b3-last { position: relative; isolation: isolate; overflow: clip; display: grid; justify-items: center; gap: 1.2rem; margin: 0 var(--gutter);
  padding: clamp(4rem, 9vw, 7rem) clamp(1.25rem, 4vw, 3rem) clamp(8rem, 14vw, 11rem); border-radius: 2rem; text-align: center; background: var(--s-bg); border: 1px solid rgb(var(--lg) / 0.16); }
.b3-last-h { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(2.6rem, 6.4vw, 6rem); line-height: 1; letter-spacing: var(--disp-ls); text-wrap: balance; max-width: 14ch; }
.b3-last-lead { max-width: 30rem; font-size: 1.05rem; line-height: 1.6; color: var(--s-ink-2); }
.b3-last .b3-cta { justify-content: center; margin-top: 0.5rem; }
.b3-ember { position: absolute; left: -10%; right: -10%; bottom: -18%; height: 75%; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse 46% 62% at 50% 100%, rgba(246, 196, 112, 0.8), rgba(226, 146, 60, 0.42) 32%, rgba(120, 62, 24, 0.16) 58%, transparent 76%);
  animation: b3-glut 7s ease-in-out infinite alternate; transform-origin: 50% 100%; }
.b3-ember::after { content: ""; position: absolute; inset: 0; opacity: 0.35; mix-blend-mode: soft-light;
  -webkit-mask: radial-gradient(ellipse 46% 62% at 50% 100%, #000 30%, transparent 72%); mask: radial-gradient(ellipse 46% 62% at 50% 100%, #000 30%, transparent 72%);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
@keyframes b3-glut { from { transform: scale(1); opacity: 0.85; } to { transform: scale(1.07) translateY(-3%); opacity: 1; } }
.b3-ft-in { padding: clamp(3rem, 6vw, 4.5rem) var(--gutter) 1.5rem; }
.b3-ft-top { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 1.25rem; padding-bottom: 2rem; border-bottom: 1px solid var(--s-rule); }
.b3-ft-logo { width: clamp(11rem, 14vw, 13rem); }
.b3-ft-claim { font-family: var(--f-disp); font-weight: var(--disp-w); font-size: clamp(1.3rem, 2.2vw, 1.9rem); line-height: 1.2; max-width: 26ch; color: var(--s-ink-2); }
.b3-ft .ft-cols a:hover { color: var(--gold-hi); }

/* ---------- Hero-Variante «Kino»: Überblenden mit langsamem Zoom, goldene Fortschrittsleisten (Board 04 als Idee) ---------- */
.b3-kino { position: relative; isolation: isolate; overflow: clip; display: grid; grid-template-rows: minmax(0, 1fr) auto; min-height: max(40rem, calc(100svh - var(--hd-h) - var(--mk-h, 3.3rem)));
  padding: 0 var(--gutter) 1.25rem; color: #f7efe4; background: #0b0b0c; --kd: 7s; }
.b3-kino-slides { position: absolute; inset: 0; z-index: -2; }
.b3-ks { position: absolute; inset: 0; margin: 0; opacity: 0; transition: opacity 1.6s var(--ease); }
.b3-ks.is-on { opacity: 1; }
.b3-ks img { width: 100%; height: 100%; object-fit: cover; transform-origin: var(--ko, 50% 50%); transform: scale(1.03); }
/* das ausblendende Bild zoomt weiter, statt auf den Anfang zurückzuspringen */
.b3-ks.is-on img, .b3-ks.is-out img { animation: b3-kb calc(var(--kd) + 1.6s) linear both; }
@keyframes b3-kb { from { transform: scale(1.03); } to { transform: scale(1.13); } }
.b3-kino-shade { position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(ellipse 55% 45% at 15% 100%, rgb(var(--gg) / 0.22), transparent 65%),
    linear-gradient(180deg, rgb(var(--scrim) / 0.55) 0%, rgb(var(--scrim) / 0.08) 28%, rgb(var(--scrim) / 0.35) 58%, rgb(var(--scrim) / 0.94) 100%),
    linear-gradient(90deg, rgb(var(--scrim) / 0.7), rgb(var(--scrim) / 0) 62%); }
.b3-kino-in { grid-row: 1; grid-column: 1; align-self: end; display: grid; justify-items: start; gap: 1.1rem; max-width: 62rem; padding-bottom: clamp(1.5rem, 3vw, 2.5rem); }
.b3-kino .b3-place { margin: 0; justify-self: start; color: #e9e3da; }
.b3-kino-h1 { display: grid; justify-items: start; }
.b3-kino-h1 .b3-sub { margin-bottom: 0.6rem; }
.b3-kino .b3-brand { font-size: clamp(3.4rem, 10.5vw, 11rem); text-shadow: 0 0 3rem rgb(var(--scrim) / 0.35); }
.b3-kino .b3-short { max-width: 30rem; color: #f2eee8; }
.b3-kino-bar { grid-row: 2; grid-column: 1; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 1rem 2rem; padding-top: 1rem; border-top: 1px solid rgb(var(--lg) / 0.28); }
.b3-kino-dots { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.b3-kino-dots button { display: grid; gap: 0.55rem; width: 100%; min-height: 2.75rem; padding: 0.35rem 0 0; background: none; border: 0; color: rgba(247, 239, 228, 0.66);
  font-size: 0.75rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; text-align: left; cursor: pointer; transition: color 0.3s; }
.b3-kino-dots button:hover, .b3-kino-dots button[aria-current="true"] { color: #f7efe4; }
.b3-kd { position: relative; display: block; height: 2px; background: rgb(var(--lg) / 0.22); overflow: clip; }
.b3-kd-fill { position: absolute; inset: 0; background: var(--gold-hi); box-shadow: 0 0 0.8rem rgb(var(--lg) / 0.8); transform: scaleX(0); transform-origin: 0 50%; }
.b3-kino-dots button[aria-current="true"] .b3-kd-fill { transform: scaleX(1); }
.b3-kino.is-auto .b3-kino-dots button[aria-current="true"] .b3-kd-fill { animation: b3-fill var(--kd) linear both; }
.b3-kino.is-paused .b3-kd-fill, .b3-kino.is-paused .b3-ks img { animation-play-state: paused !important; }
@keyframes b3-fill { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.b3-kino-pause { min-height: 2.75rem; padding: 0 1rem; border-radius: 999px; border: 1px solid rgb(var(--lg) / 0.4); background: rgb(var(--scrim) / 0.4); color: #f2eee8; font-size: 0.78rem; cursor: pointer; }
.b3-kino-pause:hover { border-color: var(--gold-hi); }
.b3-kino-note { position: absolute; left: var(--gutter); top: 1rem; }
/* Beleg rechts oben auf dem Foto: Glas, goldene Sterne, Plaketten (Runde 4c) */
.b3-kino-hp { grid-row: 1; grid-column: 1; align-self: start; justify-self: end; margin-top: clamp(1.25rem, 5vh, 3rem); padding: 1.1rem 1.25rem 1rem; border-radius: 1.25rem;
  border: 1px solid rgb(240 207 143 / 0.3); background: rgb(10 10 11 / 0.42); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); color: #f7efe4; box-shadow: 0 1.5rem 3rem -2rem rgb(0 0 0 / 0.8); }
.b3-kino-hp .hp { --hp-disc: #121214; --hp-disc-hi: #26262a; --hp-b-ink: #e9e3da; --hp-year: linear-gradient(176deg, #fff1c4, #e2b565 45%, #b8862f 72%, #f0cf8f); }
.b3-kino-hp :is(.hp-c, .hp-date, .hp-dot) { color: #cfc8bd; }
.b3-kino-hp .hp .note { margin: 0; }
@media (max-width: 47.99rem) {
  .b3-kino { min-height: calc(100svh - var(--hd-h) - 6rem); }
  .b3-kino .b3-brand { white-space: normal; font-size: clamp(3.4rem, 19vw, 5.5rem); }
  .b3-kino-bar { grid-template-columns: minmax(0, 1fr) auto; }
  .b3-kino-dots { gap: 0.5rem; align-self: center; }
  .b3-kino-dots button { padding: 0; }
  .b3-kino-dots button > span:first-child { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .b3-kino-dots .b3-kd { height: 3px; }
  .b3-kino { grid-template-rows: minmax(0, 1fr) auto auto; }
  .b3-kino-hp { grid-row: 2; justify-self: stretch; margin: 0 0 1.1rem; padding: 0.9rem 1rem; }
  .b3-kino-bar { grid-row: 3; }
}

.vb3 .ig { --sec-pad: clamp(4.5rem, 8vw, 6.5rem); background: var(--bg-rv); }
.vb3 .ig-post { border-radius: 1rem; }
.vb3 .ig-follow { border-radius: 999px; border-color: rgb(var(--lg) / 0.45); }
.vb3 .ig-follow:hover { box-shadow: 0 0 1.6rem -0.5rem var(--gold-glow); }

/* ---------- Unsere Arbeit: Lichttisch, Karten leicht schräg, richten sich beim Zeigen auf und glühen (Runde 4c) ---------- */
.vb3 .work { --sec-pad: clamp(5rem, 9vw, 8rem); }
.vb3 .work-list { grid-auto-columns: max(clamp(15rem, 22vw, 19.5rem), calc((100% - 5 * 1.25rem) / 6)); gap: 1.25rem; padding: 1.5rem 0.4rem 2rem;
  -webkit-mask: linear-gradient(90deg, transparent, #000 1.5%, #000 96%, transparent); mask: linear-gradient(90deg, transparent, #000 1.5%, #000 96%, transparent); }
.vb3 .work-it figure { padding: 0.55rem 0.55rem 0.95rem; border-radius: 1.1rem; background: var(--s-card); border: 1px solid rgb(var(--lg) / 0.16);
  transform: rotate(var(--tilt, 0deg)); transition: transform 0.6s var(--ease), box-shadow 0.5s; box-shadow: 0 1.4rem 2.6rem -2rem rgb(var(--sh) / calc(0.9 * var(--sh-k))); }
.vb3 .work-it:nth-child(odd) figure { --tilt: -1.2deg; }
.vb3 .work-it:nth-child(even) figure { --tilt: 1deg; }
.vb3 .work-it figure:is(:hover, :focus-within) { transform: translateY(-0.35rem); box-shadow: 0 0 2.6rem -0.9rem var(--gold-glow); }
.vb3 .work-it img { border-radius: 0.7rem; }
.vb3 .work-it figcaption { padding: 0.85rem 0.4rem 0; }
.vb3 .work-tag { left: 1.15rem; top: 1.15rem; border-radius: 999px; border: 1px solid rgb(240 207 143 / 0.45); background: rgb(10 10 11 / 0.58); color: #f0cf8f; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.vb3 .work-btn { border-radius: 999px; border-color: rgb(var(--lg) / 0.45); }
.vb3 .work-btn:not(:disabled):hover { background: var(--gold-fill); border-color: transparent; color: var(--gold-ink); box-shadow: var(--gold-bevel); }
.vb3 .gzw-list li::before { background: var(--gold-fill); box-shadow: 0 0 0.6rem rgb(var(--gg) / 0.45); }
@media (prefers-reduced-motion: reduce) { .vb3 .work-it figure { transform: none; } }
@media (max-width: 47.99rem) { .b3-kino-hp .hp-b { width: 3.55rem; } .b3-kino-hp .hp-b-y { font-size: 0.9rem; } .b3-kino-hp .hp-b-k { font-size: 0.4rem; } }

/* ---------- Textlinks: ein Lichtfunke läuft über den Goldfaden, das Wort glüht (Board R3 «micro»: Text Underline, als Licht) ---------- */
.vb3:not(.vc1) :is(.b3-link, .sv-all, .work-more, :is(p, .b3-card-more, .an-links, .b3-rv-foot, .b3-st-links li, .ft-legal) > a:not([class])) {
  width: fit-content; text-decoration: none; border-bottom: 0; padding-bottom: 0.25em;
  background-image: linear-gradient(90deg, transparent, var(--gold-hi) 35%, #fff6de 50%, var(--gold-hi) 65%, transparent), linear-gradient(rgb(var(--lg) / 0.45), rgb(var(--lg) / 0.45));
  background-size: 40% 1px, 100% 1px; background-position: -67% 100%, 0 100%; background-repeat: no-repeat;
  transition: color 0.3s, text-shadow 0.4s; }
.vb3:not(.vc1) :is(.b3-link, .sv-all, .work-more, :is(p, .b3-card-more, .an-links, .b3-rv-foot, .b3-st-links li, .ft-legal) > a:not([class])):is(:hover, :focus-visible) { color: var(--gold-hi); text-shadow: 0 0 0.9em rgb(var(--gg) / 0.45); }
@media (prefers-reduced-motion: no-preference) {
  html:not(.fx-off) .vb3:not(.vc1) :is(.b3-link, .sv-all, .work-more, :is(p, .b3-card-more, .an-links, .b3-rv-foot, .b3-st-links li, .ft-legal) > a:not([class])):is(:hover, :focus-visible) { animation: b3-spark 1.9s ease-in-out infinite; }
}
@keyframes b3-spark { 0% { background-position: -67% 100%, 0 100%; } 62%, 100% { background-position: 167% 100%, 0 100%; } }

/* ---------- Nach oben (Runde 10, B3 und C1): Knopf unten rechts ---------- */
.totop { position: fixed; z-index: 44; right: max(1rem, env(safe-area-inset-right, 0px)); bottom: calc(1.25rem + env(safe-area-inset-bottom, 0px)); display: grid; place-items: center;
  width: 3.1rem; height: 3.1rem; padding: 0; border-radius: 50%; border: 1px solid rgb(var(--lg) / 0.5); background: rgb(12 12 13 / 0.78); color: var(--s-ink); cursor: pointer;
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); box-shadow: 0 0.8rem 1.6rem -1rem rgb(0 0 0 / 0.5); opacity: 0; transform: translateY(0.6rem); pointer-events: none;
  transition: opacity 0.35s, transform 0.45s var(--ease), background 0.3s, box-shadow 0.3s; }
.totop.is-on { opacity: 1; transform: none; pointer-events: auto; }
/* liegt der Tastaturfokus unter dem Knopf, tritt er zur Seite (WCAG 2.4.11 Fokus nicht verdeckt) */
.totop.is-on.is-dodge { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.2s, visibility 0s 0.2s; }
.totop .ico { width: 1.15rem; height: 1.15rem; transform: rotate(-90deg); }
.totop:is(:hover, :focus-visible) { background: var(--gold-fill); color: var(--gold-ink); border-color: transparent; }
.totop:focus-visible { outline: 2px solid var(--s-focus); outline-offset: 3px; }
@media (max-width: 62rem) {
  .totop { bottom: calc(var(--bar-h, 4.25rem) + 0.6rem + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion: reduce) { .totop { transition: opacity 0.2s; transform: none; } }

/* ---------- Dauerbewegung pausieren ---------- */
.vb3 .is-off *, .vb3 .is-off *::before, .vb3 .is-off *::after, .vb3[data-hidden-variant] *, .vb3[data-hidden-variant] *::before, .vb3[data-hidden-variant] *::after { animation-play-state: paused !important; }

/* ---------- Tablet ---------- */
@media (max-width: 61.99rem) {
            .b3-card { grid-template-columns: minmax(0, 1fr); }
  .b3-card-side { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem; align-items: start; }
  .b3-deck { margin: 0; }
  .b3-proof-in, .b3-ak-grid, .b3-st-grid { grid-template-columns: minmax(0, 1fr); }
  .b3-ak-panel { position: static; order: -1; }
  .b3-ak-fig { height: auto; aspect-ratio: 16 / 10; }
  .b3-ak-grid.is-js .b3-ticket.is-active { transform: none; }
  .b3-team-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
/* ---------- Telefon ---------- */
@media (max-width: 47.99rem) {
  .vb3 { font-size: 1rem; }
  .b3-place { margin-top: 1.5rem; font-size: 0.75rem; }
  .b3-sub { font-size: 0.7rem; letter-spacing: 0.18em; }
  .b3-brand { white-space: normal; font-size: clamp(3.6rem, 21vw, 6rem); }
            .b3-card-side { grid-template-columns: minmax(0, 1fr); }
  .b3-deck { margin: -2.5rem 0.5rem 0; }
  .b3-rooms { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 80%; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 0.5rem; scrollbar-width: thin; }
  .b3-room, .b3-room:nth-child(n) { grid-column: auto; scroll-snap-align: start; }
  .b3-room:nth-child(n) figure { aspect-ratio: 4 / 5; }
  .b3-an-card { grid-template-columns: minmax(0, 1fr); }
  .b3-an-card img { aspect-ratio: 16 / 10; height: auto; }
  .b3-team-grid { grid-template-columns: minmax(0, 1fr); }
  .b3-aw-list a { grid-template-columns: auto minmax(0, 1fr); }
  .b3-aw-a { display: none; }
  .b3-week { grid-template-columns: minmax(0, 1fr); gap: 0.3rem; }
  .b3-week li { display: flex; justify-content: space-between; align-items: center; min-height: 3rem; padding: 0.6rem 1rem; text-align: left; }
  .b3-wd { font-size: 1.1rem; }
  .b3-wh { font-size: 0.9rem; }
  .b3-ticket { padding: 1.35rem 1.5rem; }
  .b3-mq-grid { grid-template-columns: repeat(4, 13rem); }
}

/* Schaufenster-Schrift B3 (Runde 5): beides in Gold wie die Folie im Studiofenster am Abend; die Schreibschrift leuchtet. */
.vb3:not(.vc1) { --pun-ink: var(--gold); --pun-script: var(--gold-hi); }
.vb3:not(.vc1) .pun-a, .vb3:not(.vc1) .slogan :is(.sl-1, .sl-3) { text-shadow: 0 0 1.6rem rgb(var(--gg) / 0.22); }
.vb3:not(.vc1) .pun-b { text-shadow: 0 0 1.1rem rgb(var(--gg) / 0.6), 0 0 0.25rem rgb(var(--lg) / 0.35); }
.vb3 .b3-last-h.slogan { --pun-size: clamp(3rem, 8.5vw, 7.5rem); max-width: none; font: 500 var(--pun-size)/0.95 "Montserrat", "Avenir Next", system-ui, sans-serif; letter-spacing: 0.01em; color: var(--pun-ink, var(--s-ink)); }
.b3-own-q { margin: 1.25rem 0 0.75rem; padding-left: 1rem; border-left: 1px solid rgb(var(--lg) / 0.5); }
.b3-own-q p { font-size: 0.98rem; line-height: 1.6; color: var(--s-ink); }
.b3-own-q footer { margin-top: 0.5rem; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--s-acc-t); }
