/* Yoga page — recreated from the supplied 8-page design reference */
.yoga-page{background:#070707;color:#f7f4f0;font-family:var(--body)}
.yoga-page[hidden]{display:none!important}
.yoga-page .yoga-panel{position:relative;overflow:hidden;border-bottom:1px solid rgba(244,67,20,.9);background:#080807}
.yoga-page .eyebrow{font-family:var(--heading);font-size:clamp(12px,1.05vw,16px);font-weight:700;letter-spacing:.13em;color:#f04a1c;margin:0 0 18px}
.yoga-page h1,.yoga-page h2,.yoga-page h3{font-family:var(--heading);font-weight:800;letter-spacing:-.025em;line-height:1.08;margin:0 0 18px}
.yoga-page h1{font-size:clamp(39px,4.1vw,62px)}
.yoga-page h2{font-size:clamp(34px,3.6vw,53px)}
.yoga-page h3{font-size:clamp(14px,1.3vw,19px)}
.yoga-page h1 em,.yoga-page h2 em{font-style:normal;color:#f04416}
.yoga-page p{font-size:clamp(14px,1.22vw,18px);line-height:1.62;color:#e4ded9;margin:0 0 18px}
.yoga-page .yoga-photo,.yoga-page .yoga-shade{position:absolute;inset:0}
.yoga-page .yoga-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.22) contrast(1.12) brightness(1.045)}
.yoga-page .yoga-shade{pointer-events:none;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.97) 24%,rgba(5,5,5,.82) 38%,rgba(5,5,5,.28) 59%,rgba(5,5,5,.03) 100%)}
.yoga-page .button{display:inline-flex;align-items:center;gap:12px;background:#f04416;color:#fff;border:1px solid #f04416;border-radius:4px;padding:17px 22px;text-transform:uppercase;font:700 14px var(--heading);letter-spacing:.015em;text-decoration:none;box-shadow:0 6px 20px #0003}
.yoga-page .button b{font-size:20px}
.yoga-hero{min-height:680px;display:flex;align-items:center}
.yoga-hero .yoga-photo img{object-position:center 45%}
.yoga-copy{position:relative;z-index:1;width:min(50%,660px);padding:50px 0 40px max(4.3vw,32px)}
.yoga-copy>p:not(.eyebrow){max-width:470px}
.yoga-hero-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:520px;margin-top:28px}
.yoga-hero-features>div{padding:0 16px;border-right:1px solid rgba(240,68,22,.45);display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.yoga-hero-features>div:first-child{padding-left:0}
.yoga-hero-features>div:last-child{border:0}
.yoga-hero-features span,.yoga-final-features span{font-size:31px;color:#f04416;line-height:1.2;margin-bottom:7px}
.yoga-hero-features b{font:700 15px var(--heading)}
.yoga-hero-features small{font-size:13px;color:#ded8d3;line-height:1.4}
.yoga-beginners{display:grid;grid-template-columns:1.1fr .9fr;min-height:570px;background:#f1e4d7;color:#111}
.yoga-beginners-copy{padding:clamp(42px,4.5vw,68px) 3.6vw}
.yoga-beginners-copy h2{color:#080808}
.yoga-beginners-copy>p:not(.eyebrow){color:#292522;max-width:700px}
.yoga-beginners-photo{min-height:570px;position:relative}
.yoga-beginners-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center;filter:saturate(1.18) contrast(1.09) brightness(1.04)}
.yoga-reasons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:25px}
.yoga-reasons article{background:rgba(255,255,255,.72);border-radius:6px;padding:17px 14px;box-shadow:0 6px 18px #4b28100a}
.yoga-reasons article>span{font-size:28px;color:#f04416;display:block;margin-bottom:12px}
.yoga-reasons h3{font-size:14px;line-height:1.2;margin-bottom:9px}
.yoga-reasons b{font:700 13px/1.4 var(--heading);display:block;margin-bottom:9px}
.yoga-reasons p{font-size:13px;line-height:1.5;color:#292522;margin:0}
.yoga-experience,.yoga-pose{min-height:560px;display:flex;align-items:center}
.yoga-experience .yoga-photo img,.yoga-pose .yoga-photo img{object-position:center}
.yoga-experience .yoga-shade,.yoga-pose .yoga-shade{background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.98) 29%,rgba(5,5,5,.83) 44%,rgba(5,5,5,.24) 67%,rgba(5,5,5,.02) 100%)}
.yoga-experience-copy{position:relative;z-index:1;width:61%;padding:56px 4.2vw}
.yoga-experience-copy>p:not(.eyebrow){max-width:560px}
.yoga-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:34px;max-width:780px}
.yoga-pillars article{padding:0 15px;border-right:1px solid rgba(240,68,22,.5)}
.yoga-pillars article:first-child{padding-left:0}
.yoga-pillars article:last-child{border:0}
.yoga-pillars span{font-size:30px;color:#f04416}
.yoga-pillars h3{font-size:13px;line-height:1.25;margin:14px 0 9px}
.yoga-pillars p{font-size:12px;line-height:1.45;margin:0}
.yoga-combine{display:grid;grid-template-columns:.85fr 1.5fr;gap:26px;padding:clamp(45px,4.8vw,70px) max(4vw,28px);background:radial-gradient(ellipse at 0 50%,rgba(240,68,22,.13),transparent 30%),#080807}
.yoga-combine-copy{align-self:center;padding-right:12px}
.yoga-combine-copy>p:not(.eyebrow){max-width:480px}
.yoga-combine-copy .button{margin-top:8px}
.yoga-combine-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.yoga-combine-cards article{border:1px solid rgba(240,68,22,.45);border-radius:5px;overflow:hidden;background:#090909}
.yoga-combine-cards img{width:100%;height:clamp(230px,25vw,330px);object-fit:cover;filter:saturate(1.2) contrast(1.12) brightness(1.04)}
.yoga-combine-cards article>div{padding:15px}
.yoga-combine-cards span{font-size:25px;color:#f04416}
.yoga-combine-cards h3{font-size:18px;margin:10px 0}
.yoga-combine-cards p{font-size:13px;margin:0}
.yoga-timetable{display:grid;grid-template-columns:.65fr 1.35fr;gap:30px;padding:clamp(42px,4.7vw,68px) max(3.3vw,24px);background:#090908}
.yoga-timetable-copy{align-self:center;padding:0 14px}
.yoga-timetable-copy h2{font-size:clamp(36px,3.5vw,52px)}
.yoga-timetable-mantra{font:700 18px/1.55 var(--heading);letter-spacing:.12em;color:#f7e4d6;border-left:3px solid #f04416;padding-left:16px;margin-top:25px}
.yoga-schedule-shell{border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:18px 16px;background:#080a0b;box-shadow:0 12px 45px #0005}
.yoga-schedule-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.yoga-schedule-head h3{font-size:clamp(18px,1.6vw,24px);margin:0}
.yoga-schedule-head h3 em{font-style:normal;color:#f04416}
.yoga-schedule-head small{font-size:11px;line-height:1.45;color:#cfc5bc;max-width:210px}
.yoga-schedule-sub{font-size:13px!important;margin:8px 0 15px!important}
.yoga-schedule-scroll{overflow-x:auto}
.yoga-schedule{width:100%;min-width:620px;border-collapse:separate;border-spacing:3px;font:500 12px var(--heading)}
.yoga-schedule th{background:#161a1c;padding:13px 5px;text-align:center;color:#f7f4f0}
.yoga-schedule tbody th{text-align:left;white-space:nowrap;font-size:11px}
.yoga-schedule td{background:#101315;text-align:center;padding:12px 4px;border-radius:4px;min-width:58px;color:#f8f3ed}
.yoga-schedule td.green{background:#173b2e}.yoga-schedule td.blue{background:#263b56}.yoga-schedule td.red{background:#7f2920}.yoga-schedule td.yellow{background:#6e511b}.yoga-schedule td.orange{background:#78401c}.yoga-schedule td.pink{background:#642b53}
.yoga-schedule-note{font-size:11px!important;line-height:1.45!important;background:#17100c;border:1px solid rgba(240,68,22,.23);padding:12px;margin:12px 0 0!important;border-radius:4px}
.yoga-faq{display:grid;grid-template-columns:1fr 245px;gap:24px;padding:clamp(42px,4.5vw,66px) max(4vw,28px);background:linear-gradient(110deg,#070706,#090807 76%,#1a0b07)}
.yoga-faq-main h2{font-size:clamp(32px,3vw,44px);margin-bottom:24px}
.yoga-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.yoga-faq-grid details{background:rgba(16,18,19,.95);border:1px solid rgba(255,255,255,.07);border-radius:4px}
.yoga-faq-grid summary{list-style:none;cursor:pointer;position:relative;padding:16px 12px 16px 42px;font:500 14px/1.35 var(--heading)}
.yoga-faq-grid summary::-webkit-details-marker{display:none}
.yoga-faq-grid summary:before{content:'+';position:absolute;left:13px;top:7px;color:#f04416;font:400 27px var(--body)}
.yoga-faq-grid details[open] summary:before{content:'−'}
.yoga-faq-grid details p{padding:0 13px 13px 42px;margin:0;font-size:12px;line-height:1.5}
.yoga-testimonial{background:linear-gradient(145deg,#1b0c07,#090807);padding:26px 21px;border-left:1px solid rgba(240,68,22,.32)}
.yoga-testimonial>span{font:700 54px/1 var(--heading);color:#f04416}
.yoga-testimonial blockquote{font:400 19px/1.5 var(--heading);margin:8px 0 22px}
.yoga-testimonial b,.yoga-testimonial small{display:block;font-size:12px;letter-spacing:.08em}
.yoga-testimonial small{color:#c8bcb3;margin-top:5px}
.yoga-final{min-height:660px;display:flex;align-items:center}
.yoga-final .yoga-photo img{object-position:center}
.yoga-final .yoga-shade{background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.96) 29%,rgba(5,5,5,.62) 47%,rgba(5,5,5,.08) 75%,transparent 100%)}
.yoga-final-copy{position:relative;z-index:1;width:56%;padding:58px 0 45px max(4.5vw,34px)}
.yoga-final-copy>p:not(.eyebrow){max-width:520px}
.yoga-final-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:570px;margin-top:28px}
.yoga-final-features article{padding:0 14px;border-right:1px solid rgba(240,68,22,.45)}
.yoga-final-features article:first-child{padding-left:0}
.yoga-final-features article:last-child{border:0}
.yoga-final-features span{display:block}
.yoga-final-features h3{font-size:14px;margin:8px 0}
.yoga-final-features p{font-size:12px;margin:0}
@media(max-width:950px){
.yoga-hero{min-height:650px}.yoga-copy{width:63%;padding-left:30px}
.yoga-beginners{grid-template-columns:1fr}.yoga-beginners-photo{min-height:360px;max-height:520px}
.yoga-reasons{grid-template-columns:repeat(2,minmax(0,1fr))}
.yoga-experience-copy{width:75%;padding-left:30px}.yoga-pillars{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}.yoga-pillars article:nth-child(2){border:0}
.yoga-combine{grid-template-columns:1fr}.yoga-combine-cards img{height:260px}
.yoga-timetable{grid-template-columns:1fr}.yoga-timetable-copy{max-width:640px}
.yoga-faq{grid-template-columns:1fr 220px}.yoga-final-copy{width:68%;padding-left:30px}
}
@media(max-width:650px){
.yoga-page h1{font-size:clamp(38px,10vw,53px)}.yoga-page h2{font-size:clamp(32px,8.5vw,43px)}.yoga-page p{font-size:14px;line-height:1.58}
.yoga-hero{min-height:790px;align-items:flex-start}.yoga-hero .yoga-photo img{object-position:56% center}.yoga-hero .yoga-shade{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.58)),linear-gradient(0deg,#050505 0%,rgba(0,0,0,.6) 42%,transparent 85%)}
.yoga-copy{width:100%;padding:38px 21px 25px}.yoga-hero-features{margin-top:25px}.yoga-hero-features>div{padding:0 9px}.yoga-hero-features span{font-size:26px}.yoga-hero-features b{font-size:12px}.yoga-hero-features small{font-size:11px}
.yoga-beginners-copy{padding:40px 20px}.yoga-reasons{gap:8px}.yoga-reasons article{padding:14px 11px}.yoga-reasons h3{font-size:12px}.yoga-reasons b{font-size:11px}.yoga-reasons p{font-size:12px}
.yoga-beginners-photo{min-height:330px;height:78vw}.yoga-experience,.yoga-pose{min-height:820px;align-items:flex-start}.yoga-experience .yoga-photo img,.yoga-pose .yoga-photo img{object-position:58% center}.yoga-experience .yoga-shade,.yoga-pose .yoga-shade{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.56)),linear-gradient(0deg,#050505 0%,rgba(0,0,0,.74) 48%,transparent 87%)}
.yoga-experience-copy{width:100%;padding:40px 20px}.yoga-pillars{margin-top:25px;gap:18px 0}.yoga-pillars article{padding:0 10px}.yoga-pillars article:first-child,.yoga-pillars article:nth-child(3){padding-left:0}.yoga-pillars article:nth-child(2){border-right:0}.yoga-pillars h3{font-size:12px}.yoga-pillars p{font-size:11px}
.yoga-combine{padding:42px 18px;gap:22px}.yoga-combine-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.yoga-combine-cards img{height:200px}.yoga-combine-cards article>div{padding:12px}.yoga-combine-cards h3{font-size:16px}.yoga-combine-cards p{font-size:12px}
.yoga-timetable{padding:42px 12px;gap:20px}.yoga-timetable-copy{padding:0 8px}.yoga-schedule-shell{padding:12px 9px}.yoga-schedule-head{display:block}.yoga-schedule-head small{display:block;margin-top:10px;max-width:none}.yoga-schedule{min-width:620px}
.yoga-faq{grid-template-columns:1fr;padding:42px 17px;gap:18px}.yoga-faq-grid{grid-template-columns:1fr}.yoga-faq-grid summary{font-size:14px}.yoga-testimonial{padding:20px;border-left:0;border-top:1px solid rgba(240,68,22,.4)}
.yoga-final{min-height:790px;align-items:flex-start}.yoga-final .yoga-photo img{object-position:58% center}.yoga-final .yoga-shade{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.5)),linear-gradient(0deg,#050505 0%,rgba(0,0,0,.6) 42%,transparent 84%)}
.yoga-final-copy{width:100%;padding:42px 21px 28px}.yoga-final-features{margin-top:25px}.yoga-final-features article{padding:0 9px}.yoga-final-features span{font-size:25px}.yoga-final-features h3{font-size:11px}.yoga-final-features p{font-size:10px}
}


/* Focused Yoga page composition and training navigation. */

/* Beginner section mirrors the PDF's warm cards layered over a class photograph. */
.yoga-page .yoga-beginners{position:relative;display:block;min-height:560px;padding:clamp(42px,4.5vw,68px) max(4vw,28px);background:#f1e4d7}
.yoga-beginners:before{content:'';position:absolute;inset:0 0 0 48%;background:linear-gradient(90deg,#f1e4d7 0%,rgba(241,228,215,.08) 46%,rgba(0,0,0,.12)),#15120f;z-index:0}
.yoga-beginners-photo{position:absolute;inset:0 0 0 48%;min-height:0;max-height:none;z-index:0}
.yoga-beginners-photo img{object-position:55% center}
.yoga-beginners-copy{position:relative;z-index:1;padding:0;max-width:100%}
.yoga-beginners-copy .eyebrow{margin-bottom:12px}
.yoga-beginners-copy h2{max-width:760px;margin-bottom:14px}
.yoga-beginners-copy>p:not(.eyebrow){max-width:780px;margin-bottom:25px}
.yoga-reasons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:none}
.yoga-reasons article{padding:18px 16px;background:rgba(250,246,241,.94);border:1px solid rgba(80,50,35,.08);border-radius:8px;box-shadow:0 8px 22px #1f120d18;backdrop-filter:blur(4px)}
.yoga-reasons article>span{font-size:30px;color:#f04416}
.yoga-reasons h3{font:700 16px/1.25 var(--body);margin:12px 0 8px}
.yoga-reasons b{display:block;font-size:14px;line-height:1.3;margin-bottom:9px}
.yoga-reasons p{font-size:14px;line-height:1.5;margin:0;color:#302923}

/* Keep both reference photo panels distinct while preserving their shared message. */
.yoga-experience .yoga-photo img{object-position:60% center}
.yoga-pose .yoga-photo img{object-position:64% 48%}
.yoga-pose .yoga-shade{background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.97) 29%,rgba(5,5,5,.77) 43%,rgba(5,5,5,.16) 68%,rgba(5,5,5,.02) 100%)}
.yoga-page .yoga-timetable{background-image:linear-gradient(90deg,rgba(0,0,0,.38) 0%,#090908 46%,#090908 100%),url('images/yoga-final.webp');background-size:100% 100%,48% 100%;background-position:center,left;background-repeat:no-repeat}
.yoga-schedule-shell{backdrop-filter:blur(5px)}

@media(max-width:760px){
  .yoga-beginners{padding:40px 20px}
  .yoga-beginners:before{inset:0;background:linear-gradient(90deg,rgba(241,228,215,.97),rgba(241,228,215,.84)),#f1e4d7}
  .yoga-beginners-photo{inset:0;opacity:.2}
  .yoga-beginners-copy{max-width:100%}
  .yoga-reasons{grid-template-columns:repeat(2,minmax(0,1fr))}
  .yoga-reasons article{padding:14px 12px}
  .yoga-reasons h3{font-size:13px}
  .yoga-reasons b{font-size:12px}
  .yoga-reasons p{font-size:12px}
  .yoga-page .yoga-timetable{background-size:100% 100%,100% 100%;background-position:center}
}

/* Desktop panel sizing and imagery follow the supplied eight-page yoga reference. */
@media(min-width:761px){
 .yoga-page h1{font-size:clamp(40px,3.8vw,54px)}
 .yoga-page h2{font-size:clamp(33px,3.2vw,46px)}
 .yoga-page p{font-size:14px;line-height:1.5}
 .yoga-page .eyebrow{margin-bottom:12px}
 .yoga-hero{min-height:570px;height:clamp(530px,43vw,610px)}
 .yoga-copy{padding-top:34px;padding-bottom:26px;width:52%}
 .yoga-hero-features{margin-top:20px}
 .yoga-hero-features span{font-size:27px}
 .yoga-hero-features small{font-size:12px}
 .yoga-beginners{min-height:440px;height:clamp(410px,34vw,480px);padding-top:34px;padding-bottom:30px}
 .yoga-beginners-copy>p:not(.eyebrow){margin-bottom:18px}
 .yoga-reasons{margin-top:18px;gap:9px}
 .yoga-reasons article{padding:13px 11px}
 .yoga-reasons article>span{font-size:25px;margin-bottom:7px}
 .yoga-reasons h3{font-size:12px;margin:7px 0 5px}
 .yoga-reasons b{font-size:11px;margin-bottom:6px}
 .yoga-reasons p{font-size:11px;line-height:1.4}
 .yoga-experience,.yoga-pose{min-height:390px;height:clamp(370px,31vw,430px)}
 .yoga-experience-copy{padding:32px 4vw;width:64%}
 .yoga-pillars{margin-top:22px}
 .yoga-pillars article{padding:0 10px}
 .yoga-pillars span{font-size:26px}
 .yoga-pillars h3{font-size:11px;margin:9px 0 5px}
 .yoga-pillars p{font-size:10px;line-height:1.4}
 .yoga-combine{min-height:350px;padding:28px max(3.5vw,24px);gap:20px}
 .yoga-combine-cards{gap:8px}
 .yoga-combine-cards img{height:clamp(190px,18vw,235px)}
 .yoga-combine-cards article>div{padding:10px}
 .yoga-combine-cards h3{font-size:15px;margin:7px 0}
 .yoga-combine-cards p{font-size:11px}
 .yoga-timetable{min-height:390px;padding:26px max(3vw,22px);gap:20px}
 .yoga-timetable-copy h2{font-size:clamp(33px,3.1vw,44px)}
 .yoga-schedule-shell{padding:12px}
 .yoga-schedule th{padding:9px 4px}
 .yoga-schedule td{padding:8px 3px;font-size:10px}
 .yoga-schedule-note{padding:8px;margin-top:8px!important}
 .yoga-faq{min-height:280px;padding:22px max(4vw,28px);gap:18px;grid-template-columns:1fr 210px}
 .yoga-faq-main h2{font-size:clamp(30px,2.8vw,40px);margin-bottom:15px}
 .yoga-faq-grid{gap:5px}
 .yoga-faq-grid summary{font-size:12px;padding:10px 10px 10px 36px}
 .yoga-faq-grid summary:before{top:3px}
 .yoga-testimonial{padding:17px}
 .yoga-testimonial blockquote{font-size:16px;line-height:1.4;margin:7px 0 14px}
 .yoga-final{min-height:410px;height:clamp(380px,33vw,455px)}
 .yoga-final-copy{padding-top:30px;padding-bottom:24px;width:54%}
 .yoga-final-features{margin-top:19px}
 .yoga-final-features span{font-size:26px}
 .yoga-final-features h3{font-size:12px}
 .yoga-final-features p{font-size:10px}
 .yoga-page .yoga-timetable{background-image:linear-gradient(90deg,rgba(0,0,0,.38) 0%,#090908 46%,#090908 100%),url('images/yoga-ref-window.png')}
}
@media(min-width:761px){
 .yoga-beginners{grid-template-columns:1.1fr .9fr}
 .yoga-combine{grid-template-columns:.85fr 1.5fr}
 .yoga-combine-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
 .yoga-timetable{grid-template-columns:.65fr 1.35fr}
 .yoga-faq{grid-template-columns:1fr 210px}
}
