@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{--charcoal:#242529;--charcoal-2:#303136;--gold:#c6ad6e;--gold-light:#ddc98e;--ink:#292a2f;--muted:#6e7077;--paper:#fff;--soft:#f6f5f1;--line:#e7e4dc}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.65}a{color:inherit}.site-header{height:90px;padding:0 clamp(22px,6vw,90px);display:flex;align-items:center;justify-content:space-between;background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 18px #17171a0b}.brand img{display:block;width:160px;height:auto}.main-nav{display:flex;align-items:center;gap:34px}.main-nav a{text-decoration:none;font-size:.88rem;font-weight:600}.main-nav a:hover{color:#9b8043}.main-nav .nav-contact{background:var(--charcoal);color:white;padding:12px 19px}.menu-toggle{display:none;background:none;border:0;font-size:1.5rem}
.hero{background:var(--charcoal);color:white;min-height:590px;padding:85px clamp(22px,8vw,125px);display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:8%;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:450px;height:450px;border:1px solid #ffffff0d;border-radius:50%;right:-150px;top:-180px;box-shadow:0 0 0 60px #ffffff05,0 0 0 120px #ffffff03}.hero-content,.hero-panel{position:relative;z-index:1}.eyebrow{font-size:.72rem;letter-spacing:.19em;font-weight:700;color:var(--gold-light);margin:0 0 20px}.hero h1,.section h2,.dark-band h2,.contact-section h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.13;letter-spacing:-.025em}.hero h1{font-size:clamp(2.7rem,4.6vw,4.5rem);margin:0 0 23px}.hero h1 span,.dark-band h2 span,.contact-section h2 span{color:var(--gold-light)}.hero-intro{max-width:570px;color:#dedee0;font-size:1.05rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:13px 24px;font-weight:700;font-size:.88rem;border:1px solid transparent;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:var(--charcoal)}.button-gold:hover{background:var(--gold-light)}.button-outline{border-color:#77777b;color:white}.button-outline:hover{border-color:var(--gold-light)}.hero-note{font-size:.82rem;color:#b9b9bd;margin-top:22px}.hero-panel{border:1px solid #ffffff29;padding:42px 36px 26px;max-width:400px;justify-self:end;background:#ffffff05}.gold-rule{height:3px;width:48px;background:var(--gold);margin-bottom:26px}.panel-kicker{color:var(--gold-light);font-size:.76rem;letter-spacing:.09em;text-transform:uppercase}.hero-panel h2{font-family:'Playfair Display',Georgia,serif;font-size:2.4rem;font-weight:500;line-height:1.15;margin:12px 0}.hero-panel>p:not(.panel-kicker){color:#c9c9cd;font-size:.94rem}.panel-footer{border-top:1px solid #ffffff24;margin-top:35px;padding-top:18px;display:flex;align-items:center;gap:14px;color:#c7c7ca;font-size:.57rem;letter-spacing:.16em}.panel-footer span:first-child{font-size:1.5rem;color:var(--gold);font-weight:700;letter-spacing:-.08em}.trust-strip{display:flex;justify-content:center;gap:clamp(25px,6vw,90px);padding:25px 22px;background:#f8f7f3;border-bottom:1px solid var(--line)}.trust-strip>div{display:flex;align-items:center;gap:13px}.value-mark{font-family:'Playfair Display',Georgia,serif;color:#a68b4e;font-size:1.4rem}.trust-strip p{margin:0;font-size:.88rem;line-height:1.45}.trust-strip small{color:var(--muted);font-size:.76rem}.section{padding:100px clamp(22px,8vw,125px)}.section-heading{text-align:center;max-width:650px;margin:0 auto 50px}.eyebrow-dark{color:#9c8040}.section h2,.about-copy h2{font-size:clamp(2.3rem,4vw,3.4rem);margin:0 0 18px}.section h2 span,.about-copy h2 span{color:#a58b50}.section-heading>p:last-child{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;padding:29px 27px 31px;border:1px solid var(--line);min-height:230px;background:white;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #2425290d}.service-number{position:absolute;right:22px;top:20px;font-size:.72rem;color:#aaa}.service-icon{width:42px;height:42px;display:grid;place-items:center;background:#f3efe4;color:#9a7d3d;font-size:1.25rem;margin-bottom:22px}.service-card h3{font-size:1.08rem;margin:0 0 8px}.service-card p{font-size:.89rem;color:var(--muted);margin:0}.service-disclaimer{font-size:.75rem;color:#777;text-align:center;max-width:850px;margin:28px auto 0}.dark-band{background:var(--charcoal);color:white;padding:85px clamp(22px,8vw,125px);display:grid;grid-template-columns:1fr .9fr;gap:10%;align-items:center}.dark-band h2,.contact-section h2{font-size:clamp(2.5rem,4vw,3.5rem);margin:0 0 20px}.dark-band-copy>p:last-child,.contact-copy>p:not(.eyebrow){color:#c8c8cc;max-width:590px}.client-types{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ffffff2a;border-left:1px solid #ffffff2a}.client-types>div{padding:26px 22px;border-right:1px solid #ffffff2a;border-bottom:1px solid #ffffff2a}.client-types span{font-size:1.45rem;color:var(--gold-light)}.client-types p{font-size:.9rem;margin:10px 0 0}.about-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:center;background:var(--soft)}.about-emblem{background:var(--charcoal);padding:50px 25px;display:grid;place-items:center;min-height:260px}.about-emblem img{width:100%;max-width:370px;height:auto}.about-copy p:not(.eyebrow){color:var(--muted)}.text-link{display:inline-block;margin-top:12px;color:#8f743a;text-decoration:none;font-weight:700;font-size:.9rem}.text-link span{padding-left:8px}.contact-section{background:var(--charcoal);color:white;padding:95px clamp(22px,8vw,125px);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.contact-email{display:inline-block;margin-top:20px;color:var(--gold-light);text-decoration:none;font-weight:600}.contact-form{background:#fff;color:var(--ink);padding:34px}.contact-form label{display:block;font-size:.8rem;font-weight:700;margin:14px 0 6px}.contact-form label:first-child{margin-top:0}.contact-form input,.contact-form select,.contact-form textarea{width:100%;font:inherit;font-size:.9rem;padding:11px 12px;border:1px solid #dcdce0;border-radius:0;background:#fff;color:var(--ink)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.button-submit{width:100%;margin-top:20px}.form-note,.form-status{font-size:.72rem;color:#777;margin:12px 0 0}.form-status{color:#6e5726}.site-footer{padding:42px clamp(22px,8vw,125px) 20px;text-align:center}.site-footer>img{width:175px;max-width:65%;height:auto}.site-footer>p{font-size:.82rem;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:28px;padding-top:18px;font-size:.75rem;color:var(--muted)}.footer-bottom a{text-decoration:none}.footer-bottom a:hover{color:#8f743a}
@media(max-width:850px){.main-nav{gap:18px}.hero{grid-template-columns:1fr;gap:45px;padding-top:65px;padding-bottom:65px}.hero-panel{justify-self:start;max-width:520px;width:100%}.service-grid{grid-template-columns:repeat(2,1fr)}.dark-band,.contact-section{grid-template-columns:1fr;gap:42px}.about-section{gap:40px}.about-emblem{min-height:220px}.trust-strip{gap:22px}.trust-strip small{display:none}}
@media(max-width:620px){.site-header{height:75px}.brand img{width:135px}.menu-toggle{display:block;color:var(--charcoal)}.main-nav{display:none;position:absolute;top:75px;left:0;right:0;padding:20px 24px 25px;background:#fff;box-shadow:0 12px 20px #00000012;flex-direction:column;align-items:stretch;gap:18px}.main-nav.open{display:flex}.main-nav .nav-contact{text-align:center}.hero{padding:58px 24px}.hero h1{font-size:2.65rem}.hero-panel{padding:30px 25px}.trust-strip{align-items:flex-start;flex-direction:column;padding:24px}.trust-strip small{display:inline}.section{padding:70px 22px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.dark-band,.contact-section{padding:70px 22px}.client-types>div{padding:20px 14px}.about-section{grid-template-columns:1fr}.about-emblem{padding:35px 20px}.contact-form{padding:24px 20px}.footer-bottom{gap:12px;flex-wrap:wrap}}


.membership-section{padding:85px clamp(22px,8vw,125px);background:#fff}
.membership-heading{text-align:center;max-width:680px;margin:0 auto 40px}
.membership-heading h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:500;line-height:1.13;margin:0 0 18px}
.membership-heading h2 span{color:#a58b50}
.membership-heading>p:last-child{color:var(--muted);margin:0}
.membership-logos{display:flex;justify-content:center;align-items:stretch;gap:24px;max-width:760px;margin:0 auto}
.membership-logo-card{flex:1;max-width:330px;min-height:210px;border:1px solid var(--line);padding:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff}
.membership-logo-card img{display:block;width:auto;height:105px;max-width:100%;object-fit:contain}
.membership-logo-card p{font-size:.84rem;color:var(--muted);line-height:1.45;margin:16px 0 0}
.membership-logo-card strong{color:var(--ink)}
.membership-note{max-width:800px;margin:24px auto 0;text-align:center;color:#777;font-size:.72rem}
@media(max-width:620px){.membership-section{padding:65px 22px}.membership-logos{flex-direction:column;align-items:center}.membership-logo-card{width:100%;max-width:360px}}

.service-area{margin-top:12px;font-size:.9rem;color:var(--muted);letter-spacing:.02em}

/* Contact form feedback follows the existing black, white and gold palette. */
.contact-form .form-note{color:#5e6066}
.contact-form .form-status{font-size:.85rem;font-weight:600;color:#6e5726}
.contact-form .form-status:empty{display:none}
.contact-form .form-status:focus{outline:2px solid var(--gold);outline-offset:5px}
.contact-form textarea{resize:vertical;min-height:120px}
.button-submit:disabled{opacity:.7;cursor:wait;transform:none}
