/* Hamsa Executive Footer 5.0.0 — fully self-contained, theme-independent */
.hef-footer{--navy:#062b55;--navy2:#0a3f73;--blue:#eaf6fd;--blue2:#cfe8f8;--gold:#e9ad24;--gold2:#f8c947;--gray:#e6e8eb;--line:#c9d1d9;--text:#173957;--muted:#5b7187;box-sizing:border-box;width:100%;margin:0;color:var(--text);background:var(--blue);font-family:inherit;line-height:1.55;overflow:hidden}.hef-footer *,.hef-footer *::before,.hef-footer *::after{box-sizing:border-box}.hef-shell{width:min(1320px,calc(100% - 72px));margin-inline:auto}
.hef-columns{display:grid;grid-template-columns:1.05fr 1.25fr 1fr 1.1fr;gap:54px;padding:48px 0 42px}.hef-column{min-width:0}.hef-column h2{margin:0;color:var(--navy);font-size:15px;line-height:1.2;font-weight:800;letter-spacing:.02em}.hef-rule{display:block;width:38px;height:3px;margin:10px 0 17px;background:var(--gold)}.hef-menu{list-style:none;margin:0;padding:0}.hef-menu li{margin:0 0 11px}.hef-menu a{display:flex;gap:8px;color:var(--text);font-size:14px;line-height:1.45;text-decoration:none}.hef-menu a span{color:var(--gold);font-size:18px;line-height:1}.hef-menu a:hover{color:var(--navy2)}
.hef-contact-item{display:grid;grid-template-columns:24px 1fr;gap:9px;padding:11px 0;border-bottom:1px solid rgba(92,125,150,.25)}.hef-contact-item:first-of-type{padding-top:0}.hef-contact-item:last-child{border-bottom:0}.hef-icon{color:var(--gold);font-weight:800;font-size:17px}.hef-contact p{margin:0;color:var(--text);font-size:14px}.hef-contact a{color:inherit;text-decoration:none}.hef-contact a:hover{text-decoration:underline}
.hef-cta{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:112px;margin:0 0 0;padding:22px 30px;border-radius:15px;background:linear-gradient(120deg,var(--navy),var(--navy2));box-shadow:0 14px 30px rgba(6,43,85,.16);overflow:hidden}.hef-cta::before{content:"";position:absolute;inset:0;opacity:.16;background:repeating-radial-gradient(ellipse at 82% 50%,transparent 0,transparent 22px,rgba(255,255,255,.3) 23px,transparent 24px)}.hef-cta-copy{position:relative;display:flex;align-items:center;gap:18px;min-width:0}.hef-cta-icon{width:50px;height:50px;flex:0 0 50px;display:grid;place-items:center;border:2px solid var(--gold);border-radius:50%;color:var(--gold2);font-size:24px}.hef-cta h2{margin:0 0 3px;color:#fff;font-size:25px;line-height:1.18}.hef-cta p{margin:0;color:rgba(255,255,255,.78);font-size:14px}.hef-cta-button{position:relative;display:inline-flex;align-items:center;gap:15px;flex:0 0 auto;min-height:48px;padding:12px 24px;border-radius:8px;background:var(--gold2);color:var(--navy);font-size:14px;font-weight:800;text-decoration:none;box-shadow:0 7px 18px rgba(0,0,0,.14)}.hef-cta-button:hover{background:#ffd76d;color:var(--navy);transform:translateY(-1px)}
.hef-panorama{
    height:180px;
    position:relative;
    overflow:hidden;
    background:#d9effc;
    border-bottom:2px solid var(--gold);
}
.hef-panorama-art{
    position:absolute;
    inset:0;
    overflow:hidden;
    background:#d9effc;
}
.hef-panorama-art img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
}
.hef-capabilities{background:var(--gray);border-bottom:1px solid var(--line)}.hef-cap-grid{display:grid;grid-template-columns:repeat(4,1fr)}.hef-cap{min-height:128px;padding:22px 25px;display:flex;align-items:center;gap:20px}.hef-cap+.hef-cap{border-left:1px solid #bfc7cf}.hef-cap-icon{width:70px;flex:0 0 70px}.hef-cap-icon svg{width:64px;height:64px;fill:none;stroke:var(--navy);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.hef-cap h2{margin:0 0 5px;color:var(--navy);font-size:16px}.hef-cap p{max-width:235px;margin:0;color:#5d6d7c;font-size:13px}
.hef-bottom{background:var(--navy);color:#d2dfeb}.hef-bottom-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:25px}.hef-bottom p{margin:0;font-size:12px}.hef-socials{display:flex;align-items:center;gap:10px}.hef-socials>span{margin-right:4px;font-size:13px}.hef-socials a{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--navy);font-size:13px;font-weight:800;text-decoration:none}.hef-socials a:hover{background:var(--gold2)}
@media(max-width:1050px){.hef-shell{width:calc(100% - 48px)}.hef-columns{grid-template-columns:repeat(2,1fr);gap:34px}.hef-cap-grid{grid-template-columns:repeat(2,1fr)}.hef-cap:nth-child(3){border-left:0;border-top:1px solid #bfc7cf}.hef-cap:nth-child(4){border-top:1px solid #bfc7cf}}
@media(max-width:700px){.hef-shell{width:calc(100% - 30px)}.hef-columns{grid-template-columns:1fr;gap:28px;padding:34px 0}.hef-cta{align-items:flex-start;flex-direction:column;padding:22px}.hef-cta h2{font-size:22px}.hef-cta-button{width:100%;justify-content:center}.hef-panorama{height:105px}.hef-cap-grid{grid-template-columns:1fr}.hef-cap,.hef-cap:nth-child(3),.hef-cap:nth-child(4){min-height:94px;border-left:0;border-top:1px solid #bfc7cf;padding:17px 0}.hef-cap:first-child{border-top:0}.hef-cap-icon{width:55px;flex-basis:55px}.hef-cap-icon svg{width:52px;height:52px}.hef-bottom-inner{min-height:0;padding:16px 0;align-items:flex-start;flex-direction:column}.hef-socials{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.hef-cta-button{transition:none}}

/* Native Hamsa Theme wrapper neutralization: the theme still owns the outer
   <footer class="site-footer"> element, while this plugin owns its contents. */
.site-footer:has(.hef-footer){
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.site-footer:has(.hef-footer) .hamsa-container,
.site-footer:has(.hef-footer) .site-footer-inner{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
}
