
/* Office contact and official logo. Base stylesheet remains unchanged. */
.brand-logo{width:48px;height:48px;flex:0 0 48px;display:block;object-fit:contain;background:#fff9f5;border-radius:10px;padding:4px;border:1px solid #eee2dc}
.brand-logo-small{width:40px;height:40px;flex:0 0 40px;padding:3px;border-radius:8px}
.brand{display:flex;align-items:center;gap:13px}
.brand-copy{display:flex;flex-direction:column;line-height:1.4}
.brand-copy strong{font-size:18px;letter-spacing:-.5px}
.brand-copy small{font-size:11px;color:#697c81}
.header-nav{display:flex;gap:36px;align-items:center;font-size:14px;font-weight:700}
.header-nav>a:not(.nav-contact):hover{color:#2b766e}
.nav-contact{padding:10px 17px;border:1px solid #bbc7c6;border-radius:6px}
.eyebrow{display:flex;align-items:center;gap:13px}
.eyebrow-line{width:32px;height:2px;background:#2b766e}
.link{display:inline-flex;gap:10px;align-items:center}
.hero-logo-plate{width:195px;height:195px;border-radius:50%;background:#fffaf3;display:grid;place-items:center;border:1px solid #d0c6a7;box-shadow:0 12px 35px rgba(0,0,0,.18)}
.hero-logo-plate img{display:block;width:158px;height:158px;object-fit:contain}
.art-monogram{display:grid;place-items:center;z-index:1}
.three-dots{display:flex;gap:6px}
.three-dots span{background:#7a9390;width:5px;height:5px;border-radius:50%}
.art-corner{position:absolute;top:25px;left:12px;color:#9cc6be;font-size:10px}
.art-lines{position:absolute;right:-20px;top:40px;display:flex;gap:9px;transform:rotate(-20deg)}
.art-lines i{width:200px;height:1px;background:#b2b5a3;opacity:.2}
.art-caption{position:absolute;bottom:10px;right:7px;color:#d9e4d9;font-size:17px;font-weight:bold;line-height:1.5}
.art-bottom span:last-child{font-size:20px}
.floating{display:flex;align-items:center;gap:9px}
.float-icon{border-radius:50%;background:#dcf0e3;color:#2b766e;width:23px;height:23px;display:grid;place-items:center}
.service{transition:transform .2s,box-shadow .2s}
.service:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(15,39,55,.06)}
.section-header{display:flex;align-items:end;justify-content:space-between;gap:30px}
.kicker{color:#2b766e;font-size:13px;font-weight:700}
.approach-heading h2 span{color:#2b766e}
.points .point-item{display:flex;align-items:flex-start;gap:22px;padding:25px 0;border-bottom:1px solid #d1dcda}
.points .point-item:last-child{border:0}
.points .point-item>span{border:1px solid #c6d7d2;border-radius:50%;width:45px;height:45px;flex:0 0 45px;display:grid;place-items:center;font-size:20px;color:#2b766e}
.points .point-item h3{margin:0 0 4px}
.points .point-item p{margin:0;color:#667d7e;font-size:14px}
.contact-copy{max-width:610px}
.contact-direct{display:inline-flex;gap:9px;align-items:center;color:#f3e5c9;font-size:17px;font-weight:bold;margin-top:26px}
.contact-direct:hover,.contact-panel a:not(.button):hover{text-decoration:underline;text-underline-offset:4px}
.contact-panel{width:min(100%,390px);flex:0 0 min(100%,390px);background:#1c3a4b;border:1px solid rgba(236,241,231,.18);border-radius:12px;padding:28px 30px;box-shadow:0 15px 40px rgba(0,0,0,.13)}
.contact-panel h3{font-size:20px;margin:0 0 20px;color:#fff}
.office-details{margin:0}
.office-details>div{padding:11px 0;border-bottom:1px solid rgba(223,230,229,.14)}
.office-details>div:first-child{padding-top:0}
.office-details>div:last-child{border-bottom:0}
.office-details dt{font-size:12px;color:#abc0c4;font-weight:700;margin-bottom:4px}
.office-details dd{margin:0;color:#f7f6f1;font-size:15px;line-height:1.6;overflow-wrap:anywhere}
.office-details dd a{color:inherit}
.office-contact-button{display:flex;width:100%;margin-top:19px}
.site-footer{background:#fafbf8;padding:42px 0;border-top:1px solid #dbe3e4}
.footer-links{display:flex;gap:23px;font-size:13px;font-weight:bold;flex-wrap:wrap}
.footer-inner>.brand .brand-logo{width:40px;height:40px;flex-basis:40px}
.footer-inner>.brand strong{font-size:16px}
.footer-inner>.brand small{font-size:11px}
@media(max-width:930px){.contact-inner{align-items:flex-start}.contact-copy{flex:1}.contact-panel{width:min(100%,350px);flex-basis:350px}}
@media(max-width:720px){.brand-logo{width:39px;height:39px;flex-basis:39px}.brand-logo-small{width:40px;height:40px;flex-basis:40px}.brand-copy strong{font-size:15px}.brand-copy small{font-size:9px}.header-nav>a:not(.nav-contact){display:none}.header-nav{gap:0}.nav-contact{font-size:12px;padding:9px 11px}.section-header{display:block}.contact-inner{display:block}.contact-panel{width:100%;flex-basis:auto;padding:24px;margin-top:28px}.contact-direct{margin-top:18px}.contact{padding-bottom:58px}.footer-links{flex-wrap:wrap}.hero-logo-plate{width:190px;height:190px}}
@media(prefers-reduced-motion:reduce){.service{transition:none}}
