/* Original red/black CI, with restrained light and rhythm accents. */
.whatsapp-cta{text-align:center;max-width:100%;white-space:normal}
:root{--bg:#0c0c0e;--panel:#19191c;--text:#fafafa;--muted:#bdbdc3;--accent:#ff4257;--line:#353539;--button-red:#d9001b}
body{background:var(--bg)}
.header{background:#08080af5}
.hero{isolation:isolate}
.hero-content{z-index:2}
.hero::after{content:"";position:absolute;pointer-events:none;z-index:1;inset:-25% -20% 0 35%;background:radial-gradient(ellipse at 70% 20%,#d9001b20,transparent 62%);animation:light-drift 14s ease-in-out infinite alternate}
.page-intro{position:relative;isolation:isolate;overflow:hidden}
.page-intro::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:480px;height:480px;top:-245px;right:-120px;border:1px solid #e3223930;border-radius:50%;box-shadow:0 0 0 35px #e3223908,0 0 0 70px #e3223905}
.config-spotlight{position:relative;background:linear-gradient(125deg,#301017,#171719 70%);border-bottom-color:#782131}
.config-spotlight::before{content:"";position:absolute;top:0;left:64px;height:2px;width:110px;background:linear-gradient(90deg,#ff4257,transparent)}
.topic-card{background:#19191c}
.topic-red{background:linear-gradient(135deg,#64101c,#281014)}
.topic-card:not(.topic-photo):not(.topic-red){border-top:2px solid #6d2531}
.topic-photo img{transition:transform .6s ease}
.service,.personal-card,.region-tile,.location-card{background:#19191c}
.personal-life{background:linear-gradient(140deg,#351218,#1b1719)}
.section-head>.reveal,.section-head>div{min-width:0}
.section-head .eyebrow{display:flex;align-items:center}
.section-head .eyebrow::before{content:"";width:27px;height:3px;background:var(--accent);flex-shrink:0;box-shadow:7px -5px 0 -1px #ff425760}
.eyebrow{font-size:.75rem}
.topic-card .eyebrow{font-size:.75rem}
.topic-card p,.service p{font-size:1rem}
.small,.preview-note{font-size:.8125rem}
.portfolio-card span,.video-card figcaption{font-size:.9375rem}
.portfolio-card,.video-card{background:#19191c;border-color:#393039}
.media-story{display:grid;grid-template-columns:1.15fr 1fr;gap:28px;align-items:center;margin:30px 0}
.media-story>*{min-width:0}
.media-story-copy{padding:24px 0}
.media-story-copy h3{font-size:clamp(1.65rem,3vw,2.4rem);margin-bottom:20px}
.media-story-copy p{font-size:1rem}
.media-story-copy .eyebrow{color:var(--accent);margin-bottom:15px}
.media-story-copy .text-link{margin-top:8px}
.media-visual{position:relative;min-width:0}
.media-visual::before{content:"";position:absolute;pointer-events:none;z-index:1;left:-7px;top:-7px;width:56px;height:56px;border-left:2px solid #d9001b;border-top:2px solid #d9001b}
.media-story .video-card{width:100%;box-shadow:0 15px 40px #0003}
.media-story video,.portfolio-video video{display:block;width:100%;aspect-ratio:16/9;background:#09090b;object-fit:contain}
.video-card figcaption{display:flex;flex-direction:column;gap:5px;line-height:1.5}
.video-card figcaption small{color:var(--muted);font-size:.8125rem}
.media-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.media-photo-pair .portfolio-card img{aspect-ratio:4/3;object-fit:cover}
.media-photo-pair .portfolio-card span{padding:12px;font-size:.875rem}
.media-topic-links{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 0}
.media-topic-links a{border:1px solid #5e343c;border-radius:6px;padding:9px 14px;font-size:.875rem;background:#211317;transition:border-color .2s,background .2s}
.media-topic-links a:hover{background:#3b1420;border-color:var(--accent)}
.portfolio-video{grid-column:span 2;margin:0;background:#1b1518;border:1px solid #65303c;border-radius:10px;overflow:hidden;align-self:start}
.portfolio-video figcaption{padding:16px 18px;font-size:.9375rem;line-height:1.5}
.portfolio-video figcaption a{display:inline-block;margin-top:9px;border-bottom:1px solid #b83449;font-size:.875rem}
.section-media{padding-top:50px;padding-bottom:60px;border-top:1px solid var(--line)}
.signal{display:inline-flex;gap:4px;align-items:center;height:22px;vertical-align:middle;margin-right:10px;color:var(--accent)}
.signal i{display:block;width:3px;height:8px;background:currentColor;transform-origin:center;animation:signal-beat 2.4s ease-in-out infinite}
.signal i:nth-child(2){height:18px;animation-delay:-.5s}
.signal i:nth-child(3){height:12px;animation-delay:-1s}
.signal i:nth-child(4){height:22px;animation-delay:-1.5s}
.signal i:nth-child(5){height:10px;animation-delay:-2s}
.media-detail{border-left:2px solid #922438;padding-left:18px}
.media-detail p{margin-bottom:0}
.photo-disclosure{font-size:.8125rem;color:#beb4b8;margin-top:12px}
.wish-scene{margin-top:28px}
.wish-scene .portfolio-card{width:100%}
.wish-scene .portfolio-card img{aspect-ratio:3/2;object-fit:cover}
.wedding-photo{position:relative}
.wedding-photo img{object-position:center}
.media-story .actions{margin-top:24px;gap:16px}
.media-story .button{font-size:.875rem}
.video-card.portrait{width:100%;max-width:270px;margin-inline:auto}
.video-card.portrait video{aspect-ratio:9/16;object-fit:contain}
.portfolio-video.portrait{grid-column:auto}
.portfolio-video.portrait video{aspect-ratio:4/5;object-fit:contain}
.story-photo{width:100%;max-width:380px;margin-top:20px}
.story-photo img{aspect-ratio:4/3;object-fit:cover;object-position:center 58%}
.story-photo span{line-height:1.5}
.wedding-gallery .portfolio-card:last-child{grid-column:span 2}
.lighting-grid .portfolio-card-large{grid-column:auto}
.topic-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.topic-card{grid-column:span 2;min-width:0}
.topic-card:first-child{grid-column:span 4}
@keyframes light-drift{from{transform:translate(0,0)}to{transform:translate(-6%,8%)}}
@keyframes signal-beat{0%,100%{transform:scaleY(.6)}50%{transform:scaleY(1)}}
.motion-paused *::before,.motion-paused *::after{animation-play-state:paused!important}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.topic-photo:hover img{transform:scale(1.025)}}
@media(max-width:1000px){.media-story{gap:24px}.config-spotlight::before{left:32px}.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-card,.topic-card:first-child{grid-column:span 1}.topic-card:last-child{grid-column:1/-1}}
@media(max-width:760px){.media-story{grid-template-columns:1fr;gap:12px;margin-block:22px}.media-story-copy{padding:12px 0}.media-story-copy h3{font-size:1.9rem}.section-media{padding-block:35px}.config-spotlight::before{left:23px}.page-intro::after{right:-360px}.media-topic-links a{flex:1 1 auto;text-align:center}.media-story-copy .actions .button{width:100%}}
@media(max-width:600px){.portfolio-video,.wedding-gallery .portfolio-card:last-child{grid-column:auto}.topic-grid{grid-template-columns:1fr}.topic-card,.topic-card:first-child,.topic-card:last-child{grid-column:auto}.media-photo-pair{gap:10px}.media-photo-pair .portfolio-card span{font-size:.8125rem}.media-visual::before{left:-4px;top:-4px;width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* WhatsApp appears in context; no floating overlay or reserved bottom space. */
.whatsapp-inline{color:#d1cdd0;font-size:.9375rem;line-height:1.6;border-bottom-color:#6d424a;max-width:100%}
.whatsapp-inline:hover{color:#fff;border-bottom-color:var(--accent)}
.whatsapp-help{margin:24px 0 0}
.header nav .whatsapp-nav{font-weight:400;color:#c9c9ce;padding:10px 0}
.closing-cta>.whatsapp-inline{flex-shrink:1}
@media(min-width:1101px) and (max-width:1280px){.header nav{gap:13px;font-size:.8125rem}.header .brand-logo{width:155px}.header{padding-inline:3%}}

/* Lokaler Event-Konfigurator */
/* Persönliche Fotos und Extras: gleiche Rot-Schwarz-CI, klare Bildgruppen. */
.personal-photo{margin:0 0 24px;overflow:hidden;border-radius:12px;background:#171717}
.personal-photo img{display:block;width:100%;height:auto;object-fit:cover}
.personal-photo figcaption{padding:12px 14px;font-size:.875rem;line-height:1.5;color:#d4cdd0;border-bottom:2px solid #a82539}
.personal-main.with-photo{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:35px;align-items:center}
.personal-main.with-photo .personal-photo{margin:0}
.dj-portrait img{aspect-ratio:4/5;object-position:50% 58%}
.private-portrait{max-width:320px;margin-inline:auto}.private-portrait img{aspect-ratio:4/5;object-position:center}
.technician-portrait img{aspect-ratio:4/3;object-position:50% 22%}
.booked-photo{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:35px;align-items:center}
.booked-photo .personal-photo{margin:0}
.mic-portrait img{aspect-ratio:4/3;object-position:55% 55%}
.music-portrait{max-width:460px;margin-top:30px}
.music-portrait img{aspect-ratio:4/5;object-position:50% 55%}
.contact-portrait{width:110px;height:110px;border-radius:50%;object-fit:cover;object-position:70% 35%;margin-bottom:22px;border:2px solid #7e2533}
.home-julian>img{object-position:50% 48%}
.photo-extras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 36px}
.photo-extras article{min-width:0;border:1px solid #3b3032;border-radius:14px;overflow:hidden;padding-bottom:22px;background:#171315}
.photo-extras .personal-photo{border-radius:0;margin-bottom:18px;background:#fff}
.photo-extras img{height:280px;object-fit:contain;background:#fff}
.photo-extras figcaption{background:#171315;color:#fff;font-size:1.125rem;font-weight:700;padding:16px 20px}
.photo-extras article>p,.photo-extras article>a{margin-inline:20px;font-size:1rem}
.equipment-story .personal-photo{margin-top:24px}
@media(max-width:760px){.personal-main.with-photo,.booked-photo{grid-template-columns:1fr;gap:24px}.photo-extras{grid-template-columns:1fr}.photo-extras img{height:260px}.personal-photo figcaption{font-size:.875rem}.music-portrait{max-width:100%}}
.config-section #config-frame{margin-top:24px}
.config-section #config-frame iframe{display:block;width:100%;min-height:clamp(980px,82vh,1500px);border:1px solid #4a2028;border-radius:14px;background:#0b0b0b;box-shadow:0 18px 46px #0005}
.config-section .config-launch{border-color:#5e343c;background:linear-gradient(135deg,#151012,#211317)}
@media(max-width:700px){.config-section #config-frame iframe{min-height:1800px;border-radius:10px}.config-section .config-steps{display:grid;grid-template-columns:1fr;gap:8px}.config-section .config-steps span{width:100%}}

/* Clear service choices and a compact home page, in the existing red/black theme. */
[hidden]{display:none!important}
.header nav .config-nav{background:transparent;border:0;color:var(--muted)!important;font-weight:400}
.header nav .nav-booking{background:var(--button-red);border-color:var(--button-red);color:#fff!important;white-space:nowrap}
.header nav .nav-booking:hover{background:#b90016}
.home-refined .hero{min-height:660px;overflow:hidden}
.home-refined .hero::after{animation:none}
.home-refined .hero-content{padding-top:72px;padding-bottom:56px}
.home-refined .hero h1{font-size:clamp(2.6rem,5.8vw,5.5rem);line-height:1.06;letter-spacing:-.045em;max-width:1000px}
.home-refined .hero-copy{max-width:620px;font-size:1.125rem;line-height:1.7}
.home-slogan{margin:42px 0 0;font-size:.9375rem;color:#d4cdd0}
.home-refined .section{padding-block:72px}
.home-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.home-service{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--panel);transition:border-color .2s}
.home-service:hover{border-color:var(--accent)}
.home-service>img{display:block;aspect-ratio:3/2;width:100%;height:auto;object-fit:cover}
.home-service-product>img{object-fit:contain;background:#fff}
.home-service>div{display:flex;flex:1;flex-direction:column;padding:26px}
.home-service .eyebrow{font-size:.75rem;line-height:1.6;margin-bottom:18px;letter-spacing:.06em;color:var(--accent)}
.home-service h3{font-size:1.6rem;line-height:1.2;margin-bottom:16px}
.home-service p{font-size:1rem;line-height:1.65}
.home-service .text-link{align-self:flex-start;margin-top:auto;font-size:.875rem}
.home-about{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:65px;border-top:1px solid var(--line)}
.home-about>img{display:block;width:100%;max-height:520px;aspect-ratio:4/5;object-fit:cover;object-position:center 45%;border-radius:12px}
.home-about h2{font-size:clamp(2rem,3.5vw,3.7rem);margin-bottom:25px}
.home-about p{font-size:1rem;line-height:1.75}
.home-about .eyebrow{color:var(--accent);font-size:.8125rem}
.home-facts{display:flex;gap:30px;flex-wrap:wrap;margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}
.home-facts span{font-size:.875rem;color:var(--muted)}
.home-facts strong{display:block;color:var(--text);font-size:1.3rem;margin-bottom:7px}
.home-impressions{border-top:1px solid var(--line)}
.home-impressions .section-head>.text-link{flex-shrink:0;font-size:.9375rem}
.home-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.home-gallery a{display:block;border-bottom:1px solid var(--line);padding-bottom:18px}
.home-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:9px}
.home-gallery span{display:block;margin-top:14px;font-size:.9375rem;line-height:1.5}
.home-config{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:36px;border-block:1px solid #62313a;background:#1b1316}
.home-config .eyebrow{color:var(--accent);margin-bottom:12px}
.home-config h2{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.2;margin-bottom:12px}
.home-config p{max-width:640px;margin-bottom:0;font-size:1rem}
.home-config>.button{flex-shrink:0}
.home-region{display:grid;grid-template-columns:1fr 1.2fr;gap:55px}
.home-region h2{font-size:clamp(2rem,3.5vw,3.3rem)}
.home-region-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin:24px 0;font-size:1rem;line-height:1.7}
.home-region-links a{border-bottom:1px solid #76505a}
.home-region-links a:hover{border-bottom-color:var(--accent)}
.home-closing-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.home-closing-actions .button{white-space:normal}
.contact-extras{margin:20px 0;border-block:1px solid var(--line)}
.contact-extras summary{cursor:pointer;font-size:1rem;padding:16px 0}
.contact-extras .form-grid{padding-bottom:18px}
.contact-send-options{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.contact-send-options .button{justify-content:center;white-space:normal;text-align:center;font-size:.9375rem}
.contact-form label{font-size:.9375rem}
.contact-form .small{font-size:.875rem;line-height:1.6}
.provider-details{max-width:950px}
.provider-details h2{font-size:1.6rem;margin-bottom:20px}
.provider-details address{font-style:normal;line-height:1.85;margin-bottom:40px}
.provider-details p{line-height:1.85}
.provider-details a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.home-service>div{padding:22px}.home-service h3{font-size:1.4rem}.home-about{gap:35px}.home-region{gap:35px}.home-config{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){
 .home-refined .hero{min-height:0}
 .home-refined .hero-content{padding-top:52px;padding-bottom:45px}
 .home-refined .hero h1{font-size:clamp(2rem,7.4vw,3.8rem);line-height:1.12;letter-spacing:-.04em}
 .home-refined .hero-copy{font-size:1rem;max-width:520px}
 .home-refined .hero .actions{align-items:flex-start;flex-direction:column;gap:20px}
 .home-refined .hero .actions .primary{font-size:.9375rem;white-space:normal}
 .home-slogan{margin-top:30px;font-size:.875rem}
 .home-refined .section{padding-block:45px}
 .home-services,.home-about,.home-gallery,.home-region{grid-template-columns:1fr}
 .home-services{gap:20px}
 .home-service>img{aspect-ratio:16/9}
 .home-service-product>img{height:240px;aspect-ratio:auto}
 .home-service h3{font-size:1.65rem}
 .home-service .text-link{margin-top:6px}
 .home-about{gap:28px}
 .home-about>img{max-height:430px;aspect-ratio:4/3;object-position:center 43%}
 .home-impressions .section-head{margin-bottom:28px}
 .home-gallery{gap:25px}
 .home-gallery img{aspect-ratio:16/10}
 .home-config{padding-block:30px}
 .home-region{gap:24px}
 .home-region h2{margin-bottom:0}
 .home-closing-actions{width:100%}
 .home-closing-actions .button{max-width:100%;font-size:.9375rem}
}
