/* Photography spans the page; the conversation keeps a comfortable reading width. */
:root{--flow-pad:max(5.2%,calc((100vw - 1480px)/2))}
.mobile-session-links{display:none}
.soul-refined .header nav{gap:22px}
.soul-refined .header .nav-plan{padding:11px 17px;background:#ba392f;color:#fff;white-space:nowrap}
.soul-refined .header .nav-plan:hover{background:#9c2d25;color:#fff}
.soul-refined .header .nav-login{padding:11px 0 11px 20px;border:0;border-left:1px solid #576168;font-size:.875rem;white-space:nowrap}
.session-navigation{display:flex;gap:30px;flex-wrap:wrap;padding:15px var(--flow-pad);border-bottom:1px solid #465158;background:#192126;color:#c7d1d7;font-size:.9375rem}
.session-navigation a{padding:8px 0;border-bottom:2px solid transparent}.session-navigation a[aria-current=page]{color:#fff;border-color:#f08b7d}.session-navigation a:hover{color:#fff}
.soul-refined .soul-hero{display:block;min-height:0;max-width:none}
.soul-refined .soul-hero-copy{display:grid;grid-template-columns:1.15fr 1fr;column-gap:12%;padding:52px var(--flow-pad) 49px;align-items:start}
.soul-hero-copy>.eyebrow{grid-column:1/-1}.soul-refined .soul-hero h1{grid-column:1;grid-row:2/6;font-size:clamp(5rem,7.4vw,8rem);margin:25px 0 0;max-width:700px}
.soul-refined .soul-hero-lead{grid-column:2;margin-top:25px;max-width:450px}.soul-hero-support,.soul-hero-copy .actions,.soul-location{grid-column:2}
.soul-refined .soul-hero .actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:18px}
.soul-refined .soul-hero-photo{width:100%;aspect-ratio:2/1;margin:0}.soul-refined .soul-hero-photo>img{position:static;width:100%;height:100%;object-position:50% 57%}
.soul-refined .soul-approach{row-gap:35px;padding-bottom:0}
.soul-refined .approach-heading{grid-column:1;grid-row:1}.soul-refined .approach-copy{grid-column:2;grid-row:1}
.soul-refined .approach-detail{grid-column:1/-1;grid-row:2;max-width:none;width:100vw;position:relative;left:50%;transform:translateX(-50%);margin:5px 0 0}
.soul-refined .approach-detail img{width:100%;height:auto;aspect-ratio:2.25;object-position:50% 58%}
.soul-refined .soul-racing-moment{display:flex;flex-direction:column;min-height:0}
.soul-refined .soul-racing-moment>figure{width:100%;aspect-ratio:2.1}
.soul-refined .soul-racing-moment figure>img{position:static;height:100%;width:100%;object-position:50% 69%}
.soul-refined .soul-racing-moment>div{display:grid;grid-template-columns:1fr 1fr;column-gap:11%;padding:62px var(--flow-pad);align-self:stretch}
.soul-racing-moment>div>.eyebrow{grid-column:1/-1}.soul-refined .soul-racing-moment h2{grid-column:1;grid-row:2/4;margin:23px 0 0;max-width:640px}
.soul-refined .soul-racing-moment>div>p:not(.eyebrow){grid-column:2;margin-top:23px;max-width:58ch}.soul-refined .soul-racing-moment .text-link{grid-column:2;justify-self:start}
.full-width-photo{width:100%;margin:0}.full-width-photo img{width:100%;height:auto;aspect-ratio:2.15;object-position:center}
/* The studio has its own width, independent of the story's text columns. */
.soul-refined .simulator-grid{display:block}.soul-refined .simulator-copy{display:grid;grid-template-columns:1.1fr 1fr;gap:18px 10%;align-items:start}
.soul-refined .simulator-copy h1{grid-column:1;grid-row:1/4;margin:0}.soul-refined .simulator-copy>p,.soul-refined .simulator-copy>.text-link{grid-column:2;margin-top:0;max-width:55ch}.soul-refined .simulator-copy>.text-link{justify-self:start}
.soul-refined .simulator-photo,.soul-refined .detail-photo{width:100vw;position:relative;left:50%;transform:translateX(-50%);max-width:none;height:auto;aspect-ratio:auto;margin-top:42px;overflow:hidden}
.soul-refined .simulator-photo img,.soul-refined .detail-photo img{width:100%;height:auto;aspect-ratio:2/1;object-position:center}
.soul-refined .details-row{display:flex;flex-direction:column;margin-top:52px;gap:0}.soul-refined .detail-copy{order:1;width:100%;display:grid;grid-template-columns:1fr 1fr;column-gap:10%;align-items:start}
.detail-copy>.eyebrow{grid-column:1/-1}.soul-refined .detail-copy h3{grid-column:1;grid-row:2/4;margin:20px 0 0}.soul-refined .detail-copy p{grid-column:2;margin-top:20px;max-width:60ch}.detail-copy>.detail-tags{grid-column:2}
.soul-refined .detail-photo{order:2;align-self:center}.soul-refined .simulator.section{padding-bottom:0}
.soul-refined .personal-opening{padding-bottom:0}
.soul-refined .personal-opening-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10%;align-items:start}
.soul-refined .personal-opening-copy{display:contents}.personal-opening-copy>.eyebrow{grid-column:1/-1;grid-row:1}
.soul-refined .personal-opening h1{grid-column:1;grid-row:2/5;margin:25px 0 0;font-size:clamp(3rem,4.8vw,5rem)}
.soul-refined .personal-opening-copy>p:not(.eyebrow){grid-column:2;grid-row:2;margin-top:25px;max-width:44ch}
.soul-refined .personal-opening .founder-signature{grid-column:2;grid-row:3;margin-top:23px;max-width:none}
.soul-refined .personal-opening .text-link{grid-column:2;grid-row:4;justify-self:start;margin-top:20px}
.soul-refined .personal-opening-grid>.founder-opening-photo{grid-column:1/-1;grid-row:5;justify-self:center;max-width:none;width:100vw;margin:42px 0 0}
.founder-opening-photo picture{display:block}.soul-refined .founder-opening-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.soul-refined .racing-photo-pair{grid-template-columns:1fr;gap:0;width:100vw;position:relative;left:50%;transform:translateX(-50%);margin-top:5px}
.soul-refined .racing-photo-pair img{aspect-ratio:2;object-position:center}
.soul-refined .racing-lessons{padding-bottom:0}
.soul-refined .racing-bridge{display:flex;flex-direction:column;padding-bottom:0;gap:38px}
.soul-refined .racing-bridge>div{order:1;max-width:1000px;align-self:start}.soul-refined .racing-bridge>div p{max-width:65ch}
.soul-refined .racing-bridge>figure{order:2;max-height:none;width:100vw;align-self:center}
.soul-refined .racing-bridge figure img{height:auto;width:100%;max-height:none;aspect-ratio:2;object-position:50% 35%}
/* One full-width photograph at a time keeps galleries generous without a long wall of images. */
.soul-refined .photo-gallery,.soul-refined .racing-gallery{padding-inline:0;padding-bottom:0}
.photo-gallery>.section-heading,.racing-gallery>.section-heading{padding-inline:var(--flow-pad)}
.soul-refined .photo-gallery-grid,.soul-refined .racing-gallery-grid{display:flex;columns:auto;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#71818c #152028;overscroll-behavior-x:contain}
.soul-refined .photo-gallery-grid>figure,.soul-refined .racing-gallery-grid>figure:nth-child(n){flex:0 0 100%;min-width:0;width:100%;margin:0;scroll-snap-align:start}
.soul-refined .photo-gallery-grid .gallery-open,.soul-refined .racing-gallery-grid>figure:nth-child(n) .gallery-open{height:min(72svh,850px);min-height:280px;aspect-ratio:auto;display:block;background:#0a0d0f}
.soul-refined .photo-gallery-grid .gallery-open img,.soul-refined .racing-gallery-grid .gallery-open img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none}
.gallery-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px var(--flow-pad);background:#172027;font-size:.875rem;color:#d0d9df}
.gallery-navigation>div{display:flex;gap:12px}.gallery-navigation button{background:transparent;border:1px solid #657782;min-height:44px;padding:8px 17px;color:#fff;font-size:.875rem;cursor:pointer}.gallery-navigation button:disabled{opacity:.4;cursor:default}.gallery-navigation button:hover:not(:disabled){background:#2a3944}
/* The session guide is the entry point; tools are explained through their role. */
.session-overview{background:#142027}.overview-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center;margin-top:25px}
.soul-refined .overview-intro h1{font:500 clamp(3rem,4.7vw,5.2rem)/1.08 var(--body);letter-spacing:-.045em;margin:0}.overview-intro .lead{font-size:1.3rem;line-height:1.75;color:#c1cbd2;max-width:48ch}
.session-stages{background:#f1f3f1;color:#253943}.session-stage{display:grid;grid-template-columns:1fr 1.05fr;gap:11%;padding:45px 0;border-bottom:1px solid #b9c8ce}.session-stage:first-child{padding-top:0}.session-stage:last-child{border-bottom:0;padding-bottom:0}
.stage-number{font-size:.875rem;color:#965042;display:block;margin-bottom:16px}.session-stage .eyebrow{color:#657b87}.soul-refined .stage-heading h2{font-size:clamp(2.3rem,3vw,3.3rem);margin-top:20px;max-width:430px}.session-stage>div>p:not(.eyebrow){font-size:1.0625rem;line-height:1.8;color:#4e6471;max-width:60ch}.session-stage .text-link{color:#7b4032;margin-top:24px}
.session-outcome{display:grid;grid-template-columns:1fr 1fr;gap:11%;background:#1b272e}.session-outcome h2{font-size:clamp(2.4rem,3.4vw,3.7rem);margin-top:23px}.session-outcome>div>p:not(.eyebrow){font-size:1.0625rem;color:#c0cdd5;line-height:1.8;max-width:56ch}.session-outcome .service-scope{font-size:.875rem!important;color:#a9bbc6!important}.session-outcome .button{margin-top:25px}
.home-session-journey{display:grid;grid-template-columns:1fr 1.1fr;gap:12%;background:#142027}.home-session-journey h2{font-size:clamp(2.6rem,3.7vw,4rem);margin:22px 0}.home-session-journey ol{list-style:none;padding:0;margin:0}.home-session-journey li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:20px;padding:25px 0;border-bottom:1px solid #485964}.home-session-journey li:first-child{padding-top:0}.home-session-journey li:last-child{padding-bottom:0;border:0}.home-session-journey li>span{color:#e7998a;font-size:.875rem;padding-top:3px}.home-session-journey h3{font-size:1.5rem;margin-bottom:12px}.home-session-journey p:not(.eyebrow){font-size:1rem;line-height:1.75;color:#b8c8d3;max-width:52ch}.home-session-journey li .text-link{margin-top:13px;font-size:.9375rem;color:#e5ae9f}
.console-capabilities{margin:35px 0 45px;padding-top:30px;border-top:1px solid #44555f}.console-capabilities h2{font-size:clamp(2.2rem,3.1vw,3.3rem);margin-top:20px}.console-capabilities .console-features{margin-top:32px;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 7%}.console-capabilities .console-features article,.console-capabilities .console-features article:nth-child(n){border:0;padding:0}.console-capabilities .console-features h3{font-size:1.5rem;margin:12px 0}.console-capabilities .technical-details-inner{padding-bottom:0}.console-capabilities .section-fine{font-size:.875rem;max-width:75ch;color:#aabcc9}
.hub-continuity{margin-top:48px;padding-top:35px;border-top:1px solid #bccbd1;scroll-margin-top:110px}.hub-continuity h2{font-size:clamp(2.4rem,3.4vw,3.7rem);margin-top:22px}.hub-continuity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:31px 9%;margin-top:33px}.hub-continuity-grid h3{font-size:1.6rem;margin-bottom:14px}.hub-continuity-grid p{font-size:1rem;line-height:1.8;max-width:61ch;color:#526c7c}
.session-guide{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 0;border-top:1px solid #485a67;border-bottom:1px solid #485a67;margin:0 0 35px}.session-guide p{font-size:1rem;line-height:1.7;max-width:64ch;color:#becbd5}.session-guide .text-link{flex-shrink:0;color:#e9ad9c}
@media(max-width:1150px){.soul-refined .header nav{gap:15px}.soul-refined .header .nav-login{padding-left:13px}.soul-refined .header .nav-plan{padding-inline:12px}}
@media(max-width:960px){:root{--flow-pad:6%}.soul-refined .header nav{gap:0}.mobile-session-links{display:flex;flex-direction:column;border-left:1px solid #586f7c;margin:0 0 12px 1px;padding:0 0 0 18px}.soul-refined .mobile-session-links a{font-size:.9375rem;min-height:44px;padding:10px 0;color:#becbd5}.soul-refined .header .nav-plan{margin-top:12px;padding:13px 17px;text-align:center}.soul-refined .header .nav-login{margin-top:9px;padding:13px 0;border:0;font-size:.9375rem}.session-navigation{gap:20px;font-size:.875rem;padding-block:10px}.soul-refined .soul-hero-copy{column-gap:8%}.soul-refined .soul-hero h1{font-size:clamp(4.3rem,8.1vw,6.5rem)}.soul-refined .soul-hero-lead{font-size:1.2rem}.soul-refined .racing-bridge figure img{aspect-ratio:1.5}.overview-intro{gap:7%}.overview-intro .lead{font-size:1.125rem}.session-stage{gap:7%}.home-session-journey{gap:8%}}
@media(max-width:760px){
 .soul-refined .soul-hero-copy{display:block;padding:31px 6% 35px}.soul-refined .soul-hero h1{font-size:clamp(4.1rem,16vw,6.5rem);margin:24px 0}.soul-refined .soul-hero-lead{margin-top:0;max-width:450px}.soul-refined .soul-hero-photo{aspect-ratio:1.5}
 .soul-refined .soul-approach{display:flex;flex-direction:column;gap:25px}.soul-refined .approach-detail{width:100vw;left:auto;transform:none;align-self:center;margin:7px 0 0}.soul-refined .approach-detail img{aspect-ratio:1.5;object-position:center}
 .soul-refined .soul-racing-moment>figure{aspect-ratio:1.5}.soul-refined .soul-racing-moment>div{display:block;padding:43px 6%}.soul-refined .soul-racing-moment h2{margin-top:21px}.soul-refined .soul-racing-moment>div>p:not(.eyebrow){margin-top:20px}
 .full-width-photo img{aspect-ratio:1.5}.soul-refined .simulator-copy{display:block}.soul-refined .simulator-copy h1{margin:0 0 25px}.soul-refined .simulator-copy>p{margin-top:18px}.soul-refined .simulator-copy>.text-link{margin-top:22px}
 .soul-refined .simulator-photo,.soul-refined .detail-photo{margin-top:30px}.soul-refined .simulator-photo img,.soul-refined .detail-photo img{aspect-ratio:1.5}.soul-refined .detail-copy{display:block}.soul-refined .detail-copy h3{margin:19px 0}.soul-refined .details-row{margin-top:40px}
 .soul-refined .personal-opening-grid{display:block}.soul-refined .personal-opening-copy{display:block;padding:0}.soul-refined .personal-opening h1{font-size:clamp(2.6rem,9vw,4rem);margin:20px 0 25px}.soul-refined .personal-opening-copy>p:not(.eyebrow){margin:0;max-width:55ch}.soul-refined .personal-opening-grid>.founder-opening-photo{width:100vw;position:relative;left:50%;transform:translateX(-50%);margin:30px 0 0}.soul-refined .founder-opening-photo img{aspect-ratio:2/3;height:auto}
 .soul-refined .racing-photo-pair img{aspect-ratio:1.5}.soul-refined .racing-bridge figure img{aspect-ratio:1;object-position:50% 35%}
 .overview-intro,.session-stage,.session-outcome,.home-session-journey{grid-template-columns:1fr;gap:25px}.soul-refined .overview-intro h1{font-size:clamp(2.7rem,9vw,4rem)}.overview-intro .lead{font-size:1.125rem}.session-stage{padding-block:31px}.stage-number{margin-bottom:10px}.soul-refined .stage-heading h2{margin-top:14px;font-size:2.3rem}.session-stage>div>p:not(.eyebrow){font-size:1rem}.session-outcome h2{font-size:2.65rem}.home-session-journey h2{font-size:2.7rem}.home-session-journey ol{margin-top:7px}
 .console-capabilities .console-features,.hub-continuity-grid{grid-template-columns:1fr;gap:25px}.console-capabilities .console-features article+article{padding-top:22px;border-top:1px solid #43545f}.hub-continuity-grid article+article{padding-top:23px;border-top:1px solid #b8c8d0}.hub-continuity{margin-top:35px}.hub-continuity h2{font-size:2.5rem}.session-guide{display:block}.session-guide .text-link{margin-top:17px}.gallery-navigation{gap:12px}.gallery-navigation button{padding-inline:13px}
}
@media(prefers-reduced-motion:reduce){.photo-gallery-grid,.racing-gallery-grid{scroll-behavior:auto}}

.soul-refined .approach-detail,.soul-refined .racing-photo-pair,.soul-refined .founder-opening-photo{min-width:0}
.soul-refined .detail-photo{left:auto;transform:none}

/* October refinement: the photograph opens the story; every section earns its place. */
.soul-refined main{overflow:visible;container-type:inline-size}
.soul-refined [hidden]{display:none!important}
.soul-refined :is(a,button,input,summary,[tabindex]):focus-visible{outline:2px solid #e96f5d;outline-offset:5px}
.soul-refined .soul-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);align-items:end;min-height:clamp(660px,calc(100svh - 86px),840px);background:#101214}
.soul-refined .soul-hero-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;z-index:-2}
.soul-refined .soul-hero-photo>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:65% 45%}
.soul-refined .soul-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,12,15,.93),rgba(8,12,15,.74) 42%,rgba(8,12,15,.12) 80%),linear-gradient(0deg,rgba(8,12,15,.55),transparent 40%);pointer-events:none}
.soul-refined .soul-hero-copy{display:block;padding:68px var(--flow-pad) 58px}
.soul-refined .soul-hero-copy>.eyebrow{color:#d0d7da;letter-spacing:1.5px;max-width:560px}
.soul-refined .soul-hero h1{font:400 clamp(4.4rem,6.9vw,7rem)/.98 var(--display);letter-spacing:.015em;margin:26px 0 25px;max-width:720px;text-wrap:balance}
.soul-refined .soul-hero h1 em{color:#ff927f}
.soul-refined .soul-hero-lead{font-size:1.25rem;line-height:1.5;max-width:460px;margin:0;color:#fff}
.soul-refined .soul-hero-support{font-size:1.0625rem;line-height:1.65;color:#d2d8dc;max-width:445px;margin-top:18px}
.soul-refined .soul-hero .actions{margin-top:27px;gap:24px;flex-direction:row;align-items:center;flex-wrap:wrap}
.soul-refined .soul-hero .button{gap:26px}.soul-refined .soul-hero .text-link{color:#f3f4f3}
.soul-refined .soul-location{margin-top:25px;color:#c3ccd2;font-size:.6875rem;letter-spacing:1.2px}
.soul-refined .soul-approach{padding-top:76px}.soul-refined .approach-copy{padding-top:0}
.soul-refined .soul-racing-moment .home-test-link{grid-column:2;margin-top:30px;max-width:560px;background:none;border:0;border-top:1px solid #465058;padding:24px 0 0;display:grid;gap:10px}
.soul-refined .soul-racing-moment .home-test-link strong{font-size:1.25rem;color:#f2f4f3;font-weight:500;line-height:1.4}.soul-refined .home-test-link>span:not(.eyebrow){font-size:.9375rem;line-height:1.6;color:#b7c3cc}.soul-refined .home-test-link .home-test-action{color:#f5a595;font-size:.875rem}
.soul-refined .soul-audience .text-link{color:#913b30;margin-top:22px}
.soul-refined .home-session-journey{padding-block:74px}
.soul-refined .console-intro h1,.soul-refined .hub-intro h1,.soul-refined .simulator-copy h1,.soul-refined .racing-title-row h1,.soul-refined .options-intro h1{font-size:clamp(3.5rem,5.3vw,5.5rem);line-height:1.03}
.soul-refined .console-intro{margin-bottom:37px}.soul-refined .console-intro .lead,.soul-refined .hub-intro .lead{font-size:1.3rem}
.soul-refined .console-capabilities{margin:50px 0 0;padding-top:35px}
.overview-promise{font-size:1.5rem;line-height:1.45;color:#fff;margin-bottom:15px;max-width:30ch}
.overview-intro .text-link{margin-top:20px;color:#ecae9f}.coaching-photo img{object-fit:cover;object-position:center 55%;aspect-ratio:2.25}
#session-stages,#session-finder,[data-session-option]{scroll-margin-top:110px}
.soul-refined .continuing-plan-title{font-size:1.8rem;margin:28px 0 16px;font-weight:500}
/* The Hub example is a small, coherent story rather than another feature list. */
.soul-refined .hub-explainer{grid-template-columns:.7fr 1.3fr;gap:7%;margin-top:45px;align-items:start}
.hub-example-intro{padding-top:24px;border-top:1px solid #aabdc6}.hub-example-intro .eyebrow{color:#59717e}
.soul-refined .hub-example-intro h2{font-size:clamp(2rem,2.8vw,3rem);margin:20px 0 23px;max-width:380px}
.hub-example-intro>p:not(.eyebrow){font-size:1rem;line-height:1.8;max-width:40ch;color:#516b79}
.hub-example-cue{display:block;margin-top:24px;color:#9b4538;font-size:.875rem}.hub-example-cue>span{margin-left:15px}
.soul-refined .hub-preview{margin:0;box-shadow:none;border-top:3px solid #be4837}
.soul-refined .hub-tab-panel{min-height:425px}.hub-tab-panel:focus-visible{outline-offset:-5px!important}
.soul-refined .hub-preview .demo-label{max-width:none;white-space:normal;line-height:1.4;text-align:right;color:#5a6c79;background:none;border:0}
.soul-refined .hub-tab-panel .sample-focus p{font-size:1.15rem;line-height:1.55}.soul-refined .sample-plan li{line-height:1.6}
.soul-refined .hub-continuity{margin-top:60px}.soul-refined .hub-continuity h2{font-size:clamp(2.2rem,3vw,3.2rem)}
/* Session choice: useful native anchors enhanced into a focused recommendation. */
.soul-refined .options-intro{margin-bottom:42px}.session-finder{margin:0 0 22px;padding-top:28px;border-top:1px solid #43545d}
.session-finder-intro{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:24px}
.soul-refined .session-finder-intro h2{font-size:1.7rem;letter-spacing:-.025em;margin-bottom:8px}.session-finder-intro p{font-size:1rem;color:#b7c5cf;line-height:1.6}.session-finder-intro>.text-link{flex-shrink:0;color:#eaa38f;font-size:.9375rem}
.session-choice-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #5c6972}
.session-choice-links a{display:grid;grid-template-columns:1fr auto;align-items:end;gap:14px 8px;padding:21px 18px;color:#d1d9df;font-size:1rem;line-height:1.4;min-height:115px;background:#192127;transition:background .15s}
.session-choice-links a+a{border-left:1px solid #5c6972}.session-choice-links a>span:first-child{grid-column:1/-1;font-size:.75rem;color:#9dabb5}.session-choice-links a>span:last-child{color:#efa28f}
.session-choice-links a:hover{background:#25323a}.session-choice-links a[aria-current=true]{background:#f2f1eb;color:#223641;box-shadow:inset 0 -3px #c14535}.session-choice-links a[aria-current=true]>span{color:#8e4034}
.session-selection-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:22px 0 0}.session-selection-bar p{color:#c0cbd3;font-size:.9375rem;line-height:1.5}.soul-refined .session-selection-bar button{background:none;border:0;border-bottom:1px solid #86929b;color:#efad9c;font-size:.875rem;cursor:pointer}
.soul-refined .package-choices.is-focused{grid-template-columns:1fr}
.soul-refined .package-choices.is-focused .session-card{display:grid;grid-template-columns:1fr 1fr;column-gap:8%;padding:30px 35px;border:0;border-top:3px solid #c14535;background:#202c33}
.package-choices.is-focused .session-kicker{grid-column:1;grid-row:1}.soul-refined .package-choices.is-focused h3{grid-column:1;grid-row:2;margin:17px 0;min-height:0;font-family:var(--body);font-size:clamp(1.9rem,2.8vw,2.8rem);font-weight:500;line-height:1.15;letter-spacing:-.025em}
.package-choices.is-focused .session-quote{grid-column:1;grid-row:3;border:0;margin:0!important;padding:5px 0 22px;align-self:start}
.package-choices.is-focused .session-card>p[data-cms-field]{grid-column:2;grid-row:1/3;margin:0;align-self:start}
.package-choices.is-focused .session-card>ul{grid-column:2;grid-row:3/5;margin:0;align-self:start}
.package-choices.is-focused .card-link{grid-column:1;grid-row:4;justify-self:start;margin:0;align-self:start;color:#f5b3a0;border:0;padding:5px 0}
.soul-refined .session-card h3{font-family:var(--body);font-size:1.85rem;font-weight:500;letter-spacing:-.025em}
.soul-refined .session-quote>[data-package-price]{font:500 1.35rem/1.4 var(--body)}
.soul-refined .practice-option{margin-top:26px}.soul-refined .practice-option h3{font-size:2rem;font-weight:500}.soul-refined .practice-option[data-selected=true]{margin-top:0;padding:30px 35px;background:#202c33;border:1px solid #52616a;border-top:3px solid #c14535}
.soul-refined .journey-welcome{padding-block:64px}.journey-welcome .journey-steps li{padding-block:21px}.soul-refined .journey-welcome .journey-steps h3{font-size:1.35rem}.soul-refined .journey-welcome .journey-steps p{font-size:1rem;line-height:1.75}
.gallery-navigation button[aria-disabled=true]{opacity:.4;cursor:default}.gallery-navigation button:hover[aria-disabled=true]{background:transparent}
@media(min-width:961px){.soul-refined .header .nav-plan[aria-current=page]{color:#fff;text-decoration:none;box-shadow:inset 0 -3px #f4b6a7}}
@media(max-width:960px){.soul-refined .soul-hero{min-height:720px}.soul-refined .soul-hero h1{font-size:clamp(4.2rem,8.4vw,6rem);max-width:650px}.soul-refined .soul-hero-copy{padding-block:58px 43px}.soul-refined .soul-hero::after{background:linear-gradient(90deg,rgba(8,12,15,.92),rgba(8,12,15,.75) 45%,rgba(8,12,15,.3)),linear-gradient(0deg,#0a1017bb,transparent)}.soul-refined .hub-explainer{grid-template-columns:1fr;gap:26px}.hub-example-intro{display:grid;grid-template-columns:1fr 1fr;gap:0 7%}.hub-example-intro .eyebrow{grid-column:1/-1}.soul-refined .hub-example-intro h2{grid-column:1;grid-row:2/4;margin:18px 0 0}.hub-example-intro>p:not(.eyebrow){grid-column:2;margin-top:18px}.hub-example-cue{grid-column:2}.soul-refined .hub-tab-panel{min-height:390px}.session-choice-links{grid-template-columns:1fr 1fr}.session-choice-links a:nth-child(3){border-left:0;border-top:1px solid #5c6972}.session-choice-links a:nth-child(4){border-top:1px solid #5c6972}.session-choice-links a{min-height:105px}.soul-refined .package-choices.is-focused .session-card{gap:0 6%;padding:28px}}
@media(max-width:650px){
 .soul-refined .soul-hero{min-height:0;display:flex;flex-direction:column;align-items:stretch;padding-top:220px}
 .soul-refined .soul-hero-photo{height:430px}.soul-refined .soul-hero-photo>img{object-position:63% 42%}
 .soul-refined .soul-hero::after{background:linear-gradient(0deg,#101214 0%,#101214 35%,rgba(16,18,20,.96) 55%,rgba(16,18,20,.12) 85%)}
 .soul-refined .soul-hero-copy{padding:24px 6% 34px;background:linear-gradient(0deg,#101214 60%,transparent)}
 .soul-refined .soul-hero-copy>.eyebrow{font-size:.625rem;letter-spacing:1.25px;max-width:100%}
 .soul-refined .soul-hero h1{font-size:clamp(3.3rem,13vw,5.1rem);line-height:1;max-width:520px;margin:19px 0 20px}
 .soul-refined .soul-hero-lead{font-size:1.0625rem}.soul-refined .soul-hero-support{font-size:1rem;max-width:38ch;margin-top:14px}.soul-refined .soul-hero .actions{gap:16px;margin-top:23px}.soul-refined .soul-hero .text-link{font-size:.875rem}.soul-refined .soul-location{font-size:.625rem;letter-spacing:.9px;margin-top:22px}
 .soul-refined .soul-approach{padding-top:46px}.soul-refined .home-session-journey{padding-block:50px}.soul-refined .soul-racing-moment .home-test-link{margin-top:25px;padding-top:20px}
 .soul-refined .console-intro h1,.soul-refined .hub-intro h1,.soul-refined .simulator-copy h1,.soul-refined .racing-title-row h1,.soul-refined .options-intro h1{font-size:clamp(3rem,11.6vw,4.6rem);line-height:1.03}
 .soul-refined .session-overview{padding-top:25px}.overview-promise{font-size:1.3rem}.coaching-photo img{aspect-ratio:1.4}.soul-refined .overview-intro h1{font-size:2.6rem}.soul-refined .continuing-plan-title{font-size:1.55rem}
 .soul-refined .hub-explainer{margin-top:32px}.hub-example-intro{display:block;padding-top:21px}.soul-refined .hub-example-intro h2{font-size:2rem;max-width:300px;margin:16px 0}.hub-example-intro>p:not(.eyebrow){margin-top:0}.hub-example-cue{margin-top:16px}.soul-refined .hub-tab-panel{min-height:495px}.soul-refined .hub-tab-panel .sample-focus p{font-size:1rem}.soul-refined .hub-continuity{margin-top:38px}
 .session-finder-intro{display:block}.session-finder-intro>.text-link{margin-top:15px}.session-choice-links a{padding:17px 13px;font-size:.9375rem;gap:10px;min-height:112px}.session-selection-bar{align-items:flex-start;gap:13px}.session-selection-bar p{font-size:.8125rem;max-width:50%}.soul-refined .session-selection-bar button{font-size:.8125rem;text-align:right}
 .soul-refined .package-choices.is-focused .session-card{display:flex;gap:0;padding:25px 21px}.soul-refined .package-choices.is-focused h3{margin:18px 0;font-size:2rem}.package-choices.is-focused .session-quote{padding:0 0 22px}.package-choices.is-focused .session-card>ul{margin:20px 0 23px}.package-choices.is-focused .card-link{font-size:1rem}.soul-refined .practice-option[data-selected=true]{padding:25px 21px}.soul-refined .journey-welcome{padding-block:45px}
}
@media(prefers-reduced-motion:reduce){.session-choice-links a{transition:none}}

.package-price-link{font:500 1.35rem/1.4 var(--body);color:#fff;text-decoration:underline;text-decoration-color:#7c8c96;text-underline-offset:5px}.package-price-link:hover{color:#ffb4a2}

/* Clear section titles and concise reading blocks, from desktop to mobile. */
.soul-refined main{--section-title:clamp(2.2rem,3.6vw,3.6rem)}
.soul-refined main .section h2,
.soul-refined .soul-racing-moment h2,
.soul-refined .story-origin .connection-grid h2{
 font-size:var(--section-title);line-height:1.08;letter-spacing:-.035em;text-wrap:balance
}
.soul-refined main .soul-approach h2{
 font-size:clamp(3.2rem,5.2vw,5rem);font-weight:600;line-height:1.02;letter-spacing:-.045em;margin:0;max-width:10ch
}
.soul-refined .soul-approach{row-gap:30px}
.soul-refined .approach-copy{align-self:start}
.soul-refined .approach-copy .lead{font-size:1.25rem;line-height:1.45;margin-top:0}
.soul-refined main .section p:not(.eyebrow):not(.section-note):not(.sample-status):not(.session-quote),
.soul-refined .soul-racing-moment>div>p:not(.eyebrow){line-height:1.65;text-wrap:pretty}
.soul-refined .section :is(.approach-copy,.founder-copy,.console-intro,.hub-intro,.simulator-copy) p+p{margin-top:16px}
.soul-refined .approach-copy .text-link{margin-top:18px}
.soul-refined main .hub-example-intro h2,
.soul-refined main .session-finder-intro h2{font-size:clamp(1.75rem,2.4vw,2.5rem);line-height:1.15}
.soul-refined main .stage-heading h2{font-size:clamp(2rem,3vw,3rem)}
.soul-refined .console-features h3,
.soul-refined .hub-continuity-grid h3,
.soul-refined .racing-lessons-copy h3{font-size:clamp(1.4rem,1.8vw,1.8rem);line-height:1.2;margin-bottom:12px}
.soul-refined .home-session-journey h3{margin-bottom:9px}
.soul-refined .session-stage{padding-block:34px}
.soul-refined .session-stage:first-child{padding-top:0}
.soul-refined .session-stage:last-child{padding-bottom:0}
.soul-refined .hub-tab-panel{min-height:350px}
.soul-refined .hub-tab-panel .sample-focus p{font-size:1.0625rem}
.soul-refined main .soul-invitation h2{max-width:14ch}
@media(max-width:760px){
 .soul-refined main{--section-title:clamp(2.1rem,7.8vw,3.1rem)}
 .soul-refined main .soul-approach h2{font-size:clamp(3rem,11.5vw,4.6rem);max-width:11ch}
 .soul-refined .soul-approach{gap:22px}
 .soul-refined .approach-copy .lead{font-size:1.15rem}
 .soul-refined .session-stage{padding-block:27px}
 .soul-refined .hub-tab-panel{min-height:385px}
 .soul-refined main .hub-example-intro h2,
 .soul-refined main .session-finder-intro h2{font-size:1.8rem}
 .soul-refined main .stage-heading h2{font-size:2.1rem}
}

/* A first visit has one route: understand the sessions, enquire, agree a booking. */
#session-options,#session-stages,#enquiry,#your-journey,.route-anchor{scroll-margin-top:110px}
.route-anchor{display:block;height:0}
.soul-refined .coaching-overview{padding-bottom:40px}
.soul-refined .coaching-overview .overview-intro{align-items:start;gap:25px 9%}
.soul-refined .coaching-overview h1{font:400 clamp(3.5rem,5.3vw,5.5rem)/1.03 var(--display);letter-spacing:.01em}
.soul-refined .coaching-overview .overview-promise{font-size:1.3rem;line-height:1.5;max-width:34ch;margin-bottom:15px}
.soul-refined .coaching-overview .lead{font-size:1.0625rem;max-width:52ch}
.coaching-intro-links{display:flex;gap:12px 26px;flex-wrap:wrap}
.soul-refined .coaching-intro-links .text-link{font-size:.9375rem;margin-top:18px}
.soul-refined .coached-options{padding-top:34px;background:#142027}
.coached-options-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}
.soul-refined main .coached-options-heading h2{font-size:clamp(1.8rem,2.5vw,2.6rem)}
.coached-options-heading>p{max-width:38ch;font-size:1rem;color:#c0cbd1}
.coached-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #53626a}
.coached-session{display:flex;flex-direction:column;min-width:0;padding:28px 25px;background:#1b282f;border-top:3px solid #c94435}
.coached-session+.coached-session{border-left:1px solid #53626a}
.coached-session-top{display:flex;gap:15px;align-items:baseline;margin-bottom:23px}
.coached-session-top>span{font-size:.875rem;font-variant-numeric:tabular-nums;color:#ed9e90}
.soul-refined .coached-session-top .eyebrow{font-size:.6875rem;letter-spacing:1.1px;color:#bcc8cf}
.soul-refined .coached-session h3{font-size:clamp(1.6rem,2.1vw,2.15rem);font-weight:500;line-height:1.15;letter-spacing:-.03em;min-height:2.3em;margin:0 0 18px}
.coached-description{font-size:1rem;color:#c5d0d6;min-height:5em}
.coached-price{display:flex;flex-direction:column;align-items:start;gap:6px;padding-block:22px;margin-block:19px!important;border-block:1px solid #455760}
.coached-price .package-price-link{font-size:1.35rem}
.coached-price>[data-package-duration]{font-size:.875rem;color:#bdcbd2}
.coached-session ul{margin:0 0 25px;padding-left:19px;color:#c9d3d9;font-size:.9375rem;line-height:1.6}
.coached-session li+li{margin-top:8px}
.soul-refined .coached-session .coached-enquire{margin-top:auto;align-self:start;color:#f6af9e;font-size:.9375rem;min-height:44px;display:flex;align-items:center;gap:12px}
.coached-options-note{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-top:24px}
.coached-options-note p{color:#b5c6cf;font-size:.9375rem;max-width:68ch}
.coached-options-note .text-link{color:#f0b2a1;flex-shrink:0}
.soul-refined .coached-options .package-note{font-size:.8125rem;line-height:1.6;max-width:90ch;margin:16px 0 0;color:#a9bdc9}
.practice-details{border-top:1px solid #50616b;margin-top:28px}
.practice-details summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding-block:21px;color:#d4dce1;font-size:1rem;min-height:52px}
.practice-details summary::-webkit-details-marker{display:none}.practice-details summary>span:last-child{color:#ee9d8b;font-size:1.4rem}
.practice-details[open] summary>span:last-child{transform:rotate(45deg)}
.practice-details>div{padding:5px 0 24px;max-width:780px}
.soul-refined .practice-details h3{font-size:1.5rem;margin:0 0 14px}
.practice-details p{color:#b8c8d2;font-size:1rem;max-width:66ch}
.practice-details .practice-scope{margin-top:12px;font-size:.875rem}
.practice-details .text-link{margin-top:18px;color:#f0ae9d}
/* One direct handoff to the public enquiry form. */
.enquiry-page{background:#142027}
.enquiry-heading{display:grid;grid-template-columns:1.05fr 1fr;gap:10%;align-items:end;margin-bottom:42px}
.soul-refined .enquiry-heading h1{font:400 clamp(3.5rem,5.3vw,5.5rem)/1.03 var(--display);letter-spacing:.01em;margin:20px 0 0}
.enquiry-heading>.lead{max-width:42ch;color:#ccd6dc;font-size:1.2rem}
.enquiry-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:10%;border-top:1px solid #586a75;padding-top:34px}
.enquiry-grid>*{min-width:0}
.soul-refined main .enquiry-start h2,.soul-refined main .enquiry-contact h2{font-size:clamp(1.7rem,2.5vw,2.3rem);margin:0 0 17px}
.enquiry-start>p{color:#bfccd4;max-width:51ch;font-size:1rem}
.enquiry-actions{margin-top:25px;max-width:540px}
.soul-refined .enquiry-actions .button{width:100%;display:flex;justify-content:space-between;gap:20px}
.enquiry-actions .profile-note{font-size:.875rem;line-height:1.6;color:#b2c3ce;margin-top:12px}
.soul-refined .enquiry-start>.text-link{font-size:.9375rem;color:#f0b0a0;margin-top:17px}
.soul-refined .enquiry-start>.fine-print{font-size:.8125rem;margin-top:20px;color:#a7bdca;max-width:60ch}
.soul-refined .enquiry-contact{border:0;border-left:1px solid #506370;padding:0 0 0 32px;background:none;margin:0}
.enquiry-contact .contact-intro{color:#bfccd4;font-size:1rem;margin-bottom:23px;max-width:37ch}
.soul-refined .enquiry-contact .contact-email{font-size:clamp(1.25rem,1.8vw,1.65rem);letter-spacing:-.02em;overflow-wrap:anywhere;display:block;margin:0 0 15px}
.soul-refined .enquiry-contact .contact-phone{font-size:1.125rem;color:#e4e8eb;margin-bottom:26px;display:block}
.soul-refined .enquiry-contact .address-block{padding-top:22px;margin-top:0;border-top:1px solid #506370}
.enquiry-contact address{font-size:.9375rem;line-height:1.7;color:#bdcbd3;margin-top:10px;font-style:normal}
.enquiry-contact .text-link{margin-top:13px;font-size:.9375rem}
.returning-route{display:flex;align-items:center;justify-content:space-between;gap:26px;border-top:1px solid #506370;padding-top:25px;margin-top:35px}
.returning-route strong{font-size:1.0625rem;font-weight:500}.returning-route p{font-size:.9375rem;color:#b5c5d0;margin-top:7px}
.soul-refined .returning-route .text-link{white-space:nowrap;color:#f0b2a1}
.first-visit{background:#f1f3f1;color:#243640}
.first-visit-heading{margin-bottom:28px}.first-visit-heading .eyebrow{color:#607583;margin-bottom:19px}
.first-visit-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6%;padding:25px 0 0;border-top:1px solid #afc1ca;margin:0;list-style:none}
.first-visit-steps>li{display:grid;grid-template-columns:24px 1fr;gap:15px;align-content:start;min-width:0}
.first-visit-steps>li>span{color:#9f4939;font-size:.875rem;padding-top:3px}
.soul-refined .first-visit-steps h3{font-size:1.35rem;margin:0 0 13px;line-height:1.2;font-weight:500}
.first-visit-steps p{color:#506775;font-size:1rem}
.soul-refined .first-visit-steps .text-link{color:#924536;font-size:.9375rem;margin-top:13px}
.enquiry-faq{background:#15222a}
.soul-refined .enquiry-faq .faq{padding-top:0;margin-top:0;border-top:0}
/* Explain the simulator through its real features, with full-width photographs. */
.simulator-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5%;margin-top:43px;padding-block:34px;border-bottom:1px solid #b6c3c9}
.feature-number{display:block;color:#9e4636;font-size:.8125rem;margin-bottom:15px}
.soul-refined main .simulator-features h2{font-size:clamp(1.45rem,2vw,1.9rem);margin:0 0 16px;line-height:1.15}
.simulator-features p{font-size:1rem;line-height:1.7;color:#526773;max-width:43ch}
.soul-refined .simulator-copy h1{font-size:clamp(3.4rem,5vw,5.4rem)}
.soul-refined .simulator-photo img{object-position:center 43%}
.soul-refined .detail-copy h2{grid-column:1;grid-row:2/4;margin:20px 0 0}
.simulator-tool-links{grid-column:2;display:flex;gap:15px 25px;flex-wrap:wrap;margin-top:14px}
.soul-refined .simulator-tool-links .text-link{font-size:.9375rem;margin:0;color:#8c3c30}
@media(max-width:1050px){
 .coached-session{padding:24px 20px}.coached-session-top{gap:10px;align-items:start}.coached-description{min-height:6.6em}
 .coached-session-top .eyebrow{max-width:19ch}
 .enquiry-heading,.enquiry-grid{gap:6%}.soul-refined .enquiry-contact{padding-left:24px}
 .first-visit-steps{gap:4%}.first-visit-steps>li{gap:9px;grid-template-columns:20px 1fr}
}
@media(max-width:820px){
 .coached-options-heading{align-items:start;flex-direction:column;gap:16px}.coached-options-heading>p{max-width:55ch}
 .coached-options-grid{grid-template-columns:1fr}.coached-session{display:grid;grid-template-columns:1fr 1fr;gap:0 7%;padding:26px}
 .coached-session+.coached-session{border-left:0;border-top:1px solid #53626a}
 .coached-session-top{grid-column:1/-1;margin-bottom:17px}.coached-session-top .eyebrow{max-width:none}
 .soul-refined .coached-session h3{grid-column:1;grid-row:2;min-height:0;margin-bottom:17px;font-size:1.9rem}
 .coached-description{grid-column:1;grid-row:3;min-height:0}
 .coached-price{grid-column:2;grid-row:2;margin:0 0 18px!important;padding:0 0 18px;border-top:0;align-self:start}
 .coached-session ul{grid-column:2;grid-row:3/5;margin-bottom:0}
 .soul-refined .coached-session .coached-enquire{grid-column:1;grid-row:4;margin-top:19px}
 .coached-options-note{align-items:start;flex-direction:column;gap:12px}
 .enquiry-heading{grid-template-columns:1fr;gap:22px}.enquiry-heading>.lead{max-width:56ch}
 .first-visit-steps{grid-template-columns:1fr;gap:0}.first-visit-steps>li{grid-template-columns:25px 1fr;gap:17px;padding-block:23px;border-bottom:1px solid #bdcbd1}.first-visit-steps>li:first-child{padding-top:0}.first-visit-steps>li:last-child{border:0;padding-bottom:0}
 .first-visit-steps p{max-width:64ch}
 .simulator-features{gap:4%}.simulator-features p{font-size:.9375rem}
}
@media(max-width:650px){
 .soul-refined .coaching-overview{padding-bottom:22px}.soul-refined .coaching-overview h1,.soul-refined .enquiry-heading h1,.soul-refined .simulator-copy h1{font-size:clamp(3rem,11vw,4.4rem)}
 .soul-refined .coaching-overview .overview-promise{font-size:1.2rem}.soul-refined .coaching-overview .lead{font-size:1rem}
 .coaching-intro-links{gap:0 22px}.soul-refined .coaching-intro-links .text-link{font-size:.875rem}
 .soul-refined .coached-options{padding-top:25px}.coached-options-heading{gap:14px;margin-bottom:23px}
 .coached-session{display:flex;padding:25px 21px}.soul-refined .coached-session h3{font-size:1.8rem;margin-bottom:15px}
 .coached-price{margin:20px 0!important;padding-block:18px;border-top:1px solid #455760}.coached-session ul{margin-bottom:5px}
 .soul-refined .coached-session .coached-enquire{margin-top:15px}
 .enquiry-heading{margin-bottom:28px}.enquiry-heading>.lead{font-size:1.0625rem}
 .enquiry-grid{grid-template-columns:1fr;gap:30px;padding-top:26px}
 .soul-refined .enquiry-contact{padding:28px 0 0;border-left:0;border-top:1px solid #506370}
 .soul-refined .enquiry-contact .contact-email{font-size:1.4rem}
 .enquiry-actions{max-width:none}.returning-route{align-items:start;flex-direction:column;gap:15px;padding-top:23px;margin-top:28px}
 .simulator-features{grid-template-columns:1fr;gap:0;margin-top:16px;padding-block:0}
 .simulator-features>article{display:grid;grid-template-columns:23px 1fr;gap:0 15px;padding-block:25px;border-bottom:1px solid #bbc7cd}.simulator-features>article:last-child{border:0}
 .feature-number{grid-row:1/3;margin:4px 0 0}.soul-refined main .simulator-features h2{font-size:1.6rem;grid-column:2;margin-bottom:13px}.simulator-features p{grid-column:2;max-width:none;font-size:1rem}
 .soul-refined .detail-copy h2{margin-block:20px}.simulator-tool-links{display:flex;flex-direction:column;align-items:start;gap:12px;margin-top:18px}
}

/* Responsive layout contract. Keep text in its track and photos at page width. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.soul-refined :where(main,.site-footer) :where(section,article,aside,div,form,figure,nav,ul,ol,li,p,h1,h2,h3,h4){min-width:0}
.soul-refined :where(main,.site-footer){overflow-wrap:anywhere}
.soul-refined main :is(h1,h2,h3,h4){overflow-wrap:anywhere}
.soul-refined :is(.text-link,.button,.source-link){max-width:100%;white-space:normal}
.soul-refined :is(.text-link,.button)>span[aria-hidden=true]{flex-shrink:0}
.soul-refined :is(.breadcrumb,.section-heading,.gallery-navigation,.returning-route,.coaching-story-top,.hub-preview-top){flex-wrap:wrap}
.soul-refined .breadcrumb{row-gap:8px}
.soul-refined .hub-preview-top{gap:12px}
.soul-refined .hub-preview .demo-label{color:#c6d1da;text-align:left}
.soul-refined :is(.coaching-story,.hub-preview){margin-inline:0;max-width:100%}
.soul-refined .enquiry-actions select{min-width:0;max-width:100%}
.soul-refined .coached-options-note .text-link{flex-shrink:1}
/* Only the column gap is proportional. Row gaps must contribute to height. */
.soul-refined :is(.hub-intro,.console-intro,.connection-grid,.overview-intro,.enquiry-heading,.enquiry-grid,.relevance-intro,.soul-audience>div,.soul-invitation,.preparation-invitation){row-gap:28px}
@supports(width:100cqw){
 .soul-refined :is(.approach-detail,.simulator-photo,.detail-photo,.racing-photo-pair),
 .soul-refined .personal-opening-grid>.founder-opening-photo,
 .soul-refined .racing-bridge>figure{width:100cqw}
}
/* Large headings and interactive previews need a full column on tablets too. */
@media(max-width:960px){
 .soul-refined .header{height:auto;min-height:76px;padding-block:12px;gap:12px;flex-wrap:wrap}
 .soul-refined .header nav{max-height:70dvh;overflow-y:auto}
 .soul-refined .header nav>a{white-space:normal}
 .soul-refined .header .nav-plan,.soul-refined .header .nav-login{white-space:normal}
 .soul-refined .console-intro,.soul-refined .hub-intro{grid-template-columns:minmax(0,1fr);gap:28px}
}
@media(max-width:820px){
 .soul-refined .simulator-copy,.soul-refined .detail-copy,.soul-refined .personal-opening-grid,.soul-refined .personal-opening-copy{display:block}
 .soul-refined .simulator-copy h1{margin-bottom:25px}
 .soul-refined .simulator-copy>p{margin-top:18px}
 .soul-refined .simulator-copy>.text-link{margin-top:22px}
 .soul-refined .detail-copy h2{margin-block:20px}
 .soul-refined .personal-opening h1{margin:20px 0 25px}
 .soul-refined .personal-opening-grid>.founder-opening-photo{position:relative;left:50%;transform:translateX(-50%);margin-top:30px}
 .soul-refined .soul-approach{display:flex;flex-direction:column;gap:28px}
 .soul-refined .approach-detail{left:auto;transform:none;align-self:center}
 .soul-refined .soul-racing-moment>div{display:block}
 .soul-refined :is(.overview-intro,.session-stage,.session-outcome,.home-session-journey,.enquiry-grid,.racing-title-row,.soul-audience>div,.soul-invitation,.preparation-invitation){grid-template-columns:minmax(0,1fr);gap:28px}
 .soul-refined .enquiry-contact{padding:28px 0 0;border-left:0;border-top:1px solid #506370}
 .soul-refined .enquiry-actions{max-width:none}
 .soul-refined .coached-session{display:flex;gap:0;padding:25px}
 .soul-refined .coached-price{margin:20px 0!important;padding-block:18px;border-top:1px solid #455760}
 .soul-refined .coached-session ul{margin-bottom:5px}
 .soul-refined .coached-session .coached-enquire{margin-top:18px}
 .soul-refined :is(.coached-description,.coached-session h3){min-height:0}
 .soul-refined .simulator-features{grid-template-columns:minmax(0,1fr);gap:24px}
 .soul-refined .simulator-features>article+article{border-top:1px solid #bbc7cd;padding-top:24px}
 .soul-refined .simulator-features p{max-width:60ch}
}
@media(max-width:650px){
 .soul-refined .header{min-height:70px}
 .soul-refined .soul-hero-copy{width:100%;align-self:stretch}
 .soul-refined .soul-hero h1{font-size:clamp(2.75rem,12.8vw,5.1rem);line-height:1.06}
 .soul-refined :is(.console-intro,.hub-intro,.simulator-copy,.coaching-overview,.enquiry-heading) h1{font-size:clamp(2.6rem,10.5vw,4.3rem);line-height:1.08}
 .soul-refined .racing-title-row h1{font-size:clamp(2.4rem,8.5vw,3.5rem);line-height:1.12}
 .soul-refined .personal-opening h1{font-size:clamp(2.4rem,8.5vw,3.5rem);line-height:1.12}
 .soul-refined .hub-preview-top .product-mark{flex-basis:100%}
 .soul-refined .sample-grid{grid-template-columns:minmax(0,1fr);gap:20px}
 .soul-refined .hub-tab-panel{min-height:0}
 .soul-refined .hub-tabs{gap:0 18px}
 .soul-refined .hub-tabs button{max-width:100%;white-space:normal;text-align:left}
 .soul-refined .coaching-chapters{display:flex;flex-wrap:wrap}
 .soul-refined .coaching-chapters button{flex:1 1 8rem}
 .soul-refined .coaching-readouts{grid-template-columns:minmax(0,1fr);gap:18px}
 .soul-refined .coaching-readouts>div,.soul-refined .coaching-readouts .pedal-live,.soul-refined .coaching-readouts>div:last-child{grid-column:auto;grid-row:auto;display:block}
 .soul-refined .pedal-live-row{grid-template-columns:49px minmax(0,1fr) 40px;gap:10px}
 .soul-refined .simulator-features{gap:0}
 .soul-refined .simulator-features>article+article{border-top:0;padding-top:25px}
 .soul-refined .coached-session{padding:24px 20px}
 .soul-refined .gallery-navigation{align-items:start}
 .soul-refined .gallery-navigation>div{flex-wrap:wrap}
}

/* Photos keep their composition; only the desktop hero uses an editorial crop. */
.soul-refined main :is(.approach-detail,.simulator-photo,.detail-photo,.full-width-photo,.racing-banner,.racing-photo-pair,.founder-opening-photo,.racing-bridge>figure,.soul-racing-moment>figure){height:auto;min-height:0;max-height:none;aspect-ratio:auto}
.soul-refined main :is(.approach-detail,.simulator-photo,.detail-photo,.full-width-photo,.racing-banner,.racing-photo-pair,.founder-opening-photo,.racing-bridge>figure,.soul-racing-moment>figure) img{display:block;position:static;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center}
.soul-refined .racing-bridge picture,.soul-refined .founder-opening-photo picture{display:block;width:100%}
/* Match the gallery frame to the photographs, rather than to screen height. */
.soul-refined .photo-gallery-grid .gallery-open,
.soul-refined .racing-gallery-grid>figure:nth-child(n) .gallery-open{width:100%;height:auto;min-height:0;aspect-ratio:3/2}
.soul-refined .photo-gallery-grid .gallery-open{aspect-ratio:4/3}
.soul-refined .photo-gallery-grid .gallery-open img,
.soul-refined .racing-gallery-grid .gallery-open img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:820px){
 .soul-refined .soul-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-top:0}
 .soul-refined .soul-hero-photo{position:relative;inset:auto;order:-1;z-index:auto;width:100%;height:auto;aspect-ratio:auto}
 .soul-refined .soul-hero-photo>img{position:static;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}
 .soul-refined .soul-hero::after{display:none}
 .soul-refined .soul-hero-copy{width:100%;padding:30px 6% 40px;background:#101214}
}

/* The founder's story opens inside the photograph, with its own responsive composition. */
.soul-refined .founder-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:clamp(660px,65vw,850px);background:#101214;color:#fff}
.founder-hero-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;margin:0;overflow:hidden}
.founder-hero-photo picture{display:block;width:100%;height:100%}
.founder-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.founder-hero::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,rgba(9,13,16,.96),rgba(9,13,16,.65) 24%,transparent 65%),linear-gradient(90deg,rgba(9,13,16,.38),transparent 65%)}
.soul-refined .founder-breadcrumb{padding:27px var(--flow-pad) 0;margin:0;color:#e1e6e8}
.founder-breadcrumb a{border-color:#b8c2c8}
.founder-hero-copy{padding:110px var(--flow-pad) 55px;max-width:100%}
.soul-refined .founder-hero-copy .eyebrow{font-size:.75rem;letter-spacing:1.8px;color:#e2e7ea}
.soul-refined .founder-hero h1{font:400 clamp(4.4rem,7.7vw,8rem)/1.02 var(--display);letter-spacing:.01em;margin:21px 0 23px;max-width:13ch;text-wrap:initial;overflow-wrap:anywhere}
.soul-refined .founder-hero h1 em{color:#ff927f}
.soul-refined .founder-hero .text-link{color:#fff;border-color:#9aa8b1;font-size:.9375rem;gap:25px}
.founder-hero .text-link span{color:#ff927f}
#founder-story{scroll-margin-top:110px}
.soul-refined .founder-letter{background:#f3f2ee;border:0;padding-block:80px}
.soul-refined .founder-letter-heading h2{margin-top:20px}
.founder-byline{display:flex;flex-direction:column;gap:3px;border-top:1px solid #c4cbc9;margin-top:32px;padding-top:20px;max-width:280px}
.founder-byline strong{font-size:1.125rem;font-weight:500;color:#263a43}
.founder-byline span{font-size:.875rem;color:#61727a}
.soul-refined .founder-letter .founder-copy>p:first-child{font-size:clamp(1.2rem,1.65vw,1.5rem);line-height:1.6;color:#283e49}
.soul-refined .founder-letter .founder-copy>p+p{margin-top:25px}
.soul-refined .founder-letter .founder-copy>p:last-child{color:#293f4b;border-left:2px solid #b84938;padding-left:21px;margin-top:30px}
@media(max-width:820px){
 .soul-refined .founder-hero{min-height:max(600px,150vw)}
 .founder-hero-photo picture{height:auto}
 .founder-hero-photo img{height:auto;object-fit:contain}
 .founder-hero::after{background:linear-gradient(0deg,#101214 0%,rgba(16,18,20,.92) 14%,rgba(16,18,20,.3) 38%,transparent 60%),linear-gradient(180deg,rgba(9,13,16,.35),transparent 18%)}
 .soul-refined .founder-breadcrumb{padding-top:22px;font-size:.8125rem}
 .founder-hero-copy{padding:60px 6% 32px}
 .soul-refined .founder-hero h1{font-size:clamp(3.6rem,12.5vw,6.3rem);line-height:1.04;margin-block:17px 21px;max-width:100%}
 .soul-refined .founder-hero-copy .eyebrow{font-size:.6875rem;letter-spacing:1.3px}
 .soul-refined .founder-letter{grid-template-columns:minmax(0,1fr);gap:30px;padding-block:48px}
 .founder-byline{margin-top:24px;padding-top:17px;max-width:none}
 .soul-refined .founder-letter .founder-copy>p+p{margin-top:21px}
}
/* The driver's studio: an immersive opening, in the same visual language as Our Story. */
.soul-refined .studio-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:clamp(640px,62vw,840px);background:#101214;color:#fff}
.studio-hero-photo{position:absolute;inset:0;z-index:-2;margin:0;width:100%;height:100%;overflow:hidden}
.studio-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 43%}
.studio-hero::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,rgba(9,13,16,.94),rgba(9,13,16,.52) 28%,transparent 65%),linear-gradient(180deg,rgba(9,13,16,.65),transparent 22%)}
.soul-refined .studio-breadcrumb{padding:27px var(--flow-pad) 0;margin:0;color:#fff}
.studio-breadcrumb a{border-color:#b8c2c8}
.studio-hero-copy{padding:130px var(--flow-pad) 55px;max-width:100%}
.soul-refined .studio-hero-copy .eyebrow{font-size:.75rem;letter-spacing:1.8px;color:#e2e7ea}
.soul-refined .studio-hero h1{font:400 clamp(4.4rem,7.7vw,8rem)/1.02 var(--display);letter-spacing:.01em;margin:21px 0 23px;max-width:100%;text-wrap:initial;overflow-wrap:anywhere}
.soul-refined .studio-hero h1 em{color:#ff927f}
.soul-refined .studio-hero .text-link{color:#fff;border-color:#9aa8b1;font-size:.9375rem;gap:25px}
.studio-hero .text-link span{color:#ff927f}
#simulator{scroll-margin-top:100px}
.studio-purpose{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 10%;align-items:center}
.soul-refined .studio-purpose h2{font-size:clamp(2.6rem,3.8vw,4rem);line-height:1.12;margin:22px 0 0}
.studio-purpose>div>p:not(.eyebrow){max-width:53ch;font-size:1.125rem;line-height:1.75;color:#526773;margin:0}
.studio-purpose .text-link{margin-top:24px}
@media(max-width:820px){
 .soul-refined .studio-hero{min-height:max(580px,120vw)}
 .studio-hero-photo img{object-position:58% 38%}
 .soul-refined .studio-breadcrumb{padding:22px 6% 0;font-size:.8125rem}
 .studio-hero-copy{padding:120px 6% 34px}
 .soul-refined .studio-hero h1{font-size:clamp(3.6rem,12.5vw,6.3rem);line-height:1.04;margin-block:17px 21px}
 .soul-refined .studio-hero-copy .eyebrow{font-size:.6875rem;letter-spacing:1.3px}
 .studio-purpose{grid-template-columns:minmax(0,1fr);gap:25px}
 .soul-refined .studio-purpose h2{font-size:clamp(2.25rem,7.6vw,3.5rem)}
 .studio-purpose>div>p:not(.eyebrow){font-size:1.0625rem}
}
/* Coaching shares the photographic opening, then explains the work before the options. */
.coaching-hero .studio-hero-photo img{object-position:50% 40%}
.coaching-approach{background:#f1f3f1;color:#253943}
.studio-purpose>div>p.coaching-included{font-size:1rem;margin-top:20px}
.coaching-pricing-link{display:flex;align-items:center;gap:22px 30px;flex-wrap:wrap;margin:0 0 34px}
.coaching-pricing-link .button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;max-width:100%;white-space:normal}
.coaching-pricing-link p{font-size:.875rem;line-height:1.6;color:#bdcbd2;margin:0}
.soul-refined .coaching-approach .text-link{color:#8c3c30}
@media(max-width:820px){
 .coaching-hero .studio-hero-photo img{object-position:55% 35%}
 .soul-refined .coaching-hero h1{font-size:clamp(3rem,11vw,6rem)}
 .coaching-pricing-link{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:27px}
}
/* Real racing leads with transfer to the circuit; the archive supports that story. */
.soul-refined .racing-hero{justify-content:flex-start;min-height:clamp(680px,62vw,880px)}
.racing-hero .studio-hero-photo picture{display:block;width:100%;height:100%}
.racing-hero .studio-hero-photo img{object-position:50% 70%}
.racing-hero .studio-hero-copy{padding-top:70px;padding-bottom:150px}
.racing-hero::after{background:linear-gradient(135deg,rgba(8,12,16,.82),rgba(8,12,16,.4) 42%,transparent 72%)}
.soul-refined.motorsport-page .racing-lessons{padding-bottom:70px;align-items:start}
.racing-lessons-heading>p:not(.eyebrow){font-size:1.0625rem;line-height:1.75;color:#53636c;max-width:55ch}
.racing-lessons-heading>p+p{margin-top:18px}
.racing-lessons-heading>.text-link{margin-top:25px}
.racing-lessons-copy{padding-top:8px}
.racing-test-details{grid-column:1/-1;border-top:1px solid #485761;min-width:0}
.racing-test-details summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;cursor:pointer;list-style:none;font-size:1.0625rem;color:#e6e9e9}
.racing-test-details summary::-webkit-details-marker{display:none}
.racing-test-details summary>span{color:#ee9d8b;font-size:1.5rem}
.racing-test-details[open] summary>span{transform:rotate(45deg)}
.racing-test-details-body{display:grid;gap:28px;padding-bottom:10px}
.racing-test-details .test-method{border-top:0;padding-top:8px}
@media(max-width:820px){
 .soul-refined .racing-hero{min-height:max(680px,150vw)}
 .racing-hero .studio-hero-photo img{object-position:50% 100%}
 .racing-hero .studio-hero-copy{padding:35px 6% 280px}
 .racing-hero::after{background:linear-gradient(180deg,rgba(8,12,16,.76),rgba(8,12,16,.62) 36%,transparent 70%)}
 .soul-refined .racing-hero h1{font-size:clamp(3rem,11vw,6rem)}
 .racing-test-details summary{font-size:1rem}
 .soul-refined.motorsport-page .racing-lessons{padding-bottom:53px}
}
/* A focused homepage: one photographic opening, then a clear route into coaching. */
.soul-refined .home-focus-hero{min-height:clamp(680px,58vw,820px);justify-content:center}
.home-focus-hero .studio-hero-photo img{object-position:65% 43%}
.home-focus-hero::after{background:linear-gradient(90deg,rgba(8,12,16,.91),rgba(8,12,16,.69) 40%,rgba(8,12,16,.16) 78%),linear-gradient(0deg,rgba(8,12,16,.4),transparent 60%)}
.home-focus-hero .studio-hero-copy{padding:64px var(--flow-pad)}
.soul-refined .home-focus-hero h1{font-size:clamp(4.7rem,7.7vw,8rem);margin:22px 0 16px}
.home-focus-tagline{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.35;color:#fff;margin:0 0 18px}
.home-focus-intro{font-size:1.125rem;line-height:1.65;max-width:39ch;color:#e0e5e8;margin:0}
.home-focus-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 30px;margin-top:30px}
.home-focus-actions .button{display:inline-flex;align-items:center;gap:30px}
.home-driver-fit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 10%;padding:35px var(--flow-pad);background:#1b272e;border-bottom:1px solid #44545e}
.soul-refined .home-driver-fit h2{font-size:1.65rem;line-height:1.3;letter-spacing:-.025em;margin:0;max-width:22ch;color:#f5f6f5}
.home-driver-fit p{font-size:1rem;line-height:1.7;max-width:57ch;color:#d2dce1;margin:0}
.home-driver-fit .driver-fit-welcome{font-size:.875rem;color:#b3c2cb;margin-top:10px}
.home-focus-approach,.home-focus-racing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 10%;align-items:start}
.home-focus-approach,.home-focus-tools{background:#f1f3f1;color:#253943}
.soul-refined :is(.home-focus-approach,.home-focus-sessions,.home-focus-tools,.home-focus-racing) h2{font-size:clamp(2.5rem,3.5vw,3.8rem);line-height:1.12;letter-spacing:-.035em;margin:0}
.home-focus-approach p{font-size:1.0625rem;line-height:1.75;max-width:52ch;color:#526773;margin:0 0 16px}
.home-focus-approach p.home-focus-lead{font-size:1.35rem;line-height:1.45;color:#253943}
.soul-refined :is(.home-focus-approach,.home-focus-tools) .text-link{color:#8c3c30;margin-top:8px}
.home-focus-section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:36px}
.home-focus-section-heading .eyebrow,.home-focus-racing .eyebrow{margin-bottom:20px}
.home-focus-sessions{background:#142027;scroll-margin-top:100px}
.home-focus-sessions .text-link{color:#f0b2a1}
.home-focus-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #52616a}
.home-focus-choice{display:flex;flex-direction:column;align-items:start;padding:30px 28px 27px 0;min-width:0;transition:background-color .2s}
.home-focus-choice+ .home-focus-choice{border-left:1px solid #52616a;padding-left:28px}
.home-focus-choice:last-child{padding-right:0}
.home-choice-number{font-size:.6875rem;line-height:1.6;letter-spacing:1px;color:#eaa393}
.soul-refined .home-focus-choice h3{font-size:clamp(1.6rem,2.1vw,2.15rem);font-weight:500;line-height:1.2;letter-spacing:-.03em;margin:22px 0 16px;color:#fff}
.home-focus-choice p{font-size:1rem;line-height:1.7;color:#becbd2;max-width:35ch;margin:0 0 26px}
.home-choice-action{display:flex;gap:20px;align-items:center;margin-top:auto;font-size:.9375rem;color:#f3b4a5}
.home-focus-choice:hover h3,.home-focus-choice:focus-visible h3{color:#f3b4a5}
.home-focus-choice:focus-visible{outline:2px solid #f3b4a5;outline-offset:5px}
.home-choice-note{font-size:.875rem;line-height:1.7;color:#becbd2;margin:22px 0 0}
.home-focus-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10%;margin-bottom:32px}
.soul-refined .home-focus-tool-grid h3{font-size:1.65rem;font-weight:500;margin:0 0 15px}
.home-focus-tool-grid p{font-size:1.0625rem;line-height:1.75;color:#526773;max-width:47ch;margin:0 0 18px}
.home-focus-demo{border-block:1px solid #b6c3c9}
.home-focus-demo summary{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:23px 0;list-style:none;cursor:pointer}
.home-focus-demo summary::-webkit-details-marker{display:none}
.home-focus-demo summary strong{font-size:1.125rem;font-weight:500}
.home-demo-description{display:block;margin-top:6px;color:#526773;font-size:.875rem;line-height:1.5}
.home-demo-toggle{color:#9b4034;font-size:1.8rem}
.home-focus-demo[open] .home-demo-toggle{transform:rotate(45deg)}
.home-demo-content{padding-bottom:30px}
.home-demo-content>p{color:#526773;max-width:65ch;margin:0 0 23px;font-size:1rem;line-height:1.7}
.home-focus-racing{background:#1b272e;align-items:center}
.home-focus-racing>div>p:not(.eyebrow){color:#c5d0d6;font-size:1.125rem;line-height:1.75;max-width:48ch;margin:0 0 22px}
.home-focus-racing .text-link{color:#f0b2a1}
.home-focus-invitation{border-top:1px solid #46545d}
@media(max-width:820px){
 .soul-refined .home-focus-hero{min-height:650px}
 .home-focus-hero .studio-hero-copy{padding:55px 6%}
 .soul-refined .home-focus-hero h1{font-size:clamp(3.5rem,12.5vw,6rem)}
 .home-focus-hero .studio-hero-photo img{object-position:57% 40%}
 .home-focus-hero::after{background:linear-gradient(90deg,rgba(8,12,16,.83),rgba(8,12,16,.44)),linear-gradient(0deg,rgba(8,12,16,.6),transparent 75%)}
 .home-focus-intro{font-size:1.0625rem;max-width:35ch}
 .home-focus-approach,.home-focus-racing{grid-template-columns:minmax(0,1fr);gap:26px}
 .home-driver-fit{grid-template-columns:minmax(0,1fr);gap:15px;padding:29px 6%}
 .home-focus-section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:27px}
 .home-focus-choices{grid-template-columns:minmax(0,1fr)}
 .home-focus-choice,.home-focus-choice+.home-focus-choice{padding:25px 0;border-left:0}
 .home-focus-choice+.home-focus-choice{border-top:1px solid #52616a}
 .soul-refined .home-focus-choice h3{font-size:1.75rem;margin:14px 0 12px}
 .home-focus-choice p{max-width:55ch;margin-bottom:16px}
 .home-focus-tool-grid{grid-template-columns:minmax(0,1fr);gap:29px}
 .home-focus-tool-grid>article+article{border-top:1px solid #b6c3c9;padding-top:27px}
 .soul-refined :is(.home-focus-approach,.home-focus-sessions,.home-focus-tools,.home-focus-racing) h2{font-size:clamp(2.3rem,8vw,3.4rem)}
 .home-focus-approach p.home-focus-lead{font-size:1.2rem}
}

/* Keep focus and touch controls usable as layouts narrow or text grows. */
.soul-refined :is(select,textarea):focus-visible{outline:2px solid #e96f5d;outline-offset:5px}
.soul-refined :is(.hub-tabs button,.coaching-chapters button,.gallery-navigation button,.session-navigation a){min-height:44px}
.soul-refined .coaching-scrubber input{min-height:44px}
.soul-refined .gallery-navigation button[aria-disabled=true]{opacity:.45;cursor:default}
@media(max-width:820px){.enquiry-actions{max-width:none}}
@media(max-width:380px){
 .soul-refined .home-focus-hero h1,.soul-refined .studio-hero h1,.soul-refined .product-hero h1{font-size:clamp(2.75rem,12vw,3.6rem)}
 .home-focus-actions{align-items:stretch;flex-direction:column;gap:18px}
 .home-focus-actions .button{justify-content:space-between;gap:16px}
}
