/* ============ Editorial footer — navy base, green geometry, hairline rows ============ */
/* both top-level sections share .elementor-top-section: navy on both, the 4px green
   strip ONLY on the first section (3800a3e) so the bottom bar stays quiet */
body.ysm-design-system .elementor-location-footer .elementor-top-section{background:#002d62!important;border-top:0}
body.ysm-design-system .elementor-location-footer .elementor-element-3800a3e{border-top:4px solid #91a75d}
body.ysm-design-system .elementor-location-footer,
body.ysm-design-system .elementor-location-footer p,
body.ysm-design-system .elementor-location-footer li{color:#c9d9ec}
body.ysm-design-system .elementor-location-footer .elementor-element-528377b .elementor-widget-text-editor p{color:#c9d9ec!important;font-size:15px;line-height:1.7;max-width:34ch}
/* column headings -> editorial diamond eyebrows
   (.elementor-widget-heading is required: the Customizer custom CSS (post 19) re-declares
   h2.elementor-heading-title sizes with !important and prints after this sheet, so this
   selector must out-rank it on specificity, not on order) */
body.ysm-design-system .elementor-location-footer .elementor-widget-heading h2.elementor-heading-title{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:#9fc9e4!important;font-family:var(--ysm-font-body)!important;font-size:13px!important;line-height:1.2!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body.ysm-design-system .elementor-location-footer .elementor-widget-heading h2.elementor-heading-title::before{content:"";width:8px;height:8px;background:#91a75d;transform:rotate(45deg);flex:0 0 auto}
/* left-align the editorial columns */
body.ysm-design-system .elementor-location-footer .elementor-top-section .elementor-widget-container,
body.ysm-design-system .elementor-location-footer .elementor-top-section .elementor-heading-title,
body.ysm-design-system .elementor-location-footer .elementor-top-section .elementor-nav-menu--main,
body.ysm-design-system .elementor-location-footer .elementor-top-section .elementor-icon-list-items{text-align:left!important}
/* nav menu columns -> hairline rows */
body.ysm-design-system .elementor-location-footer .elementor-nav-menu{display:block;width:100%;margin:0;padding:0}
body.ysm-design-system .elementor-location-footer .elementor-nav-menu>li{display:block;margin:0;border-top:1px solid rgba(255,255,255,.13)}
body.ysm-design-system .elementor-location-footer .elementor-nav-menu>li:last-child{border-bottom:1px solid rgba(255,255,255,.13)}
body.ysm-design-system .elementor-location-footer .elementor-nav-menu .elementor-item{display:block;padding:9px 2px!important;color:#e6eef7!important;font-size:15px!important;font-weight:600;line-height:1.4;text-decoration:none}
body.ysm-design-system .elementor-location-footer .elementor-nav-menu .elementor-item:hover,
body.ysm-design-system .elementor-location-footer .elementor-nav-menu .elementor-item:focus-visible{color:#91a75d!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
body.ysm-design-system .elementor-location-footer .elementor-nav-menu .elementor-item-active{color:#91a75d!important}
/* contact icon list -> hairline rows, green icons */
body.ysm-design-system .elementor-location-footer .elementor-icon-list-items{margin:0;padding:0}
body.ysm-design-system .elementor-location-footer .elementor-icon-list-item{padding:9px 2px;border-top:1px solid rgba(255,255,255,.13)}
body.ysm-design-system .elementor-location-footer .elementor-icon-list-item:last-child{border-bottom:1px solid rgba(255,255,255,.13)}
body.ysm-design-system .elementor-location-footer .elementor-icon-list-icon i,
body.ysm-design-system .elementor-location-footer .elementor-icon-list-icon svg{color:#91a75d!important;fill:#91a75d!important}
body.ysm-design-system .elementor-location-footer .elementor-icon-list-text,
body.ysm-design-system .elementor-location-footer .elementor-icon-list-item a{color:#c9d9ec!important;font-size:15px!important;line-height:1.55}
body.ysm-design-system .elementor-location-footer .elementor-icon-list-item a:hover .elementor-icon-list-text,
body.ysm-design-system .elementor-location-footer .elementor-icon-list-item a:focus-visible .elementor-icon-list-text{color:#91a75d!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
/* generic footer links */
body.ysm-design-system .elementor-location-footer a{color:#e6eef7}
body.ysm-design-system .elementor-location-footer a:hover{color:#91a75d;text-decoration-thickness:1px;text-underline-offset:5px}
/* three-column layout (brand | quick links accordion | contact); responsive rules are
   scoped to the FIRST section only — .elementor-top-section also matches the bottom bar */
body.ysm-design-system .elementor-location-footer .elementor-element-3800a3e>.elementor-container{flex-wrap:wrap}
body.ysm-design-system .elementor-location-footer .elementor-element-3800a3e .elementor-widget-heading{margin:30px 0 0!important}
@media(max-width:1199px){
  body.ysm-design-system .elementor-location-footer .elementor-element-3800a3e .elementor-column{width:50%!important}
  body.ysm-design-system .elementor-location-footer .elementor-element-3800a3e .elementor-column:first-child{width:100%!important}
}
@media(max-width:767px){
  body.ysm-design-system .elementor-location-footer .elementor-element-3800a3e .elementor-column{width:100%!important}
}
/* accordion quick-links nav (native details/summary, collapsed by default, no JS) */
body.ysm-design-system .elementor-location-footer .ysm-fnav{display:block;border-bottom:1px solid rgba(255,255,255,.13)}
body.ysm-design-system .elementor-location-footer .ysm-fnav a.ysm-fnav-link,
body.ysm-design-system .elementor-location-footer .ysm-fnav summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 2px;border-top:1px solid rgba(255,255,255,.13);color:#e6eef7;font-size:15px;font-weight:600;line-height:1.4;text-decoration:none!important;transition:color .18s ease}
body.ysm-design-system .elementor-location-footer .ysm-fnav summary{cursor:pointer;list-style:none}
body.ysm-design-system .elementor-location-footer .ysm-fnav summary::-webkit-details-marker,
body.ysm-design-system .elementor-location-footer .ysm-fnav summary::marker{display:none;content:""}
body.ysm-design-system .elementor-location-footer .ysm-fnav a.ysm-fnav-link:hover,
body.ysm-design-system .elementor-location-footer .ysm-fnav a.ysm-fnav-link:focus-visible,
body.ysm-design-system .elementor-location-footer .ysm-fnav summary:hover,
body.ysm-design-system .elementor-location-footer .ysm-fnav details[open]>summary{color:#91a75d!important}
body.ysm-design-system .elementor-location-footer .ysm-fnav a.ysm-fnav-link:hover,
body.ysm-design-system .elementor-location-footer .ysm-fnav summary:hover span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
body.ysm-design-system .elementor-location-footer .ysm-fnav summary:focus-visible{outline:2px solid #007fae;outline-offset:2px}
body.ysm-design-system .elementor-location-footer .ysm-fnav-chev{width:8px;height:8px;flex:0 0 auto;margin-right:5px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .18s ease}
body.ysm-design-system .elementor-location-footer .ysm-fnav details[open] .ysm-fnav-chev{transform:rotate(225deg)}
body.ysm-design-system .elementor-location-footer .ysm-fnav ul{list-style:none;margin:2px 0 12px;padding:0 0 0 16px}
body.ysm-design-system .elementor-location-footer .ysm-fnav ul li{margin:0;border-top:1px solid rgba(255,255,255,.07)}
body.ysm-design-system .elementor-location-footer .ysm-fnav ul li:first-child{border-top:0}
body.ysm-design-system .elementor-location-footer .ysm-fnav ul a{display:block;padding:7px 2px;color:#c9d9ec;font-size:14px;font-weight:400;text-decoration:none!important;transition:color .18s ease}
body.ysm-design-system .elementor-location-footer .ysm-fnav ul a:hover,
body.ysm-design-system .elementor-location-footer .ysm-fnav ul a:focus-visible{color:#91a75d;text-decoration:underline!important;text-decoration-thickness:1px;text-underline-offset:5px}
body.ysm-design-system .elementor-location-footer .ysm-fnav a.ysm-fnav-all{font-weight:700;color:#e6eef7}
body.ysm-design-system .elementor-location-footer .ysm-fnav a.ysm-fnav-all:hover,
body.ysm-design-system .elementor-location-footer .ysm-fnav a.ysm-fnav-all:focus-visible{color:#91a75d}
@media(prefers-reduced-motion:reduce){
  body.ysm-design-system .elementor-location-footer .ysm-fnav-chev{transition:none}
}
/* bottom bar: neutralise legacy negative margins, full-width centered single line */
body.ysm-design-system .elementor-location-footer .elementor-element-993759a>.elementor-container{max-width:100%;width:100%}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-divider{margin:0!important}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-text-editor{margin:0!important;width:100%!important}
/* Elementor 3.35 applies widget _margin on .elementor-widget-container, not the root:
   the legacy -20px/-26px pulls live there, so zero the containers too */
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-divider>.elementor-widget-container,
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-text-editor>.elementor-widget-container{margin:0!important}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-wrap{padding:14px 28px 20px!important}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a p{max-width:none!important;margin:0!important;white-space:nowrap}
@media(max-width:600px){body.ysm-design-system .elementor-location-footer .elementor-element-993759a p{white-space:normal}}
/* bottom bar: quiet hairline + small centered imprint */
body.ysm-design-system .elementor-location-footer .elementor-divider-separator{border-color:rgba(255,255,255,.14)!important}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-container{text-align:center!important}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a p,
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-heading .elementor-heading-title{color:#9db4c9!important;font-size:13.5px!important;font-weight:400!important;letter-spacing:.04em;line-height:1.5!important;text-transform:none!important;display:block}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a .elementor-widget-heading .elementor-heading-title::before{display:none}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a a{color:#9db4c9!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
body.ysm-design-system .elementor-location-footer .elementor-element-993759a a:hover,
body.ysm-design-system .elementor-location-footer .elementor-element-993759a a:focus-visible{color:#91a75d!important}
@media(max-width:767px){
  body.ysm-design-system .elementor-location-footer .elementor-element-528377b .elementor-widget-text-editor p{max-width:none}
}