@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--navy:#14283e;--ink:#121927;--orange:#b96b3c;--cream:#f7f6f3;--line:#d9d9d7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.48}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.09}h1{font-size:clamp(2.7rem,5.5vw,5.3rem)}h2{font-size:clamp(2.1rem,4vw,3.5rem)}h3{font-size:clamp(1.6rem,2.5vw,2.3rem)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(100% - 8vw,1280px);margin:auto}.header{background:var(--navy);height:78px;color:white;display:flex;align-items:center;position:relative;z-index:2}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{display:inline-flex;align-items:center;white-space:nowrap;font-family:Arial,sans-serif;font-size:clamp(1.65rem,3.1vw,2.8rem);font-weight:700;letter-spacing:.095em;line-height:1}.logo span{font-size:.55em;font-weight:400;letter-spacing:0;margin:0 -.03em}.nav{display:flex;align-items:center;gap:clamp(22px,4vw,54px);margin-left:auto}.nav a{font-size:15px}.nav a:not(.contact-pill):hover,.nav a.active:not(.contact-pill){text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:10px}.contact-pill{border:1px solid #c78d64;padding:10px 28px;transition:background .2s}.contact-pill:hover,.contact-pill.active{background:#ab653b}.menu-toggle{display:none;background:transparent;border:1px solid #aaa;color:white;padding:7px 12px}.button{display:inline-flex;align-items:center;gap:24px;border:1px solid var(--orange);padding:12px 24px;font-size:15px;transition:background .2s,color .2s}.button:hover{background:var(--orange);color:#fff}.button .arrow,.service-link .arrow{color:var(--orange);font-size:23px;line-height:1}.button:hover .arrow{color:white}.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:12px;font-weight:700}.eyebrow:after{content:'';display:inline-block;width:68px;height:1px;background:var(--orange);vertical-align:middle;margin-left:15px}.home-hero{min-height:515px;background:linear-gradient(90deg,rgba(10,20,31,.72),rgba(10,20,31,.03) 75%),url('/assets/urban.jpg') center/cover;color:white;display:flex;align-items:center}.home-hero .wrap{padding:70px 0}.home-hero h1{max-width:610px;margin:34px 0 27px}.home-hero .eyebrow{max-width:420px}.home-hero .button{background:rgba(20,40,62,.45)}.section{padding:65px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin:0 0 30px}.section-head h2{margin-top:14px}.section-head p{max-width:340px;color:#5e6670}.cards{display:grid;grid-template-columns:1fr 1fr;gap:26px}.card img{width:100%;height:290px;object-fit:cover;display:block}.card h3{margin:17px 0 8px}.card p{color:#515865;max-width:390px}.card .button{margin-top:19px}.process-strip{background:var(--cream);padding:45px 0}.process-strip h2{margin:10px 0 30px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.step{border-right:1px solid var(--line);padding-right:20px}.step:last-child{border:0}.step b{display:block;font-family:'Playfair Display',Georgia,serif;font-size:25px;margin-bottom:7px}.step span{color:var(--orange);font-size:18px;margin-right:12px}.step p{color:#5d6671;font-size:15px}.footer-cta{background:var(--navy);color:white;padding:65px 0 74px;position:relative;overflow:hidden}.footer-cta:after{content:'';position:absolute;right:3%;top:15%;width:36%;height:140%;opacity:.13;border:1px solid white;transform:skewY(-25deg);box-shadow:32px 30px 0 -1px var(--navy),33px 30px white,80px 55px 0 -1px var(--navy),81px 55px white}.footer-cta h2{margin:14px 0 12px}.footer-cta p{max-width:460px;margin-bottom:23px}.footer-cta .wrap{position:relative;z-index:1}.page-hero{display:grid;grid-template-columns:52% 48%;min-height:300px}.page-hero .copy{padding:42px max(4vw,calc((100vw - 1280px)/2)) 40px max(4vw,calc((100vw - 1280px)/2));padding-right:40px}.page-hero h1{margin:15px 0 10px}.page-hero p{font-size:clamp(1.15rem,2vw,1.55rem);color:#555f6d;max-width:590px}.page-hero img{width:100%;height:100%;min-height:300px;object-fit:cover}.photo-row{display:grid;grid-template-columns:repeat(3,1fr);height:200px}.photo-row img{width:100%;height:100%;object-fit:cover}.service-cols{display:grid;grid-template-columns:1fr 1fr;gap:30px}.service-block img{width:100%;height:240px;object-fit:cover}.service-block h3{margin:12px 0 8px}.service-block p{color:#555f6a;max-width:460px}.service-link{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0;font-family:'Playfair Display',Georgia,serif;font-size:18px}.service-link:first-of-type{margin-top:10px}.timeline{display:grid;grid-template-columns:1fr 1fr}.timeline>div{min-height:215px}.timeline .text{padding:36px max(4vw,calc((100vw - 1280px)/2));display:flex;gap:25px;align-items:center}.timeline .text strong{color:var(--orange);font:normal 4rem 'Playfair Display',Georgia,serif}.timeline .text h3{margin-bottom:8px}.timeline .text p{color:#5e6670}.timeline img{width:100%;height:100%;object-fit:cover}.quote-band{background:var(--cream);padding:45px 0}.quote-band .wrap{display:flex;justify-content:space-between;gap:40px;align-items:center}.quote-band h2{font-size:clamp(1.8rem,3vw,2.7rem);max-width:650px}.quote-band p{max-width:320px;color:#5e6670}.contact-section{padding:55px 0 70px}.contact-grid{display:grid;grid-template-columns:36% 1fr;gap:50px}.contact-grid h2{margin:15px 0 20px}.contact-grid p{color:#5e6670;max-width:330px}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:6px;font-size:15px}.field.wide{grid-column:1/-1}.field input,.field select,.field textarea{border:1px solid #bfc4c9;padding:11px;background:white;width:100%;border-radius:0;color:var(--ink)}.field textarea{min-height:105px;resize:vertical}.field input[type=file]{border-style:dashed}.form button{background:var(--orange);color:white;border:0;padding:14px 24px;justify-self:start}.form .note,.form .status{grid-column:1/-1;color:#6d7680;font-size:13px}.form .status{font-size:16px;color:var(--navy);font-weight:600}.site-footer{padding:22px 0;background:#102134;color:#cbd1d5;font-size:13px}.site-footer .wrap{display:flex;justify-content:space-between;gap:20px}@media(max-width:760px){.header{height:70px}.header .wrap{width:min(100% - 32px,1280px)}.menu-toggle{display:block}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--navy);padding:22px 20px 28px;flex-direction:column;align-items:stretch;gap:20px}.nav.open{display:flex}.contact-pill{text-align:center}.wrap{width:min(100% - 36px,1280px)}.home-hero{min-height:490px;background-position:62% center}.home-hero h1{font-size:3.1rem}.section{padding:48px 0}.section-head{display:block}.section-head p{margin-top:17px}.cards,.service-cols,.contact-grid{grid-template-columns:1fr}.card img{height:230px}.steps{grid-template-columns:1fr;gap:19px}.step{border:0;border-bottom:1px solid var(--line);padding-bottom:15px}.page-hero{grid-template-columns:1fr}.page-hero .copy{padding:38px 18px}.page-hero img{height:220px;min-height:0}.photo-row{height:120px}.service-block img{height:230px}.timeline{grid-template-columns:1fr}.timeline>div{min-height:0}.timeline .text{padding:32px 18px}.timeline img{height:185px}.quote-band .wrap{display:block}.quote-band p{margin-top:18px}.contact-grid{gap:30px}.form{grid-template-columns:1fr}.field{grid-column:1/-1}.site-footer .wrap{display:block}}
.contact-details{margin-top:35px!important;line-height:1.8}.contact-details a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}

.logo img{display:block;width:clamp(205px,25vw,275px);height:auto}.site-footer .wrap{align-items:center}

.site-footer .wrap{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.site-footer span{display:block}
