/* A collection of distinct editorial experiences, composed for Benessair. */
.treatment-theatre{--card:340px;--pitch:365px;overflow:hidden;background:#e9edf0;padding:100px 0 65px}.theatre-heading{text-align:center;margin-bottom:55px}.theatre-heading h2{font-size:clamp(46px,5.4vw,82px);line-height:1.12;margin-bottom:28px}.theatre-heading h2 span{color:#728798}.theatre-heading>p:last-child{margin:auto;color:#536c7a;font-size:16px}.treatment-stage{height:435px;position:relative;touch-action:pan-y}.treatment-deck{height:100%;position:relative;max-width:1600px;margin:auto}.treatment-slide{position:absolute;top:0;left:calc(50% - var(--card)/2);width:var(--card);padding:12px;background:#fdfdfb;border:1px solid #d6dfe3;border-radius:15px;text-align:left;transform:translateX(calc(var(--offset)*var(--pitch))) translateY(calc(var(--distance)*17px)) rotate(calc(var(--offset)*2deg)) scale(.88);opacity:.5;z-index:1;transition:transform .55s cubic-bezier(.2,.7,.2,1),opacity .45s,box-shadow .45s;box-shadow:0 12px 28px #15374407}.treatment-slide[aria-selected=true]{transform:translateX(0) translateY(0) rotate(0) scale(1);opacity:1;z-index:3;box-shadow:0 22px 45px #15374412}.treatment-slide:hover{opacity:1}.slide-kind{display:block;font-size:12px;padding:7px 6px 15px;color:#567386;line-height:1.5}.slide-photo{display:block;overflow:hidden;border-radius:8px;aspect-ratio:1.05}.slide-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.slide-name{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:18px;letter-spacing:-.025em;padding:19px 6px 8px;line-height:1.4}.slide-name svg{width:20px}.theatre-controls{display:flex;justify-content:center;align-items:center;gap:26px;position:relative;margin:25px 0}.theatre-controls button{border:1px solid #b4c4ce;border-radius:50%;background:transparent;width:44px;height:44px;display:grid;place-items:center}.theatre-controls button:hover{background:#fff}.theatre-prev svg{transform:rotate(180deg)}.theatre-position{font-size:12px;color:#4a6879;font-variant-numeric:tabular-nums;min-width:53px;text-align:center}.treatment-dossier{max-width:580px;width:calc(100% - var(--gutter)*2);margin:auto;background:#fff;border-radius:12px;padding:35px 38px;box-shadow:0 18px 40px #15374406}.treatment-dossier h3{font-size:36px;line-height:1.16;margin-bottom:20px}.treatment-dossier .eyebrow{font-size:12px;margin-bottom:18px;color:#4f768c}.treatment-dossier [role=tabpanel]>p:not(.eyebrow){font-size:16px;color:#4d6878}.treatment-question{margin-top:25px;padding-top:22px;border-top:1px solid #d5e0e5}.treatment-question>span{font-size:12px;color:#647d89}.treatment-question p{font-size:16px;margin-top:8px}.treatment-dossier .button{width:100%;margin-top:20px}.theatre-note{text-align:center;font-size:12px;color:#637b8a;margin:30px auto 0;padding:0 var(--gutter)}
@media(max-width:900px){.treatment-theatre{--card:310px;--pitch:328px}.treatment-stage{height:410px}.theatre-heading h2{font-size:58px}}
@media(max-width:650px){.treatment-theatre{--card:270px;--pitch:274px;padding:75px 0 50px}.theatre-heading{margin-bottom:32px}.theatre-heading h2{font-size:42px;line-height:1.12}.theatre-heading>p:last-child{max-width:260px}.treatment-stage{height:370px}.slide-kind{font-size:12px}.slide-name{font-size:17px}.slide-photo{aspect-ratio:1.08}.theatre-controls{margin:8px 0 20px}.treatment-dossier{padding:28px 25px}.treatment-dossier h3{font-size:32px}.theatre-note{font-size:12px}.treatment-slide{opacity:.42}.treatment-slide[aria-selected=true]{opacity:1}}
@media(max-width:360px){.treatment-theatre{--card:238px;--pitch:247px}.treatment-stage{height:340px}.theatre-heading h2{font-size:36px}.treatment-dossier h3{font-size:29px}}
@media(prefers-reduced-motion:reduce){.treatment-slide{transition:none}}
/* The opening statement uses photography as punctuation. */
.living-manifesto{text-align:center;background:#fafbf8}.living-manifesto h2{font-size:clamp(44px,6vw,90px);line-height:1.23;letter-spacing:-.055em;margin:35px auto}.inline-moment{display:inline-block;width:100px;height:64px;border-radius:60px;overflow:hidden;vertical-align:middle;margin:0 17px;transform:rotate(-5deg)}.inline-moment.wide{width:156px;height:75px;transform:rotate(4deg)}.inline-moment img{width:100%;height:100%;object-fit:cover}.living-manifesto .wrap>p:not(.eyebrow){max-width:535px;margin:38px auto 12px;font-size:17px;color:#547083}.living-manifesto .button{min-width:265px}
.open-house{background:#dae4e9;padding-bottom:110px;overflow:hidden}.open-house-canvas{position:relative;min-height:810px}.open-house h2{position:absolute;left:5%;top:20px;font-size:clamp(65px,8vw,125px);z-index:3;line-height:.98;letter-spacing:-.06em}.open-house h2 span{color:#567e95}.house-main{position:absolute;right:0;top:80px;width:70%;height:535px}.house-main img{width:100%;height:100%;object-fit:cover}.house-main figcaption{font-size:12px;padding-top:14px;color:#557084}.house-detail{position:absolute;width:33%;height:265px;left:0;top:340px;border:10px solid #dae4e9;border-left:0;z-index:4}.house-detail img{height:100%;width:100%;object-fit:cover}.house-note{position:absolute;left:36%;top:675px;max-width:390px}.house-note>span{font-size:12px;color:#53758a}.house-note p{font-size:28px;line-height:1.35;margin-top:15px;letter-spacing:-.035em}.house-note .button{margin-top:15px}.house-film{position:absolute;right:0;top:680px;background:transparent;border:0;display:flex;align-items:center;gap:18px;font-size:14px}.house-film>span{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;border:1px solid #7f9baa}.house-film svg{width:20px}
/* A functional map: the person at the centre of four connected services. */
.care-compass{background:#0d293b;color:#f7fafb;overflow:hidden;padding-bottom:80px}.care-compass header{text-align:center}.care-compass header h2{margin-bottom:25px;font-size:clamp(46px,5.4vw,82px)}.care-compass header h2 span{color:#9ab6c9}.care-compass header>p:last-child{margin:auto;color:#a8c0cf;font-size:16px}.compass-canvas{position:relative;height:570px;max-width:1080px;margin:20px auto 0}.compass-orbit{position:absolute;width:430px;height:430px;border:1px solid #64839870;border-radius:50%;top:65px;left:calc(50% - 215px)}.compass-orbit:before,.compass-orbit:after{content:'';position:absolute;width:calc(100% + 90px);height:calc(100% + 90px);left:-45px;top:-45px;border:1px dashed #64839835;border-radius:50%}.compass-orbit:after{width:calc(100% - 90px);height:calc(100% - 90px);left:45px;top:45px;border-style:solid}.compass-core{position:absolute;width:210px;height:210px;left:calc(50% - 105px);top:175px;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:50%;background:#23445a;border:1px solid #7295a855;text-align:center;z-index:2}.compass-core>span{font-size:13px;line-height:1.5;color:#abc4d3}.compass-core strong{font-size:64px;letter-spacing:-.05em;font-weight:400;line-height:1.3}.compass-node{position:absolute;background:#122f42;color:#c0d0da;border:1px solid #486477;padding:17px 20px;border-radius:8px;display:flex;align-items:center;gap:16px;min-width:230px;z-index:4;font-size:15px;transition:background .25s,color .25s}.compass-node span{font-size:12px;opacity:.65}.compass-node svg{margin-left:auto;width:18px}.compass-node[aria-selected=true]{background:#e9f1f5;color:#14384f;border-color:#e9f1f5;box-shadow:0 8px 40px #0002}.node-0{left:calc(50% - 115px);top:36px}.node-1{right:3%;top:245px}.node-2{left:calc(50% - 115px);top:465px}.node-3{left:3%;top:245px}.compass-photo{position:absolute;z-index:1;border:7px solid #214153;box-shadow:0 10px 25px #0002}.compass-photo img{width:100%;height:100%;object-fit:cover}.compass-photo-one{width:135px;height:155px;top:54px;left:7%;transform:rotate(-9deg)}.compass-photo-two{width:150px;height:105px;bottom:63px;right:9%;transform:rotate(8deg)}.compass-caption{position:absolute;right:3%;top:120px;font-size:12px;color:#91acbd;max-width:130px}.compass-detail{max-width:620px;margin:5px auto 0;text-align:center;min-height:238px}.compass-detail h3{font-size:36px;margin-bottom:20px}.compass-detail p{color:#abc2d0;font-size:16px}.compass-detail .button{min-width:275px;margin-top:14px}
.life-panorama{position:relative;min-height:720px;height:85svh;max-height:1000px;color:white;background:#365e6a;isolation:isolate;display:flex;align-items:flex-end}.life-panorama>figure{position:absolute;inset:0;z-index:-2}.life-panorama>figure img{width:100%;height:100%;object-fit:cover;object-position:center}.life-panorama:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#08222be8,#08222b00 95%)}.life-panorama-copy{padding:80px var(--gutter);width:100%}.life-panorama h2{font-size:clamp(50px,5.4vw,85px);max-width:890px;margin-bottom:25px}.life-panorama-copy>p:not(.eyebrow){max-width:460px;font-size:16px}.life-panorama .button{margin-top:27px;min-width:240px}.panorama-caption{position:absolute;right:var(--gutter);bottom:85px;font-size:12px;writing-mode:vertical-rl}
.physician-portrait{background:#f8faf9;text-align:center;overflow:hidden}.physician-portrait h2{font-size:clamp(52px,6.5vw,100px);margin-bottom:0}.physician-portrait h2 span{color:#7e9aac}.portrait-composition{position:relative;max-width:1060px;margin:55px auto 35px;min-height:600px}.portrait-composition figure{width:430px;height:590px;margin:auto}.portrait-composition img{height:100%;width:100%;object-fit:cover;object-position:center 15%}.portrait-label{position:absolute;top:130px;left:3%;font-size:18px;text-align:left;line-height:1.5;color:#7993a3;letter-spacing:-.03em}.portrait-name{position:absolute;right:0;bottom:65px;text-align:left;font-size:66px;letter-spacing:-.06em;line-height:1.05;padding:25px;background:#f8faf9}.portrait-name small{display:block;font-size:13px;letter-spacing:.01em;line-height:1.65;margin-top:22px;color:#658194}.portrait-letter{max-width:565px;margin:auto}.portrait-letter>p{font-size:18px;line-height:1.8;color:#526f82}.portrait-letter .button{margin-top:20px;min-width:300px}
/* Four scenes, revealed with native scrolling or explicit chapter controls. */
.visit-story{background:#0b2232;color:#f7fbfd;position:relative;padding:65px var(--gutter) 25px}.story-sticky{max-width:1440px;margin:auto}.story-top{border-top:1px solid #59748377;padding-top:25px;position:relative}.story-top .eyebrow{font-size:12px;color:#98b6c8;margin-bottom:12px}.story-top h2{font-size:27px;letter-spacing:-.03em;line-height:1.4;margin-bottom:30px}.story-scroll{position:absolute;top:25px;right:0;font-size:12px;color:#94afbf}.story-scroll>span{margin-left:25px}.story-body{position:relative;padding-left:110px}.story-rail{position:absolute;left:0;top:40px;bottom:40px;flex-direction:column;align-items:stretch;gap:0;justify-content:space-between;width:85px;z-index:5}.story-step{position:relative;border:0;border-right:1px solid #436071;background:none;color:#8ca8ba;text-align:left;padding:15px 15px 15px 0;font-size:13px;line-height:1.8;min-height:70px}.story-step span{display:block;font-size:12px}.story-step i{position:absolute;right:-4px;top:50%;width:7px;height:7px;background:#456676;border-radius:50%}.story-step[aria-pressed=true]{color:white}.story-step[aria-pressed=true] i{background:white;box-shadow:0 0 0 7px #ffffff0b}.story-scenes{position:relative;min-height:590px}.story-scene{position:relative;min-height:590px;padding:0 0 35px;margin-bottom:45px}.story-title{position:relative;z-index:3;padding-top:30px;pointer-events:none}.story-title .eyebrow{color:#a7c3d5;font-size:12px;margin-bottom:15px}.story-title h3{font-size:clamp(45px,5.3vw,79px);line-height:1.06;max-width:720px;letter-spacing:-.055em}.story-photo{position:absolute;right:0;top:25px;width:63%;height:405px;transform:rotate(2deg);opacity:.77}.story-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b2232a0,transparent 60%)}.story-photo img{height:100%;width:100%;object-fit:cover}.story-photo figcaption{font-size:11px;position:absolute;bottom:12px;right:15px;z-index:1}.story-paper{position:relative;margin:38px 0 0 5%;z-index:4;background:#eef3f3;color:#193d52;width:360px;padding:25px 29px 15px;transform:rotate(-3deg);box-shadow:0 15px 50px #0002}.paper-kicker{font-size:12px;color:#6d8796}.story-paper h4{font-weight:400;font-size:24px;line-height:1.3;letter-spacing:-.04em;margin:18px 0}.story-paper ul{list-style:none;padding:0;margin:0}.story-paper li{display:flex;gap:18px;border-top:1px solid #cfdcde;font-size:14px;padding:12px 0;line-height:1.5}.story-paper li>span{font-size:11px;color:#819ba8;padding-top:2px}.paper-signoff{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#5d7c8e;border-top:1px solid #cbd9dd;padding-top:10px;margin-top:3px}.paper-signoff>span{font-size:27px;font-family:Georgia,serif;font-style:italic}.story-context{position:absolute;bottom:25px;right:1%;width:43%;z-index:4;padding:24px 0 0 20px}.story-context>p{font-size:16px;color:#afc5d3;max-width:400px}.story-context .button{min-width:245px;margin-top:10px}.story-chapter{position:absolute;right:-15px;bottom:3px;font-size:215px;line-height:1;color:#ffffff04;letter-spacing:-.08em;pointer-events:none}.story-footer{display:flex;justify-content:space-between;border-top:1px solid #426073;padding-top:20px;font-size:12px;color:#9bb8c9;max-width:none}.story-counter{font-variant-numeric:tabular-nums}.visit-story.is-enhanced .story-scene{margin-bottom:0}.visit-story.is-enhanced.is-scroll-story{height:310svh;padding-top:0}.is-scroll-story .story-sticky{position:sticky;top:78px;height:calc(100svh - 78px);min-height:680px;padding-top:24px}.is-scroll-story .story-body{height:calc(100% - 162px)}.is-scroll-story .story-scenes,.is-scroll-story .story-scene{height:100%;min-height:550px}.is-scroll-story .story-photo{height:66%;max-height:440px}.is-scroll-story .story-paper{margin-top:34px}.is-scroll-story .story-context{bottom:35px}.visit-story:not(.is-enhanced) .story-rail,.visit-story:not(.is-scroll-story) .story-scroll{display:none}.visit-story:not(.is-enhanced) .story-body{padding-left:0}
.voices-section{text-align:center;background:#edf2f3}.review-seal{width:135px;height:135px;border:1px solid #a0b8c5;border-radius:50%;margin:0 auto 45px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-8deg)}.review-seal strong{font-size:37px;font-weight:400;line-height:1.3;letter-spacing:-.06em}.review-seal>span{font-size:13px;letter-spacing:3px}.review-seal small{font-size:10px;margin-top:6px}.voices-section blockquote{margin:0}.voices-section blockquote p{font-size:clamp(38px,4.4vw,67px);line-height:1.24;letter-spacing:-.05em;max-width:1100px;margin:auto}.voices-section blockquote p span{color:#718fa3}.voices-section cite{display:block;font-size:14px;font-style:normal;margin-top:30px}.voices-section>.wrap>.button{margin-top:20px;min-width:245px}.voices-section .review-note{margin-top:65px;border-top:1px solid #c6d5de;padding-top:20px;font-size:12px}.route-home .faq-section>.wrap{display:block;max-width:850px}.route-home .faq-section h2{text-align:center;margin-bottom:50px}.route-home .faq-section .faq{width:100%}.route-home .valley-card{margin:auto;text-align:center;background:#f8faf5e8;padding:50px;width:min(580px,100%);backdrop-filter:blur(10px)}.route-home .valley-card h2{font-size:58px}.route-home .cinema-strip{display:none}.route-home .cinema-section{padding-bottom:90px}
@media(min-width:1600px){.story-paper{margin-top:50px}.story-photo{width:64%}}
@media(max-width:1100px){.story-title h3{font-size:62px}.story-paper{width:320px;margin-left:0;padding:22px}.story-body{padding-left:90px}.story-rail{width:65px}.story-context{width:43%;padding-left:12px}.story-context .button{min-width:0;width:100%}.compass-photo-one{left:0}.compass-photo-two{right:2%}.node-1{right:0}.node-3{left:0}.portrait-composition figure{width:390px}.portrait-name{font-size:53px;right:0}.portrait-label{left:0}.house-film{top:720px}.house-note{left:20%}}
@media(max-width:800px){.living-manifesto h2{font-size:52px}.inline-moment{width:75px;height:45px;margin:0 8px}.inline-moment.wide{width:110px;height:52px}.open-house-canvas{min-height:750px}.open-house h2{font-size:85px;left:0}.house-main{top:125px;width:80%;height:390px}.house-detail{top:325px;width:40%;height:180px}.house-note{top:575px;left:0}.house-film{top:650px}.house-note p{font-size:26px}.compass-node{min-width:190px;padding:15px;font-size:14px;gap:10px}.node-0,.node-2{left:calc(50% - 95px)}.compass-photo-one,.compass-photo-two,.compass-caption{display:none}.compass-core{width:170px;height:170px;left:calc(50% - 85px);top:190px}.compass-core strong{font-size:52px}.compass-orbit{width:360px;height:410px;left:calc(50% - 180px);top:65px}.portrait-label{top:40px;font-size:15px}.portrait-name{font-size:44px;right:-5px;bottom:0}.portrait-composition figure{width:340px;height:520px}.portrait-composition{min-height:555px}.life-panorama{height:720px;min-height:0}.life-panorama>figure img{object-position:58% center}.panorama-caption{display:none}.visit-story{padding:55px var(--gutter) 30px}.story-top h2{font-size:25px;max-width:420px}.story-top .eyebrow{font-size:11px}.story-body{padding:0}.story-rail{position:relative;inset:auto;flex-direction:row;display:flex;width:100%;gap:15px;margin-bottom:25px}.story-step{border:0;border-bottom:1px solid #456676;width:25%;padding:10px 0;font-size:13px;min-height:0}.story-step i{right:auto;left:0;top:auto;bottom:-4px}.story-step span{display:inline;margin-right:8px;font-size:11px}.story-scenes,.story-scene{min-height:750px}.story-title{padding-top:0}.story-title h3{font-size:58px}.story-photo{top:150px;right:0;width:83%;height:335px;opacity:.9}.story-paper{margin-top:135px;max-width:320px;width:55%;padding:22px;min-height:230px}.story-paper h4{font-size:22px}.story-context{position:relative;bottom:auto;right:auto;padding:0;margin:45px 0 20px 12%;width:85%;max-width:450px}.story-chapter{bottom:150px;font-size:160px}.story-photo:after{background:linear-gradient(0deg,#0b223250,transparent)}.story-footer{font-size:11px}.story-scroll{display:none}}
@media(max-width:550px){.living-manifesto h2{font-size:40px;line-height:1.25}.inline-moment{width:59px;height:36px}.inline-moment.wide{width:78px;height:42px}.living-manifesto .wrap>p:not(.eyebrow){font-size:16px}.open-house{padding-bottom:65px}.open-house-canvas{min-height:690px}.open-house h2{font-size:67px;top:10px}.house-main{top:130px;width:83%;height:280px}.house-main figcaption{font-size:11px;text-align:right}.house-detail{top:285px;width:45%;height:160px;border-width:6px}.house-note{top:490px;left:0}.house-note p{font-size:25px}.house-film{top:555px;right:0;flex-direction:column;width:90px;gap:10px;font-size:12px;line-height:1.4}.house-film>span{height:55px;width:55px}.house-note .button{font-size:12px;gap:15px}.care-compass header h2{font-size:43px}.care-compass header>p:last-child{font-size:15px}.compass-canvas{height:475px;margin-top:30px}.compass-orbit{width:220px;height:310px;left:calc(50% - 110px);top:55px}.compass-orbit:before{width:calc(100% + 50px);left:-25px;height:calc(100% + 50px);top:-25px}.compass-orbit:after{display:none}.compass-core{width:140px;height:140px;left:calc(50% - 70px);top:165px}.compass-core>span{font-size:11px}.compass-core strong{font-size:43px}.compass-node{min-width:0;gap:8px;font-size:13px;padding:13px 12px}.compass-node svg{width:15px}.compass-node>span{font-size:11px}.node-0{top:33px;left:calc(50% - 92px);width:184px}.node-1{top:136px;right:-3px}.node-2{top:387px;left:calc(50% - 92px);width:184px}.node-3{top:304px;left:-3px}.compass-detail{min-height:275px}.compass-detail h3{font-size:32px}.compass-detail .button{min-width:0;width:100%}.life-panorama{height:720px}.life-panorama-copy{padding:55px var(--gutter)}.life-panorama h2{font-size:48px}.life-panorama>figure img{object-position:55% center}.physician-portrait h2{font-size:48px}.portrait-composition{margin-top:35px;min-height:465px}.portrait-composition figure{width:75%;height:390px;margin:0 0 0 auto}.portrait-name{font-size:39px;right:auto;left:-10px;bottom:0;padding:17px;line-height:1.08}.portrait-name small{font-size:12px;margin-top:13px}.portrait-label{writing-mode:vertical-rl;top:20px;left:0;font-size:12px}.portrait-letter>p{font-size:16px}.portrait-letter .button{min-width:0;width:100%}.story-top h2{font-size:25px}.story-step{font-size:11px}.story-step span{display:block;margin:0;font-size:12px}.story-rail{gap:12px}.story-title h3{font-size:44px}.story-scenes,.story-scene{min-height:790px}.story-photo{top:140px;width:89%;height:275px}.story-paper{margin-top:150px;width:85%;max-width:300px;padding:22px 24px;min-height:0}.story-paper h4{font-size:22px}.story-paper li{font-size:13px;padding:11px 0}.story-context{width:100%;margin:38px 0 15px}.story-context>p{font-size:16px}.story-context .button{width:100%;font-size:13px}.story-footer{line-height:1.5;gap:30px}.story-counter{white-space:nowrap}.voices-section blockquote p{font-size:36px}.voices-section .review-note{display:block;font-size:11px}.voices-section .review-note span{display:block;margin-top:12px}.review-seal{width:120px;height:120px}.route-home .valley-card{padding:35px 22px}.route-home .valley-card h2{font-size:44px}.route-home .valley-section{min-height:650px}.route-home .valley-card address{font-size:14px}}
@media(max-width:360px){.living-manifesto h2{font-size:34px}.inline-moment{width:47px;margin:0 4px}.inline-moment.wide{width:70px}.open-house h2{font-size:58px}.house-note p{font-size:22px}.house-note .button{font-size:11px;gap:10px}.house-film{width:60px;font-size:11px}.compass-node{font-size:12px}.compass-core{width:124px;height:124px;left:calc(50% - 62px);top:169px}.compass-detail h3{font-size:30px}.physician-portrait h2{font-size:40px}.story-title h3{font-size:37px}.story-paper{width:90%}.story-scenes,.story-scene{min-height:820px}.voices-section blockquote p{font-size:30px}}
@media(prefers-reduced-motion:reduce){.compass-node{transition:none}.is-scroll-story .story-sticky{position:relative}}
.story-rail{display:flex}
/* Readability corrections verified across light and dark sections. */
.house-main figcaption,.house-note>span,.treatment-question>span,.theatre-note,.portrait-label,.portrait-name small{color:#486477}
.physician-portrait h2 span,.personal-invitation h2 span{color:#617e90}
.paper-kicker,.story-paper li>span,.paper-signoff{color:#486477;font-size:12px}
.editorial-rows .row-number,.step-number,.rating strong span{color:#4f6a78;font-size:12px}
.evidence-section .row-number{color:#b7ceda}
.evidence-grid .small{color:#52646d}
.evidence-section .evidence-grid .small{color:#b4c9d4}
.process-cards p,.care-paths p,.related-links p,.team-card p,.contact-options p{font-size:16px}
.site-header nav a,.site-header .header-cta,.story-step,.slide-kind{font-size:14px}
.story-step span,.story-footer,.story-photo figcaption,.cinema-time,.review-seal small{font-size:12px}
body[data-header-theme="overlay"] .site-header:not(.is-scrolled){background:linear-gradient(180deg,#061928d6,#061928a3)}
.page-hero.immersive .hero-description{font-size:16px}
@media(max-width:650px){body.route-concierge-doctor[data-header-theme="overlay"] .site-header:not(.is-scrolled){background:var(--paper)}}
.map-directions{position:relative;display:block;min-height:420px;overflow:hidden;background:#123449;color:white;isolation:isolate}
.map-directions>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.map-directions:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#082333f2,#08233310);z-index:-1}
.map-directions-copy{display:flex;flex-direction:column;gap:12px;padding:32px;position:absolute;bottom:0;left:0;right:0}
.map-directions-copy>span{font-size:14px;display:flex;align-items:center;gap:20px}
.map-directions-copy>strong{font-size:32px;font-weight:400;line-height:1.2;letter-spacing:-.04em}
.map-directions:hover .map-directions-copy>span:last-child{text-decoration:underline;text-underline-offset:5px}
.route-first-visit .page-hero> .wrap>figure{height:auto;aspect-ratio:1.15}
@media(max-width:650px){.route-first-visit .page-hero> .wrap>figure{aspect-ratio:1.45}.map-directions{min-height:350px}.map-directions-copy{padding:25px}.map-directions-copy>strong{font-size:29px}}
@media(max-width:650px){.page-hero h1 br{display:none}}
/* Keep inactive treatment names readable while the photographs recede. */
.treatment-slide{opacity:1;background:#f8fafb}
.treatment-slide .slide-photo{opacity:.5;transition:opacity .35s}
.treatment-slide[aria-selected=true] .slide-photo,.treatment-slide:hover .slide-photo{opacity:1}
@media(prefers-reduced-motion:reduce){.treatment-slide .slide-photo{transition:none}}
.story-step i{right:0}
@media(min-width:801px) and (max-width:1100px){.story-rail{width:80px}.story-body{padding-left:105px}.story-step{padding-right:10px}}
.is-scroll-story .story-sticky{display:flex;flex-direction:column}
.is-scroll-story .story-top{flex:none}
.is-scroll-story .story-body{flex:1;min-height:0;height:auto}
.is-scroll-story .story-scenes,.is-scroll-story .story-scene{height:100%;min-height:0}
.is-scroll-story .story-footer{flex:none;margin:0;padding:14px 0;line-height:1.5}

/* Requested composition and scroll refinements. */
.personal-invitation .eyebrow,.voices-section>.wrap>.eyebrow,.theatre-heading>.eyebrow,.care-compass header>.eyebrow{max-width:none;width:100%;margin-inline:auto;text-align:center}
.review-seal{width:176px;height:176px;padding:25px;transform:none;gap:3px}
.review-seal strong{font-size:42px;line-height:1.1}
.review-seal>span{font-size:15px;letter-spacing:3px;white-space:nowrap}
.review-seal small{font-size:12px;line-height:1.4;text-align:center;width:110px;max-width:100%;margin-top:5px;text-wrap:balance}
.house-main img{object-position:45% center}
.is-scroll-story .story-sticky{min-height:0}
.is-flow-story .story-rail{position:sticky;top:78px;display:flex;flex-direction:row;width:100%;padding:12px 0;background:#0b2232;z-index:8;gap:18px;margin:0 0 30px}
.is-flow-story .story-step{width:25%;border:0;border-bottom:1px solid #456676;padding:8px 0;min-height:0}
.is-flow-story .story-step i{top:auto;bottom:-4px;right:0}
.is-flow-story .story-body{padding-left:0}
.is-flow-story .story-scene{margin-bottom:80px!important;scroll-margin-top:195px}
.is-flow-story .story-scene:last-child{margin-bottom:20px!important}
@media(min-width:801px) and (max-height:899px){
 .is-scroll-story .story-top{padding-top:12px}
 .is-scroll-story .story-top .eyebrow{margin-bottom:6px}
 .is-scroll-story .story-top h2{font-size:22px;margin-bottom:12px}
 .is-scroll-story .story-sticky{padding-top:10px}
 .is-scroll-story .story-title{padding-top:10px}
 .is-scroll-story .story-title .eyebrow{margin-bottom:8px}
 .is-scroll-story .story-title h3{font-size:clamp(36px,3.8vw,54px)}
 .is-scroll-story .story-photo{top:10px;height:52%;width:56%}
 .is-scroll-story .story-paper{margin-top:18px;width:300px;padding:14px 20px 10px}
 .is-scroll-story .story-paper h4{font-size:21px;margin:10px 0}
 .is-scroll-story .story-paper li{padding:7px 0}
 .is-scroll-story .story-context{bottom:20px;width:44%;padding-top:0}
 .is-scroll-story .story-context>p{font-size:16px;line-height:1.5}
 .is-scroll-story .story-context .button{margin-top:8px;padding-block:10px;min-height:44px}
 .is-scroll-story .story-footer{padding:10px 0}
}
.visit-story.is-enhanced.is-scroll-story{padding-bottom:0}
/* Let immersive heroes grow with their content instead of overflowing a fixed viewport box. */
.page-hero.immersive{height:auto;max-height:none;min-height:90svh;align-items:center;padding-block:160px 110px}
.page-hero.immersive>.wrap{margin-block:0}
.page-hero.immersive .actions{flex-wrap:wrap;row-gap:20px}
.route-services .page-hero.immersive h1{font-size:clamp(52px,5.5vw,88px);max-width:850px;line-height:1.08}
.route-services .page-hero.immersive .eyebrow{margin-top:0}
.route-services .page-hero.immersive .hero-description{max-width:520px;font-size:16px}
@media(max-width:650px){
 .page-hero.immersive{padding-block:135px 90px;min-height:0}
 .route-services .page-hero.immersive h1{font-size:clamp(44px,10.8vw,66px)}
 .route-services .page-hero.immersive .actions{align-items:flex-start;flex-direction:column;gap:12px}
 .route-services .page-hero.immersive .actions .link{min-height:48px}
}

/* Three consistent call-to-action variants, across every page and section. */
body .button{display:inline-flex!important;align-items:center!important;justify-content:space-between!important;flex:none!important;width:260px!important;max-width:100%!important;min-width:0!important;height:64px!important;min-height:64px!important;padding:16px 22px!important;gap:20px!important;font-size:14px!important;font-weight:600!important;line-height:20px!important;letter-spacing:0!important;text-align:left!important;border:1px solid transparent!important;border-radius:0!important;box-shadow:none!important;text-decoration:none!important;box-sizing:border-box!important;white-space:normal!important}
body .button svg{width:22px!important;height:22px!important;flex:none!important}
body .button.primary{background:var(--action-fill,#315f7c)!important;color:var(--action-ink,#fff)!important;border-color:var(--action-fill,#315f7c)!important}
body .button.secondary{background:transparent!important;color:inherit!important;border-color:currentColor!important}
body .button.link,body .button.text{background:transparent!important;color:inherit!important;border-color:transparent!important;border-bottom-color:currentColor!important}
body .button:hover{filter:brightness(.92)}
body .actions{flex-wrap:wrap!important}
.home-hero,.page-hero.immersive,.closing,.care-compass,.visit-story,.life-panorama,.cinema-section{--action-fill:#f8f7f3;--action-ink:#172f3b}
.site-header .header-cta{height:64px!important;min-height:64px!important}
.contact-map-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:stretch}
.contact-map-panel{display:flex;flex-direction:column;background:#e4edf1}
.contact-address{padding:32px 32px 25px}.contact-address .eyebrow{margin-bottom:14px}.contact-address h3{font-size:30px;margin-bottom:16px}.contact-address address{font-style:normal;font-size:16px;line-height:1.7}
.contact-map{width:100%;min-height:360px;flex:1;border:0;display:block}.map-link{padding:12px 24px}
.contact-form{padding:32px;border:1px solid #cfd8dc;background:#fff}.contact-form>.eyebrow{margin-bottom:14px}.contact-form h3{font-size:38px;margin-bottom:20px}.contact-form>p:not(.eyebrow){font-size:16px;color:#52646d}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0 20px}.contact-fields label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600}.contact-fields .full{grid-column:1/-1}.contact-fields input,.contact-fields select,.contact-fields textarea{width:100%;min-width:0;border:1px solid #9badb7;background:#f8fafb;color:#172f3b;border-radius:0;padding:12px;font:16px/1.5 Manrope,Arial,sans-serif}.contact-fields input,.contact-fields select{height:50px}.contact-fields textarea{resize:vertical;min-height:120px}.contact-fields :is(input,select,textarea):focus-visible{outline:2px solid #315f7c;outline-offset:3px}
.contact-form .contact-form-note{font-size:14px!important;margin-bottom:22px}.contact-result{margin-top:24px;padding-top:24px;border-top:1px solid #cfd8dc}.contact-result .button{margin-top:14px;margin-bottom:14px}.contact-result .small{font-size:14px}.contact-result a:not(.button){text-decoration:underline}
@media(max-width:1000px){.contact-map-grid{gap:24px}.contact-fields{grid-template-columns:1fr}.contact-map-panel{min-height:650px}}
@media(max-width:800px){.contact-map-grid{grid-template-columns:1fr}.contact-map-panel{min-height:0}.contact-map{height:380px;flex:none}.contact-address,.contact-form{padding:26px}.contact-fields{grid-template-columns:1fr 1fr}}
@media(max-width:650px){body .site-header .header-cta{display:none!important}.page-hero.immersive:has(img[src*="frame-conversation"]){--action-fill:#315f7c;--action-ink:#fff}.contact-fields{grid-template-columns:1fr}.contact-map{height:320px}.contact-form h3{font-size:32px}.contact-address,.contact-form{padding:22px}.hero-bottom>div>.button{max-width:100%!important}.page-hero .actions,.personal-invitation>.wrap>div{align-items:flex-start!important}.personal-invitation>.wrap>div{align-items:center!important}}

.contact-map{position:relative;z-index:0;background:#dce5e9}.practice-pin{background:#315f7c;color:#fff;border:3px solid #fff;border-radius:50% 50% 50% 0;transform-origin:center;box-shadow:0 2px 7px #0004;text-align:center;font:22px/32px Georgia,serif}.leaflet-popup-content{font:14px/1.6 Manrope,Arial,sans-serif}.leaflet-control-attribution{font-size:11px}.contact-map .leaflet-control-zoom a{width:36px;height:36px;line-height:36px}

@media(max-width:800px){.open-house-canvas{min-height:0;padding-top:550px}.house-note{position:relative;inset:auto;max-width:none}.house-film{position:relative;inset:auto;margin-top:20px;flex-direction:row}.house-note .button{margin-top:22px}}
@media(max-width:550px){.open-house-canvas{padding-top:475px}}
