@font-face{
  font-family:"Instrument Sans";
  src:url("fonts/InstrumentSans-Variable.woff2") format("woff2-variations");
  font-style:normal;
  font-weight:400 700;
  font-stretch:75% 100%;
  font-display:swap;
}

body.pp-premium-page{
  --pp-header-ink:#07171d;
  --pp-header-sea:#59d0c0;
  --pp-header-sun:#ffd21f;
  --pp-header-bg-top:rgba(5,20,28,.94);
  --pp-header-bg-bottom:rgba(5,20,28,.84);
  --pp-header-border:rgba(255,255,255,.15);
  --pp-header-shadow:0 16px 42px rgba(4,17,24,.22);
}

body.pp-premium-page :where(#main-header,.ppsc-header){
  position:fixed!important;
  top:16px!important;
  right:24px!important;
  left:24px!important;
  z-index:10000!important;
  width:auto!important;
  min-height:78px!important;
  height:78px!important;
  border:1px solid var(--pp-header-border)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,var(--pp-header-bg-top),var(--pp-header-bg-bottom))!important;
  box-shadow:var(--pp-header-shadow)!important;
  color:#fff!important;
  font-family:"Instrument Sans",Arial,sans-serif!important;
}

body.admin-bar.pp-premium-page :where(#main-header,.ppsc-header){
  top:48px!important;
}

body.pp-premium-page #main-header.et-fixed-header{
  background:linear-gradient(180deg,rgba(5,20,28,.98),rgba(5,20,28,.93))!important;
  box-shadow:0 18px 48px rgba(4,17,24,.27)!important;
}

body.pp-premium-page :where(#main-header .container,.ppsc-header-inner){
  width:min(1280px,calc(100vw - 160px))!important;
  min-height:76px!important;
  height:76px!important;
  margin-inline:auto!important;
  padding:0!important;
}

body.pp-premium-page #main-header .container{
  display:grid!important;
  grid-template-columns:214px minmax(0,1fr)!important;
  align-items:center!important;
  gap:32px!important;
}

body.pp-premium-page #main-header .logo_container{
  position:static!important;
  display:flex!important;
  width:214px!important;
  height:76px!important;
  align-items:center!important;
  justify-content:flex-start!important;
}

body.pp-premium-page :where(#main-header #logo,.ppsc-brand,.ppsc-brand img){
  display:block!important;
  width:214px!important;
  max-width:214px!important;
  height:auto!important;
  max-height:38px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.22))!important;
}

body.pp-premium-page #et-top-navigation{
  position:static!important;
  display:flex!important;
  width:auto!important;
  height:76px!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:0!important;
  margin:0!important;
}

body.pp-premium-page #top-menu-nav{
  display:block!important;
  float:none!important;
}

body.pp-premium-page :where(#top-menu,.ppsc-nav){
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:clamp(18px,2vw,30px)!important;
  margin:0!important;
  padding:0!important;
}

body.pp-premium-page #top-menu>li{
  display:block!important;
  margin:0!important;
  padding:0!important;
}

body.pp-premium-page :where(#top-menu>li>a,.ppsc-nav>a){
  position:relative!important;
  display:inline-flex!important;
  min-height:44px!important;
  align-items:center!important;
  padding:0!important;
  color:rgba(255,255,255,.84)!important;
  font-family:"Instrument Sans",Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:680!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-decoration:none!important;
  text-transform:none!important;
  text-shadow:none!important;
}

body.pp-premium-page :where(#top-menu>li>a,.ppsc-nav>a):hover,
body.pp-premium-page :where(#top-menu>li>a,.ppsc-nav>a):focus-visible,
body.pp-premium-page #top-menu>li.current-menu-item>a,
body.pp-premium-page #top-menu>li.current_page_item>a,
body.pp-premium-page .ppsc-nav>a.is-active{
  color:#fff!important;
}

body.pp-premium-page :where(#top-menu>li>a,.ppsc-nav>a):after{
  content:""!important;
  position:absolute!important;
  right:0!important;
  bottom:3px!important;
  left:0!important;
  display:block!important;
  width:100%!important;
  height:2px!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  opacity:1!important;
}

body.pp-premium-page #top-menu>li.current-menu-item>a:after,
body.pp-premium-page #top-menu>li.current_page_item>a:after,
body.pp-premium-page .ppsc-nav>a.is-active:after{
  background:var(--pp-header-sea)!important;
  box-shadow:0 0 14px rgba(89,208,192,.42)!important;
}

body.pp-premium-page :where(#top-menu>li>a,.ppsc-nav>a):hover:after,
body.pp-premium-page :where(#top-menu>li>a,.ppsc-nav>a):focus-visible:after{
  background:rgba(89,208,192,.58)!important;
}

body.pp-premium-page #top-menu>li.menu-cta{
  margin-left:6px!important;
}

body.pp-premium-page :where(#top-menu>li.menu-cta>a,.ppsc-header-action){
  display:inline-flex!important;
  width:auto!important;
  min-width:79px!important;
  min-height:40px!important;
  height:40px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 18px!important;
  border:1px solid rgba(7,19,28,.10)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#fff09a 0%,#ffd200 52%,#efbd00 100%)!important;
  color:var(--pp-header-ink)!important;
  box-shadow:0 10px 26px rgba(255,210,0,.20),inset 0 1px 0 rgba(255,255,255,.48)!important;
  font-family:"Instrument Sans",Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-shadow:none!important;
  text-decoration:none!important;
}

body.pp-premium-page :where(#top-menu>li.menu-cta>a,.ppsc-header-action):after{
  display:none!important;
}

body.pp-premium-page :where(#top-menu>li.menu-cta>a,.ppsc-header-action):hover,
body.pp-premium-page :where(#top-menu>li.menu-cta>a,.ppsc-header-action):focus-visible{
  border-color:rgba(7,19,28,.16)!important;
  background:linear-gradient(135deg,#fff5b8 0%,#ffdc35 52%,#e6b600 100%)!important;
  color:var(--pp-header-ink)!important;
  box-shadow:0 13px 30px rgba(255,210,0,.27),0 0 0 3px rgba(255,210,0,.13),inset 0 1px 0 rgba(255,255,255,.58)!important;
}

body.pp-premium-page .ppsc-header-inner{
  display:grid!important;
  grid-template-columns:214px minmax(0,1fr) 79px!important;
  align-items:center!important;
  gap:32px!important;
}

body.pp-premium-page .ppsc-brand{
  display:inline-flex!important;
  align-items:center!important;
}

body.pp-premium-page :where(#et_mobile_nav_menu,.ppsc-mobile-menu){
  display:none!important;
}

@media(max-width:980px){
  body.pp-premium-page :where(#main-header,.ppsc-header){
    top:10px!important;
    right:14px!important;
    left:14px!important;
    width:auto!important;
    min-height:66px!important;
    height:66px!important;
    border-radius:18px!important;
  }

  body.admin-bar.pp-premium-page :where(#main-header,.ppsc-header){
    top:56px!important;
  }

  body.pp-premium-page :where(#main-header .container,.ppsc-header-inner){
    width:calc(100vw - 58px)!important;
    min-height:64px!important;
    height:64px!important;
  }

  body.pp-premium-page #main-header .container{
    grid-template-columns:minmax(0,1fr) 170px!important;
    gap:10px!important;
  }

  body.pp-premium-page #main-header .logo_container{
    width:auto!important;
    height:64px!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  body.pp-premium-page :where(#main-header #logo,.ppsc-brand,.ppsc-brand img){
    width:148px!important;
    max-width:100%!important;
    max-height:32px!important;
  }

  body.pp-premium-page #et-top-navigation{
    display:grid!important;
    grid-template-columns:112px 48px!important;
    gap:10px!important;
    width:170px!important;
    height:64px!important;
  }

  body.pp-premium-page #top-menu{
    display:flex!important;
    height:64px!important;
    align-items:center!important;
  }

  body.pp-premium-page #top-menu>li:not(.menu-cta){
    display:none!important;
  }

  body.pp-premium-page #top-menu>li.menu-cta{
    display:block!important;
    margin:0!important;
  }

  body.pp-premium-page :where(#top-menu>li.menu-cta>a,.ppsc-header-action){
    width:112px!important;
    min-width:112px!important;
    min-height:48px!important;
    height:48px!important;
    padding:0 18px!important;
    font-size:15px!important;
  }

  body.pp-premium-page #et_mobile_nav_menu{
    display:block!important;
    float:none!important;
    width:48px!important;
    height:48px!important;
    margin:0!important;
  }

  body.pp-premium-page .mobile_nav,
  body.pp-premium-page .mobile_menu_bar{
    display:grid!important;
    width:48px!important;
    height:48px!important;
    min-height:48px!important;
    place-items:center!important;
    margin:0!important;
  }

  body.pp-premium-page .mobile_menu_bar:before{
    color:#fff!important;
    font-size:40px!important;
    line-height:1!important;
  }

  body.pp-premium-page .ppsc-header-inner{
    grid-template-columns:minmax(0,1fr) 112px 48px!important;
    gap:10px!important;
  }

  body.pp-premium-page .ppsc-nav{
    display:none!important;
  }

  body.pp-premium-page .ppsc-header-action{
    display:inline-flex!important;
  }

  body.pp-premium-page .ppsc-mobile-menu{
    position:relative!important;
    display:block!important;
    width:48px!important;
    height:48px!important;
  }

  body.pp-premium-page .ppsc-mobile-menu summary{
    display:grid!important;
    width:48px!important;
    height:48px!important;
    place-content:center!important;
    gap:6px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.30)!important;
    border-radius:8px!important;
    background:rgba(255,255,255,.035)!important;
    cursor:pointer!important;
    list-style:none!important;
  }

  body.pp-premium-page .ppsc-mobile-menu summary::-webkit-details-marker{
    display:none!important;
  }

  body.pp-premium-page .ppsc-mobile-menu summary span{
    display:block!important;
    width:22px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#fff!important;
  }

  body.pp-premium-page :where(.et_mobile_menu,.ppsc-mobile-menu nav){
    position:absolute!important;
    top:58px!important;
    right:0!important;
    left:auto!important;
    display:grid!important;
    width:min(320px,calc(100vw - 28px))!important;
    padding:10px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:16px!important;
    background:linear-gradient(180deg,rgba(5,20,28,.99),rgba(7,30,38,.98))!important;
    box-shadow:0 24px 60px rgba(4,17,24,.34)!important;
    overflow:hidden!important;
  }

  body.pp-premium-page .et_mobile_menu{
    top:66px!important;
  }

  body.pp-premium-page .mobile_nav.closed .et_mobile_menu{
    display:none!important;
  }

  body.pp-premium-page .mobile_nav.opened .et_mobile_menu{
    display:grid!important;
  }

  body.pp-premium-page :where(.et_mobile_menu li,.ppsc-mobile-menu nav>a){
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  body.pp-premium-page :where(.et_mobile_menu li>a,.ppsc-mobile-menu nav>a){
    display:flex!important;
    min-height:48px!important;
    align-items:center!important;
    padding:0 14px!important;
    border:0!important;
    border-radius:8px!important;
    background:transparent!important;
    color:rgba(255,255,255,.86)!important;
    font-family:"Instrument Sans",Arial,sans-serif!important;
    font-size:16px!important;
    font-weight:620!important;
    line-height:1.2!important;
    letter-spacing:0!important;
    text-decoration:none!important;
    text-transform:none!important;
  }

  body.pp-premium-page :where(.et_mobile_menu li>a,.ppsc-mobile-menu nav>a):hover,
  body.pp-premium-page :where(.et_mobile_menu li>a,.ppsc-mobile-menu nav>a):focus-visible,
  body.pp-premium-page .et_mobile_menu li.current-menu-item>a,
  body.pp-premium-page .et_mobile_menu li.current_page_item>a,
  body.pp-premium-page .ppsc-mobile-menu nav>a.is-active{
    background:rgba(89,208,192,.11)!important;
    color:#fff!important;
    box-shadow:inset 3px 0 0 var(--pp-header-sea)!important;
  }

  body.pp-premium-page :where(.et_mobile_menu li.menu-cta,.ppsc-mobile-menu .ppsc-mobile-book){
    display:none!important;
  }
}

@media(max-width:380px){
  body.pp-premium-page :where(#main-header .container,.ppsc-header-inner){
    width:calc(100% - 22px)!important;
  }

  body.pp-premium-page #main-header .container{
    grid-template-columns:minmax(0,1fr) 154px!important;
    gap:8px!important;
  }

  body.pp-premium-page #et-top-navigation{
    grid-template-columns:100px 46px!important;
    gap:8px!important;
    width:154px!important;
  }

  body.pp-premium-page .ppsc-header-inner{
    grid-template-columns:minmax(0,1fr) 100px 46px!important;
    gap:8px!important;
  }

  body.pp-premium-page :where(#main-header #logo,.ppsc-brand,.ppsc-brand img){
    width:132px!important;
  }

  body.pp-premium-page :where(#top-menu>li.menu-cta>a,.ppsc-header-action){
    width:100px!important;
    min-width:100px!important;
  }

  body.pp-premium-page :where(#et_mobile_nav_menu,.mobile_nav,.mobile_menu_bar,.ppsc-mobile-menu,.ppsc-mobile-menu summary){
    width:46px!important;
    height:46px!important;
    min-height:46px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.pp-premium-page :where(#main-header,.ppsc-header,#top-menu a,.ppsc-nav a,.ppsc-header-action,.ppsc-mobile-menu summary){
    transition:none!important;
  }
}

/* Divi adapter: neutralize legacy header offsets so both markup systems share one contract. */
body.pp-premium-page #main-header{
  border:1px solid var(--pp-header-border)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,var(--pp-header-bg-top),var(--pp-header-bg-bottom))!important;
  box-shadow:var(--pp-header-shadow)!important;
  color:#fff!important;
  font-family:"Instrument Sans",Arial,sans-serif!important;
}

body.pp-premium-page #main-header #logo{
  display:block!important;
  width:214px!important;
  max-width:214px!important;
  height:auto!important;
  max-height:38px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.22))!important;
}

body.pp-premium-page #top-menu>li>a{
  min-height:44px!important;
  padding:0!important;
  margin:0!important;
  color:rgba(255,255,255,.84)!important;
  font-family:"Instrument Sans",Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:680!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

body.pp-premium-page #top-menu>li.menu-cta>a,
body.home.pp-premium-page #top-menu>li.menu-cta>a{
  width:auto!important;
  min-width:79px!important;
  min-height:40px!important;
  height:40px!important;
  padding:0 18px!important;
  margin:0!important;
  border:1px solid rgba(7,19,28,.10)!important;
  background:linear-gradient(135deg,#fff09a 0%,#ffd200 52%,#efbd00 100%)!important;
  color:var(--pp-header-ink)!important;
  box-shadow:0 10px 26px rgba(255,210,0,.20),inset 0 1px 0 rgba(255,255,255,.48)!important;
  font-family:"Instrument Sans",Arial,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
}

@media(max-width:980px){
  body.pp-premium-page #main-header{
    border:1px solid var(--pp-header-border)!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,var(--pp-header-bg-top),var(--pp-header-bg-bottom))!important;
    box-shadow:var(--pp-header-shadow)!important;
  }

  body.pp-premium-page #main-header .container{
    width:calc(100vw - 58px)!important;
    min-height:64px!important;
    height:64px!important;
    grid-template-columns:minmax(0,1fr) 170px!important;
    gap:10px!important;
  }

  body.pp-premium-page #main-header .logo_container{
    width:auto!important;
    height:64px!important;
  }

  body.pp-premium-page #main-header #logo{
    width:148px!important;
    max-width:100%!important;
    max-height:32px!important;
  }

  body.pp-premium-page #et-top-navigation{
    grid-column:2!important;
    width:170px!important;
    height:64px!important;
  }

  body.pp-premium-page #top-menu>li.menu-cta>a,
  body.home.pp-premium-page #top-menu>li.menu-cta>a{
    width:112px!important;
    min-width:112px!important;
    min-height:48px!important;
    height:48px!important;
    padding:0 18px!important;
    margin:0!important;
    border:1px solid rgba(7,19,28,.10)!important;
    background:linear-gradient(135deg,#fff09a 0%,#ffd200 52%,#efbd00 100%)!important;
    color:var(--pp-header-ink)!important;
    box-shadow:0 10px 26px rgba(255,210,0,.20),inset 0 1px 0 rgba(255,255,255,.48)!important;
    font-family:"Instrument Sans",Arial,sans-serif!important;
    font-size:15px!important;
    font-weight:700!important;
  }
}

@media(max-width:380px){
  body.pp-premium-page .ppsc-header-inner{
    width:calc(100vw - 50px)!important;
  }

  body.pp-premium-page #main-header .container{
    width:calc(100vw - 50px)!important;
    grid-template-columns:minmax(0,1fr) 154px!important;
    gap:8px!important;
  }

  body.pp-premium-page #et-top-navigation{
    width:154px!important;
  }

  body.pp-premium-page #main-header #logo{
    width:132px!important;
  }

  body.pp-premium-page #top-menu>li.menu-cta>a,
  body.home.pp-premium-page #top-menu>li.menu-cta>a{
    width:100px!important;
    min-width:100px!important;
  }
}

@media(max-width:980px){
  body.pp-premium-page #mobile_menu li.current-menu-item>a,
  body.pp-premium-page #mobile_menu li.current_page_item>a,
  body.pp-premium-page .et_mobile_menu li.current-menu-item>a,
  body.pp-premium-page .et_mobile_menu li.current_page_item>a{
    background:rgba(89,208,192,.11)!important;
    color:#fff!important;
    box-shadow:inset 3px 0 0 var(--pp-header-sea)!important;
  }
}
