:root{--sc-canvas:#fafaf8;--sc-surface:#f0f1ee;--sc-ink:#001d43;--sc-ink-soft:#4d5d6c;--sc-accent:#001d43;--sc-accent-ink:#fff;--sc-font-display:'Cormorant Garamond',Georgia,serif;--sc-font-text:'DM Sans',Arial,sans-serif;--navy:#001d43;--paper:#fafaf8;--muted:#4d5d6c;--line:#d5d9dc;--gutter:clamp(24px,5.5vw,88px)}
html{scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--sc-font-text);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}button{font:inherit}button,a,summary{outline-offset:6px}:focus-visible{outline:2px solid currentColor}::selection{background:#001d43;color:white}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2{font-family:var(--sc-font-display);font-weight:500;letter-spacing:-.045em;line-height:.98;text-wrap:balance}h2{font-size:clamp(44px,4.7vw,72px)}h3{font-size:21px;font-weight:500;letter-spacing:-.035em;line-height:1.3}h1 em,h2 em{font-weight:400}p{text-wrap:pretty}.wrap{width:min(100%,1512px);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(72px,8vw,128px)}.small-label,.eyebrow{font-size:11px;font-weight:500;letter-spacing:.17em;text-transform:uppercase}.small-label{display:block;margin-bottom:27px}.skip-link{position:fixed;top:12px;left:16px;transform:translateY(-200%);z-index:100;background:var(--navy);color:white;padding:14px 22px}.skip-link:focus{transform:none}.header{position:sticky;top:0;z-index:50;background:rgba(250,250,248,.96);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}.header.scrolled{border-color:var(--line);box-shadow:0 5px 25px #001d4306}.header-inner{height:112px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:block;flex-shrink:0;width:222px}.brand img{width:100%;height:auto}.header nav{display:flex;gap:32px;font-size:13px}.header nav a{position:relative;padding-block:12px}.header nav a::after{content:'';position:absolute;bottom:5px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s}.header nav a:hover::after,.header nav a:focus-visible::after{transform:scaleX(1)}.header-cta{font-size:12px;border-bottom:1px solid var(--navy);padding-block:10px;display:flex;gap:24px;align-items:center}.header-cta span{font-size:20px}.hero{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:20px;min-height:690px;padding-block:42px 92px}.hero-copy{position:relative;z-index:2;padding-bottom:24px}.eyebrow{margin-bottom:28px}.hero h1{font-size:clamp(80px,8.7vw,134px);line-height:.91;margin-left:-5px}.hero-intro{font-size:15px;line-height:1.8;color:var(--muted);max-width:39ch;margin-top:32px}.hero-actions{margin-top:33px;display:flex;align-items:center;gap:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:var(--navy);color:#fff;font-size:13px;padding:17px 23px;min-height:54px;border:1px solid var(--navy);transition:background .18s,transform .18s}.button span{font-size:19px;line-height:1}.button:hover{background:#173e67}.button:active{transform:translateY(2px)}.phone-link{font-size:13px;padding-block:12px;border-bottom:1px solid var(--line)}.phone-link:hover{border-color:var(--navy)}.hero-composition{position:relative;height:570px;margin-left:15px;padding-left:38px}.hero-ground{position:absolute;background:#e7eae6;inset:24px -20px 30px 72px}.hero-photo{height:530px;width:100%;position:relative;overflow:hidden;z-index:1}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%}.hero-detail{position:absolute;bottom:-12px;left:-30px;width:150px;padding:8px;background:var(--paper);box-shadow:0 14px 40px #001d4312;z-index:3;transform:rotate(-5deg)}.hero-detail img{width:100%;height:162px;object-fit:cover;object-position:center}.hero-detail figcaption{font-size:9px;padding:9px 1px 4px;letter-spacing:.02em}.hero-line{position:absolute;width:90px;height:1px;background:var(--navy);right:-20px;bottom:7px;z-index:2}.craft{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12%}.craft-intro p{margin-top:29px;color:var(--muted);font-size:15px;max-width:45ch}.services{padding-top:20px}.services details{border-bottom:1px solid var(--line);padding-block:24px}.services details:first-child{border-top:1px solid var(--line)}.services summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:20px;font-weight:400;list-style:none;min-height:28px}.services summary::-webkit-details-marker{display:none}.services details p{color:var(--muted);font-size:14px;margin-top:18px;padding-right:36px;line-height:1.9}.plus{width:16px;height:16px;position:relative;flex-shrink:0}.plus::before,.plus::after{content:'';position:absolute;background:var(--navy);width:14px;height:1px;top:7px;left:1px}.plus::after{transform:rotate(90deg);transition:transform .2s}details[open] .plus::after{transform:rotate(0)}.work-section{background:#eef0ed}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:58px}.section-heading>p{color:var(--muted);font-size:14px;line-height:1.9;padding-bottom:5px}.project-photos{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px}.project-photos figure{overflow:hidden}.project-photos img{width:100%;height:550px;object-fit:cover;object-position:50% 52%}.project-photos figcaption{font-size:11px;letter-spacing:.06em;padding-top:14px;color:var(--muted)}.finish-line{position:absolute;width:1px;top:0;bottom:34px;left:50%;background:#001d4330;transform:scaleY(var(--line-progress,1));transform-origin:top;pointer-events:none}.finish-line span{position:absolute;width:9px;height:9px;background:var(--navy);bottom:0;left:-4px}.project-caption{display:flex;justify-content:space-between;gap:40px;margin-top:28px}.project-caption p{font-size:13px;line-height:1.8;color:var(--muted);max-width:47ch}.project-primary{padding-bottom:73px;border-bottom:1px solid #ccd2cf}.project-pair{display:grid;grid-template-columns:1.03fr 1fr;gap:9%;padding-top:70px;align-items:start}.project-wall{padding-right:35px}.switcher figure{overflow:hidden}.switcher img{width:100%;height:445px;object-fit:cover;object-position:center}.project-pair .project-caption{display:block;margin-top:22px}.project-pair .project-caption p{margin-top:12px;max-width:43ch}.project-ceiling{padding-top:82px}.project-ceiling img{height:290px;object-position:35% center}.photo-controls{display:flex;background:transparent;gap:8px;margin-top:14px}.photo-controls[hidden]{display:none}.photo-controls button{padding:10px 15px;border:1px solid #b8c2c8;background:transparent;color:var(--navy);font-size:11px;cursor:pointer;min-height:42px;transition:background .18s,color .18s}.photo-controls button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.photo-controls button:hover{border-color:var(--navy)}.project-ceiling>.text-link{margin-top:38px}.text-link{font-size:13px;border-bottom:1px solid currentColor;display:inline-flex;align-items:center;gap:35px;padding-block:10px}.text-link span{font-size:20px}.text-link:hover span{transform:translate(2px,-2px)}.text-link span{transition:transform .18s}.detail-section{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}.detail-image{overflow:hidden}.detail-image img{width:100%;height:345px;object-fit:cover;object-position:58% center}.detail-copy h2{font-size:clamp(40px,4.1vw,62px)}.detail-copy p{font-size:14px;color:var(--muted);line-height:1.85;margin-top:25px;max-width:41ch}.detail-copy .text-link{margin-top:24px}.contact-section{background:var(--navy);color:#fff}.contact-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;padding-block:88px 96px}.contact-inner h2{font-size:clamp(60px,6.4vw,96px)}.contact-inner .small-label{color:#b9c5d5}.contact-inner p{color:#c2cddd;font-size:14px;margin-top:26px}.contact-phone{font-size:clamp(25px,3vw,44px);letter-spacing:-.04em;display:block;padding-bottom:24px;border-bottom:1px solid #ffffff40;margin-bottom:30px;white-space:nowrap}.contact-phone .small-label{font-size:10px;letter-spacing:.16em;margin-bottom:13px}.contact-phone>span:last-child{font-size:25px;float:right;margin-top:12px}.button-light{background:var(--paper);color:var(--navy);border-color:var(--paper)}.button-light:hover{background:#dfe6ea}.contact-inner .contact-note{font-size:11px;margin-top:16px}.footer{min-height:148px;display:flex;align-items:center;justify-content:space-between;gap:25px}.footer .brand{width:190px}.footer p,.footer>a:last-child{font-size:12px}.footer p{color:var(--muted)}.footer>a:last-child{border-bottom:1px solid var(--line);padding-block:8px}.mobile-contact{display:none}.project img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}@media(hover:hover) and (pointer:fine){.project figure:hover img{transform:scale(1.025)}}
@media(min-width:1550px){.hero{min-height:760px}.hero-composition{height:600px}.hero-photo{height:570px}}
@media(max-width:1100px){.header-inner{height:100px;gap:20px}.brand{width:190px}.header nav{gap:20px}.header-cta{gap:12px;font-size:11px}.hero{min-height:610px;gap:8px;padding-bottom:75px}.hero-composition{height:480px;padding-left:24px}.hero-photo{height:450px}.hero-detail{width:130px;left:-10px}.hero-detail img{height:140px}.hero-intro{font-size:14px}.hero-actions{gap:18px;flex-wrap:wrap}.craft{gap:8%}.project-photos img{height:450px}.project-wall{padding-right:0}.detail-section{gap:6%}.detail-image img{height:320px}}
@media(max-width:760px){html{scroll-padding-top:100px}.header-inner{height:88px;padding-inline:24px}.brand{width:164px}.header nav{gap:18px;font-size:12px}.header nav a:first-child{display:none}.header-cta{display:none}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:65px;gap:30px;min-height:0}.hero-copy{padding:0}.eyebrow{font-size:10px;margin-bottom:24px}.hero h1{font-size:clamp(78px,16vw,112px);line-height:.91;margin-left:-2px}.hero-intro{font-size:14px;margin-top:24px;max-width:40ch}.hero-actions{margin-top:25px;gap:24px}.button{font-size:12px;min-height:51px;padding:14px 18px;gap:25px}.phone-link{font-size:12px}.hero-composition{height:350px;margin:12px 10px 12px 35px;padding:0}.hero-photo{height:330px}.hero-photo img{object-position:center 55%}.hero-ground{inset:20px -12px 3px 20px}.hero-detail{width:115px;left:-35px;bottom:-12px;padding:6px}.hero-detail img{height:124px}.hero-detail figcaption{font-size:7.5px}.hero-line{right:-12px;bottom:-10px;width:60px}.craft{grid-template-columns:1fr;gap:30px}.craft-intro p{font-size:14px;max-width:50ch}.services{padding-top:0}.services summary{font-size:18px}.services details p{padding-right:12px}.small-label{font-size:10px;margin-bottom:22px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:24px;font-size:13px;max-width:42ch}.section-heading>p br{display:none}.project-photos{gap:10px}.project-photos img{height:310px;object-position:49% center}.project-photos figcaption{font-size:10px;letter-spacing:0}.project-caption{display:block;margin-top:25px}.project-caption h3{font-size:20px}.project-caption p{margin-top:12px;max-width:48ch}.project-primary{padding-bottom:45px}.project-pair{grid-template-columns:1fr;gap:45px;padding-top:45px}.switcher img{height:390px}.project-ceiling{padding-top:0}.project-ceiling img{height:230px}.project-ceiling>.text-link{margin-top:25px}.detail-section{grid-template-columns:1fr;gap:33px}.detail-image img{height:250px}.detail-copy p{max-width:49ch}.contact-inner{grid-template-columns:1fr;gap:42px;padding-block:65px}.contact-inner h2{font-size:65px}.contact-phone{font-size:clamp(28px,7.9vw,42px);margin-bottom:24px}.contact-phone>span:last-child{font-size:23px;margin-top:5px}.contact-inner p{margin-top:21px}.footer{padding-block:30px 92px;flex-wrap:wrap;gap:22px;min-height:0}.footer .brand{width:162px}.footer p{display:none}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:60;display:grid;grid-template-columns:1.2fr 1fr;background:var(--paper);padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);gap:8px}.mobile-contact a{font-size:11px;font-weight:500;text-align:center;padding:12px 8px;border:1px solid var(--navy);min-height:43px}.mobile-contact a:last-child{background:var(--navy);color:white}.desktop-break{display:none}}
@media(max-width:380px){.header nav{gap:12px}.header nav a{font-size:11px}.header .brand{width:146px}.hero h1{font-size:77px}.hero-actions{gap:15px}.hero-composition{height:300px}.hero-photo{height:280px}.project-photos img{height:245px}.contact-inner h2{font-size:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}[data-sc-in],[data-sc-parallax]{opacity:1!important;transform:none!important;clip-path:none!important}.finish-line{transform:none}.project img{transform:none!important}}
/* Progressive enhancement: the source remains complete when JavaScript is off. */
html:not(.sc-ready) [data-sc-in],html:not(.sc-ready) [data-sc-stagger]>*{opacity:1;transform:none}
.hero-detail{rotate:-5deg}
@media(prefers-reduced-motion:reduce){.hero-detail{rotate:0deg}}
