
/* ==========================================================================
   HEADER — Restyled to match Ananke WordPress Theme

   Ananke nav: translucent near-white bg, fixed, logo left (img),
   12px Lato uppercase nav links, gold hover/active border-bottom,
   sticky shrink on scroll, mobile hamburger at 800px.
   Home page: transparent overlay (.homemenu).
   ========================================================================== */


/** main-header **/

.main-header{
  position: fixed;
  left: 0px;
  top: 0px;
  padding: 0px;
  right: 0px;
  z-index: 500;
  width: 100%;
  background: rgba(250, 250, 250, 0.9);
  transition: all 0.5s ease-out;
}

/* Home page transparent overlay nav */
.main-header.homemenu{
  background: transparent;
}

.main-header.homemenu.scrolled{
  background: rgba(250, 250, 250, 1);
}

/* Scrolled/shrunk state */
.main-header.scrolled{
  background: rgba(250, 250, 250, 1);
  box-shadow: 0 1px 5px rgba(0,0,0,0.1);
}


/** sticky header — disabled, using single header with scroll class **/

.sticky-header{
  display: none !important;
}


/** header layout **/

.main-header .header-lower{
  padding: 0;
}

.main-header .outer-box{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 15px;
}


/** logo **/

.main-header .logo-box{
  position: relative;
  z-index: 10000;
  flex-shrink: 0;
}

.main-header .logo-box .light-logo{
  display: block;
}

.main-header .logo-box .dark-logo{
  display: none;
}

.main-header .logo-box figure{
  margin: 0;
}

.main-header .logo-box img{
  width: 146px;
  height: 80px;
  object-fit: contain;
  transition: all 0.5s ease-out;
}

.main-header.scrolled .logo-box img{
  width: 116px;
  height: 60px;
}

/* Text-based VD&P logo */
.logo-text {
  font-family: 'Sifonn-Basic', sans-serif;
  font-size: 28px;
  line-height: 80px;
  color: #101010;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-decoration: none;
  display: block;
  transition: all 0.5s ease-out;
}

.logo-text:hover {
  color: #101010;
  text-decoration: none;
}

.main-header.scrolled .logo-text {
  font-size: 22px;
  line-height: 60px;
}

/* Homepage transparent nav — white logo */
.homemenu .logo-text {
  color: #fff;
}

.homemenu .logo-text:hover {
  color: #fff;
}

.homemenu.scrolled .logo-text {
  color: #101010;
}

.homemenu.scrolled .logo-text:hover {
  color: #101010;
}


/** main navigation **/

.main-menu{
  float: none;
  text-align: right;
  flex-grow: 1;
}

.main-menu .navbar-collapse{
  padding: 0px;
  display: block !important;
}

.main-menu .navigation{
  margin: 0px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.main-menu .navigation > li{
  position: relative;
  float: none;
  z-index: 2;
  margin: 0px 12px;
  transition: all 0.3s linear;
}

.main-menu .navigation > li:last-child{
  margin-right: 0px !important;
}

.main-menu .navigation > li:first-child{
  margin-left: 0px !important;
}

.main-menu .navigation > li > a{
  position: relative;
  display: block;
  text-align: center;
  font-size: 12px;
  line-height: 20px;
  padding: 10px 0px;
  font-weight: 700;
  font-family: 'Lato', sans-serif;
  color: #000;
  opacity: 1;
  text-transform: uppercase;
  z-index: 1;
  border-bottom: 1px solid transparent;
  transition: border-bottom 0.3s ease 0s, color 0.3s ease 0s;
}

/* Remove Potu's decorative shape hover on nav links */
.main-menu .navigation > li > a:before{
  display: none !important;
}

.main-menu .navigation > li.current > a,
.main-menu .navigation > li:hover > a{
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}

/* Home page transparent nav — white text */
.homemenu .main-menu .navigation > li > a{
  color: #fff;
}

.homemenu .main-menu .navigation > li.current > a,
.homemenu .main-menu .navigation > li:hover > a{
  color: var(--theme-color);
  border-bottom-color: var(--theme-color);
}

.homemenu.scrolled .main-menu .navigation > li > a{
  color: #000;
}

.homemenu.scrolled .main-menu .navigation > li.current > a,
.homemenu.scrolled .main-menu .navigation > li:hover > a{
  color: var(--theme-color);
}


/** dropdown menus **/

.main-menu .navigation > li > ul,
.main-menu .navigation > li > .megamenu{
  position: absolute;
  left: 0;
  top: 100%;
  width: 200px;
  z-index: 100;
  display: none;
  padding: 10px 0;
  background: rgba(250, 250, 250, 0.95);
  opacity: 0;
  visibility: hidden;
  border-radius: 0px;
  transform-origin: top center;
  transform: scaleY(0);
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  transition: all 0.3s linear;
}

.main-menu .navigation > li > ul.from-right{
  left: auto;
  right: 0px;
}

.main-menu .navigation > li > ul > li{
  position: relative;
  display: block;
  width: 100%;
}

.main-menu .navigation > li > ul > li:last-child{
  margin-bottom: 0px;
}

.main-menu .navigation > li > ul > li > a,
.main-menu .navigation > li > .megamenu li > a{
  position: relative;
  display: block;
  line-height: 28px;
  font-weight: 400;
  font-size: 12px;
  text-transform: uppercase;
  font-family: 'Lato', sans-serif;
  color: #000;
  text-align: left;
  padding: 4px 20px;
  transition: all 0.3s linear;
}

.main-menu .navigation > li > ul > li > a:before{
  display: none;
}

.main-menu .navigation > li > ul > li > a:hover{
  color: var(--theme-color);
}

.main-menu .navigation > li > ul > li > a{
  border-bottom: none;
}

.main-menu .navigation > li > ul > li:last-child > a,
.main-menu .navigation > li > .megamenu li:last-child > a{
  border-bottom: none;
}

/* Sub-dropdown */
.main-menu .navigation > li > ul > li > ul{
  position: absolute;
  left: 100%;
  top: 0%;
  width: 200px;
  z-index: 100;
  display: none;
  padding: 10px 0;
  background: rgba(250, 250, 250, 0.95);
  border-radius: 0px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  transition: all 0.3s linear;
}

.main-menu .navigation > li > ul > li > ul > li{
  position: relative;
  width: 100%;
}

.main-menu .navigation > li > ul > li > ul > li > a{
  position: relative;
  display: block;
  padding: 4px 20px;
  line-height: 28px;
  font-weight: 400;
  font-size: 12px;
  text-transform: uppercase;
  font-family: 'Lato', sans-serif;
  color: #000;
  text-align: left;
  transition: all 0.3s linear;
}

.main-menu .navigation > li > ul > li > ul > li > a:hover{
  color: var(--theme-color);
}

/* Dropdown hover triggers */
.main-menu .navigation > li.dropdown:hover > ul,
.main-menu .navigation > li.dropdown:hover > .megamenu{
  visibility: visible;
  opacity: 1;
  margin-top: 0px;
  top: 100%;
  transform: scaleY(1);
  display: block;
}

.main-menu .navigation li > ul > li.dropdown:hover > ul{
  visibility: visible;
  opacity: 1;
  top: 0%;
  margin-top: 0px;
  display: block;
}

/* Dropdown arrow icon */
.main-menu .navigation > li > ul > li.dropdown > a:after{
  font-family: 'Font Awesome 6 Free';
  content: "\f105";
  position: absolute;
  right: 15px;
  top: 6px;
  display: block;
  line-height: 24px;
  font-size: 12px;
  font-weight: 800;
  text-align: center;
  z-index: 5;
}

.main-menu .navigation li.dropdown .dropdown-btn{
  display: none;
}


/** CTA button in nav — hide for Ananke style **/

.main-header .menu-right-content{
  position: relative;
  display: flex;
  align-items: center;
}

.main-header .btn-box{
  display: none;
}


/** mobile nav toggler **/

.menu-area .mobile-nav-toggler {
  position: relative;
  float: right;
  font-size: 24px;
  line-height: 40px;
  cursor: pointer;
  background: transparent;
  color: #000;
  display: none;
  padding: 5px;
}

.homemenu .menu-area .mobile-nav-toggler{
  color: #fff;
}

.homemenu.scrolled .menu-area .mobile-nav-toggler{
  color: #000;
}

.menu-area .mobile-nav-toggler .icon-bar{
  position: relative;
  height: 2px;
  width: 24px;
  display: block;
  margin-bottom: 5px;
  background-color: currentColor;
  transition: all 0.3s linear;
}

.menu-area .mobile-nav-toggler .icon-bar:last-child{
  margin-bottom: 0px;
}

.mobile-nav-toggler{
  position: relative;
  display: inline-block;
  cursor: pointer;
}


/** mobile menu **/

.mobile-menu{
  position: fixed;
  right: 0;
  top: 0;
  width: 300px;
  padding-right: 30px;
  max-width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  z-index: 999999;
  transition: all 0.9s ease;
}

.mobile-menu .navbar-collapse{
  display: block !important;
}

.mobile-menu .nav-logo{
  position: relative;
  padding: 30px 25px;
  text-align: left;
}

.mobile-menu .nav-logo img{
  max-width: 120px;
}

.mobile-menu .nav-logo .logo-text {
  font-family: 'Sifonn-Basic', sans-serif;
  font-size: 24px;
  line-height: 1;
  color: #101010;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-decoration: none;
  display: inline-block;
}

.mobile-menu-visible{
  overflow: hidden;
}

.mobile-menu-visible .mobile-menu{
  opacity: 1;
  visibility: visible;
}

.mobile-menu .menu-backdrop{
  position: fixed;
  left: 0%;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transition: all 0.9s ease;
  background-color: #000;
}

.mobile-menu-visible .mobile-menu .menu-backdrop{
  opacity: 0.70;
  visibility: visible;
  right: 100%;
}

.mobile-menu .menu-box{
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  max-height: 100%;
  overflow-y: auto;
  background: #fff;
  padding: 0px;
  z-index: 5;
  opacity: 0;
  visibility: hidden;
  border-radius: 0px;
  transform: translateX(100%);
  transition: all 0.9s ease !important;
}

.mobile-menu-visible .mobile-menu .menu-box{
  opacity: 1;
  visibility: visible;
  transform: translateX(0%);
  transition: all 0.7s ease;
}

.mobile-menu .close-btn{
  position: absolute;
  right: 25px;
  top: 10px;
  line-height: 30px;
  width: 24px;
  text-align: center;
  font-size: 18px;
  color: #000;
  cursor: pointer;
  z-index: 10;
  transition: all 0.3s linear;
}

.mobile-menu .close-btn:hover{
  color: var(--theme-color);
}

.mobile-menu-visible .mobile-menu .close-btn{
  transform: rotate(360deg);
}

.mobile-menu .navigation{
  position: relative;
  display: block;
  width: 100%;
  float: none;
}

.mobile-menu .navigation li{
  position: relative;
  display: block;
  border-top: 1px solid rgba(0,0,0,0.08);
}

.mobile-menu .navigation:last-child{
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.mobile-menu .navigation li > ul > li:first-child{
  border-top: 1px solid rgba(0,0,0,0.08);
}

.mobile-menu .navigation li > a{
  position: relative;
  display: block;
  line-height: 24px;
  padding: 10px 25px;
  font-size: 12px;
  font-weight: 700;
  font-family: 'Lato', sans-serif;
  color: #000;
  text-transform: uppercase;
  transition: all 0.3s linear;
}

.mobile-menu .navigation li > a:hover{
  color: var(--theme-color);
}

.mobile-menu .navigation li ul li > a{
  font-size: 12px;
  margin-left: 20px;
  font-weight: 400;
}

.mobile-menu .navigation li > a:before{
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  height: 0;
  border-left: 3px solid var(--theme-color);
  transition: all 0.3s linear;
}

.mobile-menu .navigation li.current > a:before{
  height: 100%;
}

.mobile-menu .navigation li.current > a{
  color: var(--theme-color);
}

.mobile-menu .navigation li.dropdown .dropdown-btn{
  position: absolute;
  right: 6px;
  top: 6px;
  width: 32px;
  height: 32px;
  text-align: center;
  font-size: 14px;
  line-height: 32px;
  color: #000;
  background: rgba(0,0,0,0.05);
  cursor: pointer;
  border-radius: 2px;
  transition: all 0.3s linear;
  z-index: 5;
}

.mobile-menu .navigation li.dropdown .dropdown-btn.open{
  color: var(--theme-color);
  transform: rotate(90deg);
}

.mobile-menu .navigation li > ul,
.mobile-menu .navigation li > ul > li > ul,
.mobile-menu .navigation > li.dropdown > .megamenu{
  display: none;
}

.mobile-menu .contact-info{
  position: relative;
  padding: 20px 25px;
}

.mobile-menu .contact-info h4{
  position: relative;
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  color: #000;
  font-weight: 700;
  margin-bottom: 15px;
  text-transform: uppercase;
}

.mobile-menu .contact-info ul li{
  position: relative;
  display: block;
  font-size: 13px;
  color: #404040;
  margin-bottom: 3px;
  line-height: 22px;
}

.mobile-menu .contact-info ul li a{
  color: #404040;
}

.mobile-menu .contact-info ul li a:hover{
  color: var(--theme-color);
}

.mobile-menu .search-form{
  padding: 20px 25px;
}

.mobile-menu .search-form h4{
  font-size: 14px;
  line-height: 20px;
  font-family: 'Lato', sans-serif;
  color: #000;
  font-weight: 700;
  margin-bottom: 15px;
  text-transform: uppercase;
}

.mobile-menu .search-form .form-group{
  position: relative;
  margin-bottom: 0px;
}

.mobile-menu .search-form .form-group input[type='search']{
  position: relative;
  display: block;
  width: 100%;
  height: 40px;
  background: #f2f2f2;
  font-size: 13px;
  color: #404040;
  font-family: 'Open Sans', sans-serif;
  padding: 10px 50px 10px 15px;
  border: 1px solid rgba(0,0,0,0.1);
}

.mobile-menu .search-form .form-group button[type='submit']{
  position: absolute;
  top: 0px;
  right: 0px;
  width: 40px;
  height: 40px;
  background: var(--theme-color);
  line-height: 40px;
  color: #fff;
  font-size: 14px;
  cursor: pointer;
}


/** megamenu — hidden for VD&P site (no megamenus) **/

.main-menu .navigation > li.dropdown > .megamenu{
  display: none;
}


/** all Potu header variants — reset to avoid conflicts **/

.header-style-two,
.header-style-three,
.header-style-four,
.main-header.home-5,
.main-header.home-6,
.main-header.home-7,
.main-header.home-8,
.main-header.home-9,
.main-header.home-10,
.main-header.about-5-header,
.main-header.about-7-header,
.main-header.about-8-header,
.main-header.blog-1-header,
.main-header.portfolio-3-header,
.main-header.portfolio-5-header{
  /* Unused Potu variants — no styles needed */
}

.sticky-header .outer-container{
  padding: 0px 15px;
}

.sticky-header .main-menu .navigation > li > a:before{
  display: none;
}

div#mCSB_1_container{
  top: 0px !important;
}
