/* Shared small-screen layout; existing desktop composition stays in place. */
.mobile-hero-image{display:none}
.menu-toggle{display:none}
.hero:before{background:linear-gradient(90deg,rgba(255,250,242,.98) 0%,rgba(255,250,242,.92) 34%,rgba(255,250,242,.48) 65%,rgba(255,250,242,.12) 100%)}
.community-intro{padding-top:28px;padding-bottom:36px}
.community-intro h1{font-size:clamp(2.5rem,8vw,5rem)}
.community-intro p{font-size:1rem;max-width:640px}
.home-ending.home-ending-photo{display:flex;height:auto!important;min-height:clamp(360px,32vw,520px);overflow:hidden;background:var(--cream);isolation:isolate}
.home-ending.home-ending-photo:before{content:"";display:block;position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(252,250,245,.28),rgba(252,250,245,.65) 45%,rgba(252,250,245,.92) 100%)}
.home-ending.home-ending-photo .ending-landscape{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;filter:blur(1px);opacity:.78}
.home-ending.home-ending-photo .ending-copy{position:relative;inset:auto;z-index:2;height:auto;align-items:center;justify-content:flex-end;text-align:center;padding-top:70px;padding-bottom:38px;background:transparent}
.home-ending-photo .home-bottom-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0 0;padding:0;width:100%}
.home-ending-photo .home-bottom-actions .btn{min-height:50px;background:rgba(255,255,255,.9);border:1px solid rgba(13,83,98,.22);color:var(--ocean);font-size:1rem;box-shadow:0 4px 16px rgba(24,55,62,.08)}
.home-ending-photo .home-bottom-actions .btn:first-child{background:rgba(13,83,98,.94);color:white}
.home-ending-photo .home-bottom-actions .business-cta{background:rgba(210,103,72,.9);border-color:rgba(210,103,72,.35);color:white}
.home-ending-photo .home-bottom-actions .btn:hover{background:#eaf5f4;color:var(--ocean)}
@media(max-width:650px){.home-ending.home-ending-photo{min-height:520px}.home-ending.home-ending-photo .ending-copy{padding-top:60px;padding-bottom:28px}.home-ending-photo .home-bottom-actions{display:grid;grid-template-columns:1fr;gap:10px}.home-ending-photo .home-bottom-actions .btn{width:100%}.home-ending.home-ending-photo .ending-landscape{object-position:48% center}}
.navlinks .btn{color:var(--white)}
.home-ending{height:auto;isolation:auto;background:transparent}
.home-ending .ending-landscape{position:relative;inset:auto;display:block;width:100%;height:auto;z-index:0}
.home-ending:before{z-index:1}
.home-ending .ending-copy{position:absolute;inset:0;z-index:2}
@media(max-width:900px){
 .nav{height:auto;min-height:84px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px;gap:14px}
 .navlinks{flex-wrap:wrap;gap:10px 20px;max-width:100%}
 .navlinks a{font-size:.95rem}
 .community-layout{grid-template-columns:1fr}
}
@media(max-width:650px){
 .wrap{width:calc(100% - 32px)}
 .audience-nav{padding:8px 0;gap:6px}
 .audience-nav a{min-height:44px;font-size:.95rem;display:flex;align-items:center;justify-content:center}
 .nav{position:relative;gap:12px;padding:14px 0 18px;align-items:center}
 .nav .brand{margin:0 auto 0 0}
 .brand-mark{width:34px;height:34px}.brand-wordmark{width:133px}
 .audience-nav{display:none}
 .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 13px;border:1px solid var(--ocean);background:var(--cream);color:var(--ocean);font-size:.92rem;font-weight:700;cursor:pointer}
 .navlinks{display:none;position:absolute;z-index:20;top:100%;left:0;right:0;width:100%;padding:12px;background:var(--cream);border:1px solid var(--line);box-shadow:0 18px 35px rgba(24,55,62,.12)}
 .navlinks.is-open{display:grid;grid-template-columns:1fr;gap:8px}
 .navlinks.is-open a:not(.btn){display:flex}
 .navlinks a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:9px 12px;text-align:center;border:1px solid var(--line);font-size:.95rem;background:var(--white)}
 .navlinks .btn{min-height:46px;padding:10px 12px;white-space:normal;background:var(--ocean);border-color:var(--ocean)}
 h1,h2{letter-spacing:-.045em;overflow-wrap:break-word}
 h2{font-size:clamp(2rem,8vw,2.75rem);line-height:1.1}
 .hero{display:flex;flex-direction:column;align-items:stretch;min-height:680px;background:#e8d8c2 url('images/afterflow-interior-black-sportswear.png') 62% bottom/cover}
 .hero:before{display:block;background:linear-gradient(180deg,rgba(255,250,242,.98) 0%,rgba(255,250,242,.95) 48%,rgba(255,250,242,.72) 72%,rgba(255,250,242,.16) 100%)}
 .hero-content{padding:28px 22px 26px;max-width:100%}
 .hero h1{font-size:clamp(2.5rem,10vw,3.5rem);margin:16px 0 20px}
 .hero .eyebrow{font-size:.875rem;letter-spacing:.09em}
 .hero .lead,.hero-definition{font-size:1rem;line-height:1.65}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}
 .hero-actions .btn{width:100%;font-size:1rem}
 .mobile-hero-image{display:none}
 .hero-foot{position:absolute;right:16px;bottom:16px;text-align:center;font-size:.75rem;padding:10px 12px;background:rgba(255,250,242,.88)}
 .intro{padding:24px 0 30px}.intro p{font-size:1rem}.intro strong{font-size:.875rem}
 .section{padding:42px 0}.section-head{margin-bottom:24px}.section-head p{font-size:1rem}
 .flow{gap:18px}.flow-photo{aspect-ratio:1/1;background-size:300% 100%}
 .flow-card-content{padding:22px}.flow-card p,.flow-card-action{font-size:1rem}.flow-card small{font-size:.875rem}
 .flow-card h3{font-size:1.75rem}.flow-card:hover{transform:none}
 .map-shell{padding:20px 16px}.map-tools{margin:22px 0;gap:14px}
 .map-tools label{min-width:0;width:100%}.map-tools label,.join-form label{font-size:1rem}
 .map-tools input,.map-tools select,.join-form input,.join-form select,.join-form textarea{font-size:16px;min-width:0;min-height:48px}
 .community-map{height:300px}.community-results{min-height:0;padding:20px}
 .community-layout>*{min-width:0}.member-card a{display:inline-flex;align-items:center;min-height:44px;font-size:1rem}
 .join-form{grid-template-columns:1fr}.join-form .consent input{min-height:20px;flex:0 0 20px}
 .join-form .btn{width:100%}.fineprint,.join-note,.offer-price span{font-size:.875rem;line-height:1.65}
 .practice-back{padding:12px 0 18px}.practice-back a{display:inline-flex;align-items:center;min-height:44px;font-size:.95rem}
 .practice-intro{min-height:0}.practice-intro-copy{padding:26px 22px}
 .practice-intro h1{font-size:clamp(2.8rem,11vw,3.5rem)}
 .practice-intro-photo{min-height:0;aspect-ratio:1/1;background-size:300% 100%}
 .practice-choices{gap:12px;margin:18px auto 30px}.practice-choice{padding:22px 18px;gap:14px}
 .practice-choice h2{font-size:1.5rem}.practice-choice p{margin-bottom:14px}
 .ritual{padding:24px 20px;gap:24px}.ritual>*{min-width:0}
 .day summary{min-height:48px;gap:10px;align-items:flex-start;padding:8px 0}.day summary span{flex:1}
 .day p,.day-done{margin-left:0;font-size:1rem}.day .day-guide{font-size:.875rem}
 .day-done{min-height:44px}.day-done input{flex:0 0 20px;width:20px;height:20px}
 .audio-ritual{padding:24px 18px;gap:20px}.audio-ritual>*{min-width:0}
 .audio-player{padding:14px 10px}.audio-player audio{min-width:0;max-width:100%}
 .audio-player a{font-size:1rem;padding:8px 0}
 .live-session{padding:24px 20px}.live-session .btn{width:100%;min-height:48px}
 .circle-copy{padding:26px 22px}.circle-copy .btn{width:100%;font-size:1rem}
 .circle-image{min-height:0;aspect-ratio:1672/941;background-size:100% 100%;padding:22px}
 .circle-image span{font-size:2rem}.offer-price{gap:8px}
 .meeting-hero{padding:28px 0 36px}.meeting-hero h1{font-size:clamp(2.5rem,10vw,3.5rem)}
 .meeting-hero p{font-size:1rem}.meeting-hero .btn,.meeting-copy .btn{width:100%;font-size:1rem}
 .meeting-steps{gap:14px}.meeting-step{padding:22px}
 .home-ending{height:auto!important;min-height:0;aspect-ratio:auto;display:flex;flex-direction:column;background:#f2ece1}
 .ending-landscape{position:static;display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:initial;z-index:auto;background:transparent}
 .home-bottom-actions{display:grid;grid-template-columns:1fr;gap:10px;padding:0 0 28px}
 .home-bottom-actions .btn{width:100%;font-size:1rem}
 .home-bottom-actions .business-cta{background:#d26748;border-color:#d26748;color:#fff}
 .home-ending:before{display:none}.ending-copy{padding:24px 0;position:static}
 .home-ending .ending-copy{position:static;height:auto;background:var(--cream)}
 .ending-copy h2{font-size:2rem}.ending-links{flex-wrap:wrap;gap:8px 20px}.ending-links a{font-size:.95rem;min-height:44px;display:inline-flex;align-items:center}
 footer,.home-footer{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px 0}
 footer span,.home-footer>span,.footer-contact{font-size:.875rem;overflow-wrap:anywhere}
 footer a{display:inline-block;padding:7px 0}
}
