.efc-sph-v3, .efc-sph-v3 * { box-sizing: border-box; }
.efc-sph-v3 {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  min-height: var(--efc-sph-h);
  height: var(--efc-sph-h);
  overflow: hidden;
  background: var(--efc-sph-blue);
  color: var(--efc-sph-white);
}
.efc-sph-v3__media, .efc-sph-v3__overlay { position:absolute; inset:0; }
.efc-sph-v3__media { z-index:0; }
.efc-sph-v3__image, .efc-sph-v3__video { width:100%; height:100%; object-fit:cover; display:block; }
.efc-sph-v3__image--mobile, .efc-sph-v3__video--mobile { display:none; }
.efc-sph-v3__overlay { z-index:1; background: rgba(6,43,82,var(--efc-sph-overlay)); }
.efc-sph-v3__inner {
  position:relative; z-index:2; height:100%; width:min(var(--efc-sph-container), calc(100% - 140px)); margin:0 auto;
}
.efc-sph-v3__header {
  display:grid; grid-template-columns:160px 1fr 120px; align-items:start; padding-top:58px;
}
.efc-sph-v3__logo { display:block; width:var(--efc-sph-logo); text-decoration:none; color:#fff; font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-weight:800; }
.efc-sph-v3__logo img { width:100%; height:auto; display:block; }
.efc-sph-v3__nav { display:flex; justify-content:center; gap:92px; padding-top:20px; }
.efc-sph-v3__nav a { position:relative; text-decoration:none; color:#fff; font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-weight:800; font-style:italic; font-size:22px; line-height:1; text-transform:uppercase; letter-spacing:-.02em; white-space:nowrap; }
.efc-sph-v3__nav a.is-active { color:var(--efc-sph-gold); }
.efc-sph-v3__nav a.is-active:after { content:""; position:absolute; left:0; right:0; bottom:-18px; height:8px; border-radius:999px; background:var(--efc-sph-gold); }
.efc-sph-v3__burger { justify-self:end; margin:0; padding:0; width:78px; border:0; background:transparent; color:#fff; cursor:pointer; text-align:center; position:relative; z-index:10; }
.efc-sph-v3__burger span { display:block; width:52px; height:6px; margin:0 auto 9px; background:#fff; border-radius:999px; transition:.2s ease; }
.efc-sph-v3__burger strong { display:block; font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-size:19px; font-weight:800; font-style:italic; line-height:1; }
.efc-sph-v3.is-menu-open .efc-sph-v3__burger span:nth-child(1){ transform: translateY(15px) rotate(45deg); }
.efc-sph-v3.is-menu-open .efc-sph-v3__burger span:nth-child(2){ opacity:0; }
.efc-sph-v3.is-menu-open .efc-sph-v3__burger span:nth-child(3){ transform: translateY(-15px) rotate(-45deg); }
.efc-sph-v3__menu-panel {
  position:absolute; z-index:9; top:150px; right:0; width:var(--efc-sph-menu-w); max-width:calc(100vw - 48px);
  background:var(--efc-sph-blue); border:1px solid rgba(255,255,255,.18); border-radius:var(--efc-sph-menu-r);
  padding:56px 62px 52px; box-shadow:0 30px 80px rgba(0,0,0,.2); opacity:0; visibility:hidden; transform: translateY(-10px) scale(.98); transition:.22s ease;
}
.efc-sph-v3.is-menu-open .efc-sph-v3__menu-panel { opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.efc-sph-v3__menu-close { display:none; }
.efc-sph-v3__menu-links { display:flex; flex-direction:column; gap:28px; }
.efc-sph-v3__menu-links a { font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-size:34px; line-height:1; color:#fff; text-decoration:none; text-transform:uppercase; font-weight:800; font-style:italic; }
.efc-sph-v3__menu-links a.is-active { color:var(--efc-sph-gold); }
.efc-sph-v3__menu-cta { margin-top:48px; min-height:82px; padding:0 34px; display:flex; align-items:center; justify-content:center; background:var(--efc-sph-gold); border-radius:999px; color:var(--efc-sph-blue); text-decoration:none; text-transform:uppercase; text-align:center; font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-size:26px; line-height:.95; font-weight:800; font-style:italic; }
.efc-sph-v3__content { position:absolute; left:0; bottom:var(--efc-sph-bottom); max-width:1020px; }
.efc-sph-v3__label { font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-size:30px; line-height:1; font-weight:800; font-style:italic; text-transform:uppercase; margin-bottom:18px; }
.efc-sph-v3__title { margin:0 0 24px; font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-size:var(--efc-sph-title); line-height:.94; font-weight:800; font-style:italic; text-transform:uppercase; letter-spacing:-.035em; }
.efc-sph-v3__title span { display:block; }
.efc-sph-v3__subtitle { margin:0; font-family:"Inter",system-ui,sans-serif; font-size:var(--efc-sph-sub); line-height:1.25; max-width:1000px; }
.efc-sph-v3__actions { display:flex; gap:58px; align-items:center; margin-top:56px; }
.efc-sph-v3__btn { min-width:300px; height:72px; padding:0 42px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; text-transform:uppercase; font-family:"Virage Wide Italic","Virage Wide",sans-serif; font-size:21px; line-height:1; font-weight:800; font-style:italic; }
.efc-sph-v3__btn--gold { background:var(--efc-sph-gold); color:var(--efc-sph-blue); }
.efc-sph-v3__btn--outline { border:3px solid #fff; color:#fff; background:transparent; }
@media (max-width: 1024px) {
  .efc-sph-v3 { height:var(--efc-sph-hm); min-height:var(--efc-sph-hm); }
  .efc-sph-v3__image--desktop, .efc-sph-v3__video--desktop { display:none; }
  .efc-sph-v3__image--mobile, .efc-sph-v3__video--mobile { display:block; }
  .efc-sph-v3__inner { width:calc(100% - 48px); }
  .efc-sph-v3__header { grid-template-columns:90px 1fr 76px; padding-top:30px; }
  .efc-sph-v3__logo { width:72px; }
  .efc-sph-v3__nav { display:none; }
  .efc-sph-v3__burger span { width:44px; height:5px; margin-bottom:7px; }
  .efc-sph-v3__burger strong { font-size:15px; }
  .efc-sph-v3__menu-panel { top:110px; right:0; padding:38px 38px 38px; width:min(480px, calc(100vw - 48px)); }
  .efc-sph-v3__menu-links a { font-size:28px; }
  .efc-sph-v3__menu-cta { min-height:70px; font-size:22px; margin-top:36px; }
  .efc-sph-v3__content { bottom:52px; max-width:100%; }
  .efc-sph-v3__label { font-size:18px; }
  .efc-sph-v3__title { font-size:42px; }
  .efc-sph-v3__subtitle { font-size:17px; }
  .efc-sph-v3__actions { flex-direction:column; align-items:flex-start; gap:16px; margin-top:30px; }
  .efc-sph-v3__btn { min-width:250px; height:58px; font-size:14px; }
}


/* Stable burger hardening: same visual, reliable clicks */
.efc-sph-v3__burger{pointer-events:auto; appearance:none; -webkit-appearance:none;}
.efc-sph-v3__menu-panel{pointer-events:none;}
.efc-sph-v3.is-menu-open .efc-sph-v3__menu-panel{pointer-events:auto;}
.efc-sph-v3__menu-links a,
.efc-sph-v3__menu-cta{cursor:pointer;}

/* V3 CSS-only burger fix: works even when JS/cache/minify breaks on public page */
.efc-sph-v3__menu-check{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.efc-sph-v3--cssonly .efc-sph-v3__burger{
  display:block;
  user-select:none;
  pointer-events:auto!important;
}
.efc-sph-v3--cssonly .efc-sph-v3__burger span,
.efc-sph-v3--cssonly .efc-sph-v3__burger strong{pointer-events:none;}
.efc-sph-v3--cssonly .efc-sph-v3__menu-panel{
  z-index:99999!important;
  pointer-events:none;
}
.efc-sph-v3--cssonly .efc-sph-v3__menu-check:checked ~ .efc-sph-v3__inner .efc-sph-v3__menu-panel{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0) scale(1)!important;
  pointer-events:auto!important;
}
.efc-sph-v3--cssonly .efc-sph-v3__menu-check:checked ~ .efc-sph-v3__inner .efc-sph-v3__burger span:nth-child(1){
  transform:translateY(15px) rotate(45deg)!important;
}
.efc-sph-v3--cssonly .efc-sph-v3__menu-check:checked ~ .efc-sph-v3__inner .efc-sph-v3__burger span:nth-child(2){
  opacity:0!important;
}
.efc-sph-v3--cssonly .efc-sph-v3__menu-check:checked ~ .efc-sph-v3__inner .efc-sph-v3__burger span:nth-child(3){
  transform:translateY(-15px) rotate(-45deg)!important;
}
.efc-sph-v3--cssonly .efc-sph-v3__menu-close{
  display:none;
}
@media (max-width:1024px){
  .efc-sph-v3--cssonly .efc-sph-v3__menu-panel{z-index:99999!important;}
}
