/* Freitaler Dance Cup Styles */
.fdc-hero-bg{background:var(--fdc-gradient);} 
.fdc-btn-primary{background:var(--fdc-primary);border:none;} 
.fdc-btn-primary:hover{filter:brightness(1.1);} 
.fdc-btn-outline{border:2px solid var(--fdc-primary);color:var(--fdc-primary);background:transparent;} 
.fdc-btn-outline:hover{background:var(--fdc-primary);color:#fff;}
.fdc-card-head-icon{background:linear-gradient(135deg,var(--fdc-primary) 0%,var(--fdc-secondary) 140%);} 
.fdc-card-border{border-top:4px solid var(--fdc-primary)!important;} 
.fdc-link-anchor a{color:var(--fdc-primary);} 
.fdc-link-anchor a:hover{text-decoration:underline;}
.fdc-section-dark{background:var(--fdc-primary);padding:70px 0 90px 0;margin-top:60px;} 
.fdc-section-dark h2{color:#eef2fa;letter-spacing:.5px;}
.fdc-card-grid .fdc-card-simple{background:#edf2f9;border:1px solid rgba(255,255,255,0.04);border-radius:4px;box-shadow:0 4px 12px -4px rgba(0,0,0,.25);transition:transform .18s ease, box-shadow .18s ease;}
.fdc-card-grid .fdc-card-simple:hover{transform:translateY(-4px);box-shadow:0 8px 22px -6px rgba(0,0,0,.35);}    
.fdc-card-grid .fdc-icon-circle{width:52px;height:52px;border-radius:50%;background:var(--fdc-secondary);display:flex;align-items:center;justify-content:center;margin:0 auto 18px auto;box-shadow:0 0 0 4px #edf2f9,0 2px 6px rgba(0,0,0,.35);}    
.fdc-card-grid .fdc-icon-circle i{color:#fff;font-size:22px;line-height:1;}
.fdc-card-grid h5{font-weight:600;text-align:center;font-size:1.05rem;margin-bottom:14px;color:#1b2345;}
.fdc-card-grid .card-body{padding:34px 30px 32px 30px;}
.fdc-card-grid ul{padding-left:18px;margin:0;} 
.fdc-card-grid ul li{margin-bottom:6px;font-size:.92rem;line-height:1.35;color:#2b3150;}
.fdc-card-grid p{font-size:.92rem;line-height:1.38;color:#2b3150;margin-bottom:0;} 
.fdc-bullets-purple ul li::marker{color:var(--fdc-secondary);}    
.fdc-section-dark .fdc-card-simple{position:relative;} 
.fdc-section-dark .fdc-card-simple:after{content:"";position:absolute;inset:0;border-radius:4px;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);}    
@media (max-width: 575.98px){
  .fdc-card-grid .fdc-card-simple .card-body{padding:30px 24px 28px 24px;}
}

/* Hero Area */
.fdc-hero{background:var(--fdc-primary);padding-top:70px;padding-bottom:30px;}
.fdc-hero-triple{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:stretch;gap:0;max-width:1100px;margin:0 auto;}
.fdc-hero-panel{background:#edf2f9;display:flex;align-items:center;justify-content:center;}
.fdc-hero-panel.blank{background:#edf2f9;}
.fdc-hero-image-wrapper{display:flex;align-items:center;justify-content:center;background:#000;padding:0;}
.fdc-hero-image-wrapper img{width:100%;height:100%;object-fit:cover;display:block;}
.fdc-hero-panel.text-panel{padding:45px 55px;}
.fdc-hero-text-inner h1{font-family:ComingSoon;font-size:2.8rem;margin:0 0 12px 0;color:#2b1b2c;}
.fdc-hero-text-inner h2{font-size:1.75rem;font-weight:500;margin:0 0 22px 0;color:#2b1b2c;}
.fdc-hero-text-inner p{font-size:.9rem;line-height:1.4;color:#2b3150;}
.fdc-hero-cta{color:#2b1b2c;font-weight:600;text-decoration:underline;}
.fdc-hero-cta:hover{text-decoration:none;color:var(--fdc-secondary);} 

/* Mobile hero */
.fdc-hero-mobile-card{background:#edf2f9;border-radius:0;overflow:hidden;box-shadow:0 6px 22px -10px rgba(0,0,0,.45);}
.fdc-hero-mobile-image{width:100%;height:260px;background-size:cover;background-position:center;}
.fdc-hero-mobile-text{padding:28px 26px 30px 26px;}
.fdc-hero-mobile-text h1{font-family:ComingSoon;font-size:2.3rem;margin:0 0 6px 0;color:#2b1b2c;}
.fdc-hero-mobile-text h2{font-size:1.3rem;margin:0 0 14px 0;font-weight:500;color:#2b1b2c;}
.fdc-hero-mobile-text p{font-size:.9rem;line-height:1.38;color:#2b3150;}

@media (max-width:991.98px){
  .fdc-hero{padding-top:40px;padding-bottom:10px;}
  .fdc-hero-triple{display:none!important;}
}
@media (min-width:992px){
  .fdc-hero-mobile-card{display:none;}
}

/* Anmeldung: Select-Höhe an Textboxen angleichen */
#fdc-anmeldung-form .form-select {
  /* Gleiche vertikale Padding-Werte wie Inputs */
  padding-top: .5rem;
  padding-bottom: .5rem;
  /* Erzwinge identische Gesamthöhe (Fallback wenn Browser Rendering abweicht) */
  min-height: calc(2.5rem + 2px);
  line-height:1.5;
}
