@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,600;1,400&family=Nunito+Sans:wght@300;400;500&family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=DM+Sans:wght@300;400;500&family=Sora:wght@300;400;600&family=JetBrains+Mono:wght@300;400;700&family=Quicksand:wght@300;400;500;700&family=Cinzel:wght@400;600;700&family=Abril+Fatface&family=Bodoni+Moda:ital,wght@0,400;0,700;1,400&family=Righteous&family=Syne:wght@400;600;700;800&display=swap');

/* THEME: BOTANIK (default) */
[data-theme="botanik"],:root{--sage:#5a7247;--sage-light:#7d9a68;--sage-pale:#e8ede4;--rose:#c4857a;--rose-light:#d4a49b;--rose-pale:#f5e8e5;--cream:#faf5ef;--warm:#f5efe7;--dark:#2d3a28;--dark-light:#4a5d42;--text:#3a3a3a;--text-light:#666;--accent:var(--sage);--accent2:var(--rose);--ff-head:'Lora',serif;--ff-body:'Nunito Sans',sans-serif;--radius:16px;}

/* THEME: JACKPOT — Casino Gold */
[data-theme="jackpot"]{--sage:#b8860b;--sage-light:#d4a017;--sage-pale:#fdf3d7;--rose:#c0392b;--rose-light:#e74c3c;--rose-pale:#fde8e8;--cream:#1a1a1a;--warm:#222;--dark:#f5c518;--dark-light:#d4a017;--text:#f0e6d0;--text-light:#a09070;--accent:var(--sage);--accent2:var(--rose);--ff-head:'Cinzel',serif;--ff-body:'DM Sans',sans-serif;--radius:8px;}
[data-theme="jackpot"] nav{background:rgba(26,26,26,0.95);}
[data-theme="jackpot"] nav.on{background:rgba(26,26,26,0.98);}
[data-theme="jackpot"] .hero{background:#1a1a1a;}
[data-theme="jackpot"] .hero::before{background:radial-gradient(ellipse at 50% 50%,rgba(245,197,24,0.06) 0%,transparent 60%);}
[data-theme="jackpot"] .hero h1{color:#f5c518;}
[data-theme="jackpot"] .hero h1 em{color:#e74c3c;}
[data-theme="jackpot"] .card{background:rgba(255,255,255,0.05);border-left-color:#f5c518;}
[data-theme="jackpot"] .card h3{color:#f5c518;}
[data-theme="jackpot"] .dark{background:#111;}
[data-theme="jackpot"] .warm{background:#1e1e1e;}
[data-theme="jackpot"] .rose-bg{background:#1a1010;}
[data-theme="jackpot"] .anlass{background:rgba(245,197,24,0.08);border-color:rgba(245,197,24,0.2);color:#f0e6d0;}
[data-theme="jackpot"] .btn{background:#f5c518;color:#1a1a1a;}
[data-theme="jackpot"] .btn:hover{background:#e74c3c;color:white;}
[data-theme="jackpot"] .btn-rose{background:#c0392b;}
[data-theme="jackpot"] footer{background:#111;}
[data-theme="jackpot"] .galerie-grid img{border-radius:8px;}
[data-theme="jackpot"] .nav-cta{border-color:#f5c518!important;color:#f5c518!important;}
[data-theme="jackpot"] .nav-links a{color:rgba(240,230,208,0.6);}
[data-theme="jackpot"] .nav-links a:hover{color:#f5c518;}
[data-theme="jackpot"] .kontakt-info a{color:#f5c518;}
[data-theme="jackpot"] .section-label{color:#f5c518;}
[data-theme="jackpot"] .section-title{color:#f5c518;}
[data-theme="jackpot"] .form-group input,.form-group textarea,.form-group select{background:rgba(255,255,255,0.05);border-color:rgba(245,197,24,0.2);color:#f0e6d0;}
[data-theme="jackpot"] .switcher-btn{border-color:rgba(245,197,24,0.3);color:#f5c518;background:rgba(245,197,24,0.05);}

/* THEME: FRISCH — Lime & Türkis */
[data-theme="frisch"]{--sage:#2ecc71;--sage-light:#55efc4;--sage-pale:#e8faf0;--rose:#00b894;--rose-light:#00cec9;--rose-pale:#e0f7f5;--cream:#f0fff4;--warm:#e8faf0;--dark:#1a5c38;--dark-light:#27ae60;--text:#2d3436;--text-light:#636e72;--accent:var(--sage);--accent2:var(--rose);--ff-head:'Quicksand',sans-serif;--ff-body:'Quicksand',sans-serif;--radius:20px;}
[data-theme="frisch"] .hero h1 em{color:#00b894;}
[data-theme="frisch"] .card{border-radius:20px;border-left:none;border-bottom:3px solid var(--sage);}
[data-theme="frisch"] .card:hover{transform:translateY(-6px) rotate(-1deg);}
[data-theme="frisch"] .anlass{border-radius:20px;}
[data-theme="frisch"] .galerie-grid img{border-radius:20px;}
[data-theme="frisch"] .btn{border-radius:50px;font-weight:500;}
[data-theme="frisch"] .hero-cta{border-radius:50px;font-weight:500;}

/* THEME: NACHT — Purple & Gold */
[data-theme="nacht"]{--sage:#8e44ad;--sage-light:#a569bd;--sage-pale:#f0e6f6;--rose:#f39c12;--rose-light:#f1c40f;--rose-pale:#fef9e7;--cream:#0d0b1a;--warm:#13102a;--dark:#e8d5b0;--dark-light:#a569bd;--text:#e0d5c5;--text-light:#a0907e;--accent:var(--sage);--accent2:var(--rose);--ff-head:'Abril Fatface',serif;--ff-body:'Sora',sans-serif;--radius:4px;}
[data-theme="nacht"] nav{background:rgba(13,11,26,0.95);}
[data-theme="nacht"] nav.on{background:rgba(13,11,26,0.98);}
[data-theme="nacht"] .hero{background:linear-gradient(180deg,#0d0b1a 0%,#1a1530 60%,#0d0b1a 100%);}
[data-theme="nacht"] .hero::before{background:radial-gradient(ellipse at 50% 30%,rgba(142,68,173,0.1) 0%,transparent 60%);}
[data-theme="nacht"] .hero h1{color:#e8d5b0;}
[data-theme="nacht"] .hero h1 em{color:#f39c12;}
[data-theme="nacht"] .card{background:rgba(255,255,255,0.03);border-left-color:#8e44ad;}
[data-theme="nacht"] .card h3{color:#e8d5b0;}
[data-theme="nacht"] .dark{background:#08061a;}
[data-theme="nacht"] .warm{background:#13102a;}
[data-theme="nacht"] .rose-bg{background:#1a1520;}
[data-theme="nacht"] .anlass{background:rgba(142,68,173,0.08);border-color:rgba(142,68,173,0.2);color:#e0d5c5;}
[data-theme="nacht"] .btn{background:#8e44ad;}
[data-theme="nacht"] .btn:hover{background:#f39c12;color:#0d0b1a;}
[data-theme="nacht"] .btn-rose{background:#f39c12;color:#0d0b1a;}
[data-theme="nacht"] footer{background:#08061a;}
[data-theme="nacht"] .nav-links a{color:rgba(224,213,197,0.5);}
[data-theme="nacht"] .nav-links a:hover{color:#f39c12;}
[data-theme="nacht"] .nav-cta{border-color:#f39c12!important;color:#f39c12!important;}
[data-theme="nacht"] .kontakt-info a{color:#a569bd;}
[data-theme="nacht"] .section-label{color:#a569bd;}
[data-theme="nacht"] .section-title{color:#e8d5b0;}
[data-theme="nacht"] .hero-tagline{color:rgba(224,213,197,0.55);}
[data-theme="nacht"] .hero-text{color:rgba(224,213,197,0.7);}
[data-theme="nacht"] .kontakt-grid{color:#e0d5c5;}
[data-theme="nacht"] .kontakt-info h3{color:#e8d5b0;}
[data-theme="nacht"] .kontakt-info p{color:rgba(224,213,197,0.7);}
[data-theme="nacht"] .kontakt-info hr{border-top-color:rgba(142,68,173,0.15)!important;}
[data-theme="nacht"] .card p{color:rgba(224,213,197,0.65);}
[data-theme="nacht"] .mobile-tabs{background:rgba(13,11,26,0.95);border-top:1px solid rgba(142,68,173,0.15);}
[data-theme="nacht"] .tab{color:rgba(224,213,197,0.4);}
[data-theme="nacht"] .tab.on{color:#f39c12;}
[data-theme="nacht"] .form-group input,[data-theme="nacht"] .form-group textarea,[data-theme="nacht"] .form-group select{background:rgba(255,255,255,0.04);border-color:rgba(142,68,173,0.2);color:#e0d5c5;}
[data-theme="nacht"] .switcher-btn{border-color:rgba(142,68,173,0.3);color:#a569bd;background:rgba(142,68,173,0.05);}

/* THEME: ROSÉ — Blush & Champagne */
[data-theme="rose"]{--sage:#d4a49b;--sage-light:#e8c4bc;--sage-pale:#fdf0ed;--rose:#c0647a;--rose-light:#d4849a;--rose-pale:#fce4ec;--cream:#fff8f5;--warm:#fdf0ed;--dark:#5c3a4a;--dark-light:#8a5a6a;--text:#5c3a4a;--text-light:#7a5a6a;--accent:var(--sage);--accent2:var(--rose);--ff-head:'Bodoni Moda',serif;--ff-body:'Nunito Sans',sans-serif;--radius:24px;}
[data-theme="rose"] .card{border-radius:24px;border-left-color:#c0647a;}
[data-theme="rose"] .card:hover{box-shadow:0 15px 50px rgba(192,100,122,.1);}
[data-theme="rose"] .galerie-grid img{border-radius:24px;}
[data-theme="rose"] .anlass{border-radius:50px;background:white;border-color:rgba(192,100,122,.15);}
[data-theme="rose"] .hero h1 em{color:#c0647a;}
[data-theme="rose"] .btn{background:#c0647a;border-radius:50px;}
[data-theme="rose"] .btn:hover{background:#5c3a4a;}
[data-theme="rose"] .hero-cta{background:#c0647a;border-radius:50px;}
[data-theme="rose"] .dark{background:#5c3a4a;}
[data-theme="rose"] .nav-cta{border-color:#c0647a!important;color:#c0647a!important;border-radius:50px!important;}

/* THEME: PARTY — KOMPLETT VERRÜCKT */
[data-theme="party"]{--sage:#ff6b35;--sage-light:#ff8c42;--sage-pale:#fff3e0;--rose:#e91e63;--rose-light:#ff5a8a;--rose-pale:#fce4ec;--cream:#0a0020;--warm:#120030;--dark:#ffd93d;--dark-light:#ff6b35;--text:#f0e6ff;--text-light:#a090c0;--accent:var(--sage);--accent2:var(--rose);--ff-head:'Righteous',sans-serif;--ff-body:'Sora',sans-serif;--radius:16px;}
@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
@keyframes pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.08);}}
@keyframes rainbow{0%{filter:hue-rotate(0deg);}100%{filter:hue-rotate(360deg);}}
@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-20px);}}
@keyframes shake{0%,100%{transform:rotate(0deg);}10%{transform:rotate(5deg);}20%{transform:rotate(-5deg);}30%{transform:rotate(3deg);}40%{transform:rotate(-3deg);}50%{transform:rotate(0deg);}}
@keyframes disco{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}
@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0);}40%{transform:translateY(-25px);}60%{transform:translateY(-12px);}}
@keyframes neonPulse{0%,100%{box-shadow:0 0 10px rgba(233,30,99,0.3),0 0 30px rgba(255,107,53,0.2);}50%{box-shadow:0 0 25px rgba(233,30,99,0.6),0 0 60px rgba(255,107,53,0.4),0 0 90px rgba(255,217,61,0.2);}}
@keyframes textGlow{0%,100%{text-shadow:0 0 10px rgba(255,217,61,0.3);}50%{text-shadow:0 0 30px rgba(255,217,61,0.8),0 0 60px rgba(233,30,99,0.4),0 0 90px rgba(5,217,232,0.3);}}
@keyframes bgShift{0%{background-position:0% 0%;}25%{background-position:100% 0%;}50%{background-position:100% 100%;}75%{background-position:0% 100%;}100%{background-position:0% 0%;}}
@keyframes wobble{0%,100%{transform:rotate(-2deg) scale(1);}25%{transform:rotate(2deg) scale(1.02);}50%{transform:rotate(-1deg) scale(0.98);}75%{transform:rotate(3deg) scale(1.01);}}
@keyframes flipCard{0%{transform:perspective(800px) rotateY(0deg);}100%{transform:perspective(800px) rotateY(360deg);}}
@keyframes strobe{0%,94%,96%,98%,100%{opacity:1;}95%{opacity:.7;}97%{opacity:.85;}99%{opacity:.75;}}
/* Disco Background */
[data-theme="party"] body{background:linear-gradient(270deg,#0a0020,#200050,#1a0040,#0a0020,#150035);background-size:800% 800%;animation:disco 15s ease infinite;}
[data-theme="party"] body::before{content:'';position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 4px,rgba(255,255,255,0.008) 4px,rgba(255,255,255,0.008) 5px);pointer-events:none;z-index:9999;}
/* Nav - Neon Rainbow */
[data-theme="party"] nav{background:rgba(10,0,32,0.85);border-bottom:3px solid;border-image:linear-gradient(90deg,#ff6b35,#e91e63,#ffd93d,#05d9e8,#a855f7,#ff6b35) 1;animation:neonPulse 3s ease-in-out infinite;}
[data-theme="party"] nav.on{background:rgba(10,0,32,0.95);}
[data-theme="party"] .nav-logo img{animation:bounce 2s ease infinite,rainbow 6s linear infinite;}
[data-theme="party"] .nav-brand{animation:textGlow 3s ease-in-out infinite;}
/* Hero - Full Disco */
[data-theme="party"] .hero{background:linear-gradient(135deg,#0a0020,#1a0040,#200050,#150035,#0a0020);background-size:400% 400%;animation:bgShift 10s ease infinite;overflow:hidden;}
[data-theme="party"] .hero::before{background:radial-gradient(circle at 20% 30%,rgba(255,107,53,0.15) 0%,transparent 40%),radial-gradient(circle at 80% 70%,rgba(233,30,99,0.12) 0%,transparent 40%),radial-gradient(circle at 50% 50%,rgba(5,217,232,0.08) 0%,transparent 50%);animation:bgShift 8s ease infinite;}
[data-theme="party"] .hero::after{content:'\2728 \2B50 \1F340 \1F3B0 \2728 \1F4B0 \2B50 \1F340 \2728 \1F3B0 \2B50 \1F4B0';position:absolute;top:0;left:0;right:0;bottom:0;font-size:2.5rem;display:flex;flex-wrap:wrap;justify-content:space-around;align-items:center;opacity:.06;animation:spin 40s linear infinite;pointer-events:none;letter-spacing:2rem;}
[data-theme="party"] .hero h1{color:white;animation:fadeUp .8s ease forwards .5s;text-shadow:0 0 20px rgba(255,217,61,0.3);letter-spacing:-.02em;}
[data-theme="party"] .hero h1 em{background:linear-gradient(90deg,#ff6b35,#e91e63,#ffd93d,#05d9e8,#a855f7,#ff6b35);background-size:300% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:disco 3s linear infinite;}
[data-theme="party"] .hero-tagline{animation:fadeUp .8s ease forwards .3s,strobe 5s linear infinite 2s;color:#05d9e8;}
/* Bouquet - BOUNCING RAINBOW SPIN */
[data-theme="party"] .hero-bouquet{animation:fadeUp .8s ease forwards .4s,float 3s ease-in-out infinite 1s,rainbow 8s linear infinite!important;filter:drop-shadow(0 0 30px rgba(233,30,99,0.4)) drop-shadow(0 0 60px rgba(255,107,53,0.2))!important;}
[data-theme="party"] .hero-bouquet:hover{animation:spin 3s linear infinite,rainbow 2s linear infinite!important;opacity:1;}
/* CTA - Pulsing Neon */
[data-theme="party"] .hero-cta{background:linear-gradient(135deg,#ff6b35,#e91e63,#a855f7);background-size:200% 200%;color:white;border-radius:50px;animation:fadeUp .8s ease forwards .9s,disco 3s ease infinite,neonPulse 2s ease-in-out infinite;font-weight:600;}
[data-theme="party"] .hero-cta:hover{transform:scale(1.15) rotate(-3deg);box-shadow:0 0 60px rgba(255,107,53,0.7),0 0 120px rgba(233,30,99,0.3);}
/* Cards - Wobble & Glow */
[data-theme="party"] .card{background:rgba(255,255,255,0.04);border-left:3px solid;border-image:linear-gradient(180deg,#ff6b35,#e91e63,#05d9e8) 1;border-radius:16px;animation:neonPulse 4s ease-in-out infinite;}
[data-theme="party"] .card:nth-child(1){animation-delay:0s;}
[data-theme="party"] .card:nth-child(2){animation-delay:1.3s;}
[data-theme="party"] .card:nth-child(3){animation-delay:2.6s;}
[data-theme="party"] .card:hover{transform:translateY(-12px) rotate(-4deg) scale(1.05);box-shadow:0 30px 80px rgba(233,30,99,0.25),0 0 40px rgba(255,107,53,0.15);}
[data-theme="party"] .card h3{color:#ffd93d;text-shadow:0 0 10px rgba(255,217,61,0.3);}
[data-theme="party"] .card-icon img{animation:shake 1.5s ease-in-out infinite,rainbow 6s linear infinite;border-color:#ffd93d;box-shadow:0 0 15px rgba(255,217,61,0.3);}
/* Sections */
[data-theme="party"] .dark{background:linear-gradient(135deg,#120030,#200050,#150035);background-size:300% 300%;animation:bgShift 12s ease infinite;}
[data-theme="party"] .warm{background:linear-gradient(135deg,#12003a,#1a0048);background-size:200% 200%;animation:bgShift 15s ease infinite;}
[data-theme="party"] .rose-bg{background:linear-gradient(135deg,#200035,#2a0050,#200040);background-size:300% 300%;animation:bgShift 10s ease infinite;}
/* Anlass Badges - Bouncing Neon Pills */
[data-theme="party"] .anlass{background:rgba(255,255,255,0.05);border:2px solid;border-image:none;border-color:rgba(255,107,53,0.4);color:#f0e6ff;border-radius:50px;animation:float 2.5s ease-in-out infinite;box-shadow:0 0 10px rgba(233,30,99,0.15);}
[data-theme="party"] .anlass:hover{border-color:#ffd93d;box-shadow:0 0 30px rgba(255,217,61,0.5),0 0 60px rgba(233,30,99,0.2);transform:scale(1.2) rotate(8deg);}
[data-theme="party"] .anlass:nth-child(1){animation-delay:0s;border-color:rgba(255,107,53,0.5);}
[data-theme="party"] .anlass:nth-child(2){animation-delay:.3s;border-color:rgba(233,30,99,0.5);}
[data-theme="party"] .anlass:nth-child(3){animation-delay:.6s;border-color:rgba(255,217,61,0.5);}
[data-theme="party"] .anlass:nth-child(4){animation-delay:.9s;border-color:rgba(5,217,232,0.5);}
[data-theme="party"] .anlass:nth-child(5){animation-delay:.15s;border-color:rgba(168,85,247,0.5);}
[data-theme="party"] .anlass:nth-child(6){animation-delay:.45s;border-color:rgba(255,107,53,0.5);}
/* Galerie - FIGHT CLUB - EINER SCHUBST ALLE ANDEREN WEG */
[data-theme="party"] .galerie-grid{gap:0;position:relative;padding:1rem;}
[data-theme="party"] .galerie-grid img{border-radius:16px;border:3px solid rgba(255,107,53,0.15);position:relative;cursor:pointer;transition:filter .3s;}
/* Alle gleicher Takt: 12s. Jeder kriegt 2s Ruhm, Rest wird geschubst */
[data-theme="party"] .galerie-grid img:nth-child(1){animation:hero1 12s ease-in-out infinite;}
[data-theme="party"] .galerie-grid img:nth-child(2){animation:hero2 12s ease-in-out infinite;}
[data-theme="party"] .galerie-grid img:nth-child(3){animation:hero3 12s ease-in-out infinite;}
[data-theme="party"] .galerie-grid img:nth-child(4){animation:hero4 12s ease-in-out infinite;}
[data-theme="party"] .galerie-grid img:nth-child(5){animation:hero5 12s ease-in-out infinite;}
[data-theme="party"] .galerie-grid img:nth-child(6){animation:hero6 12s ease-in-out infinite;}
/* BILD 1: Mein Moment bei 0-16%, kommt von LINKS */
@keyframes hero1{
  0%{transform:translate(-30px,0) scale(0.9) rotate(-5deg);z-index:1;}
  5%{transform:translate(15px,0) scale(1.22) rotate(2deg);z-index:6;border-color:#ff6b35;box-shadow:0 0 40px rgba(255,107,53,0.5);}
  12%{transform:translate(10px,-5px) scale(1.18) rotate(1deg);z-index:6;}
  17%{transform:scale(0.88) translate(-8px,5px) rotate(-3deg);z-index:1;border-color:rgba(255,107,53,0.15);}
  33%{transform:scale(0.85) translate(-12px,8px) rotate(-4deg);z-index:1;}
  50%{transform:scale(0.9) translate(-5px,3px) rotate(-2deg);z-index:1;}
  67%{transform:scale(0.87) translate(-10px,-5px) rotate(3deg);z-index:1;}
  83%{transform:scale(0.92) translate(5px,-3px) rotate(-1deg);z-index:1;}
  100%{transform:translate(-30px,0) scale(0.9) rotate(-5deg);z-index:1;}
}
/* BILD 2: Mein Moment bei 16-33%, fällt von OBEN */
@keyframes hero2{
  0%{transform:scale(0.92) rotate(1deg);z-index:1;}
  10%{transform:scale(0.85) translate(5px,8px) rotate(3deg);z-index:1;}
  16%{transform:translate(0,-25px) scale(0.9) rotate(-3deg);z-index:2;}
  22%{transform:translate(0,8px) scale(1.22) rotate(2deg);z-index:6;border-color:#e91e63;box-shadow:0 0 40px rgba(233,30,99,0.5);}
  30%{transform:translate(3px,5px) scale(1.18) rotate(1deg);z-index:6;}
  35%{transform:scale(0.88) translate(8px,-5px) rotate(-2deg);z-index:1;border-color:rgba(255,107,53,0.15);}
  50%{transform:scale(0.86) translate(10px,-8px) rotate(4deg);z-index:1;}
  67%{transform:scale(0.9) translate(3px,5px) rotate(-1deg);z-index:1;}
  83%{transform:scale(0.87) translate(-5px,-3px) rotate(2deg);z-index:1;}
  100%{transform:scale(0.92) rotate(1deg);z-index:1;}
}
/* BILD 3: Mein Moment bei 33-50%, kommt von RECHTS */
@keyframes hero3{
  0%{transform:scale(0.9) rotate(-1deg);z-index:1;}
  16%{transform:scale(0.86) translate(-8px,5px) rotate(3deg);z-index:1;}
  33%{transform:translate(30px,0) scale(0.9) rotate(5deg);z-index:2;}
  38%{transform:translate(-10px,0) scale(1.25) rotate(-2deg);z-index:6;border-color:#ffd93d;box-shadow:0 0 40px rgba(255,217,61,0.5);}
  46%{transform:translate(-5px,3px) scale(1.2) rotate(-1deg);z-index:6;}
  51%{transform:scale(0.88) translate(8px,-5px) rotate(3deg);z-index:1;border-color:rgba(255,107,53,0.15);}
  67%{transform:scale(0.85) translate(12px,-8px) rotate(4deg);z-index:1;}
  83%{transform:scale(0.9) translate(5px,3px) rotate(-2deg);z-index:1;}
  100%{transform:scale(0.9) rotate(-1deg);z-index:1;}
}
/* BILD 4: Mein Moment bei 50-67%, schiebt von UNTEN */
@keyframes hero4{
  0%{transform:scale(0.92) rotate(2deg);z-index:1;}
  16%{transform:scale(0.87) translate(-5px,-8px) rotate(-3deg);z-index:1;}
  33%{transform:scale(0.85) translate(8px,-5px) rotate(2deg);z-index:1;}
  50%{transform:translate(0,25px) scale(0.9) rotate(4deg);z-index:2;}
  55%{transform:translate(0,-8px) scale(1.23) rotate(-1deg);z-index:6;border-color:#05d9e8;box-shadow:0 0 40px rgba(5,217,232,0.5);}
  63%{transform:translate(-3px,-5px) scale(1.18) rotate(0deg);z-index:6;}
  68%{transform:scale(0.88) translate(-8px,5px) rotate(3deg);z-index:1;border-color:rgba(255,107,53,0.15);}
  83%{transform:scale(0.9) translate(-3px,-5px) rotate(-2deg);z-index:1;}
  100%{transform:scale(0.92) rotate(2deg);z-index:1;}
}
/* BILD 5: Mein Moment bei 67-83%, DIAGONAL Attacke */
@keyframes hero5{
  0%{transform:scale(0.9) rotate(-2deg);z-index:1;}
  16%{transform:scale(0.88) translate(5px,8px) rotate(2deg);z-index:1;}
  33%{transform:scale(0.86) translate(-8px,5px) rotate(-3deg);z-index:1;}
  50%{transform:scale(0.87) translate(5px,-8px) rotate(2deg);z-index:1;}
  67%{transform:translate(-20px,-20px) scale(0.9) rotate(-6deg);z-index:2;}
  72%{transform:translate(10px,10px) scale(1.24) rotate(3deg);z-index:6;border-color:#a855f7;box-shadow:0 0 40px rgba(168,85,247,0.5);}
  80%{transform:translate(5px,5px) scale(1.19) rotate(2deg);z-index:6;}
  85%{transform:scale(0.88) translate(-5px,-3px) rotate(-2deg);z-index:1;border-color:rgba(255,107,53,0.15);}
  100%{transform:scale(0.9) rotate(-2deg);z-index:1;}
}
/* BILD 6: Mein Moment bei 83-100%, DREHT sich rein */
@keyframes hero6{
  0%{transform:scale(0.92) rotate(1deg);z-index:1;}
  16%{transform:scale(0.87) translate(-5px,3px) rotate(-2deg);z-index:1;}
  33%{transform:scale(0.88) translate(5px,-5px) rotate(3deg);z-index:1;}
  50%{transform:scale(0.86) translate(-8px,8px) rotate(-4deg);z-index:1;}
  67%{transform:scale(0.87) translate(3px,-5px) rotate(2deg);z-index:1;}
  83%{transform:scale(0.9) rotate(-15deg);z-index:2;}
  88%{transform:scale(1.22) rotate(5deg);z-index:6;border-color:#ff6b35;box-shadow:0 0 40px rgba(255,107,53,0.5);}
  95%{transform:scale(1.18) rotate(2deg);z-index:6;}
  100%{transform:scale(0.92) rotate(1deg);z-index:1;border-color:rgba(255,107,53,0.15);}
}
[data-theme="party"] .galerie-grid img:hover{transform:rotate(0deg) scale(1.35)!important;z-index:99!important;box-shadow:0 40px 100px rgba(233,30,99,0.5),0 0 80px rgba(255,107,53,0.3),0 0 120px rgba(255,217,61,0.15);filter:brightness(1.2) saturate(1.5);border-color:#ffd93d;animation:none!important;}
/* Labels & Titles */
[data-theme="party"] .section-label{color:#05d9e8;font-weight:700;}
[data-theme="party"] .section-title{color:white;text-shadow:0 0 15px rgba(255,217,61,0.4);}
/* Buttons - Pulsing Neon */
[data-theme="party"] .btn{background:linear-gradient(135deg,#ff6b35,#e91e63,#a855f7);background-size:200% 200%;border-radius:50px;box-shadow:0 0 20px rgba(233,30,99,0.3);animation:disco 4s ease infinite,neonPulse 3s ease-in-out infinite;}
[data-theme="party"] .btn:hover{box-shadow:0 0 50px rgba(255,107,53,0.6),0 0 100px rgba(233,30,99,0.3);transform:scale(1.12) rotate(-2deg);}
[data-theme="party"] .btn-rose{background:linear-gradient(135deg,#e91e63,#ff5a8a,#a855f7);background-size:200% 200%;animation:disco 3s ease infinite,neonPulse 2s ease-in-out infinite;}
/* Footer - Rainbow Border */
[data-theme="party"] footer{background:#050015;border-top:4px solid;border-image:linear-gradient(90deg,#ff6b35,#e91e63,#ffd93d,#05d9e8,#a855f7,#ff6b35) 1;}
[data-theme="party"] .ft-bottom a{color:#ff6b35;}
/* Nav */
[data-theme="party"] .nav-links a{color:rgba(240,230,255,0.5);}
[data-theme="party"] .nav-links a:hover{color:#ffd93d;text-shadow:0 0 20px rgba(255,217,61,0.6),0 0 40px rgba(233,30,99,0.3);}
[data-theme="party"] .nav-cta{border-color:#ff6b35!important;color:#ff6b35!important;border-radius:50px!important;animation:neonPulse 2s ease-in-out infinite;}
[data-theme="party"] .nav-cta:hover{background:linear-gradient(135deg,#ff6b35,#e91e63)!important;color:white!important;border-color:transparent!important;}
/* Kontakt */
[data-theme="party"] .kontakt-info a{color:#ff6b35;}
[data-theme="party"] .form-group input,[data-theme="party"] .form-group textarea,[data-theme="party"] .form-group select{background:rgba(255,255,255,0.04);border-color:rgba(255,107,53,0.2);color:#f0e6ff;}
[data-theme="party"] .form-group input:focus,[data-theme="party"] .form-group textarea:focus{border-color:#e91e63;box-shadow:0 0 20px rgba(233,30,99,0.3),0 0 40px rgba(255,107,53,0.1);}
[data-theme="party"] .switcher-btn{border-color:rgba(255,107,53,0.3);color:#ff6b35;background:rgba(255,107,53,0.05);}
[data-theme="party"] .petal{animation-duration:6s!important;font-size:2.2rem!important;opacity:.8!important;}
[data-theme="party"] .kontakt-grid{color:#f0e6ff;}
[data-theme="party"] .kontakt-info h3{color:#ffd93d;text-shadow:0 0 10px rgba(255,217,61,0.3);}
[data-theme="party"] .kontakt-info p{color:rgba(240,230,255,0.7);}
[data-theme="party"] .kontakt-info hr{border-top-color:rgba(255,107,53,0.2)!important;}
/* Mobile Tab Bar */
[data-theme="party"] .mobile-tabs{background:rgba(10,0,32,0.95);border-top:2px solid;border-image:linear-gradient(90deg,#ff6b35,#e91e63,#ffd93d,#05d9e8) 1;}
[data-theme="party"] .tab.on,.tab:hover{color:#ffd93d;}

/* THEME: ULTRA — Bleeding Edge 2026 */
[data-theme="ultra"]{--sage:#6366f1;--sage-light:#818cf8;--sage-pale:#eef2ff;--rose:#f472b6;--rose-light:#f9a8d4;--rose-pale:#fdf2f8;--cream:#fafafa;--warm:#f5f5f5;--dark:#0f172a;--dark-light:#1e293b;--text:#0f172a;--text-light:#64748b;--accent:var(--sage);--accent2:var(--rose);--ff-head:'Syne',sans-serif;--ff-body:'Sora',sans-serif;--radius:20px;}
/* Mesh Gradient Background */
[data-theme="ultra"] body{background:#fafafa;background-image:radial-gradient(at 20% 20%,rgba(99,102,241,0.04) 0%,transparent 50%),radial-gradient(at 80% 80%,rgba(244,114,182,0.04) 0%,transparent 50%),radial-gradient(at 50% 50%,rgba(99,102,241,0.02) 0%,transparent 70%);}
/* Nav - Frosted Glass Minimal */
[data-theme="ultra"] nav{background:rgba(250,250,250,0.6);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(99,102,241,0.08);padding:1rem 3rem;}
[data-theme="ultra"] nav.on{background:rgba(250,250,250,0.85);box-shadow:0 4px 30px rgba(0,0,0,0.04);}
[data-theme="ultra"] .nav-logo img{filter:none;transform:rotate(-8deg);height:50px;}
[data-theme="ultra"] nav.on .nav-logo img{height:40px;}
[data-theme="ultra"] .nav-links a{color:#64748b;font-weight:400;font-size:.75rem;letter-spacing:.08em;padding:.5rem 1rem;border-radius:50px;transition:all .4s cubic-bezier(0.34,1.56,0.64,1);}
[data-theme="ultra"] .nav-links a:hover{color:#6366f1;background:rgba(99,102,241,0.06);}
[data-theme="ultra"] .nav-cta{background:#6366f1!important;color:white!important;border:none!important;border-radius:50px!important;padding:.5rem 1.5rem!important;box-shadow:0 4px 15px rgba(99,102,241,0.25);}
[data-theme="ultra"] .nav-cta:hover{background:#4f46e5!important;transform:translateY(-2px);box-shadow:0 8px 25px rgba(99,102,241,0.35)!important;}
/* Hero - Oversized Clean */
[data-theme="ultra"] .hero{background:#fafafa;min-height:100vh;position:relative;}
[data-theme="ultra"] .hero::before{background:radial-gradient(circle at 30% 40%,rgba(99,102,241,0.06) 0%,transparent 50%),radial-gradient(circle at 70% 60%,rgba(244,114,182,0.05) 0%,transparent 50%);}
[data-theme="ultra"] .hero h1{font-size:clamp(3.5rem,9vw,6.5rem);font-weight:600;letter-spacing:-.04em;color:#0f172a;line-height:1.05;}
[data-theme="ultra"] .hero h1 em{background:linear-gradient(135deg,#6366f1,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-style:normal;}
[data-theme="ultra"] .hero-tagline{color:#94a3b8;letter-spacing:.15em;font-weight:400;}
[data-theme="ultra"] .hero-text{color:#64748b;font-weight:300;}
[data-theme="ultra"] .hero-cta{background:#6366f1;color:white;border-radius:50px;font-weight:500;box-shadow:0 4px 20px rgba(99,102,241,0.3);padding:1rem 2.5rem;}
[data-theme="ultra"] .hero-cta:hover{background:#4f46e5;box-shadow:0 8px 30px rgba(99,102,241,0.4);transform:translateY(-3px);}
[data-theme="ultra"] .hero-bouquet{filter:drop-shadow(0 30px 60px rgba(99,102,241,0.1))!important;}
/* Glassmorphism Cards */
[data-theme="ultra"] .card{background:rgba(255,255,255,0.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(99,102,241,0.08);border-left:none;border-radius:20px;box-shadow:0 8px 32px rgba(0,0,0,0.04);}
[data-theme="ultra"] .card:hover{transform:translateY(-8px);box-shadow:0 20px 60px rgba(99,102,241,0.08);border-color:rgba(99,102,241,0.15);}
[data-theme="ultra"] .card h3{color:#0f172a;font-weight:600;}
[data-theme="ultra"] .card-icon img{border-color:rgba(99,102,241,0.2);box-shadow:0 4px 15px rgba(99,102,241,0.1);}
/* Section Styling */
[data-theme="ultra"] .section-label{color:#6366f1;font-weight:500;}
[data-theme="ultra"] .section-title{color:#0f172a;font-weight:600;letter-spacing:-.02em;}
[data-theme="ultra"] .warm{background:#f5f5f5;}
[data-theme="ultra"] .dark{background:linear-gradient(135deg,#0f172a,#1e293b);}
[data-theme="ultra"] .dark .section-title{color:white;}
[data-theme="ultra"] .dark .card{background:rgba(255,255,255,0.04);backdrop-filter:blur(12px);border-color:rgba(99,102,241,0.1);}
[data-theme="ultra"] .dark .card h3{color:white;}
[data-theme="ultra"] .dark .card p{color:rgba(255,255,255,0.65);}
[data-theme="ultra"] .rose-bg{background:linear-gradient(135deg,#eef2ff,#fdf2f8);}
/* Anlass Badges - Floating Glass Pills */
[data-theme="ultra"] .anlass{background:rgba(255,255,255,0.7);backdrop-filter:blur(8px);border:1px solid rgba(99,102,241,0.08);border-radius:50px;color:#0f172a;box-shadow:0 2px 10px rgba(0,0,0,0.03);font-weight:400;}
[data-theme="ultra"] .anlass:hover{border-color:#6366f1;box-shadow:0 8px 25px rgba(99,102,241,0.12);transform:translateY(-3px);}
/* Galerie - Clean Rounded */
[data-theme="ultra"] .galerie-grid img{border-radius:20px;border:none;box-shadow:0 4px 20px rgba(0,0,0,0.06);transition:all .5s cubic-bezier(0.34,1.56,0.64,1);}
[data-theme="ultra"] .galerie-grid img:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 60px rgba(99,102,241,0.12);}
/* Buttons */
[data-theme="ultra"] .btn{background:#6366f1;border-radius:50px;font-weight:500;box-shadow:0 4px 15px rgba(99,102,241,0.25);}
[data-theme="ultra"] .btn:hover{background:#4f46e5;box-shadow:0 8px 25px rgba(99,102,241,0.35);transform:translateY(-2px);}
[data-theme="ultra"] .btn-rose{background:linear-gradient(135deg,#6366f1,#f472b6);}
[data-theme="ultra"] .btn-rose:hover{background:linear-gradient(135deg,#4f46e5,#ec4899);}
/* Form */
[data-theme="ultra"] .form-group input,[data-theme="ultra"] .form-group textarea,[data-theme="ultra"] .form-group select{background:rgba(255,255,255,0.8);backdrop-filter:blur(8px);border:1px solid rgba(99,102,241,0.1);border-radius:12px;}
[data-theme="ultra"] .form-group input:focus,[data-theme="ultra"] .form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,0.1);}
/* Footer */
[data-theme="ultra"] footer{background:#0f172a;}
[data-theme="ultra"] footer a{color:#818cf8;}
[data-theme="ultra"] .ft-bottom{border-top-color:rgba(99,102,241,0.1);}
/* Kontakt */
[data-theme="ultra"] .kontakt-info a{color:#6366f1;}
[data-theme="ultra"] .kontakt-info h3{color:#0f172a;}
/* Switcher */
[data-theme="ultra"] .switcher-btn{border-color:rgba(99,102,241,0.2);color:#6366f1;background:rgba(255,255,255,0.8);backdrop-filter:blur(8px);}
/* Mobile */
[data-theme="ultra"] .mobile-tabs{background:rgba(250,250,250,0.9);backdrop-filter:blur(20px);border-top:1px solid rgba(99,102,241,0.08);}
[data-theme="ultra"] .tab{color:#94a3b8;}
[data-theme="ultra"] .tab.on{color:#6366f1;}
/* Smooth Hover Micro-Interactions */
[data-theme="ultra"] a,[data-theme="ultra"] button{transition:all .4s cubic-bezier(0.34,1.56,0.64,1);}
[data-theme="ultra"] .petal{display:none!important;}

/* SWITCHER */
.switcher{position:fixed;bottom:2rem;right:2rem;z-index:999;display:flex;flex-direction:column;gap:.4rem;align-items:flex-end;}
.switcher-label{font-size:.55rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-light);margin-bottom:.2rem;background:var(--cream);padding:.2rem .5rem;border-radius:4px;}
.switcher-btn{width:38px;height:38px;border:2px solid var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;transition:all .3s;background:var(--cream);color:var(--text);border-radius:50%;}
.switcher-btn:hover,.switcher-btn.active{background:var(--accent);border-color:var(--accent);color:white;}
*{margin:0;padding:0;box-sizing:border-box;}html{scroll-behavior:smooth;overflow-x:hidden;}img{max-width:100%;height:auto;}
*,*::before,*::after{transition:background-color .5s,color .4s,border-color .4s,box-shadow .4s;}
body{font-family:var(--ff-body,'Nunito Sans',sans-serif);font-weight:300;color:var(--text);background:var(--cream);line-height:1.7;font-size:16px;-webkit-user-select:none;-moz-user-select:none;user-select:none;}
input,textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text;}
img{-webkit-user-drag:none;user-drag:none;}
.galerie-grid img{pointer-events:auto!important;}
h1,h2,h3{font-family:var(--ff-head,'Lora',serif);font-weight:400;line-height:1.25;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;transition:all .4s;background:rgba(45,58,40,0.92);backdrop-filter:blur(10px);}
nav.on{background:rgba(45,58,40,0.97);box-shadow:0 2px 20px rgba(45,58,40,0.2);padding:.6rem 2rem;}
.nav-logo{text-decoration:none;display:flex;align-items:center;}
.nav-logo img{height:60px;transition:height .4s;transform:rotate(-12deg);filter:drop-shadow(0 2px 4px rgba(0,0,0,.15));}
nav.on .nav-logo img{height:45px;}
.nav-links{display:flex;gap:2rem;list-style:none;align-items:center;}
.nav-links a{color:rgba(250,245,239,0.7);text-decoration:none;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;transition:all .3s;}
.nav-links a:hover,.nav-links a.active{color:var(--rose-light);}
.nav-cta{padding:.4rem 1.2rem!important;border:1px solid var(--rose-light)!important;color:var(--rose-light)!important;border-radius:50px;}
.nav-cta:hover{background:var(--rose)!important;color:white!important;border-color:var(--rose)!important;}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;}
.burger span{display:block;width:24px;height:2px;background:rgba(250,245,239,0.7);transition:all .3s;}
.burger.x span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.burger.x span:nth-child(2){opacity:0;}
.burger.x span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}

/* LAYOUT */
section{padding:6rem 2rem;}
.container{max-width:900px;margin:0 auto;}
.section-label{display:block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin-bottom:1rem;font-weight:500;}
.section-title{font-size:clamp(2rem,5vw,3rem);color:var(--dark);margin-bottom:1.5rem;}

/* HERO */
.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:4rem 2rem;background:var(--cream);position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(196,133,122,0.08) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(90,114,71,0.06) 0%,transparent 50%);}
.hero-split{display:flex;align-items:center;gap:3rem;max-width:1000px;position:relative;z-index:1;}
.hero-text-col{flex:1;text-align:left;}
.hero-img-col{flex:0 0 auto;}
.hero-bouquet{max-height:500px;width:auto;animation:fadeUp .8s ease forwards .4s;opacity:0;filter:drop-shadow(0 20px 40px rgba(90,114,71,.15));}
.hero-bouquet.in,.hero-bouquet:hover{opacity:1;}
.hero-tagline{font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;color:var(--sage);margin-bottom:2rem;opacity:0;animation:fadeUp .8s ease forwards .3s;}
.hero h1{font-size:clamp(2.8rem,7vw,5rem);color:var(--dark);margin-bottom:1.5rem;opacity:0;animation:fadeUp .8s ease forwards .5s;}
.hero h1 em{color:var(--rose);font-style:italic;}
.hero-text{font-size:1.05rem;color:var(--text-light);max-width:500px;margin:0 0 3rem;opacity:0;animation:fadeUp .8s ease forwards .7s;line-height:1.9;}
.hero-cta{display:inline-block;padding:.9rem 2.5rem;background:var(--sage);color:white;text-decoration:none;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;transition:all .4s;border-radius:50px;opacity:0;animation:fadeUp .8s ease forwards .9s;}
.hero-cta:hover{background:var(--dark);box-shadow:0 8px 25px rgba(90,114,71,.25);transform:translateY(-2px);}
.hero-logo{max-width:180px;margin-bottom:1rem;opacity:0;animation:fadeUp .8s ease forwards .4s;position:relative;z-index:1;filter:drop-shadow(0 4px 15px rgba(90,114,71,0.2));}

/* CARDS */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;margin-top:2rem;}
.card{padding:2.5rem 2rem;background:white;border-radius:16px;border-left:3px solid var(--sage);box-shadow:0 4px 20px rgba(45,58,40,.04);transition:all .4s;}
.card:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(45,58,40,.08);}
.card h3{font-size:1.3rem;color:var(--dark);margin-bottom:.8rem;}
.card p{font-size:.93rem;color:var(--text-light);line-height:1.8;}
.card-icon{font-size:2rem;margin-bottom:1rem;}.card-icon img{height:56px;width:56px;object-fit:cover;border-radius:50%;border:2px solid var(--sage);box-shadow:0 2px 8px rgba(90,114,71,.15);}

/* GALERIE */
.galerie-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;}
.galerie-grid img{width:100%;height:280px;object-fit:cover;border-radius:12px;transition:all .4s;cursor:pointer;}
.galerie-grid img:hover{transform:scale(1.03);box-shadow:0 12px 40px rgba(45,58,40,.12);filter:brightness(1.05);}

/* DARK SECTION */
.dark{background:var(--dark);color:var(--cream);}
.dark .section-label{color:var(--rose-light);}
.dark .section-title{color:var(--cream);}

/* WARM SECTION */
.warm{background:var(--warm);}

/* ROSE SECTION */
.rose-bg{background:var(--rose-pale);}

/* ANLASS BADGES */
.anlass-wrap{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem;justify-content:center;}
.anlass{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;background:white;border:1px solid var(--sage-pale);border-radius:50px;font-size:.85rem;color:var(--dark);transition:all .3s;}
.anlass:hover{border-color:var(--sage);background:var(--sage-pale);transform:translateY(-2px);}
.anlass-icon{font-size:1.1rem;}
.anlass-img{width:32px;height:32px;border-radius:50%;object-fit:cover;}

/* UEBER */
.ueber-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;align-items:center;margin-top:2rem;}
.ueber-img{border-radius:16px;width:100%;height:400px;object-fit:cover;box-shadow:0 8px 30px rgba(45,58,40,.1);}
.ueber-text{font-size:1.05rem;color:var(--text-light);line-height:1.9;}

/* BTN */
.btn{display:inline-block;padding:.8rem 2rem;background:var(--sage);color:white;text-decoration:none;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;transition:all .3s;border-radius:50px;border:none;cursor:pointer;font-family:'Nunito Sans',sans-serif;}
.btn:hover{background:var(--dark);transform:translateY(-2px);box-shadow:0 6px 20px rgba(45,58,40,.2);}
.btn-outline{background:transparent;border:1px solid var(--sage);color:var(--sage);}
.btn-outline:hover{background:var(--sage);color:white;}
.btn-rose{background:var(--rose);}.btn-rose:hover{background:var(--dark);}

/* KONTAKT */
.kontakt-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2rem;}
.kontakt-info h3{font-size:1.3rem;color:var(--dark);margin-bottom:1rem;}
.kontakt-info p{font-size:.93rem;color:var(--text-light);margin-bottom:.4rem;}
.kontakt-info a{color:var(--sage);text-decoration:none;}
.form-group{margin-bottom:1.2rem;}
.form-group label{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-light);margin-bottom:.4rem;font-weight:500;}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem .9rem;background:white;border:1px solid rgba(45,58,40,.12);font-family:'Nunito Sans',sans-serif;font-size:.93rem;color:var(--text);border-radius:8px;outline:none;transition:border-color .3s;}
.form-group input:focus,.form-group textarea:focus{border-color:var(--sage);}
.form-group textarea{resize:vertical;min-height:120px;}
.form-group select option{color:#333;background:white;}
.btn-wa{display:inline-block;padding:.6rem 1.5rem;background:#25d366;color:white!important;text-decoration:none;font-size:.85rem;font-weight:500;letter-spacing:.05em;border-radius:50px;transition:all .3s;margin:.8rem 0 .2rem;font-family:var(--ff-body);}
.btn-wa:hover{background:#128c48;transform:translateY(-2px);box-shadow:0 6px 20px rgba(37,211,102,.3);}
.wa-hint{font-size:.7rem;color:var(--text-light);font-style:italic;margin-top:0;}

/* FOOTER */
footer{background:var(--dark);padding:3rem 2rem 1.8rem;}
.ft{max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:start;}
.ft-info p{font-size:.85rem;color:rgba(250,245,239,.7);line-height:1.9;}
.ft-info strong{color:var(--rose-light);display:block;margin-bottom:.3rem;}
.ft-logo{text-align:center;}
.ft-logo img{height:50px;margin-bottom:.5rem;}
.ft-links{margin-top:.5rem;font-size:.75rem;}
.ft-links a{color:rgba(250,245,239,.6);text-decoration:none;cursor:pointer;transition:color .3s;}
.ft-links a:hover{color:var(--rose-light);}
.ft-links span{color:rgba(250,245,239,.3);margin:0 .4rem;}
.ft-contact{text-align:right;}
.ft-contact p{font-size:.85rem;color:rgba(250,245,239,.7);}
.ft-contact a{color:var(--rose-light);text-decoration:none;}
.ft-wa{display:inline-block;padding:.3rem .8rem;background:rgba(37,211,102,.15);border:1px solid rgba(37,211,102,.3);border-radius:50px;color:#25d366!important;font-size:.8rem;transition:all .3s;}
.ft-wa:hover{background:rgba(37,211,102,.25);border-color:#25d366;}
.ft-wa-hint{font-size:.65rem!important;color:rgba(250,245,239,.45)!important;font-style:italic;margin-top:-.2rem!important;}
.ft-bottom{max-width:900px;margin:2rem auto 0;border-top:1px solid rgba(196,133,122,.15);padding-top:1.3rem;font-size:.7rem;color:rgba(250,245,239,.45);text-align:center;}
.ft-bottom a{color:var(--rose-light);text-decoration:none;}

/* POPUPS */
.popup-overlay{display:none;position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:2rem;}
.popup-overlay.open{display:flex;}
.popup-box{background:#faf5ef;color:#3a3a3a;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;border-radius:16px;padding:2.5rem;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.3);}
.popup-close{position:absolute;top:1rem;right:1.2rem;background:none;border:none;font-size:1.8rem;color:#888;cursor:pointer;line-height:1;transition:color .3s;}
.popup-close:hover{color:#c4857a;}
.popup-box h3{font-family:var(--ff-head);font-size:1.5rem;color:#2d3a28;margin-bottom:1.5rem;}
.popup-box p{font-size:.9rem;color:#3a3a3a;line-height:1.8;margin-bottom:1rem;}
.popup-box .ds{font-size:.85rem;color:#666;margin-bottom:1.2rem;}
.popup-box .ds strong{color:#3a3a3a;display:block;margin-bottom:.3rem;}
.popup-box a{color:#5a7247;text-decoration:none;}
.popup-box a:hover{color:#c4857a;}
.popup-stand{font-size:.75rem;color:#888;font-style:italic;margin-top:1.5rem;}

/* FULLWIDTH BANNER with waves */
.banner-wave{position:relative;margin:0;padding:0;overflow:hidden;}
.wave-top,.wave-bottom{display:block;width:100%;height:100px;position:relative;z-index:2;}
.wave-top{color:var(--cream);margin-bottom:-2px;}
.wave-bottom{color:var(--cream);margin-top:-2px;}
[data-theme="party"] .wave-top{color:#0a0020;}
[data-theme="party"] .wave-bottom{color:#0a0020;}
.banner-img{width:100%;min-height:400px;background-size:cover;background-position:center;position:relative;}
.banner-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,0.4),rgba(0,0,0,0.15));display:flex;align-items:center;justify-content:center;text-align:center;padding:2rem;}
.banner-title{font-family:var(--ff-head);font-size:clamp(2rem,5vw,3.5rem);color:white;text-shadow:0 4px 30px rgba(0,0,0,0.5);}
.banner-title em{color:var(--rose-light);font-style:italic;}
[data-theme="party"] .banner-title{text-shadow:0 2px 20px rgba(0,0,0,0.6),0 0 10px rgba(255,217,61,0.3);}
[data-theme="party"] .banner-title em{background:linear-gradient(90deg,#ff6b35,#e91e63,#ffd93d);background-size:300% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:disco 3s linear infinite;}
[data-theme="party"] .banner-overlay{background:linear-gradient(135deg,rgba(10,0,32,0.45),rgba(10,0,32,0.25));}
@keyframes waveFloat{0%,100%{transform:translateX(0);}50%{transform:translateX(-15px);}}
.wave-top path,.wave-bottom path{animation:waveFloat 6s ease-in-out infinite;}
.wave-bottom path{animation-delay:1s;}

/* PETALS */
.petal{position:fixed;font-size:1.2rem;z-index:50;pointer-events:none;opacity:.5;}
.petal:nth-child(1){animation:fall1 14s ease-in-out infinite;}
.petal:nth-child(2){animation:fall2 18s ease-in-out infinite 3s;font-size:1rem;}
.petal:nth-child(3){animation:fall3 16s ease-in-out infinite 6s;font-size:.9rem;opacity:.35;}
.petal:nth-child(4){animation:fall4 20s ease-in-out infinite 2s;font-size:1.1rem;opacity:.4;}
.petal:nth-child(5){animation:fall5 15s ease-in-out infinite 8s;font-size:.8rem;opacity:.3;}
@keyframes fall1{0%{top:-5%;left:20%;transform:rotate(0deg);}50%{left:35%;}100%{top:105%;left:25%;transform:rotate(360deg);}}
@keyframes fall2{0%{top:-5%;left:70%;transform:rotate(0deg);}50%{left:55%;}100%{top:105%;left:65%;transform:rotate(-360deg);}}
@keyframes fall3{0%{top:-5%;left:45%;transform:rotate(0deg);}50%{left:55%;}100%{top:105%;left:40%;transform:rotate(270deg);}}
@keyframes fall4{0%{top:-5%;left:85%;transform:rotate(0deg);}50%{left:75%;}100%{top:105%;left:90%;transform:rotate(-180deg);}}
@keyframes fall5{0%{top:-5%;left:10%;transform:rotate(0deg);}50%{left:20%;}100%{top:105%;left:5%;transform:rotate(300deg);}}

/* FADE IN */
.fi{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s;}
.fi.in{opacity:1;transform:none;}
@keyframes fadeUp{from{opacity:0;transform:translateY(25px);}to{opacity:1;transform:translateY(0);}}

/* HIGHLIGHT BOX */
.highlight{padding:2rem;background:white;border-radius:16px;border-left:3px solid var(--rose);box-shadow:0 4px 20px rgba(196,133,122,.06);margin-top:2rem;}
.highlight p{font-size:.95rem;color:var(--text-light);line-height:1.8;}

/* MOBILE TAB BAR */
.mobile-tabs{display:none;}
.mehr-menu{display:none;}

/* ===== INDIVIDUELLE GALERIEN ===== */

/* BOTANIK Galerie: Garten — Bilder wachsen versetzt hoch wie Pflanzen */
[data-theme="botanik"] .galerie-grid img{opacity:0;transform:scale(0.8) translateY(30px);transition:all .8s cubic-bezier(0.34,1.56,0.64,1);}
[data-theme="botanik"] .galerie-grid.in img{opacity:1;transform:scale(1) translateY(0);}
[data-theme="botanik"] .galerie-grid.in img:nth-child(1){transition-delay:.1s;}
[data-theme="botanik"] .galerie-grid.in img:nth-child(2){transition-delay:.25s;}
[data-theme="botanik"] .galerie-grid.in img:nth-child(3){transition-delay:.4s;}
[data-theme="botanik"] .galerie-grid.in img:nth-child(4){transition-delay:.55s;}
[data-theme="botanik"] .galerie-grid.in img:nth-child(5){transition-delay:.7s;}
[data-theme="botanik"] .galerie-grid.in img:nth-child(6){transition-delay:.85s;}
[data-theme="botanik"] .galerie-grid img:hover{transform:scale(1.06);border-radius:20px;box-shadow:0 20px 50px rgba(90,114,71,.15);filter:brightness(1.05) saturate(1.1);}

/* JACKPOT Galerie: Laufband — Bilder scrollen endlos wie ein Spielautomat */
@keyframes marquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
[data-theme="jackpot"] .galerie-grid{display:flex!important;overflow:hidden;gap:1rem;grid-template-columns:none;flex-wrap:nowrap;mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);}
[data-theme="jackpot"] .galerie-grid img{min-width:280px;height:250px;flex-shrink:0;border:2px solid rgba(245,197,24,0.2);border-radius:8px;animation:marquee 20s linear infinite;}
[data-theme="jackpot"] .galerie-grid:hover img{animation-play-state:paused;}
[data-theme="jackpot"] .galerie-grid img:hover{border-color:#f5c518;box-shadow:0 0 30px rgba(245,197,24,0.3);transform:scale(1.05);z-index:10;}

/* FRISCH Galerie: Polaroids die sich UMARMEN — lehnen zueinander */
[data-theme="frisch"] .galerie-grid{gap:.5rem;}
[data-theme="frisch"] .galerie-grid img{border:8px solid white;border-bottom:30px solid white;border-radius:2px;box-shadow:0 4px 15px rgba(0,0,0,0.1);transition:all .5s cubic-bezier(0.34,1.56,0.64,1);}
[data-theme="frisch"] .galerie-grid img:nth-child(1){transform:rotate(-4deg) translate(10px,0);}
[data-theme="frisch"] .galerie-grid img:nth-child(2){transform:rotate(1deg) translate(-5px,8px);}
[data-theme="frisch"] .galerie-grid img:nth-child(3){transform:rotate(3deg) translate(-8px,-5px);}
[data-theme="frisch"] .galerie-grid img:nth-child(4){transform:rotate(2deg) translate(8px,5px);}
[data-theme="frisch"] .galerie-grid img:nth-child(5){transform:rotate(-2deg) translate(-10px,-3px);}
[data-theme="frisch"] .galerie-grid img:nth-child(6){transform:rotate(4deg) translate(5px,8px);}
[data-theme="frisch"] .galerie-grid img:hover{transform:rotate(0deg) translate(0,0) scale(1.12)!important;box-shadow:0 20px 50px rgba(0,0,0,0.2);z-index:10;}

/* NACHT Galerie: Spotlight — dunkel mit Puls, Hover beleuchtet dramatisch */
/* NACHT Galerie: ECHTER SCHEINWERFER der über die Bilder wandert */
@keyframes searchlight{0%{left:-30%;top:-20%;}25%{left:70%;top:10%;}50%{left:40%;top:60%;}75%{left:10%;top:30%;}100%{left:-30%;top:-20%;}}
@keyframes spotlightPulse{0%,100%{border-color:rgba(142,68,173,0.15);box-shadow:0 0 8px rgba(142,68,173,0.05);}50%{border-color:rgba(243,156,18,0.3);box-shadow:0 0 20px rgba(243,156,18,0.1);}}
[data-theme="nacht"] .galerie-grid{position:relative;overflow:hidden;}
[data-theme="nacht"] .galerie-grid::after{content:'';position:absolute;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(243,156,18,0.2) 0%,rgba(142,68,173,0.1) 30%,transparent 70%);animation:searchlight 8s ease-in-out infinite;pointer-events:none;z-index:5;mix-blend-mode:screen;filter:blur(30px);}
[data-theme="nacht"] .galerie-grid img{filter:brightness(0.4) saturate(0.5);border-radius:8px;border:2px solid rgba(142,68,173,0.15);transition:all .4s ease;animation:spotlightPulse 3s ease-in-out infinite;cursor:pointer;position:relative;}
[data-theme="nacht"] .galerie-grid img:nth-child(2){animation-delay:.5s;}
[data-theme="nacht"] .galerie-grid img:nth-child(3){animation-delay:1s;}
[data-theme="nacht"] .galerie-grid img:nth-child(4){animation-delay:1.5s;}
[data-theme="nacht"] .galerie-grid img:nth-child(5){animation-delay:2s;}
[data-theme="nacht"] .galerie-grid img:nth-child(6){animation-delay:2.5s;}
[data-theme="nacht"] .galerie-grid img:hover{filter:brightness(1.2) saturate(1.3);box-shadow:0 0 50px rgba(243,156,18,0.35),0 0 100px rgba(142,68,173,0.2),0 0 150px rgba(243,156,18,0.1);transform:scale(1.08);border-color:rgba(243,156,18,0.6);z-index:10;animation:none!important;}

/* ROSÉ Galerie: Pärchen — Bilder lehnen sich aneinander wie Verliebte */
@keyframes cuddleLeft{0%,100%{transform:rotate(-3deg) translate(5px,0);}50%{transform:rotate(-1deg) translate(8px,-3px);}}
@keyframes cuddleRight{0%,100%{transform:rotate(3deg) translate(-5px,0);}50%{transform:rotate(1deg) translate(-8px,-3px);}}
[data-theme="rose"] .galerie-grid{gap:.3rem;}
[data-theme="rose"] .galerie-grid img{border-radius:24px;border:none;box-shadow:0 4px 20px rgba(192,100,122,0.08);transition:all .5s cubic-bezier(0.34,1.56,0.64,1);}
[data-theme="rose"] .galerie-grid img:nth-child(1){animation:cuddleRight 4s ease-in-out infinite;}
[data-theme="rose"] .galerie-grid img:nth-child(2){animation:cuddleLeft 4s ease-in-out infinite .5s;}
[data-theme="rose"] .galerie-grid img:nth-child(3){animation:cuddleRight 4.5s ease-in-out infinite .2s;}
[data-theme="rose"] .galerie-grid img:nth-child(4){animation:cuddleLeft 3.8s ease-in-out infinite .8s;}
[data-theme="rose"] .galerie-grid img:nth-child(5){animation:cuddleRight 4.2s ease-in-out infinite .4s;}
[data-theme="rose"] .galerie-grid img:nth-child(6){animation:cuddleLeft 3.5s ease-in-out infinite .6s;}
[data-theme="rose"] .galerie-grid img:hover{transform:rotate(0deg) scale(1.1) translateY(-8px)!important;animation:none;box-shadow:0 25px 60px rgba(192,100,122,0.2);}

/* ULTRA Galerie: Fade & Float — erscheinen nacheinander, schweben elegant */
@keyframes ultraFloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
[data-theme="ultra"] .galerie-grid{gap:1.5rem;}
[data-theme="ultra"] .galerie-grid img{border-radius:20px;border:none;box-shadow:0 4px 20px rgba(0,0,0,0.06);opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(0.22,1,0.36,1);}
[data-theme="ultra"] .galerie-grid.in img{opacity:1;transform:translateY(0);}
[data-theme="ultra"] .galerie-grid.in img:nth-child(1){transition-delay:.05s;animation:ultraFloat 5s ease-in-out infinite 1s;}
[data-theme="ultra"] .galerie-grid.in img:nth-child(2){transition-delay:.15s;animation:ultraFloat 5s ease-in-out infinite 1.5s;}
[data-theme="ultra"] .galerie-grid.in img:nth-child(3){transition-delay:.25s;animation:ultraFloat 5s ease-in-out infinite 2s;}
[data-theme="ultra"] .galerie-grid.in img:nth-child(4){transition-delay:.35s;animation:ultraFloat 5s ease-in-out infinite 2.5s;}
[data-theme="ultra"] .galerie-grid.in img:nth-child(5){transition-delay:.45s;animation:ultraFloat 5s ease-in-out infinite 3s;}
[data-theme="ultra"] .galerie-grid.in img:nth-child(6){transition-delay:.55s;animation:ultraFloat 5s ease-in-out infinite 3.5s;}
[data-theme="ultra"] .galerie-grid img:hover{transform:translateY(-12px)!important;box-shadow:0 30px 60px rgba(99,102,241,0.12),0 0 0 1px rgba(99,102,241,0.08);}

/* ===== INDIVIDUELLE NAVIS ===== */

/* BOTANIK Nav: Goldene Linie wächst von der Mitte */
[data-theme="botanik"] nav{backdrop-filter:blur(12px);}
[data-theme="botanik"] .nav-links a::after{content:'';position:absolute;bottom:-6px;left:50%;width:0;height:2px;background:linear-gradient(90deg,transparent,var(--rose),transparent);transition:all .5s;transform:translateX(-50%);}
[data-theme="botanik"] .nav-links a:hover::after{width:120%;}
[data-theme="botanik"] .nav-links a{position:relative;}
[data-theme="botanik"] .nav-links a:hover{letter-spacing:.18em;}

/* JACKPOT Nav: Casino-Chip Buttons mit Gold-Glow */
[data-theme="jackpot"] nav{border-bottom:2px solid #f5c518;box-shadow:0 2px 25px rgba(245,197,24,0.12);}
[data-theme="jackpot"] .nav-logo img{filter:drop-shadow(0 0 10px rgba(245,197,24,0.5))!important;}
[data-theme="jackpot"] .nav-links a{padding:.4rem 1.2rem;border:1px solid rgba(245,197,24,0.15);border-radius:4px;color:rgba(240,230,208,0.5);}
[data-theme="jackpot"] .nav-links a:hover{color:#f5c518;border-color:#f5c518;background:rgba(245,197,24,0.08);box-shadow:0 0 15px rgba(245,197,24,0.2);text-shadow:0 0 8px rgba(245,197,24,0.4);}
[data-theme="jackpot"] .nav-cta{background:rgba(245,197,24,0.1)!important;box-shadow:0 0 12px rgba(245,197,24,0.15);}
[data-theme="jackpot"] .nav-cta:hover{background:#f5c518!important;color:#1a1a1a!important;box-shadow:0 0 30px rgba(245,197,24,0.4)!important;}

/* FRISCH Nav: Bunte Pillen die bouncen */
@keyframes pillBounce{0%,100%{transform:translateY(0);}50%{transform:translateY(-3px);}}
[data-theme="frisch"] nav{background:rgba(240,255,244,0.92);backdrop-filter:blur(10px);border-bottom:3px solid #2ecc71;}
[data-theme="frisch"] nav.on{background:rgba(240,255,244,0.97);}
[data-theme="frisch"] .nav-links a{color:#1a5c38;padding:.4rem 1.2rem;background:rgba(46,204,113,0.08);border-radius:50px;font-weight:500;}
[data-theme="frisch"] .nav-links li:nth-child(1) a{animation:pillBounce 2s ease-in-out infinite;}
[data-theme="frisch"] .nav-links li:nth-child(2) a{animation:pillBounce 2s ease-in-out infinite .3s;}
[data-theme="frisch"] .nav-links li:nth-child(3) a{animation:pillBounce 2s ease-in-out infinite .6s;}
[data-theme="frisch"] .nav-links li:nth-child(4) a{animation:pillBounce 2s ease-in-out infinite .9s;}
[data-theme="frisch"] .nav-links a:hover{background:#2ecc71;color:white;transform:scale(1.08);box-shadow:0 4px 15px rgba(46,204,113,0.3);}
[data-theme="frisch"] .nav-cta{background:#2ecc71!important;color:white!important;border:none!important;box-shadow:0 4px 15px rgba(46,204,113,0.3);}

/* NACHT Nav: Schwebende Glasleiste mit Purple-Glow */
@keyframes purpleGlow{0%,100%{box-shadow:0 0 15px rgba(142,68,173,0.1),0 0 30px rgba(243,156,18,0.05);}50%{box-shadow:0 0 25px rgba(142,68,173,0.25),0 0 50px rgba(243,156,18,0.1);}}
[data-theme="nacht"] nav{background:rgba(13,11,26,0.6);backdrop-filter:blur(20px);border:1px solid rgba(142,68,173,0.15);margin:0.5rem 3rem 0;border-radius:12px;animation:purpleGlow 3s ease-in-out infinite;}
[data-theme="nacht"] nav.on{background:rgba(13,11,26,0.9);border-radius:0;margin:0;border-color:rgba(142,68,173,0.3);}
[data-theme="nacht"] .nav-links a{color:rgba(224,213,197,0.4);position:relative;}
[data-theme="nacht"] .nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:2px;background:linear-gradient(90deg,#8e44ad,#f39c12);transform:scaleX(0);transition:transform .3s;}
[data-theme="nacht"] .nav-links a:hover{color:#f39c12;text-shadow:0 0 12px rgba(243,156,18,0.4);}
[data-theme="nacht"] .nav-links a:hover::after{transform:scaleX(1);}
[data-theme="nacht"] .nav-cta{border-color:#f39c12!important;color:#f39c12!important;border-radius:8px!important;}
[data-theme="nacht"] .nav-cta:hover{background:linear-gradient(135deg,#8e44ad,#f39c12)!important;border-color:transparent!important;color:white!important;}

/* ROSÉ Nav: Weiches Band mit Punkt-Akzent */
[data-theme="rose"] nav{background:rgba(255,248,245,0.92);backdrop-filter:blur(10px);border-bottom:none;box-shadow:0 4px 30px rgba(192,100,122,0.08);}
[data-theme="rose"] nav.on{background:rgba(255,248,245,0.97);box-shadow:0 4px 20px rgba(192,100,122,0.12);}
[data-theme="rose"] .nav-links a{color:#8a5a6a;position:relative;padding-left:1rem;}
[data-theme="rose"] .nav-links a::before{content:'';width:6px;height:6px;border-radius:50%;background:#d4a49b;position:absolute;left:0;top:50%;transform:translateY(-50%);transition:all .3s;opacity:.4;}
[data-theme="rose"] .nav-links a:hover{color:#c0647a;}
[data-theme="rose"] .nav-links a:hover::before{background:#c0647a;opacity:1;transform:translateY(-50%) scale(1.5);box-shadow:0 0 8px rgba(192,100,122,0.4);}
[data-theme="rose"] .nav-cta{border-color:#c0647a!important;color:#c0647a!important;border-radius:50px!important;}
[data-theme="rose"] .nav-cta:hover{background:#c0647a!important;color:white!important;box-shadow:0 4px 20px rgba(192,100,122,0.3)!important;}

/* KARUSSELL */
.karussell{position:relative;overflow:hidden;border-radius:var(--radius,16px);margin-top:2rem;}
.karussell-track{display:flex;transition:transform .6s cubic-bezier(0.25,0.8,0.25,1);will-change:transform;}
.karussell-track img{flex:0 0 33.333%;width:33.333%;height:320px;object-fit:cover;padding:0 .4rem;border-radius:var(--radius,16px);cursor:pointer;transition:filter .3s,transform .3s;}
.karussell-track img:hover{filter:brightness(1.08);transform:scale(1.02);}
.karussell-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.85);backdrop-filter:blur(6px);border:none;width:40px;height:40px;border-radius:50%;font-size:1.1rem;cursor:pointer;z-index:5;transition:all .3s;color:var(--dark);box-shadow:0 2px 10px rgba(0,0,0,.1);}
.karussell-btn:hover{background:var(--sage);color:white;box-shadow:0 4px 20px rgba(0,0,0,.15);}
.karussell-prev{left:.8rem;}
.karussell-next{right:.8rem;}
.karussell-dots{display:flex;justify-content:center;gap:.5rem;padding:1rem 0 .5rem;}
.karussell-dot{width:8px;height:8px;border-radius:50%;background:var(--sage-pale);border:none;cursor:pointer;transition:all .3s;padding:0;}
.karussell-dot.on{background:var(--sage);transform:scale(1.3);}
/* Karussell Push-Animation beim Schubsen */
.karussell.push-left{animation:pushLeft .15s ease-out;}
.karussell.push-right{animation:pushRight .15s ease-out;}
@keyframes pushLeft{0%{transform:translateX(0);}50%{transform:translateX(-8px);}100%{transform:translateX(0);}}
@keyframes pushRight{0%{transform:translateX(0);}50%{transform:translateX(8px);}100%{transform:translateX(0);}}
/* Dark theme karussell buttons */
[data-theme="jackpot"] .karussell-btn,[data-theme="nacht"] .karussell-btn,[data-theme="party"] .karussell-btn{background:rgba(0,0,0,.6);color:white;}
[data-theme="jackpot"] .karussell-btn:hover{background:#f5c518;color:#1a1a1a;}
[data-theme="nacht"] .karussell-btn:hover{background:#f39c12;color:#0d0b1a;}
[data-theme="party"] .karussell-btn:hover{background:#ff6b35;color:white;}
[data-theme="jackpot"] .karussell-dot{background:rgba(245,197,24,.2);}
[data-theme="jackpot"] .karussell-dot.on{background:#f5c518;}
[data-theme="nacht"] .karussell-dot{background:rgba(142,68,173,.2);}
[data-theme="nacht"] .karussell-dot.on{background:#f39c12;}
[data-theme="party"] .karussell-dot{background:rgba(255,107,53,.2);}
[data-theme="party"] .karussell-dot.on{background:#ffd93d;}
[data-theme="ultra"] .karussell-dot{background:rgba(99,102,241,.15);}
[data-theme="ultra"] .karussell-dot.on{background:#6366f1;}
[data-theme="ultra"] .karussell-btn:hover{background:#6366f1;color:white;}

/* PORTRAIT */
.karussell{display:none;}
.portrait-wrap{float:left;margin:0 2rem 1rem 0;position:relative;}
.portrait{width:160px;height:200px;object-fit:cover;border-radius:12px;cursor:pointer;box-shadow:0 4px 20px rgba(45,58,40,.1);transition:all .4s;}
.portrait:hover{transform:scale(1.05);box-shadow:0 8px 30px rgba(45,58,40,.15);}

/* LIGHTBOX */
.lightbox{display:none;position:fixed;inset:0;z-index:1100;background:rgba(0,0,0,.85);backdrop-filter:blur(6px);align-items:center;justify-content:center;cursor:pointer;padding:2rem;}
.lightbox.open{display:flex;}
.lightbox img{max-width:90vw;max-height:85vh;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5);object-fit:contain;}

/* RESPONSIVE */
@media(max-width:768px){
section{padding:3rem 1.2rem 4rem;}
.section-title{font-size:1.3rem!important;}
.section-label{font-size:.55rem!important;}
.card h3{font-size:.9rem!important;}
.card p{font-size:.8rem!important;}
.kontakt-grid,.ueber-grid{grid-template-columns:1fr;}
.galerie-grid{grid-template-columns:1fr 1fr;}
.karussell{display:none!important;}
.hero-split{flex-direction:column;text-align:center;gap:.3rem;}
.hero-text-col{text-align:center;}
.hero-bouquet{max-height:110px!important;margin:0 auto;}
.hero h1{font-size:1.3rem!important;line-height:1.2!important;}
.hero-tagline{font-size:.5rem!important;margin-bottom:.5rem!important;}
.hero-text{font-size:.75rem!important;margin-bottom:1rem!important;}
.hero-cta{padding:.5rem 1.5rem!important;font-size:.65rem!important;}
.hero{min-height:auto!important;padding:1.5rem 1.2rem 2rem!important;}
nav{padding:.6rem 1rem;display:none!important;}
.burger{display:none!important;}
.nav-links{display:none!important;}
.mobile-tabs{
  display:flex;position:fixed;bottom:0;left:0;right:0;z-index:300;
  background:var(--dark);
  box-shadow:0 -2px 20px rgba(45,58,40,0.3);
  padding:.4rem 0 max(.4rem,env(safe-area-inset-bottom));
}
.tab{
  flex:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;
  text-decoration:none;color:rgba(250,245,239,0.6);
  padding:.5rem .2rem;font-family:'Nunito Sans',sans-serif;
  background:none;border:none;cursor:pointer;transition:color .2s;
}
.tab.on,.tab:hover{color:var(--rose-light);}
.tab-ico{font-size:1.2rem;line-height:1;}
.tab-lbl{font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;}
.mehr-menu{position:fixed;inset:0;z-index:400;background:rgba(0,0,0,0.5);align-items:flex-end;justify-content:center;}
.mehr-menu.open{display:flex;}
.mehr-sheet{width:100%;max-height:70vh;overflow-y:auto;background:var(--dark);border-radius:16px 16px 0 0;padding:0 0 2rem;}
.mehr-handle{width:36px;height:4px;background:rgba(250,245,239,0.2);border-radius:4px;margin:10px auto 5px;}
.mehr-sheet a{display:block;padding:1rem 1.5rem;color:rgba(250,245,239,0.85);text-decoration:none;font-size:.9rem;border-bottom:1px solid rgba(250,245,239,0.06);transition:all .2s;}
.mehr-sheet a:hover{color:var(--rose-light);}
.ft{grid-template-columns:1fr;text-align:center;}
.ft-contact{text-align:center;}
footer{padding-bottom:5rem;}
.anlass-wrap{display:flex;flex-wrap:nowrap;gap:.6rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding:.5rem 0;justify-content:flex-start;mask-image:linear-gradient(90deg,transparent,black 5%,black 95%,transparent);}
.anlass-wrap::-webkit-scrollbar{display:none;}
.anlass-img{width:22px!important;height:22px!important;}
.anlass{font-size:.7rem;padding:.35rem .8rem;flex-shrink:0;scroll-snap-align:start;animation:none!important;}.switcher{bottom:5rem;right:1rem;}
.switcher-btn{width:32px;height:32px;font-size:.5rem;}
.petal{font-size:.7rem!important;opacity:.3!important;}
.galerie-grid img{height:180px!important;}
.banner-img{min-height:250px!important;}
.banner-title{font-size:1.5rem!important;}
.wave-top,.wave-bottom{height:50px!important;}
.hero-bouquet{max-height:220px!important;}
.hero h1{font-size:2rem!important;}
.card-icon img{height:40px!important;width:40px!important;}
.popup-box{padding:1.5rem;margin:.5rem;border-radius:12px;}
.popup-box h3{font-size:1.2rem;}
.popup-box p{font-size:.8rem;}
.popup-box .ds{font-size:.78rem;}
.btn-wa{font-size:.8rem;padding:.5rem 1.2rem;}
.karussell-track img{flex:0 0 100%;width:100%;height:220px!important;padding:0;}
.karussell-btn{width:34px;height:34px;font-size:.9rem;}
.karussell-prev{left:.4rem;}
.karussell-next{right:.4rem;}
.portrait-wrap{float:none;margin:0 auto 1rem;text-align:center;}
.portrait{width:120px;height:150px;}
}