@charset "UTF-8";
/* Full-width visual composition; reading sizes remain in readability.css. */
html{background:#f5f7f1}
body{width:100%;max-width:none;margin:0;border:0;box-shadow:none;overflow-x:clip;background:#f5f7f1}
.container{width:min(1180px,calc(100% - 96px));margin-inline:auto}
.hero{height:790px;position:relative;isolation:isolate;display:block;background:#f5f7f1;overflow:clip}
.hero-plane{position:absolute;left:17%;right:0;top:115px;bottom:70px;background:linear-gradient(120deg,#174e3d,#2b7056 65%,#538367);border-radius:80px 0 0 0;z-index:-2;transform-origin:right center;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.hero-line{position:absolute;left:10%;right:-8%;top:38px;height:530px;border:1px solid #8ca68b66;border-radius:50%;transform:rotate(-12deg);z-index:-1;pointer-events:none}
.hero-visual{left:26%;right:auto;top:72px;bottom:auto;width:64%;height:520px;border-radius:2px;z-index:0;box-shadow:0 24px 48px #0d362c16;transform:translate3d(0,var(--parallax-y,0px),0);will-change:transform}
.hero-visual:after{background:linear-gradient(0deg,#0c342115,transparent 60%)}
.hero-slide img{object-position:50% 20%;filter:brightness(1.015) saturate(.96)}
.hero-slide:nth-child(2) img{object-position:50% 48%}
.hero-slide:nth-child(3) img{object-position:64% 52%}
.hero-side{position:absolute;margin:0;overflow:hidden;border-radius:2px;box-shadow:0 16px 40px #103d2d1c;z-index:1}
.hero-side--corridor{left:-2%;top:148px;width:25%;height:360px}
.hero-side--care{right:-1%;top:18px;width:20%;height:390px;z-index:2}
.hero-side img{width:100%;height:calc(100% + 32px);max-width:none;object-fit:cover;transform:translate3d(0,var(--parallax-y,0px),0) scale(1.025);transform-origin:center;filter:saturate(.95);will-change:transform}
.hero-side--corridor img{object-position:50% 50%}
.hero-side--care img{object-position:57% 34%}
.hero-content{position:absolute;top:380px;left:max(6vw,calc((100% - 1180px)/2));width:min(710px,61%);padding:34px 40px 26px;z-index:4;background:linear-gradient(110deg,#fff 65%,#ffffffed);box-shadow:0 15px 50px #174b3110;pointer-events:auto}
.hero h1{font-size:clamp(32px,2.8vw,42px);line-height:1.65;letter-spacing:.015em}
.hero-message{font-size:21px;line-height:1.85;margin-top:15px}
.hero-title-rest{display:inline}
.hero-bottom{position:static;inset:auto;margin-top:16px;padding:0;background:transparent}
.slide-controls{gap:0}
.slide-dot{width:35px;height:48px}
.slide-pause{background:transparent}
.entrances{position:relative;z-index:5;margin-top:-16px;margin-bottom:0;background:#fff;padding:25px 24px;box-shadow:0 12px 35px #1b432909}
.entrances>a{border:0;min-height:112px;position:relative;gap:13px;transition:background .3s,color .3s}
.entrances>a:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.entrances>a:hover{background:#f0f5ec}
.entrances>a:hover:after{transform:scaleX(1)}
.entrances .entrance-icon{transition:transform .3s}
.entrances>a:hover .entrance-icon{transform:translateY(-4px)}
.entrances>a>span>svg{transition:transform .3s}
.entrances>a:hover>span>svg{transform:translateX(4px)}
.notice-band{position:relative;padding:24px 7px;margin-top:8px;margin-bottom:0;background:transparent;gap:30px}
.notice-band h2{border-color:#aabdac;padding-right:30px}
.notice-band>a{border-bottom:1px solid #aec3ac;padding:8px 0}
.news-section{position:relative;isolation:isolate;width:100%;padding:60px 0 80px;background:#f5f7f1;overflow:clip}
.news-section:before{content:"";position:absolute;inset:0 auto 0 0;width:41%;background:#174e3d;border-radius:0 65px 0 0;z-index:-2}
.news-color-plane{position:absolute;top:35px;left:0;bottom:0;width:30%;background:#286b50;z-index:-1;transform-origin:left;transition:transform 1.3s ease}
.news-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:0;position:relative;align-items:stretch}
.news-heading{padding:28px 32px 30px 0;color:white;align-self:start}
.section-kicker{font:500 18px/1.8 var(--sans);letter-spacing:.14em;color:white;margin-bottom:12px}
.news-heading .ruled-title{font-size:34px;color:white}
.news-heading .ruled-title:after{background:#d5e5d0}
.news-heading .news-all{margin:35px 0 0;color:white;justify-content:space-between;max-width:215px;border-bottom:1px solid #d5e5d080;padding:10px 0}
.news-heading .news-all svg{transition:transform .3s}
.news-heading .news-all:hover svg{transform:translateX(5px)}
.news-content{position:relative;margin-top:37px;margin-right:-25px;background:white;padding:34px 38px 38px;box-shadow:0 18px 40px #173a2b0b;min-width:0}
.news-tabs{gap:16px}
.news-tabs>button{background:#eff3eb;min-height:58px}
.news-panel{margin-top:26px;background:white;border-top:1px solid #cbd8c7}
.news-panel>a{padding:21px 0;border-bottom:1px solid #cbd8c7}
.news-panel>a:hover{background:#f3f7ef}
.care-section{width:100%;max-width:none;background:#f5f7f1;padding:60px 0 80px;position:relative;isolation:isolate}
.care-section:before{content:"";position:absolute;left:0;top:-1px;width:13%;height:170px;background:linear-gradient(#174e3d,#316c50);border-radius:0 0 90px 0;z-index:-1}
.care-section .ruled-title{margin-bottom:34px}
.care-section .ruled-title:after{width:65px;height:2px}
.care-grid{align-items:start;gap:35px}
.care-card{position:relative;padding-bottom:0}
.care-card:nth-child(2){padding-top:85px}
.care-card:nth-child(3){padding-top:28px}
.care-photo{aspect-ratio:1.28;position:relative;border-radius:2px;box-shadow:0 15px 35px #1238240b}
.lobby-photo{aspect-ratio:.93}
.consultation-photo{aspect-ratio:1.12}
.care-photo img{height:calc(100% + 24px);max-width:none;transform:translate3d(0,var(--parallax-y,0px),0) scale(1.025);will-change:transform;transition:scale .7s,filter .7s;object-position:65% 48%}
.lobby-photo img{object-position:50% 48%}
.consultation-photo img{object-position:52% 38%}
.care-photo:hover img{transform:translate3d(0,var(--parallax-y,0px),0) scale(1.025);scale:1.035;filter:brightness(1.025) saturate(.97)}
.care-card h3{margin:20px 0 13px}
.care-card h3 a{padding-bottom:12px;border-bottom:1px solid #b6c9b1;align-items:start}
.care-card h3 svg{transition:transform .3s}
.care-card:hover h3 svg{transform:translateX(4px)}
.care-card>p{color:#263d2e}
.more-care{margin-top:38px;border-top:0;background:#fff;padding:3px 25px}
.more-care summary{padding:17px 0}
.life-section{position:relative;isolation:isolate;padding-bottom:65px;background:#174e3d;overflow:clip}
.life-color-plane{position:absolute;inset:0;background:linear-gradient(130deg,#174e3d 30%,#377457);z-index:-1;transform-origin:left bottom;transition:transform 1.5s ease}
.life-photo{position:relative;width:100%;height:clamp(420px,32vw,640px);margin:0;overflow:hidden}
.life-photo img{width:100%;height:calc(100% + 30px);object-fit:cover;object-position:50% 22%;transform:translate3d(0,var(--parallax-y,0px),0) scale(1.02);will-change:transform;filter:saturate(.94)}
.life-panel{position:relative;z-index:2;width:min(980px,calc(100% - 160px));margin:-64px max(6vw,calc((100% - 1180px)/2)) 0 auto;padding:42px 48px;background:white;box-shadow:0 16px 45px #092c2310}
.life-panel h2{font:700 30px/1.8 var(--sans);color:#173d2b;margin-bottom:16px}
.life-panel>p{font:500 19px/1.9 var(--sans);max-width:780px;color:#20372c}
.life-links{display:flex;flex-wrap:wrap;gap:16px 30px;margin-top:25px}
.life-links>a{display:flex;align-items:center;justify-content:space-between;gap:35px;min-height:58px;padding:13px 20px;background:#174e3d;color:white;font:600 18px/1.8 var(--sans);transition:background .3s}
.life-links>a:last-child{background:#edf3e9;color:#174e3d}
.life-links>a:hover{background:#2e7050;color:white}
.life-links svg{width:20px;height:20px;transition:transform .3s}
.life-links>a:hover svg{transform:translateX(5px)}
.departments-section{background:#174e3d;color:white;padding:15px 0 45px;position:relative}
.departments-section h2{color:white;margin-bottom:26px}
.featured-departments{background:transparent}
.featured-departments>a{border-color:#d0e2c950;color:white;min-height:90px;transition:background .3s}
.featured-departments>a>svg:first-child,.featured-departments .small-arrow{color:white}
.featured-departments>a:hover{background:#ffffff12}
.all-guide>summary{color:white;padding-top:23px}
.expanded-guides{background:white;color:#20372c;margin-top:15px;padding:30px 32px}
.expanded-guides .department-list>a,.expanded-guides .department-groups summary{color:#20372c}
.access-section{width:100%;max-width:none;margin:0;background:#f5f7f1;position:relative;padding:90px 0 65px;isolation:isolate}
.access-section:before{content:"";position:absolute;top:-1px;left:0;width:42%;height:44px;background:#174e3d;border-radius:0 0 75px 0;z-index:-1}
.access-section .ruled-title{margin-bottom:36px}
.access-layout{gap:55px;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr)}
.map-panel{background:white;border:0;box-shadow:0 16px 40px #1743280b}
.map-help{border:0;background:white;padding:18px 20px}
.location-buttons>a{border:0;min-height:60px}
.location-buttons .access-button{background:#e5eddf}
.location-buttons .access-button:hover{background:#d6e4ce}
.access-details{margin-top:25px}
.access-details>summary{border-bottom:1px solid #bbceb5}
.footer{background:#123d2e;padding:45px 0 25px}
.footer-main{gap:70px}
.footer-main-links>a{border-color:#e0ebd84d}
.footer-main-links>a svg,.footer-bottom .back-top svg{transition:transform .3s}
.footer-main-links>a:hover svg{transform:translateX(5px)}
.footer-bottom .back-top:hover svg{transform:translateY(-4px)}
/* Animate only photographic and decorative surfaces; all text stays opaque. */
.motion-ready [data-reveal-photo]{transition:clip-path 1s cubic-bezier(.2,.7,.2,1),translate 1s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready [data-reveal-photo].photo-pending{clip-path:inset(0 0 15% 0);translate:0 20px}
.motion-ready [data-reveal-photo].photo-visible{clip-path:inset(0);translate:0 0}
.motion-ready [data-color-plane].plane-pending{transform:scaleX(.84)}
.motion-ready [data-color-plane].plane-visible{transform:scaleX(1)}
@media(min-width:1800px){.hero-visual{left:28%;width:61%}.hero-content{top:380px}.hero-side--corridor{left:0;width:24%;height:400px}.hero-side--care{width:18%;height:430px}.hero{height:820px}.hero-plane{bottom:75px}}
@media(max-width:1200px){
 .container{width:calc(100% - 72px)}
 .hero{height:750px}.hero-visual{left:24%;width:67%;height:470px;top:74px}.hero-side--corridor{width:23%;height:320px;top:155px}.hero-side--care{width:22%;height:345px;top:25px}.hero-content{left:5%;top:350px;width:66%;padding:29px 32px 23px}.hero h1{font-size:32px}.hero-message{font-size:20px}.hero-plane{left:14%;top:115px;bottom:65px}.hero-line{top:30px}
 .news-layout{grid-template-columns:240px minmax(0,1fr)}.news-content{padding:30px;margin-right:0}.news-heading{padding-right:25px}.news-tabs{gap:12px}.news-tabs>button{padding:10px 13px}
 .care-grid{gap:27px}.care-card:nth-child(2){padding-top:70px}.care-card:nth-child(3){padding-top:30px}.life-panel{width:calc(100% - 130px);padding:36px 40px;margin-right:36px}.access-layout{gap:35px}.featured-departments{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
 .container{width:calc(100% - 56px)}
 .hero{height:720px}.hero-visual{left:20%;width:72%;height:415px;top:75px}.hero-side--corridor{width:23%;height:295px;top:150px}.hero-side--care{width:23%;height:300px;top:15px}.hero-content{top:330px;left:5%;width:76%;padding:28px 30px 22px}.hero h1{font-size:30px}.hero-message{font-size:20px}.hero-plane{left:12%;bottom:60px}
 .news-section{padding:45px 0 60px}.news-layout{grid-template-columns:200px minmax(0,1fr)}.news-heading{padding-top:20px;padding-right:22px}.news-heading .ruled-title{font-size:30px}.news-content{padding:26px;margin-top:28px}.news-tabs{grid-template-columns:1fr;gap:12px}.news-tabs>button{min-height:50px}.news-heading .news-all{margin-top:25px}
 .care-section{padding-top:50px;padding-bottom:65px}.care-section:before{width:8%;height:115px}.care-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 28px}.care-card:nth-child(2){padding-top:65px}.care-card:nth-child(3){padding-top:0;grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center}.care-card:nth-child(3) .care-photo{aspect-ratio:1.4}.care-card:nth-child(3) h3{margin:0}.care-photo{aspect-ratio:1.22}.lobby-photo{aspect-ratio:.98}.care-card h3{font-size:22px}
 .life-panel{width:calc(100% - 90px);margin-right:28px;padding:31px 32px;margin-top:-48px}.life-panel h2{font-size:28px}.life-links{gap:15px}.life-links>a{padding-inline:17px}.life-section{padding-bottom:45px}
 .featured-departments{grid-template-columns:repeat(3,minmax(0,1fr))}.access-layout{grid-template-columns:1fr;gap:30px}.access-section{padding-top:75px}.footer-main{gap:35px}
}
@media(max-width:700px){
 .container{width:calc(100% - 40px)}
 .hero{height:auto;padding-top:30px;padding-bottom:32px;overflow:clip;display:block;background:#f5f7f1}
 .hero-plane{top:95px;left:0;bottom:100px;right:0;border-radius:0 50px 0 0}
 .hero-line{left:-35%;right:-30%;top:15px;height:360px}
 .hero-visual{position:relative;inset:auto;left:8%;width:84%;height:300px;aspect-ratio:auto;border-radius:2px;z-index:0}
 .hero-slide img{object-position:50% 34%}.hero-slide:nth-child(2) img{object-position:50% 45%}.hero-slide:nth-child(3) img{object-position:67% 48%}
 .hero-side--corridor{left:-5%;right:auto;top:142px;width:28%;height:170px;z-index:1}
 .hero-side--care{right:-1%;left:auto;top:15px;width:29%;height:210px;z-index:2}
 .hero-side--care img{object-position:57% 30%}.hero-side img{height:calc(100% + 18px)}
 .hero-content{position:relative;top:auto;left:auto;inset:auto;width:calc(100% - 40px);margin:-28px 20px 0;padding:26px 23px 21px;box-shadow:0 12px 30px #0c302211;background:#fff;z-index:4}
 .hero h1{font-size:26px;line-height:1.7;letter-spacing:0}.hero-title-rest{display:block}.hero-message{font-size:19px;line-height:1.9;margin-top:17px}.hero-message .desktop-break{display:none}.hero-bottom{position:static;inset:auto;margin-top:14px;padding:0;background:transparent}.slide-dot{width:32px;height:48px}.slide-pause{font-size:18px;padding:0 8px}
 .entrances{margin-top:0;padding:8px 0 15px;box-shadow:none;background:transparent}.entrances>a{min-height:120px;border:0;gap:10px;padding:15px 5px}.entrances>a:nth-child(n){border:0}.entrances>a>span{font-size:18px}.entrances>a:after{left:12%;right:12%}.entrance-icon{width:35px;height:35px}
 .notice-band{padding:15px 0 25px;gap:15px;margin-top:0}.notice-band h2{font-size:20px;padding-right:15px;gap:9px}.notice-band>a{font-size:18px}
 .news-section{padding:30px 0 45px;background:#174e3d}.news-section:before{width:100%;border-radius:0}.news-color-plane{width:75%;top:0;bottom:0;background:#286b50;border-radius:0 60px 0 0}.news-layout{display:block}.news-heading{display:grid;grid-template-columns:1fr auto;gap:7px 15px;padding:0 0 24px;align-items:center}.section-kicker{font-size:18px;margin:0;grid-column:1/-1}.news-heading .ruled-title{font-size:28px}.news-heading .news-all{margin:0;font-size:18px;gap:15px;min-height:48px;max-width:none;white-space:normal}.news-content{margin:0 0 0 10px;padding:24px 22px;box-shadow:0 15px 32px #092d1e12}.news-tabs{grid-template-columns:1fr;gap:12px}.news-tabs>button{font-size:18px;min-height:54px;padding:11px 12px}.news-panel{margin-top:23px}.news-panel>a{font-size:18px;line-height:1.8;min-height:65px;padding:15px 0}
 .care-section{padding:45px 0 50px}.care-section:before{width:20%;height:70px}.care-section .ruled-title{font-size:27px;margin-bottom:27px;position:relative;z-index:1}.care-grid{grid-template-columns:1fr;gap:32px}.care-card:nth-child(n){padding-top:0;grid-column:auto;display:block}.care-photo{aspect-ratio:1.3}.lobby-photo{aspect-ratio:1.16;width:87%;margin-left:auto}.consultation-photo{aspect-ratio:1.3;width:95%}.care-card:nth-child(3) .care-photo{aspect-ratio:1.3}.care-card:nth-child(3) h3{margin:18px 0 12px}.care-card h3{font-size:22px;margin:18px 0 12px}.care-card h3 a{min-height:50px}.care-card>p{font-size:18px;line-height:1.9}.more-care{padding:2px 16px;margin-top:27px}.more-care summary{font-size:18px;line-height:1.8;gap:15px}
 .life-photo{height:auto;aspect-ratio:1.18}.life-photo img{height:calc(100% + 16px);object-position:50% 35%}
 .life-panel{width:calc(100% - 40px);margin:-28px 20px 0;padding:27px 23px;box-shadow:none}.life-panel h2{font-size:25px;line-height:1.8;margin-bottom:14px}.life-panel>p{font-size:18px;line-height:1.9}.life-links{display:grid;grid-template-columns:1fr;gap:12px;margin-top:21px}.life-links>a{font-size:18px;line-height:1.8;min-height:58px;gap:17px;padding:13px 15px}.life-section{padding-bottom:37px}
 .departments-section{padding:0 0 28px}.departments-section h2{font-size:25px;line-height:1.8;margin-bottom:18px}.featured-departments{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-departments>a{min-height:88px;padding:14px 6px;gap:9px}.featured-departments>a:nth-child(n){border-right:1px solid #d0e2c950;border-bottom:1px solid #d0e2c950}.featured-departments>a:nth-child(2n){border-right:0}.featured-departments>a:last-child{border:0;grid-column:1/-1}.featured-departments>a>span{font-size:18px}.featured-departments>a>svg:first-child{width:27px;height:27px}.all-guide>summary{font-size:18px;line-height:1.8;padding-top:16px;min-height:56px}.expanded-guides{padding:22px 18px}.expanded-guides .department-list{grid-template-columns:1fr}
 .access-section{padding:68px 0 40px}.access-section:before{width:55%;height:32px;border-radius:0 0 50px 0}.access-section .ruled-title{font-size:27px;margin-bottom:25px}.access-layout{gap:27px}.map-panel iframe{height:300px}.map-help{font-size:18px;line-height:1.8;padding:17px 18px}.location-buttons>a{font-size:18px}.access-details{margin-top:22px}.footer{padding-top:32px}.footer-main{gap:30px}
 .motion-ready [data-reveal-photo].photo-pending{clip-path:inset(0 0 10% 0);translate:0 12px}
}
@media(max-width:360px){.hero-visual{height:265px}.hero-side--care{height:185px;width:29%}.hero-side--corridor{top:125px;height:155px}.hero-content{padding:24px 20px 20px}.hero h1{font-size:23px}.hero-message{font-size:18px}.news-content{padding:22px 17px;margin-left:5px}.news-heading{gap:8px}.news-heading .ruled-title{font-size:26px}.news-heading .news-all{font-size:18px;gap:8px}.hero-plane{bottom:110px}.life-panel{padding:24px 20px}.life-panel h2{font-size:23px}.departments-section h2{font-size:23px}
}
@media(prefers-reduced-motion:reduce){
 [data-parallax]{--parallax-y:0px!important}.hero-visual{transform:none}.hero-side img,.life-photo img{transform:none}.hero-slide.is-active img{transform:none}.care-photo img,.care-photo:hover img{transform:none;scale:1}.motion-ready [data-reveal-photo].photo-pending{clip-path:none;translate:none}.motion-ready [data-color-plane]{transform:none!important}
}
@media print{body{background:white}.hero{height:680px}.hero-content{top:330px}.hero-plane,.news-color-plane,.life-color-plane{print-color-adjust:exact}.hero-side{display:none}.care-card:nth-child(n){padding-top:0}.news-section,.care-section,.access-section{break-inside:avoid}.motion-ready [data-reveal-photo]{clip-path:none!important;translate:none!important}}
.life-photo{height:clamp(460px,35vw,680px)}.care-card:first-child .care-photo{aspect-ratio:1.48}.care-card:first-child .care-photo img{height:100%;object-position:100% 50%;transform-origin:right center;transform:translate3d(0,var(--parallax-y,0px),0) scale(1.045)}.care-card:first-child .care-photo:hover img{transform:translate3d(0,var(--parallax-y,0px),0) scale(1.045)}.hero-side--care{width:22%}@media(max-width:1200px){.hero-side--care{width:25%;height:330px}}@media(max-width:900px){.hero-side--care{width:26%;height:280px}}@media(max-width:700px){.hero-side--care{width:38%;height:180px}.life-photo{height:auto;aspect-ratio:1.18}}@media(max-width:360px){.hero-side--care{width:38%;height:155px}}@media(prefers-reduced-motion:reduce){.care-card:first-child .care-photo img,.care-card:first-child .care-photo:hover img{transform:none;scale:1}}
@media(max-width:700px){.hero h1>br{display:none}}.motion-ready [data-reveal-photo]{transition:opacity 1s ease,translate 1s cubic-bezier(.2,.7,.2,1)}.motion-ready [data-reveal-photo].photo-pending{clip-path:none;opacity:.35;translate:0 18px}.motion-ready [data-reveal-photo].photo-visible{clip-path:none;opacity:1;translate:0 0}@media(prefers-reduced-motion:reduce){.motion-ready [data-reveal-photo].photo-pending{opacity:1;translate:none;clip-path:none}}
.care-section:before{width:clamp(12px,4.5vw,70px)}.life-photo{height:clamp(550px,40vw,760px)}@media(max-width:700px){.care-section:before{width:12px}.life-photo{height:auto;aspect-ratio:1.18}}
