/* Scoped homepage refinements and additions. */
.hero-visual{inset:0}
.hero-visual:after{display:none}
.hero-media video,.hero-media.is-local video{transform:none}
.orbit-identity>small{line-height:1.4;text-align:center;letter-spacing:.5px}
.voices-foot{color:rgba(var(--page-fg),.72)}
.bridge-trust{margin-bottom:0}
.question-scene{position:relative;margin-top:14svh}
.js .question-scene{height:auto}
.question-pin{min-height:64svh;display:grid;place-items:center;padding:10svh 0}
.js .question-pin{position:relative;min-height:64svh;height:auto}
.question-pin .bridge-title{width:100%;margin:0 auto;max-width:1000px;text-align:center;transform:none}
.question-line{display:block}
.rise-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.09em;margin-bottom:-.09em}
.rise-word>span{display:inline-block}
.js .rise-word>span{transform:translateY(var(--lift,115%));opacity:var(--word-show,0);will-change:transform,opacity}
.js .question-touch .rise-word>span{transform:translate3d(0,var(--lift,115%),0);backface-visibility:hidden;transition:transform .7s cubic-bezier(.16,1,.3,1),opacity .5s ease;transition-delay:calc(var(--question-order,0)*30ms)}
.sphere-story{margin-top:34svh;margin-bottom:28svh}
.js .sphere-story{height:780svh}
.sphere-story .sphere-pin{min-height:100svh}.guided-orbit{width:min(94svh,calc(100vw - 64px));max-width:none}
.sphere-pin.is-arriving .guided-orbit{transition:none}
.sphere-pin.is-arriving .orbit-nodes,.sphere-pin.is-arriving .orbit-identity{opacity:var(--sphere-labels,1)}
.guided-orbit .orbit-label{max-width:145px;white-space:normal;text-align:center}
.ben-story{padding-top:18svh;padding-bottom:18svh}
.story-title{font-size:clamp(52px,6.45vw,100px);letter-spacing:-.04em;line-height:1.05;margin-top:90px}
.ben-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:12vw;align-items:end;margin-top:100px}
.story-portrait{margin:0;width:86%}
.story-portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center;filter:saturate(.7)}
.story-portrait figcaption{font-size:13px;color:rgba(var(--page-fg),.72);margin-top:20px}
.story-editorial{font-size:20px;line-height:1.55;max-width:520px;padding-bottom:60px}
.story-editorial p+p{margin-top:30px;color:rgba(var(--page-fg),.76)}
.reel-scene{position:relative;margin-top:16svh;color:rgb(var(--page-fg));background:rgb(var(--page-bg))}
.js .reel-scene{height:320svh}
.reel-pin{height:100svh;position:sticky;top:0;overflow:hidden;isolation:isolate}
.reel-frame{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(25% + var(--reel-grow,0)*75%);height:calc(14.0625vw + var(--reel-grow,0)*(100% - 14.0625vw));border-radius:calc(6px*(1 - var(--reel-grow,0)));overflow:hidden;isolation:isolate;background:#080b09}
.reel-media{position:absolute;inset:0;z-index:-3;overflow:hidden}
.reel-media video{width:100%;height:100%;object-fit:cover;transform:scale(var(--reel-video-scale,1.12));object-position:50% 40%}
.reel-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,#141716a6,transparent 40%,#14171630),#080c0a35}
.reel-title{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.28em;font-size:clamp(18px,5.8vw,112px);line-height:1.05;letter-spacing:-.045em;white-space:nowrap;pointer-events:none;z-index:3}
.reel-title>span{display:block;flex-shrink:0;will-change:transform}
.reel-title>.reel-pressure-line{display:flex;align-items:baseline;justify-content:center;gap:.25em;will-change:auto}
.reel-pressure-line>span{display:block;will-change:transform}
.reel-performance{transform:translateX(var(--reel-performance-x,0px))}
.reel-pressure{transform:translateX(var(--reel-pressure-x,0px))}
.reel-under{opacity:var(--reel-under-opacity,0)}
.reel-hit{position:absolute;inset:0;width:100%;height:100%;padding:0;z-index:2;border:0}
.reel-hit:focus-visible{outline:2px solid var(--accent);outline-offset:-5px}
.reel-play{position:absolute;left:var(--reel-cursor-x,50%);top:var(--reel-cursor-y,50%);transform:translate(-50%,-50%);display:grid;place-items:center;width:72px;height:72px;border:1px solid #f0efe959;border-radius:50%;background:#101310c9;color:var(--paper);backdrop-filter:blur(10px);font-size:14px;opacity:0;pointer-events:none;z-index:4;transition:opacity .2s,left .12s ease-out,top .12s ease-out}
.reel-pin.has-pointer .reel-play,.reel-pin:focus-within .reel-play{opacity:1}
.reel-base{position:absolute;left:24px;right:24px;bottom:32px;text-align:center;font-size:14px;line-height:1.4;z-index:3;pointer-events:none}
.review-reel-tools{display:flex;flex-wrap:wrap;gap:12px 24px;margin:26px 0}
.review-reel-tools .asset-note{width:100%}
.reel-caption{padding-top:6svh;padding-bottom:4svh;text-align:center}
@media(hover:hover) and (pointer:fine){.reel-hit{cursor:none}}
@media(hover:none){.reel-play{opacity:1;width:44px;height:44px;font-size:12px}}
#reel-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;margin:0;border:0;background:#080b09;color:var(--paper);overflow:hidden}
#reel-dialog::backdrop{background:#080b09}
#reel-player{width:100%;height:100%;max-height:none;object-fit:contain;background:#080b09}
.reel-close{position:absolute;top:22px;right:22px;width:48px;height:48px;border-radius:50%;font-size:32px;background:#0c130db8;border:1px solid #c3cdc366;z-index:2}
#reel-dialog .reel-player-note{position:absolute;top:28px;left:28px;right:95px;font-size:14px;line-height:1.4;margin:0;color:#e0e7dc;pointer-events:none}
.services-viewport{margin-left:calc(-1*var(--pad));margin-right:calc(-1*var(--pad));margin-top:78px;overflow:hidden}
.drag-strip{scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;scroll-snap-type:x mandatory;touch-action:pan-x pan-y}
.drag-strip::-webkit-scrollbar{display:none}.drag-strip.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.drag-strip.is-dragging button{cursor:grabbing}
.service-track{display:flex;gap:18px;overflow-x:auto;padding:0 var(--pad) 12px;scroll-padding-left:var(--pad)}
.service-item{flex:0 0 36vw;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;transition-delay:calc(var(--item-order)*130ms)!important}
.service-tile{width:100%;aspect-ratio:4/5.3;position:relative;overflow:hidden;border-radius:9px;background:linear-gradient(150deg,#637363,#273d2e 70%);color:var(--paper);isolation:isolate}
.service-item:nth-child(2) .service-tile{background:linear-gradient(140deg,#445447,#1a2c23 70%)}
.service-item:nth-child(3) .service-tile{background:linear-gradient(155deg,#777b7a,#333c3d 48%,#141f22)}
.service-tile>video,.service-tile>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.service-tile.has-video:after,.service-tile.has-image:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#080d0b26,#080d0b66)}
.service-open{position:absolute;inset:0;width:100%;height:100%;padding:0;text-align:center}
.service-name{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(30px,3.3vw,53px);line-height:1.1;letter-spacing:-.04em;transition:top .55s cubic-bezier(.2,.65,.3,1)}
.service-media-edit{position:absolute;top:15px;right:15px;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid #f0efe938;background:#0b160e30;font-size:23px;z-index:3;opacity:0;transition:opacity .25s}
.service-detail{position:absolute;left:0;right:0;bottom:0;min-height:43%;padding:clamp(22px,2.5vw,40px);background:#17271eee;backdrop-filter:blur(14px);transform:translateY(101%);visibility:hidden;transition:transform .55s cubic-bezier(.2,.65,.3,1),visibility .55s;z-index:2}
.service-item:nth-child(2) .service-detail{background:#132219f0}
.service-item:nth-child(3) .service-detail{background:#202a2cf0}
.service-detail>p{font-size:clamp(18px,1.6vw,24px);line-height:1.3;letter-spacing:-.015em}
.service-detail ul{list-style:disc;margin:18px 0 12px;padding-left:17px;font-size:clamp(14px,1.1vw,17px);line-height:1.5;color:#d2d8d0}
.service-detail li+li{margin-top:5px}
.service-detail .quiet-button{font-size:14px;gap:18px;padding:5px 0;color:var(--paper)}
.service-item.is-open .service-detail{transform:none;visibility:visible}
.service-item.is-open .service-name{top:26%}
.service-item.is-open .service-media-edit,.service-item:focus-within .service-media-edit{opacity:1}
.service-caption{padding-top:26px;min-height:70px}
.service-caption h3{font-size:21px;line-height:1.3;letter-spacing:-.015em}

@media(hover:none){.service-media-edit{opacity:1}}
.service-navigation{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;color:#b3bfb0}
.service-navigation>div{display:flex;gap:12px}
.service-navigation .circle-button:disabled,.testimonial-arrows .circle-button:disabled{opacity:.3;cursor:default}
.portal{min-height:100svh;padding-top:8svh;padding-bottom:20svh;display:flex;flex-direction:column;justify-content:center;margin-top:0}
.portal h2{font-size:clamp(48px,6.45vw,100px);line-height:1.08;letter-spacing:-.04em;margin-top:70px}
.line-mask{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.line-mask>span{display:block}
.portal-columns{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-top:90px;margin-left:22%}
.portal-column h3{font-size:27px;line-height:1.2;letter-spacing:-.02em}.portal-column p{font-size:18px;line-height:1.5;color:#bbc6b7;margin-top:20px;max-width:370px}
.portal-actions{display:flex;justify-content:space-between;gap:40px;margin-top:70px;border-top:1px solid #8da28c44;border-bottom:1px solid #8da28c44;padding:24px 0}
.portal-actions button{display:flex;align-items:center;gap:40px;font-size:17px;min-height:44px;padding:0}.portal-actions button span{font-size:24px;color:inherit}
.js .portal.reveal{opacity:1;transform:none}.js .portal .line-mask>span{transform:translateY(115%);transition:transform 1s cubic-bezier(.2,.65,.3,1);transition-delay:140ms}
.js .portal .line-mask+ .line-mask>span{transition-delay:300ms}.js .portal.in-view .line-mask>span{transform:none}
.js .portal-column,.js .portal-actions{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s;transition-delay:.7s}
.js .portal-column:nth-child(2){transition-delay:.85s}.js .portal-actions{transition-delay:1s}
.js .portal.in-view.columns-in-view .portal-column,.js .portal.in-view.columns-in-view .portal-actions{opacity:1;transform:none}
.written-testimonials{padding-top:18svh;padding-bottom:18svh;overflow:hidden}
.testimonials-heading{display:flex;justify-content:space-between;align-items:center;gap:50px;margin-bottom:120px}
.testimonials-heading h2{font-size:clamp(43px,5.7vw,90px);line-height:1.04;letter-spacing:-.045em;text-align:right}
.testimonial-arrows{display:flex;gap:12px;flex-shrink:0}
.quote-track{display:flex;gap:8vw;overflow-x:auto;padding:0 var(--pad) 50px;scroll-padding-left:var(--pad)}
.quote-slide{position:relative;flex:0 0 70vw;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;padding:35px 6vw 10px 0;isolation:isolate}
.quote-slide blockquote{margin:0;font-size:clamp(65px,7vw,112px);line-height:1.03;letter-spacing:-.045em;min-height:3.3em}
.quote-mark{position:absolute;z-index:-1;top:-55px;right:10%;font-size:clamp(260px,34vw,550px);line-height:1;color:#bdcbbb0d;transform:translateX(var(--quote-mark-x,0px));pointer-events:none}
.quote-person{display:flex;align-items:center;gap:20px;margin-top:48px;min-height:64px}
.quote-headshot{width:64px;height:64px;background:#626660;border-radius:50%;flex-shrink:0}
.quote-person p{font-size:13px;letter-spacing:.9px;text-transform:uppercase;line-height:1.5}.quote-person p+p{color:#aab7a5;margin-top:5px}
.js .quote-slide .line-mask>span{transform:translateY(115%);opacity:0;transition:transform .85s cubic-bezier(.2,.65,.3,1),opacity .65s}
.js .quote-slide .line-mask:nth-child(2)>span{transition-delay:.13s}.js .quote-slide .line-mask:nth-child(3)>span{transition-delay:.26s}
.js .quote-slide .quote-person{opacity:0;transform:translateY(20px);transition:opacity .7s .5s,transform .7s .5s}
.js .quote-slide.is-visible .line-mask>span,.js .quote-slide.is-visible .quote-person{transform:none;opacity:1}
.quote-navigation{display:flex;align-items:center;gap:36px;margin-top:30px}
.quote-progress{position:relative;flex:1;height:1px;background:#95a89144;overflow:hidden}.quote-progress>span{display:block;height:1px;width:12.5%;background:var(--accent);transform:translateX(var(--quote-progress,0%))}

.voices-progress i{width:16.666667%}
#dialog-image{display:block;width:100%;max-height:42svh;object-fit:contain;margin:20px 0;background:#0b100d}
#dialog-image[hidden]{display:none}
.closing-scene{position:relative;margin-top:10svh;overflow:clip;background:var(--dark);color:var(--paper)}
.closing-surface{transform:translateY(var(--close-rise,0px));will-change:transform}
.close{position:relative;isolation:isolate;overflow:hidden;padding-top:16svh;padding-bottom:16svh;min-height:90svh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.editorial-footer{display:grid;grid-template-columns:1fr 1fr;gap:70px 12vw;padding-top:70px;padding-bottom:45px;position:relative}
.editorial-footer:before{content:'';position:absolute;top:0;left:var(--pad);right:var(--pad);height:1px;background:#8da28c44}
.footer-signature{display:flex;flex-direction:column;align-items:flex-start;font-size:18px;line-height:1.4}
.footer-wordmark{font-size:clamp(42px,4.3vw,64px);line-height:1;letter-spacing:.12em;margin-right:-.12em;margin-bottom:32px}
.footer-signature small{font-size:14px;line-height:1.5;color:#aab7a5;margin-top:8px}
.footer-links{display:grid;grid-template-columns:1fr 1fr;align-content:start;column-gap:38px;row-gap:12px;padding-top:10px}
.footer-links button,.footer-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;padding:8px 0;font-size:14px;line-height:1.4;text-align:left}
.footer-links span{color:inherit;font-size:18px}
.footer-colophon{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;font-size:12px;line-height:1.5;color:#aab7a5}

@media(max-width:900px){.service-item{flex-basis:42vw}.service-name{font-size:clamp(28px,3.7vw,40px)}.ben-story-grid{gap:8vw}.story-editorial{font-size:18px;padding-bottom:0}.portal-columns{margin-left:10%}}
@media(max-width:600px){
 .question-scene{margin-top:14svh}.js .question-scene{height:auto}.question-pin{padding:10svh 0}.question-pin .bridge-title{margin:0 auto}
 .sphere-story{margin-top:30svh;margin-bottom:25svh}.js .sphere-story{height:770svh}.guided-orbit{width:calc(100vw - 44px);max-width:none}.guided-orbit .orbit-label{max-width:120px}.sphere-introduction{top:105px}
 .ben-story{padding-top:100px;padding-bottom:100px}.ben-story .section-heading{gap:16px}.story-title{font-size:45px;line-height:1.08;margin-top:55px}.story-title br{display:none}.ben-story-grid{display:flex;flex-direction:column;gap:60px;margin-top:65px}.story-portrait{width:86%;align-self:flex-start}.story-editorial{font-size:18px;line-height:1.55;margin-left:12%}.story-editorial p+p{margin-top:26px}
 .reel-scene{margin-top:15svh}.reel-base{bottom:26px;font-size:13px}.reel-caption{padding-top:44px;padding-bottom:20px}
 .services-viewport{margin-top:52px}.service-track{gap:12px}.service-item{flex-basis:64vw}.service-tile{border-radius:8px;aspect-ratio:4/6.8}.service-name{font-size:clamp(25px,6.5vw,38px)}.service-detail{padding:16px 17px;min-height:48%}.service-detail>p{font-size:16px}.service-detail ul{font-size:14px;line-height:1.4;margin-top:14px}.service-detail .quiet-button{font-size:13px;gap:12px}.service-caption{padding-top:22px;min-height:60px}.service-caption h3{font-size:20px}.service-media-edit{top:10px;right:10px;width:36px;height:36px;font-size:22px}.service-navigation{margin-top:20px;gap:14px}.service-navigation .eyebrow{font-size:12px;letter-spacing:.3px}.service-navigation .circle-button{width:40px;height:40px;font-size:20px}.service-navigation>div{gap:8px}
 .portal{margin-top:0;min-height:100svh;padding-top:56px;padding-bottom:100px}.portal h2{font-size:clamp(32px,8.7vw,52px);margin-top:50px;letter-spacing:-.04em}.portal-columns{grid-template-columns:1fr;gap:38px;margin:55px 0 0 12%}.portal-column h3{font-size:25px}.portal-column p{font-size:17px;margin-top:15px}.portal-actions{gap:18px;padding:20px 0;margin-top:50px}.portal-actions button{font-size:14px;gap:10px;text-align:left}.portal-actions button span{font-size:20px}
 .written-testimonials{padding-top:100px;padding-bottom:90px}.testimonials-heading{margin-bottom:70px;gap:20px}.testimonials-heading h2{font-size:42px;width:100%;text-align:right}.testimonial-arrows{display:none}.quote-track{gap:24px;padding-bottom:25px}.quote-slide{flex-basis:calc(100vw - 48px);padding:20px 0 0}.quote-slide blockquote{font-size:clamp(64px,17vw,90px)}.quote-mark{font-size:300px;right:0;top:-25px}.quote-person{gap:16px;margin-top:38px}.quote-headshot{width:54px;height:54px}.quote-person p{font-size:12px}.quote-navigation{margin-top:30px;gap:25px}
 .closing-scene{margin-top:5svh}.close{min-height:85svh;padding-top:90px;padding-bottom:100px}.editorial-footer{grid-template-columns:1fr;gap:44px;padding-top:50px;padding-bottom:85px}.footer-wordmark{font-size:44px;margin-bottom:26px}.footer-links{padding-top:0;gap:10px 25px}.footer-links button,.footer-links a{font-size:14px;gap:14px}.footer-colophon{flex-wrap:wrap;gap:16px 24px}.footer-colophon span:last-child{width:100%}
 #reel-dialog .reel-player-note{top:25px;left:20px;right:85px;font-size:12px}.reel-close{top:18px;right:18px}
}
@media(max-height:650px) and (min-width:601px){.guided-orbit{width:min(85svh,calc(100vw - 64px))}.sphere-pin{min-height:550px}}
@media(max-width:600px) and (max-height:700px){.sphere-pin.is-mental .guided-orbit{top:24%;transform:translate(-50%,-50%) scale(.58)}.sphere-pin.is-mental .chapter-copy{top:42%}.sphere-pin.is-mental .chapter-copy h3{font-size:29px}.sphere-pin.is-mental .chapter-copy .eyebrow{margin-bottom:12px}.sphere-pin.is-mental .chapter-copy>p{margin-top:16px}}
@media(prefers-reduced-motion:reduce){
 .js .question-scene{height:auto}.question-pin,.js .question-pin{position:relative;height:auto;min-height:85svh}.js .rise-word>span{transform:none;opacity:1}
 .js .sphere-story{height:100svh}.sphere-pin.is-arriving .orbit-nodes,.sphere-pin.is-arriving .orbit-identity{opacity:1}
 .js .reel-scene{height:auto}.reel-pin{position:relative}.reel-frame{width:100%;height:100%}.reel-media video{transform:none}.reel-title>span,.reel-pressure-line>span{transform:none;opacity:1}.reel-play{opacity:1}
 .js .portal .line-mask>span,.js .portal-column,.js .portal-actions,.js .quote-slide .line-mask>span,.js .quote-slide .quote-person{transform:none;opacity:1}.quote-mark{transform:none}.service-item{transition-delay:0s!important}.service-detail,.service-name{transition:none}.closing-surface{transform:none;will-change:auto}
}

/* Final narrative additions. The existing section geometry remains the reference. */
.sphere-introduction p{max-width:600px;margin-left:auto;margin-right:auto}
.sphere-outcome{padding-top:7svh;padding-bottom:18svh}
/* Return the full sphere, hold it, then keep it pinned behind the rising outcome. */
.js .sphere-story{height:calc(950svh + var(--sphere-outcome-height,0px));margin-bottom:0}
.js .sphere-outcome{position:relative;z-index:5;isolation:isolate;margin-top:calc(-100svh - var(--sphere-outcome-height,0px))}
.js .sphere-outcome:before{content:'';position:absolute;inset:-24svh 0 0;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,transparent 0,var(--dark) 24svh);opacity:var(--outcome-cover,0)}
.js .guided-orbit{opacity:var(--sphere-exit-opacity,1)}
.js .sphere-pin.is-returning .guided-orbit{transition:none}
.js .sphere-pin.is-receding .orbit-nodes,.js .sphere-pin.is-receding .orbit-identity{opacity:var(--sphere-detail-opacity,1)}
.sphere-pin.is-lingering .guided-orbit canvas{animation:sphere-afterglow 6.5s ease-in-out infinite}
@keyframes sphere-afterglow{0%,100%{transform:scale(.975);filter:brightness(1.35) drop-shadow(0 0 18px #a4c6ab29);opacity:.9}50%{transform:scale(1.025);filter:brightness(1.75) drop-shadow(0 0 28px #a4c6ab4d);opacity:1}}
.js .sphere-scene-heading,.js .sphere-scene-bottom{opacity:var(--sphere-chrome-opacity,1)}
@media(max-width:600px){.js .sphere-story{height:calc(940svh + var(--sphere-outcome-height,0px))}}
@media(prefers-reduced-motion:reduce){.js .sphere-story{height:100svh;margin-bottom:28svh}.js .sphere-outcome{margin-top:0}.js .sphere-outcome:before{display:none}.js .guided-orbit,.js .sphere-scene-heading,.js .sphere-scene-bottom{opacity:1}.reel-scene{background:var(--dark);color:var(--paper)}}
.sphere-outcome h2{font-size:clamp(44px,5.8vw,90px);line-height:1.06;letter-spacing:-.04em;max-width:1200px}
.sphere-outcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:12vw;margin-top:100px;align-items:start}
.outcome-quote{margin:0;max-width:540px}.outcome-quote blockquote{margin:0;font-size:clamp(23px,2.3vw,35px);line-height:1.35;letter-spacing:-.02em;color:#ccd4c8}
.outcome-quote figcaption{margin-top:28px;font-size:13px;letter-spacing:.7px;text-transform:uppercase;color:#aab7a5}
.outcome-copy{max-width:510px;margin-top:95px;font-size:20px;line-height:1.55}.outcome-copy .quiet-button{font-size:16px;margin-top:35px;gap:25px;color:var(--paper)}.outcome-copy .quiet-button span{color:inherit}
.system-takeaway{max-width:850px;font-size:clamp(28px,3.3vw,50px);line-height:1.2;letter-spacing:-.025em;margin:18svh 0 0 auto;padding-top:45px;border-top:1px solid #8da28c44}
.perspective-copy{max-width:870px;margin:32px auto 0;font-size:clamp(28px,3.4vw,52px);line-height:1.17;letter-spacing:-.025em;text-wrap:pretty}
.close-photo{position:absolute;inset:-80px 0;z-index:-2;transform:translateY(var(--close-photo-y,0px));will-change:transform}
.close-photo img{width:100%;height:100%;object-fit:cover;object-position:43% 45%;filter:saturate(.18);opacity:.54}
.close-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#141716 0%,#14171612 35%,#14171645 75%,#141716 100%),linear-gradient(90deg,#141716cc,#14171670 65%,#14171620)}
@media(max-width:600px){.sphere-introduction p{max-width:290px}.sphere-outcome{padding-top:25px;padding-bottom:100px}.sphere-outcome h2{font-size:clamp(36px,8.8vw,53px)}.sphere-outcome-grid{grid-template-columns:1fr;gap:60px;margin-top:55px}.outcome-quote blockquote{font-size:24px}.outcome-copy{margin:0 0 0 10%;font-size:18px}.outcome-copy .quiet-button{font-size:14px;gap:16px}.system-takeaway{margin-top:100px;font-size:30px;padding-top:30px}.perspective-copy{font-size:30px;margin-top:26px}.close-photo img{object-position:42% 50%;opacity:.44}.close-shade{background:linear-gradient(0deg,#141716,transparent 36%,#14171680 75%,#141716),#14171670}}
@media(max-width:600px) and (max-height:700px){.sphere-introduction{top:75px}.sphere-introduction p{font-size:13px;line-height:1.4;margin-top:12px}}
@media(prefers-reduced-motion:reduce){.js .question-pin,.close-photo{transform:none;will-change:auto}}

/* Offer copy stays in the existing rising panels, with room for short-screen reading. */
.service-detail--offer{max-height:78%;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#9ca8a155 transparent;touch-action:pan-y}
.service-detail--offer .service-summary{font-size:clamp(14px,1.1vw,17px);line-height:1.45;letter-spacing:0;color:#d2d8d0;margin-top:14px}
.service-item.is-open:has(.service-detail--offer) .service-name{top:13%}
@media(max-width:600px){.service-detail--offer{padding:16px 17px}.service-detail--offer>p:first-child{font-size:16px;line-height:1.3}.service-detail--offer .service-summary{font-size:14px;line-height:1.4;margin-top:10px}.service-detail--offer ul{font-size:14px;line-height:1.4;margin:12px 0 8px}.service-detail--offer li+li{margin-top:4px}.service-item.is-open:has(.service-detail--offer) .service-name{top:11%}}


/* Ways to work: image accordion on desktop, fixed-width swipe panels on mobile. */
.service-accordion .service-detail{overflow-y:auto;overscroll-behavior-y:contain}
.service-accordion .service-open:focus-visible{outline-offset:-5px;border-radius:inherit}
.service-accordion .service-detail>p,.service-accordion .service-detail>ul,.service-accordion .service-detail>.quiet-button{opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .4s cubic-bezier(.22,1,.36,1)}
.service-accordion .is-open .service-detail>p,.service-accordion .is-open .service-detail>ul,.service-accordion .is-open .service-detail>.quiet-button{opacity:1;transform:none;transition-delay:.16s}
.service-accordion .is-open .service-detail>ul{transition-delay:.22s}
.service-accordion .is-open .service-detail>.quiet-button{transition-delay:.28s}
@media(min-width:901px){
 .service-accordion{gap:18px;overflow-x:clip;scroll-snap-type:none;cursor:default}
 .service-accordion>.service-item{flex:1 1 0;scroll-snap-align:none}
 .js .service-accordion>.service-item{transition:flex-grow .6s cubic-bezier(.22,1,.36,1),opacity .8s ease,transform 1s cubic-bezier(.2,.65,.3,1);transition-delay:0s,calc(var(--item-order)*130ms),calc(var(--item-order)*130ms)!important}
 .service-accordion>.service-item.is-open{flex-grow:3}
 .service-accordion .service-tile{height:clamp(460px,43vw,680px);aspect-ratio:auto}
 .service-accordion .service-tile:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:#c9d2c024;backdrop-filter:blur(2px);opacity:0;transition:opacity .4s ease}
 .service-accordion.has-active>.service-item:not(.is-open) .service-tile:before{opacity:1}
 .service-accordion .service-name{white-space:nowrap;font-size:clamp(26px,3.3vw,48px);transition:top .55s cubic-bezier(.2,.65,.3,1),font-size .5s ease,opacity .4s ease}
 .service-accordion.has-active>.service-item:not(.is-open) .service-name{font-size:clamp(16px,1.65vw,25px);opacity:.7}
 .service-accordion>.service-item.is-open .service-name{top:22%}
 .service-accordion .service-detail{max-height:65%;touch-action:pan-y}
 .service-navigation>div{display:none}
}
@media(max-width:900px){
 .service-accordion{gap:12px;overflow-x:auto;scroll-snap-type:x mandatory}
 .service-accordion>.service-item,.service-accordion>.service-item.is-open{flex:0 0 calc((100vw - var(--pad) - 12px)/1.5)}
 .service-accordion .service-detail{touch-action:pan-x pan-y}
}

/* 9 October: written proof and the HOLOS introduction. */
.work{padding-bottom:0}
.work-testimonials{padding-top:clamp(80px,10svh,130px);padding-bottom:clamp(150px,18svh,220px)}
.work-testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(40px,7vw,120px);max-width:1300px;margin:auto}
.work-testimonial{margin:0;max-width:360px}
.work-headshot{width:100px;aspect-ratio:1;border:1px solid rgba(var(--page-fg),.22);border-radius:50%;display:grid;place-items:center;background:rgba(var(--page-fg),.035);font-size:11px;line-height:1.45;letter-spacing:.3px;text-align:center;color:rgba(var(--page-fg),.65)}
.work-testimonial blockquote{margin:32px 0 28px;font-size:clamp(22px,2vw,30px);line-height:1.4;letter-spacing:-.015em;min-height:2.8em}
.work-testimonial figcaption{font-size:14px;line-height:1.5}.work-testimonial figcaption small{display:block;font-size:12px;margin-top:5px;color:rgba(var(--page-fg),.65)}
.approach{position:relative;isolation:isolate;overflow:clip;padding-top:12svh;padding-bottom:10svh}
.approach-grid{margin-bottom:30px}.approach-copy{color:rgba(var(--page-fg),.86)}
/* First guided scene, its chapters and its retreat retain their original timeline. */
.sphere-outcome-grid{display:block;max-width:620px;margin:clamp(50px,7svh,90px) 0 0 auto}
.outcome-copy{margin-top:0;max-width:620px}
.story-quote{margin:32px 0 0}.story-quote blockquote{margin:0;font-size:clamp(23px,2.2vw,32px);line-height:1.35;letter-spacing:-.02em}
.story-quote figcaption{font-size:13px;line-height:1.5;margin-top:18px;color:rgba(var(--page-fg),.7)}
.story-link{margin-top:32px;padding-bottom:7px;border-bottom:1px solid var(--accent);font-size:15px}
.story-editorial{padding-bottom:0}.ben-story-grid{align-items:center}
.circle-button:hover,.round-arrow:hover{color:inherit;border-color:var(--accent)}
.close-cta .round-arrow{border-color:var(--accent)}
.orbit-node.selected .orbit-dot{box-shadow:0 0 0 4px #7ebb9122}
.orbit-identity[aria-pressed=true]{border-color:#7ebb91a6;box-shadow:none}
.hero,.sphere-story,.sphere-outcome,.close,.editorial-footer,dialog,.review-panel{--accent:#7ebb91}
@media(max-width:900px){.work-testimonial-grid{gap:36px}.work-headshot{width:86px}.work-testimonial blockquote{font-size:23px}}
@media(max-width:600px){
.work-testimonials{padding-top:64px;padding-bottom:80px}.work-testimonial-grid{grid-template-columns:1fr;gap:72px;max-width:400px}.work-testimonial{max-width:none}.work-headshot{width:88px}.work-testimonial blockquote{margin:25px 0 22px;min-height:0;font-size:25px}
.approach{padding-top:75px;padding-bottom:65px}.approach-grid{margin-bottom:0}.approach-copy{margin-left:0;font-size:18px;line-height:1.5}
.sphere-outcome-grid{margin-top:45px}.outcome-copy{margin-top:0}.story-quote{margin-top:30px}.story-link{margin-top:28px}
}


/* Whole-person explanation leads into the diagram. No Sphere behind section 02. */
.approach{padding-bottom:4svh;overflow:visible;isolation:auto}
.approach-copy{max-width:510px;font-size:20px;line-height:1.55;margin-top:clamp(140px,16svh,200px)}
.approach-grid{margin-bottom:0}
.approach-thread{display:block;width:1px;height:64px;margin:36px 0 0 2px;background:linear-gradient(rgba(var(--page-fg),.5),rgba(var(--page-fg),.06))}
.sphere-story{margin-top:8svh}
.work-quote-label{margin-top:30px;font-size:11px;line-height:1.5;letter-spacing:1px;color:rgba(var(--page-fg),.6)}
.work-testimonial blockquote{margin-top:15px;min-height:0}
@media(max-width:760px){
 .work-testimonial-grid{grid-template-columns:1fr;gap:104px;max-width:400px}
 .work-testimonial{max-width:350px;width:calc(100% - 16px)}
 .work-testimonial:nth-child(even){margin-left:auto}
 .work-headshot{width:88px}.work-testimonial blockquote{font-size:24px;line-height:1.45}
}
@media(max-width:600px){
 .bridge-intro{margin-top:46px}
 .work-heading{margin-bottom:76px}.work-tile+.work-tile{margin-top:112px}
 .work-testimonials{padding-top:76px;padding-bottom:140px}
 .work-quote-label{margin-top:28px}.work-testimonial blockquote{margin-top:15px;margin-bottom:28px}
 .approach{padding-top:80px;padding-bottom:32px}
 .approach .section-heading,.ben-story .section-heading{flex-direction:column;align-items:flex-start;gap:10px}
 .approach .section-heading .eyebrow:last-child,.ben-story .section-heading .eyebrow:last-child{font-size:10px;letter-spacing:1px;color:rgba(var(--page-fg),.66)}
 .approach-title{font-size:clamp(38px,10.3vw,50px);line-height:1.08;margin-top:64px;max-width:15ch}
 .approach-grid{gap:72px;margin-top:76px}
 .approach-statement{max-width:13ch;font-size:clamp(28px,7.6vw,34px);line-height:1.18}
 .approach-copy{width:calc(100% - 24px);max-width:32ch;margin-left:auto;margin-top:0;font-size:18px;line-height:1.65}
 .approach-thread{height:48px;margin-top:30px}
 .sphere-story{margin-top:8svh}
 .sphere-outcome-grid{margin-top:60px}.outcome-copy{line-height:1.65}
 .voices{padding-top:112px;padding-bottom:90px}.voices-heading{margin-bottom:56px}
 .ben-story-grid{gap:80px}.story-editorial{width:calc(100% - 20px);max-width:32ch;margin-left:auto;line-height:1.65}.story-editorial p+p{margin-top:38px}
 .story-quote{margin-top:48px}.story-link{margin-top:36px}
 .reel-caption{padding-top:64px}.perspective-copy{font-size:clamp(26px,7.5vw,30px);line-height:1.3}
 .ways{padding-top:110px}.services-viewport{margin-top:64px}
 .portal-columns{gap:52px}.portal-column p{line-height:1.6}
}

/* Two homepage doors: private coaching, and speaking / organisations. */
.ways--two-doors .service-item:nth-child(2) .service-name{white-space:normal;text-align:center;width:90%;font-size:clamp(25px,3.2vw,48px)}
.ways--two-doors .service-item:nth-child(2) .service-tile>img{object-position:center 65%}
@media(min-width:901px){.ways--two-doors .service-accordion>.service-item.is-open{flex-grow:1.8}.ways--two-doors .service-accordion.has-active>.service-item:not(.is-open) .service-name{font-size:clamp(24px,2.5vw,38px)}.ways--two-doors .service-navigation{display:none}}
@media(max-width:900px){.ways--two-doors .service-item:nth-child(2) .service-name{font-size:clamp(20px,4.7vw,38px)}.ways--two-doors .service-caption h3{font-size:clamp(17px,3vw,24px)}}
