/* EuroSOR Header: V17 header as the global site header */
.esh{display:block;margin:0;padding:0;max-width:none;width:auto;--esh-ink:#1C1C24;--esh-muted:#6D6B78;--esh-line:#E2E0E8;--esh-surface:#F8F7FB;--esh-violet:#6F4BC3;--esh-violet-dark:#5C3AA8;--esh-h:84px;position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:9990;background:#fff;border-bottom:1px solid var(--esh-line);color:var(--esh-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;}
.esh *,.esh *::before,.esh *::after{box-sizing:border-box}
.esh a{text-decoration:none}
.esh-wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}
.esh-nav{height:var(--esh-h);display:flex;align-items:center;justify-content:space-between;gap:28px}
.esh-brand{display:flex;align-items:center;flex:0 0 auto}
.esh-brand img{display:block;height:32px;width:auto;max-width:none}
.esh-brand-text{font-size:22px;font-weight:780;letter-spacing:-.03em;color:var(--esh-ink)}
.esh-links{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:650}
.esh-links>a,.esh-trigger{color:var(--esh-ink);font-size:14px;font-weight:650;line-height:1.2}
.esh-links>a:hover,.esh-links>a.is-current{color:var(--esh-violet-dark)}
.esh-item{position:relative}
.esh-trigger{display:inline-flex;align-items:center;gap:6px;padding:10px 0;margin:0;border:0;background:transparent;cursor:pointer;font-family:inherit}
.esh-trigger:hover,.esh-item:focus-within .esh-trigger,.esh-item.is-current .esh-trigger{color:var(--esh-violet-dark)}
.esh-caret{font-size:11px;line-height:1;transform:translateY(-1px)}
.esh-dropdown{position:absolute;top:calc(100% + 10px);left:-20px;z-index:30;width:340px;padding:10px;background:#fff;border:1px solid var(--esh-line);border-radius:12px;box-shadow:0 18px 48px rgba(28,28,36,.14);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
.esh-dropdown::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.esh-item:hover .esh-dropdown,.esh-item:focus-within .esh-dropdown,.esh-item.is-open .esh-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.esh-dropdown a{display:block;padding:11px 12px;border-radius:8px;color:var(--esh-ink);font-size:14px;line-height:1.35;font-weight:680}
.esh-dropdown a:hover,.esh-dropdown a.is-current{background:var(--esh-surface);color:var(--esh-violet-dark)}
.esh-support{display:block;margin-top:5px;color:var(--esh-muted);font-size:11px;line-height:1.45;font-weight:520}
.esh-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 20px;border:0;border-radius:999px;background:var(--esh-ink);color:#fff!important;font-size:14px;font-weight:720;line-height:1;white-space:nowrap;cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.esh-btn:hover,.esh-btn:focus-visible{transform:translateY(-1px);background:#2B2A34;box-shadow:0 10px 24px rgba(28,28,36,.16)}
.esh-arrow{font-size:18px;line-height:1;transform:translateY(-1px)}
.esh a:focus-visible,.esh button:focus-visible{outline:2px solid var(--esh-violet);outline-offset:3px;border-radius:6px}
.esh-burger{display:none;width:44px;height:44px;margin:0;padding:0;border:1px solid var(--esh-line);border-radius:12px;background:#fff;cursor:pointer;align-items:center;justify-content:center;flex:0 0 auto}
.esh-burger span,.esh-burger span::before,.esh-burger span::after{display:block;width:18px;height:2px;border-radius:2px;background:var(--esh-ink);transition:transform .2s ease,opacity .2s ease}
.esh-burger span{position:relative}
.esh-burger span::before,.esh-burger span::after{content:"";position:absolute;left:0}
.esh-burger span::before{top:-6px}
.esh-burger span::after{top:6px}
.esh-burger[aria-expanded="true"] span{background:transparent}
.esh-burger[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.esh-burger[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
.esh-panel{display:none}
@media (max-width:900px){
  .esh-wrap{width:min(100% - 32px,1180px)}
  .esh-links>a:not(.esh-btn),.esh-links>.esh-item{display:none}
  .esh-links{gap:10px}
  .esh-burger{display:inline-flex}
  .esh-panel{position:fixed;left:0;right:0;top:calc(var(--wp-admin--admin-bar--height,0px) + var(--esh-h));bottom:0;z-index:9989;display:block;overflow-y:auto;background:#fff;border-top:1px solid var(--esh-line);padding:12px 16px calc(28px + env(safe-area-inset-bottom,0px));opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
  .esh.is-menu-open .esh-panel{opacity:1;visibility:visible;transform:none}
  .esh-panel>a:not(.esh-btn),.esh-group>button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 4px;margin:0;border:0;border-bottom:1px solid var(--esh-line);background:transparent;color:var(--esh-ink);font-family:inherit;font-size:17px;font-weight:680;text-align:left;cursor:pointer}
  .esh-panel>a:not(.esh-btn).is-current{color:var(--esh-violet-dark)}
  .esh-group>button .esh-caret{font-size:13px;transition:transform .2s ease}
  .esh-group.is-open>button .esh-caret{transform:rotate(180deg)}
  .esh-group-links{display:none;padding:6px 0 10px;border-bottom:1px solid var(--esh-line)}
  .esh-group.is-open .esh-group-links{display:block}
  .esh-group-links a{display:block;padding:11px 12px;border-radius:8px;color:var(--esh-ink);font-size:15px;font-weight:620;line-height:1.35}
  .esh-group-links a:hover{background:var(--esh-surface)}
  .esh-panel .esh-btn{width:100%;margin-top:22px;min-height:50px;font-size:15px}
  body.esh-menu-open{overflow:hidden}
  body.esh-menu-open .es-float-cta{opacity:0;pointer-events:none}
}
@media (max-width:767px){
  .esh{--esh-h:68px}
  .esh-brand img{height:26px}
}
@media (max-width:620px){
  .esh-nav{gap:12px}
  .esh-links .esh-btn{padding:0 14px;font-size:13px;min-height:40px}
  .esh-links .esh-btn .esh-arrow{display:none}
}
@media (max-width:480px){.esh-links>.esh-btn{display:none}}
@media (prefers-reduced-motion:reduce){.esh *{transition:none!important}}
@media print{.esh{position:static}.esh-burger,.esh-btn{display:none}}

/* Contact popup */
.esh-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(28,28,36,.7)}
.esh-modal.active{display:flex;animation:eshFade .2s ease}
.esh-modal-content{position:relative;width:100%;max-width:640px;max-height:min(90vh,920px);overflow-y:auto;padding:36px 32px 32px;border-radius:16px;background:#fff;box-shadow:0 30px 80px rgba(28,28,36,.3);animation:eshUp .25s ease;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.esh-modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#EFEDF3;color:#1C1C24;font-size:16px;line-height:1;cursor:pointer}
.esh-modal-close:hover{background:#E2E0E8}
.esh-modal-fallback{margin:0;color:#6D6B78;font-size:15px;line-height:1.6}
.esh-modal-fallback a{color:#5C3AA8;font-weight:650}
body.modal-open{overflow:hidden}
@keyframes eshFade{from{opacity:0}to{opacity:1}}
@keyframes eshUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media (max-width:620px){.esh-modal{padding:10px;align-items:flex-end}.esh-modal-content{max-height:92vh;padding:30px 20px 24px;border-radius:16px 16px 12px 12px}}
/* Neutralise theme button styles (Hello sets pink hover/focus backgrounds on every button) */
.esh button.esh-trigger,.esh button.esh-trigger:hover,.esh button.esh-trigger:focus,.esh button.esh-trigger:active,
.esh .esh-group>button,.esh .esh-group>button:hover,.esh .esh-group>button:focus,.esh .esh-group>button:active{background:transparent!important;box-shadow:none!important;border-color:transparent!important;text-transform:none;letter-spacing:normal}
.esh button.esh-trigger:hover,.esh button.esh-trigger:focus,.esh .esh-item.is-open button.esh-trigger{color:#5C3AA8!important}
.esh .esh-group>button,.esh .esh-group>button:hover,.esh .esh-group>button:focus{color:#1C1C24!important;border-bottom-color:#E2E0E8!important}
.esh button.esh-burger,.esh button.esh-burger:hover,.esh button.esh-burger:focus{background:#fff!important;color:#1C1C24!important;border:1px solid #E2E0E8!important;box-shadow:none!important}
.esh-modal button.esh-modal-close,.esh-modal button.esh-modal-close:focus{background:#EFEDF3!important;color:#1C1C24!important;border:0!important;padding:0!important}
.esh-modal button.esh-modal-close:hover{background:#E2E0E8!important;color:#1C1C24!important}
