*{box-sizing:border-box}
body{margin:0;background:#F4F6F5;color:#0D1B2A;font-family:Sora,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#0B6B4E;text-underline-offset:3px}
a:hover{color:#0D1B2A}
.site-header{background:#fff;border-bottom:1px solid #D9DFDC;position:sticky;top:0;z-index:100}
.site-header-inner{max-width:1200px;margin:0 auto;padding:0 16px;height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.desktop-nav{display:flex;align-items:center;gap:4px;font-size:15px}
.desktop-nav a{padding:12px 14px;color:#0D1B2A;text-decoration:none}
.desktop-nav a:hover{color:#0B6B4E}
.desktop-nav a[aria-current=page]{color:#0B6B4E;font-weight:500}
.nav-cta{margin-left:12px;min-height:44px;padding:0 20px;display:inline-flex;align-items:center;background:#0D1B2A;color:#fff!important;text-decoration:none;font-weight:500}
.mobile-menu-btn{display:none;min-width:48px;min-height:48px;border:1px solid #C9D1CD;background:#fff;font:500 14px Sora,sans-serif;color:#0D1B2A;padding:0 14px;cursor:pointer}
.mobile-nav{display:none;background:#fff;border-top:1px solid #D9DFDC;padding:16px}
.mobile-nav a{display:block;padding:12px 16px;color:#0D1B2A;text-decoration:none;font-size:16px}
.mobile-nav a:hover{color:#0B6B4E}
.breadcrumb{font-size:13px;color:#4A5868;display:flex;gap:8px;align-items:center;padding:24px 0}
.breadcrumb a{color:#4A5868;text-decoration:none}
.breadcrumb a:hover{color:#0D1B2A}
.section-label{font-family:ui-monospace,Menlo,monospace;font-size:13px;color:#4A5868}
.section-label--green{color:#0B6B4E}
.site-footer{background:#0D1B2A;color:#fff}
.site-footer-inner{max-width:1200px;margin:0 auto;padding:72px 16px 32px}
.btn-primary{min-height:52px;padding:0 26px;display:inline-flex;align-items:center;gap:12px;background:#0D1B2A;color:#fff;text-decoration:none;font-size:16px;font-weight:500;border:none;cursor:pointer;font-family:Sora,sans-serif}
.btn-primary:hover{background:#1a2f47;color:#fff}
.btn-outline{min-height:52px;padding:0 26px;display:inline-flex;align-items:center;border:1px solid #0D1B2A;color:#0D1B2A;text-decoration:none;font-size:16px;font-weight:500}
.btn-outline:hover{background:#0D1B2A;color:#fff}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:14px;font-weight:500}
.field input,.field select,.field textarea{min-height:48px;border:1px solid #9AA6A0;padding:0 14px;font:400 15px Sora,sans-serif;color:#0D1B2A;background:#fff;border-radius:0;outline:none;width:100%}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#0B6B4E}
.field textarea{min-height:128px;padding:12px 14px;resize:vertical}
.field-error{border-color:#B42318!important}
.field-msg{font-size:13px;color:#B42318}
@media(max-width:767px){
  .desktop-nav{display:none!important}
  .mobile-menu-btn{display:flex!important}
  h1.page-h1{font-size:38px!important}
  h2.section-h2{font-size:28px!important}
  .hero-h1{font-size:36px!important}
  .two-col{flex-direction:column!important}
  .three-col{grid-template-columns:1fr!important}
  .three-col>*+*{border-left:none!important;border-top:1px solid #C9D1CD!important}
  .service-detail-grid{display:block!important}
  .service-detail-aside{display:none!important}
  .contact-grid{display:block!important}
  .footer-grid{grid-template-columns:1fr 1fr!important}
  .footer-brand{grid-column:1/-1!important}
  .footer-contact{grid-column:1/-1!important}
}
