/* Bru editorial type and scroll narrative. All assets are served locally. */
:root{--serif:'Instrument Serif',Georgia,serif;--sans:'Inter Tight',Arial,sans-serif;--pink:#a7195b;--why-ink:#201d24;--why-paper:#f3edf0;--why-rose:#d6b7c8}
body{font-family:var(--sans)}
h1,h2,h3{letter-spacing:-.035em}
.menu-aside p,.menu-big-links a{font-family:var(--serif)}
.bru-header{padding-block:8px;min-height:80px;gap:36px}
.bru-brand{width:180px}.bru-nav-controls{margin-left:5vw;gap:42px}
.bru-nav-trigger,.bru-book{font-size:14px;letter-spacing:-.015em}.bru-nav-phone{font-size:13px}
.bru-book{gap:30px}.bru-book>span{width:40px;height:40px}
.cinema-title{font-size:clamp(6rem,12vw,14rem);line-height:.92;letter-spacing:-.045em;top:22%}
.cinema-title>span+span{margin-top:0}.cinema-title em{font-size:1.08em}
.people-manifesto h2{line-height:1.02}.solution-info h3{line-height:1.02}
.solutions-intro h2,.clinic-head h2,.section-heading h2,.faq h2{line-height:1.04}
.why-story,.reviews-section{background:var(--why-ink);color:var(--why-paper)}
.why-story{position:relative;--why-split:0;--why-fade:1;--why-orbit:0}
.why-stage{position:relative;isolation:isolate;overflow:hidden;padding:110px 4vw 90px}
.why-phrase{text-align:center;position:relative;z-index:2}
.why-phrase h2{font-size:clamp(64px,8.5vw,160px);line-height:1.05;letter-spacing:-.04em}
.why-phrase em{color:var(--why-rose);padding-bottom:.05em}
.why-left,.why-right{display:inline-block}.why-left{margin-right:.15em}
.why-bottom{display:block}.why-question{color:var(--why-rose);font-size:13px;line-height:1.15;margin-top:36px}
.why-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:920px;margin:70px auto 0}
.why-ball{aspect-ratio:1;border:1px solid #786573;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#29242c}
.why-ball:nth-child(2n){background:#342a34}.why-ball:nth-child(3n){background:#40313e}
.why-ball h3{font-size:clamp(30px,3.6vw,64px);color:var(--why-paper);line-height:1.12}
.why-ball p{color:#d7cbd3;font-size:14px;line-height:1.35;margin-top:12px}
.scroll-ready .why-story{height:280svh}
.scroll-ready .why-stage{position:sticky;top:0;height:100svh;min-height:500px;padding:0}
.scroll-ready .why-phrase{position:absolute;inset:0;opacity:var(--why-fade);pointer-events:none}
.scroll-ready .why-phrase h2{position:absolute;inset:0}
.scroll-ready .why-left,.scroll-ready .why-right{position:absolute;top:38%;white-space:nowrap;margin:0}
.scroll-ready .why-left{left:3%;transform:translateX(calc(var(--why-split)*-36vw))}
.scroll-ready .why-right{right:3%;transform:translateX(calc(var(--why-split)*36vw))}
.scroll-ready .why-bottom{position:absolute;top:55%;left:0;right:0;transform:translateY(calc(var(--why-split)*20vh))}
.scroll-ready .why-question{position:absolute;left:45%;width:10%;top:44%;margin:0;font-size:12px;transform:scale(calc(1 - var(--why-split)*.3))}
.scroll-ready .why-orbit{position:absolute;inset:0;pointer-events:none}
.scroll-ready .why-orbit::before,.scroll-ready .why-orbit::after{content:'';position:absolute;top:50%;width:100vw;height:120vh;border:1px solid #b29ba680;border-radius:50%;transform:translateY(-50%);transition:none}
.scroll-ready .why-orbit::before{right:51%;transform:translateY(-50%) translateX(calc(var(--why-orbit)*-30vw))}
.scroll-ready .why-orbit::after{left:51%;transform:translateY(-50%) translateX(calc(var(--why-orbit)*30vw))}
.scroll-ready .why-reasons{position:absolute;inset:0;margin:0;max-width:none;display:block}
.scroll-ready .why-ball{position:absolute;width:25vw;max-width:370px;transform:translateY(var(--ball-y,110vh)) rotate(var(--ball-rotate,0deg));opacity:var(--ball-opacity,0);will-change:transform,opacity}
.scroll-ready .why-ball:nth-child(1){left:4%;top:4%}.scroll-ready .why-ball:nth-child(2){left:38%;top:1%}.scroll-ready .why-ball:nth-child(3){right:3%;top:6%}
.scroll-ready .why-ball:nth-child(4){left:17%;bottom:3%}.scroll-ready .why-ball:nth-child(5){left:45%;bottom:0}.scroll-ready .why-ball:nth-child(6){right:-5%;bottom:-8%}
.reviews-section{padding:70px var(--gutter) 110px}
.reviews-layout{max-width:1360px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}
.reviews-intro h2{font-size:clamp(58px,6vw,100px);line-height:1.02;margin-bottom:34px}
.reviews-intro em{color:var(--why-rose)}.reviews-rating{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--why-paper)}.reviews-rating strong{font-weight:500;font-size:26px}.reviews-rating span{color:var(--why-rose);letter-spacing:.12em}
.reviews-intro .reviews-link{display:inline-block;border-bottom:1px solid #96828f;padding:8px 0;margin-top:18px;font-size:13px;color:var(--why-paper)}
.review-deck{min-width:0}.review-card{border-top:1px solid #74616e; padding-top:20px}.review-card[hidden]{display:none}
.review-meta{display:flex;justify-content:space-between;align-items:baseline;gap:24px;font-size:14px;color:#d7cbd3}.review-meta cite{font-style:normal;color:var(--why-paper);text-align:right}
.review-card blockquote{margin:0;min-height:290px;display:flex;align-items:center;justify-content:center;text-align:center;padding:34px 8px;font-size:clamp(29px,3.2vw,48px);line-height:1.17;letter-spacing:-.035em;font-weight:400}
.review-source{display:block;text-align:center;font-size:12px;color:#c7b7c3;text-underline-offset:4px;text-decoration:underline}
.review-controls{display:none;align-items:center;justify-content:space-between;margin-top:40px}.reviews-ready .review-controls{display:flex}
.review-controls button{width:86px;height:86px;border-radius:50%;border:1px solid #74616e;background:transparent;color:var(--why-paper);font-size:27px;display:grid;place-items:center;transition:background 180ms ease,transform 160ms cubic-bezier(.23,1,.32,1)}
.review-controls button:active{transform:scale(.96)}.review-count{font-size:16px;font-variant-numeric:tabular-nums}.review-count span{color:#a5909f}
.review-card.review-enter{animation:review-enter 240ms cubic-bezier(.23,1,.32,1)}
.reviews-section :focus-visible{outline:2px solid #e6b6d1;outline-offset:5px}
@keyframes review-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.review-controls button:hover{background:#493542}}
@media(min-width:761px) and (max-width:1000px){.bru-header{gap:22px}.bru-nav-controls{margin-left:0;gap:24px}.scroll-ready .why-phrase h2{font-size:8.3vw}.scroll-ready .why-ball{width:29vw}.why-ball h3{font-size:4.2vw}.reviews-layout{gap:5vw}}
@media(max-width:760px){
 .bru-header{padding:10px 18px;min-height:76px;gap:12px}.bru-brand{width:145px}.bru-nav-controls{margin-left:auto;gap:18px}.bru-nav-trigger{font-size:12px;gap:8px}
 .cinema-title{font-size:17vw;top:29%;line-height:1;left:3%;right:3%}
 .why-stage{padding:90px 22px 70px}.why-phrase h2{font-size:17vw;line-height:1.02}.why-left,.why-right,.why-bottom{display:block;margin:0}
 .why-question{margin-top:26px}.why-reasons{grid-template-columns:1fr 1fr;gap:12px;margin-top:45px}.why-ball h3{font-size:30px}.why-ball p{font-size:12px;margin-top:8px}
 .scroll-ready .why-story{height:270svh}.scroll-ready .why-stage{min-height:580px}
 .scroll-ready .why-left{left:0;right:0;top:29%}.scroll-ready .why-right{left:0;right:0;top:42%}.scroll-ready .why-bottom{top:56%}
 .scroll-ready .why-left{transform:translateX(calc(var(--why-split)*-65vw))}.scroll-ready .why-right{transform:translateX(calc(var(--why-split)*65vw))}
 .scroll-ready .why-question{top:17%;left:40%;width:20%;font-size:12px}.scroll-ready .why-orbit::before,.scroll-ready .why-orbit::after{width:160vw;height:105svh}.scroll-ready .why-orbit::before{right:55%}.scroll-ready .why-orbit::after{left:55%}
 .scroll-ready .why-ball{width:44vw;max-width:230px}.scroll-ready .why-ball:nth-child(1){left:4%;top:5%}.scroll-ready .why-ball:nth-child(2){left:auto;right:4%;top:7%}.scroll-ready .why-ball:nth-child(3){left:3%;right:auto;top:34%}.scroll-ready .why-ball:nth-child(4){left:auto;right:3%;top:36%;bottom:auto}.scroll-ready .why-ball:nth-child(5){left:4%;bottom:10%}.scroll-ready .why-ball:nth-child(6){right:4%;bottom:8%}
 .reviews-section{padding:55px 22px 80px}.reviews-layout{grid-template-columns:1fr;gap:50px}.reviews-intro h2{font-size:58px;margin-bottom:24px}.reviews-rating{font-size:13px}.review-meta{font-size:13px}.review-card blockquote{min-height:240px;font-size:34px;padding:28px 0}.review-controls{margin-top:32px}.review-controls button{width:76px;height:76px}
}
@media(max-width:370px){.bru-header .bru-brand{width:122px}.bru-nav-controls{gap:12px}.bru-nav-trigger{font-size:11px}.why-ball h3{font-size:27px}.review-card blockquote{font-size:29px}}
@media(prefers-reduced-motion:reduce){.review-card.review-enter{animation:none}.review-controls button{transition:none}}

/* Balanced editorial masthead: navigation / original wordmark / appointment. */
.bru-header,.home-page .bru-header{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;padding:8px 3vw;min-height:84px;background:#faf8f9;border-color:#e5dfe2}
.bru-header>.bru-brand{grid-column:2;grid-row:1;width:178px;justify-self:center}
.bru-header .bru-nav-controls{grid-column:1;grid-row:1;margin:0;gap:32px}
.bru-header .bru-nav-trigger{font-size:13px;gap:12px;letter-spacing:.015em}
.bru-header>.bru-book{grid-column:3;grid-row:1;justify-self:end;border:0;padding:0;gap:20px;font-size:13px;color:#352f33;font-weight:400}
.bru-header>.bru-book>span{background:#a7195b;color:white;border:0;width:42px;height:42px}
.menu-lines{height:6px;width:21px}.bru-services{top:98px;border-radius:2px;width:min(1060px,calc(100% - 64px));padding:32px;grid-template-columns:160px 1fr}
.services-top>span{font:32px/1.05 var(--serif);max-width:150px}.services-top .panel-close{margin-top:16px}
.full-menu-body{grid-template-columns:.8fr 1.2fr;gap:9vw}.menu-aside{position:relative}.menu-aside p{font-size:clamp(45px,5.2vw,78px);line-height:1.04;max-width:440px}
.menu-big-links{display:flex;flex-direction:column;gap:0;margin:30px 0}.menu-big-links a{font-size:clamp(32px,3.1vw,47px);display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--nav-line);line-height:1.08}
.menu-big-links a::after{content:'↗';font:20px var(--sans);color:var(--nav-accent);opacity:0;transform:translateX(-6px);transition:opacity 160ms ease,transform 160ms var(--nav-ease)}
.menu-big-links a:hover::after,.menu-big-links a:focus-visible::after{opacity:1;transform:none}.menu-big-links a[aria-current]{color:var(--nav-accent)}
@media(max-width:760px){.bru-header,.home-page .bru-header{grid-template-columns:1fr auto 1fr;min-height:76px;padding:10px 18px;gap:12px}.bru-header>.bru-brand{width:136px}.bru-header .bru-nav-controls{gap:0}.bru-header .bru-nav-trigger{font-size:12px}.bru-header .bru-nav-trigger[data-panel="bru-services"]{display:none}.bru-header>.bru-book{display:flex;font-size:0;gap:0}.bru-header>.bru-book>span{font-size:19px;width:38px;height:38px}.bru-services{top:0;width:100%;grid-template-columns:1fr;padding:22px}.services-top>span{font-size:26px;max-width:none}.services-top .panel-close{margin:0}.full-menu-body{grid-template-columns:1fr;gap:24px}.menu-big-links{margin:22px 0}.menu-big-links a{font-size:34px;padding:10px 0}.menu-big-links a::after{opacity:1;transform:none;font-size:17px}}
@media(max-width:370px){.bru-header>.bru-brand{width:124px}.bru-header .bru-nav-trigger{gap:8px}.menu-lines{width:17px}}
