/* Shared header geometry, contact CTA and footer; preserve the established design. */
.ag-navigation { font:400 16px/1.4 'Golos Text',Arial,sans-serif; color:#232323; }
.ag-navigation .navbar { display:block; gap:0; padding:0; width:100%; background:transparent; }
.ag-navigation .navbar > .container { box-sizing:border-box; display:flex !important; align-items:center !important; width:calc(100% - 32px) !important; max-width:1440px !important; min-height:90px; height:auto !important; gap:12px !important; padding:8px 14px !important; margin:16px auto 0 !important; border-radius:100px !important; }
.ag-navigation .navbar-brand { display:flex; margin:0; padding:0; flex:0 0 auto; }
.ag-navigation .navbar-logo img { display:block; object-fit:contain; height:65.6px !important; width:auto !important; max-width:none; border-radius:2rem; }
.ag-navigation .ag-nav-panel { flex:1 1 auto; justify-content:flex-end; min-width:0; }
.ag-navigation .ag-menu-toggle { flex:0 0 44px; }
body.ag-new-calculator { padding-top:var(--ag-header-clearance,130px) !important; }
.ag-contact-cta { box-sizing:border-box; padding:64px 24px; background:transparent; color:#232323; }
.ag-contact-cta__inner { max-width:1200px; margin:auto; padding:36px 40px; border-radius:2rem; background:#dcebe4; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.ag-contact-cta h2 { font:700 clamp(1.5rem,3vw,2.3rem)/1.2 'Golos Text',Arial,sans-serif; margin:0 0 12px; color:#232323; letter-spacing:-.025em; }
.ag-contact-cta p { font:400 1rem/1.65 'Golos Text',Arial,sans-serif; margin:0; color:#46574e; max-width:62ch; }
.ag-contact-cta .ag-contact-button,.ag-site-footer .ag-contact-button { display:inline-flex !important; align-items:center; justify-content:center; flex:0 0 auto; min-height:48px; margin:0 !important; padding:15px 26px; background:#49a078; color:#13271c !important; border:0; border-radius:100px; font:700 1rem/1.4 'Golos Text',Arial,sans-serif; text-decoration:none; text-align:center; }
.ag-contact-cta .ag-contact-button:hover,.ag-site-footer .ag-contact-button:hover { background:#357b5b; color:#fff !important; }
.ag-contact-cta a:focus-visible,.ag-site-footer :where(a,summary):focus-visible { outline:3px solid #28764f; outline-offset:4px; }
.ag-site-footer { display:block; box-sizing:border-box; width:100%; margin:0; padding:56px 24px 24px; border-top:1px solid #d7e0db; background:#e9f0f0; color:#232323; font:400 1rem/1.65 'Golos Text',Arial,sans-serif; text-align:left; }
.ag-site-footer *, .ag-site-footer *::before,.ag-site-footer *::after { box-sizing:border-box; }
.ag-footer-grid { max-width:1200px; margin:auto; display:grid; grid-template-columns:1.15fr 1.15fr 1fr 1fr; gap:32px; }
.ag-site-footer h2 { font:700 1.05rem/1.4 'Golos Text',Arial,sans-serif; color:#232323; margin:0 0 16px; letter-spacing:0; }
.ag-site-footer p,.ag-site-footer address { font:400 .95rem/1.7 'Golos Text',Arial,sans-serif; color:#46574e; margin:0 0 16px; }
.ag-site-footer a { display:flex !important; align-items:center; width:fit-content; min-height:44px; padding:8px 0; margin:0; background:transparent; color:#28764f; font:400 .95rem/1.6 'Golos Text',Arial,sans-serif; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.ag-site-footer .ag-footer-logo { margin:0 0 16px; padding:0; }
.ag-site-footer .ag-footer-logo img { width:120px; height:auto; max-width:100%; }
.ag-site-footer .ag-contact-button { font-weight:700; width:fit-content; text-decoration:none; }
.ag-footer-bottom { max-width:1200px; margin:32px auto 0; padding-top:24px; border-top:1px solid #c6d5cc; display:flex; flex-wrap:wrap; gap:12px 28px; align-items:center; font-size:.85rem; color:#53615c; }
.ag-footer-bottom a { min-height:36px; font-size:.85rem; }
.ag-footer-map { max-width:1200px; margin:24px auto 0; }
.ag-footer-map summary { min-height:44px; padding:10px 0; cursor:pointer; color:#28764f; font-weight:600; }
.ag-footer-map iframe { display:block; width:100%; height:300px; border:0; margin-top:12px; border-radius:1.5rem; }
.ag-contact-anchor { display:block; scroll-margin-top:140px; }
.ag-site-footer,.ag-contact-cta { scroll-margin-top:140px; }
.ag-site-footer .animate__animated,.ag-contact-cta .animate__animated { animation:none !important; opacity:1 !important; visibility:visible !important; }
@media(max-width:1399px) { .ag-navigation .navbar > .container { min-height:82px; } .ag-navigation .ag-nav-panel { flex-basis:100%; } }
@media(max-width:991px) { .ag-footer-grid { grid-template-columns:1fr 1fr; } .ag-contact-cta__inner { align-items:flex-start; flex-direction:column; gap:24px; } }
@media(max-width:767px) {
  .ag-navigation .navbar > .container { width:calc(100% - 16px) !important; min-height:56px; padding:4px 12px !important; margin-top:8px !important; gap:8px !important; }
  .ag-navigation .navbar-logo img { height:40px !important; }
  .ag-contact-cta { padding:40px 16px; }
  .ag-contact-cta__inner { padding:28px 24px; }
  .ag-contact-cta .ag-contact-button { width:100%; }
  .ag-site-footer { padding:40px 24px 24px; }
  .ag-footer-grid { grid-template-columns:1fr; gap:28px; }
}
@media print { .ag-site-footer,.ag-contact-cta { display:none; } }
