:root{--ink:#191b1b;--muted:#6a6d6d;--line:#dddeda;--paper:#fff;--accent:#b89461}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:16px;line-height:1.85}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,textarea,select{outline-offset:5px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #eee;background:white;position:sticky;top:0;z-index:20}.brand{width:200px;text-align:center}.brand img{display:block;width:180px;height:58px;object-fit:contain}.brand span{font-size:10px;letter-spacing:2px}nav{display:flex;align-items:center;gap:32px;font-size:14px}.nav-contact{padding:10px 23px;background:var(--ink);color:white}#menu{display:none}.hero{display:grid;grid-template-columns:47% 53%;min-height:700px}.hero-copy{background:#1d2222;color:#fff;padding:80px 9% 28px 11%;display:flex;align-items:flex-start;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;margin:0 0 24px;color:var(--muted)}.hero .eyebrow{color:#d6c4a8;font-size:11px}h1{font-size:clamp(35px,3.65vw,59px);font-weight:500;letter-spacing:.04em;line-height:1.55;margin:20px 0 25px}h2{font-size:clamp(28px,2.9vw,44px);font-weight:500;line-height:1.65;letter-spacing:.03em;margin:0 0 28px}h3{font-weight:500;margin:0;font-size:23px;line-height:1.7}p{margin:0 0 20px}.hero-desc{color:#d0d4d2;font-size:16px;line-height:2.1;margin-bottom:32px}.button{display:inline-flex;justify-content:center;align-items:center;padding:16px 27px;border:1px solid transparent;cursor:pointer;min-height:56px;font-size:14px;transition:.2s}.light{background:white;color:var(--ink)}.dark{background:var(--ink);color:white}.button:hover{background:#b89461;color:white}.hero-foot{margin-top:auto;padding-top:58px;display:flex;width:100%;gap:20px;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#aeb5b2}.hero-visual{position:relative;overflow:hidden;background:#36342f;min-height:600px}.hero-visual>img{width:100%;height:100%;position:absolute;object-fit:cover}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#0008)}.image-label{position:absolute;top:27px;right:28px;color:#fff;font-size:10px;letter-spacing:1.5px;text-shadow:0 1px 5px #000;z-index:1}.visual-word{position:absolute;bottom:38px;left:40px;color:white;font-family:Georgia,serif;font-size:42px;font-style:italic;line-height:1.2;z-index:1}.section{padding:100px max(6%,calc((100% - 1200px)/2));scroll-margin-top:20px}.intro{display:grid;grid-template-columns:30% 70%;border-bottom:1px solid var(--line)}.intro p:last-child{color:var(--muted);line-height:2.2}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:55px}.section-heading>p{color:var(--muted);font-size:15px}.service{display:grid;grid-template-columns:50px 270px 1fr 95px;gap:24px;padding:36px 0;border-top:1px solid var(--line);align-items:start}.service:last-child{border-bottom:1px solid var(--line)}.number{font-family:Georgia,serif;color:#8c7555;font-size:24px}.service-title small{font-size:10px;letter-spacing:1.4px;color:var(--muted)}.service-title h3{margin-top:7px}.service p{font-size:15px;line-height:2;color:#616565;margin-bottom:17px}.service>a{font-size:13px;padding:10px 0;border-bottom:1px solid #9a9d98;justify-self:end;margin-top:10px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{font-size:12px;border:1px solid #e1e3e0;padding:3px 10px;color:#666}.process{background:#f3f4f1}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.steps article{border-top:1px solid #c4c9c3;padding-top:25px}.steps span{font-size:12px;letter-spacing:1px;color:var(--muted)}.steps h3{font-size:20px;margin:16px 0}.steps p{font-size:15px;color:var(--muted)}.partners{background:#1d2222;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px}.partners .eyebrow{color:#cbb592}.partners p{color:#c5cac7;font-size:15px;line-height:2}.partners .button{margin-top:20px}.partner-detail{border-left:1px solid #4b524e;padding:35px 0 10px 60px}.partner-detail h3{font-size:22px}.partner-detail ul{padding:0;list-style:none;margin:28px 0}.partner-detail li{border-bottom:1px solid #3d4640;padding:14px 0;font-size:15px}.company{display:grid;grid-template-columns:40% 60%;gap:30px}.company-logo{width:230px;max-width:80%;margin-top:20px}dl{margin:0}dl>div{border-bottom:1px solid var(--line);display:grid;grid-template-columns:120px 1fr;padding:23px 0;font-size:15px}dt{color:var(--muted)}dd{margin:0}.mobile-br{display:none}.contact{background:#f3f4f1;display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact h2{font-size:34px}.contact p{color:var(--muted);font-size:15px}form label{font-size:14px;display:block;margin-bottom:18px}input,select,textarea{display:block;width:100%;margin-top:9px;border:1px solid #d5d8d2;border-radius:0;background:white;padding:12px;color:var(--ink);font-size:16px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact .form-note{font-size:12px;margin-top:14px}.contact .button{width:100%}#result{border-top:1px solid #ccc;padding-top:25px;margin-top:25px}.copy{background:white;border:1px solid #777;padding:8px 20px;cursor:pointer}#status{font-size:13px;margin-left:10px}footer{padding:45px 6%;display:grid;grid-template-columns:200px 1fr auto;gap:25px;align-items:center}footer img{width:170px}footer p,footer a{font-size:12px;margin:0}footer small{grid-column:1/-1;font-size:10px;letter-spacing:1px;color:#777}@media(min-width:1600px){.hero{min-height:800px}}@media(max-width:1000px){nav{gap:16px}.service{grid-template-columns:35px 210px 1fr}.service>a{grid-column:3;justify-self:start;margin-top:0}.hero-copy{padding-top:60px}.partners{gap:40px}.partner-detail{padding-left:35px}.contact{gap:35px}.form-row{grid-template-columns:1fr;gap:0}footer{grid-template-columns:170px 1fr}footer>a{grid-column:2}}@media(max-width:700px){header{height:78px;padding:0 6%}.brand{width:150px}.brand img{width:145px;height:44px}.brand span{font-size:8px}#menu{display:block;border:0;background:none;font-size:12px;letter-spacing:1px;padding:15px}nav{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:25px;flex-direction:column;align-items:stretch;border-bottom:1px solid #ddd}nav.open{display:flex}.hero{display:flex;flex-direction:column}.hero-copy{padding:48px 7% 25px}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}h1{font-size:36px;margin-top:7px}.hero-desc{font-size:15px}.hero-foot{padding-top:35px}.hero-visual{min-height:390px}.visual-word{font-size:35px;left:25px;bottom:25px}.image-label{font-size:9px}.section{padding:65px 7%}.intro{grid-template-columns:1fr}.intro h2{font-size:28px}.intro p:last-child{font-size:14px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{font-size:14px}.service{grid-template-columns:30px 1fr;gap:12px;padding:27px 0}.service-title h3{font-size:23px}.service>div:last-of-type{grid-column:2}.service>a{grid-column:2}.service p{font-size:14px}.steps{grid-template-columns:1fr;gap:23px;margin-top:35px}.steps h3{margin:10px 0}.steps p{font-size:14px}.partners,.company,.contact{grid-template-columns:1fr;gap:30px}.partner-detail{border-left:0;border-top:1px solid #4b524e;padding:30px 0 0}.company-logo{display:none}dl>div{grid-template-columns:80px 1fr;font-size:14px}.mobile-br{display:block}.contact h2{font-size:28px}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr;gap:15px}footer>a{grid-column:1}footer small{grid-column:1}.eyebrow{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Navy leather brand direction */
:root{--ink:#f7f9fc;--muted:#c3cfdb;--line:#ffffff26;--paper:#10263e;--accent:#fff}body{background:#10263e url('/leather.svg');color:#f7f9fc}header{background:#10263ef5 url('/leather.svg');border-color:var(--line)}.brand img,.company-logo,footer img{filter:invert(1);mix-blend-mode:screen}.brand span{color:#e9edf4}nav{font-size:13px;gap:22px}.nav-contact{background:transparent;border:1px solid #ffffff80;color:#fff}.hero-copy{background:#0a1c30b3}.hero .eyebrow,.partners .eyebrow{color:#c4d3e2}.hero-desc,.hero-foot{color:#d5dee8}.light,.dark{background:transparent;color:#fff;border-color:#ffffff8c}.button:hover{background:#fff;color:#10263e}.intro,.service,.service:last-child,dl>div{border-color:var(--line)}.service p,.intro p:last-child,.section-heading>p,.steps p,.partners p,.contact p,dt{color:#c3cfdb}.number{color:white}.tags span{border-color:#ffffff35;color:#d7e2ed}.service>a{border-color:#ffffff70}.process,.contact{background:#071b3070}.steps article{border-color:#ffffff40}.partners{display:block;background:#081d3290}.partner-intro{max-width:760px;margin-bottom:40px}.recruit-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.recruit-grid article{border-top:1px solid #ffffff50;padding:32px 0}.recruit-number{font-size:12px;letter-spacing:1.5px;color:#bfcfdf}.recruit-grid h3{font-size:28px;margin:16px 0}.recruit-grid p{font-size:15px}.recruit-grid ul{list-style:none;padding:0;margin:25px 0}.recruit-grid li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}.partners .recruit-note{margin-top:15px;font-size:13px}.network{display:grid;grid-template-columns:42% 58%;align-items:center;border-bottom:1px solid var(--line);padding-top:65px;padding-bottom:65px}.network-copy>p:not(.eyebrow){color:#c3cfdb;line-height:2.1}.region-list{display:flex;gap:27px;margin:35px 0}.region-list>div{border-top:1px solid #ffffff50;padding-top:14px;flex:1}.region-list span{font-size:10px;letter-spacing:1px;color:#b7cadc}.region-list h3{font-size:23px;margin-top:6px}.network-copy .map-note{font-size:12px}.map-wrap{position:relative}.japan-map{display:block;width:100%;max-height:570px;font-family:inherit}.map-caption{display:block;text-align:right;font-size:10px;letter-spacing:2px;color:#b8cbdc}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.gallery-grid figure{margin:0}.gallery-grid img{display:block;width:100%;aspect-ratio:1.45;object-fit:cover;border:1px solid #ffffff20}.gallery-grid figcaption{padding:23px 0}.gallery-grid span{font-size:11px;color:#b8cbdc;letter-spacing:2px}.gallery-grid h3{font-size:23px;margin:10px 0}.gallery-grid p{color:#c3cfdb;font-size:15px}.gallery-note{font-size:12px;color:#b8cbdc}input,select,textarea{background:#071b30;color:#fff;border-color:#ffffff40}input::placeholder,textarea::placeholder{color:#97acbf}option{background:#10263e;color:#fff}.copy{background:transparent;color:white;border-color:#ffffff70}.contact #result{border-color:var(--line)}footer small{color:#b8cbdc}.company{border-top:1px solid var(--line)}@media(max-width:1000px){nav{gap:13px;font-size:12px}.brand{width:165px}.brand img{width:160px}.network{grid-template-columns:40% 60%}.region-list{gap:12px}.recruit-grid{gap:30px}}@media(max-width:700px){nav{background:#10263e url('/leather.svg');border-color:var(--line);font-size:15px}#menu{color:#fff}.network{grid-template-columns:1fr;gap:10px}.japan-map{max-height:470px}.network-copy .map-note{margin-bottom:0}.map-caption{text-align:center}.gallery-grid,.recruit-grid{grid-template-columns:1fr;gap:23px}.gallery-grid img{aspect-ratio:1.45}.gallery-grid h3{font-size:22px}.recruit-grid h3{font-size:26px}.recruit-grid article{padding-top:25px}.hero-copy{background:#0a1c3060}.brand{width:150px}.brand img{width:145px}.recruit-grid .button{width:100%}.region-list{gap:20px}}
/* Editorial contrast: crisp white planes, navy leather, serif headlines. */
:root{--heading-font:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--navy:#10263e;--soft-ink:#526174}
h1,h2,h3{font-family:var(--heading-font);font-weight:600;letter-spacing:.055em}h1{line-height:1.65}h2{line-height:1.7}.eyebrow,.service-title small,.recruit-number,.gallery-grid figcaption>span,.steps article>span{font-family:Arial,'Helvetica Neue',sans-serif;letter-spacing:.19em;font-weight:600}.eyebrow{font-size:12px}.number{font-size:32px;font-style:italic}.hero{position:relative}.hero-copy{position:relative;padding-bottom:42px}.hero-copy:after{content:'';position:absolute;right:-1px;top:0;bottom:0;width:42px;background:#fff;clip-path:polygon(100% 0,100% 100%,0 100%);z-index:2;pointer-events:none}.hero .eyebrow{font-size:12px}.hero-foot{font-size:12px}.visual-word{font-size:clamp(36px,4vw,64px)}
.intro,.services,.process,.contact{background:#fff;color:var(--navy);--line:#10263e24;--muted:#526174}.intro{position:relative;padding-top:110px;padding-bottom:110px}.intro:before{content:'';position:absolute;left:6%;top:46px;width:90px;height:2px;background:var(--navy);transform:rotate(-22deg)}.intro p:last-child,.services .section-heading>p,.services .service p,.process .steps p,.contact p{color:var(--soft-ink)}.intro .eyebrow,.services .eyebrow,.process .eyebrow,.contact .eyebrow{color:#526174}.services{position:relative;margin-top:0;padding-top:105px}.services:before{content:'';position:absolute;left:0;right:0;top:-45px;height:46px;background:#fff;clip-path:polygon(0 100%,100% 0,100% 100%);pointer-events:none}.network{padding-bottom:115px;background:linear-gradient(125deg,#071b305c,transparent 70%)}.services .number{color:var(--navy)}.services .service-title small{color:#526174;font-size:12px}.services .tags span{border-color:#10263e30;color:#526174}.services .service>a{border-color:#10263e70;font-size:14px}.services .service,.services .service:last-child{border-color:#10263e26}.services .section-heading{margin-bottom:45px}.service{padding:38px 0}.service-title h3{font-size:25px}.design-gallery{position:relative;background:#0a1d3090;padding-top:120px;padding-bottom:120px}.design-gallery:before{content:'';position:absolute;left:6%;top:46px;width:110px;height:2px;background:#fff;transform:rotate(-22deg)}.gallery-grid{gap:40px}.gallery-grid img{border:0;aspect-ratio:1.4}.gallery-grid h3{font-size:24px}.gallery-grid figcaption{border-bottom:1px solid #ffffff35;padding:26px 0 18px}.gallery-grid figcaption>span{font-size:12px}.gallery-note{margin-top:25px}.process{position:relative;padding-top:120px;padding-bottom:135px;background:#edf1f5}.process:before{content:'';position:absolute;top:0;left:0;right:0;height:38px;background:#0a1d30;clip-path:polygon(0 0,100% 0,0 100%);pointer-events:none}.steps article{border-color:#10263e35}.steps span{color:#526174}.steps h3{font-size:23px}.partners{position:relative;background:linear-gradient(130deg,#061626b3,#1d3a5280)}.partners:before{content:'';position:absolute;top:-45px;left:0;right:0;height:46px;background:#edf1f5;clip-path:polygon(0 0,100% 0,100% 100%);pointer-events:none}.recruit-grid{gap:55px}.recruit-grid article{border-top:2px solid #fff;padding-top:30px}.recruit-number{font-size:12px}.recruit-grid h3{font-size:29px}.partners .light{background:#fff;color:var(--navy);border-color:#fff}.partners .light:hover{background:#dce6ef}.company{background:#10263e5c;padding-top:90px;padding-bottom:110px}.company h2{font-size:42px}.contact{position:relative;padding-top:110px}.contact:before{content:'';position:absolute;left:0;right:0;top:-40px;height:41px;background:#fff;clip-path:polygon(0 100%,100% 0,100% 100%);pointer-events:none}.contact h2{font-size:clamp(28px,2.7vw,40px)}.contact input,.contact select,.contact textarea{background:#f3f6f8;color:var(--navy);border-color:#10263e30}.contact input::placeholder,.contact textarea::placeholder{color:#68798b}.contact option{background:#fff;color:var(--navy)}.contact .dark{background:var(--navy);color:#fff;border-color:var(--navy)}.contact .dark:hover{background:#284760}.contact .copy{color:var(--navy);border-color:#10263e80}.contact #result{border-color:#10263e30}footer{border-top:1px solid #ffffff26}.hero .light{background:#fff;color:var(--navy);border-color:#fff}.hero .light:hover{background:#dce6ef}.region-list span,.map-caption{font-size:12px}.gallery-note,.network-copy .map-note{font-size:13px}.hero-desc,.service p,.steps p,.partners p,.gallery-grid p,.contact p{font-size:16px}.services .tags span{font-size:13px}
@media(max-width:1000px){.hero-copy:after{width:25px}.service-title h3{font-size:23px}.recruit-grid h3{font-size:26px}.recruit-grid{gap:30px}}
@media(max-width:700px){h1{font-size:clamp(30px,8.3vw,42px);letter-spacing:.035em}h2{font-size:29px;letter-spacing:.035em}.hero-copy{padding-bottom:48px}.hero-copy:after{top:auto;left:0;right:0;bottom:-1px;width:100%;height:25px;clip-path:polygon(0 100%,100% 0,100% 100%)}.hero .eyebrow{font-size:12px;letter-spacing:.11em}.hero-foot{font-size:12px;letter-spacing:0;gap:10px}.section{padding:76px 7%}.intro{padding-top:90px}.intro:before,.design-gallery:before{top:32px;left:7%;width:65px}.intro h2{font-size:28px}.intro p:last-child,.service p,.steps p,.gallery-grid p,.contact p{font-size:16px}.network{padding-bottom:95px}.region-list{gap:14px}.region-list span{font-size:12px;letter-spacing:.04em}.services:before{top:-25px;height:26px}.services .section-heading>p{font-size:16px}.design-gallery{padding-top:90px;padding-bottom:80px}.gallery-grid h3{font-size:23px}.process{padding-top:80px;padding-bottom:95px}.process:before{height:22px}.partners:before{top:-25px;height:26px}.recruit-grid h3{font-size:25px}.company h2{font-size:30px}.contact:before{top:-25px;height:26px}.contact{padding-top:80px}.hero-visual{min-height:350px}.steps h3{font-size:23px}.eyebrow{font-size:12px}.service-title h3{font-size:24px}}

.contact #send-status{padding:18px 20px;border:1px solid #10263e40;background:#e8eff5;color:#10263e}.contact .direct-contact a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.contact button:disabled{opacity:.65;cursor:wait}

.contact #send-status[data-state="error"]{background:#fff0ed;border-color:#b85a46;color:#823a2d}.contact #send-status[data-state="success"]{background:#e8eff5;border-color:#10263e80}

/* Browseable service guides and area pages. */
.hero-region{font-size:15px;line-height:1.8;letter-spacing:.04em;color:#e0e9f2;margin:0 0 18px}.specialties{background:#fff;color:#10263e;border-top:1px solid #10263e20}.specialties>.eyebrow,.specialties>p{color:#526174}.specialties h2{max-width:800px}.specialty-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:36px 0}.specialty-links a{display:flex;align-items:center;padding:26px 20px;border-top:1px solid #10263e30;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:21px;font-weight:600;line-height:1.6;transition:background .2s}.specialty-links a:hover{background:#e9eff5}.area-links{display:flex;gap:25px;flex-wrap:wrap;margin:28px 0}.area-links a{font-size:16px;border-bottom:1px solid currentColor;padding:8px 0}.detail-hero{background:#081b306b;padding-top:55px;padding-bottom:85px}.breadcrumb{font-size:14px;color:#c3cfdb;margin-bottom:48px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.detail-hero h1{margin:20px 0 30px;font-size:clamp(34px,4vw,58px)}.detail-hero>p:not(.eyebrow):not(.breadcrumb){max-width:790px;color:#d5e0ec;font-size:17px;line-height:2}.detail-hero .detail-lead{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:26px!important;color:#fff!important}.detail-hero .button{margin-top:15px;background:#fff;color:#10263e}.detail-body,.detail-cost{background:#fff;color:#10263e;--line:#10263e26}.detail-body p,.detail-cost p{color:#526174}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:40px}.detail-grid article{border-top:1px solid #10263e40;padding-top:24px}.detail-grid .number{color:#10263e;font-size:27px}.detail-grid h3{font-size:23px;margin:12px 0 18px}.detail-grid p{font-size:16px;line-height:2}.detail-cost{background:#edf1f5}.detail-cost .eyebrow{color:#526174}.detail-cost dl{margin-top:32px;max-width:900px}.detail-cost dl>div{grid-template-columns:190px 1fr;border-color:#10263e30;font-size:16px;gap:18px}.detail-cost dt{color:#10263e;font-weight:600}.detail-note{font-size:14px;margin-top:30px}.detail-body details{border-top:1px solid #10263e30;padding:23px 0}.detail-body details:last-child{border-bottom:1px solid #10263e30}.detail-body summary{cursor:pointer;font-size:18px;font-weight:500;line-height:1.8}.detail-body details p{margin:18px 0 0;max-width:900px}.faq-heading{margin-top:75px}.check-list{padding-left:1.4em;color:#526174;line-height:2.2;margin:30px 0}.detail-related{background:#0a1d3060}.detail-related .specialty-links a{border-color:#ffffff30}.detail-related .specialty-links a:hover{background:#ffffff12}.detail-related .button{margin-top:25px}.detail-cost .dark{color:#fff;background:#10263e}.detail-page .section{scroll-margin-top:100px}@media(max-width:1000px){.specialty-links{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{gap:24px}.detail-grid h3{font-size:21px}}@media(max-width:700px){.hero-region{font-size:14px}.specialty-links{grid-template-columns:1fr;margin-top:25px}.specialty-links a{font-size:22px;padding:22px 0}.detail-hero{padding-top:35px;padding-bottom:65px}.breadcrumb{margin-bottom:28px;font-size:13px}.detail-hero h1{font-size:32px;overflow-wrap:anywhere}.detail-hero .detail-lead{font-size:23px!important}.detail-hero>p:not(.eyebrow):not(.breadcrumb){font-size:16px}.detail-grid{grid-template-columns:1fr;gap:28px}.detail-grid h3{font-size:24px}.detail-cost dl>div{grid-template-columns:1fr;gap:8px}.area-links{gap:12px;flex-direction:column;align-items:flex-start}.faq-heading{margin-top:55px}.detail-body summary{font-size:17px}.detail-page .button{width:100%}.detail-page .section{scroll-margin-top:78px}}

/* User-supplied construction photos. */
.works{background:#fff;color:#10263e}.works .eyebrow,.works .section-heading>p{color:#526174}.works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 26px}.work-card{margin:0;min-width:0}.work-photo{display:block;overflow:hidden;background:#edf1f5;aspect-ratio:4/3}.work-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.work-photo:hover img{transform:scale(1.025)}.work-card.wood{grid-column:span 2}.work-card.wood .work-photo{aspect-ratio:2/1}.work-card figcaption{padding:17px 0;border-bottom:1px solid #10263e26}.work-card h3{font-size:20px;line-height:1.7;letter-spacing:.025em}.works-links{display:flex;gap:28px;flex-wrap:wrap;margin-top:38px}.works-links a,.works-all{display:inline-block;border-bottom:1px solid #10263e65;font-size:16px;padding:8px 0}.works-all{margin-top:32px}@media(max-width:1100px){header nav{gap:16px}.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.works-grid{grid-template-columns:1fr;gap:26px}.work-card.wood{grid-column:auto}.work-card h3{font-size:21px}.works-links{gap:12px;flex-direction:column;align-items:flex-start}.works .section-heading{display:block}}@media(prefers-reduced-motion:reduce){.work-photo img{transition:none}}

.works-all-button{margin-top:32px;background:#10263e;color:#fff}.works>p:not(.eyebrow){color:#526174;max-width:800px}.detail-page .works+.works{border-top:1px solid #10263e26}

.works-cta{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:55px;padding-bottom:55px;background:#0a1d30}.works-cta h2{font-size:clamp(25px,2.3vw,34px);margin-bottom:0}.works-cta .eyebrow{color:#bacbdd;margin-bottom:14px}.works-cta .button{flex-shrink:0}@media(max-width:700px){.works-cta{display:block}.works-cta .button{margin-top:25px;width:100%}}

/* Restrained interior materials: walnut invitation and honed stone company panel. */
#works.works-cta{background-color:#251c17;background-image:linear-gradient(90deg,rgba(16,17,20,.62),rgba(16,17,20,.38)),url('/assets/materials/walnut.webp');background-size:cover;background-position:center;color:#fff;border-top:1px solid #bca47b45;border-bottom:1px solid #bca47b45;padding-top:65px;padding-bottom:65px}
#works.works-cta .eyebrow{color:#e2cfb4}
#works.works-cta .button{background:#fff;color:#10263e;border-color:#fff}
#works.works-cta .button:hover{background:#ede5da;border-color:#ede5da}
#works+.process:before{background:#251c17}
#company.company{background-color:#eee9df;background-image:linear-gradient(rgba(250,248,242,.56),rgba(250,248,242,.56)),url('/assets/materials/limestone.webp');background-size:cover;background-position:center;color:#10263e;--line:#10263e26;--muted:#4c5865;border-color:#10263e20;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:50px}
#company .eyebrow,#company dt{color:#4c5865}
#company dl>div{border-color:#10263e26}
#company dd{overflow-wrap:anywhere}
#company .company-logo{filter:none;mix-blend-mode:multiply}
#company a{text-underline-offset:4px}
#company a:hover{text-decoration:underline}
@media(max-width:700px){#works.works-cta{padding-top:48px;padding-bottom:48px;background-position:35% center}#company.company{grid-template-columns:minmax(0,1fr);gap:30px;background-position:center}#company dl>div{grid-template-columns:85px minmax(0,1fr);gap:12px}}

/* Subtle depth on display type, diagonal edges and actions. */
.hero h1,.network h2,.design-gallery h2,.partners h2,.detail-hero h1,#works.works-cta h2{text-shadow:0 2px 7px rgba(0,0,0,.24)}
.intro:before,.design-gallery:before{box-shadow:0 2px 5px rgba(0,0,0,.15)}
.services:before,.contact:before{clip-path:none;background:linear-gradient(to bottom right,transparent 49.5%,#fff 50.5%);filter:drop-shadow(0 -3px 4px rgba(2,14,28,.13))}
.partners:before{clip-path:none;background:linear-gradient(to top right,transparent 49.5%,#edf1f5 50.5%);filter:drop-shadow(0 3px 4px rgba(2,14,28,.13))}
.process:before{clip-path:none;background:linear-gradient(to bottom right,#251c17 49.5%,transparent 50.5%);filter:drop-shadow(0 3px 4px rgba(2,14,28,.13))}
#works+.process:before{background:linear-gradient(to bottom right,#251c17 49.5%,transparent 50.5%)}
.button,.nav-contact{box-shadow:0 3px 9px rgba(2,14,28,.14);transition:background .2s,color .2s,box-shadow .2s}
.button:hover,.nav-contact:hover{box-shadow:0 5px 13px rgba(2,14,28,.20)}
.button:active,.nav-contact:active{box-shadow:0 1px 4px rgba(2,14,28,.12)}
.button:disabled{box-shadow:none}
@media(max-width:700px){.hero h1,.network h2,.design-gallery h2,.partners h2,.detail-hero h1,#works.works-cta h2{text-shadow:0 2px 5px rgba(0,0,0,.20)}.services:before,.contact:before{filter:drop-shadow(0 -2px 3px rgba(2,14,28,.11))}.partners:before,.process:before{filter:drop-shadow(0 2px 3px rgba(2,14,28,.11))}}
@media(prefers-reduced-motion:reduce){.button,.nav-contact{transition:none}}

/* Visible depth, including on mobile: defined contact shadows plus soft falloff. */
.hero h1,.network h2,.design-gallery h2,.partners h2,.detail-hero h1,#works.works-cta h2{text-shadow:0 3px 1px rgba(0,0,0,.50),0 7px 14px rgba(0,0,0,.42)}
#company h2{text-shadow:0 1px 0 #fff,2px 4px 5px rgba(16,38,62,.23)}
.intro:before,.design-gallery:before{height:3px;box-shadow:0 4px 2px rgba(0,0,0,.35),0 7px 9px rgba(0,0,0,.25)}
.hero-copy:after{clip-path:none;background:linear-gradient(to bottom right,transparent 49.5%,#fff 50.5%);filter:drop-shadow(-5px 3px 4px rgba(0,0,0,.40))}
.services:before,.contact:before{filter:drop-shadow(0 -5px 2px rgba(0,0,0,.30)) drop-shadow(0 -9px 8px rgba(0,0,0,.22));z-index:1}
.partners:before,.process:before{filter:drop-shadow(0 5px 2px rgba(0,0,0,.30)) drop-shadow(0 9px 8px rgba(0,0,0,.22));z-index:1}
#works.works-cta{box-shadow:inset 0 5px 12px rgba(0,0,0,.30),inset 0 -3px 8px rgba(0,0,0,.22)}
#company.company{box-shadow:inset 0 6px 12px rgba(16,38,62,.18)}
.button,.nav-contact{box-shadow:0 3px 0 rgba(0,0,0,.23),0 8px 16px rgba(0,0,0,.26)}
.button:hover,.nav-contact:hover{box-shadow:0 3px 0 rgba(0,0,0,.25),0 10px 20px rgba(0,0,0,.32)}
.button:active,.nav-contact:active{box-shadow:0 1px 0 rgba(0,0,0,.20),0 3px 7px rgba(0,0,0,.22)}
.button:disabled{box-shadow:none}
@media(max-width:700px){.hero h1,.network h2,.design-gallery h2,.partners h2,.detail-hero h1,#works.works-cta h2{text-shadow:0 3px 1px rgba(0,0,0,.50),0 6px 10px rgba(0,0,0,.38)}.hero-copy:after{filter:drop-shadow(0 -4px 4px rgba(0,0,0,.35))}.services:before,.contact:before{filter:drop-shadow(0 -4px 2px rgba(0,0,0,.30)) drop-shadow(0 -7px 6px rgba(0,0,0,.20))}.partners:before,.process:before{filter:drop-shadow(0 4px 2px rgba(0,0,0,.30)) drop-shadow(0 7px 6px rgba(0,0,0,.20))}}

/* Direct contact on service, area and construction gallery pages. */
.detail-contact{padding:28px max(6vw,20px);border-top:1px solid #ffffff26;background:#10263e;color:#f7f9fc}.detail-contact p{margin:8px 0;font-size:16px;line-height:1.8}.detail-contact a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.detail-contact a:focus-visible{outline:2px solid #fff;outline-offset:4px}@media(max-width:700px){.detail-contact{padding:24px 20px}.detail-contact a{display:inline-block;padding:8px 0}}
