:root{--limestone:#e7e2d9;--ivory:#f7f5ef;--navy:#243746;--slate:#5b6870;--walnut:#514237;--beige:#cdbfa9;--brass:#ae8b5b;--serif:'Fraunces',serif;--sans:'Manrope',sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--slate);font:14px/1.7 var(--sans)}a{color:inherit;text-decoration:none}img{width:100%;height:100%;object-fit:cover;display:block}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.96;letter-spacing:-.06em;color:var(--navy)}h1{font-size:clamp(4rem,7.7vw,8.4rem);margin:20px 0}h2{font-size:clamp(3.2rem,6.2vw,6.4rem);margin:15px 0}h3{font-size:1.5rem;margin:0}em{font-style:italic;color:var(--brass)}.section-mark,.eyebrow,.hero-phone,.cover,.hero-index,.hero-rule,.hero-vertical,.image-note,.location-stamp span,footer small{font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase}.section-mark{position:absolute;left:8vw;top:45px;color:var(--brass)}header{height:76px;padding:0 8vw;display:flex;align-items:center;gap:28px;background:var(--ivory);border-bottom:1px solid #d0cabf;position:sticky;top:0;z-index:20;transition:.3s}.brand{display:flex;align-items:center;gap:10px;font:10px var(--mono);line-height:1}.brand b{width:37px;height:37px;background:var(--navy);color:#fff;display:grid;place-items:center;font:13px var(--serif)}.brand i{font:15px var(--serif);color:var(--brass)}header nav{display:flex;gap:22px;margin:auto;font-size:11px;font-weight:700}header nav a:hover{color:var(--brass)}.head-cta{font:10px var(--mono);color:var(--navy);border:1px solid var(--navy);padding:9px 12px}.menu{display:none;background:none;border:1px solid var(--slate);padding:7px 10px}.hero{min-height:770px;display:grid;grid-template-columns:45% 55%;background:var(--navy);color:#fff;position:relative;overflow:hidden}.hero-copy{padding:10vw 5vw 5vw 11vw;position:relative}.eyebrow{color:var(--brass)}.hero-copy p{max-width:475px;color:#d9e0e0;font-size:16px}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:30px}.button{background:var(--brass);color:#fff;border:0;padding:14px 18px;font:11px var(--sans);font-weight:700;cursor:pointer;transition:.25s}.button:hover{transform:translateY(-3px);background:#c09e6d}.hero-actions>a:last-child{border-bottom:1px solid #e0e5e4;padding-bottom:3px}.hero-phone{display:block;color:#d1dfdf;margin-top:30px}.hero-phone span{margin-left:8px}.hero-vertical{position:absolute;left:24px;bottom:25px;writing-mode:vertical-rl;color:#bfcace;font-size:9px}.hero-image{height:770px;position:relative}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--navy),transparent 31%)}.cover{position:absolute;z-index:1;left:28px;bottom:28px;background:var(--ivory);color:var(--slate);padding:12px 15px;line-height:1.5}.cover b{display:block;font:20px var(--serif);letter-spacing:0;text-transform:none;color:var(--navy)}.hero-index{position:absolute;z-index:1;right:25px;top:24px}.hero-rule{position:absolute;z-index:2;left:11vw;right:8vw;bottom:23px;border-top:1px solid #71818a;padding-top:10px;display:flex;justify-content:space-between;color:#cbd7da;font-size:9px}.about,.why,.services,.process,.gallery,.reviews,.cta-band,.contact{position:relative;padding:135px 11vw}.about{background:var(--ivory)}.about-layout{display:grid;grid-template-columns:.76fr 1.05fr;gap:12vw;align-items:center}.about-copy{order:2;padding-top:20px}.about-copy p{color:#626c70}.text-link{color:var(--navy);border-bottom:1px solid var(--navy);display:inline-block;margin-top:12px}.about-image{height:520px;position:relative;order:1}.about-image img{height:470px}.image-note{position:absolute;right:0;bottom:4px;background:var(--beige);color:var(--navy);padding:8px 12px}.why{background:var(--beige);display:grid;grid-template-columns:1fr .9fr;gap:12vw}.why-image{height:510px}.why-copy{padding-top:25px}.why-copy p{color:#5d625e}.benefits{border-top:1px solid #988d7c;margin-top:28px}.benefits span{display:block;border-bottom:1px solid #988d7c;padding:11px 0;font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--navy)}.services{background:var(--limestone)}.services-head{display:grid;grid-template-columns:.48fr 1fr .65fr;gap:5vw;align-items:end;margin-bottom:65px}.services-head .eyebrow{color:var(--navy)}.services-head p{color:#616a6c}.service-ledger{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#b5afa4}.service-ledger article{background:var(--limestone);padding:22px;min-height:205px;transition:.3s}.service-ledger article:hover{background:var(--ivory);transform:translateY(-4px)}.service-ledger b{font:10px var(--mono);color:var(--brass)}.service-ledger h3{font:20px var(--sans);letter-spacing:-.04em;margin:12px 0 5px}.service-ledger p{font-size:12px;color:#616a6c}.process{background:var(--slate);color:#fff}.process-head{display:grid;grid-template-columns:1fr .7fr;gap:15vw;align-items:end;margin-bottom:65px}.process-head h2{color:#fff}.process-head p{color:#e0e6e6}.process-steps{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #9aa4a7}.process-steps>div{padding:18px 15px;border-right:1px solid #9aa4a7;min-height:225px;transition:.3s}.process-steps>div:hover{background:#ffffff0a;transform:translateY(-5px)}.process-steps b{font:10px var(--mono);color:#d5b276}.process-steps strong{display:block;font:25px var(--serif);color:#fff;margin-top:55px}.process-steps p{font-size:12px;color:#dce2e1}.gallery{background:var(--ivory)}.gallery-head{display:grid;grid-template-columns:1fr .65fr;gap:15vw;align-items:end;margin-bottom:65px}.gallery-head p{color:#667174}.gallery-grid{height:730px;position:relative}.gallery-item{position:absolute;padding:8px;background:#fff;border:0;cursor:zoom-in;transition:.35s}.gallery-item:hover{transform:scale(1.025);z-index:3}.gallery-item.feature{left:0;top:20px;width:47%;height:430px}.gallery-item.tall{left:51%;top:0;width:21%;height:350px}.gallery-item.side{right:0;top:40px;width:23%;height:310px}.gallery-item.lower{left:28%;bottom:0;width:26%;height:250px}.gallery-item.bottom{left:60%;bottom:0;width:28%;height:285px}.lightbox{position:fixed;inset:0;background:#14212bcc;z-index:50;display:none;align-items:center;justify-content:center;padding:6vw}.lightbox.open{display:flex}.lightbox img{max-width:90vw;max-height:88vh;width:auto;height:auto;box-shadow:0 20px 70px #0008}.close{position:absolute;right:28px;top:20px;background:none;border:0;color:#fff;font-size:42px;cursor:pointer}.reviews{background:var(--walnut);color:#fff;min-height:410px}.review-content{margin-left:34%;max-width:620px}.review-content h2{color:#fff}.review-content p{color:#eee6dc}.review-content a{display:inline-block;border-bottom:1px solid #fff;margin-top:20px}.cta-band{background:var(--navy);color:#fff;display:grid;grid-template-columns:1fr .7fr .55fr;gap:8vw;align-items:end}.cta-band h2{color:#fff}.cta-band p{color:#d9e1e1}.contact{background:var(--ivory)}.contact-head{display:grid;grid-template-columns:1fr .7fr;gap:15vw;align-items:end;margin-bottom:65px}.contact-head p{color:#616a6c}.contact-layout{display:grid;grid-template-columns:.78fr 1fr;gap:13vw}.contact-card{background:var(--navy);color:#fff;padding:30px;min-height:510px;position:relative}.contact-card h3{color:#fff;font-size:37px;margin:25px 0}.contact-card p{color:#dbe2e1}.contact-card>a{display:block;color:#d0dfde;font:11px var(--mono);margin:12px 0}.map-link{border-bottom:1px solid #d0dfde;display:inline-block;padding-bottom:3px;margin-top:28px!important}.location-stamp{position:absolute;left:30px;right:30px;bottom:30px;height:100px;padding:15px;background:linear-gradient(135deg,#82958e 0 43%,#cfbea4 44% 47%,#82958e 48%);color:#fff}.location-stamp b{display:block;font:25px var(--serif);margin-top:18px}form label{display:flex;flex-direction:column;gap:5px;color:var(--navy);margin-bottom:16px}input,textarea,select{font:14px var(--sans);color:var(--slate);background:transparent;border:0;border-bottom:1px solid #a9a9a2;padding:10px 0;outline:0}select option{color:#222}input:focus,textarea:focus,select:focus{border-color:var(--navy);box-shadow:0 2px 0 var(--navy)}.success{border:1px solid var(--glass);color:var(--navy);padding:20px;font:18px var(--serif)}footer{background:#1d2b35;color:#fff;padding:45px 8vw 22px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.8fr 1.8fr 1.3fr;gap:20px;border-bottom:1px solid #566770;padding-bottom:30px}.footer-top p,footer a:not(.brand){font:10px var(--mono);color:#d2dddd;margin:0}.footer-top>a{color:#c7ddd7!important}.footer-nav{display:grid;grid-template-columns:1fr 1fr;max-width:280px;margin:28px 0 20px auto;border-left:1px solid #566770;padding-left:22px}.footer-nav div{display:flex;flex-direction:column;gap:7px}.footer-nav a{font:11px var(--mono);color:#d2dddd}.footer-nav a:hover{color:#c7ddd7}footer small{display:block;border-top:1px solid #566770;padding-top:16px;color:#a9b9b9}@media(max-width:900px){header{padding:0 5vw}.head-cta{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:85px 9vw 55px}.hero-image{height:520px}.about,.why,.services,.process,.gallery,.reviews,.cta-band,.contact{padding:105px 8vw}.section-mark{left:8vw;top:33px}.about-layout,.services-head,.process-head,.gallery-head,.contact-head,.cta-band{display:block}.services-head p,.process-head p,.gallery-head p,.contact-head p,.cta-band p{max-width:620px;margin-top:24px}.about-copy{order:1}.about-image{order:2;margin-top:45px}.why{display:block}.why-copy{padding-top:45px}.service-ledger{grid-template-columns:repeat(2,1fr)}.gallery-grid{height:650px}.gallery-item.feature{width:60%;height:380px}.gallery-item.tall{left:53%;width:35%;height:235px}.gallery-item.side{right:0;width:37%;height:240px;top:260px}.gallery-item.lower{left:30%;width:35%;height:205px}.gallery-item.bottom{left:66%;width:29%;height:220px}.cta-band .button{margin-top:25px}.footer-top{grid-template-columns:1fr 1fr;gap:22px}.footer-top .brand{grid-column:1/-1}}@media(max-width:620px){header{height:68px}.menu{display:block;margin-left:auto}header nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--ivory);padding:20px;flex-direction:column;gap:13px;border-bottom:1px solid #d0cabf}header nav.open{display:flex}.hero-copy{padding-left:10vw}.hero-image{height:400px}.about,.why,.services,.process,.gallery,.reviews,.cta-band,.contact{padding:95px 10vw}.section-mark{left:10vw}.about-image{height:430px}.about-image img{height:360px}.service-ledger{grid-template-columns:1fr}.process-steps{grid-template-columns:1fr 1fr}.process-steps>div:nth-child(2){border-right:0}.gallery-grid{height:650px}.gallery-item.feature{width:78%;height:280px}.gallery-item.tall{left:44%;top:205px;width:55%;height:180px}.gallery-item.side{right:0;top:0;width:51%;height:175px}.gallery-item.lower{left:22%;bottom:0;width:56%;height:190px}.gallery-item.bottom{display:none}.review-content{margin-left:0}.cta-band .button{display:inline-block;margin-top:25px}.contact-layout{display:block}.contact-card{margin-bottom:50px}.footer-top{display:block}.footer-top>*{display:block;margin:14px 0}.footer-nav{margin-left:0}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
