/*
 * RETRO BOXING e. V. – Vereinssoftware
 * Eigenentwicklung von RETRO BOXING e. V.
 * © 2026 RETRO BOXING e. V. – Alle Rechte vorbehalten.
 */

html body main.page-slug-home .rb-hero-zoom-shell{
  position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  transform-origin:50% 50%;transform:translate3d(0,0,0) scale(1.075);
  backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:auto;
}
html body main.page-slug-home .rb-hero-zoom-shell>.rb-home-hero-image{
  transform:none!important;animation:none!important;
}
@media(max-width:760px){
  html body main.page-slug-home .rb-hero-zoom-shell{transform:translate3d(0,0,0) scale(1.135)}
}
@media(prefers-reduced-motion:reduce){
  html body main.page-slug-home .rb-hero-zoom-shell{transform:none!important;transition:none!important;will-change:auto!important}
}
/* Trainingsangebote und Newsletter verwenden exakt das bestehende Startseiten-Aufklappdesign. */
/* Kritische Mobile-Regeln stehen vor dem Hero-Markup, damit Heute/Morgen schon im ersten sichtbaren Frame die Endgröße haben. */
@media(max-width:520px){
  html body .page-slug-home .rb-hero-brand-schedule{grid-template-rows:68px auto!important;align-items:start!important}
  html body .page-slug-home .rb-hero-day,
html body .page-slug-home .rb-hero-day--today,
html body .page-slug-home .rb-hero-day--tomorrow{
    height:68px!important;min-height:68px!important;max-height:68px!important;block-size:68px!important;min-block-size:68px!important;max-block-size:68px!important;
    padding:30px 7px 6px!important;box-sizing:border-box!important;overflow:hidden!important;transition:none!important;transform:none!important
  }
  html body .page-slug-home .rb-hero-day__title{font-size:.66rem!important;line-height:1!important;min-height:25px!important;padding:4px 7px!important}
  html body .page-slug-home .rb-hero-day__list.rb-hero-day-rotator{height:37px!important;min-height:37px!important;margin:0!important}
  html body .page-slug-home .rb-hero-day-rotator__item,
html body .page-slug-home .rb-hero-day--tomorrow .rb-hero-day-rotator__item,
html body .page-slug-home .rb-hero-day-rotator__item.is-active,
html body .page-slug-home .rb-hero-day--tomorrow .rb-hero-day-rotator__item.is-active{font-size:.74rem!important;line-height:1.05!important;animation:none!important;transition:none!important}
  html body .page-slug-home .rb-hero-day__time,
html body .page-slug-home .rb-hero-day__course,
html body .page-slug-home .rb-hero-day__duration{font-size:inherit!important}
}

.services-section .service-card-linked .service-media img{transform:scale(1);filter:brightness(1);transition:transform .34s ease,filter .28s ease}
@media(hover:hover) and (pointer:fine){.services-section .service-card-linked:hover .service-media img,
.services-section .service-card-linked:focus-within .service-media img{transform:scale(1.035);filter:brightness(1.12)}}
@media(prefers-reduced-motion:reduce){.services-section .service-card-linked .service-media img{transition:none!important}}
@keyframes rbHomeTrainingcardsLightPulse{0%,
100%{opacity:.72;transform:scale(1.015)}50%{opacity:1;transform:scale(1.035)}}
.rb-home-trainingcards{position:relative;overflow:hidden;min-height:330px;margin:18px 0 22px;display:flex;align-items:flex-end;background:var(--rb-ui-media-bg);border:1px solid rgba(255,255,255,.12);isolation:isolate}
.rb-home-trainingcards__image{position:absolute;inset:-2%;background:url('/assets/branding/training-chips.webp') center 44%/cover no-repeat;z-index:-2;opacity:.84;transform:scale(1.025);animation:rbHomeTrainingcardsLightPulse 11s ease-in-out infinite}
.rb-home-trainingcards__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.34)),linear-gradient(0deg,rgba(0,0,0,.78),transparent 72%);z-index:-1}
@media (prefers-reduced-motion:reduce){.rb-home-trainingcards__image{animation:none;opacity:.88;transform:scale(1.025)}}

.home-newsletter-section .home-newsletter-card{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.home-newsletter-section .newsletter-form-balanced{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
@media(min-width:760px){.home-newsletter-section .newsletter-form-balanced{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(230px,320px)!important;column-gap:18px!important;align-items:end!important}.home-newsletter-section .newsletter-input-row{grid-column:1!important;grid-row:1!important}.home-newsletter-section .newsletter-button-row{grid-column:2!important;grid-row:1!important}.home-newsletter-section .newsletter-form-balanced .form-row-full{grid-column:1/-1!important}.home-newsletter-section .newsletter-button-row .btn{width:100%!important}}

.rb-home-hours{margin:clamp(66px,6.6vw,92px) 0 0!important;padding:0!important}
.rb-home-hours,
.rb-home-hours *{box-sizing:border-box}
/* Wichtig: Die normale .container-Breite der Website bleibt unangetastet. */
.rb-home-hours__wrap{margin-left:auto!important;margin-right:auto!important}
.rb-home-hours__card{width:100%!important;margin:0!important;padding:clamp(28px,3vw,38px)!important;border:1px solid rgba(188,38,37,.38)!important;border-radius:20px!important;background:linear-gradient(160deg,rgba(25,23,27,.98),rgba(11,12,15,.99))!important;box-shadow:0 16px 38px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.035)!important;position:relative!important;overflow:hidden!important}
.rb-home-hours__card:before{content:""!important;position:absolute!important;left:0!important;top:0!important;width:100%!important;height:3px!important;background:linear-gradient(90deg,#bc2625 0%,rgba(188,38,37,.55) 52%,rgba(188,38,37,.08) 100%)!important}
.rb-home-hours__head{text-align:center!important;margin:0 0 24px!important;padding:0!important}
.rb-home-hours__head h2{margin:0!important;padding:0!important;color:#fff!important;font-size:clamp(1.38rem,2vw,1.7rem)!important;line-height:1.2!important;font-weight:900!important}
.rb-home-hours__grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-template-rows:auto auto!important;gap:8px!important;width:100%!important;min-width:0!important}
.rb-home-hours__day,
.rb-home-hours__time{min-width:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;border-radius:13px!important;border:1px solid rgba(255,255,255,.08)!important;white-space:nowrap!important}
.rb-home-hours__day{grid-column:var(--col)!important;grid-row:1!important;padding:13px 6px!important;background:rgba(255,255,255,.035)!important;color:#fff!important;font-size:.93rem!important;font-weight:950!important;letter-spacing:.01em!important}
.rb-home-hours__day.is-today{background:linear-gradient(180deg,rgba(51,156,88,.14),rgba(51,156,88,.055))!important;color:#8fe3a9!important}
.rb-home-hours__time{grid-column:var(--col)!important;grid-row:2!important;padding:15px 6px!important;background:linear-gradient(180deg,rgba(51,156,88,.14),rgba(51,156,88,.055))!important;color:#8fe3a9!important;font-size:.95rem!important;font-weight:850!important;font-variant-numeric:tabular-nums!important;letter-spacing:.012em!important}
.rb-home-hours__time.is-closed{background:linear-gradient(180deg,rgba(188,38,37,.16),rgba(188,38,37,.06))!important;color:#f09a99!important;border-color:rgba(188,38,37,.24)!important}
@media(max-width:760px){
  .rb-home-hours{margin-top:52px!important}
  .rb-home-hours__card{padding:24px 16px 26px!important;border-radius:18px!important}
  .rb-home-hours__head{margin-bottom:18px!important}
  .rb-home-hours__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:repeat(7,auto)!important;gap:8px 10px!important}
  .rb-home-hours__day{grid-column:1!important;grid-row:var(--row)!important;justify-content:flex-start!important;text-align:left!important;padding:12px 14px!important;font-size:.94rem!important;font-weight:950!important}
  .rb-home-hours__time{grid-column:2!important;grid-row:var(--row)!important;justify-content:flex-end!important;text-align:right!important;padding:12px 14px!important;font-size:.92rem!important}
}
@media(max-width:390px){
  .rb-home-hours__card{padding:22px 12px 24px!important}
  .rb-home-hours__grid{gap:7px!important}
  .rb-home-hours__day,
.rb-home-hours__time{padding:11px 10px!important;font-size:.87rem!important}
}

.rb-home-hours__training-label{margin-top:6px!important;opacity:0!important;visibility:hidden!important;transform:translateY(3px)!important;pointer-events:none!important}
.rb-home-hours__line{display:inline-flex!important;align-items:baseline!important;justify-content:center!important;white-space:nowrap!important;min-width:0!important}
.rb-home-hours__start{display:inline-flex!important;align-items:baseline!important;white-space:nowrap!important}
.rb-home-hours__hour,
.rb-home-hours__minute,
.rb-home-hours__rest{font:inherit!important;white-space:nowrap!important}
.rb-home-hours__hour,
.rb-home-hours__minute{display:inline-block!important;color:inherit!important;opacity:1!important}
.rb-home-hours__rest{color:inherit!important}
.rb-home-hours__title-icon{display:inline-block!important;width:.86em!important;height:.86em!important;margin-left:.28em!important;vertical-align:-.08em!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;opacity:.9!important}
.rb-home-hours__title-icon--start{width:.82em!important;height:.82em!important}
@media(max-width:760px){.rb-home-hours__line{justify-content:flex-end!important}}
@media(prefers-reduced-motion:reduce){.rb-home-hours__training-label{display:none!important}}

/* v1223: mehr Luft zwischen Vereinsmarke/Slogan und Einleitungstext. */
html body .page-slug-home .rb-home-focus-copy{
  margin-top:clamp(26px,3.2vw,42px)!important;
}
@media(max-width:760px){
  html body .page-slug-home .rb-home-focus-copy{margin-top:30px!important;}
}


/* v1229/v1230 – Startseiten-Hero mit mehr Luft; v1230 lässt die bewährten dunklen Titel-/Textflächen vollständig erhalten. */
html body .site-main.page-slug-home > section.hero.rb-home-hero-section{
  padding-top:14px!important;
}
html body .page-slug-home .hero-card.rb-home-hero-gallery{
  border-radius:22px!important;
}
html body .page-slug-home .hero-card.rb-home-hero-gallery .home-hero-intro{
  margin-top:clamp(20px,3vw,30px)!important;
}
@media(max-width:760px){
  html body .site-main.page-slug-home > section.hero.rb-home-hero-section{
    padding-top:12px!important;
  }
  html body .page-slug-home .hero-card.rb-home-hero-gallery{
    border-radius:20px!important;
  }
  html body .page-slug-home .rb-hero-brand-schedule{
    column-gap:14px!important;
    row-gap:18px!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  html body .page-slug-home .rb-hero-brand-schedule>.rb-hero-day{
    margin:0!important;
  }
  html body .page-slug-home .rb-hero-brand-schedule .hero-title-home{
    margin:0 auto!important;
  }
  html body .page-slug-home .hero-card.rb-home-hero-gallery .home-hero-intro{
    margin-top:24px!important;
    width:min(94%,620px)!important;
  }
}
@media(max-width:390px){
  html body .page-slug-home .rb-hero-brand-schedule{
    column-gap:10px!important;
    row-gap:16px!important;
  }
}
