/* Selected direction A: architectural photography, deep navy and Mincho. */
:root{--mode-navy:#111d2c;--line:#d4d7db}
body{background:#fff}
.site-header{background:#fff}
.button,.nav-contact,.about-image,.work-image,.medical-entry,.check-entry,.social-box,.social-links a{border-radius:0}
.button{background:var(--navy);border-color:var(--navy);color:#fff}
.button:hover{background:#28425f;border-color:#28425f;color:#fff}
.hero{margin:0;max-width:none;border-radius:0;background:var(--mode-navy);height:760px;min-height:0;isolation:isolate}
.hero-slides{left:37%}
.hero-slides .hero-image{filter:saturate(.68)}
.hero-slides .hero-image:first-child{object-position:54% center}
.hero:after{background:linear-gradient(90deg,transparent 28%,#111d2c70 37%,transparent 80%);pointer-events:none}
.hero-content{padding:74px 0 0 6%;z-index:2}
.hero-kicker{font-size:10px;letter-spacing:.22em}
.hero-kicker:before{display:none}
.hero h1{font-size:clamp(42px,5.4vw,76px);font-weight:500;line-height:1.6;letter-spacing:.045em;margin:25px 0 24px;text-shadow:0 2px 18px #111d2c30}
.hero-description{color:#f0f0ef;font-size:13px;letter-spacing:.03em;line-height:2.15;text-shadow:none}
.hero .button.light{min-width:0;width:256px;padding:13px 0;border:0;border-bottom:1px solid #b8903f;background:transparent;color:#fff;margin-top:26px;border-radius:0;font-size:12px}
.hero .button.light:hover{background:#ffffff08;color:#f3dca0}
.hero-word{position:absolute;z-index:2;bottom:85px;left:6%;font:clamp(58px,8.5vw,122px)/1 Georgia,"Times New Roman",serif;letter-spacing:-.04em;color:#fff;pointer-events:none}
.hero-side{right:28px;top:38px;font-size:9px}
.hero-controls{left:6%;bottom:24px}
.hero-controls button{border-radius:0;background:#111d2c70;border-color:#ffffff60}
.hero-controls button:hover,.hero-controls button[aria-pressed=true]{background:#b8903f;border-color:#b8903f;color:#111d2c}
.hero-bottom{bottom:25px;right:320px}
.draft-banner{background:var(--mode-navy);font-size:9px;padding-block:5px}
.intro-strip{padding-block:28px}
.section-title,.promise h2,.contact h2{font-weight:500;letter-spacing:.065em}
.section-title{font-size:38px}
.eyebrow{color:#7a5a24;letter-spacing:.19em}
.eyebrow:before{width:25px;background:#b8903f}
.news{padding-block:76px 80px}
.news-card{border-top:1px solid var(--navy);padding-top:18px}
.news-card h3{font-family:var(--serif);font-size:18px;font-weight:500}
.about{padding-block:100px;gap:80px}
.about-visual:before{background:none;border:1px solid #b8a27a}
.about .image-tag{background:#fff}
.services{background:#f4f5f6;color:var(--navy);border-block:1px solid #e0e3e6;padding-block:80px}
.services h2,.services h3,.services .body-copy,.services .section-heading>p,.services .service-en{color:var(--navy)}
.services .eyebrow,.services .service-number{color:#7a5a24}
.services .service-icon{stroke:var(--navy)}
.services-grid,.services .service,.service+.service{border-color:#cbd1d8}
.services .text-link{border-color:var(--navy)}
.service h3{font-size:25px;font-weight:500}
.service-top{margin-bottom:22px}
.service-number{color:#7a5a24}
.medical-entry{background:#f4f5f6;border-bottom:1px solid var(--line)}
.medical-entry h2{font-weight:500;font-size:30px}
.medical-entry .button{background:transparent;color:var(--navy);border-width:0 0 1px;padding-inline:0;min-width:220px}
.medical-entry .button:hover{color:#7a5a24}
.factory-entry{background:#f7f4f0}
.check-entry{background:var(--mode-navy)}
.check-entry .button{background:transparent;border-color:#b8903f;color:#fff}
.work-meta h3{font-weight:500;font-size:21px}
.contact{background:var(--mode-navy);padding-block:76px}
.contact-action .button.light{background:#fff;color:var(--mode-navy);border-color:#fff}
.contact-action .button.light:hover{background:#f1e8df}
.site-footer{border-top:0}
@media(min-width:1600px){.hero-content{padding-left:max(6%,calc((100% - 1400px)/2))}.hero-word,.hero-controls{left:max(6%,calc((100% - 1400px)/2))}}
@media(max-width:1100px){.hero{height:710px}.hero-content{padding-top:74px}.hero h1{font-size:clamp(44px,5.6vw,60px)}.hero-word{bottom:93px}.hero-slides{left:33%}.about{gap:50px}.section-title{font-size:33px}.service h3{font-size:22px}.medical-entry h2{font-size:27px}}
@media(max-width:800px){.hero{height:680px;max-height:none}.hero-slides{left:25%}.hero-content{padding:68px 0 0 6%}.hero h1{font-size:44px;letter-spacing:.025em}.hero-word{font-size:74px;bottom:100px}.hero-side{display:none}.hero-bottom{right:28px}.hero-controls{left:6%}.section-title{font-size:30px}.about{padding-block:75px;gap:35px}.service h3{font-size:20px}.medical-entry h2{font-size:25px}.news{padding-block:55px 65px}}
@media(max-width:580px){.hero{height:670px;min-height:670px;margin:0}.hero-slides{left:17%;opacity:.7}.hero:after{background:linear-gradient(90deg,transparent 5%,#111d2ca0 17%,#111d2c15 90%)}.hero-content{padding:65px 7% 0}.hero-kicker{font-size:8px;letter-spacing:.13em}.hero h1{font-size:clamp(29px,9.4vw,43px);line-height:1.75;letter-spacing:0;margin:27px 0 22px}.hero-description{font-size:11px;letter-spacing:0;line-height:2.2}.hero .button.light{width:230px;margin-top:28px;font-size:11px;padding-block:13px}.hero-word{left:7%;bottom:120px;font-size:clamp(42px,12.6vw,68px)}.hero-controls{left:7%;bottom:29px}.hero-bottom{right:22px;bottom:31px}.hero-bottom .hero-scroll{font-size:8px}.intro-strip{padding-block:22px}.section-title{font-size:28px}.about{padding-block:62px}.services{padding-block:58px}.service h3{font-size:25px}.medical-entry h2{font-size:26px}.medical-entry .button{min-width:0}.work-meta h3{font-size:20px}.contact{padding-block:56px}.contact h2{font-size:28px}}

/* Dark mode direction: black / navy, with restrained orange details. */
:root{--paper:#090d12;--ink:#f3f3f1;--muted:#b7bec8;--line:#ffffff29;--brown:#c0c6ce;--accent:#b8903f;--mode-navy:#25292e}
body{background:var(--paper);color:var(--ink)}
.site-header{background:#090d12;border-bottom:1px solid #ffffff1a}
.site-header .brand-logo img,.site-footer .brand-logo img{filter:grayscale(1) invert(1) brightness(1.7);mix-blend-mode:screen}
.desktop-nav,.brand{color:#f3f3f1}
.nav-contact{background:transparent;border:1px solid #ffffff65;color:#fff}
.nav-contact:hover{background:#142c4e;border-color:#b8903f;color:#fff}
.menu-toggle{color:#fff;border-color:#ffffff50}
.draft-banner{background:#090d12;color:#aeb8c7;border-bottom:1px solid #ffffff0d}
.hero{height:740px;background:#090d12}
.hero-slides{left:0;opacity:1}
.hero-slides .hero-image{filter:saturate(.4) brightness(.74)}
.hero-slides .hero-image:first-child{object-position:center 56%}
.hero:after{background:linear-gradient(180deg,#090d124d,#25292e45 45%,#090d12e8),linear-gradient(90deg,#090d1250,transparent 65%)}
.hero-content{padding:80px 6% 0;text-align:center}
.hero-kicker{justify-content:center;font-size:9px;letter-spacing:.27em;color:#e1e4e7}
.hero h1{font-size:clamp(44px,5.7vw,82px);line-height:1.5;font-weight:500;letter-spacing:.08em;margin:30px 0 22px}
.hero-description{font-size:12px;line-height:2.2;color:#f0f1f3}
.hero .button.light{margin:26px auto 0;display:flex;width:235px;font-weight:400;border-color:#b8903f}
.hero-word{left:0;right:0;text-align:center;bottom:80px;font-size:clamp(70px,10.6vw,150px);letter-spacing:-.035em;color:#f1f2f5;opacity:.85}
.hero-side{display:none}
.hero-controls{left:6%;bottom:26px}
.hero-controls button{background:transparent;border-color:#ffffff45;color:#fff}
.hero-controls button:hover,.hero-controls button[aria-pressed=true]{background:transparent;border-color:#b8903f;color:#e2c47e}
.hero-bottom{right:6%;bottom:26px;color:#e5e7eb}
.intro-strip{border-color:#ffffff29;color:#c4cbd5}
.strip-points{color:#c4cbd5}
main h2,main h3,.access-section h2,.access-details h3{color:#f3f3f1}
.eyebrow{color:#bac2cd}
.eyebrow:before{background:#b8903f;height:1px;width:24px}
.section-title{font-size:clamp(30px,3.8vw,49px);letter-spacing:.045em}
.button{background:transparent;border:1px solid #737f91;color:#f4f5f7}
.button:hover{background:#142c4e;border-color:#b8903f;color:#fff}
.news{padding-block:90px;border-color:#ffffff29}
.news-card{border-color:#596678}
.news-meta{color:#b7bec8}
.news-card h3{color:#f3f3f1}
.news-post-link{color:#d1d7df}
.news blockquote.instagram-media{background:#142031;color:#fff;border-color:#4c596b}
.news blockquote.instagram-media a{color:#fff}
.about{padding-block:110px;grid-template-columns:1.05fr 1fr;gap:0;align-items:center}
.about>div:first-child{position:relative;z-index:2;padding:44px;background:#25292ef2;border-left:1px solid #b8903f;margin-right:-48px}
.about .section-title{font-size:clamp(28px,3.2vw,42px)}
.about-visual{padding:0 0 0 0;transform:translateY(35px)}
.about-visual:before{border-color:#4b5766;left:20px;bottom:-20px;width:100%;height:100%}
.about-image{height:540px}
.about .image-tag{left:auto;right:0;top:28px;background:#090d12d9;color:#e5e8ec;font-size:16px}
.services{background:#25292e;border-color:#ffffff20;padding-block:90px;color:#f1f3f5}
.services h2,.services h3,.services .body-copy,.services .section-heading>p,.services .service-en{color:#e8edf3}
.services .eyebrow{color:#b8c2d0}
.services .service-number{color:#e2c47e;font-weight:400;font-style:normal}
.services .service-icon{stroke:#aebbc9}
.services-grid,.services .service,.service+.service{border-color:#ffffff32}
.services .text-link{border-color:#788597}
.motion-ready .service:hover{background:#ffffff05}
.medical-entry{background:#25292e;border-color:#ffffff29;overflow:visible}
.medical-entry-photo{overflow:hidden}
.medical-entry-copy{padding:48px 40px}
.medical-entry h2{font-size:31px;line-height:1.7}
.medical-entry .button{color:#edf0f4;border-color:#7c8796}
.medical-entry .button:hover{color:#e2c47e;background:transparent}
.factory-entry{background:#25292e}
.factory-entry .medical-entry-photo{grid-column:2;grid-row:1}
.factory-entry .medical-entry-copy{grid-column:1;grid-row:1}
.check-entry{background:#111c2c;border-block:1px solid #536074}
.check-entry .button{border-color:#7c8796}
.works .sample-note,.work-category,.body-copy{color:#b7bec8}
.round-arrow{border-color:#7c8796;color:#fff}
.work-card:hover .round-arrow{background:#142c4e;border-color:#b8903f;color:#fff}
.promise,.company-list>div,.faq details{border-color:#ffffff29}
.promise-number,.faq summary:before{color:#e2c47e}
.social-box{background:#25292e;border-color:#ffffff29;border-top-width:1px}
.social-links a{background:transparent;border-color:#738094;color:#fff}
.social-links a:last-child{background:transparent;border-color:#738094}
.access-photo,.access-map{border-radius:0}
.access-phone,.map-link{color:#cad3df}
.contact{background:#25292e;border-top:1px solid #b8903f}
.contact-action .button.light{background:transparent;color:#fff;border-color:#94a0b2}
.contact-action .button.light:hover{background:#142c4e;border-color:#b8903f;color:#fff}
.site-footer{background:#090d12}
.footer-links,.footer-details,.footer-bottom{color:#b8c2ce}
/* Keep utility dialogs and the familiar LINE action readable. */
dialog{--paper:#fff;--ink:#17212c;--muted:#505a66;--line:#d9dee5;--brown:#7a5a24;background:#fff;color:#17212c}
dialog h2,dialog h3{color:#142c4e}
.guide-head h2{color:#fff}
.line-floating-link{background:#087f38}
.line-dismiss span{background:#fff;color:#142c4e}
@media(max-width:1100px){.hero{height:720px}.hero-content{padding-top:85px}.hero h1{font-size:54px}.hero-word{font-size:105px;bottom:90px}.about>div:first-child{padding:32px}.about-image{height:470px}.medical-entry-copy{padding:35px 28px}.medical-entry h2{font-size:27px}}
@media(max-width:800px){.desktop-nav{background:#090d12;border-bottom:1px solid #ffffff40}.hero{height:700px}.hero-content{padding-top:80px}.hero h1{font-size:46px}.hero-word{font-size:86px;bottom:105px}.about{grid-template-columns:1fr 1fr;padding-block:80px}.about>div:first-child{padding:28px;margin-right:-45px}.about-image{height:480px}.about .section-title{font-size:29px}.medical-entry-copy{padding:32px 25px}.medical-entry h2{font-size:25px}.news{padding-block:65px}}
@media(max-width:580px){.hero{height:660px;min-height:660px}.hero-slides{left:0;opacity:1}.hero-slides .hero-image:first-child{object-position:58% center}.hero:after{background:linear-gradient(180deg,#090d1266,#25292e55 40%,#090d12f5)}.hero-content{padding:68px 6% 0}.hero-kicker{font-size:7px;letter-spacing:.13em}.hero h1{font-size:clamp(28px,9vw,43px);line-height:1.75;letter-spacing:.02em;margin:31px 0 23px}.hero-description{font-size:11px;line-height:2.2}.hero .button.light{width:224px;font-size:11px;margin-top:26px}.hero-word{font-size:clamp(45px,12.5vw,68px);bottom:119px;left:0}.hero-controls{left:6%;bottom:30px}.hero-bottom{right:6%;bottom:30px}.section-title{font-size:29px}.about{display:flex;flex-direction:column;align-items:stretch;padding-block:60px 80px}.about>div:first-child{padding:30px 23px;margin:0 20px -20px 0}.about .section-title{font-size:27px}.about-visual{margin-left:35px;transform:none}.about-image{height:320px}.about-visual:before{left:-12px;bottom:-12px}.about .image-tag{font-size:13px;top:35px;padding:17px 9px}.services{padding-block:62px}.medical-entry-copy{padding:28px 25px}.medical-entry h2{font-size:26px}.factory-entry .medical-entry-photo,.factory-entry .medical-entry-copy{grid-column:auto;grid-row:auto}.medical-entry .button{min-width:0}.contact{padding-block:58px}}

/* White breathing space and Gothic type, following the selected refinement. */
:root{--paper:#fff;--ink:#151c26;--muted:#54606f;--line:#d5dbe2;--brown:#596575}
body{background:#fff;color:var(--ink)}
main h2,main h3,.access-section h2,.access-details h3{color:#142c4e}
body .hero h1,body .section-title,body .promise h2,body .contact h2,body .service h3,body .medical-entry h2,body .work-meta h3{font-weight:700}
.hero h1{letter-spacing:.035em}
.hero-word{font-family:Arial,Helvetica,var(--sans);font-weight:700;letter-spacing:-.055em;font-size:clamp(65px,10vw,140px)}
.intro-strip,.strip-points{color:#54606f;border-color:#d5dbe2}
.eyebrow{color:#596575}
.news{background:#fff;border-color:#d5dbe2}
.news-meta,.news-post-link{color:#596575}
.news-card{border-color:#9da9b7}
.news-card h3{color:#142c4e;font-weight:700}
.news .button,.access-details .button{color:#142c4e;border-color:#142c4e}
.news .button:hover,.access-details .button:hover{color:#fff;background:#142c4e}
.about>div:first-child{background:#f4f5f7f7;border-left-color:#b8903f}
.about-visual:before{border-color:#aeb9c7}
.body-copy,.works .sample-note,.work-category{color:#54606f}
.services .body-copy{color:#d3dae4}
.services h2,.services h3,.medical-entry h2,.check-entry h2,.contact h2{color:#f3f3f1}
.medical-entry p:not(.eyebrow){color:#c3cbd6}
.medical-entry .eyebrow{color:#b8c2d0}
.round-arrow{border-color:#142c4e;color:#142c4e}
.promise,.company-list>div,.faq details{border-color:#d5dbe2}
.promise-number,.faq summary:before{color:#8a6a2a}
.social-box{background:#f4f5f7;border-color:#d5dbe2}
.social-links a,.social-links a:last-child{color:#142c4e;border-color:#9ba8b9}
.access-phone,.map-link{color:#526075}
.contact p,.contact-action small{color:#f1f3f5}
.footer-links,.footer-details,.footer-bottom{color:#b8c2ce}
.footer-bottom{border-color:#ffffff29}
@media(max-width:580px){.hero-word{font-size:clamp(42px,11.5vw,62px)}.hero h1{font-size:clamp(28px,8.7vw,41px);letter-spacing:0}.section-title{letter-spacing:.015em}.about>div:first-child{padding:28px 20px;margin-right:0}.about .section-title{font-size:23px;letter-spacing:0}.medical-entry h2{font-size:24px}}

/* User review: original logo, compact check entry and clear contact actions. */
.site-header .brand-logo img,.site-footer .brand-logo img{filter:none;mix-blend-mode:normal}
.site-header .brand-logo,.site-footer .brand-logo{background:#fff;outline:8px solid #fff}
.hero{height:700px}
.hero-content{padding-top:100px}
.hero-bottom{left:6%;right:auto}
.check-shortcut{position:absolute;z-index:4;right:28px;top:20px;display:flex;align-items:center;gap:10px;padding:8px 13px 8px 9px;background:#fffffff2;border:1px solid #c7ced7;color:#142c4e;box-shadow:0 4px 18px #0002;max-width:calc(100% - 36px)}
.check-shortcut img{width:35px;height:44px;object-fit:contain}
.check-shortcut small{display:block;font:10px/1.5 var(--detail);color:#596575}
.check-shortcut strong{display:block;font:700 13px/1.7 var(--sans)}
.check-shortcut-arrow{font:20px/1 Arial,sans-serif;color:#8a6a2a;margin-left:6px}
.check-shortcut:hover{background:#fff;border-color:#b8903f}
#company>.button{color:#142c4e;border-color:#142c4e}
#company>.button:hover{color:#fff;background:#142c4e}
.contact-phone-banner{display:block;padding:14px 16px;margin-top:16px;border:1px solid #a7b3c4;background:#fff;color:#142c4e;text-align:center}
.contact-phone-banner span{display:block;font:11px/1.7 var(--detail);color:#526075}
.contact-phone-banner strong{display:block;font:700 clamp(24px,2.3vw,30px)/1.55 var(--sans);letter-spacing:.025em;white-space:nowrap}
.contact-phone-banner:hover{background:#edf1f6;border-color:#b8903f}
@media(max-width:1100px){.hero{height:640px}.hero-content{padding-top:100px}}
@media(max-width:800px){.check-shortcut{right:20px;top:18px}.hero{height:620px}}
@media(max-width:580px){.hero{height:570px;min-height:570px}.hero-content{padding-top:110px}.check-shortcut{right:18px;top:14px;padding:6px 10px 6px 7px;gap:7px}.check-shortcut img{width:28px;height:35px}.check-shortcut small{font-size:9px}.check-shortcut strong{font-size:12px}.check-shortcut-arrow{font-size:17px;margin-left:3px}.hero-bottom{left:6%;right:auto;bottom:22px}.site-header .brand-logo,.site-footer .brand-logo{outline-width:5px}.contact-phone-banner strong{font-size:29px}.contact h2{font-size:26px}}

/* White header/footer and simplified guidance. */
.site-header,.site-footer{background:#fff;color:#142c4e}
.site-header{border-bottom-color:#d5dbe2}
.site-header .brand-logo,.site-footer .brand-logo{outline:0}
.desktop-nav,.brand,.menu-toggle{color:#142c4e}
.menu-toggle{border-color:#a7b3c4}
.nav-contact{background:#142c4e;border-color:#142c4e;color:#fff}
.nav-contact:hover{background:#233f61;color:#fff}
.footer-links,.footer-details,.footer-bottom{color:#526075}
.footer-bottom{border-color:#d5dbe2}
.intro-strip{justify-content:flex-end;padding-block:21px}
.works .section-heading{margin-bottom:32px}
.contact-phone-banner strong{display:flex;justify-content:center;align-items:center;gap:10px;font-size:28px}
.phone-symbol{width:24px;height:24px;flex:0 0 24px}
.services .service-top{justify-content:flex-end;margin-bottom:14px}
.services .services-grid{gap:16px;border:0}
.services .service{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-width:0;min-height:315px;padding:38px 26px 30px;border:1px solid #ffffff30;background:#25292e}
.services .service::before{content:"";position:absolute;z-index:-1;inset:-25px;background-image:var(--service-photo);background-size:cover;background-position:center;opacity:.24;filter:saturate(.45);transform:scale(1.04) translateY(var(--image-shift,0px));transition:transform 1.2s cubic-bezier(.16,1,.3,1),opacity .6s}
.services .service::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#25292e10,#25292e99)}
.services .service-painting{--service-photo:url('painting/coat-one.jpg')}
.services .service-waterproofing{--service-photo:url('waterproofing/actual/balcony-urethane.jpg')}
.services .service-maintenance{--service-photo:url('painting/preparation.jpg')}
.services .service h3{font-size:clamp(19px,1.65vw,24px);letter-spacing:.035em}
.services .service .body-copy{color:#eef2f7;margin-bottom:24px}
.services .service .text-link{margin-top:auto;align-self:flex-start;max-width:100%;gap:16px}
@media(hover:hover){.services .service:hover::before{opacity:.34;transform:scale(1.09) translateY(var(--image-shift,0px))}}
@media(max-width:1000px){.services .services-grid{gap:12px}.services .service{padding:30px 18px;min-height:325px}.services .service h3{font-size:20px}.services .service .text-link{font-size:12px}}
@media(max-width:580px){.services .services-grid{gap:16px}.services .service{min-height:245px;padding:30px 24px}.services .service h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.services .service::before{transform:none;transition:none}}
@media(max-width:800px){.desktop-nav{background:#fff;border-bottom-color:#d5dbe2}.intro-strip{display:none}}
@media(max-width:580px){.contact-phone-banner strong{font-size:clamp(22px,7.2vw,29px);gap:8px}.phone-symbol{width:22px;height:22px;flex-basis:22px}}
