/* Homepage-only refinement; the shared navigation and member shells remain independent. */
body.publicSite[data-home-experience]{--home-rule:#d8d5cb;--home-soft:#eeece4;--home-header-height:88px;--home-section-height:60px}
.publicSite[data-home-experience] .homeSectionNav{position:sticky;top:var(--home-header-height);z-index:40;background:#fffdf7;border-top:1px solid var(--home-rule);border-bottom:1px solid var(--home-rule);box-shadow:none;backdrop-filter:none}
.homeSectionLinks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:6px;gap:4px}
.homeSectionLinks a{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:10px 8px;color:var(--bh-ink);font-size:.875rem;font-weight:550;line-height:1.4;text-decoration:none;border-bottom:2px solid transparent}
.homeSectionLinks a>span{font-size:.6875rem;color:#62675f;font-weight:500}
.homeSectionLinks a[aria-current="location"]{color:var(--bh-blue);border-bottom-color:var(--bh-blue);background:#eef2fb}
.homeSectionLinks a:hover{background:#eef2fb}
.homeSectionLinks a:focus-visible{outline:3px solid var(--bh-blue);outline-offset:-3px}
.publicSite[data-home-experience] :is(#home-dance,#find-your-training,#home-approach,#home-questions){scroll-margin-top:calc(var(--home-header-height) + var(--home-section-height))}
.publicSite[data-home-experience] .btn{gap:.45em}
.publicSite[data-home-experience] .hero{padding:58px 0 56px!important}
.publicSite[data-home-experience] .hero:before{margin-bottom:30px;height:4px}
.publicSite[data-home-experience] .heroLayout{grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:88px}
.publicSite[data-home-experience] .hero h1{font-size:clamp(2.75rem,4.7vw,4.25rem)!important;line-height:1.08!important;max-width:17ch;margin:22px 0 26px}
.publicSite[data-home-experience] .hero .lede{font-size:1.0625rem;line-height:1.8;max-width:46ch;margin-bottom:26px}
.publicSite[data-home-experience] .hero .actions{margin-top:28px;gap:12px}
.publicSite[data-home-experience] .hero .muted{display:none}
.publicSite[data-home-experience] .heroPortrait{max-width:370px;justify-self:end;border-bottom-width:2px;margin:0}
.publicSite[data-home-experience] .heroPortrait figcaption{font-size:.75rem;line-height:1.6;padding-top:12px}
.publicSite[data-home-experience] .heroPortrait .artDock{min-height:44px;margin:0}
.homeDanceFeature{border-bottom:1px solid var(--home-rule);background:#fffdf7}
.homeDanceLayout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:center}
.homeDanceIntro>p:not(.kicker){max-width:34ch;color:#454841;line-height:1.7}
.homeDance{margin:0;min-width:0;width:100%;align-self:center}
.homeDanceHeading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;font-size:.75rem;color:#454841}
.homeDanceScreen{position:relative;aspect-ratio:16/9;background:#242722;isolation:isolate;border-radius:8px;overflow:hidden}
.homeDancePlay{display:block;position:absolute;inset:0;color:#fffdf7!important;background:#242722}
.homeDancePlay>img{display:block;width:100%;height:100%;object-fit:contain}
.homeDancePlay:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#11170dc9);pointer-events:none}
.homeDancePlayLabel{position:absolute;z-index:1;bottom:18px;left:18px;display:flex;align-items:center;gap:12px;font-size:1rem;font-weight:600}
.homeDancePlayIcon{display:grid;place-items:center;width:48px;height:48px;padding-left:3px;border-radius:50%;background:#f4ca46;color:#15201a;font-size:1rem}
.homeDancePlay:focus-visible{outline:3px solid var(--bh-blue);outline-offset:6px}
.homeDanceScreen iframe{display:block;position:absolute;inset:0;width:100%;height:100%;border:0}
.homeDanceCaption{display:flex;flex-direction:column;align-items:flex-start;gap:3px;border-bottom:1px solid var(--home-rule);padding:18px 0 16px;font-size:.8125rem;line-height:1.5;color:#454841}
.homeDanceCaption>strong{color:var(--bh-ink);font-size:1rem}
.homeDanceCredits{font-size:.75rem}
.homeDanceCaption>a{display:inline-flex;align-items:center;gap:5px;min-height:32px;text-decoration:underline;text-underline-offset:3px;font-size:.75rem}
@media(hover:hover){.homeDancePlay:hover .homeDancePlayIcon{background:#fffdf7}}
/* The approved Partner flow entrance. Decoration never covers an action or
 * changes document layout; the resting composition also works without JS. */
.publicSite[data-home-opening] .heroPortrait:after{content:none}
.publicSite[data-home-opening] .homeOpeningVisual{position:relative;isolation:isolate}
.publicSite[data-home-opening] .homeOpeningVisual>img{position:relative;z-index:1}
.publicSite[data-home-opening] .homeOpeningArt{position:absolute;inset:0;z-index:2;pointer-events:none}
.publicSite[data-home-opening] .homeOpeningCircle{position:absolute;right:-8px;top:-8px;width:28px;height:28px;border-radius:50%;background:var(--bh-red)}
.publicSite[data-home-opening] .homeOpeningBlock{position:absolute;left:-12px;bottom:30px;width:34px;height:34px;background:var(--bh-blue);transform:rotate(-9deg)}
.publicSite[data-home-opening] .homeOpeningArc{position:absolute;left:-18px;top:33px;width:82px;height:82px;border:9px solid var(--bh-yellow);border-right-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(-22deg);z-index:-1}
.publicSite[data-home-opening] .homeOpeningAccent{position:relative;display:inline-block;isolation:isolate}
.publicSite[data-home-opening] .homeOpeningAccent:after{content:'';position:absolute;left:0;bottom:-.035em;width:100%;height:.11em;background:var(--bh-yellow);transform-origin:left;z-index:-1}
@media(prefers-reduced-motion:no-preference){
 .publicSite[data-home-opening] .homeOpeningPlaying:before{animation:homeOpeningMark 400ms cubic-bezier(.22,.61,.36,1) both}
 .publicSite[data-home-opening] .homeOpeningPlaying .homeOpeningAccent:after{animation:homeOpeningUnderline 430ms 690ms cubic-bezier(.22,.61,.36,1) both}
}
@media(min-width:761px) and (prefers-reduced-motion:no-preference){
 .publicSite[data-home-opening] .homeOpeningPlaying .homeOpeningCircle{animation:homeOpeningPartnerRed 1200ms cubic-bezier(.22,.61,.36,1) both}
 .publicSite[data-home-opening] .homeOpeningPlaying .homeOpeningBlock{animation:homeOpeningPartnerBlue 1200ms cubic-bezier(.22,.61,.36,1) both}
 .publicSite[data-home-opening] .homeOpeningPlaying .homeOpeningArc{animation:homeOpeningPartnerArc 1150ms cubic-bezier(.22,.61,.36,1) both}
}
@keyframes homeOpeningPartnerRed{0%{transform:translate(-125px,100px) scale(.7)}38%{transform:translate(-44px,70px)}72%{transform:translate(8px,12px)}100%{transform:translate(0,0)}}
@keyframes homeOpeningPartnerBlue{0%{transform:translate(88px,-120px) rotate(50deg) scale(.65)}38%{transform:translate(6px,-104px) rotate(18deg)}72%{transform:translate(-9px,-10px) rotate(-14deg)}100%{transform:translate(0,0) rotate(-9deg)}}
@keyframes homeOpeningPartnerArc{0%{transform:rotate(-100deg) scale(.7);opacity:.15}60%{transform:rotate(-8deg) scale(1.04);opacity:1}100%{transform:rotate(-22deg);opacity:1}}
@keyframes homeOpeningUnderline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes homeOpeningMark{from{transform:translateY(-8px);opacity:.2}to{transform:translateY(0);opacity:1}}
.publicSite[data-home-experience] :is(.homeTrust,.homeNext){padding-block:28px}
.homeTrust{border-bottom:1px solid var(--home-rule);background:#eeece4}
.homeTrustGrid{display:grid;grid-template-columns:1.6fr .6fr 1fr;align-items:center;gap:24px}
.homeTrustGrid p{margin:0;font-size:.9375rem;line-height:1.65}
.homeTrustGrid>a{font-size:.875rem;font-weight:550;min-height:44px;display:flex;flex-direction:column;justify-content:center;text-decoration:underline;text-underline-offset:4px}
.homeSmall{font-size:.75rem;font-weight:500;text-decoration:none}
.homeMark{display:inline-block;width:12px;height:12px;background:var(--bh-red);margin-right:8px;border-radius:50%}
.publicSite[data-home-experience] #find-your-training{background:#f4f0e6}
.publicSite[data-home-experience] #find-your-training>.w>.lede{max-width:60ch}
.publicSite[data-home-experience] #find-your-training .trainingChoice{border-radius:8px;padding:28px;background:#fffdf7}
.publicSite[data-home-experience] #find-your-training .trainingChoice :is(p,dd){font-size:1rem}
.publicSite[data-home-experience] #find-your-training .trainingChoice dt{font-size:.875rem}
.publicSite[data-home-experience] #find-your-training .trainingChoice h3{font-size:1.5rem}
.homeFinder{margin-top:32px;padding:28px;border:1px solid var(--home-rule);border-radius:8px;background:#fffdf7;display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:start}
.homeFinder[hidden],.homeFinder [hidden],.homeMatchBadge[hidden]{display:none!important}
.homeFinder fieldset{border:0;margin:0;padding:0;min-width:0}
.homeFinder legend{font-size:1.0625rem;font-weight:650;margin-bottom:16px;line-height:1.4}
.homeGoals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.homeGoals label{min-height:52px;padding:12px;display:flex;align-items:center;gap:10px;cursor:pointer;border:1px solid var(--home-rule);border-radius:5px;background:#f8f6ef;font-size:.875rem;line-height:1.4}
.homeGoals input{appearance:auto;accent-color:var(--bh-blue);width:18px;height:18px;flex-shrink:0;margin:0}
.homeGoals label:has(input:checked){border-color:var(--bh-blue);box-shadow:inset 0 0 0 1px var(--bh-blue);background:#e9eef9}
.homeGoals label:focus-within{outline:3px solid var(--bh-blue);outline-offset:2px}
.homeRecommendation{border-left:2px solid var(--bh-blue);padding:2px 0 2px 20px;min-width:0}
.publicSite[data-home-experience] #find-your-training .homeRecommendationTitle{font-size:1.125rem;font-weight:650;margin:0 0 6px}
.publicSite[data-home-experience] #find-your-training .homeRecommendationCopy{font-size:1rem;margin:0;max-width:70ch}
.homeRecommendationLink{display:inline-flex;align-items:center;min-height:44px;font-weight:650;text-decoration:underline;text-underline-offset:4px}
.homeFinderActions{display:flex;align-items:center;flex-wrap:wrap;gap:4px 20px;margin-top:8px}
.homeFinderReset{font:inherit;font-size:.8125rem;min-height:44px;padding:4px 0;background:transparent;border:0;color:#454841;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.homeFinder :is(a,button):focus-visible{outline:3px solid var(--bh-blue);outline-offset:4px}
.publicSite[data-home-experience] #find-your-training .trainingChoice.homeChoiceMatch{background:#eef2fb;box-shadow:inset 0 0 0 2px var(--bh-blue)}
.homeMatchBadge{position:absolute;top:18px;right:18px;max-width:calc(100% - 76px);padding:4px 8px;background:var(--bh-blue);color:#fffdf7;font-size:.6875rem;font-weight:650;line-height:1.4}
.homeMethodLayout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.homeApproach{border-top:1px solid var(--home-rule);background:#eeece4}
.homeMethodSteps{list-style:none;margin:28px 0 16px;padding:0}
.homeMethodSteps li{display:flex;gap:18px;border-top:1px solid var(--home-rule);padding:15px 0}
.homeMethodSteps li>span{color:var(--bh-blue);font-size:.875rem;font-weight:650;min-width:26px;padding-top:3px}
.homeMethodSteps h3{font-size:1.125rem;margin:0 0 4px;letter-spacing:0}
.homeMethodSteps p{margin:0;font-size:1rem;line-height:1.6;color:#454841}
.homeMethodVisual figure{margin:0}
.homeMethodVisual img{display:block;width:100%;height:auto;aspect-ratio:2048/1366;border-radius:8px;border-bottom:0}
.homeMethodVisual figcaption{font-size:.8125rem;margin-top:10px;color:#454841}
.homeTeacher{border-left:2px solid var(--bh-red);margin-top:32px;padding:2px 0 2px 24px}
.homeTeacher h3{font-size:1.4rem}
.homeTeacher p:not(.kicker){font-size:1rem;max-width:45ch}
.homeTextLink{display:inline-flex;min-height:44px;align-items:center;gap:12px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.homeQuestionLayout{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px}
.homeQuestionLayout>div>p:not(.kicker){max-width:34ch;color:#454841}
.homeAnswers{border-top:1px solid var(--home-rule)}
.homeAnswers summary::-webkit-details-marker{display:none}
.homeAnswers details{border-bottom:1px solid var(--home-rule)}
.homeAnswers summary{padding:20px 0;min-height:56px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-weight:600;line-height:1.4;cursor:pointer;list-style:none}
.homeAnswers summary::after{content:'+';font-size:1.4rem;color:var(--bh-blue);flex-shrink:0}
.homeAnswers details[open] summary::after{content:'−'}
.homeAnswers details>p{margin:0 0 22px;color:#454841;font-size:1rem;line-height:1.7;max-width:65ch}
.homeAnswers p a{text-decoration:underline;text-underline-offset:3px}
.publicSite[data-home-experience] .homeNext{background:#e9edf7;border-top:1px solid #d4dceb;padding-block:64px}
.homeNextLayout{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.publicSite[data-home-experience] .homeNext h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.12}
.homeNext p:not(.kicker){max-width:44ch;color:#454841;margin-bottom:0}
.homeNextActions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.homeNextActions a{overflow-wrap:anywhere;max-width:100%}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .homeGoals label,.homeAnswers summary{transition:background-color .18s ease,color .18s ease}
 .homeGoals label:hover,.homeAnswers summary:hover{background:#e8edf6}
 .homeTextLink span{transition:transform .18s ease}
 .homeTextLink:hover span{transform:translate(2px,-2px)}
}
@media(max-width:959px){
 .publicSite[data-home-experience] .heroLayout{gap:32px}
 .publicSite[data-home-experience] .hero h1{font-size:clamp(2.5rem,4.8vw,3.3rem)!important}
 .homeTrustGrid{grid-template-columns:1.5fr 1fr;gap:16px}.homeTrustGrid>a:nth-child(2){display:none}
 .homeMethodLayout,.homeQuestionLayout{gap:32px}
 .homeNextLayout{grid-template-columns:1fr;gap:24px}
}
@media(max-width:760px){
 .publicSite[data-home-experience] .hero{padding:32px 0 40px!important}
 .publicSite[data-home-experience] .hero:before{margin-bottom:22px}
 .publicSite[data-home-experience] .trainingChoice{padding:24px}
 .homeSectionLinks{gap:0;padding-block:4px}
 .homeSectionLinks a{font-size:.75rem;padding:8px 3px;min-height:44px}
 .homeSectionLinks a>span{display:none}
 .publicSite[data-home-experience] .heroLayout{grid-template-columns:1fr;gap:28px}
 .publicSite[data-home-experience] .hero h1{font-size:clamp(2.3rem,8.5vw,3.3rem)!important;max-width:18ch}
 .publicSite[data-home-experience] .hero .lede{font-size:1.0625rem}
 .publicSite[data-home-experience] .hero .actions{align-items:stretch}
 .publicSite[data-home-experience] .hero .actions .btn{flex:1 1 200px}
 .publicSite[data-home-experience] .heroPortrait{max-width:280px;justify-self:center;margin-right:0}
 .homeTrustGrid,.homeMethodLayout,.homeQuestionLayout{grid-template-columns:1fr;gap:24px}
 .homeTrustGrid{gap:12px}.homeTrustGrid>a:nth-child(2){display:flex}
 .homeFinder{grid-template-columns:1fr;padding:18px;gap:22px}
 .homeGoals label{font-size:.875rem;padding:10px;gap:8px}
 .homeRecommendation{padding-left:16px}
 .homeNextActions .btn{width:100%}
 .homeNextActions .homeTextLink{font-size:.875rem}
 .homeDance{max-width:560px;justify-self:center}
 .homeDanceHeading{margin-top:4px}
 .homeDanceLayout{grid-template-columns:1fr;gap:24px}
}
@media(prefers-reduced-motion:reduce){
 [data-home-experience] *,[data-home-experience] *::before,[data-home-experience] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
