@import url('./fonts.css');
:root{--ink:#292d29;--muted:#5d625c;--paper:#faf9f5;--gold:#edba50;--line:#dddfd5;--pale:#efefe7;--dark:#29362e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'Poppins',Arial,sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #9a6515;outline-offset:5px}img{display:block;max-width:100%}.wrap{width:min(1180px,88%);margin:auto}.header{height:90px;display:flex;justify-content:space-between;align-items:center}header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:inline-flex;flex-direction:column;font-size:24px;line-height:1.05;font-weight:600;letter-spacing:-1px}.brand>span{color:#956a19}.header nav{display:flex;align-items:center;gap:30px;font-size:14px}.header nav a{padding:10px 0}.header nav a[aria-current=page]{box-shadow:0 2px #a17b31}.header nav .nav-cta{padding:10px 21px;border:1px solid #b6b9ac;margin-left:8px;font-weight:500}.nav-cta:hover{background:var(--pale)}.menu{display:none}.hero{position:relative;overflow:hidden;min-height:560px;display:flex;flex-direction:column;justify-content:center;background:#efefe7}.hero-image{position:absolute;right:0;top:0;width:44%;height:100%;object-fit:cover;object-position:58%;filter:saturate(.72)}.hero:after{content:'';position:absolute;top:30px;bottom:30px;right:44%;width:5px;background:var(--gold)}.hero-inner{position:relative;padding:62px 0;z-index:1}.hero-inner h1{font-size:clamp(38px,3.5vw,51px);max-width:57%;letter-spacing:-1.5px;line-height:1.22;margin-bottom:23px}.hero-copy{max-width:46%;font-size:16px;color:var(--muted);margin-bottom:27px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;margin:0 0 18px;color:#626853}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Lora',Georgia,serif;font-weight:400}h1{font-size:clamp(38px,4.5vw,58px);letter-spacing:-1.4px;line-height:1.2;margin-bottom:22px}h2{font-size:clamp(30px,3vw,39px);line-height:1.25;letter-spacing:-.8px;margin-bottom:23px}h3{font-size:24px;line-height:1.35;margin-bottom:14px;letter-spacing:-.3px}p{margin-bottom:21px}.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 23px;background:var(--gold);font-weight:500;font-size:14px;min-height:48px;transition:background .18s}.button:hover{background:#f4ca77}.text-link{display:block;width:max-content;margin-top:17px;font-size:13px;text-decoration:underline;text-underline-offset:5px}.hero-bottom{position:relative;z-index:1;border-top:1px solid #d5d8cb;padding:15px 0;font-size:11px;display:flex;gap:25px;color:var(--muted)}.hero-bottom span{max-width:45%}.hero-bottom a{display:none}.section{padding:74px 0}.split{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}.split>*,.detail-grid>*,.about-grid>*{min-width:0}.lead{font-size:20px;line-height:1.6}.intro p:not(.eyebrow):not(.lead),.approach p:not(.eyebrow){color:var(--muted)}.underlink{display:inline-block;font-size:14px;font-weight:500;border-bottom:1px solid #9b9f91;padding:4px 0;min-height:34px}.underlink:hover{border-color:#956a19;color:#785114}.locations{display:flex;flex-wrap:wrap;gap:20px;border-top:1px solid var(--line);padding-top:18px;margin-top:25px;font-size:12px;color:var(--muted)}.services-overview{background:var(--pale)}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:32px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.service-card{grid-column:span 2;background:var(--paper);padding:26px;display:flex;flex-direction:column;border:1px solid #dadccf;transition:border-color .18s,background .18s}.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 3}.service-card:hover{border-color:#9e8a54;background:#fff}.service-symbol{width:44px;height:44px;margin-bottom:24px}.service-card h3{font-size:23px}.service-card p{font-size:14px;line-height:1.75;color:var(--muted);margin-bottom:22px}.card-link{font-size:12px;margin-top:auto;border-top:1px solid var(--line);padding-top:14px;text-decoration:underline;text-underline-offset:4px}.steps>div{display:flex;gap:24px;border-top:1px solid var(--line);padding:20px 0 0}.steps>div>span{font-size:12px;color:#75612e}.steps h3{font-size:21px;margin-bottom:7px}.steps p{font-size:14px}.cta{padding:55px 0;background:var(--dark);color:white}.cta .wrap{max-width:900px;text-align:center}.cta .eyebrow{color:#e8c67d}.cta h2{font-size:36px}.cta p:not(.eyebrow){font-size:15px;max-width:600px;color:#e1e6dd;margin:0 auto 25px}footer{padding:48px 0 0;background:#efefe7}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.2fr;gap:60px}.footer-grid h2{font-family:'Poppins',Arial,sans-serif;font-size:12px;font-weight:600;letter-spacing:.8px;margin-bottom:17px}.footer-grid p{font-size:13px;color:var(--muted);margin:20px 0 10px}.footer-grid>div>a:not(.brand){display:block;width:max-content;max-width:100%;font-size:13px;padding:5px 0;min-height:32px}.footer-grid>div>a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);border-top:1px solid #d4d7c9;margin-top:34px;padding:19px 0}.page-hero{padding:43px 0;background:var(--pale);border-bottom:1px solid var(--line)}.page-hero .eyebrow{margin-bottom:10px}.page-hero h1{margin-bottom:15px;font-size:48px}.page-hero p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:660px;margin-bottom:0}.service-nav{background:var(--paper);border-bottom:1px solid var(--line)}.service-nav .wrap{display:flex;gap:12px 25px;flex-wrap:wrap;padding:15px 0}.service-nav a{font-size:12px;padding:5px 0;border-bottom:1px solid transparent}.service-nav a:hover{border-color:#9e7933}.service-detail{padding:55px 0;border-bottom:1px solid var(--line)}.service-detail:nth-of-type(even){background:#f3f3ed}.detail-grid{display:grid;grid-template-columns:120px 1fr;gap:52px;max-width:1000px}.service-visual{display:flex;align-items:center;justify-content:center;width:112px;height:112px;margin-top:30px;background:#e9ecdf;border-radius:50%}.service-visual img{width:64px;height:64px;object-fit:contain}.detail-grid>div>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:760px}.detail-grid h2{font-size:33px;margin-bottom:20px}.detail-grid .eyebrow{font-size:10px;margin-bottom:10px}.detail-grid h3{font-family:'Poppins',Arial,sans-serif;font-size:15px;font-weight:500;margin:23px 0 14px}.features{display:grid;grid-template-columns:1fr 1fr;column-gap:35px;row-gap:10px;padding-left:19px;font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 22px}.about-grid{display:grid;grid-template-columns:.85fr 1.25fr;gap:65px;align-items:start}.portrait{margin:0}.portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;filter:saturate(.78)}.portrait figcaption{font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);padding:12px 0}.portrait figcaption a{text-decoration:underline}.about-grid p:not(.eyebrow):not(.lead){font-size:15px;color:var(--muted)}.about-grid h2{font-size:34px}.pale{background:var(--pale)}.contact-layout{gap:70px;align-items:start}.contact-layout h2{font-size:34px}.contact-layout>div>p{font-size:15px;color:var(--muted)}.contact-panel{padding:30px 35px;background:var(--pale);border-top:3px solid #a47b2e}.contact-panel h3{font-size:29px}.contact-panel dt{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin-top:19px}.contact-panel dd{font-size:14px;margin:3px 0}.dark{background:var(--dark);color:#fff}.dark:hover{background:#445346}.small{font-size:12px!important;margin-top:15px}.prose{max-width:760px}.prose h2{font-size:28px;margin-top:30px}.skip{position:fixed;top:-100px;left:10px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}@media(max-width:950px){.header nav{gap:20px}.hero-inner h1{font-size:40px}.hero-image{width:40%}.hero:after{right:40%}.hero-copy{max-width:52%}.split{gap:45px}.about-grid{gap:40px}.section{padding:58px 0}.service-card{padding:22px}.service-card h3{font-size:22px}.detail-grid{gap:30px;grid-template-columns:95px 1fr}.service-visual{width:88px;height:88px}.service-visual img{width:52px;height:52px}.footer-grid{gap:30px}}@media(max-width:700px){html{scroll-padding-top:90px}.header{height:76px}.brand{font-size:22px}.menu{display:flex;gap:15px;align-items:center;padding:7px 13px;border:1px solid #a6ac9b;background:transparent;font-size:13px;min-height:40px}.header nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:20px 6%;border-bottom:1px solid var(--line)}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:8px}.header nav a{padding:12px 0}.header nav a[aria-current=page]{box-shadow:none;font-weight:600;text-decoration:underline;text-underline-offset:5px}.header nav .nav-cta{margin:8px 0 0;padding:12px 16px;text-align:center}.hero{display:flex;min-height:0}.hero-image{position:relative;order:2;width:100%;height:230px;object-position:50% 48%}.hero:after{display:none}.hero-inner{padding:42px 0}.hero-inner h1{max-width:none;font-size:clamp(30px,7vw,42px);letter-spacing:-1px;line-height:1.27}.hero-copy{max-width:none;font-size:15px}.hero-bottom{display:none}.eyebrow{font-size:11px;letter-spacing:1.3px}h2{font-size:30px}.section{padding:45px 0}.split,.about-grid,.contact-layout{grid-template-columns:1fr;gap:25px}.section-heading{display:block}.section-heading>p{margin-top:17px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto;padding:23px}.service-symbol{margin-bottom:16px}.service-card h3{font-size:24px}.service-card p{margin-bottom:17px}.service-card .card-link{font-size:13px}.locations{font-size:12px;gap:15px}.lead{font-size:18px}.steps{margin-top:10px}.cta{padding:43px 0}.cta h2{font-size:30px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:8px}.footer-bottom>span:nth-child(2){display:none}.page-hero{padding:33px 0}.page-hero h1{font-size:36px}.page-hero p:not(.eyebrow){font-size:14px}.service-nav .wrap{gap:9px 20px;padding:12px 0}.service-nav a{font-size:12px;min-height:32px}.service-detail{padding:35px 0}.detail-grid{grid-template-columns:1fr;gap:20px}.service-visual{margin:0;width:72px;height:72px}.service-visual img{width:46px;height:46px}.detail-grid h2{font-size:29px}.features{grid-template-columns:1fr;font-size:14px;gap:8px}.portrait{max-width:480px}.portrait img{aspect-ratio:3/2}.about-grid h2{font-size:30px}.contact-panel{padding:26px}.contact-layout h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Restore the previous full-width home hero. */
.hero{min-height:670px;background:#202a28;color:#fff;display:flex;flex-direction:column;justify-content:center}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.62;filter:none}
.hero:after{display:block;position:absolute;inset:0;width:auto;background:linear-gradient(90deg,rgba(15,27,25,.98),rgba(15,27,25,.8) 35%,rgba(15,27,25,.04) 100%)}
.hero-inner{padding:75px 0 48px;z-index:1}
.hero-inner h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,6.5vw,88px);line-height:1.07;letter-spacing:-2px;max-width:none;margin-bottom:26px}
.hero .eyebrow{color:var(--gold)}
.hero-copy{max-width:470px;color:#e0e4df;font-size:18px;line-height:1.7;margin-bottom:33px}
.hero .text-link{color:#e0e4df;font-size:13px;text-decoration:none}
.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff35;padding:20px 0;color:#c8d0c7;margin-top:auto;font-size:11px;z-index:1}
.hero-bottom a{display:block}
@media(max-width:900px){.hero{min-height:620px}}
@media(max-width:700px){.hero{min-height:650px}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-position:62%;opacity:.4}.hero:after{display:block;background:linear-gradient(90deg,#101d19e6,#101d1980)}.hero-inner{padding:64px 0 40px}.hero-inner h1{font-size:clamp(46px,9vw,62px)}.hero-copy{max-width:470px;font-size:17px}.hero-bottom{display:flex;font-size:10px;gap:25px}.hero-bottom span{max-width:150px}.hero-bottom a{text-align:right}}

.hero .button{color:var(--ink)}
