/* Header refinements are scoped so the reviewed page sections stay stable. */
html{scroll-padding-top:120px}
.skip-link{z-index:100}
.site-header.header-refined{display:block!important;height:auto!important;padding:0!important;gap:0!important;grid-template:none!important;position:sticky;top:0;z-index:50;background:var(--ivory);border-bottom:1px solid #d8e3da;box-shadow:0 3px 18px #133b5308}
.header-refined .header-inner{width:calc(100% - clamp(40px,6vw,112px));max-width:1440px;margin-inline:auto;min-height:104px;display:flex;align-items:center;gap:24px}
.header-refined .brand{flex-shrink:0;display:flex;align-items:center}
.header-refined .brand img{display:block;width:clamp(218px,18vw,252px);height:auto;aspect-ratio:3/1;object-fit:contain}
.header-refined .primary-nav{display:flex;align-items:center;align-self:auto;gap:3px;margin-left:auto;flex-wrap:nowrap;min-height:0;flex-shrink:0}
.header-refined .primary-nav a{display:flex;align-items:center;justify-content:center;position:relative;min-height:48px;padding:12px 11px;font-size:17px;line-height:1.35;font-weight:700;letter-spacing:-.015em;text-decoration:none;white-space:nowrap;color:var(--navy);border-radius:6px;transition:color .2s var(--ease),background .2s var(--ease)}
.header-refined .primary-nav a::after{left:11px;right:11px;bottom:6px;height:2px;background:var(--teal);transform:scaleX(0)}
.header-refined .primary-nav a:hover{background:#eaf0e9;color:var(--teal)}
.header-refined .primary-nav a[aria-current]{background:#e4eee7;color:var(--teal)}
.header-refined .primary-nav a:hover::after,.header-refined .primary-nav a[aria-current]::after{transform:scaleX(1)}
.header-refined .header-actions{display:flex;align-items:center;gap:20px;flex-shrink:0;margin:0}
.header-refined .header-phone{display:flex;align-items:center;gap:8px;font-size:16px;line-height:1.4;font-weight:700;text-decoration:none;white-space:nowrap;letter-spacing:-.015em}
.header-phone svg{width:19px;height:19px;color:var(--teal)}
.header-refined .header-contact{font-size:16px;font-weight:700;min-height:50px;padding:13px 20px;gap:20px;border-radius:7px}
.header-refined .header-call-mobile,.header-refined .primary-nav .mobile-menu-contact,.menu-toggle{display:none}
@media(min-width:1280px) and (max-width:1399px){.header-refined .header-phone{display:none}.header-refined .header-inner{gap:21px}.header-refined .brand img{width:230px}.header-refined .primary-nav a{padding-inline:12px}}
@media(min-width:761px){.hero{min-height:clamp(690px,calc(100svh - 104px),900px)}}
@media(max-width:1279px){
  html{scroll-padding-top:106px}
  .header-refined .header-inner{width:calc(100% - 40px);min-height:90px;gap:12px;flex-wrap:wrap;padding-block:8px}
  .header-refined .brand{margin-right:auto}
  .header-refined .brand img{width:clamp(148px,44vw,220px)}
  .header-refined .header-actions{gap:0;margin-left:0}
  .header-refined .header-phone,.header-refined .header-contact{display:none}
  .header-refined .header-call-mobile{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #cbd9cf;border-radius:7px;color:var(--teal)}
  .header-call-mobile svg{width:21px;height:21px}
  .menu-toggle:not([hidden]){display:flex;align-items:center;justify-content:center;gap:9px;min-width:79px;min-height:44px;padding:10px 12px;border:1px solid #cbd9cf;border-radius:7px;background:transparent;color:var(--navy);font-size:14px;font-weight:700}
  .menu-toggle:hover,.header-call-mobile:hover{background:#e4eee7}
  .menu-glyph{position:relative;width:17px;height:14px;display:block}
  .menu-glyph>span{position:absolute;left:0;right:0;top:2px;height:1.5px;background:currentColor;transition:transform .2s var(--ease)}
  .menu-glyph>span:last-child{top:10px}
  .menu-open .menu-glyph>span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-open .menu-glyph>span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .header-refined .primary-nav{order:4;flex-basis:100%;display:grid;grid-template-columns:1fr;gap:4px;margin:0;padding:12px 4px 14px;border-top:1px solid #d8e3da;max-height:calc(100svh - 100px);overflow-y:auto;min-width:0}
  .header-refined.has-menu-toggle:not(.menu-open) .primary-nav{display:none}
  .header-refined .primary-nav a{justify-content:flex-start;font-size:18px;padding:13px 14px;min-height:50px}
  .header-refined .primary-nav a::after{display:none}
  .header-refined .primary-nav .mobile-menu-contact{display:flex;justify-content:space-between;gap:20px;background:var(--navy);color:var(--ivory);margin-top:8px;min-height:54px}
  .header-refined .primary-nav .mobile-menu-contact:hover{background:var(--navy)}
}
@media(max-width:350px){.header-refined .header-inner{width:calc(100% - 32px);gap:8px}.header-refined .brand img{width:148px}.menu-toggle:not([hidden]){min-width:76px;padding-inline:10px;gap:7px}}
.header-refined .contact-cta{position:relative;isolation:isolate;overflow:hidden;min-width:190px;min-height:54px;justify-content:space-between;gap:27px;padding:14px 19px;background:var(--navy);border-color:var(--navy);color:var(--ivory);border-radius:8px;box-shadow:0 2px 5px #133b5310;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.header-refined .contact-cta::before{content:"";position:absolute;top:-1px;bottom:-1px;right:-1px;width:58px;z-index:-1;background:#87cabe;border-radius:52% 0 0 52% / 50%;transition:background .3s var(--ease),border-radius .3s var(--ease)}
.header-refined .contact-cta .contact-cta-label{font-size:16px;font-weight:700;line-height:1.35;position:relative;white-space:nowrap}
.header-refined .contact-cta .contact-cta-arrow{position:relative;display:grid;place-items:center;width:22px;height:22px;flex-shrink:0;color:#082d3d;transition:transform .25s var(--ease)}
.contact-cta-arrow svg{width:21px;height:21px;display:block}
.header-refined .contact-cta:hover{background:var(--navy);color:var(--ivory);transform:translateY(-1px);box-shadow:0 6px 16px #133b5324}
.header-refined .contact-cta:hover::before{background:#6bbfb1;border-radius:42% 0 0 42% / 50%}
.header-refined .contact-cta:hover .contact-cta-arrow{transform:translate(2px,-2px)}
.header-refined .contact-cta:active{transform:translateY(0);box-shadow:0 2px 5px #133b5310}
@media(max-width:1279px){.header-refined .primary-nav .contact-cta-label{font-size:18px}.header-refined .primary-nav .contact-cta{padding-right:19px}}
