/* Responsive refinement shared by the three private themes. */
.menu-toggle{display:none;font:700 13px/1.2 var(--sans);padding:12px 14px;border:1px solid currentColor;background:transparent;color:inherit;min-height:44px;cursor:pointer;gap:9px;align-items:center}
.menu-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
:where(main,footer) :is(p,li,a,h1,h2,h3){overflow-wrap:break-word}
:is(.hero-copy,.entry-content,.contact-panel,.sk-contact-panel,.resource-card,.vm-practice-copy,.vm-sara-inner>div,.editorial-network-grid>article){min-width:0}
:is(.button,.header-cta,.main-menu a,.sk-catalog-nav a){min-height:44px}
.main-menu a{display:flex;align-items:center}
.text-link{min-height:36px;align-items:center}
:where(input,select,textarea){max-width:100%;font:inherit}
:where(iframe,video){max-width:100%}
.entry-content :is(a,p,li){overflow-wrap:anywhere}
.entry-content table{display:block;overflow:auto;max-width:100%}
.site-breadcrumbs{font:12px/1.6 var(--sans);margin-bottom:25px;color:var(--muted,#66706d)}
.site-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 10px;list-style:none;padding:0;margin:0}
.site-breadcrumbs li+li:before{content:'/';margin-right:10px;opacity:.6}
.site-breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1200px){
 .site-header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:92px;padding:16px 0;gap:16px;align-items:center}
 .site-header .brand{min-width:0;max-width:100%;justify-self:start}
 .site-header .brand>img{width:min(350px,100%);max-width:100%}
 .site-header .site-navigation{grid-column:1/-1;width:100%}
 .site-header .header-cta{grid-column:1/-1;display:inline-flex;justify-self:start;align-items:center;white-space:normal}
 .site-header.nav-enhanced .menu-toggle{display:inline-flex;justify-self:end}
 .site-header.nav-enhanced:not(.nav-open) :is(.site-navigation,.header-cta){display:none}
 .site-header .main-menu{display:flex;flex-direction:column;align-items:stretch;gap:0;font-size:15px;letter-spacing:0;text-transform:none;font-weight:400}
 .site-header .main-menu a{padding:12px 2px;border-bottom:1px solid var(--line);min-height:48px;line-height:1.4}
 .site-header .brand-name{font-size:29px}
 .site-header .brand-tag{font-size:6px}
 .site-header .brand-with-symbol .wordmark{font-size:25px}
 .site-header .brand-with-symbol .identity-symbol{width:46px;height:46px;flex-basis:46px}
}
@media(min-width:641px) and (max-width:1000px){
 .cards,.resource-grid,.sk-topic-grid,.sk-upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .section-heading{gap:30px}.section-heading>p{min-width:210px}
 .vm-practice-row,.vm-practice-intro,.vm-practice-contact,.split,.meaning-grid,.sk-editorial{gap:35px}
 .hero-sara .hero-copy h1{font-size:clamp(40px,5.2vw,54px)}
 .sk-photo-hero .hero-copy h1{font-size:clamp(49px,6.1vw,65px)}
 .sk-experience-copy{padding:38px 28px}
}
@media(max-width:640px){
 .shell{width:calc(100% - 36px)}
 .site-header .header-inner{min-height:82px;gap:12px;padding:14px 0}
 .site-header .brand>img{width:245px}
 .site-header .brand-with-symbol{gap:7px}
 .site-header .brand-with-symbol .identity-symbol{width:36px;height:36px;flex-basis:36px}
 .site-header .brand-with-symbol .wordmark{font-size:21px}
 .site-header .brand-with-symbol small{font-size:5.7px;letter-spacing:.08em}
 .site-header .brand-name{font-size:24px}
 .site-header .brand-mark{width:29px;height:43px;flex-basis:29px}
 .site-header .brand-tag{font-size:5.2px;letter-spacing:.055em}
 .menu-toggle{padding:10px;min-width:44px}.menu-toggle .toggle-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 h1,.page-title,.woocommerce-products-header__title{font-size:clamp(36px,9.5vw,48px);line-height:1.13}
 .hero-sara .hero-copy h1{font-size:clamp(36px,10vw,46px);line-height:1.12}
 .hero-sara .hero-grid{min-height:0;padding-top:280px;padding-bottom:40px}
 .hero-mindfulness .hero-grid{min-height:660px;padding-top:190px;padding-bottom:38px}
 body.mindfulness .hero-mindfulness .hero-copy h1{font-size:clamp(35px,9.2vw,43px);line-height:1.15}
 .sk-photo-hero .hero-grid{min-height:0;padding-top:290px;padding-bottom:40px}
 .sk-photo-hero .hero-copy h1{font-size:clamp(42px,11vw,54px)}
 :is(.hero-copy,.entry-content,.card,.resource-card,.sk-topic-copy,.vm-practice-copy,.vm-retreat-grid,.contact-panel,.sk-contact-panel) p{font-size:15px;line-height:1.8}
 .hero-actions{gap:16px;align-items:flex-start}.hero-actions .button{gap:18px;max-width:100%}
 :is(.section,.meaning-section){padding-top:52px;padding-bottom:52px}
 .cards,.resource-grid,.sk-topic-grid,.sk-upcoming-grid,.program-grid,.sk-principles,.sk-steps{grid-template-columns:minmax(0,1fr)}
 .section-heading{display:block}.section-heading>p{min-width:0;margin-top:22px}
 .section-heading h2,.sk-faq-layout h2,.sk-experience-copy h2,.closing-section h2{font-size:clamp(32px,9vw,42px)}
 .entry-content h2,.vm-practice-intro h2,.vm-practice-copy h2,.vm-practice-contact h2{font-size:clamp(29px,8.2vw,35px)}
 .course-band h2{font-size:34px}.course-inner{display:block}.course-inner .button{white-space:normal}
 .vm-practice-hero-inner{min-height:0;padding-top:290px;padding-bottom:38px}
 body.mindfulness .vm-practice-hero h1{font-size:clamp(36px,10vw,43px)}
 .vm-practice-intro,.vm-practice-row,.vm-practice-contact,.vm-practice-faq-layout,.split,.meaning-grid,.sk-editorial,.sk-faq-layout,.vm-sara-inner{grid-template-columns:minmax(0,1fr);gap:28px}
 body.mindfulness .vm-retreat-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .vm-retreat-learning{padding:52px 0}.vm-practice-faq summary,.sk-faq summary{min-height:44px;font-size:16px;line-height:1.6}
 .resource-card{padding:24px}.resource-card-image{margin-left:-24px;margin-right:-24px;width:calc(100% + 48px)}
 .resource-card h3{font-size:27px}.resource-card .eyebrow{font-size:9px}
 .contact-panel,.sk-contact-panel,.sk-inline-cta{padding:24px}
 .sk-experience-image{height:300px}.sk-experience-copy{padding:45px 22px}
 .footer-main,.footer-bottom{display:block}.footer-main nav{margin-top:24px}
 .footer-main nav a,.footer-links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
 .footer-bottom{font-size:11px;line-height:1.8}.footer-bottom span{display:block;margin-top:8px}
 .intro-strip .shell,.brand-strip-inner{font-size:9px;letter-spacing:.08em;display:grid;grid-template-columns:1fr 1fr;gap:16px}
 .editorial-network-grid{grid-template-columns:minmax(0,1fr)}
 .sk-course-facts>div{grid-template-columns:85px minmax(0,1fr);gap:12px}
 input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

@media(max-width:640px){body:not(.mindfulness) .hero-sara:before{background:linear-gradient(180deg,rgba(255,255,255,0) 10%,rgba(255,255,255,.25) 30%,rgba(255,255,255,.94) 48%,rgba(255,255,255,.99) 68%)}}
