:root{--gate-ink:#121210;--gate-cream:#f2ede4;--gate-gold:#c59a68;--gate-line:rgba(255,255,255,.18)}
.experience-gate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:28px;background:#0d0d0c;overflow:hidden;color:#fff;opacity:1;visibility:visible;transition:opacity .55s ease,visibility .55s ease}.experience-gate.is-leaving{opacity:0;visibility:hidden;pointer-events:none}.experience-gate-bg{position:absolute;inset:-3%;background:linear-gradient(90deg,rgba(7,7,7,.88),rgba(7,7,7,.3) 52%,rgba(7,7,7,.72)),url('https://classypilates.de/wp-content/uploads/2026/05/Oval_01-scaled.jpg') center/cover no-repeat;filter:saturate(.82) contrast(1.04);transform:scale(1.04);animation:gateBg 12s ease-in-out infinite alternate}.experience-gate:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 74% 24%,rgba(197,154,104,.14),transparent 34%),linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.5));pointer-events:none}.experience-shell{position:relative;z-index:2;width:min(1040px,100%);border:1px solid rgba(255,255,255,.22);border-radius:30px;padding:clamp(26px,4vw,56px);background:linear-gradient(145deg,rgba(16,16,15,.9),rgba(29,28,26,.76));box-shadow:0 45px 120px rgba(0,0,0,.55);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);overflow:hidden}.experience-shell:before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.07),transparent 24%,transparent 72%,rgba(197,154,104,.09));pointer-events:none}.experience-brand{display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:28px}.experience-brand-mark{width:42px;height:42px;border:1px solid rgba(197,154,104,.8);border-radius:50%;display:grid;place-items:center;font:600 11px/1 Manrope;color:#e3bd8d;letter-spacing:-.04em}.experience-brand span:last-child b,.experience-brand span:last-child small{display:block}.experience-brand b{font:600 11px/1 Manrope;letter-spacing:.22em}.experience-brand small{margin-top:5px;font:500 8px/1 Manrope;letter-spacing:.3em;color:rgba(255,255,255,.55)}.experience-intro{text-align:center;max-width:650px;margin:0 auto 34px}.experience-intro .eyebrow{margin-bottom:14px;color:#d8b17e}.experience-intro h2{font:500 clamp(46px,6vw,78px)/.95 'Playfair Display',Georgia,serif;letter-spacing:-.045em;margin:0 0 15px}.experience-intro p{font:400 13px/1.7 Manrope;color:rgba(255,255,255,.62);margin:0}.experience-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.experience-card{position:relative;min-height:330px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.16);display:flex;align-items:flex-end;padding:28px;color:#fff;text-decoration:none;isolation:isolate;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s;background:transparent;font:inherit;text-align:left;cursor:pointer;width:100%;appearance:none;-webkit-appearance:none}.experience-card:before{content:'';position:absolute;inset:0;background-size:cover;background-position:center;z-index:-2;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .4s}.experience-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,8,.05) 18%,rgba(8,8,8,.78) 76%,rgba(8,8,8,.93));z-index:-1}.experience-card.fit:before{background-image:url('https://images.unsplash.com/photo-1517836357463-d25dfeac3438?auto=format&fit=crop&w=1600&q=86')}.experience-card.pilates:before{background-image:url('https://classypilates.de/wp-content/uploads/2026/05/Ladies_02-scaled.jpg')}.experience-card:hover,.experience-card:focus-visible{transform:translateY(-7px);border-color:rgba(216,177,126,.75);box-shadow:0 22px 55px rgba(0,0,0,.25);outline:none}.experience-card:hover:before,.experience-card:focus-visible:before{transform:scale(1.055);filter:saturate(1.08)}.experience-card-content{width:100%}.experience-card-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font:700 9px/1 Manrope;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.65)}.experience-card-icon{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;font-size:16px}.experience-card h3{font:500 clamp(32px,3.5vw,49px)/1 'Playfair Display',Georgia,serif;letter-spacing:-.035em;margin:0 0 8px}.experience-card p{margin:0;color:rgba(255,255,255,.68);font:400 12px/1.6 Manrope;max-width:340px}.experience-card-action{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.18);margin-top:22px;padding-top:17px;font:700 10px/1 Manrope;text-transform:uppercase;letter-spacing:.1em}.experience-card-action i{font-style:normal;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);transition:transform .3s,background .3s}.experience-card:hover .experience-card-action i{transform:translateX(4px);background:#fff;color:#111}.experience-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;font:600 9px/1.4 Manrope;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.4)}.experience-footer strong{color:#d8b17e;font-weight:600}.experience-switch{position:fixed;left:18px;bottom:18px;z-index:120;border:1px solid rgba(21,21,19,.15);background:rgba(244,240,232,.9);backdrop-filter:blur(12px);color:#151513;border-radius:999px;padding:10px 14px;font:700 9px/1 Manrope;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.08);transition:.25s}.experience-switch:hover{transform:translateY(-2px);background:#151513;color:#fff}.experience-gate[aria-hidden="true"]{display:none}body.gate-open{overflow:hidden}@keyframes gateBg{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.09) translate3d(-.8%,.5%,0)}}
@media(max-width:760px){.experience-gate{padding:14px;align-items:end}.experience-shell{border-radius:26px;padding:24px 18px 20px;max-height:94dvh;overflow:auto}.experience-brand{justify-content:flex-start;margin-bottom:18px}.experience-intro{text-align:left;margin-bottom:22px}.experience-intro h2{font-size:46px}.experience-options{grid-template-columns:1fr;gap:11px}.experience-card{min-height:205px;padding:20px}.experience-card h3{font-size:34px}.experience-card p{font-size:11px}.experience-card-action{margin-top:14px;padding-top:13px}.experience-footer{font-size:8px}.experience-switch{left:12px;bottom:82px}.experience-gate-bg{background-position:60% center}}
@media(prefers-reduced-motion:reduce){.experience-gate-bg{animation:none}.experience-card,.experience-card:before,.experience-card-action i{transition:none}}


/* 2026-09-25: full-page experience chooser requested by client */
.experience-gate{
  display:block;
  padding:0;
  background:#171715;
  overflow:auto;
}
.experience-gate:after{display:none}
.experience-gate-bg{display:none!important}
.experience-shell{
  width:100%;
  min-height:100dvh;
  border:0;
  border-radius:0;
  padding:clamp(34px,4.6vw,72px) clamp(28px,6vw,96px) clamp(28px,4vw,58px);
  background:
    radial-gradient(circle at 78% 15%,rgba(197,154,104,.12),transparent 28%),
    linear-gradient(135deg,#151513 0%,#1d1c19 56%,#26231e 100%);
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  align-content:stretch;
}
.experience-shell:before{
  background:
    linear-gradient(120deg,rgba(255,255,255,.035),transparent 24%,transparent 72%,rgba(197,154,104,.06));
}
.experience-brand{
  margin-bottom:clamp(18px,2.4vh,30px);
}
.experience-brand .brand-logo-img{
  width:clamp(82px,7vw,120px);
  height:auto;
}
.experience-intro{
  max-width:900px;
  margin:0 auto clamp(26px,3.5vh,44px);
}
.experience-intro h2{
  font-size:clamp(58px,6.4vw,104px);
  line-height:.9;
  margin-bottom:18px;
}
.experience-intro p{
  font-size:clamp(13px,1vw,16px);
}
.experience-options{
  width:min(1380px,100%);
  margin:0 auto;
  gap:clamp(18px,2vw,30px);
  align-self:stretch;
}
.experience-card{
  min-height:clamp(390px,46vh,590px);
  padding:clamp(28px,3vw,44px);
  border-radius:28px;
}
.experience-card h3{
  font-size:clamp(42px,4vw,68px);
}
.experience-card p{
  max-width:470px;
  font-size:clamp(12px,.95vw,15px);
}
.experience-card-action{
  margin-top:28px;
  padding-top:20px;
  font-size:11px;
}
.experience-footer{
  width:min(1380px,100%);
  margin:clamp(20px,2.5vh,34px) auto 0;
}

@media(max-width:760px){
  .experience-gate{
    padding:0;
    align-items:stretch;
  }
  .experience-shell{
    min-height:100dvh;
    max-height:none;
    overflow:visible;
    border-radius:0;
    padding:24px 16px 22px;
    display:block;
  }
  .experience-brand{
    justify-content:center;
    margin-bottom:18px;
  }
  .experience-intro{
    text-align:center;
    margin-bottom:22px;
  }
  .experience-intro h2{
    font-size:clamp(44px,13vw,62px);
  }
  .experience-options{
    grid-template-columns:1fr;
    gap:14px;
  }
  .experience-card{
    min-height:280px;
    padding:22px;
  }
  .experience-card h3{
    font-size:40px;
  }
  .experience-footer{
    margin-top:20px;
  }
}
