:root{--bg:#07070a;--bg2:#101015;--panel:#15151d;--text:#f6f6f7;--muted:#aaaab6;--line:rgba(255,255,255,.12);--accent:#fff;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(7,7,10,.82);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.08em}.custom-logo{width:auto;max-height:52px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%}.brand-name{font-size:.9rem}.main-nav ul,.site-footer ul{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.main-nav a,.site-footer a{color:var(--muted)}.main-nav a:hover,.site-footer a:hover{color:var(--text)}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:var(--text);padding:9px 12px;border-radius:8px}.hero{position:relative;overflow:hidden;min-height:78vh;display:flex;align-items:center;border-bottom:1px solid var(--line)}.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:72px;padding:100px 0}.eyebrow,.section-kicker{display:block;font-size:.75rem;letter-spacing:.22em;font-weight:800;color:#c6c6ce;margin-bottom:18px}.hero h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.95;letter-spacing:0;margin:0 0 28px;max-width:900px}.hero p{font-size:clamp(1rem,1.7vw,1.25rem);color:var(--muted);max-width:700px;margin:0 0 36px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;padding:14px 20px;border-radius:999px;font-weight:750;border:1px solid var(--line)}.button-primary{background:var(--text);color:var(--bg)}.button-secondary:hover{background:rgba(255,255,255,.06)}.hero-logo-card{aspect-ratio:1;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.12),transparent 45%),#0d0d12;box-shadow:0 30px 100px rgba(0,0,0,.45)}.hero-logo{width:76%;height:auto;object-fit:contain}.placeholder-logo{font-size:clamp(4rem,10vw,8rem);font-weight:950;letter-spacing:0}.hero-glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.16;pointer-events:none}.hero-glow-one{width:380px;height:380px;background:#7c3aed;left:-130px;top:80px}.hero-glow-two{width:320px;height:320px;background:#2563eb;right:-120px;bottom:-80px}.section{padding:100px 0;border-bottom:1px solid var(--line)}.split-grid,.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px}.section h2{font-size:clamp(2.2rem,5vw,4.3rem);line-height:1.02;letter-spacing:0;margin:0}.section-copy,.contact-grid p{font-size:1.15rem;color:var(--muted)}.section-dark{background:var(--bg2)}.contact-card{display:grid;border:1px solid var(--line);border-radius:20px;overflow:hidden}.contact-card a,.setup-hint{padding:24px 26px;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--line)}.contact-card a:last-child{border-bottom:0}.contact-card a:hover{background:rgba(255,255,255,.04)}.contact-card span{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.contact-card strong{font-size:1.1rem}.social-links{display:flex;gap:14px;flex-wrap:wrap}.social-links a{padding:16px 18px;border:1px solid var(--line);border-radius:14px;min-width:160px;display:flex;justify-content:space-between}.social-links a:hover{background:#fff;color:#000}.muted{color:var(--muted)}.site-footer{padding:34px 0;background:#050507}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center;color:var(--muted);font-size:.9rem}.content-area{max-width:850px}.content-area h1{font-size:clamp(2.4rem,5vw,4.5rem)}.content-area a{text-decoration:underline}@media(max-width:820px){.container{width:min(calc(100% - 28px),var(--max))}.menu-toggle{display:inline-flex}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#0b0b0f;border-bottom:1px solid var(--line);padding:20px}.main-nav.is-open{display:block}.main-nav ul{flex-direction:column;align-items:flex-start}.hero{min-height:auto}.hero-inner{grid-template-columns:1fr;gap:48px;padding:72px 0}.hero-logo-card{width:min(78vw,440px);margin-inline:auto}.split-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.section{padding:72px 0}.footer-inner{flex-direction:column;align-items:flex-start}.site-footer ul{flex-wrap:wrap}}@media(max-width:520px){.brand-name{display:none}.hero h1{font-size:clamp(2.7rem,16vw,4.6rem)}.button{width:100%;justify-content:center}.social-links{display:grid;grid-template-columns:1fr;width:100%}.social-links a{width:100%}}
/* BFB 1.0.2 brand treatment */
:root{--gold:#f7c63d;--gold2:#ff9f00;--silver:#f3f3f3}
.hero{background:radial-gradient(circle at 72% 46%,rgba(247,198,61,.10),transparent 30%),linear-gradient(180deg,#030303 0%,#090909 100%)}
.eyebrow,.section-kicker{color:var(--gold)}
.button-primary{background:linear-gradient(135deg,#fff3bd,var(--gold),#d99400);color:#090909;border-color:rgba(247,198,61,.65);box-shadow:0 8px 28px rgba(247,198,61,.15)}
.button-secondary{border-color:rgba(247,198,61,.42)}
.hero-logo-card{aspect-ratio:auto;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.hero-logo-card picture{display:block;width:100%}.hero-logo{display:block;width:100%;max-width:720px;height:auto;object-fit:contain;filter:drop-shadow(0 16px 45px rgba(247,166,0,.14))}
.hero-glow-one{background:#f7c63d;opacity:.10}.hero-glow-two{background:#ff9f00;opacity:.10}
.social-links a:hover{background:var(--gold);color:#080808;border-color:var(--gold)}
@media(max-width:820px){.hero-logo-card{width:min(92vw,560px)}.hero-logo{width:100%;max-width:560px}}

/* BFB Rechtstexte / WordPress-Seiten */
.page-section{min-height:70vh;padding-top:110px;background:linear-gradient(180deg,#060606 0%,#0b0b0d 100%)}
.bfb-page-card{background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:24px;padding:clamp(28px,5vw,64px);box-shadow:0 28px 80px rgba(0,0,0,.22)}
.page-header{padding-bottom:28px;margin-bottom:34px;border-bottom:1px solid var(--line)}
.page-header h1{margin:0;font-size:clamp(2.5rem,6vw,5rem);line-height:1;letter-spacing:0}
.entry-content{color:#dedee4;font-size:1.04rem}
.entry-content h2,.entry-content h3{color:var(--text);line-height:1.15;margin-top:2.1em}
.entry-content h2{font-size:clamp(1.45rem,3vw,2rem)}
.entry-content h3{font-size:1.2rem}
.entry-content p,.entry-content ul,.entry-content ol{margin:0 0 1.25em}
.entry-content a{color:var(--gold);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.entry-content a:hover{color:#ffe59a}
.bfb-legal-page .content-area{max-width:920px}
@media(max-width:820px){.page-section{padding-top:72px}.bfb-page-card{border-radius:18px;padding:28px 22px}.page-header{margin-bottom:26px}}

/* BFB Designpflege, Kundenlogin und Kundenportal */
.hero h1,.section h2,.content-area h1,.page-header h1,.placeholder-logo{letter-spacing:0}
.hero h1{font-size:5.8rem}.hero p{font-size:1.18rem}.section h2{font-size:3.9rem}.content-area h1,.page-header h1{font-size:4rem}
.button{align-items:center;justify-content:center;min-height:48px;border-radius:999px;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.button:hover{transform:translateY(-1px)}
.contact-card{border-radius:16px}.social-links a{border-radius:8px}.menu-item-bfb-customer a{color:var(--gold)}
.bfb-auth,.bfb-portal{min-height:72vh;background:linear-gradient(180deg,#050505 0%,#0e0e12 100%)}
.bfb-auth-inner{display:grid;grid-template-columns:1fr 440px;align-items:start;gap:64px}
.bfb-auth-copy h1,.bfb-portal-header h1{font-size:3.8rem;line-height:1;letter-spacing:0;margin:0 0 18px}
.bfb-auth-copy p,.bfb-portal-header p{color:var(--muted);font-size:1.12rem;margin:0}
.bfb-auth-panel,.bfb-empty-state,.bfb-portal-event{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.035);box-shadow:0 24px 70px rgba(0,0,0,.24)}
.bfb-auth-panel{padding:34px}
.bfb-portal-form{display:grid;gap:18px}
.bfb-portal-form p{margin:0;display:grid;gap:8px}
.bfb-portal-form label{font-size:.86rem;color:#d9d9df;font-weight:750}
.bfb-portal-form input,.bfb-portal-form textarea,.bfb-portal-form select{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#08080b;color:var(--text);padding:12px 14px;font:inherit}
.bfb-portal-form textarea{resize:vertical;min-height:118px}
.bfb-portal-form input:focus,.bfb-portal-form textarea:focus{outline:2px solid rgba(247,198,61,.42);border-color:var(--gold)}
.bfb-checkbox-row label{display:flex;align-items:center;gap:10px;color:var(--muted);font-weight:600}
.bfb-checkbox-row input{width:auto;min-height:auto}
.bfb-subtle-link{color:var(--gold);font-size:.94rem;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.bfb-alert{border:1px solid rgba(247,198,61,.35);background:rgba(247,198,61,.08);border-radius:8px;padding:14px 16px;color:#fff4c9;margin-bottom:22px}
.bfb-alert-error{border-color:rgba(255,103,103,.42);background:rgba(255,103,103,.10);color:#ffd7d7}
.bfb-alert-success{border-color:rgba(95,210,140,.42);background:rgba(95,210,140,.10);color:#dbffe6}
.bfb-portal-shell{display:grid;gap:34px}
.bfb-portal-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.bfb-empty-state{padding:36px}.bfb-empty-state h2{font-size:2rem;letter-spacing:0;margin:0 0 10px}.bfb-empty-state p{color:var(--muted);margin:0}
.bfb-portal-event{padding:34px;display:grid;gap:34px}
.bfb-event-summary{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.bfb-event-summary h2{font-size:2.7rem;line-height:1.05;letter-spacing:0;margin:0}
.bfb-event-summary dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bfb-event-summary dt{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}
.bfb-event-summary dd{margin:4px 0 0;font-size:1.08rem;color:var(--text)}
.bfb-portal-section{display:grid;gap:16px}.bfb-portal-section h3{font-size:1.55rem;letter-spacing:0;margin:0}
.bfb-playlist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bfb-playlist-embed{border:1px solid var(--line);border-radius:8px;padding:18px;background:rgba(0,0,0,.26)}
.bfb-playlist-embed h4,.bfb-wish-item h4{font-size:1.08rem;margin:0 0 8px;letter-spacing:0}
.bfb-playlist-embed p,.bfb-wish-main p{color:var(--muted);margin:0 0 12px}
.bfb-playlist-embed iframe{display:block;border:0;border-radius:8px;background:#000}
.bfb-wish-list{display:grid;gap:12px}
.bfb-wish-item{border:1px solid var(--line);border-radius:8px;background:rgba(0,0,0,.22);padding:18px}
.bfb-wish-main{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.bfb-wish-comment{color:#d8d8de}
.bfb-status-pill{display:inline-flex;align-items:center;min-height:32px;border:1px solid rgba(247,198,61,.35);border-radius:999px;padding:5px 10px;color:#ffe59a;font-size:.82rem;font-weight:750;white-space:nowrap}
.bfb-wish-edit{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}
.bfb-wish-edit summary{cursor:pointer;color:var(--gold);font-weight:750}
.bfb-wish-edit .bfb-portal-form{margin-top:16px;grid-template-columns:repeat(2,minmax(0,1fr))}
.bfb-wish-edit .bfb-portal-form p:nth-of-type(3),.bfb-wish-edit .bfb-portal-form p:nth-of-type(4){grid-column:1/-1}
.bfb-delete-form{margin-top:12px}.bfb-delete-form .button{min-height:42px;padding:10px 16px}
@media(max-width:900px){.hero h1{font-size:4rem}.section h2{font-size:2.8rem}.content-area h1,.page-header h1{font-size:3rem}.bfb-auth-inner,.bfb-event-summary{grid-template-columns:1fr}.bfb-playlist-grid{grid-template-columns:1fr}.bfb-auth-copy h1,.bfb-portal-header h1{font-size:3rem}}
@media(max-width:620px){.hero h1{font-size:3.2rem}.hero p{font-size:1.02rem}.content-area h1,.page-header h1{font-size:2.4rem}.bfb-auth-panel,.bfb-portal-event,.bfb-empty-state{padding:22px}.bfb-portal-header{align-items:flex-start;flex-direction:column}.bfb-event-summary h2{font-size:2.2rem}.bfb-event-summary dl{grid-template-columns:1fr}.bfb-wish-main{display:grid}.bfb-status-pill{width:max-content}.bfb-wish-edit .bfb-portal-form{grid-template-columns:1fr}.bfb-auth-copy h1,.bfb-portal-header h1{font-size:2.4rem}}

/* BFB Song- oder Playlist-Einreichung */
.bfb-submission-type{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bfb-submission-type>span{grid-column:1/-1;color:var(--text);font-weight:800}
.bfb-submission-radio{position:absolute;opacity:0;pointer-events:none}
.bfb-submission-card{min-height:92px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(0,0,0,.22);padding:16px;display:grid;gap:4px;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.bfb-submission-card strong{font-size:1rem;color:var(--text)}
.bfb-submission-card small{font-size:.86rem;color:var(--muted);line-height:1.35}
.bfb-submission-card:hover{transform:translateY(-1px);border-color:rgba(247,198,61,.45)}
.bfb-submission-radio:checked+.bfb-submission-card{background:rgba(247,198,61,.10);border-color:rgba(247,198,61,.75);box-shadow:0 0 0 1px rgba(247,198,61,.2)}
.bfb-submission-fields{display:none;grid-column:1/-1;gap:18px;margin-top:4px}
.bfb-submission-radio[value="song"]:checked~.bfb-song-fields,.bfb-submission-radio[value="playlist"]:checked~.bfb-playlist-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.bfb-submission-fields .bfb-field-wide{grid-column:1/-1}
.bfb-portal-form label span{color:var(--gold);font-size:.74rem;text-transform:uppercase;letter-spacing:.1em}
.bfb-submitted-playlists{display:grid;gap:12px;margin-top:18px}
.bfb-submitted-playlists>h4{margin:0;font-size:1.08rem;letter-spacing:0;color:var(--text)}
.bfb-playlist-submission .bfb-status-pill{border-color:rgba(255,255,255,.22);color:#f2f2f4}
@media(max-width:620px){.bfb-submission-type,.bfb-submission-radio[value="song"]:checked~.bfb-song-fields,.bfb-submission-radio[value="playlist"]:checked~.bfb-playlist-fields{grid-template-columns:1fr}.bfb-submission-card{min-height:auto}}

/* BFB 1.2.0 – Party-/Tabletmodus und DJ-Ansicht */
.bfb-guest-wishes-panel{border:1px solid rgba(247,198,61,.22);border-radius:8px;background:rgba(247,198,61,.055);padding:22px}
.bfb-guest-actions{display:flex;flex-wrap:wrap;gap:12px}
.bfb-party-screen,.bfb-dj-view{margin:0;min-height:100vh;background:#050505;color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif}
.bfb-party-shell{width:min(100% - 32px,1040px);margin-inline:auto;min-height:100vh;display:grid;align-content:start;gap:24px;padding:28px 0 22px}
.bfb-party-header{display:flex;align-items:center;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.bfb-party-header img{width:86px;height:86px;object-fit:contain;flex:0 0 auto}
.bfb-party-header span,.bfb-dj-header span{display:block;color:var(--gold);font-size:.82rem;font-weight:850;text-transform:uppercase;letter-spacing:.16em;margin-bottom:6px}
.bfb-party-header h1,.bfb-dj-header h1{margin:0;font-size:3.3rem;line-height:1;letter-spacing:0}
.bfb-party-header p{margin:8px 0 0;color:var(--muted);font-size:1.1rem}
.bfb-party-form{display:grid;gap:20px}
.bfb-party-guest{display:grid;gap:8px;margin:0;max-width:520px}
.bfb-party-guest label{font-weight:800;color:#dddde4}
.bfb-party-guest input,.bfb-party-table input{width:100%;min-height:62px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#09090c;color:var(--text);font-size:1.2rem;padding:14px 16px}
.bfb-party-guest input:focus,.bfb-party-table input:focus{outline:3px solid rgba(247,198,61,.35);border-color:var(--gold)}
.bfb-party-table-wrap{width:100%;overflow-x:hidden}
.bfb-party-table{width:100%;border-collapse:separate;border-spacing:0 10px;table-layout:fixed}
.bfb-party-table th{color:var(--gold);font-size:.88rem;text-transform:uppercase;letter-spacing:.12em;text-align:left;padding:0 8px}
.bfb-party-table td{padding:0 8px}
.bfb-party-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.bfb-party-actions .button{min-height:58px;font-size:1rem}
.bfb-party-footer{padding-top:10px;text-align:right}
.bfb-party-footer a{color:var(--muted);font-size:.9rem;text-decoration:underline;text-underline-offset:3px}
.bfb-dj-shell{width:min(100% - 36px,1500px);margin-inline:auto;padding:30px 0}
.bfb-dj-header{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:18px}
.bfb-dj-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.bfb-dj-table th,.bfb-dj-table td{padding:18px 16px;text-align:left;border-bottom:1px solid var(--line);font-size:1.25rem}
.bfb-dj-table th{color:var(--gold);font-size:.86rem;letter-spacing:.12em;text-transform:uppercase}
.bfb-live-row.is-new td{background:rgba(247,198,61,.085)}
.bfb-live-time{white-space:nowrap;color:#f8e2a3;font-weight:850}
@media(max-width:760px){.bfb-party-shell{width:min(100% - 20px,1040px);padding-top:18px}.bfb-party-header{align-items:flex-start}.bfb-party-header img{width:66px;height:66px}.bfb-party-header h1{font-size:2.35rem}.bfb-party-table,.bfb-party-table tbody,.bfb-party-table tr,.bfb-party-table td{display:block;width:100%}.bfb-party-table thead{display:none}.bfb-party-table tr{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.035);padding:10px;margin-bottom:12px}.bfb-party-table td{padding:6px}.bfb-party-table td:first-child::before{content:"Interpret";display:block;color:var(--gold);font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}.bfb-party-table td:nth-child(2)::before{content:"Songtitel";display:block;color:var(--gold);font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}.bfb-party-actions{display:grid}.bfb-party-actions .button{width:100%}.bfb-dj-table th,.bfb-dj-table td{font-size:1rem;padding:12px 10px}.bfb-dj-header{display:grid}.bfb-dj-header h1{font-size:2.2rem}}

/* BFB 1.2.1 – Digital Experience */
.digital-experience{background:linear-gradient(180deg,#0a0a0d 0%,#050505 100%)}
.digital-inner{display:grid;gap:42px}
.digital-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:56px;row-gap:18px;align-items:start}
.digital-head .section-kicker{grid-column:1;margin-bottom:0}
.digital-head h2{grid-column:1;max-width:780px;text-wrap:balance}
.digital-copy{grid-column:2;grid-row:1 / span 2;display:grid;gap:16px;color:#d9d9df;font-size:1.08rem}
.digital-copy p{margin:0}
.digital-copy strong{color:#fff4c9}
.digital-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.digital-card{min-width:0;border:1px solid rgba(247,198,61,.20);border-radius:8px;background:rgba(255,255,255,.035);padding:24px;display:grid;align-content:start;gap:14px;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.digital-card:hover{transform:translateY(-2px);border-color:rgba(247,198,61,.55);background:rgba(247,198,61,.055)}
.digital-icon{width:46px;height:46px;border:1px solid rgba(247,198,61,.32);border-radius:8px;display:grid;place-items:center;color:var(--gold);background:rgba(247,198,61,.08)}
.digital-icon svg{width:25px;height:25px;display:block}
.digital-icon svg *{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.digital-card h3{margin:0;font-size:1.16rem;line-height:1.2;letter-spacing:0}
.digital-card p{margin:0;color:var(--muted);line-height:1.48}
.digital-actions{display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:980px){.digital-head{grid-template-columns:1fr;gap:22px}.digital-head .section-kicker,.digital-head h2,.digital-copy{grid-column:auto;grid-row:auto}.digital-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.digital-inner{gap:30px}.digital-card-grid{grid-template-columns:1fr}.digital-card{padding:20px}.digital-actions{display:grid}.digital-actions .button{width:100%}}

/* BFB 1.3.0 – Event Hub */
.bfb-event-hub{gap:30px}
.bfb-hub-hero{display:grid;grid-template-columns:108px minmax(0,1fr);gap:24px;align-items:center;padding-bottom:28px;border-bottom:1px solid var(--line)}
.bfb-hub-hero img{width:108px;height:108px;object-fit:contain}
.bfb-hub-hero h2{font-size:clamp(2.25rem,5vw,4.2rem);line-height:1;letter-spacing:0;margin:0 0 18px}
.bfb-hub-hero dl,.bfb-hub-data-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0}
.bfb-hub-hero dt,.bfb-hub-data-list dt{color:var(--muted);font-size:.76rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.bfb-hub-hero dd,.bfb-hub-data-list dd{margin:4px 0 0;color:var(--text);font-weight:750}
.bfb-hub-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bfb-hub-card{min-height:154px;border:1px solid rgba(247,198,61,.22);border-radius:8px;background:rgba(0,0,0,.26);padding:20px;display:grid;align-content:space-between;gap:12px;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.bfb-hub-card:hover{transform:translateY(-2px);border-color:rgba(247,198,61,.62);background:rgba(247,198,61,.06)}
.bfb-hub-card span{color:var(--gold);font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.bfb-hub-card strong{font-size:1.04rem;line-height:1.3}
.bfb-hub-card em{width:max-content;max-width:100%;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#fff4c9;font-size:.82rem;font-style:normal;font-weight:800;padding:5px 10px}
.bfb-hub-section{border-top:1px solid var(--line);padding-top:30px}
.bfb-hub-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}
.bfb-hub-section-head h3{margin:0}
.bfb-hub-section h4{margin:0 0 10px;font-size:1.18rem;letter-spacing:0}
.bfb-hub-fieldset{border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:20px;margin:0 0 18px;background:rgba(0,0,0,.16)}
.bfb-hub-fieldset legend{color:var(--gold);font-size:.78rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;padding:0 8px}
.bfb-hub-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bfb-hub-field{margin:0;display:grid;gap:8px}
.bfb-field-wide{grid-column:1/-1}
.bfb-portal-form select{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#08080b;color:var(--text);padding:12px 14px;font:inherit}
.bfb-portal-form select:focus{outline:2px solid rgba(247,198,61,.42);border-color:var(--gold)}
.bfb-hub-music-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.bfb-hub-form-panel,.bfb-hub-subsection{border:1px solid rgba(255,255,255,.13);border-radius:8px;background:rgba(0,0,0,.18);padding:20px}
.bfb-repeater{display:grid;gap:14px}
.bfb-repeater-rows{display:grid;gap:12px}
.bfb-repeater-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.025);padding:14px}
.bfb-repeater-row p{margin:0}
.bfb-repeater-row label{display:grid;gap:7px}
.bfb-repeater-row textarea{min-height:82px}
.bfb-row-remove{min-height:42px;padding:10px 14px}
.bfb-no-go-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.bfb-no-go-row p:last-of-type,.bfb-timeline-row p:nth-of-type(3){grid-column:1/-1}
.bfb-timeline-row{grid-template-columns:150px minmax(0,1fr)}
.bfb-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-bottom:18px}
.bfb-checkbox-grid label{display:flex;align-items:flex-start;gap:10px;color:#dddde4;font-weight:700}
.bfb-checkbox-grid input{margin-top:4px}
.bfb-hub-disclaimer{border:1px solid rgba(247,198,61,.28);border-radius:8px;background:rgba(247,198,61,.075);padding:16px 18px;color:#fff4c9;font-weight:700}
.bfb-responsive-table{width:100%;overflow-x:auto}
.bfb-hub-table{width:100%;border-collapse:collapse}
.bfb-hub-table th,.bfb-hub-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}
.bfb-hub-table tr.is-next td{background:rgba(247,198,61,.10)}
@media(max-width:980px){.bfb-hub-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bfb-hub-hero dl,.bfb-hub-data-list{grid-template-columns:repeat(2,minmax(0,1fr))}.bfb-hub-music-grid{grid-template-columns:1fr}}
@media(max-width:720px){.bfb-hub-hero{grid-template-columns:74px minmax(0,1fr);gap:16px}.bfb-hub-hero img{width:74px;height:74px}.bfb-hub-card-grid,.bfb-hub-form-grid,.bfb-repeater-row,.bfb-no-go-row,.bfb-timeline-row,.bfb-checkbox-grid{grid-template-columns:1fr}.bfb-hub-section-head{align-items:flex-start;flex-direction:column}.bfb-hub-card{min-height:132px}.bfb-responsive-table{overflow:visible}.bfb-hub-table,.bfb-hub-table thead,.bfb-hub-table tbody,.bfb-hub-table tr,.bfb-hub-table td{display:block;width:100%}.bfb-hub-table thead{display:none}.bfb-hub-table tr{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.035);padding:10px;margin-bottom:12px}.bfb-hub-table td{border-bottom:0;padding:8px}.bfb-hub-table td::before{content:attr(data-label);display:block;color:var(--gold);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}}
@media(max-width:520px){.bfb-hub-hero{grid-template-columns:1fr}.bfb-hub-hero dl,.bfb-hub-data-list{grid-template-columns:1fr}.bfb-hub-fieldset,.bfb-hub-form-panel,.bfb-hub-subsection{padding:16px}}

/* BFB 1.3.1 – öffentliche Leistungsdarstellung */
.service-section{background:linear-gradient(180deg,#050505 0%,#0d0d11 100%)}
.service-inner,.tech-inner{display:grid;gap:42px}
.service-intro,.tech-head{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.service-intro h2,.tech-head h2{text-wrap:balance}
.service-intro strong{color:#fff4c9}
.personal-card{border:1px solid rgba(247,198,61,.24);border-radius:8px;background:linear-gradient(135deg,rgba(247,198,61,.10),rgba(255,255,255,.035));padding:clamp(24px,4vw,42px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;box-shadow:0 26px 80px rgba(0,0,0,.24)}
.personal-card h3{font-size:clamp(2rem,4.6vw,3.8rem);line-height:1;letter-spacing:0;margin:0}
.personal-card p{margin:0 0 14px;color:#e4e4e8;font-size:1.06rem}
.personal-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}
.event-type-row{display:flex;flex-wrap:wrap;gap:10px}
.event-type-row span{border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(0,0,0,.22);padding:9px 13px;color:#f3f3f3;font-size:.9rem;font-weight:800}
.pillar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pillar-card,.tech-card{min-width:0;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:rgba(255,255,255,.035);padding:22px;display:grid;align-content:start;gap:10px;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.pillar-card:hover,.tech-card:hover{transform:translateY(-2px);border-color:rgba(247,198,61,.5);background:rgba(247,198,61,.055)}
.pillar-card span,.tech-card span{color:var(--gold);font-size:.76rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.pillar-card h3{font-size:1.15rem;line-height:1.2;letter-spacing:0;margin:0}
.pillar-card p,.tech-card p{margin:0;color:var(--muted);line-height:1.48}
.process-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.process-flow div{position:relative;min-height:118px;border:1px solid rgba(247,198,61,.22);border-radius:8px;background:rgba(0,0,0,.22);padding:17px;display:grid;align-content:space-between;gap:14px}
.process-flow div:not(:last-child)::after{content:"";position:absolute;right:-9px;top:50%;width:8px;height:8px;border-top:2px solid var(--gold);border-right:2px solid var(--gold);transform:translateY(-50%) rotate(45deg);background:#08080b}
.process-flow span{color:#fff4c9;font-size:.78rem;font-weight:900}
.process-flow strong{font-size:.88rem;line-height:1.25;letter-spacing:.08em}
.tech-public{background:linear-gradient(180deg,#08080b 0%,#050505 100%)}
.tech-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tech-card{min-height:150px}
.tech-card-wide{grid-column:span 2}
.tech-note{border:1px solid rgba(247,198,61,.24);border-radius:8px;background:rgba(247,198,61,.07);padding:20px 22px;color:#fff4c9;display:grid;gap:6px}
.tech-note strong{font-size:1.02rem}
.tech-note p{margin:0;color:#f1e5bd}
@media(max-width:1060px){.pillar-grid,.tech-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-flow{grid-template-columns:1fr}.process-flow div{min-height:auto}.process-flow div:not(:last-child)::after{right:auto;left:28px;top:auto;bottom:-10px;transform:rotate(135deg);background:#07070a}.tech-card-wide{grid-column:auto}}
@media(max-width:820px){.service-intro,.tech-head,.personal-card{grid-template-columns:1fr;gap:24px}.pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.service-inner,.tech-inner{gap:30px}.pillar-grid,.tech-card-grid{grid-template-columns:1fr}.personal-card{padding:22px}.personal-actions{display:grid}.personal-actions .button{width:100%}.event-type-row{display:grid;grid-template-columns:1fr}.event-type-row span{width:100%;text-align:center}.process-flow div{padding:16px}.tech-note{padding:17px}}
