/* Yoga page: one dark, cinematic look. Serif type only, photographs only, nothing empty. */
.yoga-app{--bg:#0c1a24;--surface:#112331;--ink:#f4ecdc;--muted:#bdb29b;--line:rgba(217,185,121,.22);
  --acc:#d9b979;--on-acc:#0c1a24;--hl:#d9b979;--kick:#d9b979;--soft:#1c3446;--glow:rgba(217,185,121,.25);
  --serif:"Literata",Georgia,"Times New Roman",serif;--mono:"Literata",Georgia,serif;--disp:"Cormorant Garamond","Literata",Georgia,serif}
.yoga-app{background:var(--bg)!important;background-image:none!important;color:var(--ink)}
.yoga-app .yoga-wrap{max-width:1240px;gap:clamp(28px,5vw,64px);padding-block:clamp(36px,6vw,90px)}
.yoga-app h1,.yoga-app h2,.yoga-app h3{font-family:var(--disp);font-weight:500;letter-spacing:.005em}
.yoga-app h2{font-size:clamp(28px,3.6vw,44px);line-height:1.08}
.yoga-app .label,.yoga-app .kicker{font-family:var(--serif);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--kick)}
.yoga-app .hint{color:var(--muted)}
.ylux-kick,.ylux-btn{font-family:"Literata",Georgia,serif!important}
/* panels: calm, borderless, hairline only */
.yoga-app .panel,.yoga-app .cue,.yoga-app .player,.yoga-app .pcard,.yoga-app .chip,.yoga-app .maptext .card,.yoga-app .gate,.yoga-app .chantGrid .card{background:var(--surface);border:1px solid var(--line);border-radius:2px;box-shadow:none}
.yoga-app .warn{border-left:1px solid var(--line);border-top:2px solid var(--hl)}
.yoga-app .cols{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:clamp(16px,3vw,32px)}
.yoga-app .panel{padding:clamp(18px,3vw,32px)}
/* tabs */
.yoga-app .tabs{border-bottom:1px solid var(--line);gap:4px 10px}
.yoga-app .tabs button{font:500 17px var(--disp);letter-spacing:.04em;color:var(--muted);padding:12px 12px}
.yoga-app .tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--hl)}
.yoga-app .dailyTop{display:none}
/* buttons and fields */
.yoga-app .btn{font:500 13px var(--serif);letter-spacing:.18em;text-transform:uppercase;padding:13px 26px;border-radius:0;border:1px solid var(--acc);color:var(--ink);background:transparent;transition:background .5s ease,color .5s ease}
.yoga-app .btn:hover{background:var(--acc);color:var(--on-acc)}
.yoga-app .btn.solid{background:var(--acc);color:var(--on-acc)}
.yoga-app select,.yoga-app .jn,.yoga-app textarea{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:0;font-family:var(--serif)}
.yoga-app .cap{background:transparent;border-color:var(--line);color:var(--muted);font-family:var(--serif);letter-spacing:.04em}
.yoga-app .cap b{font-family:var(--serif)}
.yoga-app .cap[aria-pressed="true"]{background:transparent;color:var(--ink);border-color:var(--acc)}
.yoga-app .cap[aria-pressed="true"] b{background:transparent;color:var(--acc)}
.yoga-app .bar{height:2px;background:var(--line)}
.yoga-app .bar i{background:var(--acc)}
/* studio: cinematic stage */
.yoga-app .studio{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:start}
.yoga-app .stage{border:0;border-radius:2px;background:#050c11}
.yoga-app #stagePhoto{aspect-ratio:3/2;object-position:50% 40%;filter:saturate(.92) brightness(.96);transition:opacity .6s ease}
.yoga-app .stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(5,12,17,.55),transparent 40%)}
.yoga-app .player{background:transparent;border:0;border-top:1px solid var(--line);padding:14px 0 0}
.yoga-app .player .prow{align-items:center;gap:10px}
.yoga-app .pbtn{background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:50%;width:46px;height:46px;min-width:46px;padding:0;font-size:15px;letter-spacing:0}
.yoga-app .pbtn.solidp{border-radius:999px;width:auto;min-width:112px;padding:0 24px;background:var(--acc);color:var(--on-acc);border-color:var(--acc);font:500 13px var(--serif);letter-spacing:.2em;text-transform:uppercase}
.yoga-app .tcode{font:400 14px var(--serif);color:var(--muted);margin-left:auto;letter-spacing:.08em}
.yoga-app .cue{background:transparent;border:0;padding:0;gap:8px}
.yoga-app .cue .num{font:500 12px var(--serif);letter-spacing:.24em;text-transform:uppercase;color:var(--kick)}
.yoga-app .cue h3{font-size:clamp(34px,4vw,54px);line-height:1.02}
.yoga-app .cue .sa{font:italic 500 20px var(--disp);color:var(--muted)}
.yoga-app .breath{font:italic 500 clamp(24px,3vw,34px) var(--disp);color:var(--acc);letter-spacing:.01em}
.yoga-app .cue p{max-width:40ch}
.yoga-app .mantra{font-family:var(--disp)}
.yoga-app .toggles label{color:var(--muted);font-size:14px}
.yoga-app .toggles input{accent-color:var(--acc)}
.yoga-app .steps{grid-auto-columns:minmax(150px,170px);gap:10px}
.yoga-app .chip{background:transparent;padding:14px;font:500 17px var(--disp)}
.yoga-app .chip b{font:500 12px var(--serif);letter-spacing:.2em;color:var(--kick)}
.yoga-app .chip em{font:italic 500 15px var(--disp);color:var(--muted)}
.yoga-app .chip[aria-current="step"]{border-color:var(--acc);box-shadow:none}
#stepsWrap .label{margin-bottom:10px}
/* pose library */
.yoga-app .poses{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:clamp(16px,2.4vw,28px)}
.yoga-app .pcard{padding:0 0 18px;gap:10px;overflow:hidden}
.yoga-app .pcard>*:not(.pphoto){margin-inline:18px}
.yoga-app .pcard .pphoto{margin:0}
.yoga-app .pcard h3{font-size:26px;margin-top:6px}
.yoga-app .pcard h3 .code{font:500 11px var(--serif);letter-spacing:.2em;color:var(--kick)}
.yoga-app .pcard h3 .sa{font:italic 500 16px var(--disp);color:var(--muted)}
.yoga-app .badge{font-family:var(--serif);font-size:11px;letter-spacing:.08em;border-radius:0}
.yoga-app .pphoto img{aspect-ratio:4/3}
/* lessons */
.yoga-app .map{grid-template-columns:210px minmax(0,1.2fr) minmax(0,1fr)}
.yoga-app .topics button{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;font:500 17px var(--disp);color:var(--muted);padding:11px 4px}
.yoga-app .topics button[aria-current="true"]{color:var(--ink);box-shadow:none;border-bottom-color:var(--acc)}
.yoga-app .mapstage{border:0;border-radius:2px}
.yoga-app .maptext .card{background:transparent;border:0;border-top:1px solid var(--line);padding:16px 0}
.yoga-app .maptext h3{font-size:30px}
/* safety, family */
.yoga-app .family,.yoga-app aside.family{border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted)}
.yoga-app .masonry .panel.warn{max-width:760px}
.yoga-app .masonry{grid-template-columns:minmax(0,1fr)}
.yoga-app .pyrs svg text{fill:var(--ink)}
.yoga-app #pyrWrap,.yoga-app #pyrInfo{color:var(--ink)}
.yoga-app #helpDlg{background:var(--surface);color:var(--ink)}
/* teachers */
.yoga-app .teachers .tcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),420px));gap:clamp(16px,3vw,32px);justify-content:start}
.yoga-app .teachers figure{margin:0}
.yoga-app .teachers img{display:block;width:100%;height:auto;border-radius:2px}
.yoga-app .teachers figcaption{display:grid;gap:2px;padding-top:10px;color:var(--muted)}
.yoga-app .teachers figcaption strong{font:500 24px var(--disp);color:var(--ink)}
@media (max-width:820px){.yoga-app .studio{grid-template-columns:minmax(0,1fr)}.yoga-app .map{grid-template-columns:minmax(0,1fr)}}
body.yoga-lux-page{background:#0c1a24}
.yoga-lux-page .sec.op-host{background:#0c1a24;padding:0}
.yoga-lux-page .sec.op-host>.wrap{max-width:none;padding:0}
.yoga-app .cwel,.yoga-app .cover{grid-template-columns:minmax(0,1fr)}
.yoga-app .cwel canvas,.yoga-app .cover canvas{display:none}
.yoga-app .cpose canvas,.yoga-app .hsteps canvas{display:none}
.yoga-app .cweek,.yoga-app .cintro>*{background:var(--surface);border:1px solid var(--line);padding:clamp(16px,2.6vw,28px)}
.yoga-app .cweek h3{font-size:28px}
.yoga-app .pphoto{border-radius:2px}
.yoga-app .panel.cover,.yoga-app .capt{display:none!important}

/* Review round: legible hero buttons, dark header, one left edge, styled controls, lesson layout */
body.yoga-lux-page{--head-bg:rgba(12,26,36,.94);--ink:#f4ecdc;--muted:#bdb29b;--line:rgba(217,185,121,.22);--bg:#0c1a24;--surface:#112331;--acc:#d9b979;--acc-strong:#d9b979;--on-acc:#0c1a24}
.yoga-lux-page .site-head,.yoga-lux-page .trail{color:#f4ecdc}
.yoga-lux-page .site-head a,.yoga-lux-page .site-nav a,.yoga-lux-page .brand,.yoga-lux-page .brand-name{color:#f4ecdc}
.yoga-lux-page .site-head .btn,.yoga-lux-page .menu-btn,.yoga-lux-page .enh-sbtn{color:#f4ecdc;border-color:rgba(217,185,121,.5);background:transparent}
.yoga-lux-page .brand svg circle{fill:#0c1a24}
.ylux-btn{color:#f4ecdc!important;border-color:var(--lx-gold)!important;background:rgba(12,26,36,.35)}
.ylux-btn:hover,.ylux-btn:focus-visible{background:var(--lx-gold)!important;color:#0c1a24!important}
.ylux-in>*{animation-duration:.9s}.ylux-in>*:nth-child(n){animation-delay:.05s}
.yoga-app .mwm{display:none}
.yoga-app #go{display:none}
.yoga-app select{appearance:none;-webkit-appearance:none;padding:11px 38px 11px 14px;min-height:44px;background-color:var(--bg);background-image:linear-gradient(45deg,transparent 50%,var(--acc) 50%),linear-gradient(135deg,var(--acc) 50%,transparent 50%);background-position:calc(100% - 19px) 52%,calc(100% - 14px) 52%;background-size:5px 5px;background-repeat:no-repeat;font-size:15px}
.yoga-app input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:1px solid var(--acc);background:transparent;display:inline-grid;place-content:center;margin:0;border-radius:0;cursor:pointer}
.yoga-app input[type=checkbox]:checked{background:var(--acc)}
.yoga-app input[type=checkbox]:checked::after{content:"";width:5px;height:10px;border:solid var(--on-acc);border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}
.yoga-app .controls{gap:14px 16px}
.yoga-app .teachers .tcards{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:700px){.yoga-app .teachers .tcards{grid-template-columns:minmax(0,1fr)}}
.yoga-app .teachers h2{margin-bottom:18px}
/* lessons: pills on top, photo and text side by side, no dead space */
.yoga-app .map{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(18px,3vw,44px);align-items:center}
.yoga-app .map .topics{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 22px;overflow:visible}
.yoga-app .topics button{width:auto;padding:8px 2px;font-size:19px}
.yoga-app #mphoto{aspect-ratio:4/3;object-position:50% 30%}
.yoga-app .mapstage{min-height:0}
.yoga-app .maptext{align-content:center}
.yoga-app .maptext h3{font-size:clamp(34px,4vw,52px)}
.yoga-app .maptext p,.yoga-app .maptext .card p{font-size:18px;line-height:1.6;max-width:44ch}
.yoga-app .gate{grid-column:1/-1;padding:14px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}
.yoga-app .gate h2{font-size:22px;margin:0}
.yoga-app .gate>p,.yoga-app .gate .hint{display:none}
@media (max-width:820px){.yoga-app .map{grid-template-columns:minmax(0,1fr)}}
.yoga-lux-page .site-head .btn:not(.btn-ghost){background:#d9b979;color:#0c1a24;border-color:#d9b979}
.yoga-lux-page .site-head .btn.btn-ghost{background:transparent;color:#f4ecdc}
.yoga-app .masonry .panel.warn{max-width:none}
.yoga-app .masonry .panel.warn ul{display:block;columns:2 340px;column-gap:clamp(24px,4vw,56px);padding-left:20px}
.yoga-app .masonry .panel.warn li{break-inside:avoid;margin:0 0 10px}
.yoga-app .teachers figure{position:relative;overflow:hidden;border-radius:2px}
.yoga-app .teachers figcaption{position:absolute;left:0;right:0;bottom:0;padding:48px 20px 18px;background:linear-gradient(to top,rgba(5,12,17,.85),rgba(5,12,17,0))}
@media (min-width:801px){.ylux-hero .ylux-media img{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 38%,#000 88%,transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 38%,#000 88%,transparent 100%)}}
.yoga-app #mphoto{object-position:50% 70%}
.yoga-app .masonry{column-count:1!important;columns:auto!important}.yoga-app .masonry .panel.warn{width:100%;box-sizing:border-box}
.yoga-lux-page .brand-logo{height:52px;width:auto;display:block}.yoga-lux-page .foot-logo{height:110px;width:auto;display:block;margin:0 0 12px}
@media (max-width:760px){.yoga-lux-page .brand-logo{height:40px}}
.sec.op-host{overflow-x:clip}.yoga-app{overflow-x:clip}#mphoto:not([src]){display:none}

.ylux-vids{margin-top:1.4rem}.ylux-vids h3{font-size:1.1rem;margin:0 0 .7rem}.ylux-vids ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.7rem}.ylux-vid{display:flex;flex-direction:column;gap:.2rem;min-height:44px;padding:.9rem 1rem;border:1px solid currentColor;border-radius:12px;text-decoration:none;font-weight:600}.ylux-vid span{font-weight:400;font-size:.85rem;opacity:.75}
