/* Residential care direction — September 2026. */
body.residential{--paper:#f7f6f2;--ink:#343832;--line:#d8d9d0;--serif:'Yu Mincho','Hiragino Mincho ProN',Georgia,serif;background:var(--paper);color:var(--ink);padding-top:100px}.residential.care-home{padding-top:0}.residential a:focus-visible,.residential button:focus-visible{outline:2px solid #947f5d;outline-offset:5px}.residential h2,.residential h2.japanese,.residential .care-page-title h1{font-family:var(--serif);font-weight:500}.residential .care-header{height:100px;position:fixed;inset:0 0 auto;display:flex;align-items:center;gap:35px;padding:0 5%;background:#f7f6f2f5;color:#343832;border-bottom:1px solid #dddcd5;z-index:100;transition:background .35s,color .35s}.care-home:not(.has-scrolled) .care-header{background:linear-gradient(#15283e66,transparent);color:#fff;border-color:#ffffff25}.care-logo{font:500 34px/1 Georgia,serif;letter-spacing:-1.4px;white-space:nowrap}.care-logo span{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.12em;margin-top:9px;font-weight:400}.residential .care-header nav{margin-left:auto;display:flex;gap:32px;align-items:center}.residential .care-header nav a{font-size:14px;color:inherit;font-weight:400;padding:12px 0}.residential .care-header nav a:after{background:currentColor}.care-contact{display:flex;gap:32px;align-items:center;justify-content:space-between;padding:14px 20px;border:1px solid currentColor;font-size:14px;white-space:nowrap;transition:background .35s,color .35s}.care-contact:hover,.care-contact:focus-visible{background:#3e493e;color:#fff}.care-contact span{font-size:18px}.residential .care-header .menu-toggle{display:none}.care-hero{line-height:0;background:#334455}.care-hero img{display:block;width:100%;height:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.care-width{max-width:1400px;margin:auto;padding-inline:6%}.care-section{padding-top:105px;padding-bottom:105px}.care-eyebrow{font-size:11px;letter-spacing:.2em;color:#7f8779;margin:0 0 20px;font-weight:500}.care-section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:48px}.residential .care-section h2,.residential .care-page-title h1,.care-cta h2{font-size:clamp(30px,3.1vw,44px);line-height:1.6;letter-spacing:.055em;margin:0 0 22px}.care-section-heading h2{margin-bottom:0!important}.care-section-heading>p{font-size:15px;line-height:2;color:#72796e;margin:0}.care-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.care-service-photo{overflow:hidden;aspect-ratio:4/3;background:#e0dfd6}.care-service-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s}.care-service-photo.facade img,.care-service-photo.energy img{object-position:65% 25%;transform:scale(1.45)}.care-service:hover img{transform:scale(1.04)}.care-service:hover .facade img,.care-service:hover .energy img{transform:scale(1.5)}.care-service-title{display:flex;align-items:center;gap:10px;margin-top:25px;padding-bottom:17px;border-bottom:1px solid #cfcfc5}.care-service-title h3{font-size:20px;font-family:var(--serif);font-weight:500;margin:0}.care-count{font-size:10px;color:#909686;align-self:flex-start;padding-top:4px}.care-arrow{margin-left:auto;font-size:23px}.care-service>p{font-size:13px;line-height:1.8;margin:15px 0 0;color:#72776e}.care-section-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:40px;gap:20px}.care-section-bottom small,.care-sample{font-size:12px;line-height:1.9;color:#7a7e75}.care-text-link{display:inline-flex;align-items:center;gap:60px;padding:10px 0;border-bottom:1px solid #899082;font-size:14px}.care-text-link span{font-size:22px}.care-works{background:#ebece5}.care-sample{margin:0 0 25px}.care-works .work-card>a{border-color:#c7cbbf}.residential .work-card h3{font-family:var(--serif);font-size:22px;font-weight:500}.care-about{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.care-about>div>p:not(.care-eyebrow){font-size:16px;line-height:2.2;margin:0 0 32px}.care-button{display:inline-flex;align-items:center;justify-content:space-between;gap:60px;min-height:56px;padding:15px 25px;border:1px solid #92998b;font-size:14px;transition:background .4s,color .4s}.care-button span{font-size:22px}.care-button:hover,.care-button:focus-visible{background:#3e493e;color:#fff}.care-cta{text-align:center;background:#e9e8df;padding:85px 25px 95px}.care-cta>p:not(.care-eyebrow){font-size:15px;line-height:2;margin:20px 0 30px}.residential footer.care-footer{background:var(--paper);color:var(--ink);padding:65px 6% 25px;max-width:none;display:grid;grid-template-columns:1fr 2fr;gap:50px}.care-footer .footer-nav{align-items:center;gap:26px;font-size:13px;flex-wrap:wrap}.care-footer .footer-bottom{grid-column:1/-1;border-color:#d5d5cb;color:#878a80;margin-top:15px}.care-page-title{padding-top:75px;padding-bottom:65px}.care-page-title>p:last-child{font-size:16px;color:#74796e;line-height:2}.care-service-lead{display:grid;grid-template-columns:1fr 1.2fr;gap:9%;align-items:center}.care-service-lead>div>p{font-size:17px;line-height:2.2;margin:0 0 30px}.care-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:40px}.care-flow li{border-top:1px solid #bec4b6;padding-top:25px}.care-flow span,.care-scope span{font:400 38px/1 Georgia,serif;color:#89927f}.care-flow h3{font-size:20px;font-family:var(--serif);font-weight:500;margin:20px 0 12px}.care-flow p{font-size:15px;line-height:2;color:#6b7465}.care-concerns{list-style:none;padding:10px 0 0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.care-concerns li{border-block:1px solid #d4d8cb;padding:25px 0;line-height:1.8;font-size:16px}.care-line{border-top:1px solid #d4d8cb}.care-scope{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:40px 0}.care-scope article{background:#eeeee6;padding:30px}.care-scope h3{font-size:19px;line-height:1.8;font-weight:500;margin:25px 0 0}.care-related{display:flex;flex-wrap:wrap;gap:25px;margin-top:30px}.care-related a{display:flex;gap:45px;border-bottom:1px solid #b6bcad;padding:15px 0}.residential .page-heading:not(.photo-heading){background:var(--paper);color:var(--ink)}.residential .page-heading:not(.photo-heading):after{display:none}.residential .page-heading h1{font:500 clamp(32px,4vw,60px)/1.5 var(--serif);letter-spacing:.04em}.residential .photo-heading{height:330px}.residential .photo-heading h1{font-size:clamp(36px,5vw,64px)}.residential .intro h2{font-family:var(--serif);font-weight:500}.residential .breadcrumb{background:#f0efe9}.residential .solid-link,.residential .text-link,.residential .light-link{border-radius:0;box-shadow:none;background:transparent;border:1px solid #909782;color:#394133;text-shadow:none}.residential .solid-link:hover,.residential .text-link:hover,.residential .light-link:hover{background:#3e493e;color:#fff}.residential .contact-strip{background:#e9e8df;color:var(--ink)}.residential .contact-strip:before{display:none}.residential .contact-strip h2{font-family:var(--serif);font-weight:500}.residential .contact-strip p{color:#707768}.residential .gold{color:#7f876f;background:none;-webkit-text-fill-color:currentColor}.residential .values-numbered{background:#eeeee6}.residential .value-number{background:linear-gradient(120deg,#adb49a,#79856d);background-clip:text;-webkit-background-clip:text}.residential .value-en{color:#707d62}.residential .field select{width:100%;padding:15px;border:1px solid #bbbeb1;background:#fff;font:inherit;color:inherit}.residential .field input,.residential .field textarea{background:#fff}.residential .notice{background:#eeeee6;border-color:#a4ad95}.residential .mission-word{font-family:var(--serif);color:#758168}.residential .english-title{font-size:48px;font-family:var(--serif);font-weight:500}.residential .work-grid{gap:30px}.residential .work-gallery img{background:#e9e8df}
@media(max-width:1120px){.residential .care-header{padding-inline:4%;gap:20px;height:88px}.residential .care-header .menu-toggle{display:flex;align-items:center;gap:12px;color:inherit;background:none;border:0;font-size:11px;order:3;padding:12px 0}.residential .care-header .menu-toggle span{font-size:22px}.residential .care-header nav{display:none;position:absolute;left:0;right:0;top:88px;background:#f7f6f2;color:#343832;padding:20px 5% 30px;max-height:calc(100svh - 88px);overflow:auto}.residential .care-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.residential .care-header nav a{padding:20px 0;border-bottom:1px solid #d7dacf;font-size:16px}.residential .care-header .care-contact{margin-left:auto}.care-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}body.residential{padding-top:88px}.residential.care-home{padding-top:0}.care-footer .footer-nav{justify-content:flex-start}.care-scope{gap:15px}.care-scope article{padding:22px}}
@media(max-width:700px){body.residential{padding-top:76px}.residential .care-header{height:76px;padding:0 18px;gap:13px}.care-logo{font-size:27px}.care-logo span{font-size:8px;margin-top:7px;letter-spacing:.04em}.care-contact{padding:10px 11px;font-size:12px;gap:12px}.residential .care-header .menu-toggle{font-size:0;gap:0}.residential .care-header .menu-toggle span{font-size:26px}.residential .care-header nav{top:76px;max-height:calc(100svh - 76px)}.care-hero picture{display:block}.care-width{padding-inline:24px}.care-section{padding-top:65px;padding-bottom:65px}.care-section-heading{align-items:start;gap:20px;margin-bottom:30px;flex-wrap:wrap}.care-section-heading>p{font-size:14px}.care-services-grid{gap:27px 17px}.care-service-title{gap:6px;margin-top:17px;padding-bottom:12px}.care-service-title h3{font-size:17px}.care-count{display:none}.care-arrow{font-size:19px}.care-service>p{font-size:12px;margin-top:11px}.care-service-photo{aspect-ratio:1}.care-section-bottom{align-items:start;flex-direction:column;margin-top:28px}.care-text-link{font-size:13px;gap:25px}.care-about{grid-template-columns:1fr;gap:20px}.residential .care-section h2,.care-cta h2{font-size:28px}.care-cta{padding:60px 24px}.care-button{min-width:235px}.residential footer.care-footer{grid-template-columns:1fr;padding:45px 24px 22px;gap:30px}.care-footer .footer-nav{grid-column:1;gap:20px 25px}.care-footer .footer-bottom{margin-top:0;font-size:10px}.care-page-title{padding-top:45px;padding-bottom:35px}.care-page-title>p:last-child{font-size:15px}.care-service-lead{grid-template-columns:1fr;gap:30px}.care-service-lead .care-service-photo{aspect-ratio:4/3}.care-service-lead>div>p{font-size:16px}.care-flow,.care-scope,.care-concerns{grid-template-columns:1fr;gap:23px}.care-scope{margin-top:25px}.care-scope article{display:flex;gap:23px;align-items:center}.care-scope h3{margin:0;font-size:18px}.care-concerns{gap:0}.care-concerns li+li{border-top:0}.care-page-title h1{font-size:32px}.residential .work-grid{grid-template-columns:1fr;gap:35px}.residential .photo-heading{height:260px}.residential .photo-heading-copy{padding:30px 24px}.care-works .work-card:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.care-service-photo img{transition:none}}

/* Home reference: edge-to-edge content bands with compact headings. */
.care-home .home-wide{width:100%;max-width:none;margin:0;padding:24px 3% 14px}
.care-home .home-section-heading{display:flex;align-items:center;gap:28px;margin-bottom:18px}
.care-home .home-section-heading h2{font-family:var(--sans);font-size:clamp(23px,2vw,29px);font-weight:700;letter-spacing:.02em;line-height:1.5;white-space:nowrap;margin:0}
.home-section-heading>p{display:flex;align-items:center;gap:22px;margin:0;font-size:13px;line-height:1.8;color:#777c72}
.home-section-heading>p:before{content:'';display:block;width:30px;height:1px;background:#8c9286;flex-shrink:0}
.home-section-heading>a{margin-left:auto;display:flex;align-items:center;gap:18px;white-space:nowrap;font-size:12px;color:#73796d;min-height:38px}
.home-section-heading>a span{font-size:22px;color:#333a30}
.home-reform .care-services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.home-reform .care-service-photo{aspect-ratio:1.65}
.home-reform .care-service-title{border:0;padding:0;margin-top:9px;gap:8px}
.home-reform .care-service-title h3{font:600 17px/1.6 var(--sans)}
.home-reform .care-arrow{font-size:23px}
.home-image-note{font-size:11px;color:#7c8275;line-height:1.7;margin:12px 0 0}
.care-home .home-works{padding-top:18px;padding-bottom:30px;position:relative;background:var(--paper)}
.home-works:before{content:'';position:absolute;left:3%;right:3%;top:0;height:1px;background:#dadcd3}
.care-home .home-works .work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.home-works .work-card>a{padding:0;border:0}
.home-works .work-card-photo{aspect-ratio:3.4}
.care-home .home-works .work-card h3{display:flex;align-items:baseline;justify-content:space-between;gap:18px;font:600 16px/1.7 var(--sans);letter-spacing:.02em;margin:9px 0 0}
.home-works .work-card h3 span{font-size:22px;font-weight:400;flex-shrink:0}
@media(max-width:1000px){.home-section-heading>p{font-size:12px;gap:15px}.care-home .home-section-heading{gap:20px}.home-reform .care-services-grid{gap:16px}}
@media(max-width:700px){.care-home .home-wide{padding:18px 20px 16px}.care-home .home-section-heading{gap:12px;margin-bottom:12px}.care-home .home-section-heading h2{font-size:21px;letter-spacing:0}.home-section-heading>p{display:none}.home-section-heading>a{font-size:11px;gap:10px;min-height:32px}.home-section-heading>a span{font-size:19px}.home-reform .care-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.home-reform .care-service-photo{aspect-ratio:1.95}.home-reform .care-service-title{margin-top:5px}.home-reform .care-service-title h3{font-size:14px}.home-reform .care-arrow{font-size:20px}.home-image-note{font-size:10px;margin-top:12px}.care-home .home-works{padding-top:18px;padding-bottom:24px}.home-works:before{left:20px;right:20px}.care-home .home-works .work-grid{grid-template-columns:1fr;gap:20px}.home-works .work-card-photo{aspect-ratio:2.9}.care-home .home-works .work-card h3{font-size:14px;margin-top:6px;gap:10px}}
@media(max-width:360px){.care-home .home-wide{padding-inline:16px}.care-home .home-section-heading h2{font-size:19px}.home-reform .care-services-grid{gap:13px}.home-reform .care-service-title h3{font-size:13px}}

/* Shared footer: dark grey with clear white typography. */
.residential footer.care-footer{background:#2c2c2c;color:#fff}
.residential footer.care-footer a,.residential footer.care-footer .care-logo,.residential footer.care-footer .care-logo span,.residential footer.care-footer .footer-nav a,.residential footer.care-footer .footer-bottom,.residential footer.care-footer .footer-bottom a{color:#fff}
.residential footer.care-footer .footer-bottom{border-color:#ffffff30}
.residential footer.care-footer a:hover{color:#e0c998}
