/* Coach Sen — editorial visual layer. The base sheet carries the page layout. */
:root{--cocoa:#46342a;--rose:#9d6d76;--paper:#fffaf5}
html{scroll-padding-top:88px}
body{color:var(--cocoa)}
.site-header{background:rgba(250,245,239,.92);border-bottom:1px solid rgba(70,52,42,.14)}
.site-header:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#a7757c;transform:scaleX(0);transform-origin:left;pointer-events:none}
@keyframes reading-progress{to{transform:scaleX(1)}}
@supports (animation-timeline:scroll()){
  .site-header:after{animation:reading-progress 1s linear both;animation-timeline:scroll(root block)}
}
@view-transition{navigation:auto}
::view-transition-old(root){animation:page-out .16s ease-in both}
::view-transition-new(root){animation:page-in .24s ease-out both}
@keyframes page-out{to{opacity:.75}}
@keyframes page-in{from{opacity:.75}to{opacity:1}}
.wordmark{letter-spacing:-.045em}
.nav-links a:not(.button){position:relative;color:var(--cocoa)}
.nav-links a:not(.button):after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--rose);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.nav-links a:not(.button):hover:after,.nav-links a:not(.button):focus-visible:after{transform:scaleX(1)}
.nav-links a:hover,.nav-links a:focus-visible{text-decoration:none}
.button{box-shadow:none;transition:background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}
.button:hover{box-shadow:0 8px 22px rgba(60,46,64,.14)}
.button:after{display:inline-block;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.button:hover:after{transform:translate(3px,-3px)}
.eyebrow{color:#785a58}
h1,h2,h3{color:var(--cocoa)}
.recognition h2,.newsletter h2,.newsletter .eyebrow,.footer h2,.footer h3{color:var(--cream)}
.section{padding-block:clamp(84px,9vw,132px)}
.section.compact{padding-block:clamp(70px,7vw,100px)}

/* Hero: the four-point star sits behind the portrait, never across a face. */
.hero{background:radial-gradient(circle at 11% 89%,rgba(212,189,216,.65),transparent 34%),radial-gradient(circle at 95% 4%,rgba(239,195,173,.72),transparent 31%),#f8f1e9}
.hero:after{opacity:.55}
.hero-inner{gap:clamp(48px,6vw,100px)}
.hero-copy .eyebrow{color:#725356}
.hero h1{font-size:clamp(4.3rem,6.2vw,7.1rem);letter-spacing:-.05em}
.hero h1 .italic{color:#805b6c}
.hero-copy .lead{font-family:var(--serif);font-size:clamp(1.45rem,2vw,2rem);line-height:1.32;color:#513e42;max-width:29ch}
.hero-copy p:not(.lead){max-width:47ch;color:#655750}
.hero-photo{isolation:isolate}
.hero-photo:before{content:none}
.hero-star{position:absolute;z-index:0;width:clamp(135px,16vw,230px);height:auto;left:-17%;top:7%;overflow:visible;fill:#eeb987;filter:drop-shadow(0 10px 24px rgba(123,77,66,.14));transform-origin:center;animation:star-breathe 12s ease-in-out infinite alternate;pointer-events:none}
.hero-photo img{position:relative;z-index:1;display:block}
.hero-photo .caption{z-index:2;bottom:26px;left:-22px;border:1px solid rgba(70,52,42,.15);box-shadow:0 12px 30px rgba(60,46,64,.1)}
@keyframes star-breathe{from{transform:translate3d(0,0,0) rotate(-7deg) scale(.97)}to{transform:translate3d(-3px,-9px,0) rotate(7deg) scale(1.04)}}
@keyframes intro-settle{from{opacity:.72}to{opacity:1}}
.hero-copy,.hero-photo,.page-hero .container{animation:intro-settle .85s cubic-bezier(.2,.75,.2,1) both}
.hero-photo{animation-delay:.12s}

/* The challenge reads as four clear observations, with one warm conclusion. */
.recognition{background:radial-gradient(circle at 100% 100%,rgba(143,100,120,.25),transparent 45%),#3c2e40}
.recognition .eyebrow{color:#efc3ad}
.recognition h2{max-width:950px}
.recognition-grid{gap:0 55px;margin-top:65px}
.recognition-item{display:grid;grid-template-columns:62px 1fr;gap:20px;padding:30px 8px 34px 0;border-top:1px solid rgba(255,255,255,.24);line-height:1.35}
.recognition-item span{font-size:2.9rem;line-height:1;margin:0;color:#efc3ad}
.section-note{max-width:none;margin:65px 0 -125px;padding:38px clamp(30px,5vw,70px);position:relative;z-index:2;background:#eacaba;color:#46342a;border-radius:8px;box-shadow:0 22px 45px rgba(29,20,34,.16);font-size:clamp(2rem,3.2vw,3.35rem)}
.section-note em{color:#73506c}
.recognition + .offers{padding-top:205px}

/* Offers use one featured card and two quieter companions. */
.offer-grid{grid-template-columns:1.08fr 1fr 1fr;gap:18px}
.offer{position:relative;overflow:hidden;isolation:isolate;border-radius:9px;padding:clamp(28px,2.7vw,42px);min-height:475px;box-shadow:0 10px 32px rgba(70,52,42,.04)}
.offer:before{content:'';position:absolute;z-index:-1;width:240px;height:240px;right:-115px;top:-120px;border:1px solid currentColor;border-radius:50%;opacity:.2;box-shadow:0 0 0 31px rgba(255,255,255,.09),0 0 0 70px rgba(255,255,255,.06)}
.offer:first-child{background:#4d3b51;color:#fffaf5;border-color:#4d3b51}
.offer:first-child h3,.offer:first-child .price{color:#fffaf5}
.offer:first-child .number{color:#efc3ad}
.offer:first-child .bottom{border-color:rgba(255,255,255,.35)}
.offer:nth-child(2){background:#efdbd2}
.offer:nth-child(3){background:#e7dce8}
.offer .number{font-size:1.65rem;letter-spacing:.03em}
.offer h3{margin:78px 0 18px;font-size:clamp(2.7rem,3vw,3.5rem)}
.offer p{line-height:1.55}
.offer .text-link{align-self:flex-start}
.offer:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(60,46,64,.11)}

/* Portraits and proof feel intentionally composed. */
.soft .image-frame.arch{isolation:isolate}
.soft .image-frame.arch:before{content:'';position:absolute;inset:25px -18px -18px 18px;border:1px solid rgba(70,52,42,.3);border-radius:50% 50% 4px 4px;z-index:-1}
.soft .split h2{font-size:clamp(3.5rem,5vw,5.8rem)}
.proof-list{gap:8px}
.proof-list span{background:rgba(255,250,245,.35)}
.badges{padding-top:22px}

/* Testimonials become a purposeful, controlled editorial carousel. */
.testimonials{background:#faf4ed}
.testimonial-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}
.testimonial-heading .section-head{margin:0}
.testimonial-controls{display:flex;align-items:center;gap:8px;flex:none;padding-bottom:10px}
.testimonial-count{font-family:var(--serif);font-size:1.6rem;margin-right:16px;color:#7e5d61;min-width:6ch}
.carousel-arrow{width:48px;height:48px;border-radius:50%;border:1px solid #bda9a0;background:transparent;color:var(--cocoa);font-size:1.5rem;line-height:1;cursor:pointer;transition:background .25s ease,color .25s ease}
.carousel-arrow:hover,.carousel-arrow:focus-visible{background:#4d3b51;color:white}
.carousel-arrow:disabled{opacity:.35;cursor:default;background:transparent;color:var(--cocoa)}
.testimonial-grid{margin-top:42px;scrollbar-width:none;gap:18px;outline-offset:5px}
.testimonial-grid::-webkit-scrollbar{display:none}
.testimonial{flex:0 0 calc((100% - 18px)/2);min-height:340px;padding:clamp(30px,3vw,45px);border-radius:8px;background:#fffaf5}
.testimonial,.testimonial .testimonial-by,.testimonial .stars{font-family:var(--sans)}
.testimonial .quote-text{font-family:var(--serif)}
.testimonial:nth-child(3n+2){background:#e8dfe8}
.testimonial .quote-text{font-size:clamp(1.45rem,2vw,1.95rem);line-height:1.27}
.testimonial .stars{font-size:.72rem;opacity:.8}
.testimonial:hover{transform:none;box-shadow:none;border-color:#bba5a7}

/* Process as a graphic beside the explanation. */
.work-section{background:radial-gradient(circle at 95% 85%,rgba(239,195,173,.25),transparent 35%),#f7f0e8}
.work-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(60px,8vw,135px);align-items:center}
.work-copy h2{max-width:640px}
.work-copy .lead{font-size:1.25rem}
.work-copy p{max-width:56ch}
.journey{display:flex;flex-direction:column;gap:0;min-height:0;max-width:none;margin:0;padding:42px 35px 42px 10px;background:#e9ddd8;border-radius:180px 180px 12px 12px;overflow:hidden;--dot-size:62px}
.journey-step{flex-direction:row;align-items:center;text-align:left;min-height:106px;padding:0;gap:30px;z-index:1}
.journey-step:not(:last-child):after{content:'';position:absolute;left:calc(45px + var(--dot-size)/2);top:calc(50% + var(--dot-size)/2 + 7px);height:calc(100% - var(--dot-size) - 14px);width:2px;border-radius:2px;background:#a77677;opacity:.7;transform:scaleY(0);transform-origin:top;transition:transform .65s cubic-bezier(.22,.7,.2,1)}
.journey.is-drawn .journey-step:not(:last-child):after{transform:scaleY(1)}
.journey-step:nth-child(2):after{transition-delay:.12s}.journey-step:nth-child(3):after{transition-delay:.24s}
.journey-dot{flex:none;width:var(--dot-size);height:var(--dot-size);margin:0 0 0 45px;background:#fffaf5;box-shadow:0 0 0 7px #e9ddd8}
.journey-step p{font-size:clamp(1.5rem,2.2vw,2rem);max-width:none}

/* Scroll reveals change opacity in place, so a fast scroll never shifts content. */
.scroll-reveal{opacity:.48;transition:opacity .78s cubic-bezier(.22,1,.36,1)}
.scroll-reveal.is-visible{opacity:1}
/* Keep headings visible even if an older cached script adds the retired class. */
.scroll-reveal--heading,.scroll-reveal--heading.is-visible{opacity:1;clip-path:none;transform:none;transition:none}
.scroll-reveal--image{opacity:.62;transition-duration:1s}
.scroll-reveal--card{opacity:.55;transition-duration:.68s}

/* Inner pages use the same editorial language without repeating the hero. */
.page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 93% 18%,rgba(212,189,216,.72),transparent 32%),linear-gradient(125deg,#ead7c9,#f4e9df)}
.page-hero:after{content:'';position:absolute;right:-18%;top:-78%;width:65%;aspect-ratio:1;border:1px solid rgba(255,255,255,.58);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.12),0 0 0 125px rgba(255,255,255,.09);pointer-events:none}
.page-hero .container{position:relative;z-index:1}
.page-hero h1{font-size:clamp(4.9rem,8.2vw,9.4rem)}
.page-hero h1 .italic{color:#795869}
.detail{padding-block:clamp(82px,8vw,115px)}
@media(min-width:901px){.subnav{position:sticky;top:78px;z-index:15;background:rgba(250,245,239,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(70,52,42,.18)}.subnav a{transition:color .2s ease}.subnav a:hover,.subnav a:focus-visible{color:#8f6372}}
.approach{background:#fffaf5}
.approach-accordion{max-width:980px;margin:65px auto 0;border-bottom:1px solid var(--line)}
.approach-item{border-top:1px solid var(--line);padding:0}
.approach-item summary{list-style:none;display:grid;grid-template-columns:58px 1fr 36px;gap:18px;align-items:center;padding:24px 2px;cursor:pointer;color:var(--cocoa)}
.approach-item summary::-webkit-details-marker{display:none}
.approach-item summary:hover .approach-title{color:#805b6c}
.approach-item .approach-number{font-size:1.5rem;color:#a17880}
.approach-title{font-family:var(--serif);font-size:clamp(1.75rem,2.5vw,2.6rem);line-height:1.1;transition:color .2s ease}
.approach-plus{font-family:var(--sans);font-size:1.6rem;font-weight:300;text-align:center;transition:transform .25s ease}
.approach-item[open] .approach-plus{transform:rotate(45deg)}
.approach-item p{margin:0 65px 28px 76px;color:var(--muted);max-width:70ch}
.whole-person-diagram{--circle-size:430px;width:min(100%,760px);height:520px;margin:70px auto 0;isolation:isolate}
.whole-person-diagram:before{content:'✦';position:absolute;z-index:3;left:50%;top:calc(var(--circle-size)/2);transform:translate(-50%,-50%);font-family:var(--serif);font-size:2.2rem;line-height:1;color:#815f73}
.diagram-orbit{top:0;width:var(--circle-size);height:var(--circle-size);border:1px solid rgba(70,52,42,.22);gap:9px;padding:35px;justify-content:center;align-items:center;text-align:center;box-shadow:inset 0 0 0 12px rgba(255,250,245,.24);transition:background .9s ease}
.diagram-person{left:0;right:auto;padding-right:145px;background:rgba(212,189,216,.42)}
.diagram-business{right:0;left:auto;padding-left:145px;background:rgba(239,195,173,.42)}
.whole-person-diagram.is-drawn .diagram-person{background:rgba(212,189,216,.62)}
.whole-person-diagram.is-drawn .diagram-business{background:rgba(239,195,173,.62)}
.diagram-orbit span{font-size:clamp(2.4rem,3.3vw,3.2rem)}
.diagram-orbit small{max-width:18ch}
.whole-person-diagram figcaption{left:50%;top:calc(var(--circle-size) + 20px);bottom:auto;min-width:0;width:max-content;max-width:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.whole-person-diagram figcaption span{font-size:.72rem;color:#8b6772}
.whole-person-diagram figcaption strong{font-size:2rem}
.experience-strip{background:#fffaf5;border-bottom:1px solid var(--line)}
.experience-strip .container{display:grid;grid-template-columns:repeat(3,1fr)}
.experience-strip .container > div{padding:31px 25px;border-right:1px solid var(--line)}
.experience-strip .container > div:first-child{padding-left:0}
.experience-strip .container > div:last-child{border-right:0}
.experience-strip strong{display:block;font-family:var(--serif);font-size:clamp(1.8rem,2.5vw,2.6rem);font-weight:400;line-height:1.05}
.experience-strip span{display:block;margin-top:6px;font-size:.82rem;letter-spacing:.07em;text-transform:uppercase;color:#71636a}
.about-portrait:before{inset:22px -18px -18px 18px}
.detail .split > div > p:first-of-type:not(.lead){font-size:1.13rem;line-height:1.65}
.form-card{border-radius:8px;box-shadow:0 16px 40px rgba(70,52,42,.06)}
.team-horizon-section{position:relative;overflow:hidden}
.team-horizon-section:after{content:'✦';position:absolute;right:3%;bottom:-55px;color:rgba(157,109,118,.12);font-size:15rem;line-height:1;pointer-events:none}
.offer-grid.two{gap:22px}
.offer-grid.two .offer{min-height:330px}
.offer-grid.two .offer h3{margin:45px 0 14px}
.offer-grid.two .offer .button{background:#fffaf5;color:#46342a;border-color:#fffaf5}
.offer-grid.two .offer:nth-child(2) .button{background:#4d3b51;color:white;border-color:#4d3b51}
.ongoing-team-intro .split{gap:clamp(45px,7vw,110px)}
.ongoing-team-intro h2{font-size:clamp(3.5rem,5.1vw,6rem)}
.ongoing-team-intro .lead{max-width:35ch}
.team-editorial-image,.brand-editorial-image,.newsletter-editorial-image{margin:0;overflow:hidden;position:relative;border-radius:9px}
.team-editorial-image{aspect-ratio:1.18;box-shadow:18px 18px 0 rgba(70,52,42,.09)}
.team-editorial-image img,.brand-editorial-image img,.newsletter-editorial-image img{width:100%;height:100%;object-fit:cover}
.team-editorial-image img{object-position:center}
.team-rhythm-section{background:#fbf6f0;border-top:1px solid rgba(70,52,42,.1)}
.rhythm-heading{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:55px;align-items:end}
.rhythm-heading h2{margin:16px 0 0;max-width:790px}
.rhythm-heading > p{font-size:1.15rem;max-width:32ch;margin:0 0 8px;color:#665a57}
.rhythm-steps{list-style:none;margin:65px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #bea9a1;border-bottom:1px solid #bea9a1}
.rhythm-steps li{position:relative;min-height:315px;padding:34px clamp(22px,3vw,42px) 38px 0}
.rhythm-steps li + li{border-left:1px solid #d9c9c1;padding-left:clamp(22px,3vw,42px)}
.rhythm-number{width:68px;height:68px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid #b58b90;background:#eddfdf;color:#654955;font-family:var(--serif);font-size:1.8rem;line-height:1;box-shadow:0 0 0 8px #fbf6f0}
.rhythm-steps li:nth-child(2) .rhythm-number{background:#e4d9e7}
.rhythm-steps li:nth-child(3) .rhythm-number{background:#ead9c9}
.rhythm-steps h3{font-size:clamp(2.35rem,3vw,3.3rem);margin:35px 0 14px}
.rhythm-steps p{max-width:30ch;margin:0;color:#665a57}
.rhythm-footer{display:flex;align-items:center;gap:20px;padding-top:24px}
.rhythm-loop{font-family:var(--serif);font-size:2.7rem;line-height:1;color:#926d78}
.rhythm-footer p{margin:0;max-width:none;font-family:var(--serif);font-size:1.6rem;line-height:1.2}
.rhythm-footer .text-link{margin-left:auto;white-space:nowrap;font-size:.85rem}
.rhythm-note{font-size:.82rem;color:#766968;margin:12px 0 0 57px}
.brand-section .split{gap:clamp(45px,7vw,115px)}
.brand-section h2{font-size:clamp(3.6rem,5vw,5.8rem)}
.brand-editorial-image{aspect-ratio:1.05;box-shadow:18px 18px 0 rgba(70,52,42,.08)}
.newsletter-editorial-image{aspect-ratio:1.9;max-width:540px;margin-top:38px;opacity:.94}
.footer{background:#302633}
.footer .wordmark{color:#fffaf5}

@media(max-width:1000px){.offer-grid{grid-template-columns:1fr 1fr}.offer:first-child{grid-column:span 2;min-height:360px}.offer:first-child h3{margin-top:52px}.work-layout{gap:55px}.hero-star{left:-12%}}
@media(max-width:900px){.hero-inner{gap:50px}.hero-photo{margin-left:6%}.hero-star{left:-14%}.recognition + .offers{padding-top:175px}.offer-grid{grid-template-columns:1fr 1fr}.work-layout{grid-template-columns:1fr}.work-copy{max-width:760px}.journey{width:min(100%,620px);margin:10px auto 0}.testimonial{flex-basis:70vw}.page-hero:after{width:90%;right:-50%}}
@media(max-width:900px){.ongoing-team-intro .split,.brand-section .split{gap:46px}.team-editorial-image,.brand-editorial-image{aspect-ratio:1.6;max-width:700px}.rhythm-heading{grid-template-columns:1fr;gap:20px}.rhythm-heading > p{max-width:55ch}.rhythm-steps li{padding-right:18px}.rhythm-steps li + li{padding-left:18px}.rhythm-steps h3{font-size:2.5rem}}
@media(max-width:700px){.section-note{margin-bottom:-98px;padding:28px 25px;font-size:2rem}.recognition + .offers{padding-top:150px}.recognition-item{grid-template-columns:45px 1fr;gap:14px}.recognition-item span{font-size:2.2rem}.offer-grid,.offer-grid.two{grid-template-columns:1fr}.offer:first-child{grid-column:auto}.offer{min-height:370px}.offer h3{margin-top:60px}.testimonial-heading{align-items:start;flex-direction:column;gap:20px}.testimonial-heading .section-head{margin:0}.testimonial-controls{padding:0}.testimonial{flex-basis:86vw;min-height:360px}.work-section .journey{padding-right:20px}.experience-strip .container{grid-template-columns:1fr 1fr}.experience-strip .container > div{padding:20px 12px}.experience-strip .container > div:nth-child(2){border-right:0}.experience-strip .container > div:last-child{grid-column:span 2;border-top:1px solid var(--line);padding-left:0}.approach-item summary{grid-template-columns:38px 1fr 30px;gap:10px}.approach-item p{margin-left:48px;margin-right:10px}.whole-person-diagram{--circle-size:clamp(210px,62vw,250px);width:min(100%,400px);height:calc(var(--circle-size) + 105px);margin-top:40px}.diagram-orbit{width:var(--circle-size);height:var(--circle-size);padding:18px;box-shadow:inset 0 0 0 7px rgba(255,250,245,.24)}.diagram-person{left:0;right:auto;padding-right:calc(var(--circle-size)*.32)}.diagram-business{right:0;left:auto;padding-left:calc(var(--circle-size)*.32)}.diagram-orbit span{font-size:clamp(1.5rem,5.8vw,2.2rem)}.diagram-orbit small{font-size:.65rem;letter-spacing:.03em}.whole-person-diagram:before{font-size:1.6rem}.whole-person-diagram figcaption{top:calc(var(--circle-size) + 17px)}.whole-person-diagram figcaption strong{font-size:1.7rem}}
@media(max-width:700px){.rhythm-steps{grid-template-columns:1fr;margin-top:40px}.rhythm-steps li{min-height:0;display:grid;grid-template-columns:68px 1fr;column-gap:20px;padding:25px 0!important}.rhythm-steps li + li{border-left:0;border-top:1px solid #d9c9c1}.rhythm-number{grid-row:1/3;width:58px;height:58px;font-size:1.6rem}.rhythm-steps h3{margin:0 0 8px;font-size:2.35rem}.rhythm-steps p{grid-column:2;max-width:42ch}.rhythm-footer{align-items:flex-start;flex-wrap:wrap;gap:10px 15px}.rhythm-footer p{font-size:1.4rem;flex:1}.rhythm-footer .text-link{width:100%;margin:8px 0 0 55px}.rhythm-note{margin-left:55px}.newsletter-editorial-image{aspect-ratio:2.1;margin-top:24px}}
@media(max-width:600px){.hero h1{font-size:clamp(3.9rem,12vw,5.6rem)}.hero-photo{margin-left:3%}.hero-star{width:145px;left:-15%;top:9%}.hero-photo .caption{left:-8px}.hero-copy .lead{font-size:1.55rem}.section-note{font-size:1.75rem}.recognition-grid{margin-top:45px}.journey{border-radius:120px 120px 10px 10px;--dot-size:52px}.journey-step{min-height:95px;gap:20px}.journey-dot{margin-left:45px}.journey-step p{font-size:1.45rem}.page-hero h1{font-size:clamp(4.1rem,12vw,6rem)}.experience-strip strong{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-star,.hero-copy,.hero-photo,.page-hero .container,.site-header:after,.scroll-reveal.is-visible{animation:none}::view-transition-old(root),::view-transition-new(root){animation-duration:0s}.button:after,.nav-links a:not(.button):after,.carousel-arrow,.approach-plus{transition:none}.offer:hover{transform:none;box-shadow:none}.testimonial-grid{scroll-behavior:auto}.scroll-reveal,.scroll-reveal--heading,.scroll-reveal--image{opacity:1;transform:none;clip-path:none;transition:none}.journey-step:not(:last-child):after{transform:none;transition:none}}

/* Consistent portrait geometry and a tighter transition into the offers. */
.hero-photo,.image-frame.arch{aspect-ratio:5/6;height:auto;min-height:0;max-height:none}
.hero-photo img,.image-frame.arch img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;border-radius:50% 50% 0 0 / 43% 43% 0 0}
.soft .image-frame.arch:before{border-radius:50% 50% 4px 4px / 43% 43% 4px 4px}
.hero-photo img{object-position:center 27%}
.soft .image-frame.arch img{object-position:center 10%}
.about-portrait img{object-position:center top}
.recognition + .offers{padding-top:145px}

/* Keep the introduction intact while placing experience and credentials with the portrait. */
.meet-coach-section .split{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:center}
.coach-photo-column{min-width:0}
.meet-coach-section .coach-photo-column .image-frame{max-width:430px}
.coach-credentials{max-width:480px;padding-top:21px}
.coach-credentials .proof-list{margin:0 0 18px;gap:7px}
.coach-credentials .proof-list span{padding:7px 11px}
.coach-credentials .badges{margin:0;padding-top:0;gap:20px}
.coach-credentials .badges img{width:88px;height:88px}
.meet-coach-section .button{margin-top:12px}

/* Three connected cards, with an open path instead of dividing rules. */
.rhythm-steps{gap:32px;border:0;margin-top:55px}
.rhythm-steps li,.rhythm-steps li + li{min-height:305px;padding:29px 28px 34px;border:0;border-radius:9px;background:#fffaf5;box-shadow:0 12px 28px rgba(70,52,42,.055)}
.rhythm-steps li:nth-child(2){background:#f2eaf0}
.rhythm-steps li:nth-child(3){background:#f0e6dc}
.rhythm-steps li:not(:last-child):after{content:'→';position:absolute;right:-28px;top:45px;z-index:1;width:24px;text-align:center;color:#986e7e;font-family:var(--serif);font-size:2.2rem;line-height:1}
.rhythm-number{box-shadow:none}
.rhythm-steps h3{font-size:clamp(2.1rem,2.7vw,3rem);margin:28px 0 12px}
.rhythm-steps p{max-width:35ch}

/* A brief editorial moment connects measurable progress with the people doing the work. */
.team-measure-section{background:#e9dce5}
.measure-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);align-items:center;gap:clamp(45px,7vw,110px)}
.measure-layout h2{max-width:730px;margin:18px 0 28px}
.measure-layout .lead{max-width:42ch}
.measure-layout p:not(.lead){max-width:56ch}
.measure-layout .text-link{display:inline-block;margin-top:14px}
.measure-quote{position:relative;background:#fffaf5;border-radius:9px;padding:clamp(32px,4vw,58px);box-shadow:18px 18px 0 rgba(70,52,42,.08)}
.quote-mark{font-family:var(--serif);font-size:6rem;line-height:.8;color:#a67e91}
.measure-quote blockquote{font-family:var(--serif);font-size:clamp(2.2rem,3vw,3.55rem);line-height:1.15;margin:12px 0 27px;color:#46342a}
.measure-quote p{font-size:.82rem;color:#665a57;margin:0}
.measure-quote a{color:inherit;text-underline-offset:3px}
.measure-motif{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:36px;font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.measure-motif span{border:1px solid rgba(70,52,42,.3);border-radius:30px;padding:7px 11px}
.measure-motif b{color:#986e7e;font-family:var(--serif);font-size:1.4rem;font-weight:400;line-height:1}
.team-speaking-section{background:#fffaf5;border-top:1px solid rgba(70,52,42,.12)}
@media(max-width:420px){.measure-motif{display:grid;grid-template-columns:1fr;justify-items:start;gap:4px}.measure-motif b{transform:rotate(90deg);margin-left:18px}}

/* Expectations have their own visual structure, with the original descriptions. */
.expectation-panel{padding:32px 0}
.expectation-panel > .eyebrow{display:block;margin-bottom:15px}
.expectation-card{display:grid;grid-template-columns:58px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid rgba(70,52,42,.18)}
.expectation-symbol{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#e8d4d5;color:#704b60;font-family:var(--serif);font-size:1.8rem;line-height:1}
.expectation-card:nth-of-type(2) .expectation-symbol{background:#e6dce9}
.expectation-card:nth-of-type(3) .expectation-symbol{background:#eddfd0}
.expectation-card h3{font-family:var(--serif);font-size:clamp(1.7rem,2.2vw,2.3rem);line-height:1.1;margin:0 0 10px}
.expectation-card p{margin:0;font-size:1rem;line-height:1.55}
.expectation-panel .button{margin-top:28px}

@media(max-width:900px){.recognition + .offers{padding-top:135px}.meet-coach-section .split{grid-template-columns:1fr}.meet-coach-section .coach-photo-column{max-width:560px}.rhythm-steps{gap:20px}.rhythm-steps li,.rhythm-steps li + li{padding:24px 20px}.rhythm-steps li:not(:last-child):after{right:-19px}.measure-layout{grid-template-columns:1fr}.measure-quote{max-width:650px}}
@media(max-width:700px){.recognition + .offers{padding-top:120px}.hero-photo{width:min(100% - 12px,520px);max-width:none}.hero-photo img{object-position:center 25%}.rhythm-steps{grid-template-columns:1fr;gap:34px}.rhythm-steps li,.rhythm-steps li + li{display:grid;grid-template-columns:58px 1fr;gap:0 16px;min-height:0;padding:23px!important;border:0}.rhythm-steps li:not(:last-child):after{content:'↓';top:auto;bottom:-31px;right:calc(50% - 12px)}.rhythm-steps h3{font-size:2.3rem;margin:0 0 9px}.rhythm-steps p{grid-column:2}.coach-credentials .badges img{width:84px;height:84px}}

/* The section navigation spans the viewport; its links stay on the content grid. */
.subnav{display:block;padding:0;background:rgba(250,245,239,.94)}
.subnav-inner{display:flex;gap:30px;flex-wrap:wrap;padding:20px 0}
@media(min-width:901px){#ongoing,#approach,#direction,#brand,#questions{scroll-margin-top:68px}}

/* Personal Strategy pairs a quiet guidance image with three concise sessions. */
.strategy-intro{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(45px,7vw,105px)}
.direction-editorial-image{margin:0;aspect-ratio:1.5;overflow:hidden;border-radius:9px;box-shadow:18px 18px 0 rgba(70,52,42,.08)}
.direction-editorial-image img{display:block;width:100%;height:100%;object-fit:cover}
.strategy-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:68px 0 0;padding:0;list-style:none}
.personal-strategy-section .strategy-step{min-height:230px;padding:27px 28px;border-radius:8px;background:#f2e9e2}
.strategy-step:nth-child(2){background:#eee4eb}
.strategy-step:nth-child(3){background:#ecddd2}
.strategy-step .num{font-family:var(--serif);font-size:2.65rem;line-height:1;color:#93687b}
.strategy-step h3{font-size:clamp(1.8rem,2.2vw,2.4rem);margin:22px 0 12px}
.strategy-step p{margin:0;max-width:34ch}
@media(max-width:900px){.strategy-intro{grid-template-columns:1fr;gap:42px}.direction-editorial-image{max-width:700px}.strategy-steps{margin-top:56px}}
@media(max-width:700px){.strategy-steps{grid-template-columns:1fr;gap:12px;margin-top:42px}.personal-strategy-section .strategy-step{min-height:0;padding:24px}.strategy-step h3{margin:12px 0 8px}}

/* Keep every page inside the mobile viewport, including decorative and flex content. */
html,body{max-width:100%;overflow-x:clip}
.container,.narrow,.split > *,.hero-inner > *,.work-layout > *,.rhythm-heading > *,.measure-layout > *{min-width:0}
@media(max-width:700px){
  .rhythm-footer .text-link{width:calc(100% - 55px);flex-basis:calc(100% - 55px);max-width:calc(100% - 55px)}
  .rhythm-steps li,.rhythm-steps li + li{grid-template-columns:58px minmax(0,1fr)}
  h1,h2,h3{overflow-wrap:break-word}
}
