@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172229;--gold:#dfb650;--paper:#f7f8f6;--muted:#53646a;--line:#d4dcda}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #bd8621;outline-offset:5px}.skip-link{position:absolute;top:-100px;left:20px;background:#fff;padding:12px;z-index:20}.skip-link:focus{top:10px}header{display:flex;align-items:center;justify-content:space-between;padding:10px 6%;gap:30px;background:#fff}.brand-logo{display:block;width:106px;height:106px;object-fit:contain}nav{display:flex;gap:34px;font-size:15px;font-weight:600}nav a:hover{color:#946412}.header-call{font-size:18px;font-weight:700}.header-call span{color:#996d20;margin-left:15px}.hero{color:#fff;background:var(--ink)}.hero-copy{position:relative;isolation:isolate;overflow:hidden;padding:85px 8% 60px;min-height:670px}.hero-slides{position:absolute;inset:0;z-index:-2;pointer-events:none}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%;opacity:0;transition:opacity 1s ease}.hero-slide.is-active{opacity:1}.hero-copy:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.79),rgba(0,0,0,.48) 55%,rgba(0,0,0,.12))}.eyebrow{font-size:13px;font-weight:700;letter-spacing:2px;line-height:1.7;margin:0 0 22px}.hero .eyebrow{color:#f0cd79}h1,h2,h3{font-family:Manrope,Arial,sans-serif;margin:0;font-weight:500;line-height:1.12;letter-spacing:-1.6px}h1{font-size:clamp(48px,5.7vw,82px);max-width:850px;letter-spacing:-3px}h1 em{color:#efc965;font-style:normal}.intro{font-size:19px;line-height:1.65;max-width:520px;margin:25px 0 28px;color:#fff}.button{display:inline-flex;gap:25px;align-items:center;padding:16px 25px;min-height:58px;font-size:16px;font-weight:700}.gold{background:var(--gold);color:#152028}.gold:hover{background:#f1ce77}.text-link{display:inline-block;margin-left:25px;font-size:15px;border-bottom:1px solid #ffffff70;padding-bottom:3px}.hero-note{font-size:14px;margin:35px 0 0;color:#f1f3f2}.section{padding:80px 7%}h2{font-size:clamp(35px,3.5vw,51px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.section-heading>p{max-width:370px;margin:0;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.service-grid article{min-width:0;padding-bottom:25px}.service-photo{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;object-position:center 73%;margin:0 0 22px}.service-grid h3{font-size:25px;letter-spacing:-.8px;margin-bottom:12px}.service-grid p{font-size:16px;color:var(--muted);margin:0}.additional-services{grid-template-columns:repeat(4,minmax(0,1fr));padding-top:30px;margin-top:12px;border-top:1px solid var(--line);gap:23px}.additional-services .service-photo{object-position:center}.additional-services h3{font-size:22px}.additional-services p{font-size:15px}.about{background:#e8edeb;display:grid;grid-template-columns:1fr 1fr;gap:45px 65px}.about-copy .large-copy{font-size:25px;line-height:1.4;color:var(--ink);margin:0 0 18px}.about-copy p{color:var(--muted);margin:0 0 18px}.principles{display:flex;flex-wrap:wrap;gap:12px 24px;padding-top:14px;font-size:14px;font-weight:700}.qualifications{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.2fr;column-gap:45px;border-top:1px solid #bdccc6;padding-top:30px;align-items:center}.qualifications-title{grid-column:2;font-size:22px;margin-bottom:10px;letter-spacing:-.5px}.qualification-badges{grid-column:1;grid-row:1/3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:#fff;padding:15px}.qualification-badges img{width:100%;height:105px;object-fit:contain}.qualification-summary{grid-column:2;color:var(--muted);margin:0;font-size:15px}.areas{display:grid;grid-template-columns:1fr 1fr;gap:65px}.area-intro{color:var(--muted);max-width:410px;margin-top:24px}.area-list>div{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.area-list>div:first-child{padding-top:0}.area-list h3{font-size:21px;letter-spacing:-.6px}.area-list p{font-size:14px;color:var(--muted);margin:0}.area-list .area-footnote{margin-top:20px}.contact{background:var(--ink);color:#fff;text-align:center;padding-top:72px;padding-bottom:72px}.contact .eyebrow{color:var(--gold)}.contact h2{font-size:clamp(43px,4.7vw,65px)}.contact>p:not(.eyebrow){max-width:530px;margin:24px auto;color:#d2ddda}.phone{display:inline-block;color:#edc86d;font-size:clamp(30px,4vw,51px);border-bottom:1px solid #c39d43;padding-bottom:8px;letter-spacing:-1px}.phone span{margin-left:20px}.contact .contact-small{font-size:14px;margin-bottom:0!important}footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 6%;font-size:13px}.footer-brand{font-weight:800;letter-spacing:1px}footer p{color:var(--muted)}.mobile-call{display:none}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1050px){nav{gap:20px}.additional-services{grid-template-columns:repeat(2,minmax(0,1fr))}.areas{gap:40px}.area-list>div{display:block}.area-list p{margin-top:6px}.qualifications{column-gap:28px}}@media(max-width:700px){body{padding-bottom:76px}header{padding:5px 6%;gap:15px}.brand-logo{width:85px;height:85px}.header-call{font-size:16px}.header-call span{display:none}nav{display:none}.hero-copy{min-height:0;padding:48px 6% 80px}.hero-copy:before{background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.51))}.hero-slide{object-position:54% 65%}h1{font-size:clamp(40px,10.8vw,54px);letter-spacing:-2px}.hero .eyebrow{font-size:12px;letter-spacing:1.4px;max-width:320px}.intro{font-size:17px;margin:23px 0 25px}.button{padding:15px 20px;font-size:16px}.text-link{display:block;width:fit-content;margin:19px 0 0}.hero-note{margin-top:25px;font-size:13px}.section{padding:53px 6%}.section-heading{display:block;margin-bottom:27px}h2{font-size:36px}.section-heading>p{margin-top:20px}.service-grid,.additional-services{grid-template-columns:1fr;gap:12px}.service-grid article{padding-bottom:25px}.service-photo{aspect-ratio:4/3;margin-bottom:19px}.service-grid h3,.additional-services h3{font-size:26px}.service-grid p,.additional-services p{font-size:16px}.additional-services{padding-top:28px;margin-top:0}.about,.areas{grid-template-columns:1fr;gap:27px}.about-copy .large-copy{font-size:23px}.qualifications{display:block;padding-top:25px}.qualifications-title{font-size:22px;margin:0 0 17px}.qualification-badges{gap:10px;padding:10px}.qualification-badges img{height:80px}.qualification-summary{margin-top:16px}.area-list>div{display:flex}.area-list h3{font-size:19px}.area-list p{font-size:13px}.contact h2{font-size:43px}footer{display:block;text-align:center;padding:24px 6%}footer p{margin:10px 0}.mobile-call{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--gold);color:var(--ink);padding:15px 6% calc(15px + env(safe-area-inset-bottom));box-shadow:0 -3px 15px #0002;font-size:14px}.mobile-call strong{font-size:16px;white-space:nowrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-slide{transition:none}}

/* Updated business identity */
.brand-logo{width:122px;height:122px}@media(max-width:700px){.brand-logo{width:102px;height:102px}.footer-brand{line-height:1.5}}

/* Contact and readability refinements */
.contact-email{display:block;width:fit-content;max-width:100%;margin:22px auto 0;padding:6px 0;font-size:clamp(16px,2vw,23px);color:#fff;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.contact-email:hover{color:var(--gold)}
nav a,footer>a{display:inline-flex;align-items:center;min-height:44px}
.section{padding-top:68px;padding-bottom:68px}
.service-photo{border-radius:4px}

@media(max-width:700px){
 body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 .section{padding-top:44px;padding-bottom:44px}
 .hero-copy{padding-top:40px;padding-bottom:80px}
 .hero-note{font-size:14px}
 .service-photo{margin-bottom:16px}
 .area-list>div{flex-wrap:wrap;gap:4px 16px}
 .area-list p{font-size:14px}
 .contact h2{font-size:clamp(32px,9vw,43px)}
 .contact-email{margin-top:18px}
 footer{font-size:14px}
 footer>.footer-email{margin-right:22px}
}
