/* Bachata Sense 50.39 — the visual rhythm of the approved film. */
@font-face{font-family:Sense UI;src:url('fonts/sense-ui.otf') format('opentype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Sense UI;src:url('fonts/sense-ui-bold.otf') format('opentype');font-style:normal;font-weight:600 900;font-display:swap}
@font-face{font-family:Sense Display;src:url('fonts/sense-display.otf') format('opentype');font-style:italic;font-weight:400;font-display:swap}
html:has(.b539),body:has(.b539){background:#0b0e10;color-scheme:dark}
.b51.b80.b90.b94.b539{--bg:#0b0e10;--panel:#14191c;--panel2:#1b2023;--cream:#f3f0e9;--ink:#f3f0e9;--muted:#b7b8b2;--gold:#d6c2a0;--gold2:#bfa784;--line:#d6c2a02f;background:#0b0e10;color:#f3f0e9;font-family:Sense UI,Arial,sans-serif;line-height:1.65}
.b539 :is(button,input,select,textarea){font-family:inherit}
.b51.b80.b90.b94.b539 :is(h1,h2,h3,h4){color:#f3f0e9;font-family:Sense UI,Arial,sans-serif;letter-spacing:-.035em;text-wrap:balance}
.b51.b80.b90.b94.b539 em{font-family:Sense Display,Georgia,serif;font-weight:400;color:#d6c2a0;font-style:italic}
.b51.b80.b90.b94.b539 :is(.b51-kicker,.b51-tag,.b51-fine){color:#bfb6a5}
.b51.b80.b90.b94.b539 :is(.b51-kicker,.bs537-eyebrow){font-size:11px;letter-spacing:.16em;line-height:1.6}
.b51.b80.b90.b94.b539 .b51-header{background:#0b0e10ec;border-color:#d6c2a024;backdrop-filter:blur(18px)}
.b51.b80.b90.b94.b539 .b51-brand span{font-size:12px;letter-spacing:.16em;font-weight:700}
.b51.b80.b90.b94.b539 :is(.b51-header nav>a,.b51-footer a){color:#c5c3bc}
.b51.b80.b90.b94.b539 :is(.b51-header nav>a,.b51-footer a):hover{color:#f3f0e9}
.b51.b80.b90.b94.b539 .b51-hero{background:radial-gradient(ellipse at 20% 20%,#d6c2a009,transparent 47%),#0b0e10}
.b51.b80.b90.b94.b539 .b51-hero-copy h1{font-size:clamp(48px,4.5vw,76px);font-weight:700;line-height:1.02;letter-spacing:-.047em;margin-bottom:28px}
.b51.b80.b90.b94.b539 .b51-hero-copy>p{color:#b7b8b2;font-size:clamp(16px,1.2vw,18px);line-height:1.75;max-width:38em}
.b51.b80.b90.b94.b539 .b51-section{padding-block:clamp(62px,7.5vw,112px);border-color:#d6c2a024;background-color:transparent;scroll-margin-top:100px}
.b51.b80.b90.b94.b539 .b51-section-head{gap:24px 48px;align-items:end;margin-bottom:40px}
.b51.b80.b90.b94.b539 .b51-section-head h2{font-size:clamp(34px,4.2vw,64px);font-weight:700;line-height:1.08}
.b51.b80.b90.b94.b539 .b51-section-head>p{max-width:36em;color:#b7b8b2;font-size:16px;line-height:1.75}
.b51.b80.b90.b94.b539 .bs538-home-account{background:transparent;box-shadow:none;border:0;border-block:1px solid #d6c2a03b;border-radius:0;padding:26px 0;margin-block:32px}
.b51.b80.b90.b94.b539 .bs538-home-account h2{font-size:clamp(25px,2.5vw,35px);line-height:1.13}
.b51.b80.b90.b94.b539 .b51-button{background:#d6c2a0;color:#111518;border:1px solid #d6c2a0;border-radius:6px;box-shadow:none;min-height:48px;padding:14px 22px;font-weight:700;line-height:1.35;transition:background .25s ease,transform .35s ease}
.b51.b80.b90.b94.b539 .b51-button:hover{background:#e5d4b6;transform:translateY(-2px)}
.b51.b80.b90.b94.b539 .b51-textlink{color:#d6c2a0;text-underline-offset:6px}
.b51.b80.b90.b94.b539 :is(.b104-choice,.b54-route-result,.b54-merge,.b51-card,.b51-offer,.b51-detail,.b51-event,.b51-week){border-color:#d6c2a030;box-shadow:none;background-color:#111619}
.b51.b80.b90.b94.b539 .b104-choice{border-radius:8px;transform:none;overflow:hidden}
.b51.b80.b90.b94.b539 .b104-choice::after{background:linear-gradient(180deg,#0b0e1010,#0b0e10e8)}
.b51.b80.b90.b94.b539 .b104-choice img{filter:saturate(.8);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.b51.b80.b90.b94.b539 .b104-choice:hover img{transform:scale(1.025)}
.b51.b80.b90.b94.b539 .b104-choice-copy strong{font-size:clamp(23px,2.3vw,33px);font-weight:700;line-height:1.1}
.b51.b80.b90.b94.b539 :is(.b96-moment,.b96-profile,.b96-teaching){transform:none;border-radius:8px;border-color:#d6c2a030;background:#0b0e10;box-shadow:none;overflow:hidden}
.b51.b80.b90.b94.b539 .b96-profile{aspect-ratio:4/5;max-height:650px}
.b51.b80.b90.b94.b539 .b96-profile video{object-fit:cover;object-position:50% 39%;filter:saturate(.88)}
.b51.b80.b90.b94.b539 .b96-teaching{aspect-ratio:3/4;max-height:430px;min-height:0}
.b51.b80.b90.b94.b539 .b96-teaching video{object-fit:cover!important;object-position:center 44%;filter:saturate(.88)}
.b51.b80.b90.b94.b539 :is(.b96-moment figcaption,.b96-moment [data-moment-toggle]){color:#f3f0e9}
.b51.b80.b90.b94.b539 :is(.b54-route-switch button,.b51-method-nav button,.b51-offer,.b51-card){background:#14191c;border-color:#d6c2a02f;color:#f3f0e9;border-radius:6px}
.b51.b80.b90.b94.b539 :is(.b54-route-switch button[aria-pressed=true],.b51-method-nav button[aria-selected=true]){background:#d6c2a012;border-color:#d6c2a08a;color:#eadbc0}
.b51.b80.b90.b94.b539 .b54-merge{border:0;background:transparent;border-top:1px solid #d6c2a045;padding:26px 0}
.b51.b80.b90.b94.b539 .b54-merge svg{color:#d6c2a0}
.b51.b80.b90.b94.b539 .b54-community-signature{padding:48px 32px!important;min-height:480px;background:#0b0e10;border:1px solid #d6c2a02b;border-radius:8px}
.b51.b80.b90.b94.b539 .b54-community-signature>.b96-community{inset:0;opacity:.36;border-radius:0;mask-image:linear-gradient(180deg,transparent,#000 15%,#000 80%,transparent)}
.b51.b80.b90.b94.b539 .b96-community video{object-fit:cover;object-position:center;filter:saturate(.55) brightness(.74)}
.b51.b80.b90.b94.b539 .b54-community-signature .b51-community-manifesto{font-size:clamp(34px,3.8vw,56px);line-height:1.05;letter-spacing:-.035em;margin:0 0 32px}
.b51.b80.b90.b94.b539 .b54-social-map{max-width:560px;margin:20px auto 0}
.b51.b80.b90.b94.b539 .b54-social-map>span{font-size:10px;letter-spacing:.08em;color:#d6c2a0}
.b51.b80.b90.b94.b539 .b54-social-map strong{font-size:20px;letter-spacing:.02em;color:#f3f0e9}
.b51.b80.b90.b94.b539 .b54-social-map small{font-size:11px;color:#d6c2a0;letter-spacing:.08em}
.b51.b80.b90.b94.b539 .b54-social-map svg{width:100%;height:auto;overflow:visible;color:#d6c2a0}
.b51.b80.b90.b94.b539 :is(.b82-stage,.b82-step-panel,.b85-exercise-picker select,.b82-view,.b87-posture,.b51-trainer,.b90-music-stage,.b90-sound-panel){background:#11171b;border-color:#d6c2a033;color:#f3f0e9}
.b51.b80.b90.b94.b539 .b82-movement .b82-art{background:radial-gradient(ellipse at 50% 40%,#243039 0,#10181e 52%,#0b0e10 85%)}
.b51.b80.b90.b94.b539 input[type=range]{accent-color:#d6c2a0}
.b51.b80.b90.b94.b539 .b51-contact:has(.b97-contact-scenery){isolation:isolate;background:#0b0e10;min-height:610px}
.b51.b80.b90.b94.b539 .b97-contact-scenery{left:42%;right:0;width:58%;opacity:.55;border:0;border-radius:0;mask-image:linear-gradient(90deg,transparent,#000 30%),linear-gradient(180deg,transparent,#000 20%,#000 75%,transparent);mask-composite:intersect}
.b51.b80.b90.b94.b539 .b97-contact-scenery video{object-fit:cover;object-position:center;filter:saturate(.65) brightness(.7)}
.b51.b80.b90.b94.b539 .b51-contact h2{font-size:clamp(40px,5.8vw,78px);font-weight:700;line-height:1.05;max-width:12em}
.b51.b80.b90.b94.b539 .b51-footer{background:#0b0e10;border-color:#d6c2a02f}
/* A complete, uncropped film with a clear opt-in to its music. */
.b51.b80.b90.b94.b539 figure.b539-film{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,440px);align-items:center;gap:clamp(32px,5vw,80px);max-width:1100px!important;margin:70px auto 50px;padding:clamp(24px,4vw,56px);border:1px solid #d6c2a033;border-radius:8px;background:radial-gradient(ellipse at 30% 40%,#d6c2a009,transparent 65%),#0e1316;box-shadow:none;width:100%}
.b51.b80.b90.b94.b539 .b539-film .b68-film-viewport{grid-column:2;grid-row:1;position:relative;width:100%;max-width:none;height:auto;aspect-ratio:27/34;border-radius:5px;margin:0;mask-image:none;transform:none;background:#0b0e10;overflow:hidden}
.b51.b80.b90.b94.b539 .b539-film video{display:block;position:relative;inset:auto;width:100%;height:100%;aspect-ratio:27/34;object-fit:contain;transform:none}
.b51.b80.b90.b94.b539 .b539-film .b65-film-copy{display:flex!important;flex-direction:column;align-items:flex-start;text-align:left;gap:18px;grid-column:1;grid-row:1;padding:0;margin:0;border:0;max-width:28em}
.b51.b80.b90.b94.b539 .b539-film .b65-film-copy>small{font-size:11px;letter-spacing:.17em;color:#d6c2a0}
.b51.b80.b90.b94.b539 .b539-film .b65-film-copy>strong{font-size:clamp(37px,4vw,62px);font-weight:700;line-height:1.02;letter-spacing:-.04em;margin:0}
.b51.b80.b90.b94.b539 .b539-film .b65-film-copy>strong em{display:block;margin:8px 0 0;line-height:1.05;font-size:1.07em}
.b51.b80.b90.b94.b539 .b539-film .b539-film-description{font-size:16px;color:#b7b8b2;line-height:1.75;margin:0}
.b51.b80.b90.b94.b539 .b539-film .b539-film-meta{font-size:12px;letter-spacing:.03em;color:#d6c2a0;margin:2px 0 0}
.b51.b80.b90.b94.b539 .b539-film .b88-film-actions{margin:0;display:flex;gap:8px;flex-wrap:wrap}
.b51.b80.b90.b94.b539 .b539-film .b88-film-actions button{border:1px solid #d6c2a040;background:#d6c2a007;color:#f3f0e9;font-size:12px;border-radius:5px;min-height:44px;padding:10px 16px}
.b51.b80.b90.b94.b539 .b539-film :is(.b69-film-play,.b100-film-play){position:absolute;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:10px;width:max-content;max-width:90%;padding:15px 18px;background:#0b0e10e6;color:#f3f0e9;border:1px solid #d6c2a085;border-radius:6px;font-size:13px;box-shadow:0 8px 32px #0004;backdrop-filter:blur(10px)}
.b51.b80.b90.b94.b539 .b539-film [data-film-play][hidden]{display:none!important}
.b51.b80.b90.b94.b539 .b539-film [data-film-play] small{font-size:11px;color:#d6c2a0}
.b51.b80.b90.b94.b539 .b539-film [data-film-error]{grid-column:1/-1;color:#e7c5b1}
.b51.b80.b90.b94.b539 .b539-film .b69-film-fallback{font-size:13px;color:#d6c2a0}
@media(max-width:900px){.b51.b80.b90.b94.b539 figure.b539-film{grid-template-columns:minmax(0,1fr) minmax(240px,360px);gap:30px;padding:28px}.b51.b80.b90.b94.b539 .b51-hero-copy h1{font-size:52px}}
@media(max-width:680px){
 .b51.b80.b90.b94.b539 .b51-hero-copy h1{font-size:clamp(39px,10.5vw,53px);line-height:1.06;margin-bottom:22px}
 .b51.b80.b90.b94.b539 .b51-section{padding-block:58px;scroll-margin-top:82px}
 .b51.b80.b90.b94.b539 .b51-section-head{gap:18px;margin-bottom:28px}
 .b51.b80.b90.b94.b539 .b51-section-head h2{font-size:clamp(33px,8.7vw,44px);line-height:1.1}
 .b51.b80.b90.b94.b539 .b51-section-head>p{font-size:15px}
 .b51.b80.b90.b94.b539 .b96-teaching{max-height:360px}
 .b51.b80.b90.b94.b539 .b54-community-signature{padding:32px 24px!important;min-height:420px}
 .b51.b80.b90.b94.b539 .b54-social-map>span{font-size:9px}
 .b51.b80.b90.b94.b539 .b97-contact-scenery{left:0;width:100%;opacity:.25;mask-image:linear-gradient(180deg,transparent,#000 25%,#000 70%,transparent)}
 .b51.b80.b90.b94.b539 .b51-contact:has(.b97-contact-scenery){min-height:540px}
 .b51.b80.b90.b94.b539 figure.b539-film{display:flex;flex-direction:column;align-items:stretch;margin:42px 0;padding:24px 18px;gap:28px}
 .b51.b80.b90.b94.b539 .b539-film .b65-film-copy{order:0;max-width:none;gap:13px}
 .b51.b80.b90.b94.b539 .b539-film .b65-film-copy>strong{font-size:42px}
 .b51.b80.b90.b94.b539 .b539-film .b539-film-description{font-size:15px}
 .b51.b80.b90.b94.b539 .b539-film .b68-film-viewport{order:1;width:100%;max-width:440px;align-self:center}
}
@media(prefers-reduced-motion:reduce){.b539 *{scroll-behavior:auto!important}.b539 .b104-choice img,.b539 .b51-button{transition:none!important}}

/* Keep the wordmark within its flexible slot on narrow phones. */
@media(max-width:760px){.b51.b80.b90.b94.b539 .b51-brand span{font-size:10px;letter-spacing:.06em}}
@media(max-width:360px){.b51.b80.b90.b94.b539 .b51-brand span{font-size:8.5px;letter-spacing:.04em}}
