:root{--navy:#111;--navy-2:#242424;--red:#ff8800;--mist:#f2f2f2;--ink:#171717;--muted:#595959}
.site-header{background:rgba(15,15,15,.96)}.original-logo{width:55px;height:61px;object-fit:contain;flex-shrink:0}.brand-name small,.footer-brand small{color:#ccc}.nav-cta,.button-primary{color:#111}.main-nav .nav-cta:hover{color:#111;background:#ffa436}.hero{background:#111;min-height:740px;height:auto}.hero-content{padding-top:180px;padding-bottom:160px;min-height:740px}.hero-lead{max-width:620px;color:#ddd}.hero-emblem{position:absolute;right:max(5%,calc((100vw - 1120px)/2));top:200px;z-index:2;padding:38px;background:#202020;border:1px solid #494949;border-bottom:6px solid #f80}.hero-emblem img{width:200px;height:220px;display:block}.hero-overlay{background:linear-gradient(120deg,#111 25%,#272727 100%)}.hero-stats{background:#1d1d1d}.hero-stats span{color:#ccc;font-size:12px}.eyebrow{color:#ff9b29;font-size:14px}.section-kicker{color:#9b4800;font-size:14px}.section-kicker.light{color:#ff9b29}.discipline-number{color:#974600;font-size:14px}.discipline-main .discipline-number{color:#ff9b29}.discipline{min-height:340px;gap:30px}.discipline-main p,.training-copy p{color:#ccc}.offer-link{display:inline-block;margin-top:22px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.training{gap:55px;grid-template-columns:.85fr 1.15fr}.training:before{border-color:rgba(255,136,0,.08)}.schedule-head span{font-size:25px}.schedule-row{gap:20px;font-size:16px}.schedule-row strong{flex:1}.schedule-row small{display:block;font-size:13px;font-weight:400;color:#666}.schedule-row>span{white-space:nowrap;text-align:right}.location span{color:#555}.location strong:not(:first-child){margin-top:8px}.offer-detail{padding-bottom:55px}.offer-detail h2{font-size:clamp(36px,5vw,62px);line-height:1.05;letter-spacing:-.035em;text-transform:uppercase;margin:22px 0}.offer-detail>p{max-width:760px;font-size:18px;color:#555}.photo-strip{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px}.photo-strip img{width:160px;height:160px;object-fit:contain;background:#eee;box-shadow:0 8px 24px #0002}.photo-note{font-size:13px!important;margin-top:20px}.club-visual{background:#171717;padding:32px;flex-direction:column;justify-content:space-between;align-items:flex-start;height:430px}.club-visual:before,.club-visual:after{display:none}.club-visual .photo-strip{margin-top:0;gap:14px}.club-visual blockquote{font-size:28px}.trial{color:#111}.trial-copy p,.trial-actions p,.trial .section-kicker{color:#171717}.button-white{color:#111;background:white}footer{background:#101010}.footer-social{color:#ccc}.footer-bottom{color:#aaa}.main-nav.open{background:#151515}.button:focus-visible,a:focus-visible{outline:3px solid #f80;outline-offset:5px}.text-link{color:#fff}.intro-grid{gap:50px}
@media(min-width:821px){.hero-content h1{font-size:clamp(56px,6.2vw,84px)}}
@media(max-width:1050px) and (min-width:821px){.hero-emblem{right:30px;padding:15px;top:240px}.hero-emblem img{width:145px;height:auto}.hero-lead{max-width:540px}}
@media(max-width:820px){.hero-emblem{display:none}.hero-content{min-height:740px;padding-top:155px}.hero{min-height:740px}.training{grid-template-columns:1fr}.original-logo{width:45px;height:50px}.brand-name strong{font-size:12px}.hero-stats span{font-size:12px}.discipline{min-height:260px}.club-visual{height:auto;min-height:330px;gap:40px}.offer-detail{padding-top:70px}.hero-stats strong{font-size:20px}}
@media(max-width:430px){.photo-strip{gap:12px}.photo-strip img{width:calc(50% - 6px);height:auto;max-width:160px}.schedule-row{display:block}.schedule-row>span{display:block;text-align:left;margin-top:8px}.schedule-row>span br{display:none}.schedule-row>span br:after{content:' '}.club-visual{padding:25px}.brand-name strong{font-size:11px}.hero-actions{margin-top:15px}.hero-stats span{letter-spacing:0}}
.original-logo{width:56px;height:56px;border-radius:50%;background:#fff}
@media(max-width:820px){.original-logo{width:46px;height:46px}}

/* Startseite: Sportangebote und Probetraining im Mittelpunkt */
.hero{min-height:650px;max-height:760px}
.hero-media{background-image:url('/hero-ju-jutsu.png');background-position:center 42%}
.hero-overlay{background:linear-gradient(90deg,rgba(10,10,10,.98) 0%,rgba(10,10,10,.88) 43%,rgba(10,10,10,.34) 72%,rgba(10,10,10,.2) 100%),linear-gradient(0deg,rgba(10,10,10,.72),transparent 45%)}
.hero-content{min-height:650px;padding-top:150px;padding-bottom:110px}
.hero-stats{bottom:26px}
.sport-card-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:22px}
.sport-card{background:#171717;color:#fff;overflow:hidden;min-width:0;box-shadow:0 18px 42px #0002}
.sport-card a{display:grid;height:100%;grid-template-rows:235px 1fr}
.sport-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.sport-card:hover img{transform:scale(1.035)}
.sport-card-copy{padding:28px;display:flex;flex-direction:column;align-items:flex-start}
.sport-card-copy span,.portal-grid span{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#ff9b29;font-weight:800}
.sport-card-copy h3{font-size:clamp(24px,2.4vw,34px);margin:13px 0 12px;line-height:1.05}
.sport-card-copy p{color:#ccc;font-size:16px;margin-bottom:24px}
.sport-card-copy strong{margin-top:auto;color:#fff;border-bottom:2px solid #f80;padding-bottom:5px}
.sport-card-main{border-top:5px solid #f80}
.trial-priority{margin-top:0}
.trial-secondary{font-weight:800;text-decoration:underline;text-underline-offset:5px}
.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;background:#ddd;margin-top:34px}
.portal-grid>a{background:#f4f4f4;padding:34px;min-height:220px;border-top:4px solid #222;transition:.2s}
.portal-grid>a:hover{background:#fff;border-top-color:#f80;transform:translateY(-3px)}
.portal-grid h3{font-size:28px;margin:15px 0 10px}
.portal-grid p{color:#555}
.portal-grid strong{display:inline-block;margin-top:12px}
@media(max-width:1050px){.sport-card-grid{grid-template-columns:1fr 1fr}.sport-card-main{grid-column:1/-1}.sport-card-main a{grid-template-columns:1.1fr 1fr;grid-template-rows:none}.sport-card-main img{min-height:340px}}
@media(max-width:820px){.hero{min-height:720px;max-height:none}.hero-content{min-height:720px}.sport-card-grid{grid-template-columns:1fr}.sport-card-main{grid-column:auto}.sport-card-main a,.sport-card a{grid-template-columns:1fr;grid-template-rows:230px 1fr}.sport-card-main img{min-height:0}.portal-grid{grid-template-columns:1fr}.trial-priority{margin:0}.hero-media{background-position:60% center}}
@media(max-width:430px){.sport-card-copy{padding:24px}.portal-grid>a{padding:26px;min-height:190px}.hero-content h1{font-size:44px}}

/* Show complete sport photos on tablets and phones, including landscape. */
@media (max-width:1100px){
  .sport-card-grid{grid-template-columns:1fr}
  .sport-card-main{grid-column:auto}
  .sport-card a,.sport-card-main a{display:block;height:auto;min-height:0}
  .sport-card img,.sport-card-main img{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain}
}

/* Prominent club name and headroom below the navigation. */
.site-header .brand{min-width:0;gap:12px}
.site-header .brand-name{min-width:0;line-height:1.2}
.site-header .brand-name strong{font-size:20px;font-weight:800;letter-spacing:0;overflow-wrap:anywhere}
.site-header .brand-name small{font-size:16px;font-weight:700;letter-spacing:.12em;color:#ff9b29;margin-top:5px}
.hero .hero-media{top:88px;background-position:center top}
@media(min-width:1101px) and (max-width:1280px){
  .site-header .brand-name strong{font-size:18px}
  .site-header .main-nav{gap:12px}
}
@media(max-width:1100px){
  .site-header .brand{flex:1;margin-right:12px}
  .site-header .menu-button{flex-shrink:0}
  .site-header .brand-name strong{font-size:clamp(13px,3.6vw,20px)}
  .site-header .brand-name small{font-size:clamp(12px,3.3vw,16px);letter-spacing:.08em}
  .hero .hero-media{background-position:72% top}
}
