/* Tech4Live V2.2.20 — Neon DJ Cards; nur Teamseite. */
.team-v12-page {grid-template-columns:minmax(0,1fr) 305px;gap:20px;margin-top:20px;align-items:start}
.team-v12-main,.team-v12-side {min-width:0}
.team-v12-hero {min-height:158px;border:1px solid #e4bc13;border-radius:17px;background:linear-gradient(92deg,rgba(6,7,12,.82),rgba(11,12,17,.28)),radial-gradient(circle at 64% 35%,#ffd90044,transparent 42%),repeating-linear-gradient(90deg,transparent 0 21px,#e4c10013 21px 25px),linear-gradient(120deg,#0b0d13,#242316 75%,#0b0d13);box-shadow:0 0 22px #ffc90022,inset 0 1px #ffe5005c;overflow:hidden}
.team-v12-hero::before {content:"";position:absolute;inset:auto 0 0;height:44px;background:repeating-linear-gradient(90deg,transparent 0 8px,#ffd90022 8px 13px,transparent 13px 25px);mask-image:linear-gradient(0deg,#000,transparent);pointer-events:none}
.team-v12-hero h1 {font-weight:950;text-shadow:0 0 18px #ffde002e;letter-spacing:-.03em}
.team-v12-hero h1 em {color:#ffe600;text-shadow:0 0 19px #ffd90080}
.team-v12-hero p {font-style:normal;font-size:15px;max-width:440px}
.team-hero-disc {opacity:.3}
.team-v12-collection {padding-top:20px}
.team-v12-page .team-grid.team-page {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:0;align-items:stretch}
.t4l-neon-card {display:flex;flex-direction:column;min-width:0;position:relative;overflow:hidden;background:linear-gradient(160deg,rgba(27,28,32,.97),rgba(8,9,13,.98) 78%);border:2px solid #e8c20d;border-radius:18px;box-shadow:0 0 17px #ffe6002f,inset 0 0 14px #e8c2000d,0 15px 23px #0006;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;isolation:isolate}
.t4l-neon-card::after {content:"";position:absolute;inset:auto 8% 0;height:3px;border-radius:100px;background:linear-gradient(90deg,transparent,#ffe500,transparent);box-shadow:0 0 15px #ffdf00;pointer-events:none}
.t4l-neon-card:hover,.t4l-neon-card:focus-within {transform:translateY(-5px);border-color:#ffea4a;box-shadow:0 0 28px #ffe00065,0 18px 30px #0009,inset 0 0 16px #ffe00012}
.t4l-neon-photo {position:relative;aspect-ratio:1/1;background:radial-gradient(circle at 50% 18%,rgba(255,222,0,.18),transparent 34%),linear-gradient(145deg,#15171d,#07080b 70%);overflow:hidden;flex-shrink:0;display:grid;place-items:center;padding:12px}
.t4l-neon-photo::after {content:"";position:absolute;inset:56% 0 0;background:linear-gradient(transparent,rgba(3,3,5,.16),#09090c);pointer-events:none}
.t4l-neon-photo>img {display:block;width:100%;height:100%;object-fit:contain;object-position:center center;transition:transform .35s cubic-bezier(.2,.7,.2,1);filter:contrast(1.03) drop-shadow(0 12px 18px rgba(0,0,0,.35));border-radius:14px;background:#090a0d}
.t4l-neon-card:hover .t4l-neon-photo>img,.t4l-neon-card:focus-within .t4l-neon-photo>img{transform:scale(1.03)}
.t4l-neon-photo-brand {position:absolute;z-index:1;top:12px;left:12px;max-width:calc(100% - 24px);color:#fff;text-shadow:0 2px 9px #000;letter-spacing:.06em;font-size:10px;font-weight:950;background:#08080bb8;border:1px solid #ffe90082;border-radius:6px;padding:5px 8px}
.t4l-neon-photo-brand span {color:#ffe600}
.t4l-neon-photo-eq{position:absolute;z-index:1;bottom:10px;left:14px;display:flex;align-items:end;gap:3px;height:24px;pointer-events:none}
.t4l-neon-photo-eq i{display:block;width:4px;height:32%;border-radius:2px;background:#ffe100;box-shadow:0 0 9px #ffe100aa;animation:t4l-neon-pulse .9s alternate infinite ease-in-out}
.t4l-neon-photo-eq i:nth-child(3n){animation-delay:.2s;animation-duration:.65s}.t4l-neon-photo-eq i:nth-child(2n){animation-delay:.35s;animation-duration:1.13s}
@keyframes t4l-neon-pulse{from{height:25%}to{height:96%}}
.t4l-neon-card-content{display:flex;flex-direction:column;flex:1;padding:16px 14px 16px;min-width:0}
.t4l-neon-card h2{margin:0 0 12px;font-weight:950;font-size:clamp(17px,1.4vw,24px);line-height:1.16;color:#fff;overflow-wrap:anywhere;text-shadow:0 2px 11px #000}
.t4l-neon-card h2 span{color:#ffde00;font-size:.83em;margin-right:3px}
.t4l-neon-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:13px}
.t4l-neon-badges span{font-weight:800;line-height:1.2;border:1px solid #ae930f;background:linear-gradient(#2c2816,#14130d);color:#ffe866;border-radius:16px;padding:5px 8px;font-size:10px;overflow-wrap:anywhere}
.t4l-neon-intro {color:#e3e3e3;font-size:12px;line-height:1.58;margin:0 0 17px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;overflow-wrap:anywhere;min-height:57px}
.t4l-neon-card-footer{margin-top:auto}
.t4l-neon-profile-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:2px solid #ffe324;border-radius:12px;padding:11px 9px;color:#fff;font-size:13px;font-weight:900;line-height:1.2;background:linear-gradient(180deg,#443a04,#120f04 65%);box-shadow:0 0 12px #ffe60080,inset 0 1px #fff79778;transition:background .18s,color .18s,box-shadow .18s}
.t4l-neon-profile-btn span:last-child{margin-left:auto;font-size:22px;line-height:12px;color:#ffe600}
.t4l-neon-profile-btn span:first-child{color:#ffe600;font-size:18px}
.t4l-neon-profile-btn:hover,.t4l-neon-profile-btn:focus-visible{color:#0c0b07;background:linear-gradient(180deg,#fff15b,#f8cb00);box-shadow:0 0 20px #ffea00a9;outline:2px solid #ffed66;outline-offset:2px}
.t4l-neon-profile-btn:hover span,.t4l-neon-profile-btn:focus-visible span{color:#0c0b07}
/* Die bestehenden Infoboxen und ihr AzuraCast-/Sendeplan-Verhalten bleiben erhalten. */
.team-v12-side{gap:17px}
.team-v12-side .team-side-box,.team-v12-side .team-join-box{border:1px solid #e8c620;border-radius:16px;overflow:hidden;background:linear-gradient(150deg,#1c1d20e8,#090a0deb);box-shadow:0 0 18px #ffe60030,inset 0 1px #fff3a13b}
.team-v12-side .team-side-box .panel-head{background:linear-gradient(110deg,#16181c,#1b1a0e);border-bottom:1px solid #a38716}
.team-v12-side .team-side-box .panel-head h2{font-weight:900}
.team-v12-side .team-side-onair img,.team-v12-side .team-side-next img {border-radius:10px;box-shadow:0 0 13px #ffc9005b}
.team-v12-side .team-join-box{padding:25px 18px}
.team-v12-side .team-join-box h2{font-size:23px}
.team-v12-side .team-join-box>span {color:#ffe600;filter:drop-shadow(0 0 8px #ffe50066)}
/* Native dialog ensures keyboard Escape, focus management and a real modal layer. */
.t4l-neon-dialog{position:fixed;border:1px solid #ffe035;border-radius:19px;padding:0;width:min(820px,calc(100vw - 26px));max-height:min(88vh,920px);background:linear-gradient(145deg,#17191f,#06070a);color:#fff;box-shadow:0 0 0 2px #ffdb002f,0 0 55px #000e,0 0 28px #ffe60033;overflow:auto}
.t4l-neon-dialog:not([open]){display:none}
.t4l-neon-dialog::backdrop{background:rgba(0,0,0,.84);backdrop-filter:blur(5px)}
.t4l-neon-dialog-frame{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:0}
.t4l-neon-dialog-portrait{min-width:0;background:radial-gradient(circle at 50% 14%,rgba(255,222,0,.12),transparent 30%),linear-gradient(145deg,#131416,#06070a);min-height:400px;overflow:hidden;display:grid;place-items:center;padding:18px}
.t4l-neon-dialog-portrait img{width:100%;height:100%;object-fit:contain;border-radius:16px;background:#0b0c10;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.t4l-neon-dialog-copy{position:relative;padding:34px 29px 31px;min-width:0}
.t4l-neon-dialog-kicker{display:block;color:#ffe600;font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:8px}
.t4l-neon-dialog-copy h2{font-size:clamp(27px,3.4vw,39px);line-height:1.1;margin:0 30px 10px 0;overflow-wrap:anywhere}
.t4l-neon-dialog-role{display:inline-block;background:#403307;color:#ffe55a;border:1px solid #bfa021;border-radius:30px;font-size:12px;font-weight:850;padding:6px 12px;margin-bottom:19px}
.t4l-neon-dialog-copy h3{color:#ffe600;font-size:15px;margin:17px 0 9px}
.t4l-neon-dialog-copy p{color:#dedede;line-height:1.63;font-size:13px;overflow-wrap:anywhere}
.t4l-neon-dialog-close{position:absolute;right:12px;top:12px;z-index:5;display:grid;place-items:center;background:#1b1b1d;color:#fff;border:1px solid #e5c024;border-radius:50%;width:35px;height:35px;font-size:24px;line-height:1}
.t4l-neon-dialog-close:hover,.t4l-neon-dialog-close:focus-visible{color:#090909;background:#ffe12e;outline:2px solid #fff;outline-offset:2px}
.t4l-neon-show-list{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.t4l-neon-show-list li{display:grid;gap:2px;border:1px solid #5f4d12;background:#0b0c10;border-radius:8px;padding:9px 11px}
.t4l-neon-show-list li span{font-size:11px;color:#ffdb4b}.t4l-neon-show-list li strong{font-size:13px;color:#fff;overflow-wrap:anywhere}
.t4l-neon-social{display:flex;flex-wrap:wrap;gap:8px}
.t4l-neon-social a{display:inline-flex;align-items:center;gap:7px;border:1px solid #96811e;background:#211d0d;color:#ffe85a;border-radius:7px;font-size:12px;font-weight:800;padding:8px 10px}
.t4l-neon-social a:hover,.t4l-neon-social a:focus-visible{background:#ffe600;color:#080808;outline:2px solid #fff;outline-offset:2px}
.t4l-neon-schedule-link{display:inline-flex;margin-top:21px;color:#ffe85a;text-decoration:underline;text-underline-offset:3px;font-size:13px;font-weight:800}
@media(max-width:1180px){.team-v12-page{grid-template-columns:minmax(0,1fr) 280px;gap:14px}.team-v12-page .team-grid.team-page{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.team-v12-page{grid-template-columns:1fr}.team-v12-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.team-join-box{grid-column:1/-1}.team-v12-page .team-grid.team-page{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.team-v12-page .team-grid.team-page{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.team-v12-page .team-grid.team-page{grid-template-columns:1fr;gap:18px}.t4l-neon-photo{aspect-ratio:1.4}.t4l-neon-card-content{padding:19px}.t4l-neon-card h2{font-size:24px}.t4l-neon-intro{font-size:13px;min-height:0}.team-v12-side{grid-template-columns:1fr}.team-join-box{grid-column:auto}.t4l-neon-dialog-frame{grid-template-columns:1fr}.t4l-neon-dialog-portrait{min-width:0;background:radial-gradient(circle at 50% 14%,rgba(255,222,0,.12),transparent 30%),linear-gradient(145deg,#131416,#06070a);min-height:400px;overflow:hidden;display:grid;place-items:center;padding:18px}.t4l-neon-dialog-copy{padding:23px 19px}.t4l-neon-dialog{max-height:92vh}}
@media(prefers-reduced-motion:reduce){.t4l-neon-card,.t4l-neon-photo>img,.t4l-neon-profile-btn{transition:none!important}.t4l-neon-photo-eq i{animation:none!important;height:45%}}

/* V2.2.21 Bild-Fix: vollständige Teamfotos ohne harten Zuschnitt. */
