:root{
  --gcp-cyan:#02AEE7;
  --gcp-cyan-hover:#18B9EE;
  --gcp-navy:#0B151F;
  --gcp-navy2:#10253D;
  --gcp-white:#FFFFFF;
}

/* Hide Qi theme headers */
body.gcp-custom-header-active #qodef-page-header,
body.gcp-custom-header-active .qodef-page-header,
body.gcp-custom-header-active #qodef-page-mobile-header,
body.gcp-custom-header-active .qodef-page-mobile-header{
  display:none!important;
}

.gcp-site-header,
.gcp-site-header *{box-sizing:border-box}

.gcp-site-header{
  position:sticky;
  top:0;
  z-index:9990;
  width:100%;
  font-family:Montserrat,Arial,sans-serif;
}

body.admin-bar .gcp-site-header{top:32px}

.gcp-header-wrap{
  width:100%;
  max-width:1480px;
  margin:0 auto;
  padding:0 28px;
}

/* Top utility bar */
.gcp-utility-bar{
  background:#075FB5;
  color:#fff;
  min-height:34px;
  font-size:12px;
  font-weight:700;
}

.gcp-utility-inner{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.gcp-utility-left{
  display:flex;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
}

.gcp-utility-item{
  color:#fff!important;
  text-decoration:none!important;
  white-space:nowrap;
}

.gcp-utility-right{
  opacity:.95;
  white-space:nowrap;
}

/* Main header */
.gcp-main-header{
  height:96px;
  background:linear-gradient(90deg,#0B151F 0%,#0D1722 48%,#10253D 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  overflow:visible;
}

.gcp-main-inner{
  position:relative;
  height:96px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  overflow:visible;
}

/* Logo */
.gcp-brand{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  width:420px;
  height:96px;
  text-decoration:none!important;
  overflow:visible;
}

.gcp-brand-logo{
  display:block!important;
  width:405px!important;
  max-width:405px!important;
  height:auto!important;
  max-height:78px!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  filter:none!important;
}

/* True center nav */
.gcp-desktop-nav{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:36px;
  margin:0;
  white-space:nowrap;
}

.gcp-desktop-nav a{
  position:relative;
  color:#fff!important;
  text-decoration:none!important;
  font-size:15px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}

.gcp-desktop-nav a:hover{color:var(--gcp-cyan)!important}

.gcp-desktop-nav a:after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:-10px;
  height:2px;
  background:var(--gcp-cyan);
  transition:right .2s;
}

.gcp-desktop-nav a:hover:after{right:0}

/* Right actions */
.gcp-header-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
  flex:0 0 auto;
  min-width:315px;
}

.gcp-status-link{
  color:var(--gcp-cyan)!important;
  text-decoration:none!important;
  font-size:12px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}

.gcp-status-link:hover{color:#fff!important}

.gcp-book-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 22px;
  border-radius:8px;
  border:1px solid var(--gcp-cyan);
  background:var(--gcp-cyan);
  color:#fff!important;
  text-decoration:none!important;
  font-size:13px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 9px 24px rgba(2,174,231,.20);
}

.gcp-book-btn:hover{
  background:var(--gcp-cyan-hover);
  border-color:var(--gcp-cyan-hover);
}

/* Mobile button/menu */
.gcp-menu-toggle{
  display:none;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(255,255,255,.05);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
}

.gcp-menu-toggle span{
  display:block;
  width:20px;
  height:2px;
  background:#fff;
}

.gcp-mobile-menu{
  background:#0D1722;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 28px rgba(13,23,34,.20);
}

.gcp-mobile-menu nav{
  display:grid;
  padding:12px 20px 20px;
}

.gcp-mobile-menu a{
  padding:13px 4px;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#fff!important;
  text-decoration:none!important;
  font-size:14px;
  font-weight:700;
}

.gcp-mobile-menu a:hover{color:var(--gcp-cyan)!important}

.gcp-mobile-menu .gcp-mobile-book{
  margin-top:12px;
  padding:14px 16px;
  border:0;
  border-radius:7px;
  text-align:center;
  color:#fff!important;
  background:var(--gcp-cyan);
}

/* Responsive */
@media(max-width:1320px){
  .gcp-header-wrap{max-width:1360px}
  .gcp-brand{width:365px}
  .gcp-brand-logo{
    width:350px!important;
    max-width:350px!important;
    max-height:70px!important;
  }
  .gcp-desktop-nav{gap:27px}
  .gcp-desktop-nav a{font-size:14px}
  .gcp-header-actions{min-width:285px;gap:10px}
  .gcp-status-link{font-size:11px}
  .gcp-book-btn{padding:0 17px;font-size:12px}
}

@media(max-width:1080px){
  .gcp-desktop-nav,
  .gcp-status-link,
  .gcp-book-btn{display:none!important}

  .gcp-menu-toggle{display:flex!important}

  .gcp-main-header,
  .gcp-main-inner{height:78px}

  .gcp-brand{
    width:auto;
    height:78px;
  }

  .gcp-brand-logo{
    width:300px!important;
    max-width:300px!important;
    max-height:60px!important;
  }

  .gcp-header-actions{min-width:auto}
}

@media(max-width:782px){
  body.admin-bar .gcp-site-header{top:46px}
}

@media(max-width:640px){
  .gcp-utility-bar{display:none}
  .gcp-header-wrap{padding:0 16px}

  .gcp-main-header,
  .gcp-main-inner{height:70px}

  .gcp-brand{height:70px}

  .gcp-brand-logo{
    width:215px!important;
    max-width:215px!important;
    max-height:46px!important;
  }
}


/* =========================================================
   v2.1 - User supplied WordPress logo URL
========================================================= */
.gcp-main-header,
.gcp-main-inner{
  height:102px !important;
  min-height:102px !important;
  overflow:visible !important;
}

.gcp-brand{
  width:460px !important;
  height:102px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:visible !important;
}

.gcp-brand-logo{
  width:445px !important;
  max-width:445px !important;
  max-height:86px !important;
  height:auto !important;
  display:block !important;
  object-fit:contain !important;
  object-position:left center !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
}

@media(max-width:1320px){
  .gcp-brand{width:395px !important;}
  .gcp-brand-logo{
    width:380px !important;
    max-width:380px !important;
    max-height:76px !important;
  }
}

@media(max-width:1080px){
  .gcp-main-header,
  .gcp-main-inner{
    height:80px !important;
    min-height:80px !important;
  }

  .gcp-brand{
    width:auto !important;
    height:80px !important;
  }

  .gcp-brand-logo{
    width:315px !important;
    max-width:315px !important;
    max-height:64px !important;
  }
}

@media(max-width:640px){
  .gcp-main-header,
  .gcp-main-inner{
    height:72px !important;
    min-height:72px !important;
  }

  .gcp-brand{
    height:72px !important;
  }

  .gcp-brand-logo{
    width:225px !important;
    max-width:225px !important;
    max-height:50px !important;
  }
}


/* =========================================================
   v2.2 - Bigger logo
========================================================= */
.gcp-main-header,
.gcp-main-inner{
  height:108px !important;
  min-height:108px !important;
}

.gcp-brand{
  width:520px !important;
  height:108px !important;
  align-items:center !important;
}

.gcp-brand-logo{
  width:500px !important;
  max-width:500px !important;
  max-height:92px !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:left center !important;
}

@media(max-width:1320px){
  .gcp-main-header,
  .gcp-main-inner{
    height:100px !important;
    min-height:100px !important;
  }

  .gcp-brand{
    width:450px !important;
    height:100px !important;
  }

  .gcp-brand-logo{
    width:430px !important;
    max-width:430px !important;
    max-height:82px !important;
  }
}

@media(max-width:1080px){
  .gcp-main-header,
  .gcp-main-inner{
    height:84px !important;
    min-height:84px !important;
  }

  .gcp-brand{
    width:auto !important;
    height:84px !important;
  }

  .gcp-brand-logo{
    width:330px !important;
    max-width:330px !important;
    max-height:66px !important;
  }
}

@media(max-width:640px){
  .gcp-main-header,
  .gcp-main-inner{
    height:74px !important;
    min-height:74px !important;
  }

  .gcp-brand{
    height:74px !important;
  }

  .gcp-brand-logo{
    width:235px !important;
    max-width:235px !important;
    max-height:50px !important;
  }
}
