/* V4 — only the three approved Common Ground refinements and restored form affordance.
   concepts.css and preserved.css retain the approved foundation and closing areas. */
.study .button{cursor:pointer}
/* Keep the desktop headline together, while retaining the original two-column hero. */
@media(min-width:761px){
 .study-b .b-hero h1{font-size:clamp(60px,5.28vw,76px);line-height:1.04;max-width:740px}
 .study-b .hero-last{font-size:1.05em;line-height:1.04;letter-spacing:-.045em;text-align:left;margin-top:0}
 .study-b .b-hero-composition{min-height:245px}
}
/* Women's health lives on the same sage ground as all three families. No separate surface. */
.study-b .b-women{background:none;border:0;border-radius:0;padding:0;margin-top:39px;grid-template-columns:1fr 2fr;gap:35px;overflow:visible}
.study-b .b-women h3{font-size:35px;line-height:1.13;max-width:320px}
.study-b .b-women>div{padding:0;margin:0}
.study-b .b-women p{font-size:14px;line-height:1.8;max-width:720px;margin:0}
.study-b .b-women p+p{margin-top:15px}
/* Clear audience and topic identifiers. Existing main headlines are unchanged. */
.study .section-identifier{font:500 25px/1.25 Cabin,sans-serif;letter-spacing:-.015em;text-transform:none}
@media(max-width:1100px) and (min-width:761px){
 .study-b .b-hero .b-human{max-width:clamp(250px,30vw,330px)}
 .study-b .b-women{gap:28px}
 .study-b .b-women h3{font-size:31px}
}
@media(max-width:760px){
 .study .section-identifier{font-size:23px;line-height:1.25}
 .study-b .b-women{display:block;padding:0;margin-top:28px;border-radius:0;background:none}
 .study-b .b-women h3{font-size:32px;line-height:1.1;max-width:330px}
 .study-b .b-women>div{margin-top:20px;padding:0}
 .study-b .b-women p{font-size:13px;line-height:1.85;max-width:none;margin:0}
 .study-b .b-women p+p{margin-top:17px}
}

/* Paul's two final targeted refinements. Selectors are restricted to these sections. */
.study-b #why .b-problem-heading{align-items:start}
.study-b #why .problem-narrative{max-width:none}
.study-b #why .problem-narrative p{font-size:18px;line-height:1.7;max-width:none;margin:0}
.study-b #why .problem-narrative .problem-closing{font:500 18px/1.7 Cabin,sans-serif;letter-spacing:-.015em;border-top:1px solid #112a2233;margin-top:18px;padding-top:18px;max-width:none}
.study-b #why .problem-closing>span{display:block}
.study-b #support .b-women{row-gap:10px}
.study-b #support .women-cross-label{grid-column:1/-1;font:400 11px/1.5 Inter,sans-serif;letter-spacing:.1em;margin:0;max-width:none}
@media(max-width:760px){
 .study-b #why .problem-narrative{margin-top:24px;max-width:none;padding-bottom:0}
 .study-b #why .problem-narrative p{font-size:16px;line-height:1.75;margin:0}
 .study-b #why .problem-narrative .problem-closing{font-size:16px;line-height:1.75;margin-top:20px;padding-top:20px}
 .study-b #support .women-cross-label{font-size:10px;line-height:1.5;margin:0}
 .study-b #support .b-women h3{margin-top:12px}
}

/* Paul's three final text refinements: new hero-label styling only. */
.study-b #top .hero-areas span{white-space:nowrap}
.study-b #top .hero-areas{position:absolute;top:-25px;left:0;margin:0;max-width:100%;font:400 12px/1.5 Inter,sans-serif;letter-spacing:.055em;color:var(--cream)}
@media(max-width:760px){
 .study-b #top .hero-areas{position:static;font-size:11px;line-height:1.6;letter-spacing:.045em;margin:0 0 14px;max-width:100%;text-wrap:balance}
}

/* Final header positioning adjustment; the label keeps its existing eyebrow typography. */
.study-b .study-nav .header-beta{margin:0 0 0 -20px;flex-shrink:0;white-space:nowrap;color:#d1dccc}
.study-b #top .b-hero-start{justify-content:flex-end}
.study-b #top .b-hero-start .hero-place{margin-top:17px}
@media(max-width:760px){
 .study-b .study-nav .wrap{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;row-gap:12px;align-content:center}
 .study-b .study-nav .brand{grid-column:1;grid-row:1;justify-self:start}
 .study-b .study-nav .header-beta{grid-column:1;grid-row:2;margin:0;white-space:normal}
 .study-b .study-nav .nav-action{display:none}
 .study-b #top .hero-first,.study-b #top .hero-last{font-size:inherit;font-weight:inherit;line-height:inherit}
 .study-b #top .hero-last{margin-top:0}
}

/* Matching hero actions retain their existing typography, colours and arrows. */
.study-b #top .actions{align-items:center;justify-content:center;gap:20px}
.study-b #top .actions .button{width:256px;max-width:100%;min-height:50px}
.study-b #top .actions .client-button{background:var(--sage);color:var(--green);padding:13px 17px;gap:16px;font-size:12px;line-height:1.5;white-space:nowrap;flex-shrink:0}
.study-b #top .actions .client-button-label{font:inherit;white-space:nowrap;min-width:0}
@media(min-width:1101px){
 .study-b #top .b-human{max-width:400px;right:66px;top:50%;transform:translateY(-50%)}
 .study-b #top .b-hero-base{grid-template-columns:minmax(0,1fr) max-content;gap:48px}
}
@media(max-width:760px){
 .study-b #top .actions{gap:10px}
 .study-b #top .actions .button{min-height:49px;white-space:normal}
 .study-b #top .actions .client-button{font-size:11px;gap:20px}
 .study-b #top .actions .client-button-label{white-space:normal}
}

/* Strategy-reviewed V4 handoff: content-safe opening and status wrapping. */
.study-b .study-nav .wrap{height:auto;min-height:98px}
.study-b .study-nav .brand,.study-b .study-nav nav,.study-b .study-nav .nav-action{flex-shrink:0}
.study-b .study-nav .header-beta{flex-shrink:1;min-width:0;white-space:normal;font:400 10px/1.5 Inter,sans-serif;letter-spacing:.14em;color:#d1dccc}
.header-beta span{display:inline-block}
@media(min-width:761px){
 .study-b .b-hero{min-height:calc(100svh - var(--opening-header-height,98px));display:flex;align-items:center}
}
@media(max-width:760px){
 .study-b .study-nav .wrap{min-height:80px;padding-block:12px 16px}
 .study-b .study-nav .header-beta{white-space:nowrap;min-height:30px}
 .study-b .study-nav .beta-location{display:inline}
}

/* Approach keeps its reassurance; removed standalone copy leaves no empty rules. */
.study-b #approach .eyebrow{font-size:14px;line-height:15px}
.study-b .b-approach-left .guide{font:400 16px/1.75 Inter,sans-serif;color:#ede5de;opacity:1;max-width:440px;margin-top:24px}
.study-b #approach .step:last-child{padding-bottom:0}
@media(min-width:761px){
 .study-b #approach{padding-bottom:64px}
}

/* Women's health remains part of the continuous three-family sage field. */
.study-b #support{padding-bottom:220px}
.study-b #support .b-women{--women-rule-left:26%;--women-rule-width:48%;margin-top:32px;padding-top:24px;border-top:1px solid transparent;row-gap:12px;align-items:start}
.study-b #support .b-women::before{content:"";position:absolute;top:-1px;left:var(--women-rule-left);width:var(--women-rule-width);height:1px;background:#112a2240}
.study-b #support .women-cross-label{font:400 15px/1.5 Inter,sans-serif;letter-spacing:.1em;color:#112a22;opacity:1}
.study-b #support .b-women>div{max-width:640px}
.study-b #support .b-women>div p{font:400 16px/1.75 Inter,sans-serif;color:#112a22;max-width:none}
.study-b #support .b-women>div p+p{margin-top:16px}

/* One controlled introduction leads directly into the preserved registration areas. */
.final-intro{max-width:760px}
.final-intro p{font:400 17px/1.75 Inter,sans-serif;max-width:720px}
.final-intro>p:first-of-type{margin-top:24px}
@media(max-width:760px){
 .study-b #approach{padding-bottom:50px}
 .study-b #approach .eyebrow{font-size:12px;line-height:13.5px}
 .study-b .b-approach-left .guide{max-width:none;margin-top:20px}
 /* The last family already has 24px bottom padding: total gap is 28px. */
 .study-b #support{padding-bottom:153px}
 .study-b #support .b-women{--women-rule-left:14%;--women-rule-width:72%;margin-top:4px;padding-top:20px}
 .study-b #support .b-women>div{max-width:none}
 .study-b #support .women-cross-label{font-size:14px}
 .final-intro p{font-size:16px}
}

/* Modest breathing room at the two approved section transitions only. */
.study-b #why{padding-bottom:61px}
.study-b #trust{padding-top:45px;padding-bottom:129px}
@media(max-width:760px){
 .study-b #why{padding-bottom:44px}
 .study-b #trust{padding-top:30px;padding-bottom:80px}
}

/* Motion is additive to the approved layout. */
#top{scroll-margin-top:var(--opening-header-height,98px)}
html.motion-enabled{scroll-behavior:smooth}
.motion-enabled .motion-reveal{transform:translateY(28px)}
.motion-enabled .motion-left{transform:translate(-24px,12px)}
.motion-enabled .motion-right{transform:translate(24px,12px)}
.motion-enabled .motion-reveal.motion-return{transform:translateY(-28px)}
.motion-enabled .motion-reveal.motion-entered{transform:none;transition:transform 620ms cubic-bezier(.22,1,.36,1)}
.motion-enabled .motion-reveal.motion-instant{transition:none}
.motion-enabled .b-pro-invitation.motion-entered,.motion-enabled .b-pro-content.motion-entered{transition-duration:720ms}
.motion-enabled .invitation.motion-entered{transition-duration:680ms}

/* Trust keeps its original dividers; sweeps remain only on other existing rules. */
.motion-enabled .motion-rule{position:relative}
.motion-enabled .motion-rule::after{content:"";position:absolute;inset:-1px 0 auto;height:1px;background:currentColor;opacity:.6;transform:scaleX(var(--rule-fill,0));transform-origin:left;pointer-events:none}
.motion-enabled .section-divider::after{top:0}
/* A short line leads one restrained content entrance, without changing its grid or flow. */
.motion-enabled .study-b #support .b-women.motion-rule::before{visibility:hidden}
.motion-enabled .study-b #support .b-women.motion-rule::after{left:var(--women-rule-left);right:auto;width:var(--women-rule-width)}
.motion-enabled .study-b #support .b-women.motion-reveal{transform:none}
.motion-enabled .study-b #support .b-women.motion-reveal>*{opacity:0;transform:translateY(6px)}
.motion-enabled .study-b #support .b-women.motion-entered>*{opacity:1;transform:none;transition:opacity 700ms ease-out,transform 700ms cubic-bezier(.22,1,.36,1)}
.motion-enabled .study-b #support .b-women.motion-quick>*{transition-duration:280ms}
.motion-enabled .study-b #support .b-women.motion-instant>*{transition:none}

/* Native sticky positioning adds less than one screen of travel when everything fits. */
.study-b.has-sticky-approach,.study-b.has-sticky-trust{overflow:clip;display:flow-root}
.b-approach.approach-sticky{min-height:var(--approach-stage-height)}
.b-approach.approach-sticky>.wrap{position:sticky;top:var(--approach-pin-top)}
/* Trust holds its complete grid while the equal reading progression finishes. */
.b-trust.trust-sticky{min-height:var(--trust-stage-height)}
.b-trust.trust-sticky>.wrap{position:sticky;top:var(--trust-pin-top)}

/* The desktop sequence follows sticky travel; other layouts use the reading line. */
.motion-enabled .b-steps .step-number{transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}
.motion-enabled .b-steps .step h3{transition:color 180ms ease}
.motion-enabled .b-steps .step.is-reading .step-number{background:var(--amber);border-color:var(--amber);color:var(--green)}
.motion-enabled .b-steps .step.is-reading h3{color:var(--amber)}
.motion-enabled .b-steps .step:not(:last-child)::after{content:"";position:absolute;left:20px;top:39px;bottom:9px;width:1px;background:var(--amber);transform:scaleY(var(--step-fill,0));transform-origin:top;pointer-events:none}

/* Reading emphasis changes existing ink, without adding a control or surface. */
.motion-enabled .b-principles .principle h3,.motion-enabled .b-principles .principle p{transition:color 260ms ease}
.motion-enabled .b-principles .principle-mark{transition:transform 260ms ease;transform-origin:left center}
/* Reset outgoing emphasis immediately so only the incoming principle turns amber. */
.motion-enabled .b-principles .principle:not(.is-reading-principle) h3,.motion-enabled .b-principles .principle:not(.is-reading-principle) p,.motion-enabled .b-principles .principle:not(.is-reading-principle) .principle-mark{transition:none}
.motion-enabled .b-principles .is-reading-principle h3{color:var(--amber)}
.motion-enabled .b-principles .is-reading-principle p{color:var(--cream)}
.motion-enabled .b-principles .is-reading-principle .principle-mark{transform:scale(1.12)}

/* The wave expands gently upwards only after departure; its lower edge stays joined. */
.motion-enabled #top.hero-departed .flow{transform-origin:center bottom;transform:scaleY(calc(1 + var(--hero-scroll,0) * .18))}
.motion-enabled #top .flow path:last-child{fill-opacity:calc(.53 + var(--hero-scroll,0) * .16)}
.motion-enabled .b-pro-content .button span,.motion-enabled .invitation .button span{transition:transform 180ms ease-out}
.motion-enabled .b-pro-content .button:focus-visible span,.motion-enabled .invitation .button:focus-visible span{transform:translate(3px,-3px)}
@media(hover:hover){
 .motion-enabled .b-pro-content .button:hover span,.motion-enabled .invitation .button:hover span{transform:translate(3px,-3px)}
}
@media(max-width:760px){
 .motion-enabled .motion-reveal,.motion-enabled .motion-left,.motion-enabled .motion-right{transform:translateY(20px)}
 .motion-enabled .motion-reveal.motion-return{transform:translateY(-20px)}
 .motion-enabled .motion-reveal.motion-entered{transform:none;transition-duration:520ms}
 .motion-enabled .b-steps .step:not(:last-child)::after{left:17px;top:42px;bottom:8px}
}

/* Keep all three column dividers established while their readable content enters. */
.motion-enabled .support-family.motion-reveal{transform:none}
.motion-enabled .support-family.motion-reveal>*{transform:translateY(28px)}
.motion-enabled .support-family.motion-return>*{transform:translateY(-28px)}
.motion-enabled .support-family.motion-entered>*{transform:none;transition:transform 520ms cubic-bezier(.22,1,.36,1)}
.motion-enabled .support-family.motion-instant>*{transition:none}
@media(max-width:760px){
 .motion-enabled .support-family.motion-reveal>*{transform:translateY(20px)}
 .motion-enabled .support-family.motion-return>*{transform:translateY(-20px)}
 .motion-enabled .support-family.motion-entered>*{transform:none}
}
@media(prefers-reduced-motion:reduce),print{
 html.motion-enabled{scroll-behavior:auto}
 .motion-enabled .motion-reveal,.motion-enabled .support-family.motion-reveal>*,.motion-enabled .button span{transform:none!important;transition:none!important}
 .motion-enabled .study-b #support .b-women.motion-reveal>*{opacity:1!important;transform:none!important;transition:none!important}
 .motion-enabled .study-b #support .b-women.motion-rule::before{visibility:visible}
 .motion-enabled .motion-rule::after,.motion-enabled .b-steps .step::after{display:none}
 .b-approach.approach-sticky,.b-trust.trust-sticky{min-height:0}
 .b-approach.approach-sticky>.wrap,.b-trust.trust-sticky>.wrap{position:static}
 .motion-enabled #top.hero-departed .flow,.motion-enabled .b-principles .principle-mark{transform:none;transition:none}
 .motion-enabled .b-principles .principle h3,.motion-enabled .b-principles .principle p{transition:none}
 .motion-enabled #top .flow path:last-child{fill-opacity:.53}
}

/* Instagram links reuse the desktop pill and the existing mobile logo row. */
.study-b .study-nav .nav-action .instagram-label{display:inline-flex;align-items:center;gap:8px;font:inherit}
.study-b .study-nav .nav-action .instagram-icon{width:16px;height:16px;flex-shrink:0}
.study-b .study-nav .mobile-instagram{display:none}
@media(max-width:760px){
 .study-b .study-nav .mobile-instagram{display:inline-flex;grid-column:1;grid-row:1;justify-self:end;align-self:center;align-items:center;justify-content:center;width:44px;height:44px;color:var(--cream);text-decoration:none}
 .study-b .study-nav .mobile-instagram .instagram-icon{width:24px;height:24px}
}

/* Two approved copy refinements: subtle sentence and paragraph spacing only. */
.study-b #top .definition-lead,.study-b #top .definition-detail{display:block}
.study-b #top .definition-detail{margin-top:.45em}
.study-b #professionals .pro-invitation{margin-bottom:24px}

/* Hero composition prepared for visual review; all rules stay inside #top. */
.study-b #top .b-hero-composition{display:grid;grid-template-columns:minmax(532px,1.15fr) minmax(0,1fr);column-gap:clamp(40px,5vw,72px);row-gap:28px;align-items:start}
.study-b #top h1{grid-column:1;grid-row:1;min-width:0}
.study-b #top .b-hero-message{grid-column:2;grid-row:1/3;align-self:center;border-left:1px solid #ede5de54;padding:4px 0 4px 25px;min-width:0}
.study-b #top .hero-message-lead{font:500 clamp(26px,2.2vw,32px)/1.22 Cabin,sans-serif;letter-spacing:-.02em;color:var(--cream);margin:0;text-wrap:balance}
.study-b #top .b-human{position:static;max-width:none;right:auto;top:auto;transform:none;border:0;padding:0;margin:20px 0 0;line-height:1.55}
.study-b #top .b-human span{display:block;text-wrap:balance}
.study-b #top .b-human span+span{margin-top:8px}
.study-b #top .b-hero-base{grid-column:1;grid-row:2;display:block;margin:0;min-width:0}
.study-b #top .actions{flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;margin:0}
@media(max-width:1100px){
 .study-b #top .b-hero-composition{grid-template-columns:minmax(0,1fr);row-gap:26px}
 .study-b #top .b-hero-message{grid-column:1;grid-row:2;max-width:640px;align-self:start}
 .study-b #top .b-hero-base{grid-row:3}
 .study-b #top .hero-message-lead{font-size:28px}
}
@media(max-width:760px){
 .study-b #top .b-hero-composition{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .study-b #top .b-hero-message{margin-top:24px;padding:0 0 0 18px;max-width:none}
 .study-b #top .hero-message-lead{font-size:25px;line-height:1.25}
 .study-b #top .b-human{margin-top:16px;line-height:1.6}
 .study-b #top .b-hero-base{margin-top:24px;width:100%}
 .study-b #top .actions{flex-direction:column;align-items:center;gap:10px}
}

/* Desktop hero spacing follows the supplied reference; wording stays unchanged. */
@media(min-width:1101px){
 .study-b #top .b-hero-message{padding-left:clamp(32px,3.3vw,48px)}
 .study-b #top .b-human{margin-top:clamp(36px,3.1vw,44px)}
 .study-b #top .b-human span+span{margin-top:8px}
}

/* Approved hero refinement: retain the original message scale and clear CTA space. */
@media(min-width:1101px){
 .study-b #top .b-hero-composition{row-gap:56px}
}
