@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--ink:#243c32;--deep:#173a2d;--green:#385f4d;--sage:#d9e2d4;--cream:#f7f5ed;--paper:#fffef9;--terra:#b96649;--muted:#67736a;--line:#dce1d8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{color:var(--terra)}img{width:100%;display:block;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'DM Serif Display',Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(52px,6.1vw,92px)}h2{font-size:clamp(38px,4vw,58px)}h3{font-size:27px}em{font-weight:400;color:var(--terra)}p{color:#627168}.container{max-width:1320px;padding-left:32px;padding-right:32px}.topbar{background:var(--deep);color:#e4eee5;font-size:10px;letter-spacing:.08em}.topbar-inner{min-height:35px;display:flex;justify-content:space-between;align-items:center}.topbar a{color:#e4eee5}.header{background:#fffef9}.nav-wrap{height:92px;display:flex;align-items:center;justify-content:space-between}.logo{display:inline-flex;align-items:center;gap:9px;color:var(--deep);white-space:nowrap;font-size:21px;font-weight:700;letter-spacing:-.065em;line-height:1}.logo:hover{color:var(--deep)}.logo-accent{color:var(--terra)}.logo-mark{width:34px;display:inline-flex;color:var(--deep)}.logo-mark svg{width:100%}.nav-links{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:600}.nav-cta,.btn-dark,.btn-outline,.btn-light{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 21px;font-size:11px;font-family:'DM Sans',Arial,sans-serif;font-weight:700;border:1px solid var(--deep);transition:.2s}.nav-cta,.btn-dark{background:var(--deep);color:#fff;border-color:var(--deep)}.nav-cta{padding:13px 18px}.btn-dark:hover,.nav-cta:hover{background:var(--terra);border-color:var(--terra);color:white}.btn-dark span,.btn-light span,.btn-outline span{font-size:16px}.menu-toggle{display:none;background:none;border:0;font-size:24px;color:var(--deep)}.hero{position:relative;min-height:620px;overflow:hidden;background:#f0eee5}.hero-img,.hero-overlay{position:absolute;inset:0}.hero-img img{height:100%;object-position:center 53%}.hero-overlay{background:linear-gradient(90deg,rgba(247,245,237,.99) 0%,rgba(247,245,237,.95) 27%,rgba(247,245,237,.68) 46%,rgba(247,245,237,.03) 75%)}.hero-content{position:relative;min-height:575px;display:flex;align-items:center}.hero-copy{padding:65px 0 75px;max-width:660px}.eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.17em;color:var(--green);margin-bottom:22px}.dot{display:inline-block;background:var(--terra);width:7px;height:7px;border-radius:50%;margin-right:8px;vertical-align:middle}.hero h1{margin-bottom:23px}.hero-copy>p{max-width:420px;font-size:16px;line-height:1.8;margin-bottom:30px;color:#56695c}.hero-actions{display:flex;align-items:center;gap:30px}.hero-link{font-size:11px;font-weight:700;border-bottom:1px solid #9faea4;padding:10px 0}.hero-link span{margin-left:12px}.hero-badge{position:absolute;right:50px;bottom:80px;background:#e5e9db;width:120px;height:120px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.hero-badge span{font-size:27px;color:var(--terra);line-height:1}.hero-badge p{font-size:8px;line-height:1.4;letter-spacing:.14em;font-weight:700;margin:10px 0 0;color:var(--deep)}.hero-bottom{position:absolute;bottom:0;left:0;right:0;border-top:1px solid rgba(45,70,51,.19)}.hero-bottom .container{height:45px;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.13em;font-weight:700}.values-strip{background:var(--deep);color:#e6eee3}.values-inner{min-height:82px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.14em}.values-inner div:first-child{font-family:Georgia,serif;font-size:20px;letter-spacing:0}.asterisk{color:#d6a98f;margin-right:15px;font-size:26px}.values-inner div:last-child span{color:#d6a98f;margin:0 17px}.section{padding:110px 0}.intro-section{background:var(--paper)}.intro-section h2,.section-head h2{margin-bottom:0}.lead-copy{font-family:Georgia,serif;font-size:24px;line-height:1.45;color:var(--ink)}.intro-section p:not(.lead-copy){max-width:555px}.text-link{display:inline-flex;align-items:center;gap:35px;color:var(--deep);font-size:11px;font-weight:700;padding-bottom:7px;border-bottom:1px solid #a7b4a9;margin-top:14px}.text-link span{font-size:15px}.services-section{background:#f2f4ed}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:45px}.section-head>p{max-width:330px;margin:0}.service-card{background:#fffef9;height:100%;transition:transform .2s}.service-card:hover{transform:translateY(-5px)}.service-img{height:210px;position:relative;overflow:hidden}.service-img img{height:100%;transition:transform .35s}.service-card:hover img{transform:scale(1.04)}.card-num{position:absolute;top:16px;left:16px;background:#fffef9;width:33px;height:33px;display:grid;place-items:center;font-size:10px;font-weight:700}.service-content{padding:27px 28px 30px}.service-content h3{margin-bottom:12px}.service-content p{font-size:13px;min-height:47px;margin-bottom:10px}.center-button{text-align:center;margin-top:45px}.btn-outline{background:transparent;color:var(--deep)}.btn-outline:hover{background:var(--deep);color:white}.approach-section{background:var(--deep);color:white;padding:90px 0}.approach-photo{position:relative;min-height:600px}.approach-photo img{height:100%;position:absolute}.photo-label{position:absolute;bottom:0;left:0;background:#e4e9db;color:var(--deep);font-size:9px;letter-spacing:.15em;font-weight:bold;padding:20px 24px}.photo-label span{margin-left:25px;font-size:20px;color:var(--terra)}.approach-copy{padding:35px 0 20px 11%}.light{color:#c9d9c6}.approach-copy h2{color:white}.approach-copy h2 em,.footer-cta h2 em{color:#d8aa92}.approach-copy>p{max-width:480px;color:#bccdc0}.approach-list{margin:34px 0}.approach-list>div{display:grid;grid-template-columns:40px 1fr;border-top:1px solid #557163;padding:16px 0}.approach-list span{font-size:10px;color:#d1aa94}.approach-list strong{font-family:Georgia,serif;font-weight:400;font-size:20px}.approach-list p{grid-column:2;margin:3px 0 0;color:#b8c9bd;font-size:12px}.light-link{color:#e8eee7;border-bottom:1px solid #91a89a;font-size:11px;font-weight:700;padding-bottom:8px}.testimonials{background:#f8f5ed}.quote-card{height:100%;background:#fffef9;padding:35px;min-height:245px;display:flex;flex-direction:column}.stars{font-size:13px;color:var(--terra);letter-spacing:.13em}.quote-card blockquote{font-family:Georgia,serif;font-size:19px;line-height:1.5;margin:25px 0;flex:1}.quote-name{font-size:11px;font-weight:bold}.sample-note{font-size:10px;margin:15px 0 0}.insights-section{background:var(--paper)}.blog-card{height:100%}.blog-image{display:block;position:relative;height:225px;overflow:hidden}.blog-image img{height:100%;transition:transform .3s}.blog-image:hover img{transform:scale(1.04)}.blog-image span{position:absolute;bottom:0;right:0;background:var(--deep);color:white;padding:12px 17px}.blog-body{padding:23px 0}.blog-body h3{max-width:350px}.blog-body p{font-size:13px}.newsletter-band{background:#dce6d8;padding:80px 0}.newsletter-band h2{margin-bottom:12px}.newsletter-band p{margin-bottom:0}.inline-form{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--deep);margin-top:15px}.inline-form input{flex:1;min-width:0;border:0;background:transparent;padding:15px 0;outline:none}.inline-form button{border:0;background:transparent;color:var(--deep);font-size:11px;font-weight:700}.inline-form .form-message{flex-basis:100%}.newsletter-band small{display:block;font-size:10px;margin-top:12px;color:#657469}.newsletter-band small a{text-decoration:underline}.footer-cta{background:var(--terra);color:white;padding:75px 0}.cta-inner{display:flex;justify-content:space-between;align-items:end;gap:30px}.footer-cta h2{font-size:clamp(45px,5vw,70px);margin:0;color:white}.footer-cta h2 em{color:#f3d7c9}.footer-cta p{color:#f8e8df;max-width:300px}.btn-light{background:#fffef9;color:var(--deep);border-color:#fffef9}.btn-light:hover{background:var(--deep);color:white;border-color:var(--deep)}footer{background:#f7f6ee}.footer-main{padding-top:70px;padding-bottom:70px}.footer-brand p{margin:20px 0;font-size:13px}.footer-note{font-family:Georgia,serif;font-style:italic;color:var(--terra);font-size:18px}.footer-main h4{font-family:'DM Sans',Arial,sans-serif;font-weight:bold;letter-spacing:.14em;font-size:10px;margin:4px 0 22px}.footer-main>div:not(:first-child) a{display:block;font-size:12px;margin-bottom:10px}.footer-contact p{font-size:12px}.footer-bottom{padding:20px 0;border-top:1px solid #dce0d7;display:flex;justify-content:space-between;font-size:10px;color:#77857a}.page-intro{background:#edf1e8;padding:34px 0 75px}.breadcrumb-line{display:flex;gap:12px;color:#7a887d;font-size:10px;margin-bottom:65px}.page-intro h1{font-size:clamp(48px,5.7vw,78px);margin:0}.page-intro .row>div:last-child p{margin:0 0 8px;max-width:330px}.about-image{height:500px}.about-image img{height:100%}.values-section{background:#eef2ea}.value-grid{margin-top:48px}.value-grid>div{border-top:1px solid #bac9ba;padding-top:25px}.value-grid span{font-size:10px;letter-spacing:.13em;font-weight:bold;color:var(--terra)}.value-grid h3{margin-top:22px}.value-grid p{max-width:300px}.disclaimer{font-size:12px;color:#78857b;margin-top:30px}.article-hero{background:#edf1e8;padding:34px 0 100px}.article-hero h1{max-width:880px;font-size:clamp(48px,5.8vw,78px);margin-bottom:20px}.article-hero p{font-size:16px;margin:0}.article-image{max-width:1100px;height:450px;margin:-55px auto 0;position:relative}.article-image img{height:100%}.article-body{max-width:740px;margin:0 auto;padding:65px 0 100px}.article-body>p:not(.disclaimer){font-size:17px;line-height:1.9;margin-bottom:25px}.article-end{font-size:25px;color:var(--terra);margin-top:35px}.article-body .text-link{margin-top:25px}.contact-details>p{max-width:350px}.contact-item{padding:22px 0;border-top:1px solid var(--line)}.contact-item:first-of-type{margin-top:40px}.contact-item span{display:block;font-size:10px;letter-spacing:.13em;font-weight:bold;color:var(--terra);margin-bottom:8px}.contact-item a,.contact-item p{font-family:Georgia,serif;color:var(--deep);font-size:19px;margin:0}.form-panel,.newsletter-page{background:#f2f4ed;padding:40px}.form-panel h3{font-size:34px;margin-bottom:25px}label{display:block;font-size:11px;font-weight:700;margin:0 0 7px}input,select,textarea{width:100%;border:1px solid #d1dbd0;background:#fffef9;padding:13px 14px;font-family:inherit;color:var(--ink);font-size:13px;border-radius:0}input:focus,select:focus,textarea:focus{outline:2px solid #81a48a;outline-offset:1px}.form-hint{font-size:11px;margin:18px 0}.form-message{font-size:12px;font-weight:bold;margin-top:12px;color:var(--deep)}.form-message.error{color:#a23e30}.newsletter-page{max-width:650px;margin:auto;padding:55px}.newsletter-page h2{font-size:42px}.newsletter-page form{margin-top:30px}.newsletter-page form button{margin-top:20px}.legal{max-width:850px}.legal h2{margin-bottom:35px}.legal h3{font-size:24px;margin:35px 0 12px}.legal a,.form-hint a{text-decoration:underline}.legal p{line-height:1.85}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Grid fallback keeps the layout intact when the Bootstrap CDN is unavailable. */
.row{display:flex;flex-wrap:wrap;margin-left:-12px;margin-right:-12px}.row>*{padding-left:12px;padding-right:12px;width:100%;max-width:100%}.g-4{row-gap:24px}.g-5{row-gap:40px}.g-3{row-gap:16px}.g-0{margin:0}.g-0>*{padding:0}.col-6{width:50%}.col-12{width:100%}.align-items-center{align-items:center}.align-items-end{align-items:flex-end}.align-items-start{align-items:flex-start}@media(min-width:768px){.col-md-4{width:33.333%}.col-md-6{width:50%}}@media(min-width:992px){.col-lg-2{width:16.6667%}.col-lg-4{width:33.3333%}.col-lg-5{width:41.6667%}.col-lg-6{width:50%}.col-lg-7{width:58.3333%}.col-lg-8{width:66.6667%}.offset-lg-1{margin-left:8.3333%}}
@media(max-width:991px){.nav-links{gap:16px}.hero{min-height:580px}.hero-content{min-height:535px}.approach-photo{min-height:400px}.approach-copy{padding:55px 10px 10px}.footer-main>div{margin-bottom:30px}.section{padding:80px 0}.page-intro .row>div:last-child p{margin-top:20px}.contact-details{margin-bottom:0}}@media(max-width:767px){.container{padding-left:22px;padding-right:22px}.topbar-inner{justify-content:center}.topbar-inner span{display:none}.nav-wrap{height:74px;position:relative}.menu-toggle{display:block}.nav-links{display:none;position:absolute;z-index:10;left:0;right:0;top:74px;background:#fffef9;padding:20px 22px 25px;box-shadow:0 12px 20px #183a2d18;align-items:stretch;flex-direction:column;gap:15px}.nav-links.open{display:flex}.nav-cta{justify-content:space-between}.hero{min-height:650px}.hero-img img{object-position:65% center}.hero-overlay{background:linear-gradient(90deg,rgba(247,245,237,.96),rgba(247,245,237,.74) 70%,rgba(247,245,237,.28))}.hero-content{min-height:605px}.hero-copy{padding:60px 0 120px}.hero h1{font-size:55px}.hero-badge{right:25px;bottom:65px;width:90px;height:90px}.hero-badge span{font-size:20px}.hero-badge p{font-size:7px;margin-top:5px}.hero-bottom .container{font-size:7px}.values-inner{min-height:90px;display:block;padding-top:18px;padding-bottom:18px}.values-inner div:first-child{font-size:17px}.values-inner div:last-child{font-size:8px;margin-top:4px}.values-inner div:last-child span{margin:0 7px}.section{padding:70px 0}.intro-section h2{margin-bottom:30px}.section-head{display:block}.section-head>p,.section-head>.text-link{margin-top:20px}.service-img{height:230px}.service-content p{min-height:0}.approach-section{padding:50px 0}.approach-photo{min-height:320px}.approach-copy{padding:45px 5px 10px}.quote-card{min-height:200px}.blog-image{height:240px}.newsletter-band{padding:60px 0}.newsletter-band .inline-form{margin-top:30px}.cta-inner{display:block}.footer-cta p{margin-top:25px}.footer-main{padding-top:50px;padding-bottom:20px}.footer-bottom{gap:10px;flex-direction:column}.page-intro{padding-bottom:55px}.breadcrumb-line{margin-bottom:45px}.article-hero{padding-bottom:80px}.article-image{height:240px}.article-body{padding:45px 0 70px}.about-image{height:320px}.form-panel,.newsletter-page{padding:28px}.contact-item a{font-size:17px}}
