/*
 * Content-first presentation layer
 * Keeps photography and written information clear while removing ornamental
 * frames, mandalas, glows and layered visual effects.
 */
main p{font-size:18px;line-height:1.8}
.home-section-heading,.about-heading,.payment-heading,.contact-heading,.apply-heading{max-width:900px}
.home-section-heading>p,.about-heading>p,.payment-heading>p,.contact-heading>p,.apply-heading>p{max-width:820px;margin-right:auto;margin-left:auto}

/* Decorative background elements */
.temple-finial,.temple-base,.experience-seal,
.course-art-halo,.course-art-mark,
.ayurveda-pattern,.ayurveda-sun,.ayurveda-quote,.ayurveda-values,
.retreat-orbit,.online-orb,
.teacher-mandala,.teacher-image-mandala,
.gallery-mandala,.portrait-mandala,.about-art-ring,
.team-image-halo,.team-bg-mark,.food-leaf,
.payment-orbit,.payment-hero-pattern,.payment-hero-badge,
.contact-hero-pattern,.contact-hero-om,.contact-mandala,
.apply-hero-pattern,.apply-hero-symbol,
.legal-pattern,.status-pattern{display:none!important}

/* Consistent site-wide heading scale */
h1{font-size:50px!important}
h2{font-size:32px!important}
h3{font-size:26px!important}
h4{font-size:22px!important}
h5{font-size:18px!important}
h6{font-size:16px!important}

/* Use the approved divider artwork everywhere a heading divider exists. */
.about-om-divider,.team-divider,.facilities-divider,.faq-page-divider,
.payment-divider,.course100-divider,.mission-divider,.teacher-heading-mark,
.testimonial-flower-divider,.footer-heading-mark{
    display:block!important;
    width:min(255px,70vw)!important;
    height:35px!important;
    margin:.75rem auto 1.15rem!important;
    background:url('../images/divider_img.png') center/contain no-repeat!important;
    color:transparent!important
}

.about-om-divider>*,.team-divider>*,.facilities-divider>*,.faq-page-divider>*,
.payment-divider>*,.course100-divider>*,.mission-divider>*,.teacher-heading-mark>*,
.testimonial-flower-divider>*,.footer-heading-mark>*{display:none!important}
.about-om-divider::before,.about-om-divider::after,
.team-divider::before,.team-divider::after,
.facilities-divider::before,.facilities-divider::after,
.faq-page-divider::before,.faq-page-divider::after,
.payment-divider::before,.payment-divider::after,
.course100-divider::before,.course100-divider::after,
.mission-divider::before,.mission-divider::after,
.teacher-heading-mark::before,.teacher-heading-mark::after,
.testimonial-flower-divider::before,.testimonial-flower-divider::after,
.footer-heading-mark::before,.footer-heading-mark::after{display:none!important}
.mission-divider{margin-left:0!important}
.footer-heading-mark{width:150px!important;height:25px!important;margin:.35rem 0 .8rem!important;filter:brightness(0) invert(1)}
/*.course100-highlights .course100-divider,.course100-fees .course100-divider{filter:brightness(0) invert(1)}*/

/* Straightforward image presentation */
.temple-visual,.about-intro-visual,.person-portrait,.team-profile-visual,
.course-art,.ayurveda-visual,.online-visual,.facility-feature-image{min-height:0!important;padding:0!important}
.temple-frame,.about-arched-image,.person-portrait img,.team-image-frame,
.course-art-frame,.ayurveda-image-frame,.online-device,
.facility-image-arch,.teacher-image,.namaste-visual,
.reach-map-wrap,.contact-map-frame{
    overflow:hidden!important;
    background:#f3f0ef!important;
    border:1px solid #ded7d9!important;
    border-radius:8px!important;
    box-shadow:none!important
}
.temple-frame img,.about-arched-image img,.person-portrait img,.team-image-frame img,
.course-art-frame img,.ayurveda-image-frame img,.facility-image-arch img,
.teacher-image img{display:block;width:100%;border-radius:0!important;box-shadow:none!important}
.temple-frame{height:auto!important}
.temple-frame img{height:auto!important;min-height:420px;object-fit:cover}
.about-arched-image,.about-arched-image img{height:auto!important;min-height:480px}
.person-portrait img,.team-image-frame{height:520px!important}
.person-portrait img,.team-image-frame img{object-fit:cover;object-position:top}
.course-art-frame,.course-art-frame img{min-height:520px!important}
.course-art-frame img{object-fit:cover}
.facility-image-arch img{min-height:420px;object-fit:cover}
.online-device{padding:0!important}
.online-device-bar,.online-floating-card,.online-live{display:none!important}

/* Remove decorative pseudo-elements around major visual blocks */
.temple-visual::before,.temple-visual::after,
.course-art::before,.course-art::after,
.ayurveda-visual::before,.ayurveda-visual::after,
.team-profile-visual::before,.team-profile-visual::after,
.person-portrait::before,.person-portrait::after,
.facility-feature-image::before,.facility-feature-image::after,
.payment-method-card::before,.apply-aside::after,
.contact-info-panel::after,.about-mission::before,
.payment-hero::after,.legal-hero::after,
.status-page::before,.status-page::after{display:none!important;content:none!important}

/* Flat, readable content surfaces */
.detailed-course,.ayurveda-panel,.online-panel,.namaste-panel,
.payment-method-card,.payment-policy-card,.booking-steps article,
.contact-form-card,.contact-info-panel,.contact-map-copy,
.apply-form-card,.apply-aside,.legal-intro,.legal-card,
.about-review-grid article,.facility-feature,.facility-detail-grid{
    border-radius:8px!important;
    box-shadow:none!important
}
.detailed-course,.ayurveda-panel,.online-panel,.namaste-panel,
.payment-method-card,.payment-policy-card,.booking-steps article,
.contact-form-card,.legal-intro,.legal-card,.about-review-grid article{
    border:1px solid #e2dadd!important
}
.detailed-course,.ayurveda-panel,.online-panel,.namaste-panel,
.payment-method-card,.payment-policy-card,.contact-form-card,
.legal-intro,.legal-card{background:#fff!important}
.booking-steps article:hover,.teacher-card:hover,.payment-method-card:hover{transform:none!important;box-shadow:none!important}

/* Simpler image galleries and carousels */
.facility-carousel-track figure,.yoga-gallery-item,.source-community-card,
.source-reel-card,.retreat-card{border-radius:6px!important;box-shadow:none!important}
.facility-carousel-track figure{border:1px solid #e2dadd}
.yoga-gallery-item{border:1px solid #fff!important}
.yoga-gallery-shade,.yoga-gallery-zoom{display:none!important}
.yoga-gallery-caption{background:linear-gradient(transparent,rgba(0,0,0,.72))!important}

/* Content hierarchy and visibility */
.section-copy p,.detailed-course-copy p,.about-rich-copy p,.person-copy p,
.facility-detail-copy p,.legal-card p,.legal-intro p{color:#40363a}
.course-inclusions li,.facility-offer li{font-size:15px;line-height:1.65}
.eyebrow{letter-spacing:.11em}
main h2,main h3{letter-spacing:0}

/* Keep dark sections readable, but without decorative texture */
.healing-section,.retreat-section,.about-mission{background:#481126!important}
.healing-section p,.healing-section li,.retreat-section p,.about-mission p{color:#f7edf1!important}
.footer-main{background-image:none!important}

@media(max-width:991.98px){
    .about-intro-visual{position:relative!important;top:auto!important}
    .person-portrait img,.team-image-frame{height:470px!important}
    .course-art-frame,.course-art-frame img{min-height:420px!important}
}
@media(max-width:575.98px){
    .temple-frame img,.about-arched-image,.about-arched-image img,
    .person-portrait img,.team-image-frame,.course-art-frame,.course-art-frame img,
    .facility-image-arch img{height:auto!important;min-height:330px!important}
    .detailed-course,.ayurveda-panel,.online-panel,.namaste-panel{padding:1rem!important}
}

/* Two-colour brand theme: Veda magenta and white */
:root{
    --primary-color:rgb(186,19,73);
    --primary-dark:rgb(186,19,73);
    --primary-soft:#fff;
    --secondary-color:rgb(186,19,73);
    --accent-color:rgb(186,19,73);
    --body-bg:#fff;
    --section-bg:#fff;
    --white:#fff;
    --border-color:rgba(186,19,73,.28);
    --shadow-sm:none
}
body{background:#fff}
main section{background-image:none!important}
.announcement-bar,.contact-bar,.home-stats,.trust-strip,
.mission-section,.healing-section,.retreat-section,.about-mission,
.payment-hero,.contact-hero,.apply-hero,.legal-hero,.status-page,
.site-footer,.footer-main,.footer-bottom,.apply-aside,.contact-info-panel,
.payment-contact-strip,.legal-toc{background:rgb(186,19,73)!important}
.main-nav,.main-nav.sticky-active,.offcanvas,
.booking-process,.payment-methods,.payment-policy-section,
.contact-main-section,.contact-map-section,.apply-section,.legal-section,
.source-testimonials,.source-community,.source-reels,.yoga-gallery-section,
.about-intro,.founder-section,.manager-section,.team-introduction,
.team-profiles,.food-detail-section,.accommodation-detail-section,
.facilities-section,.feature-course,.detailed-training,.ayurveda-section,
.online-section,.teachers-section{background:#fff!important}
.hero-overlay,.about-hero-shade,.team-hero-overlay,.faq-hero-overlay{
    background:rgba(186,19,73,.72)!important
}
.hero-carousel::after{display:none!important}
.main-nav{border-color:rgba(186,19,73,.25)}
.nav-link,.brand,.simple-menu a,.mega-group a,
.offcanvas-body .mobile-link,.offcanvas-body summary,.offcanvas-body details>a{color:rgb(186,19,73)!important}
.simple-menu,.mega-menu{background:#fff!important;border-color:rgba(186,19,73,.3)!important;box-shadow:none!important}
.mega-intro{background:rgb(186,19,73)!important}
.mega-intro *{color:#fff!important}
.btn-primary,.announcement-button,.popup-submit,.apply-submit,.contact-submit{
    color:#fff!important;background:rgb(186,19,73)!important;border-color:rgb(186,19,73)!important;box-shadow:none!important
}
.btn-primary:hover,.announcement-button:hover,.popup-submit:hover,.apply-submit:hover,.contact-submit:hover{
    color:rgb(186,19,73)!important;background:#fff!important;border-color:rgb(186,19,73)!important
}
.btn-outline-primary{color:rgb(186,19,73)!important;background:#fff!important;border-color:rgb(186,19,73)!important}
.btn-outline-primary:hover{color:#fff!important;background:rgb(186,19,73)!important}
.eyebrow,a,.text-link{color:rgb(186,19,73)}
.detailed-course,.ayurveda-panel,.online-panel,.namaste-panel,
.payment-method-card,.payment-policy-card,.booking-steps article,
.contact-form-card,.contact-map-copy,.apply-form-card,.legal-intro,.legal-card,
.about-review-grid article,.facility-feature,.facility-detail-grid,
.source-testimonial-card,.source-community-card,.source-reel-card,
.teacher-card,.faq-page-item,.testimonial-card,.course-card{
    background:#fff!important;border-color:rgba(186,19,73,.3)!important;box-shadow:none!important
}
.source-testimonial-card{background:#fff!important}
.source-testimonials .testimonial-scroll{grid-auto-columns:calc((100% - 4.5rem)/4)!important;gap:1.5rem!important;padding:0 0 1.2rem!important}.source-testimonials .source-testimonial-card{position:relative;display:flex;min-height:355px;padding:4.7rem 1.45rem 1.2rem!important;flex-direction:column;align-items:center;color:#000!important;background:#fff!important;border:1px solid rgba(186,19,73,.22)!important;border-radius:26px!important;box-shadow:0 10px 28px rgba(0,0,0,.08)!important;transition:background-color .25s ease,color .25s ease,transform .25s ease}.source-testimonials .source-testimonial-card:hover{color:#fff!important;background:#ba1349!important;transform:translateY(-4px)}.source-testimonial-quote{position:absolute;top:0;left:0;display:grid;width:92px;height:80px;place-items:center;color:#fff;background:#ba1349;border-radius:26px 0 52px 0;font-family:Georgia,serif;font-size:76px;font-weight:700;line-height:1}.source-testimonials .source-testimonial-text{flex:1;width:100%;padding:0!important;text-align:center}.source-testimonials .source-testimonial-text p{height:8.1em!important;margin:0!important;color:#000!important;font-size:16px!important;line-height:1.65!important;-webkit-line-clamp:5!important;transition:color .25s ease}.source-testimonials .source-testimonial-text.is-expanded p{display:block!important;height:auto!important;-webkit-line-clamp:unset!important}.source-testimonials .source-testimonial-card:hover .source-testimonial-text p{color:#fff!important}.source-testimonials .testimonial-read-more{margin:.65rem auto 0;color:#ba1349!important;font-size:14px!important}.source-testimonials .source-testimonial-card:hover .testimonial-read-more{color:#fff!important}.source-testimonials .source-testimonial-avatar{position:static;display:grid;width:58px;height:58px;margin:1rem auto .55rem;place-items:center;color:#ba1349!important;background:#fff!important;border:2px solid #ba1349!important;border-radius:50%;box-shadow:none!important;font-family:var(--heading-font);font-size:26px;font-weight:700;transform:none!important;transition:border-color .25s ease}.source-testimonials .source-testimonial-card:hover .source-testimonial-avatar{color:#fff!important;background:#ba1349!important;border-color:#fff!important}.source-testimonials .testimonial-name-bar{display:block;min-height:0!important;padding:0!important;background:transparent!important;border:0!important}.source-testimonials .testimonial-name-bar h3{margin:0!important;color:#000!important;font-size:18px!important;font-weight:700;text-align:center;transition:color .25s ease}.source-testimonials .source-testimonial-card:hover .testimonial-name-bar h3{color:#fff!important}.source-testimonials .source-testimonial-stars{display:none!important}@media(max-width:991.98px){.source-testimonials .testimonial-scroll{grid-auto-columns:calc((100% - 1rem)/2)!important;gap:1rem!important}}@media(max-width:575.98px){.source-testimonials .testimonial-scroll{grid-auto-columns:100%!important}.source-testimonials .source-testimonial-card{min-height:335px}}
.legal-number,
.booking-step-number>b,.payment-policy-title>span,.contact-form-head>span,
.apply-form-head>span,.apply-steps b,.thanks-check,.status-lotus,
.contact-captcha-question,.apply-captcha-question{
    color:#fff!important;background:rgb(186,19,73)!important;border-color:#fff!important;box-shadow:none!important
}
.source-testimonial-stars{color:rgb(186,19,73)!important}
.testimonial-flower-divider,.testimonial-flower-divider i{color:rgb(186,19,73)}
.testimonial-flower-divider i{background:rgb(186,19,73)!important}
.testimonial-dots button{background:#fff;border-color:rgb(186,19,73)}
.testimonial-dots button.is-active{background:rgb(186,19,73)}
.course-facts span,.room-prices,.online-facts span,.payment-method-facts span,
.facility-offer,.apply-captcha,.contact-captcha,.payment-policy-card li{
    background:#fff!important;border-color:rgba(186,19,73,.28)!important
}
.footer-about{color:rgb(186,19,73)!important;background:#fff!important;box-shadow:none!important}
.footer-pattern{display:none!important}
.footer-contact-item>span,.footer-tags a{
    color:rgb(186,19,73)!important;background:#fff!important;border-color:#fff!important
}
.footer-column h2,.footer-column>a,.footer-contact-item p,.footer-contact-item a,
.footer-bottom,.footer-legal a{color:#fff!important}
.footer-heading-mark{border-color:#fff!important}
.footer-tags a:hover,.footer-socials a:hover{color:#fff!important;background:rgb(186,19,73)!important;border-color:#fff!important}
.announcement-main,.announcement-date,.header-email,.header-contact small,
.header-contact a,.header-book-button{color:#fff!important}
.header-socials a{color:rgb(186,19,73);background:#fff;border-color:#fff}
.announcement-close{background:rgb(186,19,73)!important}
.announcement-button{color:rgb(186,19,73)!important;background:#fff!important;border-color:#fff!important}
.announcement-button:hover{color:#fff!important;background:rgb(186,19,73)!important}
.healing-section *,.retreat-section *,.about-mission *,
.payment-hero *,.contact-hero *,.apply-hero *,.legal-hero *,
.status-page *{border-color:rgba(255,255,255,.55)}
.healing-section h2,.healing-section h3,.retreat-section h2,.retreat-section h3,
.about-mission h2,.payment-hero h1,.contact-hero h1,.apply-hero h1,
.legal-hero h1,.status-page h1{color:#fff!important}
.healing-section .eyebrow,.retreat-section .eyebrow,.about-mission .eyebrow,
.payment-hero-content>span,.contact-hero-kicker,.apply-hero-content>span,
.legal-hero-content>span,.status-kicker{color:#fff!important}

/* Light glass treatment for the homepage image hero */
.hero-overlay{
    background:linear-gradient(90deg,rgba(255,255,255,.84) 0%,rgba(255,255,255,.58) 48%,rgba(255,255,255,.14) 100%)!important;
    backdrop-filter:blur(1.5px);
    -webkit-backdrop-filter:blur(1.5px)
}
.hero-copy{
    max-width:780px;
    padding:clamp(1.5rem,3vw,2.5rem)!important;
    color:rgb(186,19,73)!important;
    background:rgba(255,255,255,.5);
    border:1px solid rgba(255,255,255,.86);
    border-radius:12px;
    box-shadow:0 18px 48px rgba(186,19,73,.12);
    backdrop-filter:blur(12px) saturate(115%);
    -webkit-backdrop-filter:blur(12px) saturate(115%)
}
.hero-copy h1,.hero-copy h2{color:rgb(186,19,73)!important;text-shadow:none!important}
.hero-copy h1{color:#ba1349!important}
.hero-copy h2{color:#ba1349!important;font-size:50px!important;line-height:1.12}
.hero-copy p{color:#3e2931!important}
.hero-kicker{color:rgb(186,19,73)!important}
.hero-kicker::before{background:rgb(186,19,73)!important}
.hero-copy .btn-ghost{color:rgb(186,19,73)!important;background:rgba(255,255,255,.7)!important;border-color:rgb(186,19,73)!important}
.hero-copy .btn-ghost:hover{color:#fff!important;background:rgb(186,19,73)!important}
@media(max-width:767.98px){
    .hero-overlay{background:rgba(255,255,255,.62)!important}
    .hero-copy{margin:1rem 0;padding:1.25rem!important;background:rgba(255,255,255,.66)}
}

/* Homepage refinement: cleaner hierarchy and stronger photographic presentation. */
.hero-carousel,.hero-carousel .carousel-item,.hero-slide-content{min-height:600px!important}
.hero-slide-image{object-position:center 42%}
.hero-overlay{
    background:linear-gradient(90deg,rgba(255,255,255,.74) 0%,rgba(255,255,255,.5) 38%,rgba(255,255,255,.22) 64%,rgba(255,255,255,.05) 100%)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important
}
.hero-copy{
    max-width:650px;
    padding:2.25rem 2.5rem!important;
    background:rgba(255,255,255,.42);
    border:1px solid rgba(255,255,255,.8);
    border-left:4px solid rgb(186,19,73);
    border-radius:4px 18px 18px 4px;
    box-shadow:0 24px 55px rgba(67,23,39,.16),inset 0 1px 0 rgba(255,255,255,.65);
    backdrop-filter:blur(16px) saturate(125%);
    -webkit-backdrop-filter:blur(16px) saturate(125%)
}
.hero-copy p{max-width:570px;margin-bottom:1.4rem!important;line-height:1.75}
.hero-actions{gap:.75rem}
.hero-carousel .carousel-item.active .hero-kicker,
.hero-carousel .carousel-item.active .hero-copy h1,
.hero-carousel .carousel-item.active .hero-copy h2,
.hero-carousel .carousel-item.active .hero-copy>p,
.hero-carousel .carousel-item.active .hero-actions{animation:homeHeroReveal .7s ease-out both!important}
.hero-carousel .carousel-item.active .hero-copy h1,
.hero-carousel .carousel-item.active .hero-copy h2{animation-delay:.1s!important}
.hero-carousel .carousel-item.active .hero-copy>p{animation-delay:.2s!important}
.hero-carousel .carousel-item.active .hero-actions{animation-delay:.3s!important}
@keyframes homeHeroReveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

.home-stats{position:relative;z-index:4;background:rgb(186,19,73)!important}
.stats-grid div{min-height:96px;padding:1rem 1.5rem}
.stats-grid strong{font-size:30px}
.stats-grid span{font-size:14px;color:#fff!important}

.welcome-section,.dates-section,.learning-section,.online-section,.blog-section{background:#fff8fb!important}
.course-showcase,.why-section,.facilities-section,.faq-section{background:#fff!important}
.home-section-heading{margin-bottom:2.5rem}
.home-section-heading h2{margin-bottom:.75rem}
.home-section-heading>p{color:#5b5054;line-height:1.75}

.welcome-heading{max-width:900px;margin:0 auto 2.5rem}
.welcome-heading .eyebrow{margin-bottom:.35rem}
.welcome-heading h2{margin-bottom:.35rem}
.welcome-divider{width:min(260px,65vw);height:35px;margin:.35rem auto 0}
.welcome-divider img{display:block;width:100%;height:100%;object-fit:contain}
.welcome-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);align-items:stretch;gap:clamp(2rem,5vw,5rem)}
.welcome-copy>p{color:#000;line-height:1.82;text-align:justify}
.welcome-copy blockquote{margin:1.25rem 0;padding:1rem 1.25rem;color:#6f1436;background:#fff5f8;border-left:3px solid #ba1349;border-radius:0 12px 12px 0;font-family:var(--heading-font);font-size:18px;line-height:1.55}
.welcome-copy blockquote cite{display:block;margin-top:.6rem;font-family:var(--body-font);font-size:13px;font-style:italic;font-weight:700}
.welcome-more{display:inline-flex!important;align-items:center;gap:.55rem;margin-top:.15rem;padding:.72rem 1.3rem!important;border:1px solid #ba1349!important;border-radius:999px!important;font-weight:700}
.welcome-more .ui-icon{width:1rem}
.welcome-visual{position:relative;overflow:hidden;min-height:0;border:2px solid rgba(186,19,73,.55);border-radius:42px 0 42px 0;box-shadow:0 20px 46px rgba(65,20,36,.13);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.welcome-visual img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .65s ease,filter .45s ease}
.welcome-visual:hover{border-color:#ba1349;box-shadow:0 28px 58px rgba(65,20,36,.2);transform:translateY(-7px)}
.welcome-visual:hover img{filter:saturate(1.08);transform:scale(1.055)}

.mission-panel{overflow:hidden;border:1px solid rgba(186,19,73,.2)!important;border-radius:20px!important;box-shadow:0 24px 55px rgba(67,23,39,.1)!important}
.mission-image-primary,.mission-image-secondary{border-radius:12px!important}
.mission-image-primary img,.mission-image-secondary img{width:100%;height:100%;object-fit:cover}
.mission-copy>.btn{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    margin-top:.35rem;
    padding:.78rem 1.35rem!important;
    color:#ba1349!important;
    background:#fff!important;
    border:2px solid #fff!important;
    border-radius:999px!important;
    box-shadow:0 12px 28px rgba(80,4,32,.2)!important;
    font-weight:700
}
.mission-copy>.btn .ui-icon{width:1rem;transition:transform .2s ease}
.mission-copy>.btn:hover,.mission-copy>.btn:focus-visible{
    color:#ba1349!important;
    background:var--primary-color!important;
    border-color:var--primary-color!important;
    box-shadow:0 16px 32px rgba(121,79,0,.24)!important;
    transform:translateY(-2px)
}
.mission-copy>.btn:hover .ui-icon,.mission-copy>.btn:focus-visible .ui-icon{transform:translateX(3px)}

.program-card{min-height:500px;border:1px solid rgba(186,19,73,.18);border-radius:18px!important;box-shadow:0 16px 36px rgba(51,20,31,.12)!important}
.program-card:hover{box-shadow:0 24px 48px rgba(51,20,31,.2)!important}
.course-showcase{padding-top:2.5rem!important}
.program-carousel-track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:calc((100% - 3rem)/4);
    gap:1rem;
    overflow-x:auto;
    padding:.35rem .15rem .6rem;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -ms-overflow-style:none
}
.program-carousel-track::-webkit-scrollbar{display:none;width:0;height:0}
.program-carousel-track .program-card{scroll-snap-align:start}
.program-shade{background:linear-gradient(180deg,rgba(24,9,14,.04) 5%,rgba(24,9,14,.28) 42%,rgba(24,9,14,.96) 100%)}
.program-content{right:1.4rem;bottom:1.4rem;left:1.4rem}
.program-title h3{min-height:50px}
.category-card{border-radius:12px;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.category-card:hover{border-color:rgb(186,19,73);box-shadow:0 12px 28px rgba(186,19,73,.1);transform:translateY(-4px)}

.detailed-training{background:#fff8fb!important}
.detailed-course-list{gap:2rem}
.detailed-course{
    grid-template-columns:minmax(330px,.88fr) minmax(0,1.12fr);
    gap:clamp(1.75rem,4vw,4rem);
    padding:clamp(1.25rem,2vw,1.8rem);
    border-radius:18px!important;
    box-shadow:0 18px 42px rgba(61,22,36,.08)!important
}
.detailed-course.is-reversed{grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr)}
.course-art{min-height:460px;padding:0!important}
.course-art-frame,.course-art-frame img{min-height:460px!important;height:460px!important;border-radius:12px!important}
.course-art-frame img{object-fit:cover}
.detailed-course-copy h3{margin:.35rem 0 1rem}
.course-inclusions{gap:.42rem 1rem}
.detailed-training .room-prices{background:#fff!important;border:1px solid rgb(186,19,73)!important;border-radius:10px}
.detailed-training .room-prices span{border-color:rgba(186,19,73)!important}
.detailed-training .room-prices small,.detailed-training .room-prices strong{color:rgba(186,19,73)!important}

.healing-section{background:rgb(186,19,73)!important}
.healing-section::before{display:none}
.healing-section .row{margin-bottom:2rem!important}
.healing-grid{grid-template-columns:1fr;max-width:1100px;margin-inline:auto}
.healing-card{min-height:450px;padding:2.5rem 52% 2.5rem 2.5rem;border-radius:18px!important;box-shadow:0 22px 50px rgba(58,4,24,.24)!important}
.healing-card::after{background:linear-gradient(90deg,rgba(39,4,17,.96) 0%,rgba(57,5,25,.88) 44%,rgba(45,4,20,.16) 75%,rgba(25,3,11,.05) 100%)}
.healing-card h3{margin-top:7rem}
.healing-card a{right:auto;left:2.5rem}

.ayurveda-panel,.online-panel{border-radius:18px!important;box-shadow:0 20px 48px rgba(61,22,36,.09)!important}
.ayurveda-visual{padding:0!important;background:#f8edf1!important}
.ayurveda-image-frame{width:100%;height:100%}
.ayurveda-image-frame img{width:100%;height:100%;max-height:none;object-fit:cover;filter:none!important}
.ayurveda-options a{border-radius:10px;box-shadow:none}

.dates-table{border-radius:14px;box-shadow:0 16px 36px rgba(61,22,36,.07)}
.date-row{min-height:76px;border-color:rgba(186,19,73,.14)}
.date-row:nth-child(even){background:#fff8fb}
.availability{font-weight:700}
.availability i{background:rgb(186,19,73)}

.benefit-grid article,.learning-timeline article{border:1px solid rgba(186,19,73,.18);border-radius:12px;box-shadow:none}
.benefit-grid article:hover,.learning-timeline article:hover{border-color:rgb(186,19,73);box-shadow:0 14px 30px rgba(186,19,73,.09);transform:translateY(-3px)}
.learning-timeline article{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}

.facility-sections{gap:1.5rem}
.facility-feature{border-radius:16px!important;box-shadow:0 16px 38px rgba(61,22,36,.08)!important}
.facility-content{padding:clamp(1.5rem,2.8vw,2.4rem)}
.facility-carousel-track figure{height:330px;min-height:330px;border-radius:10px}
.facility-carousel-track figure>img{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%!important;
    min-height:0!important;
    object-fit:cover;
    object-position:center
}

.retreat-section{background:rgb(186,19,73)!important}
.retreat-layout{grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,4vw,4rem)}
.retreat-card{min-height:500px;border-radius:16px!important;box-shadow:0 18px 42px rgba(58,4,24,.25)!important}
.retreat-card:nth-child(2){margin-top:0}
.retreat-card-copy h3{font-size:26px!important}

.online-panel{padding:clamp(1.25rem,2.4vw,2rem)}
.online-visual{padding:1rem}
.online-device{border:1px solid rgba(186,19,73,.25);border-radius:14px;box-shadow:0 18px 42px rgba(61,22,36,.12);transform:none}
.online-device-screen img{min-height:430px}
.online-floating-card{box-shadow:0 10px 26px rgba(61,22,36,.12)}

.reference-teachers .teacher-card{border-radius:14px!important;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.reference-teachers .teacher-card:hover{border-color:rgb(186,19,73)!important;box-shadow:0 16px 36px rgba(186,19,73,.11)!important;transform:translateY(-5px)}
.reference-teachers .teacher-image{border:0!important;border-radius:0!important}

.blog-card{border-radius:14px;box-shadow:0 14px 32px rgba(61,22,36,.07)}
.blog-card>img{aspect-ratio:4/3;transition:transform .5s ease}
.blog-card:hover>img{transform:scale(1.035)}
.blog-card>div{padding:1.5rem}
.blog-card p{font-size:16px!important}
.faq-section .accordion{padding:0 1.5rem;background:#fff;border:1px solid rgba(186,19,73,.18);border-radius:14px}
.enquiry-inner{padding:2.25rem;border:1px solid rgba(255,255,255,.35);border-radius:18px;background:rgba(112,5,43,.2)}
/*.reach-layout{gap:clamp(1.5rem,4vw,4rem)}*/
.reach-map-wrap{border-radius:14px!important;box-shadow:0 18px 42px rgba(61,22,36,.1)!important}

@media(max-width:991.98px){
    .hero-overlay{background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.74))!important}
    .hero-copy{max-width:680px}
    .detailed-course,.detailed-course.is-reversed{grid-template-columns:1fr}
    .detailed-course.is-reversed .course-art,.detailed-course.is-reversed .detailed-course-copy{grid-column:auto;grid-row:auto}
    .healing-card{padding-right:35%}
    .retreat-layout{grid-template-columns:1fr}
    .welcome-layout{grid-template-columns:1fr}
    .welcome-visual{min-height:460px;grid-row:1}
}
@media(max-width:767.98px){
    .hero-carousel,.hero-carousel .carousel-item,.hero-slide-content{min-height:610px!important}
    .hero-overlay{background:rgba(255,255,255,.72)!important}
    .hero-copy{margin:1rem 0;padding:1.5rem!important;background:rgba(255,255,255,.58);border-left-width:3px;backdrop-filter:blur(13px) saturate(120%);-webkit-backdrop-filter:blur(13px) saturate(120%)}
    .stats-grid{grid-template-columns:repeat(2,1fr)}
    .stats-grid div:nth-child(2){border-right:0}
    .stats-grid div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.2)}
    .category-grid{grid-template-columns:1fr}
    .course-art,.course-art-frame,.course-art-frame img{min-height:380px!important;height:380px!important}
    .healing-card{min-height:420px;padding:1.5rem}
    .healing-card::after{background:linear-gradient(180deg,rgba(39,4,17,.08),rgba(39,4,17,.96) 58%)}
    .healing-card h3{margin-top:12rem}
    .healing-card a{bottom:1.25rem;left:auto;right:1.25rem}
    .date-row{grid-template-columns:1fr 1fr}
    .date-row a{justify-content:flex-start}
    .retreat-cards{grid-template-columns:1fr}
    .retreat-card{min-height:460px}
    .online-device-screen img{min-height:340px}
    .facility-carousel-track figure{height:300px;min-height:300px}
    .faq-section .accordion{padding:0 1rem}
    .welcome-heading{margin-bottom:1.75rem}
    .welcome-visual{min-height:330px;border-radius:28px 0 28px 0}
    .welcome-copy>p{text-align:left}
}

/* Botanical announcement strip that complements the magenta brand palette. */
.announcement-bar{
    background:linear-gradient(90deg,#244f40 0%,#39745d 50%,#244f40 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.2)
}
.announcement-main{animation:announcementGreenGlow 1.8s ease-in-out infinite alternate!important}
.announcement-button{
    color:#285642!important;
    background:#fff!important;
    border-color:#fff!important;
    box-shadow:3px 3px 0 rgba(18,59,43,.35)!important;
    animation:announcementGreenPulse 2s ease-in-out infinite!important
}
.announcement-button:hover{
    color:#fff!important;
    background:#1f4939!important;
    border-color:#fff!important
}
.announcement-close{background:rgba(18,59,43,.48)!important}
.announcement-close:hover,.announcement-close:focus-visible{background:#173d2f!important}
@keyframes announcementGreenGlow{
    from{opacity:.62;color:#c9eadc;text-shadow:0 0 0 rgba(255,255,255,0)}
    to{opacity:1;color:#fff;text-shadow:0 0 14px rgba(255,255,255,.58)}
}
@keyframes announcementGreenPulse{
    0%,100%{box-shadow:3px 3px 0 rgba(18,59,43,.35),0 0 0 0 rgba(255,255,255,.32)}
    50%{box-shadow:3px 3px 0 rgba(18,59,43,.35),0 0 0 7px rgba(255,255,255,0)}
}

/* Clean grouped navigation dropdown, based on the approved menu reference. */
.mega-dropdown .mega-menu{
    left:0;
    display:block;
    width:min(440px,calc(100vw - 2rem));
    max-height:calc(100vh - 150px);
    padding:0;
    overflow-x:hidden;
    overflow-y:auto;
    column-count:auto;
    column-width:auto;
    background:#fff!important;
    border:1px solid #d9d4d6!important;
    border-top:4px solid rgb(186,19,73)!important;
    border-radius:0 0 6px 6px;
    box-shadow:0 18px 42px rgba(45,25,32,.16)!important
}
.mega-dropdown .mega-intro{display:none!important}
.mega-dropdown .mega-group{
    display:inline-block;
    width:100%;
    padding:0;
    break-inside:avoid;
    border-right:0
}
.mega-dropdown .mega-group-title{
    display:block;
    margin:0;
    padding:14px 20px;
    color:#292527;
    background:#fff;
    border-top:1px solid #cfc9cb;
    border-bottom:1px dashed #d8d2d4;
    font-family:var(--body-font);
    font-size:18px;
    font-weight:700
}
.mega-dropdown .mega-group:nth-child(2) .mega-group-title{border-top:0}
.mega-dropdown .mega-group a{
    display:block;
    margin:0;
    padding:13px 20px;
    color:#464044!important;
    background:#fff;
    border-bottom:1px dashed #ddd7d9;
    font-size:18px;
    font-weight:500;
    line-height:1.45;
    transition:color .2s ease,background-color .2s ease,padding-left .2s ease
}
.mega-dropdown .mega-group a:hover,
.mega-dropdown .mega-group a:focus-visible{
    padding-left:26px;
    color:rgb(186,19,73)!important;
    background:#fff5f8
}
.nav-dropdown>.simple-menu{
    padding:0;
    overflow:hidden;
    background:#fff!important;
    border:1px solid #d9d4d6!important;
    border-top:4px solid rgb(186,19,73)!important;
    border-radius:0 0 6px 6px;
    box-shadow:0 18px 38px rgba(45,25,32,.15)!important
}
.nav-dropdown>.simple-menu a{
    margin:0;
    padding:13px 18px;
    color:#464044!important;
    background:#fff;
    border-bottom:1px dashed #ddd7d9;
    border-radius:0;
    font-size:18px;
    font-weight:500;
    line-height:1.4;
    transition:color .2s ease,background-color .2s ease,padding-left .2s ease
}
.nav-dropdown>.simple-menu a:last-child{border-bottom:0}
.nav-dropdown>.simple-menu a:hover,
.nav-dropdown>.simple-menu a:focus-visible{
    padding-left:24px;
    color:rgb(186,19,73)!important;
    background:#fff5f8
}
.ayurveda-nav-menu{width:310px!important}

@media(max-width:1199.98px){
    .mega-dropdown .mega-menu{left:0;width:min(440px,calc(100vw - 2rem))}
    .program-carousel-track{grid-auto-columns:calc((100% - 2rem)/3)}
}
@media(max-width:767.98px){.program-carousel-track{grid-auto-columns:100%}}

.announcement-bar{background:#ba1349!important}
.contact-bar{background:rgb(45 95 77)!important}

/* Site-wide readability floor; the footer legal bar intentionally keeps its compact type. */
.text-size-minimum{font-size:16px!important}

/* Consistent heading hierarchy: primary headings, dark supporting headings. */
main h1,main h2{color:#ba1349}
main h3,main h4,main h5,main h6{color:#171214}
.eyebrow{color:#171214}
.source-section .eyebrow,
.enquiry-cta .eyebrow{color:var--primary-color}

/* Divider artwork is added only to major heading groups that do not already have one. */
.heading-with-divider>h1::after,
.heading-with-divider>h2::after{
    display:block;
  /*  width:min(255px,70vw);*/
    height:35px;
    margin:0rem auto 0rem;
    background:url('../images/divider_img.png') center/contain no-repeat;
    content:""
}
.heading-with-divider:not(.text-center)>h1::after,
.heading-with-divider:not(.text-center)>h2::after{margin-left:0}

/* Choose Your Yoga Course: full-width copy and one-line desktop course titles. */
.detailed-training .home-section-heading{
    width:100%;
    max-width:none;
    text-align:left!important
}
.detailed-training .home-section-heading>p{
    width:100%;
    max-width:none;
    margin-right:0;
    margin-left:0;
    text-align:justify
}
.detailed-training .home-section-heading>.eyebrow,
.detailed-training .home-section-heading>h2{display:block;text-align:center}
.detailed-course-copy h3{
    display:flex;
    flex-wrap:nowrap;
    align-items:baseline;
    gap:.28em;
    color:#171214!important;
    font-size:clamp(23px,2vw,26px)!important;
    white-space:nowrap
}
.detailed-course-copy h3 strong{
    display:inline!important;
    flex:0 0 auto;
    color:#ba1349!important;
    font-size:1em!important
}

@media(max-width:575.98px){
    .detailed-course-copy h3{flex-wrap:wrap;font-size:24px!important;white-space:normal}
}

.healing-section .heading-with-divider>h2::after,
.mission-section .heading-with-divider>h2::after,
.about-mission .heading-with-divider>h2::after,
.source-section .heading-with-divider>h2::after,
.enquiry-section .heading-with-divider>h2::after,
.enquiry-cta .heading-with-divider>h2::after{filter:invert(1) brightness(2)}

/* Healing & Meditation: single featured-course presentation. */
.healing-section{
    overflow:hidden;
    color:#000!important;
    background:linear-gradient(180deg,#fff 0%,#fff8fb 100%)!important
}
.healing-section::before{display:none!important}
.healing-heading{max-width:920px;margin:0 auto 2.5rem}
.healing-section .healing-heading>.eyebrow{color:#171214!important}
.healing-section .healing-heading>h2{color:#ba1349!important}
.healing-section .healing-heading.heading-with-divider>h2::after{filter:none}
.healing-section .healing-heading>p{max-width:760px;margin:.25rem auto 0;color:#000!important;line-height:1.8}
.healing-feature{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    min-height:520px;
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(186,19,73,.2);
    border-radius:22px;
    box-shadow:0 22px 55px rgba(71,24,41,.11);
    transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease
}
.healing-feature:hover{border-color:rgba(186,19,73,.45);box-shadow:0 28px 65px rgba(71,24,41,.17);transform:translateY(-5px)}
.healing-feature-image{position:relative;min-height:520px;overflow:hidden;background:#eadde2}
.healing-feature-image::after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 48%,rgba(31,8,17,.7) 100%);pointer-events:none}
.healing-feature-image>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s ease,filter .45s ease}
.healing-feature:hover .healing-feature-image>img{filter:saturate(1.07);transform:scale(1.045)}
.healing-image-label{position:absolute;right:1.4rem;bottom:1.4rem;left:1.4rem;z-index:1;display:flex;align-items:center;gap:.75rem;color:#fff}
.healing-image-label>span{display:grid;width:48px;height:48px;flex:0 0 48px;place-items:center;color:#ba1349;background:#fff;border-radius:50%;font-family:var(--heading-font);font-size:22px!important}
.healing-image-label strong{font-size:16px;letter-spacing:.04em}
.healing-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4.5vw,4.5rem)}
.healing-course-number{display:inline-flex;align-self:flex-start;margin-bottom:.75rem;color:#ba1349;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.healing-feature-copy h3{max-width:620px;margin:0 0 1rem;color:#171214!important;font-size:clamp(30px,3vw,44px)!important;line-height:1.12}
.healing-section .healing-feature-copy>p{max-width:620px;margin-bottom:1.4rem;color:#000!important;line-height:1.8}
.healing-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:0 0 1.6rem;padding:0;list-style:none}
.healing-section .healing-highlights li{display:flex;align-items:center;gap:.45rem;padding:.75rem .8rem;color:#171214!important;background:#fff7fa;border:1px solid rgba(186,19,73,.14);border-radius:10px;font-weight:700;line-height:1.35}
.healing-highlights li>span{color:#ba1349}
.healing-course-link{display:inline-flex!important;align-self:flex-start;align-items:center;gap:.55rem;padding:.82rem 1.4rem!important;border-radius:999px!important}
.healing-course-link .ui-icon{width:18px;transition:transform .25s ease}
.healing-course-link:hover .ui-icon{transform:translateX(4px)}

@media(max-width:991.98px){
    .healing-feature{grid-template-columns:1fr}
    .healing-feature-image{min-height:430px}
}
@media(max-width:575.98px){
    .healing-feature{min-height:0;border-radius:16px}
    .healing-feature-image{min-height:310px}
    .healing-feature-copy{padding:1.5rem}
    .healing-feature-copy h3{font-size:30px!important}
    .healing-highlights{grid-template-columns:1fr}
    .healing-image-label{right:1rem;bottom:1rem;left:1rem}
}

/* Ayurveda: editorial content panel with a full-height wellness image. */
.ayurveda-section{overflow:hidden;background:linear-gradient(180deg,#fff8fb 0%,#fff 100%)!important}
.ayurveda-panel{
    display:grid;
    grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr);
    align-items:stretch;
    overflow:hidden;
    background:#fff!important;
    border:1px solid rgba(186,19,73,.2)!important;
    border-radius:22px!important;
    box-shadow:0 22px 55px rgba(71,24,41,.1)!important;
    transition:border-color .35s ease,box-shadow .35s ease,transform .35s ease
}
.ayurveda-panel:hover{border-color:rgba(186,19,73,.42)!important;box-shadow:0 28px 65px rgba(71,24,41,.15)!important;transform:translateY(-4px)}
.ayurveda-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,4.5vw,4.5rem)!important}
.ayurveda-copy>.eyebrow{color:#171214!important}
.ayurveda-copy>h2{margin:.3rem 0 0;color:#ba1349!important}
.ayurveda-copy.heading-with-divider>h2::after{margin-left:0}
.ayurveda-copy>p{max-width:780px!important;margin-bottom:1rem;color:#000!important;line-height:1.8}
.ayurveda-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0 1.25rem}
.ayurveda-highlights span{display:flex;min-height:52px;align-items:center;gap:.6rem;padding:.75rem .9rem;color:#171214!important;background:#fff7fa!important;border:1px solid rgba(186,19,73,.14)!important;border-radius:10px!important;font-weight:700}
.ayurveda-highlights span b{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;color:#fff!important;background:#ba1349;border-radius:50%}
.ayurveda-options{display:grid;gap:.75rem;margin-top:.25rem}
.ayurveda-options a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1rem 1.1rem;color:#171214!important;background:#fff!important;border:1px solid rgba(186,19,73,.18)!important;border-radius:12px!important;box-shadow:0 8px 22px rgba(71,24,41,.055)!important;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.ayurveda-options a:hover{border-color:#ba1349!important;box-shadow:0 14px 30px rgba(186,19,73,.12)!important;transform:translateX(5px)}
.ayurveda-option-icon{display:grid!important;width:46px!important;height:46px!important;place-items:center;color:#fff!important;background:#ba1349!important;border-radius:50%!important;font-size:16px!important}
.ayurveda-options strong{color:#171214;font-size:18px}
.ayurveda-options small{margin-top:.25rem;color:#625b5e!important;font-size:16px!important;line-height:1.5}
.ayurveda-options .ui-icon{width:20px;color:#ba1349}
.ayurveda-visual{position:relative;min-height:100%;overflow:hidden;padding:0!important;background:#efe4e8!important}
.ayurveda-image-frame{width:100%!important;height:100%!important}
.ayurveda-image-frame::after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 58%,rgba(36,9,19,.68) 100%);pointer-events:none}
.ayurveda-image-frame img{display:block;width:100%!important;height:100%!important;min-height:720px;max-height:none!important;object-fit:cover!important;object-position:center;filter:none!important;transition:transform .7s ease,filter .45s ease}
.ayurveda-panel:hover .ayurveda-image-frame img{filter:saturate(1.05)!important;transform:scale(1.035)}
.ayurveda-quote{position:absolute!important;top:auto!important;right:1.4rem!important;bottom:1.4rem!important;left:1.4rem!important;z-index:2;display:flex!important;align-items:center;gap:.75rem;padding:1rem 1.1rem!important;color:#fff!important;background:rgba(45,15,26,.82)!important;border:1px solid rgba(255,255,255,.35)!important;border-radius:12px!important;backdrop-filter:blur(8px)}
.ayurveda-quote>span{color:var--primary-color!important;font-size:28px!important}
.ayurveda-quote p{margin:0;color:#fff!important;font-size:16px;line-height:1.35}
.ayurveda-quote strong{color:var--primary-color!important}
.ayurveda-values{display:none!important}

@media(max-width:991.98px){
    .ayurveda-panel{grid-template-columns:1fr}
    .ayurveda-visual{min-height:520px}
    .ayurveda-image-frame img{min-height:520px}
}
@media(max-width:575.98px){
    .ayurveda-panel{border-radius:16px!important}
    .ayurveda-copy{padding:1.5rem!important}
    .ayurveda-highlights{grid-template-columns:1fr}
    .ayurveda-options a{grid-template-columns:auto minmax(0,1fr);padding:.9rem}
    .ayurveda-options .ui-icon{display:none}
    .ayurveda-visual,.ayurveda-image-frame img{min-height:420px}
    .ayurveda-quote{right:1rem!important;bottom:1rem!important;left:1rem!important}
}

/* Rishikesh source section: restore the photography removed by the global reset. */
.source-section{
    position:relative;
    display:grid;
    min-height:500px;
    place-items:center;
    overflow:hidden;
    background:#35131f!important
}
.source-section::before{position:absolute;inset:0;z-index:1;display:block!important;content:"";background:linear-gradient(100deg,rgba(38,10,20,.7),rgba(62,13,31,.5));pointer-events:none}
.source-section-bg{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.source-section>.container{
    position:relative;
    z-index:2;
    max-width:900px;
    padding:clamp(1.75rem,4vw,3rem);
    background:rgba(49,12,25,.5);
    border:1px solid rgba(255,255,255,.3);
    border-radius:20px;
    box-shadow:0 22px 55px rgba(18,3,9,.26);
    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px)
}
.source-section .eyebrow{color:var--primary-color!important}
.source-section h2{margin:.35rem 0 0;color:#fff!important}
.source-section .heading-with-divider>h2::after{filter:invert(1) brightness(2)}
.source-section p{max-width:780px;margin:0 auto;color:#fff!important;font-size:16px;line-height:1.8}
.source-pillars{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:1.4rem}
.source-pillars span{padding:.65rem 1rem;color:#fff!important;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.42);border-radius:999px;font-size:16px!important;font-weight:700;backdrop-filter:blur(4px)}

@media(max-width:575.98px){
    .source-section{min-height:560px}
    .source-section>.container{width:calc(100% - 1.5rem);padding:1.5rem;border-radius:16px}
    .source-pillars{display:grid;grid-template-columns:1fr;width:100%}
    .source-pillars span{text-align:center}
}

/* Retreat section readability and primary action. */
/*
.retreat-section .retreat-experiences span,
.retreat-section .retreat-card-copy>span,
.retreat-section .retreat-card-copy p,
*/

.retreat-section .retreat-card-copy a,
.retreat-section .retreat-duration{font-size:16px!important}
.retreat-section .retreat-copy>.btn.btn-light{
    display:inline-flex!important;
    min-height:52px;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    padding:.82rem 1.45rem!important;
    color:#ba1349!important;
    background:var--primary-color!important;
    border:2px solid var--primary-color!important;
    border-radius:999px!important;
    box-shadow:0 12px 28px rgba(38,5,17,.25)!important;
    font-size:16px!important;
    font-weight:700;
    line-height:1.2;
    transition:color .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease
}
.retreat-section .retreat-copy>.btn.btn-light .ui-icon{width:18px;margin-left:0;transition:transform .25s ease}
.retreat-section .retreat-copy>.btn.btn-light:hover,
.retreat-section .retreat-copy>.btn.btn-light:focus-visible{
    color:#ba1349!important;
    background:#fff!important;
    border-color:#fff!important;
    box-shadow:0 16px 34px rgba(38,5,17,.32)!important;
    transform:translateY(-3px)
}
.retreat-section .retreat-copy>.btn.btn-light:hover .ui-icon,
.retreat-section .retreat-copy>.btn.btn-light:focus-visible .ui-icon{transform:translateX(4px)}

/* Online course section readability and balanced actions. */

.online-section .online-facts small,
.online-section .online-facts strong,
.online-section .online-copy li strong,
.online-section .online-copy li small,
.online-section .online-copy li>span,
.online-section .online-device-bar small,
.online-section .online-floating-card strong,
.online-section .online-floating-card span,
.online-section .online-live,
.online-section .online-actions a{font-size:16px!important}
.online-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
.online-actions>.btn,
.online-actions>.text-link{
    display:inline-flex!important;
    min-height:50px;
    align-items:center;
    justify-content:center;
    gap:.5rem;
    padding:.78rem 1.3rem!important;
    border-radius:999px!important;
    font-size:16px!important;
    font-weight:700;
    line-height:1.2
}
.online-actions>.text-link{
    color:#ba1349!important;
    background:#fff!important;
    border:2px solid #ba1349!important;
    box-shadow:0 9px 22px rgba(186,19,73,.1);
    transition:color .25s ease,background-color .25s ease,box-shadow .25s ease,transform .25s ease
}
.online-actions>.text-link .ui-icon{width:18px;transition:transform .25s ease}
.online-actions>.text-link:hover,
.online-actions>.text-link:focus-visible{
    color:#fff!important;
    background:#ba1349!important;
    box-shadow:0 13px 28px rgba(186,19,73,.22);
    transform:translateY(-3px)
}
.online-actions>.text-link:hover .ui-icon,
.online-actions>.text-link:focus-visible .ui-icon{transform:translateX(4px)}

@media(max-width:575.98px){
    .online-actions>.btn,.online-actions>.text-link{width:100%}
}

/* Expert teachers: clean portrait-led carousel, aligned with the supplied reference. */
.reference-teachers{
    overflow:hidden;
    background:#fff!important
}
.reference-teachers .home-section-heading{
    width:100%;
    max-width:none;
    margin-bottom:2rem
}
.reference-teachers .home-section-heading>p{
    width:100%;
    max-width:none;
    margin:1rem 0 0;
    color:#262126;
    line-height:1.85;
    text-align:justify
}
.reference-teachers .source-carousel-shell{
    position:relative;
    padding:0 3.25rem
}
.reference-teachers .teacher-carousel-track{
    grid-auto-columns:calc((100% - 2rem)/3)!important;
    gap:1rem;
    padding:.75rem .2rem 1.25rem
}
.reference-teachers .teacher-card{
    display:flex;
    min-height:410px;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    padding:1.2rem 1rem 1.35rem!important;
    overflow:visible;
    background:transparent!important;
    border:1!important;
    border-radius:0!important;
    box-shadow:none!important;
    text-align:center;
    transform:none!important
}
.reference-teachers .teacher-image{
    position:relative;
    display:grid;
    width:100%;
    min-height:290px!important;
    place-items:center;
    overflow:visible!important;
    background:transparent!important;
    border:1!important
}
.reference-teachers .teacher-image::before{
    position:absolute;
    width:270px;
    height:270px;
    content:"";
 /*   background:linear-gradient(145deg,#fff4f7,#f9e3ea);
    border:1px solid rgba(186,19,73,.22);
    box-shadow:0 16px 38px rgba(91,31,52,.1);   */
	border-radius:50%;
}
.reference-teachers .teacher-image img{
    position:relative;
    z-index:1;
    width:250px!important;
    height:250px!important;
    object-fit:cover;
    object-position:top center;
    background:#f7edf0;
    border:6px solid #fff!important;
    border-radius:50%!important;
    box-shadow:0 0 0 2px #ba1349,0 15px 32px rgba(73,25,42,.16)!important;
    transition:transform .3s ease,box-shadow .3s ease
}
.reference-teachers .teacher-card:hover .teacher-image img{
    box-shadow:0 0 0 2px #ba1349,0 19px 38px rgba(73,25,42,.22)!important;
    transform:translateY(-4px) scale(1.02)
}
/*
.reference-teachers .teacher-info{
    position:static;
    width:100%;
    margin-top:.75rem;
    padding:0;
    background:transparent;
    border-radius:0
}*/
.reference-teachers .teacher-info h3{
    margin:0 0 0;
    color:#ba1349;
    font-size:20px;
    line-height:0;
}
.reference-teachers .teacher-info p{
    display:inline-flex;
	font-size:16px!important;
    font-weight:700;
    align-items:center;
    justify-content:center;
    margin:0;
 /*   padding:.38rem .9rem;
	min-height:38px;
    color:#171217;
    background:#fff1f5;
    border:1px solid rgba(186,19,73,.2);
    border-radius:999px;
    
    
    line-height:1.35;*/
}
.reference-teachers .source-carousel-controls{
    position:absolute;
    top:50%;
    right:0;
    left:0;
    z-index:3;
    display:flex;
    justify-content:space-between;
    margin:0;
    pointer-events:none;
    transform:translateY(-50%)
}
.reference-teachers .source-carousel-controls button{
    width:46px;
    height:46px;
    color:#ba1349;
    background:#fff;
    border-color:rgba(186,19,73,.34);
    box-shadow:0 9px 24px rgba(68,24,39,.14);
    font-size:20px;
    pointer-events:auto
}
.reference-teachers .source-carousel-controls button:hover,
.reference-teachers .source-carousel-controls button:focus-visible{
    color:#fff;
    background:#ba1349
}
.reference-teachers .btn{
    min-height:48px;
    font-size:16px!important
}

@media(max-width:991.98px){
    .reference-teachers .teacher-carousel-track{grid-auto-columns:calc((100% - 1rem)/2)!important}
}
@media(max-width:575.98px){
    .reference-teachers .source-carousel-shell{padding:0}
    .reference-teachers .teacher-carousel-track{grid-auto-columns:100%!important}
    .reference-teachers .source-carousel-controls{
        position:static;
        justify-content:center;
        gap:.75rem;
        margin-top:.35rem;
        pointer-events:auto;
        transform:none
    }
    .reference-teachers .teacher-card{min-height:390px;padding-inline:.35rem!important}
    .reference-teachers .teacher-image{min-height:275px!important}
    .reference-teachers .teacher-image::before{width:250px;height:250px}
    .reference-teachers .teacher-image img{width:232px!important;height:232px!important}
}

/* Yoga community: circular portrait carousel based on the supplied reference. */
.source-community{
    overflow:hidden;
    background:#fff!important
}
.source-community .community-heading{
    width:100%;
    max-width:none;
    margin-bottom:2.35rem
}
.source-community .community-heading h2{
    margin:0;
    color:#ba1349;
    font-size:32px!important;
    line-height:1.2
}
.source-community .community-heading>p{
    width:100%;
    max-width:none;
    margin:0 0 .55rem;
    color:#171217;
    font-size:.78rem!important;
    font-weight:700;
    letter-spacing:.11em;
    line-height:1.5;
    text-transform:uppercase
}
.source-community .community-heading .teacher-heading-mark{margin-bottom:0!important}
.source-community .source-carousel-shell{
    position:relative;
    padding:0 2.8rem
}
.source-community .community-scroll{
    grid-auto-columns:calc((100% - 6rem)/5)!important;
    gap:1.5rem;
    padding:.25rem .1rem .6rem
}
.source-community .source-community-card{
    min-width:0;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    text-align:center
}
.source-community .source-community-card>a{
    display:flex;
    height:100%;
    flex-direction:column;
    align-items:center;
    padding:0;
    color:#171217
}
.source-community .source-community-image{
    width:min(100%,205px);
    aspect-ratio:1;
    overflow:hidden;
    padding:6px;
    background:#fff;
    border:2px solid #ba1349;
    border-radius:50%;
    box-shadow:0 8px 24px rgba(76,20,39,.1)
}
.source-community .source-community-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    border-radius:50%!important;
    transition:transform .35s ease
}
.source-community .source-community-card:hover .source-community-image img{transform:scale(1.045)}
.source-community .source-community-card h3{
    display:grid;
    width:100%;
    min-height:58px;
    place-items:center;
    margin:1.15rem 0 .75rem;
    padding:.65rem 1.15rem;
    color:#fff;
    background:#c20f4b;
    clip-path:polygon(5% 0,100% 0,95% 100%,0 100%);
    font-family:var(--body-font);
    font-size:18px!important;
    font-weight:700;
    line-height:1.25
}
.source-community .community-instagram-handle{
    display:flex;
    min-width:0;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    color:#c20f4b;
    font-size:16px!important;
    line-height:1.3;
    overflow-wrap:anywhere
}
.source-community .community-instagram-handle .ui-icon{
    flex:0 0 auto;
    width:22px;
    height:22px;
    padding:3px;
    color:#fff;
    background:radial-gradient(circle at 30% 100%,#feda75,#d62976 48%,#4f5bd5);
    border-radius:7px
}
.source-community .source-carousel-controls{
    position:absolute;
    top:92px;
    right:0;
    left:0;
    z-index:3;
    display:flex;
    justify-content:space-between;
    margin:0;
    pointer-events:none
}
.source-community .source-carousel-controls button{
    width:40px;
    height:40px;
    color:#ba1349;
    background:#fff;
    border:1px solid rgba(186,19,73,.28);
    box-shadow:0 7px 20px rgba(62,19,34,.12);
    font-size:18px;
    pointer-events:auto
}
.source-community .source-carousel-controls button:hover,
.source-community .source-carousel-controls button:focus-visible{
    color:#fff;
    background:#ba1349
}
.source-community .community-follow{margin-top:2.7rem}
.source-community .community-follow-btn{
    min-height:58px;
    padding:.85rem 2.1rem;
    color:#ba1349!important;
    background:#fff!important;
    border:2px solid #ba1349;
    box-shadow:none;
    font-size:18px!important
}
.source-community .community-follow-btn:hover,
.source-community .community-follow-btn:focus-visible{
    color:#fff!important;
    background:#ba1349!important;
    transform:translateY(-2px)
}
.source-community .community-follow-btn .ui-icon{width:22px;height:22px}

@media(max-width:1199.98px){
    .source-community .community-scroll{grid-auto-columns:calc((100% - 3rem)/4)!important;gap:1rem}
}
@media(max-width:991.98px){
    .source-community .community-scroll{grid-auto-columns:calc((100% - 2rem)/3)!important}
}
@media(max-width:767.98px){
    .source-community .community-heading{margin-bottom:1.75rem}
    .source-community .community-heading>p{font-size:.74rem!important}
    .source-community .community-scroll{grid-auto-columns:calc((100% - 1rem)/2)!important}
}
@media(max-width:575.98px){
    .source-community .source-carousel-shell{padding:0}
    .source-community .community-scroll{grid-auto-columns:84%!important;gap:1rem;padding-inline:8%}
    .source-community .source-community-image{width:205px}
    .source-community .source-carousel-controls{
        position:static;
        justify-content:center;
        gap:.75rem;
        margin-top:.6rem;
        pointer-events:auto
    }
    .source-community .community-follow{margin-top:1.7rem}
    .source-community .community-follow-btn{width:min(100%,330px);justify-content:center}
}

/* Instagram carousel: 3/5 desktop, 2/4 tablet, 1/2 phone. */
.source-instagram .instagram-row{container-type:inline-size}
.source-instagram .instagram-track a{flex:0 0 auto}
.source-instagram .instagram-row-top .instagram-track a{
    width:calc((100cqw - 2rem)/3);
    max-width:none;
    aspect-ratio:2/1
}
.source-instagram .instagram-row-bottom .instagram-track a{
    width:calc((100cqw - 4rem)/5);
    max-width:none
}
@media(max-width:991.98px){
    .source-instagram .instagram-row-top .instagram-track a{
        width:calc((100cqw - 1rem)/2)
    }
    .source-instagram .instagram-row-bottom .instagram-track a{
        width:calc((100cqw - 3rem)/4)
    }
}


/* Homepage enquiry CTA */
.enquiry-cta{
    position:relative;
    overflow:hidden;
    background:#fff!important
}
.enquiry-cta .enquiry-inner{
    display:grid;
    width:100%;
    max-width:none;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:clamp(1.4rem,3vw,2.75rem);
    margin:0;
    padding:clamp(2rem,4vw,3.25rem);
    color:#fff;
   /* background:linear-gradient(120deg,#7c0e36 0%,#ba1349 58%,#8e0f3c 100%);*/
   background:#ba1349;
    border:1px solid rgba(186,19,73,.2);
    border-radius:24px;
    box-shadow:0 22px 52px rgba(91,9,39,.2);
    text-align:left
}
.enquiry-cta .enquiry-symbol{
    display:grid;
    width:94px;
    height:94px;
    place-items:center;
    color:#ba1349;
    background:#fff;
    border:5px solid rgba(255,255,255,.45);
    border-radius:50%;
    box-shadow:0 12px 30px rgba(77,5,31,.24);
    font-family:var(--heading-font);
    font-size:38px
}
.enquiry-cta .enquiry-copy .eyebrow{
    display:block;
    margin-bottom:.3rem;
    color:#fff!important;
    font-size:13px;
    font-weight:700;
    letter-spacing:.15em;
    text-transform:uppercase
}
.enquiry-cta .enquiry-copy h2{
    margin:0;
    color:#fff!important;
    font-size:clamp(28px,3vw,38px)!important
}
.enquiry-cta .enquiry-copy.heading-with-divider>h2::after{
    width:190px;
    margin:.45rem auto .55rem;
    filter:brightness(0) invert(1)
}
.enquiry-cta .enquiry-copy p{
    max-width:650px;
    margin:0;
    color:#fff!important;
    line-height:1.7
}
.enquiry-cta .enquiry-actions{
    display:grid;
    gap:.75rem;
    margin:0
}
.enquiry-cta .enquiry-actions .btn{
    display:inline-flex;
    min-width:190px;
    min-height:52px;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    padding:.75rem 1.25rem;
    border:2px solid #fff;
    border-radius:999px;
    box-shadow:none;
    font-size:15px
}
.enquiry-cta .enquiry-actions .btn-light{
    color:#ba1349!important;
    background:#fff!important
}
.enquiry-cta .enquiry-actions .btn-light:hover,
.enquiry-cta .enquiry-actions .btn-light:focus-visible{
    color:#fff!important;
    background:transparent!important
}
.enquiry-cta .enquiry-actions .btn-ghost{
    color:#fff!important;
    background:transparent!important
}
.enquiry-cta .enquiry-actions .btn-ghost:hover,
.enquiry-cta .enquiry-actions .btn-ghost:focus-visible{
    color:#ba1349!important;
    background:#fff!important
}
.enquiry-cta .enquiry-actions .ui-icon{width:18px;height:18px}
@media(max-width:991.98px){
    .enquiry-cta .enquiry-inner{grid-template-columns:auto minmax(0,1fr)}
    .enquiry-cta .enquiry-actions{
        grid-column:1/-1;
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:575.98px){
    .enquiry-cta .enquiry-inner{
        grid-template-columns:1fr;
        gap:1.1rem;
        padding:1.5rem 1.15rem;
        border-radius:16px;
        text-align:center
    }
    .enquiry-cta .enquiry-symbol{width:74px;height:74px;margin:auto;font-size:30px}
    .enquiry-cta .enquiry-copy.heading-with-divider>h2::after{margin:.45rem auto .55rem}
    .enquiry-cta .enquiry-actions{grid-column:1;grid-template-columns:1fr;width:100%}
    .enquiry-cta .enquiry-actions .btn{width:100%;min-width:0}
}

/* Simplified homepage hero without a full-image overlay. */
.hero-carousel .hero-simple-copy{
    width:min(100%,1080px);
    max-width:1080px;
    margin:auto;
    padding:1rem!important;
    color:#171214!important;
    background:transparent!important;
    border:0;
    border-radius:0;
    box-shadow:none;
    text-align:center;
    backdrop-filter:none;
    -webkit-backdrop-filter:none
}
.hero-carousel .hero-slide-content{justify-content:center}
.hero-carousel .hero-simple-copy h1,
.hero-carousel .hero-simple-copy h2{
    margin:0 0 .75rem;
    color:#fff!important;
    text-shadow:0 2px 7px rgba(0,0,0,.85),0 0 18px rgba(0,0,0,.45)
}
.hero-carousel .hero-simple-copy p{
    max-width:none;
    margin:0!important;
    color:#fff!important;
    font-size:clamp(16px,1.35vw,19px);
    line-height:1.55;
    text-align:center;
    text-shadow:0 2px 6px rgba(0,0,0,.85),0 0 14px rgba(0,0,0,.45);
    white-space:nowrap
}
.hero-carousel .hero-simple-copy .hero-actions{
    justify-content:center;
    margin-top:1.35rem
}
.hero-carousel .hero-simple-copy .hero-actions .btn{
    width:auto;
    min-width:240px;
    border:2px solid #ba1349;
    border-radius:999px;
    box-shadow:none;
    font-size:15px
}
@media(max-width:991.98px){
    .hero-carousel .hero-simple-copy{width:min(100%,760px);margin-inline:auto}
    .hero-carousel .hero-simple-copy p{white-space:normal}
    .hero-carousel .hero-simple-copy .hero-actions{justify-content:center}
}
@media(max-width:575.98px){
    .hero-carousel .hero-simple-copy{
        margin:1rem 0;
        padding:1rem .5rem!important
    }
    .hero-carousel .hero-simple-copy .hero-actions .btn{width:100%;min-width:0}
}

/* Desktop contact bar sizing */
.contact-bar .header-contact>.contact-icon:first-child{
    width:32px;
    height:32px
}
.contact-bar .header-contact>.contact-icon:first-child .ui-icon{
    width:17px;
    height:17px
}
.contact-bar .header-contact>span:nth-child(2)>small{font-size:13px}
.contact-bar .header-contact>span:nth-child(2)>a{font-size:20px}
.contact-bar .header-socials>a{
    width:40px;
    height:40px
}
.contact-bar .header-socials>a .ui-icon{
    width:18px;
    height:18px
}
.contact-bar .header-book-button{font-size:16px}
@media(min-width:1200px){
    .announcement-bar .announcement-main{font-size:20px}
    .announcement-bar .announcement-date{font-size:16px}
    .announcement-bar .announcement-button{font-size:16px}
    .contact-bar .header-contact>.contact-icon:first-child .ui-icon{
        width:22px;
        height:22px
    }
    .contact-bar .header-contact>.contact-icon-small{
        width:40px;
        height:40px
    }
    .contact-bar .header-contact>.contact-icon-small .ui-icon{
        width:20px;
        height:20px
    }
    .contact-bar .header-socials>a .ui-icon{
        width:22px;
        height:22px
    }
    .contact-bar .header-email{font-size:16px}
}

/* Homepage FAQ */
.faq-section{background:#fff8fb!important}
.faq-section .faq-home-heading{margin-bottom:2rem}
.faq-section .faq-home-heading h2{
    margin-bottom:0;
    color:#ba1349
}
.faq-section .faq-home-heading h2::after{display:none!important}
.faq-section .faq-home-heading>p{
    margin:0 0 .35rem;
    color:#171315;
    font-family:var(--body-font);
    font-size:20px;
    font-weight:700;
    line-height:1.45
}
.faq-section .faq-home-divider{
    width:min(255px,70vw);
    height:35px;
    margin:.75rem auto 0
}
.faq-section .faq-home-divider img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain
}
.faq-section .faq-home-layout{
    display:grid;
    grid-template-columns:minmax(300px,.98fr) minmax(0,1.28fr);
    align-items:start;
    gap:clamp(2rem,4vw,4rem)
}
.faq-section .faq-home-visual{
    position:sticky;
    top:110px;
    display:grid;
    min-height:590px;
    margin:0;
    padding:1.25rem;
    place-items:center;
    overflow:hidden;
    background:linear-gradient(145deg,#fff 0%,#fdeaf1 100%);
    border:1px solid rgba(186,19,73,.24);
    border-radius:22px;
  /*  box-shadow:0 18px 42px rgba(74,18,38,.1)*/
}
.faq-section .faq-home-visual::before{
    position:absolute;
    inset:1rem;
    content:"";
    border:1px solid rgba(186,19,73,.16);
    border-radius:15px;
    pointer-events:none
}
.faq-section .faq-home-visual img{
    position:relative;
    z-index:1;
    display:block;
    width:100%;
    height:auto;
    object-fit:contain
}
.faq-section .faq-home-accordion{
    display:grid;
    max-width:none;
    gap:.85rem;
    margin-inline:auto;
    padding:0;
    background:transparent;
    border:0;
    border-radius:0
}
.faq-section .faq-home-accordion .accordion-item{
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(186,19,73,.24)!important;
    border-radius:12px;
    box-shadow:0 10px 28px rgba(74,18,38,.07)
}
.faq-section .faq-home-accordion .accordion-button{
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    gap:.85rem;
    min-height:76px;
    padding:1rem 1.25rem;
    color:#35131f;
    background:#fff;
    font-size:17px;
    line-height:1.45;
    text-align:left
}
.faq-section .faq-home-accordion .accordion-button:not(.collapsed){
    color:#fff;
    background:#ba1349
}
.faq-section .faq-home-accordion .accordion-button::after{
    grid-column:3;
    grid-row:1;
    align-self:center
}
.faq-section .faq-home-accordion .accordion-button:not(.collapsed)::after{
    filter:brightness(0) invert(1)
}
.faq-section .faq-home-icon{
    display:grid;
    width:36px;
    height:36px;
    place-items:center;
    align-self:center;
    color:#ba1349;
    background:#f9e5ec;
    border-radius:50%;
    font-size:14px
}
.faq-section .accordion-button:not(.collapsed) .faq-home-icon{
    color:#ba1349;
    background:#fff
}
.faq-section .faq-home-accordion .accordion-body{
    padding:1.15rem 1.4rem 1.3rem 4.55rem;
    color:#4f4549;
    background:#fff;
    border-top:1px solid rgba(186,19,73,.14);
    font-size:16px;
    line-height:1.8
}
@media(max-width:991.98px){
    .faq-section .faq-home-layout{grid-template-columns:1fr}
    .faq-section .faq-home-visual{
        position:relative;
        top:auto;
        min-height:390px;
        padding:1rem
    }
    .faq-section .faq-home-visual img{width:min(100%,680px);max-height:430px}
}
@media(max-width:575.98px){
    .faq-section .faq-home-heading>p{font-size:17px}
    .faq-section .faq-home-layout{gap:1.5rem}
    .faq-section .faq-home-visual{min-height:270px;padding:.65rem;border-radius:14px}
    .faq-section .faq-home-visual::before{inset:.55rem;border-radius:10px}
    .faq-section .faq-home-visual img{max-height:300px}
    .faq-section .faq-home-accordion .accordion-button{
        grid-template-columns:32px minmax(0,1fr) auto;
        gap:.65rem;
        min-height:70px;
        padding:.9rem;
        font-size:15px
    }
    .faq-section .faq-home-icon{width:30px;height:30px;font-size:12px}
    .faq-section .faq-home-accordion .accordion-body{padding:1rem;font-size:15px}
}
@media(max-width:575.98px){
    .source-instagram .instagram-row-top .instagram-track a{
        width:100cqw
    }
    .source-instagram .instagram-row-bottom .instagram-track a{
        width:calc((100cqw - 1rem)/2)
    }
}

/* Yoga Moments carousel */
.source-reels{overflow:hidden;background:#fff!important}
.source-reels .home-section-heading{margin-bottom:2rem}

.source-reels .home-section-heading h2{color:#ba1349!important}
.source-reels .source-carousel-shell{padding-inline:3.25rem}
.source-reels .reels-scroll{
    grid-auto-columns:calc((100% - 4rem)/5)!important;
    gap:1rem;
    padding:.4rem 0 1rem
}
.source-reels .source-reel-card{
    background:#17080d!important;
    border-color:rgba(186,19,73,.28)!important;
    border-radius:12px!important
}
.source-reels .source-carousel-controls{
    position:absolute;
    top:50%;
    right:0;
    left:0;
    z-index:3;
    display:flex;
    justify-content:space-between;
    margin:0;
    pointer-events:none;
    transform:translateY(-50%)
}
.source-reels .source-carousel-controls button{
    width:44px;
    height:44px;
    color:#ba1349;
    background:#fff;
    border:2px solid #ba1349;
    box-shadow:0 8px 22px rgba(70,17,35,.14);
    pointer-events:auto
}
.source-reels .source-carousel-controls button:hover,
.source-reels .source-carousel-controls button:focus-visible{
    color:#fff;
    background:#ba1349;
    outline:none
}
.source-reels>.container>.text-center{margin-top:1.5rem!important}
.source-reels .community-follow-btn{
    color:#fff!important;
    background:#ba1349!important;
    border:2px solid #ba1349;
    box-shadow:none
}
.source-reels .community-follow-btn:hover,
.source-reels .community-follow-btn:focus-visible{
    color:#ba1349!important;
    background:#fff!important
}
@media(max-width:991.98px){
    .source-reels .reels-scroll{grid-auto-columns:calc((100% - 3rem)/4)!important}
}
@media(max-width:767.98px){
    .source-reels .source-carousel-shell{padding-inline:0}
    .source-reels .reels-scroll{grid-auto-columns:calc((100% - 1rem)/2)!important}
    .source-reels .source-carousel-controls{
        position:static;
        justify-content:center;
        gap:.75rem;
        margin-top:.75rem;
        pointer-events:auto;
        transform:none
    }
}

/* Keep structural bars, CTA sections and the footer unchanged while content sections stay neutral. */
main section:not([class*="cta"]) {
    background: transparent !important;
}
/*
html body main section:not([class*="cta"]):not([data-preserve-content-style]) p {
    color: #000 !important;
}
*/
/* Mission section: clean borderless panel and consistent readable text. */
.mission-section .mission-panel {
    border: 0 !important;
}

.mission-section,
.mission-section .mission-copy,
.mission-section .mission-copy .eyebrow,
.mission-section .mission-copy h2,
.mission-section .mission-copy p,
.mission-section .mission-values span,
.mission-section .mission-values b,
.mission-section .mission-copy .btn,
.mission-section .mission-copy .btn:hover,
.mission-section .mission-copy .btn:focus-visible {
    color: #000 !important;
}

/* Preserve the white supporting copy over the Study Yoga background image. */
.source-section .container.narrow-content p {
    color: #fff !important;
}

/* Retreat section on the neutral page background: dark copy, white image-card text. */
.retreat-section .retreat-copy .eyebrow,
.retreat-section .retreat-copy h2 {
    color: rgb(186,19,73)!important;
}
.retreat-section .retreat-copy blockquote p,
.retreat-section .retreat-experiences span {
    color: #000!important;
}
.footer-about > p,.retreat-section .retreat-copy > p{ color: #000 !important;}
.retreat-section .retreat-experiences span {
    background: rgba(186, 19, 73, .06) !important;
    border-color: rgba(186, 19, 73, .22) !important;
}

.retreat-section .retreat-card-copy > span,
.retreat-section .retreat-card-copy h3,
.retreat-section .retreat-card .retreat-card-copy p,
.retreat-section .retreat-card-copy a {
    color: #fff !important;
}

.retreat-section .retreat-duration,
.retreat-section .retreat-duration b {
    color: rgb(186,19,73)!important;
}

/* Hero headings do not use the shared decorative divider. */
.hero-carousel .hero-simple-copy h2::after {
    display: none !important;
    content: none !important;
}

/* Home statistics use dark text on the neutral section background. */
.home-stats .stats-grid strong,
.home-stats .stats-grid span {
    color: #000 !important;
}

.retreat-section .retreat-heading .eyebrow,
.retreat-section .retreat-heading h2 {
    color: rgb(186,19,73)!important;
}

/* Full-bleed image carousel placed directly below the Welcome section. */
.welcome-image-carousel {
    width: 100%;
    overflow: hidden;
    padding: 0 0 clamp(2.5rem, 5vw, 5rem);
}

.welcome-image-track {
    display: flex;
    width: max-content;
    gap: 14px;
    animation: welcomeImageFlow 38s linear infinite;
    will-change: transform;
}

.welcome-image-track:hover {
    animation-play-state: paused;
}

.welcome-image-track figure {
    flex: 0 0 clamp(260px, 25vw, 430px);
    height: clamp(190px, 20vw, 290px);
    margin: 0;
    overflow: hidden;
}

.welcome-image-track img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@keyframes welcomeImageFlow {
    to { transform: translateX(-50%); }
}

/* Expanded course introduction remains easy to scan. */
.detailed-training .home-section-heading > p + p {
    margin-top: .85rem;
}

/* Centered heading and four compact cards for the homepage blog. */
.blog-section .blog-home-heading {
    margin-bottom: 2rem;
}

.blog-home-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.blog-home-grid .blog-card {
    min-width: 0;
    border-radius: 12px;
    box-shadow: 0 8px 22px rgba(45, 18, 28, .08);
}

.blog-home-grid .blog-card > img {
    height: 165px;
    aspect-ratio: auto;
}

.blog-home-grid .blog-card > div {
    padding: 1rem;
}

.blog-home-grid .blog-card h3 {
    margin: .4rem 0 .55rem;
    font-size: 20px !important;
    line-height: 1.3;
}

.blog-home-grid .blog-card p {
    margin-bottom: .8rem;
    font-size: 14px !important;
    line-height: 1.55;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    line-clamp: 4;
}

.blog-empty-state {
    padding: 2rem 1.5rem;
    color: var(--primary-color);
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    background: var(--white);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    box-shadow: 0 8px 22px rgba(45, 18, 28, .08);
}

/* Homepage FAQ: transparent answers, black copy and clean bordered questions. */
.faq-section .faq-home-accordion .accordion-item {
    overflow: hidden;
    background: transparent !important;
    border: 1px solid rgba(0, 0, 0, .22) !important;
    border-radius: 10px;
    box-shadow: none !important;
}

.faq-section .faq-home-accordion .accordion-button,
.faq-section .faq-home-accordion .accordion-button:not(.collapsed) {
    color: #000 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.faq-section .faq-home-accordion .accordion-button:not(.collapsed) {
    border-bottom: 1px solid rgba(0, 0, 0, .14);
}

.faq-section .faq-home-accordion .accordion-button::after,
.faq-section .faq-home-accordion .accordion-button:not(.collapsed)::after {
    filter: none !important;
}

.faq-section .accordion-button:not(.collapsed) .faq-home-icon,
.faq-section .faq-home-icon {
    color: #000 !important;
    background: transparent !important;
    border: 1px solid rgba(0, 0, 0, .28);
}

.faq-section .faq-home-accordion .accordion-body {
    color: #000 !important;
    background: transparent !important;
}

.faq-section .faq-home-visual {
    min-height: 520px;
    padding: 0;
    overflow: hidden;
    background: transparent !important;
    border: 1px solid rgba(0, 0, 0, .18);
    border-radius: 24px;
 /*   box-shadow: 0 14px 34px rgba(32, 20, 24, .1);*/
}

.faq-section .faq-home-visual::before {
    display: none;
}

.faq-section .faq-home-visual img {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
}

@media (max-width: 991.98px) {
    .blog-home-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .faq-section .faq-home-visual,
    .faq-section .faq-home-visual img { min-height: 380px; }
}

@media (max-width: 575.98px) {
    .welcome-image-track { gap: 10px; animation-duration: 30s; }
    .welcome-image-track figure { flex-basis: 78vw; height: 220px; }
    .blog-home-grid { grid-template-columns: 1fr; }
    .blog-home-grid .blog-card > img { height: 190px; }
    .faq-section .faq-home-visual,
    .faq-section .faq-home-visual img { min-height: 280px; }
}

@media (prefers-reduced-motion: reduce) {
    .welcome-image-track { animation: none; }
}

/* Uniform second-level heading size across the entire website. */
html body h2:not(#sitewide-h2-size-override) {
    font-size: 34px !important;
}

.faq-section .faq-home-visual {
    overflow: visible !important;
    border: 0 !important;
}

/* Reference-led Welcome section with the former Mission image composition. */
.welcome-reference-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr);
    align-items: center;
    gap: clamp(2rem, 5vw, 5rem);
}

.welcome-expanded-copy p,
.welcome-full-copy p {
    margin-bottom: .9rem;
    color: #000 !important;
    line-height: 1.75;
    text-align: justify;
}

.welcome-expanded-copy {
    display: flex;
    min-height: 520px;
    flex-direction: column;
    justify-content: space-between;
}

.welcome-expanded-copy p:last-child {
    margin-bottom: 0;
}

.welcome-mission-visual {
    position: relative;
    min-height: 520px;
    padding: 1rem 0 4.5rem 3rem;
}

.welcome-mission-primary,
.welcome-mission-secondary {
    position: absolute;
    overflow: hidden;
    background: #eee;
    border: 5px solid #fff;
    box-shadow: 0 18px 42px rgba(47, 20, 30, .16);
    border-radius: 0 !important;
}

.welcome-mission-primary {
    inset: 0 0 3.5rem 3rem;
    outline: 1px solid rgba(186, 19, 73, .5);
}

.welcome-mission-secondary {
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 47%;
    height: 48%;
    outline: 1px solid rgba(186, 19, 73, .5);
}

.welcome-mission-primary img,
.welcome-mission-secondary img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.welcome-mission-emblem {
    position: absolute;
    top: 1.4rem;
    left: .2rem;
    z-index: 3;
    display: grid;
    width: 108px;
    height: 108px;
    place-items: center;
    padding: .7rem;
    color: #000;
    background: #fff;
    border: 2px solid #ba1349;
    border-radius: 50%;
    box-shadow: 0 10px 26px rgba(55, 18, 31, .2);
    text-align: center;
}

.welcome-mission-emblem strong {
    font-size: 25px;
    line-height: 1;
}

.welcome-mission-emblem span {
    font-size: 10px;
    font-weight: 800;
    line-height: 1.25;
    text-transform: uppercase;
}

.welcome-full-copy {
    margin-top: 1.4rem;
}

.welcome-trust-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 1.8rem;
    overflow: hidden;
    background: #fff;
    border-top: 2px solid #ba1349;
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(45, 20, 29, .09);
}

.welcome-trust-strip div {
    padding: 1rem;
    border-right: 1px solid rgba(0, 0, 0, .12);
    text-align: center;
}

.welcome-trust-strip div:last-child {
    border-right: 0;
}

.welcome-trust-strip strong,
.welcome-trust-strip span {
    display: block;
    color: #000;
}

.welcome-trust-strip strong {
    font-size: 22px;
}

.welcome-trust-strip span {
    margin-top: .2rem;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.welcome-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .8rem;
    margin-top: 1.4rem;
}

.welcome-actions .btn {
    min-width: 145px;
}

.welcome-mission-primary,
.welcome-mission-secondary {
    border-radius: 16px !important;
}

@media (max-width: 991.98px) {
    .welcome-reference-grid { grid-template-columns: 1fr; }
    .welcome-expanded-copy { min-height: 0; }
    .welcome-mission-visual { width: min(100%, 650px); margin-inline: auto; }
}

@media (max-width: 575.98px) {
    .welcome-expanded-copy p,
    .welcome-full-copy p { text-align: left; }
    .welcome-mission-visual { min-height: 410px; padding: .5rem 0 3rem 1.7rem; }
    .welcome-mission-primary { inset: 0 0 2.5rem 1.8rem; }
    .welcome-mission-secondary { width: 50%; height: 43%; }
    .welcome-mission-emblem { top: .4rem; width: 82px; height: 82px; }
    .welcome-trust-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .welcome-trust-strip div:nth-child(2) { border-right: 0; }
    .welcome-trust-strip div:nth-child(-n+2) { border-bottom: 1px solid rgba(0, 0, 0, .12); }
    .welcome-actions .btn { flex: 1 1 145px; }
}

/* Simplified descriptions inside the three detailed yoga course cards. */
.detailed-training .detailed-course-copy > h2 {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .4rem;
    margin: 0 0 1rem;
    color: #000 !important;
    overflow-wrap: anywhere;
    white-space: normal;
}

.detailed-training .course-description-dummy {
    margin: 1rem 0 1.2rem;
    color: #000 !important;
    font-size: 18px !important;
    line-height: 1.7;
}

.detailed-training .course-price-note {
    margin: .75rem 0 1.1rem;
    overflow: hidden;
    color: #000 !important;
    font-size: 15px !important;
    line-height: 1.5;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Standard centered heading treatment for the Yoga Retreats section. */
.retreat-section .retreat-heading {
    width: 100%;
    max-width: 900px;
    margin: 0 auto 2.5rem;
    text-align: center;
}

.retreat-section .retreat-heading .eyebrow {
    display: block;
    margin-bottom: .4rem;
    color: #000 !important;
}

.retreat-section .retreat-heading h2 {
    margin: 0;
    color: rgb(186,19,73)!important;
    line-height: 1.25;
}

@media (max-width: 767.98px) {
    .detailed-training .detailed-course-copy > h2 {
        flex-wrap: wrap;
        white-space: normal;
    }

    .detailed-training .course-price-note {
        overflow: visible;
        text-overflow: clip;
        white-space: normal;
    }
}

/* Long-copy replacement section with intentionally empty image placeholders. */
.content-placeholder-section {
    overflow: hidden;
}

.content-placeholder-copy {
    max-width: 1220px;
    margin: 0 auto;
}

.content-placeholder-copy p {
    margin-bottom: .95rem;
    color: #000 !important;
    line-height: 1.78;
    text-align: justify;
}

.content-placeholder-carousel {
    width: 100%;
    margin-top: 1.7rem;
    overflow: hidden;
}

.content-placeholder-track {
    display: flex;
    width: max-content;
    gap: 14px;
    animation: contentPlaceholderFlow 30s linear infinite;
    will-change: transform;
}

.content-placeholder-track:hover {
    animation-play-state: paused;
}

.content-image-placeholder {
    display: grid;
    flex: 0 0 320px;
    width: 320px;
    height: 210px;
    place-content: center;
    color: #000;
    background: repeating-linear-gradient(-45deg, #f6f6f6 0 12px, #ececec 12px 24px);
    border: 1px dashed rgba(0, 0, 0, .42);
    border-radius: 10px;
    text-align: center;
}

.content-image-placeholder span {
    font-size: 18px;
    font-weight: 800;
    letter-spacing: .12em;
}

.content-image-placeholder small {
    margin-top: .35rem;
    font-size: 13px;
}

.content-online-slide {
    flex: 0 0 320px;
    width: 320px;
    height: 210px;
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(195, 13, 81, .25);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(31, 34, 40, .12);
}

.content-online-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@keyframes contentPlaceholderFlow {
    to { transform: translateX(-50%); }
}

.content-placeholder-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .8rem;
    margin-top: 1.5rem;
}

.content-placeholder-actions .btn {
    min-width: 145px;
}

@media (max-width: 575.98px) {
    .content-placeholder-copy p { text-align: left; }
    .content-placeholder-track { gap: 10px; animation-duration: 24s; }
    .content-image-placeholder,
    .content-online-slide { flex-basis: 76vw; width: 76vw; height: 190px; }
    .content-placeholder-actions .btn { flex: 1 1 145px; }
}

@media (prefers-reduced-motion: reduce) {
    .content-placeholder-track { animation: none; }
}

.content-placeholder-heading {
    margin-bottom: 1.8rem;
}


/* Reference-style replacement for the former Why to Choose Us section. */
.why-reference-section .home-section-heading {
    margin-bottom: 1.25rem;
}

.why-reference-intro,
.why-reference-copy > p,
.why-reference-notes p {
    color: #000 !important;
    line-height: 1.72;
}

.why-reference-intro {
    margin-bottom: 1.5rem;
    text-align: center;
}

.why-reference-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
    align-items: center;
    gap: clamp(2rem, 5vw, 5rem);
}

.why-reference-list {
    display: grid;
    gap: .7rem;
    margin: 1.15rem 0;
}

.why-reference-list article {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    gap: .55rem;
    align-items: start;
}

.why-reference-list article > span {
    color: #ba1349;
    font-size: 13px;
    line-height: 1.75;
}

.why-reference-list p {
    margin: 0;
    color: #000 !important;
    line-height: 1.65;
}

.why-reference-list strong,
.why-reference-notes strong {
    color: #ba1349;
}

.why-reference-visual {
    min-height: 520px;
    margin: 0;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: 0 16px 38px rgba(41, 18, 28, .13);
}

.why-reference-visual img {
    display: block;
    width: 100%;
    height: 520px;
    object-fit: cover;
}

.why-reference-notes {
    display: grid;
    gap: .55rem;
    margin-top: 1.4rem;
}

.why-reference-notes p {
    position: relative;
    margin: 0;
    padding-left: 1.5rem;
}

.why-reference-notes p::before {
    position: absolute;
    top: .65em;
    left: 0;
    width: 7px;
    height: 7px;
    background: #ba1349;
    border-radius: 50%;
    content: "";
}

@media (max-width: 991.98px) {
    .why-reference-grid { grid-template-columns: 1fr; }
    .why-reference-visual { grid-row: 1; width: min(100%, 680px); margin-inline: auto; }
}

@media (max-width: 575.98px) {
    .why-reference-intro { text-align: left; }
    .why-reference-visual,
    .why-reference-visual img { min-height: 320px; height: 320px; }
}

/* Certificates and approvals section, built from semantic text badges. */
.certifications-heading {
    max-width: 1240px;
    margin: 0 auto;
}




.certifications-badges {
    display: grid;
    grid-template-columns: 1.55fr repeat(3, 1fr) 1.35fr;
    align-items: center;
    gap: clamp(1rem, 3vw, 2.5rem);
    max-width: 1140px;
    margin: 2.7rem auto;
}

.certification-wordmark {
    display: grid;
    color: #0f4d56;
    font-family: var(--heading-font);
    line-height: .8;
    text-align: center;
}

.certification-wordmark strong { font-size: clamp(46px, 5vw, 72px); }
.certification-wordmark span { font-size: clamp(35px, 4vw, 58px); }

.certification-seal {
    position: relative;
    display: grid;
    width: clamp(125px, 12vw, 165px);
    aspect-ratio: 1;
    place-content: center;
    justify-self: center;
    padding: 1rem;
    color: #174f57;
    border: 4px double currentColor;
    border-radius: 50%;
    text-align: center;
}

.certification-seal::before {
    position: absolute;
    inset: 8px;
    border: 1px solid currentColor;
    border-radius: inherit;
    content: "";
}

.certification-seal small,
.certification-seal strong,
.certification-seal em { position: relative; z-index: 1; }
.certification-seal small { font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.certification-seal strong { margin: .3rem 0; font-size: clamp(20px, 2vw, 28px); line-height: 1; }
.certification-seal em { font-size: 12px; font-style: normal; font-weight: 800; }

.certification-place {
    display: grid;
    color: #283c86;
    font-family: var(--heading-font);
    text-align: center;
}

.certification-place::before {
    justify-self: center;
    margin-bottom: .4rem;
    color: #ba1349;
    content: "❧";
    font-size: 54px;
    line-height: .6;
    transform: rotate(-20deg);
}

.certification-place strong { font-size: clamp(25px, 3vw, 42px); }
.certification-place span { font-size: 20px; font-style: italic; }

.certifications-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.25rem;
}

.certifications-actions .btn {
    min-width: 270px;
    padding: .78rem 1.25rem !important;
    font-size: 18px;
}

@media (max-width: 991.98px) {
    .certifications-badges { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .certification-wordmark { grid-column: span 2; }
}

@media (max-width: 575.98px) {
    .certifications-heading p { font-size: 16px; }
    .certifications-badges { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.3rem .8rem; }
    .certification-wordmark { grid-column: 1 / -1; }
    .certification-place { grid-column: 1 / -1; }
    .certifications-actions { gap: .75rem; }
    .certifications-actions .btn { width: 100%; min-width: 0; font-size: 16px; }
}

/* Distinct Food & Accommodation showcase panels inspired by, not copied from, the reference. */
.facility-showcase-list { display:grid; gap:2rem; }
.facility-showcase { display:grid; grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr); overflow:hidden; background:#fff; border:0; border-radius:18px; }
.facility-showcase-content { position:relative; padding:clamp(1.5rem,3.4vw,3rem); }
.facility-showcase-number { position:absolute; top:1rem; right:1.2rem; color:rgba(186,19,73,.12); font-family:var(--heading-font); font-size:58px; font-weight:800; line-height:1; }
.facility-showcase-content .eyebrow { display:block; margin-bottom:.35rem; color:#ba1349!important; }
.facility-showcase-content h2 { position:relative; margin:0 0 1.15rem; color:#000!important; }
.facility-showcase-content h2::after { display:block; width:74px; height:3px; margin-top:.65rem; background:#ba1349; content:""; }
.facility-showcase-content p { color:#000!important; line-height:1.72; }
.facility-showcase-image { position:relative; min-height:520px; margin:0; overflow:hidden; background:#eee; }
.facility-showcase-image img { display:block; width:100%; height:100%; min-height:520px; object-fit:cover; transform:scale(1); transform-origin:center; transition:transform .45s ease; will-change:transform; }
.facility-showcase:hover .facility-showcase-image img { transform:scale(1.03); }
@media (prefers-reduced-motion: reduce) { .facility-showcase-image img { transition:none; } .facility-showcase:hover .facility-showcase-image img { transform:none; } }
.facility-showcase-image figcaption { position:absolute; right:1rem; bottom:1rem; left:1rem; padding:.65rem .85rem; color:#fff; background:rgba(0,0,0,.58); border-radius:8px; font-size:14px; font-weight:700; }
.facility-amenities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; margin-top:1.25rem; }
.facility-amenities>span { display:grid; min-height:95px; align-content:center; gap:.4rem; padding:.65rem; color:#000; background:#fff8f2; border:1px solid rgba(186,19,73,.12); border-radius:10px; font-size:14px; font-weight:700; text-align:center; }
.facility-amenities b { color:#ba1349; font-family:Georgia,serif; font-size:26px; line-height:1; }
@media(max-width:991.98px){.facility-showcase{grid-template-columns:1fr}.accommodation-showcase .facility-showcase-image{grid-row:1}.facility-showcase-image,.facility-showcase-image img{min-height:390px}}
@media(max-width:575.98px){.facility-showcase{border-radius:12px}.facility-showcase-content{padding:1.25rem}.facility-showcase-image,.facility-showcase-image img{min-height:290px}.facility-amenities{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.facility-amenities>span{min-height:84px;font-size:13px}}

/* Four-image visual collage used by the food-accommodation-2 include variant. */
.facility-showcase-image-grid { padding:10px; background:#f7f2f4; }
.facility-showcase-image-grid .facility-image-grid { display:grid; width:100%; height:100%; min-height:500px; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(0,1fr)); gap:8px; }
.facility-showcase-image-grid img { min-height:0!important; height:100%!important; object-fit:cover; }
@media(max-width:991.98px){.facility-showcase-image-grid .facility-image-grid{min-height:370px}}
@media(max-width:575.98px){.facility-showcase-image-grid .facility-image-grid{min-height:270px;gap:5px}.facility-showcase-image-grid{padding:6px}}

/* Shared Food & Accommodation component: used on the home page and standalone stay page. */
.food-accom-shared{background:linear-gradient(180deg,#fff,#fff8f3)}.food-accom-heading{max-width:780px;margin:0 auto 3.25rem}.food-accom-feature{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(380px,.96fr);align-items:center;gap:clamp(2rem,5vw,5rem)}.food-accom-copy{position:relative}.food-accom-index{position:absolute;top:-3.8rem;right:0;color:rgba(186,19,73,.08);font-family:var(--heading-font);font-size:8rem;font-weight:700;line-height:1}.food-accom-copy h2{position:relative;margin:.3rem 0 1.1rem;color:#000;font-size:clamp(2rem,3.3vw,3.25rem)}.food-accom-copy p{color:#000;line-height:1.8}.food-accom-offer{position:relative;margin-top:1.35rem;padding:1.25rem 1.35rem;background:#fff;border:1px solid rgba(186,19,73,.25);border-radius:8px}.food-accom-offer h3{margin:0 0 .75rem;color:#ba1349;font-size:21px}.food-accom-offer ul{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}.food-accom-offer li{position:relative;padding-left:1.65rem;color:#000;line-height:1.5}.food-accom-offer li::before{position:absolute;left:0;color:#ba1349;content:'✓';font-weight:800}.food-accom-gallery{display:grid;margin:0;overflow:hidden;border:1px solid rgba(186,19,73,.28);border-radius:10px;background:#fff;gap:7px;padding:7px}.food-accom-gallery img{display:block;width:100%;height:100%;min-height:0;/*object-fit:cover;*/transition:transform .35s ease}.food-accom-gallery img:hover{transform:scale(1.04)}.food-accom-gallery-food{height:560px;grid-template-columns:1.05fr .95fr;grid-template-rows:repeat(3,1fr)}.food-accom-gallery-food img:first-child{grid-row:1/span 2}.food-accom-gallery-food img:last-child{grid-column:1/-1}.food-accom-balance{display:grid;grid-template-columns:auto minmax(220px,.65fr) minmax(0,1.35fr);align-items:center;gap:clamp(1.25rem,3.5vw,3.5rem);margin:clamp(3rem,7vw,6rem) 0;padding:clamp(1.5rem,3vw,2.6rem);color:#fff;background:linear-gradient(120deg,#3b0d20,#79123b 60%,#a91448);border-radius:10px}.food-accom-balance-symbol{display:grid;width:84px;height:84px;place-items:center;color:#5a102b;background:#ffd36f;border:4px solid #fff;border-radius:50%;font-size:32px}.food-accom-balance .eyebrow{color:#ffd36f!important}.food-accom-balance h2{margin:.2rem 0 0;color:#fff;font-size:clamp(1.8rem,3vw,2.8rem)}.food-accom-balance p{margin:0;color:#fff4f7;line-height:1.8}.food-accom-stay{grid-template-columns:minmax(380px,.96fr) minmax(0,1.04fr)}.food-accom-gallery-rooms{height:525px;grid-template-columns:1.1fr .9fr;grid-template-rows:1fr 1fr}.food-accom-gallery-rooms img:first-child{grid-row:1/span 2}.food-accom-gallery-rooms img:last-child{grid-column:2}.food-accom-shared .eyebrow{color:#ba1349!important}@media(max-width:991.98px){.food-accom-feature,.food-accom-stay{grid-template-columns:1fr}.food-accom-stay .food-accom-gallery{grid-row:1}.food-accom-gallery{max-width:680px;width:100%;margin-inline:auto}.food-accom-balance{grid-template-columns:1fr;text-align:center}.food-accom-balance-symbol{margin:auto}}@media(max-width:575.98px){.food-accom-heading{margin-bottom:2.25rem}.food-accom-gallery-food{height:390px}.food-accom-gallery-rooms{height:400px}.food-accom-index{top:-2.3rem;font-size:5.5rem}.food-accom-offer{padding:1rem}.food-accom-balance{margin:2.5rem 0;padding:1.25rem}.food-accom-balance-symbol{width:70px;height:70px;font-size:26px}}
.food-accom-gallery-food{height:620px;grid-template-columns:1.15fr .85fr;grid-template-rows:repeat(2,1fr) 205px;gap:14px;padding:0;overflow:visible;border:0;background:transparent}.food-accom-gallery-food img{overflow:hidden;border-radius:22px;box-shadow:0 10px 22px rgba(47,18,30,.2)}.food-accom-gallery-food img:first-child{grid-column:1;grid-row:1/span 2}.food-accom-gallery-food img:nth-child(2){grid-column:2;grid-row:1}.food-accom-gallery-food img:nth-child(3){grid-column:2;grid-row:2}.food-accom-gallery-food img:nth-child(4){grid-column:1;grid-row:3}.food-accom-gallery-food img:nth-child(5){grid-column:2;grid-row:3}@media(max-width:575.98px){.food-accom-gallery-food{height:485px;grid-template-rows:repeat(2,1fr) 150px;gap:9px}.food-accom-gallery-food img{border-radius:14px}}
.food-accom-balance{display:block;margin:clamp(3rem,7vw,6rem) 0;padding:0;color:#000;background:transparent;border-radius:0;text-align:left}.food-accom-balance h2{margin:0 0 1.1rem;color:#000;font-size:clamp(2rem,3.3vw,3.25rem)}.food-accom-balance h2::after{display:block;width:72px;height:3px;margin-top:.65rem;background:#ba1349;content:""}.food-accom-balance p{max-width:none;margin:0 0 1rem;color:#000;line-height:1.85}@media(max-width:991.98px){.food-accom-balance{text-align:left}}
.food-accom-gallery-rooms{height:620px;grid-template-columns:1.15fr .85fr;grid-template-rows:repeat(2,1fr) 205px;gap:14px;padding:0;overflow:visible;border:0;background:transparent}.food-accom-gallery-rooms img{overflow:hidden;border-radius:22px;box-shadow:0 10px 22px rgba(47,18,30,.2)}.food-accom-gallery-rooms img:first-child{grid-column:1;grid-row:1/span 2}.food-accom-gallery-rooms img:nth-child(2){grid-column:2;grid-row:1}.food-accom-gallery-rooms img:nth-child(3){grid-column:2;grid-row:2}.food-accom-gallery-rooms img:nth-child(4){grid-column:1;grid-row:3}.food-accom-gallery-rooms img:nth-child(5){grid-column:2;grid-row:3}@media(max-width:575.98px){.food-accom-gallery-rooms{height:485px;grid-template-rows:repeat(2,1fr) 150px;gap:9px}.food-accom-gallery-rooms img{border-radius:14px}}

/* About page final layer: preserve its static inner hero and content-led hierarchy. */
.about-hero { min-height:min(58vw,590px); place-items:center; }
.about-hero-content { z-index:1; padding:4rem 0; }
.about-hero-content>span,.about-hero h1,.about-hero h1 small,.about-hero nav a,.about-hero nav b,.about-hero nav span { color:#fff!important; text-shadow:0 2px 8px rgba(0,0,0,.6); }
.about-hero h1 { font-size:clamp(42px,5vw,58px)!important; }
.about-hero h1 small { font-size:.36em; }
.about-hero-shade { display:none!important; }
.about-intro { padding-bottom:3rem; }
.about-intro-grid { align-items:start; }
.about-intro-visual { position:relative!important; top:0!important; }
.about-arched-image,.about-arched-image img { min-height:530px!important; height:530px!important; }
.about-floating-note { right:1rem; bottom:1.2rem; background:#ba1349!important; border:1px solid #fff!important; border-radius:6px!important; box-shadow:none!important; }
.about-rich-copy { max-width:none!important; }
.about-rich-copy p,.person-copy p,.namaste-panel p { color:#000!important; }
.about-rich-copy p+p { margin-top:1rem; }
.about-trust-strip { padding:0 0 3.5rem; background:#fff!important; }
.about-trust-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(186,19,73,.35); border-bottom:1px solid rgba(186,19,73,.35); }
.about-trust-grid>div { display:grid; min-height:104px; align-content:center; gap:.25rem; padding:1rem 1.5rem; border-right:1px solid rgba(186,19,73,.25); text-align:center; }
.about-trust-grid>div:last-child { border-right:0; }
.about-trust-grid strong { color:#ba1349; font-size:19px; }
.about-trust-grid span { color:#000; font-size:14px; font-weight:600; }
.founder-section,.manager-section,.namaste-section { background:#fff!important; }
.person-story { gap:clamp(2rem,5vw,5rem); }
.person-copy { max-width:none!important; }
.person-copy h2 { max-width:700px; }
.person-role { color:#fff!important; background:#ba1349!important; border:1px solid #fff!important; border-radius:4px!important; box-shadow:none!important; }
.person-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.5rem; }
.manager-section { padding-top:1rem; }
.about-mission { background:#ba1349!important; }
.about-mission p { color:#fff!important; }
.about-mission .btn-light { color:#ba1349!important; background:#fff!important; border-color:#fff!important; }
.namaste-panel { padding:clamp(1.5rem,4vw,3.5rem)!important; border-color:rgba(186,19,73,.3)!important; background:#fff!important; }
@media(max-width:991.98px){.about-hero{min-height:440px}.about-arched-image,.about-arched-image img{min-height:430px!important;height:430px!important}.about-trust-grid{grid-template-columns:repeat(2,1fr)}.about-trust-grid>div:nth-child(2){border-right:0}.about-trust-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(186,19,73,.25)}}
@media(max-width:575.98px){.about-hero{min-height:370px}.about-hero-content{padding:2.5rem 1rem}.about-hero h1{font-size:40px!important}.about-arched-image,.about-arched-image img{min-height:340px!important;height:340px!important}.about-trust-strip{padding-bottom:2.5rem}.about-trust-grid>div{min-height:88px;padding:.8rem .45rem}.about-trust-grid strong{font-size:15px}.about-trust-grid span{font-size:12px}.person-actions .btn{flex:1 1 160px}}

/* Long-form About page sections. Floated imagery lets copy continue beneath a shorter image. */
.about-accreditation,.about-courses,.about-teach,.about-achievements { background:#fff!important; }
.about-flow-copy { max-width:1280px; margin:0 auto; }
.about-flow-copy p,.about-section-intro,.about-section-copy,.about-teach-copy p { color:#000!important; }
.about-flow-image { float:left; width:min(48%,590px); margin:0 2.2rem 1rem 0; }
.about-flow-image img { display:block; width:100%; min-height:430px; object-fit:cover; border:1px solid rgba(186,19,73,.3); border-radius:8px; }
.about-flow-copy::after { display:block; clear:both; content:""; }
.about-pill-list { display:flex; flex-wrap:wrap; gap:.8rem; margin:1.35rem 0; }
.about-pill-list>* { display:inline-flex; align-items:center; min-height:46px; padding:.6rem 1rem; color:#ba1349!important; background:#fff; border:1px solid rgba(186,19,73,.38); border-radius:999px; font-size:16px; font-weight:700; line-height:1.3; text-decoration:none; }
.about-pill-list>*::before { margin-right:.45rem; color:#ba1349; content:"✓"; font-weight:800; }
.about-section-intro,.about-section-copy { max-width:1220px; margin-right:auto; margin-left:auto; text-align:center; }
.about-section-intro { margin-bottom:1.25rem; }
.about-section-copy { margin-top:1.4rem; text-align:left; }
.about-course-list,.about-achievement-list { justify-content:center; max-width:1240px; margin-right:auto; margin-left:auto; }
.about-course-list a:hover { color:#fff!important; background:#ba1349; }
.about-course-list a:hover::before { color:#fff; }
.about-teach-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.95fr); align-items:center; gap:clamp(2rem,5vw,5.5rem); }
.about-teach-copy .about-om-divider { margin-left:0!important; }
.about-teach-image { margin:0; }
.about-teach-image img { display:block; width:100%; min-height:430px; object-fit:cover; border:1px solid rgba(186,19,73,.3); border-radius:8px; }
.about-mission { background:#ba1349!important; background-image:none!important; }
.about-mission .mission-principles span { color:#fff!important; background:transparent!important; border-color:rgba(255,255,255,.62)!important; }
.about-mission .mission-principles b { color:#fff!important; background:transparent!important; }
.about-dummy-points { display:grid; gap:.55rem; margin:1.1rem 0 0; padding:0; list-style:none; }
.about-dummy-points li { position:relative; padding-left:1.35rem; color:#000; font-size:18px; line-height:1.6; }
.about-dummy-points li::before { position:absolute; left:0; color:#ba1349; content:"✓"; font-weight:800; }
/* Portrait and introductory images float so longer copy uses the space below them. */
.about-intro-grid,.person-story { display:block!important; }
.about-intro-grid::after,.person-story::after { display:block; clear:both; content:""; }
.about-intro-visual { float:left; width:min(38%,450px); min-height:0!important; margin:0 2.2rem 1rem 0; }
.person-portrait { float:left; width:min(36%,430px); min-height:0!important; margin:0 2.2rem 1rem 0; }
.person-portrait img { width:100%!important; height:520px!important; }
.manager-story .person-portrait { float:right; margin:0 0 1rem 2.2rem; }
.manager-story .person-copy,.manager-story .person-portrait { grid-column:auto!important; grid-row:auto!important; }
@media(max-width:991.98px){.about-flow-image{width:min(48%,430px);margin-right:1.5rem}.about-teach-grid{grid-template-columns:1fr}.about-teach-image{max-width:720px;margin:auto}.about-teach-copy .about-om-divider{margin-left:auto!important}.about-intro-visual{width:min(42%,400px);margin-right:1.5rem}.person-portrait{width:min(40%,360px);margin-right:1.5rem}.manager-story .person-portrait{margin-left:1.5rem}.person-portrait img{height:450px!important}}
@media(max-width:575.98px){.about-flow-image,.about-intro-visual,.person-portrait,.manager-story .person-portrait{float:none;width:100%;margin:0 0 1.25rem}.about-flow-image img,.about-teach-image img{min-height:280px}.about-arched-image,.about-arched-image img,.person-portrait img{height:340px!important;min-height:340px!important}.about-pill-list{gap:.55rem}.about-pill-list>*{width:100%;justify-content:center;font-size:15px}.about-section-copy{text-align:left}}

/* Final corrective rules for the About founder and mission blocks. */
#main-content .founder-section .person-copy h2 {
    max-width:760px;
    margin:.4rem 0 1.2rem;
   
    font-size:32px!important;
    line-height:1.25;
    white-space:nowrap;
}
#main-content .founder-section .person-copy>h2::after{
    display:block;
    width:min(255px,70vw);
    height:35px;
    margin:0rem 29rem 0rem;
    background:url('../images/divider_img.png') center/contain no-repeat;
    content:""
}
#main-content .founder-section .founder-divider {
    margin:.45rem 0 1.2rem!important;
}
#main-content .about-mission {
    background:#ba1349!important;
    background-color:#ba1349!important;
    background-image:none!important;
}
#main-content .about-mission .eyebrow,
#main-content .about-mission h2,
#main-content .about-mission p,
#main-content .about-mission .mission-principles span,
#main-content .about-mission .mission-principles b { color:#fff!important; }
#main-content .about-mission .mission-principles span { background:transparent!important; border-color:rgba(255,255,255,.7)!important; }
#main-content .about-mission .btn-light { color:#ba1349!important; background:#fff!important; border-color:#fff!important; }
@media(max-width:575.98px){#main-content .founder-section .person-copy h2{font-size:30px!important;line-height:1.22;white-space:normal}}

/* Teachers page: full-length static hero and clean editorial profiles. */
.team-hero { min-height:100svh!important; place-items:center!important; }
.team-hero-overlay { display:none!important; }
.team-hero-content { z-index:1; max-width:940px; padding:4rem 1rem!important; text-align:center; }
.team-hero-content>span,.team-hero h1,.team-hero h1 small,.team-hero p,.team-hero nav a,.team-hero nav b,.team-hero nav span { color:#fff!important; text-shadow:0 2px 8px rgba(0,0,0,.65); }
.team-hero h1 { font-size:clamp(44px,5vw,60px)!important; }
.team-hero h1 small { font-size:.36em; }
.team-hero p { max-width:720px; margin:1rem auto 0; }
.team-introduction,.team-profiles { background:#fff!important; }
/*.team-heading h2 { color:#000!important; font-size:34px!important; }*/
.team-heading>p { color:#000!important; }
.team-profile-list { display:grid; gap:clamp(3.5rem,7vw,6rem); }
.team-profile,.team-profile.is-reversed { grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr)!important; align-items:start; gap:clamp(2rem,5vw,5rem); }
.team-profile.is-reversed .team-profile-visual { grid-column:2; grid-row:1; }
.team-profile.is-reversed .team-profile-copy { grid-column:1; grid-row:1; }
.team-profile-visual { min-height:0!important; padding:0!important; }
.team-image-frame { width:100%!important; height:530px!important; border:1px solid rgba(186,19,73,.3)!important; border-radius:8px!important; box-shadow:none!important; }
.team-number { right:1rem!important; bottom:1rem!important; width:50px!important; height:50px!important; color:#fff!important; background:#ba1349!important; border:1px solid #fff!important; border-radius:4px!important; box-shadow:none!important; font-size:16px!important; }
.team-profile-copy { padding:0!important; }
.team-profile-copy::before { display:none!important; }
.team-role { margin:0 0 .45rem!important; color:#ba1349!important; }
.team-profile-copy h2 { margin:0!important; color:#000!important; font-size:34px!important; line-height:1.25; }
.team-profile-divider { width:190px!important; height:30px!important; margin:.55rem 0 1.1rem!important; }
.team-profile-copy p { color:#000!important; }
.team-dummy-points { display:grid; gap:.5rem; margin:1rem 0 0; padding:0; list-style:none; }
.team-dummy-points li { position:relative; padding-left:1.35rem; color:#000; font-size:18px; line-height:1.6; }
.team-dummy-points li::before { position:absolute; left:0; color:#ba1349; content:"✓"; font-weight:800; }
@media(max-width:991.98px){.team-hero{min-height:680px!important}.team-profile,.team-profile.is-reversed{grid-template-columns:1fr!important}.team-profile.is-reversed .team-profile-visual,.team-profile.is-reversed .team-profile-copy{grid-column:1;grid-row:auto}.team-profile.is-reversed .team-profile-visual{grid-row:1}.team-profile-visual{width:min(100%,680px);margin:auto}.team-image-frame{height:500px!important}}
@media(max-width:575.98px){.team-hero{min-height:540px!important}.team-hero h1{font-size:40px!important}.team-image-frame{height:360px!important}.team-profile-copy h2,.team-heading h2{font-size:30px!important}.team-profile-divider{margin-left:0!important}}

/* Shared inner-page hero standard.  The homepage carousel is deliberately excluded. */
@media(min-width:992px){
    .about-hero,
    .apply-hero,
    .contact-hero,
    .course100-hero,
    .facilities-hero,
    .faq-page-hero,
    .legal-hero,
    .payment-hero,
    .team-hero,
    .hero-section {
        height:512px!important;
        min-height:512px!important;
    }
}

.about-hero :is(h1,h2,h3,p,span,a,b),
.apply-hero :is(h1,h2,h3,p,span,a,b),
.contact-hero :is(h1,h2,h3,p,span,a,b),
.course100-hero :is(h1,h2,h3,p,span,a,b),
.facilities-hero :is(h1,h2,h3,p,span,a,b),
.faq-page-hero :is(h1,h2,h3,p,span,a,b),
.legal-hero :is(h1,h2,h3,p,span,a,b),
.payment-hero :is(h1,h2,h3,p,span,a,b),
.team-hero :is(h1,h2,h3,p,span,a,b),
.hero-section :is(h1,h2,h3,p,span,a,b) { color:#fff!important; }

/* Payment, contact and application: shared inner-page visual language. */
.payment-hero,.contact-hero,.apply-hero { position:relative; place-items:center!important; overflow:hidden; }
.payment-hero>img,.contact-hero>img,.apply-hero>img { position:absolute; inset:0; z-index:0; display:block; width:100%; height:100%; object-fit:cover; }
.payment-hero-pattern,.payment-hero-badge,.contact-hero-pattern,.contact-hero-om,.apply-hero-pattern,.apply-hero-symbol { display:none!important; }
.payment-hero-content,.contact-hero-content,.apply-hero-content { position:relative; z-index:1; max-width:900px; padding:3rem 1rem!important; text-align:center; }
.payment-hero-content>span,.contact-hero-content>span,.apply-hero-content>span,.payment-hero h1,.contact-hero h1,.apply-hero h1,.payment-hero h1 small,.contact-hero h1 small,.apply-hero h1 small,.payment-hero p,.contact-hero p,.apply-hero p,.payment-hero nav a,.contact-hero nav a,.apply-hero nav a,.payment-hero nav b,.contact-hero nav b,.apply-hero nav b,.payment-hero nav span,.contact-hero nav span,.apply-hero nav span { color:#fff!important; text-shadow:0 2px 8px rgba(0,0,0,.65); }
.payment-hero h1,.contact-hero h1,.apply-hero h1 { font-size:clamp(44px,5vw,60px)!important; }
.payment-hero h1 small,.contact-hero h1 small,.apply-hero h1 small { font-size:.36em!important; }
.payment-hero p,.contact-hero p,.apply-hero p { max-width:680px; margin:1rem auto 0; }
.booking-process,.payment-methods,.payment-policy-section,.contact-main-section,.contact-map-section,.apply-section { background:#fff!important; }
.payment-heading h2,.contact-heading h2,.contact-form-head h2,.contact-map-copy h2,.apply-heading h2,.apply-form-head h2 { color:#ba1349!important; font-size:34px!important; line-height:1.25; }
.payment-heading>p,.contact-heading>p,.contact-map-copy p,.apply-heading>p,.apply-form-note,.contact-form-note { color:#000!important; font-size:18px!important; line-height:1.75; }
.booking-steps article,.payment-method-card,.payment-policy-card,.contact-form-card,.contact-map-copy,.apply-form-card { color:#000!important; background:#fff!important; border:1px solid rgba(186,19,73,.3)!important; border-radius:6px!important; box-shadow:none!important; }
.booking-step-number>span,.payment-method-label,.contact-form-head small,.apply-form-head small { color:#ba1349!important; }
.booking-step-number>b,.payment-policy-title>span,.contact-form-head>span,.apply-form-head>span { color:#fff!important; background:#ba1349!important; border-color:#ba1349!important; border-radius:4px!important; }
.booking-steps h3,.payment-method-card h3,.payment-policy-card h2,.contact-map-copy h2,.apply-form-head h2 { color:#000!important; }
.booking-steps p,.payment-method-card>p,.payment-policy-card li,.contact-map-copy p,.apply-form-card label>span,.contact-form-card label>span { color:#000!important; }
.booking-step-line { color:#ba1349!important; background:#fff!important; border:1px solid #ba1349!important; }
.payment-method-card::before,.payment-orbit { display:none!important; }
.payment-method-logo,.payment-method-facts span,.payment-policy-card li,.contact-captcha,.apply-captcha { background:#fff!important; border-color:rgba(186,19,73,.28)!important; }
.payment-method-facts small,.payment-policy-card li,.contact-form-note,.apply-form-note { color:#000!important; }
.payment-method-facts strong { color:#ba1349!important; }
.payment-contact-strip { color:#000!important; background:#fff!important; border:1px solid rgba(186,19,73,.3)!important; border-radius:6px!important; box-shadow:none!important; }
.payment-contact-strip>span { color:#ba1349!important; background:#fff!important; border:1px solid #ba1349!important; border-radius:4px!important; }
.payment-contact-strip small,.payment-contact-strip strong { color:#000!important; }
.payment-contact-strip a { color:#ba1349!important; }
.contact-info-panel,.apply-aside { color:#000!important; background:#fff!important; border:1px solid rgba(186,19,73,.3)!important; border-radius:6px!important; box-shadow:none!important; }
.contact-info-panel::after,.apply-aside::after { display:none!important; }
.contact-info-label,.apply-aside-kicker { color:#ba1349!important; }
.contact-info-panel h2,.apply-aside h2,.contact-info-panel>p,.apply-aside>p { color:#000!important; }
.contact-info-list>a,.apply-steps article { color:#000!important; background:#fff!important; border-color:rgba(186,19,73,.28)!important; border-radius:4px!important; }
.contact-info-list>a>span,.apply-steps b,.apply-support>span { color:#ba1349!important; background:#fff!important; border:1px solid #ba1349!important; border-radius:4px!important; }
.contact-info-list small,.contact-info-list strong,.contact-socials>span,.apply-steps h3,.apply-steps p,.apply-support small,.apply-support strong { color:#000!important; }
.contact-socials,.apply-support { border-color:rgba(186,19,73,.28)!important; }
.contact-socials a { color:#ba1349!important; background:#fff!important; border:1px solid #ba1349!important; border-radius:4px!important; }
.apply-support a { color:#ba1349!important; }
.contact-form-grid input,.contact-form-grid textarea,.apply-form-grid input,.apply-form-grid select,.apply-form-grid textarea { color:#000!important; background:#fff!important; border-color:rgba(186,19,73,.35)!important; border-radius:4px!important; }
.contact-captcha-question,.apply-captcha-question { color:#000!important; background:#fff!important; border:1px solid #ba1349!important; border-radius:4px!important; }
.contact-captcha-question button,.apply-captcha-question button { color:#ba1349!important; background:#fff!important; border:0!important; }
.contact-submit,.apply-submit { color:#fff!important; background:#ba1349!important; border-color:#ba1349!important; border-radius:4px!important; box-shadow:none!important; }
.contact-map-frame { border:1px solid rgba(186,19,73,.3)!important; border-radius:6px!important; box-shadow:none!important; }
.contact-map-badge { color:#000!important; background:#fff!important; border:1px solid rgba(186,19,73,.3)!important; border-radius:4px!important; box-shadow:none!important; }
.contact-map-badge>span,.contact-visit-points b { color:#ba1349!important; background:#fff!important; border:1px solid #ba1349!important; border-radius:4px!important; }
.contact-map-badge small,.contact-map-badge strong,.contact-visit-points span { color:#000!important; }
@media(max-width:575.98px){.payment-hero-content,.contact-hero-content,.apply-hero-content{padding:2rem 1rem!important}.payment-hero h1,.contact-hero h1,.apply-hero h1{font-size:40px!important}.payment-heading h2,.contact-heading h2,.contact-form-head h2,.contact-map-copy h2,.apply-heading h2,.apply-form-head h2{font-size:30px!important}}

/* 100 Hour Yoga TTC: detailed course page aligned with the approved site theme. */
.course100-hero{height:512px!important;min-height:512px!important;place-items:center!important}.course100-hero-overlay{display:none!important}.course100-hero-content{z-index:1;padding:3rem 1rem!important}.course100-hero-content>span,.course100-hero h1,.course100-hero h1 small,.course100-hero p,.course100-hero nav a,.course100-hero nav b,.course100-hero nav span{color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.65)}.course100-hero h1{font-size:clamp(44px,5vw,60px)!important}.course100-hero h1 small{font-size:.36em!important}.course100-hero p{max-width:720px;margin:1rem auto 0}.course100-details{margin-top:0!important}.course100-details>.container{border:1px solid rgba(186,19,73,.3)!important;border-radius:0!important;box-shadow:none!important}.course100-facts{grid-template-columns:repeat(4,1fr)!important}.course100-facts>div{min-height:86px;border-color:rgba(186,19,73,.2)!important}.course100-facts small,.course100-facts strong{color:#000!important}.course100-facts span{color:rgba(186,19,73,.12)!important}.course100-prices{color:#000!important;background:#fff!important;border-top:1px solid rgba(186,19,73,.25)!important}.course100-prices>span{border-color:rgba(186,19,73,.2)!important}.course100-prices strong{color:#ba1349!important}.course100-prices>a{color:#fff!important;background:#ba1349!important}.course100-overview,.course100-highlights,.course100-curriculum,.course100-why,.course100-schedule,.course100-events,.course100-fees,.course100-excursions,.course100-styles,.course100-stay,.course100-food,.course100-teachers,.course100-booking,.course100-arrival,.course100-eligibility,.course100-faq,.course100-final-cta,.course100-related{color:#000!important;background:#fff!important}.course100-heading h2,.course100-overview h2,.course100-why h2,.course100-stay h2,.course100-food h2,.course100-arrival h2,.course100-final-cta h2{color:#ba1349!important;font-size:34px!important;line-height:1.25}.course100-heading>p,.course100-overview-grid p,.course100-why-grid p,.course100-highlight-note,.course100-stay p,.course100-food p,.course100-arrival p,.course100-final-cta p{color:#000!important;font-size:18px!important;line-height:1.75}.course100-overview-image{min-height:0!important}.course100-overview-image img,.course100-why-image img{height:500px!important;border:1px solid rgba(186,19,73,.3)!important;border-radius:8px!important;box-shadow:none!important}.course100-overview-image>span,.course100-why-image span{display:none!important}.course100-highlight-grid article{min-height:0;color:#000!important;background:#fff!important;border:1px solid rgba(186,19,73,.28)!important;border-radius:5px!important}.course100-highlight-grid span{color:#fff!important;background:#ba1349!important;border-radius:3px!important}.course100-highlight-grid p{color:#000!important}.course100-highlight-note{max-width:1000px;padding:1rem;border:1px solid rgba(186,19,73,.28);border-radius:5px}.course100-accordion article{background:#fff!important;border:1px solid rgba(186,19,73,.3)!important;border-radius:5px!important;box-shadow:none!important}.course100-accordion .accordion-button,.course100-accordion .accordion-button:not(.collapsed){color:#000!important;background:#fff!important}.course100-accordion .accordion-button>b{color:#fff!important;background:#ba1349!important;border-radius:3px!important}.course100-accordion .accordion-body{background:#fff!important}.course100-accordion .accordion-body h4,.course100-accordion .accordion-body p,.course100-accordion .accordion-body li{color:#000!important}.curriculum-summary{color:#000!important;background:#fff!important;border:1px solid rgba(186,19,73,.28)!important;border-radius:5px!important}.course100-schedule-grid{border:1px solid rgba(186,19,73,.3)!important;border-radius:5px!important;box-shadow:none!important}.course100-schedule-grid>div{background:#fff!important;border-color:rgba(186,19,73,.2)!important}.course100-schedule-grid time,.course100-schedule-grid span{color:#000!important;background:#fff!important}.course100-schedule-grid time{border-right:1px solid rgba(186,19,73,.2)!important}.course100-note{color:#000!important;background:#fff!important;border:1px solid rgba(186,19,73,.3)!important;border-radius:5px!important}.course100-note strong{color:#ba1349!important}.course100-event-grid article{border:1px solid rgba(186,19,73,.3)!important;border-radius:5px!important;box-shadow:none!important}.event-calendar{display:none!important}.course100-event-grid h3,.course100-event-grid p{color:#000!important}.event-price>span{color:#000;background:#fff!important;border:1px solid rgba(186,19,73,.2)}.event-price strong{color:#ba1349!important}.event-price del{display:none}.course100-fee-grid article{color:#000!important;background:#fff!important;border:1px solid rgba(186,19,73,.3)!important;border-radius:5px!important}.course100-fee-grid article>span{color:#fff!important;background:#ba1349!important;border-radius:3px!important}.course100-fee-grid h2,.course100-fee-grid li{color:#000!important}.course100-excursion-images img{border:1px solid rgba(186,19,73,.3)!important;border-radius:6px!important;box-shadow:none!important}
.course100-style-grid,.course100-teacher-grid,.course100-booking-grid,.course100-related-grid{display:grid;gap:1.25rem}.course100-style-grid{grid-template-columns:repeat(3,1fr)}.course100-style-grid article,.course100-booking-grid article{padding:1.4rem;border:1px solid rgba(186,19,73,.3);border-radius:5px}.course100-style-grid span,.course100-booking-grid b{display:grid;width:38px;height:38px;place-items:center;color:#fff;background:#ba1349;border-radius:3px}.course100-style-grid h3,.course100-booking-grid h3,.course100-teacher-grid h3,.course100-related-grid h3{margin:.8rem 0 .45rem;color:#000;font-size:24px}.course100-style-grid p,.course100-booking-grid p,.course100-teacher-grid p,.course100-related-grid p{margin:0;color:#000;font-size:18px;line-height:1.65}.course100-stay-grid,.course100-arrival-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:start}.course100-stay-grid.is-reversed>div:first-child{grid-column:2;grid-row:1}.course100-stay-grid.is-reversed .course100-stay-gallery{grid-column:1;grid-row:1}.course100-stay-grid ul,.course100-arrival-grid ul,.course100-eligibility ul{display:grid;gap:.7rem;margin:1.3rem 0;padding:0;list-style:none}.course100-stay-grid li,.course100-arrival-grid li,.course100-eligibility li{position:relative;padding:.75rem .8rem .75rem 2rem;color:#000;border:1px solid rgba(186,19,73,.28);border-radius:4px;font-size:16px;line-height:1.5}.course100-stay-grid li::before,.course100-eligibility li::before{position:absolute;left:.75rem;color:#ba1349;content:'✓';font-weight:800}.course100-stay-gallery{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.course100-stay-gallery figure{margin:0;overflow:hidden;border:1px solid rgba(186,19,73,.3);border-radius:6px}.course100-stay-gallery figure:first-child{grid-row:span 2}.course100-stay-gallery img{display:block;width:100%;height:220px;object-fit:cover}.course100-stay-gallery figure:first-child img{height:100%}.course100-stay-gallery figcaption{padding:.55rem .7rem;color:#000;font-size:14px;font-weight:700}.course100-teacher-grid{grid-template-columns:repeat(3,1fr)}.course100-teacher-grid article,.course100-related-grid article{overflow:hidden;border:1px solid rgba(186,19,73,.3);border-radius:6px}.course100-teacher-grid article>img{display:block;width:100%;height:350px;object-fit:cover}.course100-teacher-grid article>div,.course100-related-grid article>div{padding:1.1rem}.course100-teacher-grid span{color:#ba1349;font-size:14px;font-weight:700}.course100-booking-grid{grid-template-columns:repeat(4,1fr)}.course100-booking-note{margin:1.3rem 0 0;padding:1rem;color:#000;border:1px solid rgba(186,19,73,.3);border-radius:5px;font-size:18px}.course100-arrival-grid li{display:grid;grid-template-columns:145px 1fr;padding:0;overflow:hidden}.course100-arrival-grid li b{padding:.75rem;color:#ba1349;border-right:1px solid rgba(186,19,73,.25)}.course100-arrival-grid li span{padding:.75rem}.course100-eligibility ul{max-width:1000px;margin-inline:auto}.course100-faq{border-top:1px solid rgba(186,19,73,.25);border-bottom:1px solid rgba(186,19,73,.25)}.course100-final-cta .container{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem;border:1px solid rgba(186,19,73,.3);border-radius:6px}.course100-final-cta .container>div:first-child{max-width:760px}.course100-final-cta .container>div:last-child{display:flex;gap:.8rem;flex-wrap:wrap}.course100-related-grid{grid-template-columns:repeat(3,1fr)}.course100-related-grid article>img{display:block;width:100%;height:230px;object-fit:cover}.course100-related-grid a{display:inline-flex;margin-top:1rem;color:#ba1349;font-weight:700}
@media(max-width:991.98px){.course100-facts{grid-template-columns:repeat(2,1fr)!important}.course100-style-grid,.course100-teacher-grid,.course100-related-grid{grid-template-columns:1fr 1fr}.course100-booking-grid{grid-template-columns:1fr 1fr}.course100-stay-grid,.course100-arrival-grid{grid-template-columns:1fr}.course100-stay-grid.is-reversed>div:first-child,.course100-stay-grid.is-reversed .course100-stay-gallery{grid-column:1;grid-row:auto}.course100-stay-grid.is-reversed .course100-stay-gallery{grid-row:1}}
@media(max-width:575.98px){.course100-hero{height:auto!important;min-height:460px!important}.course100-hero h1{font-size:40px!important}.course100-heading h2,.course100-overview h2,.course100-why h2,.course100-stay h2,.course100-food h2,.course100-arrival h2,.course100-final-cta h2{font-size:30px!important}.course100-style-grid,.course100-teacher-grid,.course100-booking-grid,.course100-related-grid{grid-template-columns:1fr}.course100-stay-gallery{grid-template-rows:180px 180px}.course100-stay-gallery img{height:180px}.course100-stay-gallery figure:first-child img{height:100%}.course100-arrival-grid li{grid-template-columns:1fr}.course100-arrival-grid li b{border-right:0;border-bottom:1px solid rgba(186,19,73,.25)}.course100-final-cta .container{align-items:stretch;flex-direction:column}.course100-final-cta .container>div:last-child{flex-direction:column}.course100-final-cta .btn{width:100%}}

/* Food and accommodation: an editorial stay guide with room and food galleries. */
.facilities-hero { place-items:center!important; }
.facilities-hero-overlay { display:none!important; }
.facilities-hero-content { z-index:1; max-width:900px; padding:3rem 1rem!important; text-align:center; }
.facilities-hero-content p { max-width:650px; margin:1rem auto 0; text-shadow:0 2px 8px rgba(0,0,0,.65); }
.stay-intro,.stay-rooms,.stay-location,.stay-food,.stay-experience { background:#fff!important; }
.stay-heading { max-width:900px; margin:auto; }
.stay-heading h2,.stay-copy h2,.stay-location h2 { color:#ba1349!important; font-size:34px!important; line-height:1.25; }
.stay-intro-copy { max-width:1050px; margin:2rem auto 0; columns:2; column-gap:clamp(2rem,6vw,6rem); }
.stay-intro-copy p,.stay-copy p,.stay-location p,.stay-experience p { color:#000!important; font-size:18px; line-height:1.75; }
.stay-intro-copy p { margin:0 0 1rem; }
.stay-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,1fr); align-items:start; gap:clamp(2.5rem,6vw,6.5rem); }
.stay-split-reversed { grid-template-columns:minmax(420px,1fr) minmax(0,1fr); }
.stay-split-reversed .stay-copy { grid-column:2; grid-row:1; }
.stay-split-reversed .stay-gallery { grid-column:1; grid-row:1; }
.stay-copy .eyebrow { display:block; margin-bottom:.5rem; }
.stay-copy h2 { margin:0 0 1.15rem; }
.stay-check-list { display:grid; grid-template-columns:1fr 1fr; gap:.8rem 1rem; margin:1.5rem 0 0; padding:0; list-style:none; }
.stay-check-list li { position:relative; min-height:50px; padding:.65rem .75rem .65rem 2.25rem; color:#000; border:1px solid rgba(186,19,73,.24); border-radius:4px; font-size:16px; line-height:1.45; }
.stay-check-list li::before { position:absolute; top:.66rem; left:.75rem; color:#ba1349; content:"✓"; font-weight:800; }
.stay-gallery { display:grid; grid-template-columns:1.1fr .9fr; grid-template-rows:255px 255px; gap:12px; }
.stay-gallery-item { position:relative; min-width:0; margin:0; /*overflow:hidden; border:1px solid rgba(186,19,73,.28);*/ border-radius:8px; background:#fff; }
/* .stay-gallery-item-1 { grid-row:1 / span 2; }  */
.stay-gallery-item img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.stay-gallery-item:hover img { transform:scale(1.04); }
.stay-gallery-item figcaption { position:absolute; right:0; bottom:0; left:0; padding:.7rem .85rem; color:#fff; background:#ba1349; font-size:14px; font-weight:700; transform:translateY(100%); transition:transform .3s ease; }
.stay-gallery-item:hover figcaption { transform:translateY(0); }
.stay-location { border-top:1px solid rgba(186,19,73,.22); border-bottom:1px solid rgba(186,19,73,.22); }
.stay-location-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,6vw,6rem); align-items:start; }
.stay-location h2 { margin:.4rem 0 0; }
.stay-nearby { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:2rem; }
.stay-nearby span { padding:1rem; color:#000; border:1px solid rgba(186,19,73,.3); border-radius:4px; font-size:16px; font-weight:700; text-align:center; }
.stay-nearby span::before { display:block; margin-bottom:.25rem; color:#ba1349; content:"✦"; }
.stay-experience-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:2.25rem; }
.stay-experience-grid article { padding:1.5rem; border:1px solid rgba(186,19,73,.28); border-radius:6px; }
.stay-experience-grid article>b { color:#ba1349; font-size:14px; letter-spacing:.12em; }
.stay-experience-grid h3 { margin:.65rem 0 .55rem; color:#000; font-size:24px; }
.stay-experience-grid p { margin:0; }
.stay-actions { display:flex; justify-content:center; gap:1rem; margin-top:2rem; }
@media(max-width:991.98px){.stay-intro-copy{columns:1}.stay-split,.stay-split-reversed,.stay-location-grid{grid-template-columns:1fr}.stay-split-reversed .stay-copy,.stay-split-reversed .stay-gallery{grid-column:1;grid-row:auto}.stay-split-reversed .stay-gallery{grid-row:1}.stay-gallery{max-width:680px;width:100%;margin:auto}.stay-nearby{grid-template-columns:1fr 1fr}}
@media(max-width:575.98px){.facilities-hero-content{padding:2rem 1rem!important}.stay-heading h2,.stay-copy h2,.stay-location h2{font-size:30px!important}.stay-check-list,.stay-experience-grid{grid-template-columns:1fr}.stay-gallery{grid-template-rows:180px 180px;gap:8px}.stay-gallery-item figcaption{position:static;transform:none}.stay-nearby{grid-template-columns:1fr;gap:.7rem}.stay-actions{flex-direction:column}.stay-actions .btn{width:100%}}

.course100-overview-label{max-width:760px;margin:0 auto 1.5rem;text-align:center}.course100-overview-label .eyebrow{display:block;margin-bottom:.4rem}.course100-overview-label p{margin:0;color:#000!important;font-size:18px!important;line-height:1.65}

/* Homepage slider: a light contrast layer for readable text without softening the photographs. */
.hero-carousel .hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.22) 52%,rgba(0,0,0,.10) 100%)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media(max-width:767.98px){.hero-carousel .hero-overlay{background:rgba(0,0,0,.32)!important}}

/* Shared inner-page hero contrast layer: crisp image, readable white text. */
:is(.about-hero,.team-hero,.course100-hero,.payment-hero,.contact-hero,.apply-hero,.fees-hero,.faq-guide-hero,.books-hero){isolation:isolate}
:is(.about-hero,.team-hero,.course100-hero,.payment-hero,.contact-hero,.apply-hero,.fees-hero,.faq-guide-hero,.books-hero)::after{position:absolute;inset:0;z-index:1;pointer-events:none;content:"";background:linear-gradient(90deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.22) 52%,rgba(0,0,0,.10) 100%)}
:is(.about-hero,.team-hero,.course100-hero,.payment-hero,.contact-hero,.apply-hero,.fees-hero,.faq-guide-hero,.books-hero)>img{z-index:0}
:is(.about-hero-content,.team-hero-content,.course100-hero-content,.payment-hero-content,.contact-hero-content,.apply-hero-content,.fees-hero-content,.faq-guide-hero-content,.books-hero-content){z-index:2!important}
.facilities-hero-overlay{display:block!important;background:linear-gradient(90deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.22) 52%,rgba(0,0,0,.10) 100%)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media(max-width:767.98px){:is(.about-hero,.team-hero,.course100-hero,.payment-hero,.contact-hero,.apply-hero,.fees-hero,.faq-guide-hero,.books-hero)::after,.facilities-hero-overlay{background:rgba(0,0,0,.32)!important}}

/* 100-hour course overview: a clear summary panel before the detailed content. */
.course100-details{padding:0!important;background:#fff!important}.course100-details>.container{max-width:1240px!important;overflow:hidden;border:1px solid rgba(186,19,73,.32)!important}.course100-summary-head{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:2rem;align-items:center;padding:2.1rem 2.3rem 1.8rem;border-bottom:1px solid rgba(186,19,73,.25)}.course100-summary-head .eyebrow{display:block;margin-bottom:.55rem}.course100-summary-head h2{font-size:32px!important;line-height:1.23}.course100-summary-head p{max-width:760px;margin:.7rem 0 0;color:#000!important;font-size:18px!important;line-height:1.65}.course100-summary-head aside{padding:1.25rem 1.35rem;color:#fff;background:#ba1349;text-align:center}.course100-summary-head aside small,.course100-summary-head aside strong{display:block;color:#fff}.course100-summary-head aside small{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.course100-summary-head aside strong{margin:.25rem 0 .85rem;font-family:var(--heading-font);font-size:36px;line-height:1}.course100-summary-head aside a{display:inline-flex;justify-content:center;width:100%;padding:.7rem 1rem;color:#ba1349!important;background:#fff;font-size:14px;font-weight:800;text-transform:uppercase}.course100-facts>div{padding:1.25rem .85rem!important}.course100-facts small{margin-top:.2rem;color:#ba1349!important}.course100-facts strong{font-size:16px!important;line-height:1.35}.course100-prices{min-height:84px}.course100-prices>a{justify-content:center;font-size:14px}.course100-overview-label{display:none!important}
@media(max-width:767.98px){.course100-summary-head{grid-template-columns:1fr;padding:1.5rem 1.15rem}.course100-summary-head aside{max-width:340px;width:100%;margin:auto}.course100-facts>div{min-height:100px!important}.course100-prices{grid-template-columns:1fr!important}.course100-prices>a{grid-column:auto!important}}

/* 100-hour course details card, based on the supplied two-row reference layout. */
.course100-details{padding:3rem 0 0!important}.course100-details>.container{max-width:1180px!important;border:0!important}.course100-details-card{position:relative;overflow:hidden;background:#fff;border:1px solid rgba(186,19,73,.4);border-radius:18px}.course100-details-card::before{position:absolute;top:76px;left:50%;z-index:0;color:rgba(186,19,73,.09);content:"ॐ";font-family:var(--heading-font);font-size:290px;line-height:1;transform:translateX(-50%)}.course100-details-card>header{position:relative;z-index:1;padding:1rem;color:#fff;background:#ba1349;text-align:center}.course100-details-card>header h2{margin:0;color:#fff!important;font-size:28px!important;line-height:1.25}.course100-details-card .course100-facts{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr)!important}.course100-details-card .course100-facts article{display:flex;min-height:108px;align-items:center;gap:1rem;padding:1.35rem 1rem;border-right:1px dashed rgba(0,0,0,.2);border-bottom:1px dashed rgba(0,0,0,.2);background:transparent!important}.course100-details-card .course100-facts article:nth-child(3n){border-right:0}.course100-details-card .course100-facts article:nth-last-child(-n+1){border-bottom:0}.course100-fact-symbol{display:grid!important;flex:0 0 50px;width:50px!important;height:50px!important;place-items:center;color:#ba1349!important;background:rgba(186,19,73,.13)!important;border-radius:8px!important;font-size:25px!important;font-weight:800}.course100-details-card .course100-facts small,.course100-details-card .course100-facts strong{display:block;color:#000!important;text-align:left}.course100-details-card .course100-facts small{margin:0!important;font-size:16px;font-weight:800;letter-spacing:0;text-transform:none}.course100-details-card .course100-facts strong{margin-top:.12rem;color:#ba1349!important;font-size:16px!important;line-height:1.35}.course100-details-card .course100-prices{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr) 170px;align-items:stretch;min-height:84px;background:#fff!important;border-top:1px solid rgba(186,19,73,.4)!important}.course100-details-card .course100-prices>span{display:grid;place-content:center;padding:.75rem;border-right:1px solid rgba(0,0,0,.2)!important;text-align:center}.course100-details-card .course100-prices small,.course100-details-card .course100-prices strong{display:block;color:#000!important}.course100-details-card .course100-prices small{font-size:14px;font-weight:800}.course100-details-card .course100-prices strong{margin-top:.25rem;font-size:17px!important}.course100-details-card .course100-prices .course100-currency{color:#fff!important;background:#ba1349!important}.course100-details-card .course100-prices .course100-currency small,.course100-details-card .course100-prices .course100-currency strong{color:#fff!important}.course100-details-card .course100-prices>a{display:grid;place-items:center;height:auto;padding:1rem;color:#fff!important;background:#ba1349!important;font-size:16px;font-weight:800;text-transform:uppercase}
@media(max-width:767.98px){.course100-details{padding-top:2rem!important}.course100-details-card{border-radius:10px}.course100-details-card .course100-facts{grid-template-columns:1fr 1fr!important}.course100-details-card .course100-facts article{min-height:94px;padding:1rem .75rem}.course100-details-card .course100-facts article:nth-child(3n){border-right:1px dashed rgba(0,0,0,.2)}.course100-details-card .course100-facts article:nth-child(2n){border-right:0}.course100-details-card .course100-facts article:last-child{grid-column:1/-1;border-bottom:0}.course100-fact-symbol{flex-basis:42px;width:42px!important;height:42px!important;font-size:21px!important}.course100-details-card .course100-facts small,.course100-details-card .course100-facts strong{font-size:14px!important}.course100-details-card .course100-prices{grid-template-columns:repeat(2,1fr)!important}.course100-details-card .course100-prices>a{grid-column:1/-1!important}.course100-details-card .course100-prices>span:nth-child(2){border-right:0!important}}
@media(max-width:420px){.course100-details-card .course100-facts{grid-template-columns:1fr!important}.course100-details-card .course100-facts article,.course100-details-card .course100-facts article:nth-child(3n){border-right:0}.course100-details-card .course100-facts article:last-child{grid-column:auto}.course100-details-card .course100-prices{grid-template-columns:1fr!important}.course100-details-card .course100-prices>span{border-right:0!important;border-bottom:1px solid rgba(0,0,0,.16)}.course100-details-card::before{font-size:220px}}

@media(min-width:768px){.course100-details-card .course100-facts{grid-template-columns:repeat(6,1fr)!important}.course100-details-card .course100-facts article:nth-child(-n+3){grid-column:span 2}.course100-details-card .course100-facts article:nth-child(n+4){grid-column:span 3}.course100-details-card .course100-facts article:nth-child(1),.course100-details-card .course100-facts article:nth-child(2),.course100-details-card .course100-facts article:nth-child(4),.course100-details-card .course100-facts article:nth-child(6){border-right:1px dashed rgba(0,0,0,.2)}.course100-details-card .course100-facts article:nth-child(3),.course100-details-card .course100-facts article:nth-child(5),.course100-details-card .course100-facts article:nth-child(7){border-right:0}.course100-details-card .course100-facts article:nth-child(6),.course100-details-card .course100-facts article:nth-child(7){border-bottom:0}}

/* Sticky course navigation links for the 100-hour training page. */
.course100-course-nav{position:fixed;top:var(--course100-nav-top,84px);right:0;left:0;z-index:1035;display:flex;justify-content:center;gap:clamp(.4rem,3vw,4rem);padding:.45rem 1rem;color:#fff;background:#fff;border-bottom:1px solid rgba(186,19,73,.25);box-shadow:0 7px 16px rgba(0,0,0,.08);opacity:0;pointer-events:none;transform:translateY(-115%);transition:opacity .2s ease,transform .2s ease}.course100-course-nav.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.course100-course-nav a{min-width:150px;padding:.55rem 1.1rem;color:#fff!important;background:#ba1349;border:1px solid #ba1349;border-radius:999px;font-size:17px;font-weight:700;text-align:center;text-decoration:none}.course100-course-nav a:hover,.course100-course-nav a:focus-visible{color:#ba1349!important;background:#fff;outline:0}.course100-curriculum,.course100-schedule,.course100-events,.course100-stay,.course100-faq{scroll-margin-top:150px}@media(max-width:767.98px){.course100-course-nav{justify-content:flex-start;gap:.5rem;padding:.45rem .7rem;overflow-x:auto;scrollbar-width:none}.course100-course-nav::-webkit-scrollbar{display:none}.course100-course-nav a{min-width:auto;padding:.45rem .8rem;font-size:14px;white-space:nowrap}}
.course100-details{position:relative;z-index:4;margin-top:-78px!important;padding-top:0!important;background:transparent!important}.course100-details>.container{background:transparent!important}.course100-details-card{overflow:hidden!important;border-radius:20px!important;isolation:isolate}.course100-details-card>header{border-radius:20px 20px 0 0!important}.course100-details-card .course100-prices{border-radius:0 0 20px 20px!important}.course100-details-card>header .course100-divider,.course100-details-card>header .heading-divider,.course100-details-card>header h2::after{display:none!important}.course100-fact-symbol{position:static!important;font-size:0!important}.course100-fact-symbol::after{color:#ba1349;content:'◷';font-size:23px;line-height:1}.course100-details-card .course100-facts article:nth-child(2) .course100-fact-symbol::after{content:'✦'}.course100-details-card .course100-facts article:nth-child(3) .course100-fact-symbol::after{content:'⌖'}.course100-details-card .course100-facts article:nth-child(4) .course100-fact-symbol::after{content:'⌂'}.course100-details-card .course100-facts article:nth-child(5) .course100-fact-symbol::after{content:'✿'}.course100-details-card .course100-facts article:nth-child(6) .course100-fact-symbol::after{content:'☯'}.course100-details-card .course100-facts article:nth-child(7) .course100-fact-symbol::after{content:'A';font-family:var(--body-font);font-size:18px;font-weight:800}@media(max-width:767.98px){.course100-details{margin-top:0!important;padding-top:1.5rem!important}.course100-details-card,.course100-details-card>header{border-radius:10px!important}.course100-details-card .course100-prices{border-radius:0 0 10px 10px!important}}

/* Compact four-row course details layout. */
.course100-details-card>header{padding:.78rem 1rem}.course100-details-card>header h2{font-size:25px!important}.course100-details-card .course100-facts article{min-height:82px;padding:.82rem .9rem}.course100-fact-symbol{flex-basis:42px;width:42px!important;height:42px!important;font-size:21px!important}.course100-details-card .course100-facts small{font-size:14px}.course100-details-card .course100-facts strong{font-size:15px!important}.course100-details-card .course100-prices{min-height:70px}.course100-details-card .course100-prices>span{padding:.5rem}.course100-details-card .course100-prices small{font-size:13px}.course100-details-card .course100-prices strong{font-size:16px!important}.course100-details-card .course100-prices>a{padding:.7rem;font-size:15px}
.course100-details-card>header{border-bottom:0!important}.course100-details-card>header+ .course100-facts{border-top:0!important}
@media(min-width:768px){.course100-details-card .course100-facts{grid-template-columns:repeat(12,1fr)!important}.course100-details-card .course100-facts article:nth-child(-n+4){grid-column:span 3}.course100-details-card .course100-facts article:nth-child(n+5){grid-column:span 4}.course100-details-card .course100-facts article:nth-child(1),.course100-details-card .course100-facts article:nth-child(2),.course100-details-card .course100-facts article:nth-child(3),.course100-details-card .course100-facts article:nth-child(5),.course100-details-card .course100-facts article:nth-child(6){border-right:1px dashed rgba(0,0,0,.2)}.course100-details-card .course100-facts article:nth-child(4),.course100-details-card .course100-facts article:nth-child(7){border-right:0}.course100-details-card .course100-facts article:nth-child(-n+4){border-bottom:1px dashed rgba(0,0,0,.2)}.course100-details-card .course100-facts article:nth-child(n+5){border-bottom:0}}

/* Final alignment for the details card: one icon per fact and header aligned to hero base. */
@media(min-width:768px){.course100-details{margin-top:-66px!important}}.course100-details-card .course100-fact-symbol{position:static!important;font-size:0!important}.course100-details-card .course100-fact-symbol::after{display:block!important;font-size:23px!important}.course100-details-card .course100-facts article:nth-child(7) .course100-fact-symbol::after{font-size:18px!important}

/* Let the course links peek out from directly beneath the sticky main menu. */
.course100-course-nav{top:calc(var(--course100-nav-top,84px) - 24px)!important;padding:0 1rem!important;background:transparent!important;border:0!important;box-shadow:none!important}.course100-course-nav a{display:flex;min-width:125px;height:54px;align-items:flex-end;justify-content:center;padding:0 1.1rem 7px!important;line-height:1.2}.course100-course-nav.is-visible{pointer-events:auto}@media(max-width:767.98px){.course100-course-nav{top:calc(var(--course100-nav-top,64px) - 18px)!important;padding:0 .7rem!important}.course100-course-nav a{min-width:auto;height:48px;padding:0 .8rem 6px!important}}

/* Shared photo treatment for regular content sections.
   Add .section-image--plain to any image that must not use this frame.
   Divider / ornament images are deliberately excluded. */
   /*
.section-image-framed,
main section:not(.hero):not(.course100-sound-workshop):not(.course100-overview):not(.welcome-section):not(.blog-section):not(.books-library):not(.course100-hero):not(.inner-page-hero):not(.page-hero):not(.reference-teachers):not(.teachers-section):not(.source-community):not(.community-section):not(.faq-section):not(.course100-faq) img:not(.ui-icon):not(.section-image--plain):not(.section-divider-image):not([class*="divider"]):not([class*="ornament"]):not([src*="divider"]):not([src*="ornament"]):not([src*="logo"]):not([src*="certificate"]):not([src*="accreditation"]){box-sizing:border-box!important;display:block;border:4px solid #fff!important;border-radius:24px!important;box-shadow:0 0 0 1px #ba1349!important}  */
/* 100-hour overview: editorial copy followed by the supplied collage-style gallery. */
.course100-overview .course100-heading{margin-bottom:1.6rem}.course100-overview-copy{max-width:1120px;margin:0 auto 1.35rem}.course100-overview-copy p{margin:0 0 .7rem;color:#000!important;font-size:18px!important;line-height:1.7}.course100-image-collage{display:grid;grid-template-columns:1fr 2.15fr 1fr;grid-template-rows:repeat(2,185px);gap:.45rem;max-width:1120px;margin:1.2rem auto 0}.course100-image-collage figure{margin:0;overflow:hidden;border:1px solid #ba1349;border-radius:5px}.course100-image-collage img{display:block;width:100%;height:100%;object-fit:cover}.course100-collage-main{grid-column:2;grid-row:1 / span 2}.course100-collage-left-top{grid-column:1;grid-row:1}.course100-collage-left-bottom{grid-column:1;grid-row:2}.course100-collage-right-top{grid-column:3;grid-row:1}.course100-collage-right-bottom{grid-column:3;grid-row:2}.course100-thumbnail-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:.45rem;max-width:1120px;margin:.45rem auto 0}.course100-thumbnail-strip img{display:block;width:100%;height:78px;object-fit:cover;border:1px solid #ba1349;border-radius:4px}.course100-accreditation-row{max-width:1120px;margin:.8rem auto 0;padding:.45rem;background:#fff;border-radius:5px}.course100-accreditation-row img{display:block;width:100%;height:auto;max-height:155px;object-fit:contain}@media(max-width:767.98px){.course100-overview-copy p{font-size:16px!important;line-height:1.65}.course100-image-collage{grid-template-columns:1fr 1.6fr;grid-template-rows:repeat(2,150px)}.course100-collage-main{grid-column:2;grid-row:1 / span 2}.course100-collage-right-top,.course100-collage-right-bottom{display:none}.course100-thumbnail-strip{grid-template-columns:repeat(3,1fr)}.course100-thumbnail-strip img{height:72px}.course100-accreditation-row{margin-top:.6rem}.course100-accreditation-row img{max-height:none}}
.course100-image-collage figure:not(.course100-collage-main),.course100-thumbnail-strip img{cursor:pointer}.course100-image-collage figure:not(.course100-collage-main):focus-visible,.course100-thumbnail-strip img:focus-visible{outline:3px solid #ba1349;outline-offset:3px}.course100-image-collage figure:not(.course100-collage-main).is-active,.course100-thumbnail-strip img.is-active{border-color:#ba1349!important;box-shadow:0 0 0 2px #ba1349}.course100-collage-main img.is-changing{animation:course100FeaturedImage .32s ease}@keyframes course100FeaturedImage{from{opacity:.35}to{opacity:1}}

.course100-accordion .accordion-button:not(.collapsed),.course100-curriculum .course100-accordion .accordion-button:not(.collapsed){color:#fff!important;background:#ba1349!important;background-color:#ba1349!important;background-image:none!important}.course100-accordion .accordion-button:not(.collapsed)::after,.course100-curriculum .course100-accordion .accordion-button:not(.collapsed)::after{filter:brightness(0) invert(1)!important}

/* 100-hour certification: a light, editorial layout with two course certificates. */
.course100-certification{color:#000!important;background:#fff!important}.course100-certification-intro{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(280px,.72fr);gap:2rem;align-items:center;max-width:1120px;margin:0 auto 1.45rem}.course100-certification-copy p,.course100-certification-content>p{margin:0 0 .95rem;color:#000!important;font-size:18px!important;line-height:1.7}.course100-certification-logos{padding:1.25rem;background:#fff;border-radius:6px}.course100-certification-logos img{display:block;width:100%;height:auto;object-fit:contain}.course100-certification-content{max-width:1120px;margin:0 auto 1.5rem}.course100-certification-content h3{margin:1.35rem 0 .8rem;color:#000;font-size:25px;line-height:1.3}.course100-certification-benefits{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.course100-certification-benefits li{position:relative;padding-left:2rem;color:#000;font-size:18px;line-height:1.55}.course100-certification-benefits li::before{position:absolute;top:.15rem;left:0;width:1.2rem;height:1.2rem;color:#fff;background:#ba1349;content:'✓';font-size:.78rem;font-weight:800;line-height:1.2rem;text-align:center;border-radius:50%}.course100-certification-content aside{margin-top:1.15rem;padding:1rem 1.2rem;color:#000;border-left:3px solid #ba1349;font-size:17px;font-style:italic;line-height:1.7}.course100-certificate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:1120px;margin:auto}.course100-certificate-grid figure{height:clamp(250px,27vw,360px);margin:0;overflow:hidden;background:#fff;border:1px solid #ba1349;border-radius:4px}.course100-certificate-grid img{display:block;width:100%;height:100%;object-fit:cover;background:#fff}@media(max-width:767.98px){.course100-certification-intro,.course100-certificate-grid{grid-template-columns:1fr;gap:1rem}.course100-certification-intro{margin-bottom:1.2rem}.course100-certification-copy p,.course100-certification-content>p,.course100-certification-benefits li{font-size:16px!important}.course100-certification-logos{padding:1rem}.course100-certification-content h3{font-size:22px}.course100-certification-content aside{font-size:16px}.course100-certificate-grid figure{height:240px}}

/* 100-hour fee details: three accessible tabs for inclusions, exclusions and packing. */
.course100-fees .course100-heading{margin-bottom:1.6rem}.course100-fee-tabs{max-width:1120px;margin:auto}.course100-fee-tablist{display:grid;grid-template-columns:repeat(var(--course-fee-tab-count,3),minmax(0,1fr));gap:.35rem}.course100-fee-tablist button{position:relative;display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:58px;padding:.7rem 1rem;color:#fff!important;background:#ba1349!important;border:1px solid #ba1349;border-radius:5px 5px 0 0;font-family:var(--body-font);font-size:20px;font-weight:700;line-height:1.25}.course100-fee-tablist button span{display:grid;width:28px;height:28px;place-items:center;color:#ba1349;background:#fff;border-radius:50%;font-size:18px;font-weight:800}.course100-fee-tablist button.active::after{position:absolute;bottom:-11px;left:50%;width:20px;height:20px;background:#ba1349;content:'';transform:translateX(-50%) rotate(45deg)}.course100-fee-tabcontent{min-height:335px;padding:1.65rem 1.8rem;color:#000;background:#fff;border:1px solid rgba(186,19,73,.35);border-radius:0 0 5px 5px}.course100-fee-tabcontent h3{margin:0 0 1.15rem;color:#000;font-size:26px;line-height:1.3}.course100-fee-tabcontent h3::after{display:block;width:55px;margin-top:.5rem;border-bottom:2px solid #ba1349;content:''}.course100-fee-tabcontent h4{margin:1rem 0 .55rem;color:#000;font-size:20px}.course100-fee-tabcontent section+section{padding-top:.6rem;border-top:1px solid rgba(186,19,73,.25)}.course100-fee-tabcontent ul{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.course100-fee-tabcontent li{position:relative;padding-left:1.75rem;color:#000;font-size:18px;line-height:1.55}.course100-fee-tabcontent li::before{position:absolute;top:.08rem;left:0;font-size:18px;font-weight:800}.course100-fee-tabcontent .course-fee-inclusion-list li::before{color:#228b22;content:'✓'}.course100-fee-tabcontent .course-fee-exclusion-list li::before{color:#d11a3a;content:'×';font-size:22px;line-height:.85}@media(max-width:767.98px){.course100-fee-tablist{grid-template-columns:1fr;gap:.2rem}.course100-fee-tablist button{justify-content:flex-start;min-height:50px;font-size:16px;border-radius:4px}.course100-fee-tablist button.active::after{top:auto;right:1rem;bottom:-8px;left:auto;width:16px;height:16px;transform:rotate(45deg)}.course100-fee-tabcontent{min-height:0;padding:1.2rem 1rem}.course100-fee-tabcontent h3{font-size:22px}.course100-fee-tabcontent h4{font-size:19px}.course100-fee-tabcontent li{font-size:16px!important}}

/* Fee tabs: inactive tabs stay white; only the selected tab uses the primary fill. */
.course100-final-cta .container{box-shadow:0 14px 30px rgba(186,19,73,.20),0 3px 8px rgba(0,0,0,.08)!important}
.course100-fee-tablist button:not(.active){color:#ba1349!important;background:#fff!important}
.course100-fee-tablist button:not(.active) span{color:#fff!important;background:#ba1349!important}
.course100-fee-tablist button.active{color:#fff!important;background:#ba1349!important}
.course100-fee-tablist button.active span{color:#ba1349!important;background:#fff!important}

/* Booking: image-led layout with four clear steps and the booking note at the end. */
.course100-booking-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:stretch;max-width:1120px;margin:auto}
.course100-booking-image{min-height:100%;margin:0;overflow:hidden;border-radius:24px}
.course100-booking-image img{display:block;width:100%;height:100%;min-height:520px;object-fit:cover}
.course100-booking-content>p{margin:0 0 .8rem;color:#000!important;font-size:18px!important;line-height:1.7}
.course100-booking-layout .course100-booking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1.2rem}
.course100-booking-layout .course100-booking-grid article{display:flex;gap:.75rem;padding:1rem;border:1px solid rgba(186,19,73,.3);border-radius:8px}
.course100-booking-layout .course100-booking-grid b{flex:0 0 36px;width:36px;height:36px;font-size:14px}
.course100-booking-layout .course100-booking-grid h3{margin:0 0 .25rem;font-size:19px}
.course100-booking-layout .course100-booking-grid p{font-size:16px;line-height:1.55}
.course100-booking-layout .course100-booking-note{margin:1.15rem 0 0;font-size:16px;line-height:1.6}
@media(max-width:991.98px){.course100-booking-layout{grid-template-columns:1fr}.course100-booking-image{min-height:380px}.course100-booking-image img{min-height:380px}}
@media(max-width:575.98px){.course100-booking-image,.course100-booking-image img{min-height:290px}.course100-booking-layout .course100-booking-grid{grid-template-columns:1fr}.course100-booking-content>p{font-size:16px!important}.course100-booking-layout .course100-booking-grid article{padding:.9rem}.course100-booking-layout .course100-booking-note{font-size:16px}}

/* Keep each course hero content item on one line on wide desktop screens only. */
@media(min-width:1200px){.course100-hero-content>span,.course100-hero-content h1,.course100-hero-content p,.course100-hero-content nav{white-space:nowrap}.course100-hero-content h1{font-size:clamp(38px,3.1vw,60px)!important}.course100-hero-content h1 small{display:inline!important;white-space:nowrap}.course100-hero-content p{max-width:none!important}.course100-hero-content nav{display:block!important}}

/* 100-hour sound bath workshop and full-length gallery. */
.course100-sound-workshop{color:#000!important;background:#fff!important}.course100-sound-workshop .course100-heading{margin-bottom:1.8rem}.course100-sound-copy{max-width:1120px;margin:auto}.course100-sound-copy h3{margin:0 0 1rem;color:#ba1349;font-size:28px;line-height:1.3}.course100-sound-copy h4{margin:1.2rem 0 .7rem;color:#000;font-size:20px}.course100-sound-copy p{margin:0 0 1rem;color:#000;font-size:18px;line-height:1.7}.course100-sound-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:.55rem 2rem;margin:0 0 1rem;padding:0 2.4rem;list-style:none}.course100-sound-copy li{position:relative;color:#000;font-size:18px;line-height:1.55}.course100-sound-copy li::before{position:absolute;right:calc(100% + .6rem);color:#ba1349;content:'ॐ';font-weight:800}.course100-sound-copy aside{margin:1.2rem 0;padding:.7rem 1rem;color:#000;border:2px solid #ba1349;border-radius:999px;font-size:18px;font-weight:700;text-align:center}.course100-sound-slider-track{display:grid;grid-auto-columns:100%;grid-auto-flow:column;gap:0;width:100%;margin-top:2rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.course100-sound-slider-track::-webkit-scrollbar{display:none}.course100-sound-slider-track figure{height:500px;margin:0;overflow:hidden;scroll-snap-align:start}.course100-sound-slider-track img{display:block;width:100%;height:100%;object-fit:cover}.course100-sound-workshop .source-carousel-shell{position:relative;margin-top:2rem}.course100-sound-workshop .source-carousel-shell .course100-sound-slider-track{margin-top:0}.course100-sound-workshop .source-carousel-controls{position:absolute;right:1.2rem;bottom:1rem;z-index:2;display:flex;gap:.45rem}.course100-sound-workshop .source-carousel-controls button{display:grid;width:40px;height:40px;place-items:center;color:#fff;background:#ba1349;border:1px solid #fff;border-radius:50%;font-size:20px}@media(max-width:767.98px){.course100-sound-copy h3{font-size:24px}.course100-sound-copy h4{font-size:19px}.course100-sound-copy p,.course100-sound-copy li{font-size:16px!important}.course100-sound-copy ul{grid-template-columns:1fr;padding-left:2rem}.course100-sound-copy aside{font-size:16px;border-radius:8px}.course100-sound-slider-track figure{height:300px}}

/* Four-image sound workshop carousel; motion and hover pause are handled in main.js. */
.course100-sound-slider-track{grid-auto-columns:calc((100% - 3rem)/4);gap:1rem;padding-inline:0}.course100-sound-slider-track figure{height:220px;border:1px solid #ba1349}.course100-sound-workshop .source-carousel-shell{margin-top:2rem;padding-inline:1.25rem;overflow:hidden}.course100-sound-workshop .source-carousel-controls{display:none}@media(max-width:991.98px){.course100-sound-slider-track{grid-auto-columns:calc((100% - 1rem)/2)}}@media(max-width:575.98px){.course100-sound-workshop .source-carousel-shell{padding-inline:1rem}.course100-sound-slider-track{grid-auto-columns:100%}.course100-sound-slider-track figure{height:250px}}
p a{
	color:#2d5f4d!important;
}
/* 100-hour important notes: structured code-of-conduct content. */
.course100-important-notes{color:#000!important;background:#fff!important}.course100-important-notes .course100-heading{margin-bottom:1.8rem}.course100-notes-panel{max-width:1120px;margin:auto;border:1px solid #ba1349}.course100-notes-panel article{padding:1.4rem 1.6rem;background:#fff;border-bottom:1px solid rgba(186,19,73,.45)}.course100-notes-panel article:last-child{border-bottom:0}.course100-notes-panel h3{margin:0 0 .9rem;padding-bottom:.7rem;color:#000;font-size:25px;line-height:1.3;border-bottom:2px solid #ba1349}.course100-notes-panel p{margin:0 0 .9rem;color:#000;font-size:18px;line-height:1.7}.course100-notes-panel p a{color:#2d5f4d;font-weight:700}.course100-notes-panel ul{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}.course100-notes-panel li{position:relative;padding:.55rem .2rem .55rem 1.9rem;color:#000;border-bottom:1px solid rgba(186,19,73,.22);font-size:18px;line-height:1.6}.course100-notes-panel li:last-child{border-bottom:0}.course100-notes-panel li::before{position:absolute;top:.6rem;left:.35rem;color:#ba1349;content:'✓';font-weight:800}.course100-notes-panel strong{color:#000}@media(max-width:767.98px){.course100-notes-panel article{padding:1.15rem 1rem}.course100-notes-panel h3{font-size:22px}.course100-notes-panel p,.course100-notes-panel li{font-size:16px!important}.course100-notes-panel li{padding-left:1.55rem}.course100-notes-panel li::before{left:.1rem}}

/* 100-hour training glance: visual course information cards. */
.course100-training-glance{color:#000!important;background:#fff!important}.course100-training-glance .course100-heading{margin-bottom:1.8rem}.course100-training-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;max-width:1120px;margin:auto}.course100-training-grid article{position:relative;min-height:235px;overflow:hidden;background:#000;border:1px solid #ba1349;border-radius:28px}.course100-training-grid article>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.course100-training-grid article::after{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.84),rgba(0,0,0,.08) 70%);content:''}.course100-training-grid article>div{position:absolute;right:1.15rem;bottom:1rem;left:1.15rem;z-index:1}.course100-training-grid h3{margin:0 0 .2rem;color:#fff!important;font-size:23px;line-height:1.2}.course100-training-grid p,.course100-training-grid a{display:block;margin:0;color:#fff!important;font-size:15px;font-weight:600;line-height:1.4}.course100-training-grid a{padding:.4rem .7rem;border:1px solid #fff;text-align:center;text-decoration:none}.course100-training-grid a:hover{color:#fff!important;background:#ba1349;border-color:#ba1349}@media(max-width:991.98px){.course100-training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course100-training-grid article{min-height:250px}}@media(max-width:575.98px){.course100-training-grid{grid-template-columns:1fr;gap:.8rem}.course100-training-grid article{min-height:230px;border-radius:20px}.course100-training-grid h3{font-size:22px}}

/* 100-hour upcoming dates: auto-generated year tabs and course date table. */
.course100-events .course100-heading{margin-bottom:1.8rem}.course100-date-tabs{max-width:1120px;margin:auto}.course100-date-tablist{display:flex;justify-content:center;gap:.6rem;margin-bottom:1.1rem}.course100-date-tablist button{min-width:240px;padding:.45rem 1rem;color:#ba1349;background:#fff;border:2px solid #ba1349;border-radius:5px;font-family:var(--body-font);font-size:25px;font-weight:700;line-height:1.35}.course100-date-tablist button.active{color:#fff;background:#ba1349}.course100-date-tabcontent{overflow:hidden;border:1px solid #ba1349}.course100-date-table{display:grid}.course100-date-row{display:grid;grid-template-columns:1.15fr 1.55fr 1fr .78fr;align-items:center;min-height:68px;border-bottom:1px solid rgba(186,19,73,.45)}.course100-date-row:last-child{border-bottom:0}.course100-date-row>span{padding:.8rem 1rem;color:#000;font-size:18px;text-align:center}.course100-date-head{min-height:56px;background:#ba1349}.course100-date-head>span{color:#fff!important;font-weight:700}.course100-date-row .btn{min-width:135px;padding:.55rem .8rem;color:#fff!important;background:#ba1349!important;border-color:#ba1349!important;border-radius:3px;font-size:16px}.course100-events>.container>.course100-note{max-width:720px;margin-left:auto!important;margin-right:auto!important;text-align:center}.course100-events>.container>.course100-date-notes{display:grid;width:100%;max-width:1120px;grid-template-columns:auto repeat(3,minmax(0,1fr));gap:.75rem 1.2rem;align-items:start;text-align:left}.course100-date-notes span{position:relative;padding-left:1.65rem}.course100-date-notes span::before{position:absolute;left:0;color:#ba1349;content:counter(course-date-note) '.';font-weight:800}.course100-date-notes{counter-reset:course-date-note}.course100-date-notes span{counter-increment:course-date-note}@media(max-width:767.98px){.course100-date-tablist{gap:.4rem}.course100-date-tablist button{min-width:0;flex:1;padding:.45rem .55rem;font-size:18px}.course100-date-tabcontent{border:0}.course100-date-row{grid-template-columns:1fr;gap:.2rem;padding:1rem;border:1px solid rgba(186,19,73,.35);border-bottom:0}.course100-date-row:last-child{border-bottom:1px solid rgba(186,19,73,.35)}.course100-date-head{display:none}.course100-date-row>span{display:flex;justify-content:space-between;gap:1rem;padding:.15rem 0;font-size:16px;text-align:left}.course100-date-row>span::before{color:#ba1349;content:attr(data-label);font-size:13px;font-weight:700}.course100-date-row>span:last-child{justify-content:flex-start;padding-top:.5rem}.course100-date-row>span:last-child::before{display:none}.course100-date-row .btn{width:100%;font-size:15px}.course100-events>.container>.course100-date-notes{grid-template-columns:1fr;gap:.55rem}.course100-date-notes strong{display:none}}
.course100-date-row .course100-room-fees{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;padding-top:.45rem;padding-bottom:.45rem}.course100-room-fees i{display:block;padding:0 .25rem;color:#000;border-right:1px solid rgba(186,19,73,.25);font-style:normal}.course100-room-fees i:last-child{border-right:0}.course100-room-fees small,.course100-room-fees strong{display:block}.course100-room-fees small{font-size:13px;font-weight:600;line-height:1.25}.course100-room-fees strong{margin-top:.2rem;color:#ba1349;font-size:16px;line-height:1.25}@media(max-width:767.98px){.course100-date-row>span.course100-room-fees{display:grid;grid-template-columns:repeat(3,1fr);padding:.35rem 0;text-align:center}.course100-date-row>span.course100-room-fees::before{grid-column:1/-1;justify-self:start;margin-bottom:.35rem}.course100-room-fees small{font-size:12px}.course100-room-fees strong{font-size:15px}}

/* 100-hour daily timetable: a clean time-led schedule grid. */
.course100-schedule .course100-heading{margin-bottom:1.7rem}.course100-schedule-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:2.05rem 1.2rem;max-width:1120px;margin:auto;padding:2.7rem 1rem 1.4rem!important;overflow:visible!important;background:#fff!important;border:1px solid #ba1349!important;border-radius:0!important;box-shadow:none!important}.course100-schedule-grid>div{position:relative;display:flex!important;grid-column:span 2;min-height:54px!important;align-items:center;justify-content:center;padding:1rem .7rem .55rem!important;background:#fff!important;border:1px dashed #ba1349!important;text-align:center}.course100-schedule-grid>div:nth-last-child(2){grid-column:2 / span 2}.course100-schedule-grid time{position:absolute;top:-14px;left:50%;display:block!important;height:auto!important;padding:.32rem .9rem!important;color:#fff!important;background:#ba1349!important;border:0!important;font-size:16px;font-weight:700;line-height:1.2;transform:translateX(-50%);white-space:nowrap}.course100-schedule-grid span{padding:0!important;color:#000!important;background:transparent!important;font-size:17px;font-weight:700;line-height:1.35}.course100-schedule .course100-note{max-width:620px;margin:1rem 0 0 auto!important;padding:.8rem 1rem!important;color:#000!important;background:#fff!important;border:1px solid rgba(186,19,73,.45)!important;border-left:4px solid #ba1349!important;border-radius:0!important;font-size:15px;font-style:italic;line-height:1.55}.course100-schedule .course100-note strong{padding-right:.5rem;color:#ba1349!important;font-style:normal}.course100-schedule .course100-note span+span::before{margin:0 .5rem;color:#ba1349;content:'•'}@media(max-width:767.98px){.course100-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.8rem .7rem;padding:2.2rem .7rem 1rem!important}.course100-schedule-grid>div,.course100-schedule-grid>div:nth-last-child(2){grid-column:span 1}.course100-schedule-grid>div:last-child:nth-child(odd){grid-column:1 / span 2;width:calc(50% - .35rem);justify-self:center}.course100-schedule-grid time{font-size:13px}.course100-schedule-grid span{font-size:15px}.course100-schedule .course100-note{margin-top:.8rem!important;font-size:14px}.course100-schedule .course100-note span{display:block}.course100-schedule .course100-note span+span::before{display:none}}

/* 100-hour course advantages: structured editorial panels from the supplied reference. */
.course100-why>.container>.course100-heading{margin-bottom:2rem}.course100-why-grid{align-items:stretch!important}.course100-why-image{height:auto!important}.course100-why-image img{display:block;height:100%!important;min-height:0!important;object-fit:cover}
.course100-why-flow{max-width:1120px;margin:auto;color:#000}.course100-why-flow::after{display:block;clear:both;content:''}.course100-why-flow p{margin:0 0 1rem;color:#000!important;font-size:18px!important;line-height:1.75}.course100-why-flow .btn{margin-top:.25rem}.course100-why-mission-visual{position:relative;float:left;width:41%;height:600px;margin:0 clamp(1.5rem,4vw,4rem) 1rem 0;padding:1rem 0 4.5rem 3rem}.course100-why-mission-primary,.course100-why-mission-secondary{position:absolute;overflow:hidden;background:#fff;border:5px solid #fff!important;border-radius:24px!important;box-shadow:0 0 0 1px #ba1349!important}.course100-why-mission-primary{inset:0 0 3.5rem 3rem}.course100-why-mission-secondary{bottom:0;left:0;z-index:2;width:47%;height:48%}.course100-why-mission-primary img,.course100-why-mission-secondary img{display:block;width:100%;height:100%;object-fit:cover;border:0!important;border-radius:19px!important;box-shadow:none!important}.course100-why-mission-emblem{position:absolute;top:1.4rem;left:.2rem;z-index:3;display:grid;width:108px;height:108px;place-items:center;padding:.7rem;color:#000;background:#fff;border:2px solid #ba1349;border-radius:50%;box-shadow:0 8px 20px rgba(0,0,0,.14);text-align:center}.course100-why-mission-emblem strong{font-size:25px;line-height:1}.course100-why-mission-emblem span{font-size:10px;font-weight:800;line-height:1.25;text-transform:uppercase}@media(max-width:767.98px){.course100-why-mission-visual{float:none;width:100%;height:420px;margin:0 0 1.5rem;padding:1rem 0 3.5rem 2rem}.course100-why-mission-primary{inset:0 0 2.5rem 2rem}.course100-why-flow p{font-size:16px!important}.course100-why-mission-emblem{width:85px;height:85px}.course100-why-mission-emblem strong{font-size:21px}.course100-why-mission-emblem span{font-size:8px}}

/* 100-hour course advantages: structured editorial panels from the supplied reference. */
.course100-highlights .course100-heading{margin-bottom:2rem}.course100-advantages-panel{max-width:1120px;margin:auto}.course100-advantages-panel article{padding:1.35rem 1.6rem;background:#fff;border:1px solid rgba(186,19,73,.28)}.course100-advantages-panel article+article{margin-top:1.2rem}.course100-advantages-panel h3{margin:0 -1.6rem 1.15rem;padding:0 1.6rem 1rem;color:#000;font-size:25px;line-height:1.3;border-bottom:2px solid #ba1349}.course100-reasons-list,.course100-advantages-list{display:grid;grid-template-columns:1fr 1fr;gap:.65rem 2rem;margin:0;padding:0;list-style:none}.course100-advantages-list{grid-template-columns:1fr}.course100-reasons-list li,.course100-advantages-list li{position:relative;padding-left:1.7rem;color:#000;font-size:18px;line-height:1.55}.course100-reasons-list li::before,.course100-advantages-list li::before{position:absolute;top:0;left:0;color:#ba1349;content:'ॐ';font-size:16px;font-weight:800}.course100-advantages-panel article>p{margin:1.25rem 0 0;color:#000;font-size:18px;line-height:1.7}.course100-advantages-panel .course100-highlight-note{max-width:none;margin:1.2rem 0 0;padding:0;color:#000!important;border:0;border-radius:0;font-size:18px;line-height:1.7}@media(max-width:767.98px){.course100-advantages-panel article{padding:1.2rem}.course100-advantages-panel h3{margin:0 -1.2rem 1rem;padding:0 1.2rem .85rem;font-size:22px}.course100-reasons-list{grid-template-columns:1fr}.course100-reasons-list li,.course100-advantages-list li,.course100-advantages-panel article>p,.course100-advantages-panel .course100-highlight-note{font-size:16px!important}}

/* 100-hour syllabus: clean rounded accordion rows based on the supplied reference. */
.course100-curriculum .course100-heading{margin-bottom:1.8rem}.course100-curriculum .course100-heading>p{max-width:820px;margin:.8rem auto 0}.course100-accordion{max-width:1120px!important;gap:.5rem!important}.course100-accordion article{overflow:hidden;background:#fff!important;border:1px solid #000!important;border-radius:14px!important;box-shadow:none!important}.course100-accordion .accordion-button,.course100-accordion .accordion-button:not(.collapsed){display:flex!important;min-height:44px;padding:.68rem .9rem;color:#000!important;background:#fff!important;font-family:var(--body-font)!important;font-size:14px!important;font-weight:700!important;line-height:1.35;box-shadow:none!important}.course100-accordion .accordion-button>b{display:none!important}.course100-accordion .accordion-button::after{width:.8rem;height:.8rem;margin-left:auto;background-size:.8rem;transform:rotate(0)!important}.course100-accordion .accordion-button:not(.collapsed)::after{transform:rotate(180deg)!important}.course100-accordion .accordion-body{padding:1rem 1.15rem 1.2rem;background:#fff!important;border-top:1px solid rgba(186,19,73,.3)}.course100-accordion .accordion-body h4{margin:0 0 .55rem;color:#000!important;font-size:19px}.course100-accordion .accordion-body p,.course100-accordion .accordion-body li{color:#000!important;font-size:16px!important;line-height:1.65}.course100-curriculum .curriculum-summary{max-width:1120px;margin:1.1rem auto 0;padding:1rem 0;color:#000!important;background:#fff!important;border:0!important;border-radius:0!important}.course100-curriculum .curriculum-summary p{margin:.45rem 0;color:#000!important;font-size:18px;line-height:1.7}@media(max-width:767.98px){.course100-accordion .accordion-button,.course100-accordion .accordion-button:not(.collapsed){min-height:42px;padding:.65rem .8rem;font-size:13px!important}.course100-accordion .accordion-body{padding:1rem}.course100-curriculum .curriculum-summary p{font-size:16px!important}}

/* Teacher profiles: keep reversed cards on the same image/text proportions as the standard cards. */
@media(min-width:992px){
  .team-profile.is-reversed{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)!important}
  .team-profile-visual{width:min(100%,430px);justify-self:start}
  .team-profile.is-reversed .team-profile-visual{justify-self:end}
  .team-profile .team-image-frame{width:100%!important;height:530px!important}
  .team-profile .team-image-frame img{object-position:center top!important}
}

/* 5-day retreat: Ganges visual matches the height of its copy. */
@media(min-width:768px){.retreat-ganges-section .course100-why-flow{display:grid;grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);gap:clamp(2rem,4vw,4rem);align-items:stretch}.retreat-ganges-section .course100-why-mission-visual{float:none;width:auto;height:auto;min-height:0;margin:0;padding:1rem 0 3.5rem 2.5rem}.retreat-ganges-section .retreat-ganges-copy{display:flex;min-width:0;flex-direction:column;justify-content:center}.retreat-ganges-section .course100-why-mission-primary{inset:0 0 3.5rem 2.5rem}.retreat-ganges-section .course100-why-mission-secondary{height:46%}.retreat-ganges-section .course100-why-mission-primary img,.retreat-ganges-section .course100-why-mission-secondary img{object-position:center}.retreat-ganges-section .course100-why-flow::after{display:none}}

/* 5-day retreat: peaceful excursions gallery. */
.retreat-excursions-section{background:linear-gradient(180deg,#fff8fb 0%,#fff 100%)}.retreat-excursions-heading{margin:0 auto 1.2rem}.retreat-excursions-heading .eyebrow{display:inline-block;margin-bottom:.9rem}.retreat-excursions-heading h2{margin:0;color:#bd104b;font-family:var(--heading-font,'Philosopher',serif);font-size:clamp(30px,3.1vw,43px);font-weight:700;line-height:1.2}.retreat-excursions-copy{max-width:1100px;margin:0 auto 2rem;color:#171717;font-size:18px;line-height:1.78;text-align:center}.retreat-excursions-gallery{display:grid;grid-template-columns:1.32fr 1fr 1fr;gap:1.2rem;max-width:1220px;margin:auto}.retreat-excursions-gallery figure{position:relative;min-height:255px;margin:0;overflow:hidden;border:1px solid rgba(198,14,77,.5);border-radius:18px;box-shadow:0 9px 20px rgba(36,24,29,.13)}.retreat-excursions-gallery figure:first-child{grid-row:span 1}.retreat-excursions-gallery img{display:block;width:100%;height:100%;min-height:255px;object-fit:cover;transition:transform .35s ease}.retreat-excursions-gallery figure:hover img{transform:scale(1.05)}@media(max-width:767.98px){.retreat-excursions-copy{font-size:16px;line-height:1.7}.retreat-excursions-gallery{grid-template-columns:1fr;gap:1rem;max-width:560px}.retreat-excursions-gallery figure,.retreat-excursions-gallery img{min-height:230px}}

/* 5-day retreat: a lifelong wellness takeaway. */
.retreat-lifelong-wellness-section{background:#fff}.retreat-lifelong-wellness-heading{max-width:900px;margin:0 auto 2.5rem}.retreat-lifelong-wellness-heading .eyebrow{display:inline-block;margin-bottom:.9rem}.retreat-lifelong-wellness-heading h2{margin:0;color:#bd104b;font-family:var(--heading-font,'Philosopher',serif);font-size:clamp(30px,3.1vw,43px);font-weight:700;line-height:1.2}.retreat-lifelong-wellness-layout{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1220px;margin:auto}.retreat-lifelong-wellness-copy{padding:clamp(1.4rem,3vw,2.4rem);background:#fff8fb;border-left:5px solid #c60e4d;border-radius:0 18px 18px 0;box-shadow:0 10px 24px rgba(48,26,35,.1)}.retreat-lifelong-wellness-copy p{margin:0;color:#171717;font-size:18px;line-height:1.78}.retreat-lifelong-wellness-copy p+p{margin-top:1.25rem}.retreat-lifelong-wellness-visual{position:relative;margin:0}.retreat-lifelong-wellness-visual::before{position:absolute;inset:13px -13px -13px 13px;z-index:0;border:1px solid #c60e4d;border-radius:26px;content:''}.retreat-lifelong-wellness-visual img{position:relative;z-index:1;display:block;width:100%;min-height:360px;object-fit:cover;border-radius:24px;box-shadow:0 14px 28px rgba(39,20,29,.16)}@media(max-width:767.98px){.retreat-lifelong-wellness-heading{margin-bottom:1.7rem}.retreat-lifelong-wellness-layout{grid-template-columns:1fr;gap:2rem}.retreat-lifelong-wellness-copy p{font-size:16px;line-height:1.7}.retreat-lifelong-wellness-visual{max-width:560px;margin:auto}.retreat-lifelong-wellness-visual img{min-height:280px}}

/* 5-day retreat: authentic yoga and meditation introduction. */
.retreat-yoga-meditation-heading{max-width:980px;margin:0 auto 2.5rem}.retreat-yoga-meditation-heading .eyebrow{display:inline-block;margin-bottom:.9rem}.retreat-yoga-meditation-heading h2{margin:0;color:#bd104b;font-family:var(--heading-font,'Philosopher',serif);font-size:clamp(30px,3.1vw,43px);font-weight:700;line-height:1.2}
.retreat-yoga-meditation-section{background:linear-gradient(180deg,#fff 0%,#fff8fb 100%)}.retreat-yoga-meditation-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1220px;margin:auto}.retreat-yoga-meditation-visual{position:relative;margin:0}.retreat-yoga-meditation-visual::before{position:absolute;inset:-13px 13px 13px -13px;z-index:0;border:1px solid #c60e4d;border-radius:28px;content:''}.retreat-yoga-meditation-visual img{position:relative;z-index:1;display:block;width:100%;min-height:390px;object-fit:cover;border-radius:26px;box-shadow:0 14px 28px rgba(39,20,29,.16)}.retreat-yoga-meditation-copy .eyebrow{display:inline-block;margin-bottom:.9rem}.retreat-yoga-meditation-copy h2{margin:0 0 1.1rem;color:#bd104b;font-family:var(--heading-font,'Philosopher',serif);font-size:clamp(30px,3.1vw,43px);font-weight:700;line-height:1.2}.retreat-yoga-meditation-copy p{margin:0;color:#171717;font-size:18px;line-height:1.78}@media(max-width:767.98px){.retreat-yoga-meditation-layout{grid-template-columns:1fr;gap:2rem}.retreat-yoga-meditation-visual{max-width:560px;margin:auto}.retreat-yoga-meditation-visual img{min-height:290px}.retreat-yoga-meditation-copy{text-align:center}.retreat-yoga-meditation-copy p{font-size:16px;line-height:1.7}}

/* 5-day retreat benefits: feature card and two balanced benefit lists. */
@font-face{font-family:'Font Awesome 5 Free';font-style:normal;font-weight:900;src:url('../../blog/frontend/plugins/font-awesome/webfonts/fa-solid-900.woff2') format('woff2')}.retreat-benefits-section .course100-heading{margin-bottom:2.3rem}.retreat-benefits-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,440px) minmax(0,1fr);gap:1.5rem;align-items:center;max-width:1500px;margin:auto}.retreat-benefits-list{display:grid;gap:1rem}.retreat-benefits-list article{display:flex;align-items:center;gap:1rem;min-height:80px;padding:.85rem 1.1rem;background:#fff;border:1px solid #c60e4d;border-left:8px solid #c60e4d;border-radius:11px;box-shadow:0 6px 13px rgba(27,27,27,.18)}.retreat-benefits-list article>span{display:grid;flex:0 0 46px;width:46px;height:46px;place-items:center;color:#fff;background:#c60e4d;border-radius:7px;font-size:21px}.retreat-benefits-list .fa-solid{font-family:'Font Awesome 5 Free';font-style:normal;font-weight:900}.retreat-benefits-list .fa-leaf::before{content:'\f06c'}.retreat-benefits-list p{margin:0;color:#111;font-size:18px;line-height:1.42}.retreat-benefits-feature{padding:1.35rem 1.35rem 1.6rem;text-align:center;background:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.95)),url('../images/veda/5days/5days_banner.webp') center/cover;border:1px solid #c60e4d;border-radius:28px;box-shadow:0 8px 20px rgba(27,27,27,.13)}.retreat-benefits-feature img{display:block;width:min(100%,330px);aspect-ratio:1;object-fit:cover;margin:0 auto 1.15rem;border:1px solid #273039;border-radius:50%}.retreat-benefits-feature h3{margin:0;color:#c60e4d;font-size:31px}.retreat-benefits-feature p{margin:.15rem 0 1.15rem;color:#111;font-size:19px}.retreat-benefits-feature .btn{min-width:210px;font-size:18px}@media(max-width:991.98px){.retreat-benefits-layout{grid-template-columns:1fr;max-width:660px}.retreat-benefits-feature{grid-row:1}.retreat-benefits-list p{font-size:17px}}@media(max-width:575.98px){.retreat-benefits-section .course100-heading{margin-bottom:1.6rem}.retreat-benefits-list{gap:.75rem}.retreat-benefits-list article{min-height:68px;padding:.7rem .8rem;border-left-width:6px}.retreat-benefits-list article>span{flex-basis:40px;width:40px;height:40px;font-size:18px}.retreat-benefits-list p{font-size:16px}.retreat-benefits-feature{padding:1rem;border-radius:20px}.retreat-benefits-feature img{width:min(100%,260px)}.retreat-benefits-feature h3{font-size:26px}.retreat-benefits-feature p{font-size:17px}}
