@media(min-width:1001px) and (max-width:1220px){
  .navigation{gap:clamp(11px,1.25vw,16px)}
  .navigation>a:not(.button){font-size:.76rem}
}
.hero-scene{position:absolute;inset:0;overflow:hidden;opacity:0;clip-path:inset(0 0 0 12%);transition:opacity .53s ease,clip-path .72s cubic-bezier(.21,.63,.25,1)}
.hero-scene[data-active]{opacity:1;clip-path:inset(0)}
.hero-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.scene-kraut>img{left:10%;object-position:50% 49%}
.scene-praxis>img{object-position:58% 46%}
.scene-online{display:grid;place-items:center end;padding-right:7%;color:var(--blue);background:radial-gradient(ellipse at 70% 41%,var(--teal),var(--petrol) 65%)}
.scene-online .portals{width:min(50vw,800px);max-height:78%;opacity:.8}
.hero-room-control{position:absolute;right:41px;bottom:39px;z-index:3;width:min(450px,37%);color:var(--ivory);container-type:inline-size}
.hero-room-link{display:flex;align-items:center;gap:8px;padding:8px 11px 9px;border:1px solid #fbfaf75c;background:#152d3dc4;color:var(--ivory);font:760 .65rem/1.3 var(--ui);letter-spacing:.08em;text-transform:uppercase}
.hero-room-link>span:first-child{width:5px;height:5px;background:var(--warm);border-radius:50%;flex:0 0 auto}
.hero-room-action{margin-left:auto;color:var(--blue);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.hero-room-options{display:none}
.js .hero-room-options{display:grid;grid-template-columns:.95fr 1.5fr .7fr;gap:1px;background:#fbfaf75c}
.hero-room-options button{display:flex;align-items:center;gap:6px;min-width:0;min-height:44px;padding:7px 10px;text-align:left;background:#203a4beb;color:var(--ivory);border:0;cursor:pointer;font:740 .74rem/1.2 var(--ui)}
.hero-room-options button:hover,.hero-room-options button[aria-pressed="true"]{background:var(--blue);color:var(--petrol)}
.hero-room-options button span{font-size:.59rem;opacity:.84}
@container(max-width:330px){
  .hero-room-options button{font-size:.7rem;padding-inline:6px;justify-content:center;text-align:center}
  .hero-room-options button span{display:none}
}
.hero-room-options button:focus-visible,.hero-room-link:focus-visible{outline:2px solid var(--white);outline-offset:-3px}

.home-course{background:var(--petrol);color:var(--ivory);overflow:hidden}
.home-course-inner{display:grid;grid-template-columns:.86fr 1.14fr;align-items:stretch}
.home-course-inner>div:first-child{padding:clamp(37px,5vw,88px) clamp(22px,4vw,66px) clamp(37px,5vw,88px) 0}
.home-course h2{color:var(--ivory);font-size:clamp(2.3rem,4.65vw,5.1rem);max-width:15ch}
.home-course p:not(.eyebrow){color:var(--blue);max-width:39ch;margin:12px 0 17px}
.home-course-visual{position:relative;min-height:280px}
.home-course-visual img{position:absolute;inset:0}
.home-team{background:var(--pale)}
.home-team-inner{display:grid;grid-template-columns:.78fr 1.22fr;align-items:center;gap:clamp(20px,5vw,86px)}
.home-team-inner p:not(.eyebrow){max-width:36ch;color:var(--muted);margin:15px 0 19px}
.home-team-faces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px}
.home-team-faces img{aspect-ratio:.88;height:auto;object-position:center 31%;background:var(--white);transition:translate .35s}
.home-team-faces img:nth-child(2){translate:0 -14px}
.home-team-faces img:hover{translate:0 -19px}

.coach-stage,.price-stage,.recovery-stage,.about-stage,.nutrition-stage{padding-block:clamp(40px,6.5vw,100px);background:var(--pale)}
.coach-heading{margin-bottom:clamp(25px,3.7vw,57px)}
.coach-heading .page-intro h1{font-size:clamp(3rem,5.35vw,6.6rem);text-wrap:wrap}
.coach-heading .page-intro>p:not(.eyebrow){max-width:56ch}
.coach-gallery{display:grid;grid-template-columns:minmax(160px,.2fr) minmax(0,1fr);gap:clamp(11px,2vw,29px)}
.coach-tabs{display:grid;gap:2px;align-content:start;border-top:1px solid var(--rule)}
.coach-tab{display:grid;grid-template-columns:48px 1fr;gap:11px;align-items:center;min-height:62px;color:var(--petrol);font:780 .86rem/1.15 var(--ui);padding:7px 9px;border-bottom:1px solid var(--rule);transition:background .23s}
.coach-tab img{width:48px;height:48px;object-position:50% 32%}
.coach-tab:hover,.coach-tab[aria-selected="true"]{background:var(--blue)}
.coach-tab:focus-visible{outline-offset:-3px}
.coach-profile{grid-column:2;min-width:0;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);background:var(--white);min-height:405px}
.coach-photo{overflow:hidden;position:relative;background:var(--blue);isolation:isolate;min-height:340px}
.coach-photo img{position:absolute;inset:0;object-position:50% 32%;mix-blend-mode:multiply}
.coach-photo>span{position:absolute;left:14px;bottom:14px;padding:6px 8px;color:var(--petrol);background:var(--ivory);font:750 .69rem/1.4 var(--ui);letter-spacing:.1em}
.coach-story{padding:clamp(20px,3.6vw,60px);align-self:center}
.coach-story .eyebrow{margin-bottom:14px}
.coach-story h2{font-size:clamp(2.6rem,4.7vw,5.9rem)}
.coach-story>p{color:var(--muted);margin-top:12px}
.coach-story ul{list-style:none;margin:16px 0;padding:0;display:flex;flex-wrap:wrap;gap:5px}
.coach-story li{padding:5px 8px;background:var(--pale);color:var(--petrol);font:720 .72rem/1.4 var(--ui)}
.js .coach-profile:not([hidden]) .coach-story{animation:coach-copy .43s ease-out both}
.js .coach-profile:not([hidden]) .coach-photo img{animation:coach-portrait .57s cubic-bezier(.21,.63,.25,1) both}
@keyframes coach-copy{from{opacity:.52;translate:9px 0}to{opacity:1;translate:0}}
@keyframes coach-portrait{from{scale:1.08;opacity:.64}to{scale:1;opacity:1}}

.schedule-stage{background:var(--petrol);color:var(--ivory);overflow:hidden}
.schedule-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch}
.schedule-heading .page-intro{padding:clamp(36px,5.6vw,88px) 15px clamp(37px,5.6vw,88px) 0}
.schedule-heading h1,.schedule-heading .page-intro .eyebrow{color:var(--ivory)}
.schedule-heading .page-intro>p:not(.eyebrow){color:var(--blue)}
.schedule-heading figure{min-height:310px;position:relative}
.schedule-heading img{position:absolute;inset:0;object-position:63% 50%}
.schedule-content{padding-top:clamp(44px,6.1vw,90px)}
.schedule-header{display:flex;justify-content:space-between;gap:12px;align-items:end}
.schedule-header>p{font-size:.83rem;color:var(--muted)}
.schedule-board{margin-top:24px}
.schedule-board .habit-tabs{margin-bottom:0}
.course-week{border-inline:1px solid var(--rule);background:var(--white)}
.course-day{display:grid;grid-template-columns:minmax(135px,.27fr) minmax(0,1fr);border-bottom:1px solid var(--rule)}
.course-day h3{display:grid;align-content:start;gap:3px;font-size:clamp(1.22rem,1.8vw,1.8rem);padding:16px 13px;background:var(--pale);letter-spacing:-.03em}
.course-day h3 span{font:760 .69rem/1.5 var(--ui);letter-spacing:.1em;color:var(--action)}
.course-day ul{margin:0;list-style:none;padding:0}
.course-day li{display:grid;grid-template-columns:57px minmax(70px,.36fr) minmax(125px,1fr) minmax(93px,.45fr) auto;align-items:center;gap:clamp(7px,1.25vw,16px);padding:16px;color:var(--petrol)}
.course-day li+li{border-top:1px solid var(--rule)}
.course-day time{font:780 1rem/1.2 var(--ui)}
.course-end,.course-location{font-size:.73rem;color:var(--muted)}
.course-day li strong{font-size:.92rem}
.course-day .text-link{white-space:nowrap}
.js .course-week:not([hidden]){animation:panel-in .33s ease-out both}
.live-schedule{margin-top:clamp(28px,5vw,72px);background:var(--pale);border-top:2px solid var(--teal);padding:clamp(20px,3vw,43px)}
.live-schedule h2{font-size:clamp(2.1rem,3.6vw,3.9rem)}
.live-schedule header>p:not(.eyebrow){margin-top:10px;color:var(--muted)}
.live-actions{display:flex;flex-wrap:wrap;gap:10px 15px;align-items:center;margin-top:15px}
.live-actions button{display:none;cursor:pointer}
.js .live-actions button{display:inline-flex}
.live-actions button:disabled{cursor:default;opacity:.86}
[data-course-frame] iframe{display:block;width:100%;height:600px;border:0;margin-top:19px;background:var(--white)}

.recovery-stage .page-intro{margin-bottom:25px}
.recovery-switch .habit-tabs{margin-bottom:0}
.recovery-panel{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);background:var(--petrol);color:var(--ivory);min-height:420px}
.recovery-panel figure{display:grid;position:relative;overflow:hidden;min-height:340px}
.recovery-panel figure img{height:100%;min-height:0;object-position:50% 52%}
.recovery-kombi figure{grid-template-columns:1fr 1fr}
.recovery-kombi figure img:first-child{object-position:56% center}
.recovery-copy{display:grid;align-content:center;justify-items:start;padding:clamp(22px,4vw,68px)}
.recovery-copy .eyebrow,.recovery-copy>p:not(.eyebrow){color:var(--blue)}
.recovery-copy h2{color:var(--ivory);font-size:clamp(2.35rem,4.5vw,5.3rem)}
.recovery-copy>p:not(.eyebrow){margin-top:12px}
.recovery-copy>strong{font:480 clamp(1.8rem,3vw,3.8rem)/1 var(--serif);margin:18px 0 13px}
.recovery-waerme .recovery-copy .eyebrow span{background:var(--warm)}
.js .recovery-panel:not([hidden]) figure img{animation:coach-portrait .58s cubic-bezier(.21,.63,.25,1) both}
.js .recovery-panel:not([hidden]) .recovery-copy{animation:coach-copy .46s ease-out both}

.price-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(13px,2.5vw,37px);margin-top:clamp(22px,4vw,60px)}
.price-table,.price-group{padding:clamp(20px,3.1vw,48px);background:var(--white)}
.price-group{background:var(--petrol);color:var(--ivory)}
.price-grid h2{font-size:clamp(2rem,3.45vw,4.2rem)}
.price-group h2{color:var(--ivory)}
.price-group .eyebrow{color:var(--blue)}
.price-grid article p:not(.eyebrow){margin:11px 0 15px}
.price-table table{width:100%;border-collapse:collapse;margin:0 0 20px;text-align:left;color:var(--petrol)}
.price-table th,.price-table td{padding:8px 4px;border-bottom:1px solid var(--rule);font-size:.91rem}
.price-table th:first-child{padding-left:0}
.price-group dl{margin:0 0 20px}
.price-group dl div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #fbfaf760}
.price-group dd{margin:0;font-weight:700}
.sr-text{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--column-space)}
.about-grid>.page-intro h1{font-size:clamp(2.55rem,5vw,5.85rem)}
.nutrition-stage .page-intro{container-type:inline-size}
.nutrition-stage .page-intro h1{font-size:clamp(2.55rem,10.4cqi,5.6rem)}
.price-stage .page-intro h1,.legal-page h1{font-size:clamp(2.55rem,6vw,6.3rem)}
.price-group{container-type:inline-size}
.price-group h2{font-size:clamp(1.86rem,10cqi,4.2rem)}
.founder-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.founder-photos figure{background:var(--blue);overflow:hidden}
.founder-photos figure:nth-child(2){translate:0 23px}
.founder-photos img{height:auto;aspect-ratio:.9;mix-blend-mode:multiply}
.founder-photos figcaption{padding:9px;font:740 .79rem/1.35 var(--ui);color:var(--petrol)}
.about-method>p{margin-top:17px}
.nutrition-stage figure{position:relative;overflow:hidden;min-height:clamp(225px,35vw,480px)}
.nutrition-stage figure img{position:absolute;inset:0}
.legal-page .shell{max-width:880px}
.legal-page h2{font-size:clamp(1.65rem,2.5vw,2.6rem);margin:26px 0 8px}
.legal-page p{color:var(--muted);margin:5px 0}
.legal-page p a{text-decoration:underline}
.legal-page .text-link{margin-top:9px}

@media(max-width:820px){
  .scene-kraut>img{left:0;object-position:66% 48%}
  .scene-online{place-items:center;padding:0}
  .scene-online .portals{width:78%;max-height:83%}
  .hero-room-control{left:24px;right:24px;bottom:20px;width:auto;max-width:420px}
  .home-course-inner,.home-team-inner,.schedule-heading,.price-grid,.about-grid{grid-template-columns:1fr}
  .home-course-inner>div:first-child,.schedule-heading .page-intro{padding-right:0}
  .home-course-visual,.schedule-heading figure{min-height:clamp(175px,49vw,350px)}
  .coach-gallery{grid-template-columns:1fr}
  .coach-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .coach-profile{grid-column:1}
  .coach-photo{min-height:270px}
  .course-day li{grid-template-columns:47px minmax(63px,.4fr) minmax(94px,1fr) auto;padding:12px}
  .course-location{display:none}
}
@media(max-width:560px){
  .hero-room-control{left:18px;right:18px;bottom:14px}
  .hero-room-options button{font-size:.69rem;padding-inline:7px}
  .hero-room-options button span{font-size:.52rem}
  .home-course-inner>div:first-child{padding-block:34px 24px}
  .home-team-faces img:nth-child(2){translate:0 -5px}
  .coach-heading .page-intro h1{font-size:clamp(2.5rem,9vw,3.8rem)}
  .coach-profile,.recovery-panel{grid-template-columns:1fr}
  .coach-tab{grid-template-columns:35px 1fr;gap:5px;min-height:46px;padding:5px 3px;font-size:.74rem}
  .coach-tab img{width:35px;height:35px}
  .coach-photo{min-height:0;aspect-ratio:1.23}
  .coach-photo img{object-position:50% 31%}
  .recovery-panel figure{min-height:210px;max-height:270px}
  .schedule-header{display:grid;gap:6px}
  .schedule-board .habit-tabs,.recovery-switch .habit-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .recovery-switch .habit-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .schedule-board .habit-tab,.recovery-switch .habit-tab{white-space:normal}
  .course-day{grid-template-columns:1fr}
  .course-day h3{display:flex;align-items:center;gap:9px;padding:10px 12px}
  .course-day li{grid-template-columns:44px minmax(0,1fr) auto;align-items:start}
  .course-end{grid-column:1;grid-row:2;white-space:nowrap;font-size:.65rem}
  .course-day li .text-link{font-size:.72rem}
  .founder-photos figure:nth-child(2){translate:0 10px}
}
@media(prefers-reduced-motion:reduce){
  .hero-scene,.business-map circle{transition:none}
  .js .coach-profile:not([hidden]) .coach-story,.js .coach-profile:not([hidden]) .coach-photo img,
  .js .recovery-panel:not([hidden]) figure img,.js .recovery-panel:not([hidden]) .recovery-copy{animation:none}
}
.live-status:not(:empty){margin-top:10px;color:var(--muted);font-size:.83rem}
.bgm-program{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:center}
.bgm-program p:not(.eyebrow){max-width:49ch;margin:13px 0;color:var(--muted)}
.bgm-program ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}
.bgm-program li{padding:10px 0;border-bottom:1px solid var(--rule);color:var(--petrol);font:730 .88rem var(--ui)}
@media(max-width:730px){.bgm-program{grid-template-columns:1fr}}
@media(max-width:820px){
  .course-location{display:block;grid-column:3;grid-row:2}
  .course-day li .text-link{grid-column:4;grid-row:1/3}
  .course-day li{row-gap:3px}
}
@media(max-width:560px){
  .course-location{grid-column:2}
  .course-day li .text-link{grid-column:3}
}
