/*** 

====================================================================
	Header style One
====================================================================

***/


.main-header{
	position:fixed;
	left:0px;
	top:0px;
	right:0px;
	z-index:99;
	width:100%;
	border-bottom:1px solid rgba(255,255,255,0.15);
}

/* Header Top */

.main-header .header-top{
	position:relative;
	background-color:var(--main-color);
}

.main-header .inner-container{
	position:relative;
}

.main-header .header-top .top-left{
	position: relative;
	float:left;
}

.main-header .header-top .top-left .text{
	padding:12px 0px;
	color:var(--white-color);
}

.main-header .header-top .text span{
	position: relative;
	font-weight:700;
}

.main-header .header-top .top-right{
	position: relative;
	padding:12px 0px;
}

.main-header .header-top .top-right .social-box{
	position: relative;
	float:left;
}

.main-header .header-top .top-right .social-box li{
	position: relative;
	display:inline-block;
	margin-left:var(--margin-left-15);
}

.main-header .header-top .top-right .social-box li a{
	color:var(--white-color);
	font-size:var(--font-16);
}

.main-header .header-top .top-right .social-box li a:hover{
	color:var(--main-color-two);
}

.main-header .header-top .top-right .text{
	float:left;
	padding-left:var(--padding-left-40);
	margin-left:var(--margin-left-40);
	color:var(--white-color);
	border-left:2px solid rgba(255,255,255,0.20);
}

.main-header .header-top .top-right .text a{
	font-weight:700;
	color:var(--white-color);
}

.main-header .header-top .top-right .text a:hover{
	color:var(--main-color-two);
}

.main-header .main-box{
	position:relative;
	padding:0px 0px;
	left:0px;
	top:0px;
	width:100%;
	background:none;
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	transition:all 300ms ease;
}

.main-header .main-box .outer-container{
	position:relative;
	padding:0px 40px;
}

.main-header .main-box .logo-box{
	position:relative;
	float:left;
	left:0px;
	z-index:10;
	padding:30px 0px;
}

.main-header .main-box .logo-box .logo img{
	display:inline-block;
	max-width:100%;
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	transition:all 300ms ease;	
}

.main-header .header-lower{
	position:relative;
	background-color: transparent;
}

.main-header .header-lower .logo-box{
    position:relative;
    z-index:1;
    padding:30px 0px; /* restored original padding */
}

.main-header .header-lower .nav-outer{
	position:relative;
}

/* Main Menu */

.main-header .main-menu{
    position:relative;
    /* float:left; */
    text-align:center;
    -webkit-transition:all 300ms ease;
    -ms-transition:all 300ms ease;
    -o-transition:all 300ms ease;
    -moz-transition:all 300ms ease;
    transition:all 300ms ease;
}

/* Logged-in profile icon (initials) */
.main-header .user-avatar{
	display:flex;
	align-items:center;
	justify-content:center;
	width:56px;
	height:56px;
	border-radius:50%;
	background:#31645e;
	color:#ffffff;
	font-weight:700;
	font-size:18px;
	letter-spacing:-0.5px;
	text-decoration:none;
	line-height:1;
	flex:0 0 auto;
}
.main-header .user-avatar:hover{
	color:#ffffff;
	filter:brightness(0.95);
}

/* Mobile-only avatar (placed inside `.search-wrapper`); hidden by default */
.main-header .user-avatar--mobile{
	display:none;
}

/* Desktop: keep original layout; center logo within its box only */
@media (min-width: 992px){
  /* `clearfix` pseudo-elements can behave like flex items and break single-row layout */
  .main-header .header-lower .auto-container.clearfix::before,
  .main-header .header-lower .auto-container.clearfix::after,
  .main-header .header-lower .nav-outer.clearfix::before,
  .main-header .header-lower .nav-outer.clearfix::after,
  .main-header .header-lower .outer-box.clearfix::before,
  .main-header .header-lower .outer-box.clearfix::after,
  .main-header .sticky-header .auto-container.clearfix::before,
  .main-header .sticky-header .auto-container.clearfix::after,
  .main-header .sticky-header .nav-outer.clearfix::before,
  .main-header .sticky-header .nav-outer.clearfix::after,
  .main-header .sticky-header .outer-box.clearfix::before,
  .main-header .sticky-header .outer-box.clearfix::after{
    display:none !important;
    content:none !important;
  }

  /* Keep the entire header on a single row (logo / nav / auth+search) */
  .main-header .header-lower .auto-container{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    flex-wrap:nowrap;
  }

  .main-header .header-lower .logo-box{
    display:flex;
    align-items:center;
    flex:0 0 auto;
    float:none !important;
    padding: 21px 0px !important;
  }
  .main-header .header-lower .logo-box .logo img{ display: block; }

  .main-header .header-lower .nav-outer{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:1 1 auto;
    min-width:0;
    float:none !important;
  }

  .main-header .main-menu .navigation{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:nowrap;
    white-space:nowrap;
  }

  .main-header .outer-box{
    position:static !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    transform:none !important;
    float:none !important;
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:12px;
    flex:0 0 auto;
    white-space:nowrap;
  }

  .main-header .outer-box .auth-links{
    display:flex;
    align-items:center;
    gap:8px;
    white-space:nowrap;
  }

  /* Logged-in profile icon (initials) */
  .main-header .outer-box .user-avatar,
  .main-header .sticky-header .outer-box .user-avatar{ display:flex; }
  .main-header .outer-box .user-avatar:hover,
  .main-header .sticky-header .outer-box .user-avatar:hover{ color:#ffffff; }
  /* Mobile-only avatar inside `.search-wrapper` (kept hidden on desktop) */
  .main-header .outer-box .search-wrapper .user-avatar--mobile,
  .main-header .sticky-header .outer-box .search-wrapper .user-avatar--mobile{ display:none; }

  /* Sticky header: same single-row layout */
  .main-header .sticky-header .auto-container{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    flex-wrap:nowrap;
  }
  .main-header .sticky-header .logo{
    display:flex;
    align-items:center;
    flex:0 0 auto;
    float:none !important;
  }
  .main-header .sticky-header .nav-outer{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:1 1 auto;
    min-width:0;
    float:none !important;
  }

  /* Legacy sticky markup (e.g., index.html) wraps nav/toggler in `.pull-right` */
  .main-header .sticky-header .pull-right{
    float:none !important;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .main-header .sticky-header .outer-box{
    position:static !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    transform:none !important;
    float:none !important;
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:12px;
    flex:0 0 auto;
    white-space:nowrap;
  }
}

/* Tablet/mobile: keep avatar visible and balanced if rendered */
@media (max-width: 991px){
  .main-header .outer-box .user-avatar,
  .main-header .sticky-header .outer-box .user-avatar{
    width:44px;
    height:44px;
    font-size:15px;
  }
}

/* Mobile: replace search icon with user avatar when logged in */
@media (max-width: 767px){
  .main-header--authed .header-lower .outer-box > .user-avatar,
  .main-header--authed .sticky-header .outer-box > .user-avatar{
    display:none !important;
  }

  .main-header--authed .header-lower .outer-box .search-wrapper .search-box-btn,
  .main-header--authed .sticky-header .outer-box .search-wrapper .search-box-btn{
    display:none !important;
  }

  .main-header--authed .header-lower .outer-box .search-wrapper .user-avatar--mobile,
  .main-header--authed .sticky-header .outer-box .search-wrapper .user-avatar--mobile{
    display:flex !important;
    width:40px;
    height:40px;
    font-size:14px;
  }
}

/* Add a bit more side breathing room for header contents on wide desktops */
@media (min-width: 1280px){
  .main-header .header-lower .auto-container,
  .main-header .sticky-header .auto-container{
    padding-left:24px;
    padding-right:24px;
  }
}

.main-header .main-menu .navbar-collapse{
	padding:0px;
	/* float: left; */
	display:block !important;
}

.main-header .main-menu .navigation{
	position:relative;
	margin:0px;
}

.main-header .main-menu .navigation > li{
	position:relative;
	display:inline-block;
	margin-left:var(--margin-left-15);
	margin-right:var(--margin-right-15);
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	border-left:1px solid var(--light-border-color);
}

.main-header .main-menu .navigation > li:last-child{
	border-right:1px solid var(--light-border-color);
}

.main-header .sticky-header .main-menu .navigation > li > a{
    padding:25px 0px; /* restore comfortable vertical alignment */
    color:var(--dark-color);
}

.main-header .sticky-header .main-menu .navigation > li:hover > a,
.main-header .sticky-header .main-menu .navigation > li.current > a{
	color:var(--main-color);
	background-color:inherit !important;
}

.main-header .sticky-header .nav-outer .options-box{
	margin-top:var(--margin-top-40);
}

/*Sticky Header*/

.main-header .sticky-header{
	position:fixed;
	opacity:0;
	visibility:hidden;
	left:0px;
	top:0px;
	width:100%;
	padding:0px 0px;
	z-index:0;
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	background-color:var(--white-color);
	box-shadow:0px 0px 10px rgba(0,0,0,0.10);
}

 .main-header .sticky-header .mobile-nav-toggler{
	display:none;
	cursor:pointer;
	color:var(--black-color);
	font-size:var(--font-30);
	font-family: "flaticon";
}

.main-header .sticky-header .logo{
    padding:25px 0px; /* restore original sticky header logo padding */
}

/* (reverted sticky header flex centering) */

/* Ensure sticky header logo link is clickable on desktop */
@media (min-width: 992px){
  .main-header .sticky-header .auto-container{position:relative;}
  .main-header .sticky-header .logo{position:relative;z-index:10;}
  .main-header .sticky-header .logo a{display:inline-block;pointer-events:auto;}
  .main-header .sticky-header .nav-outer{position:relative;z-index:5;}
  .main-header .sticky-header .outer-box{position:relative;z-index:6;}
}

.main-header.fixed-header .sticky-header{
	z-index:999;
	opacity:1;
	visibility:visible;
	-ms-animation-name: fadeInDown;
	-moz-animation-name: fadeInDown;
	-op-animation-name: fadeInDown;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	-ms-animation-duration: 500ms;
	-moz-animation-duration: 500ms;
	-op-animation-duration: 500ms;
	-webkit-animation-duration: 500ms;
	animation-duration: 500ms;
	-ms-animation-timing-function: linear;
	-moz-animation-timing-function: linear;
	-op-animation-timing-function: linear;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-ms-animation-iteration-count: 1;
	-moz-animation-iteration-count: 1;
	-op-animation-iteration-count: 1;
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;	
}

.main-header .main-menu .navigation > li > a{
    position:relative;
    display:block;
    text-align:center;
    line-height:30px;
    letter-spacing:0px;
    font-weight:700;
    padding:24px 0px; /* reduced ~30% from 35px */
    font-size:var(--font-16);
    color:#4e9aeb;
    text-transform: capitalize;
    font-family:var(--font-family-gilroy);
}

.main-header .main-menu .navigation > li.dropdown > a:before{
	position: absolute;
	content: "\f067";
	right: 0px;
    line-height: 30px;
	font-weight:400;
	font-size: var(--font-10);
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	font-family: 'FontAwesome';
}

.main-header .main-menu .navigation > li:last-child{
	margin-right:var(--margin-zero);
}

.main-header .main-menu .navigation > li:last-child > a{
	padding-right:0px;
}

.main-header .main-menu .navigation > li.dropdown > a{
	padding-right:var(--padding-right-15);
}

.main-header .sticky-header .main-menu .navigation > li{
	position:relative;
}

.main-header .sticky-header .main-menu .navigation > li:last-child{
	margin-right:var(--margin-zero);
}

.main-header .main-menu .navigation > li:last-child ul{
	right:0px;
}

.main-header .main-menu .navigation > li:hover > a,
.main-header .main-menu .navigation > li.current > a{
	opacity:1;
	color:var(--white-color);
}

.main-header .main-menu .navigation > li > ul{
	position:absolute;
	width:15rem;
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	-o-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: top;
	-ms-transform-origin: top;
	-o-transform-origin: top;
	transform-origin: top;
	opacity: 0;
	visibility: hidden;
    visibility: hidden;
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
	border-radius:0px;
	background-color:var(--main-color);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.10);
}

.main-header .main-menu .navigation > li > ul.from-right{
	left:auto;
	right:0px;	
}

.main-header .main-menu .navigation > li > ul > li{
	position:relative;
	width:100%;
	text-align:left;
	border-bottom:1px solid rgba(255,255,255,0.10);
}

.main-header .main-menu .navigation > li > ul > li:last-child{
	border-bottom:none;
}

.main-header .main-menu .navigation > li > ul > li > a{
	display:block;
	padding:12px 18px;
	line-height:24px;
	font-weight:700;
	font-size:var(--font-16);
	text-transform:capitalize;
	color:var(--white-color);
	font-family:var(--font-family-gilroy);
}

.main-header .main-menu .navigation > li > ul > li > a:before{
	position:absolute;
	content:'//';
	left:10px;
	top:13px;
	opacity:0;
	font-weight:700;
	color:var(--main-color);
	font-size:var(--font-12);
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
}

.main-header .main-menu .navigation > li > ul > li:hover > a::before{
	opacity:1;
}

.main-header .sticky-header .main-menu .navigation > li > a:before{
	
}

.main-header .main-menu .navigation > li > ul > li:hover > a{
	padding-left:30px;
	color:var(--main-color);
	background-color:var(--main-color-two);
}

.main-header .main-menu .navigation > li > ul > li.dropdown > a:after{
	font-family: 'FontAwesome';
	content: "\f105";
	position:absolute;
	right:8px;
	top:13px;
	width:10px;
	height:20px;
	display:block;
	color:var(--white-color);
	line-height:20px;
	font-size:var(--font-16);
	font-weight:normal;
	text-align:center;
	z-index:5;	
}

.main-header .main-menu .navigation > li > ul > li > ul{
	position:absolute;
	left:100%;
	top:0px;
	width:15rem;
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	-o-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: top;
	-ms-transform-origin: top;
	-o-transform-origin: top;
	transform-origin: top;
	opacity: 0;
	visibility: hidden;
    visibility: hidden;
    transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -webkit-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
	border-radius:0px;
	background-color:var(--main-color);
	box-shadow: 0px 0px 10px rgba(0,0,0,0.10);
}

.main-header .main-menu .navigation > li > ul > li > ul.from-right{
	left:auto;
	right:0px;	
}

.main-header .main-menu .navigation > li > ul > li > ul > li{
	position:relative;
	width:100%;
	text-align:left;
	border-bottom:1px solid rgba(255,255,255,0.10);
}

.main-header .main-menu .navigation > li > ul > li > ul > li:last-child{
	border-bottom:none;	
}

.main-header .main-menu .navigation > li > ul > li > ul > li > a{
	position:relative;
	display:block;
	padding:12px 18px;
	line-height:24px;
	font-weight:700;
	font-size:var(--font-16);
	text-transform:capitalize;
	color:var(--white-color);
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	font-family:var(--font-family-gilroy);
}

.main-header .main-menu .navigation > li > ul > li > ul > li:hover > a{
	color:var(--main-color);
	background-color:var(--main-color-two);
}

.main-header .main-menu .navigation > li > ul > li > ul > li > a:before{
	position:absolute;
	content:'//';
	left:10px;
	top:13px;
	opacity:0;
	font-weight:700;
	font-size:var(--font-12);
	color:var(--main-color);
	transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-webkit-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
}

.main-header .main-menu .navigation > li > ul > li > ul > li:hover > a::before{
	opacity:1;
}

.main-header .main-menu .navigation > li > ul > li > ul > li:hover > a{
	padding-left:30px;
	color:var(--main-color);
	background-color:var(--main-color-two);
}

.main-header .main-menu .navigation > li.dropdown:hover > ul{
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	-o-transform: scaleY(1);
	transform: scaleY(1);
	opacity: 1;
	visibility: visible;
}

.main-header .main-menu .navigation li > ul > li.dropdown:hover > ul{
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	-o-transform: scaleY(1);
	transform: scaleY(1);
	opacity: 1;
	visibility: visible;
}

.main-header .main-menu .navbar-collapse > ul li.dropdown .dropdown-btn{
	position:absolute;
	right:10px;
	top:6px;
	width:30px;
	height:30px;
	text-align:center;
	color:var(--white-color);
	line-height:28px;
	border:1px solid var(--white-color-opicity-two);
	background-size:20px;
	cursor:pointer;
	z-index:5;
	display:none;
}

/* Header Style Two */

.header-style-two .header-top{
	background-color:#d2e8db;
}

.main-header.header-style-two .header-top .top-left .text{
	color:var(--dark-color);
}

.main-header.header-style-two .header-top .top-right .text,
.main-header.header-style-two .header-top .top-right .text a{
	color:var(--dark-color);
	border-color:rgba(0,0,0,0.10);
}

.main-header.header-style-two .header-top .top-right .social-box li a{
	color:var(--dark-color);
}

.header-style-two .main-menu .navigation > li > a{
	color:var(--dark-color);
}

.header-style-two .main-menu .navigation > li.dropdown > a{
	padding-right:var(--padding-zero);
}

.header-style-two .main-menu .navigation > li.dropdown > a:before{
	display:none;
}

.main-header.header-style-two .main-menu .navigation > li:hover > a,
.main-header.header-style-two .main-menu .navigation > li.current > a{
	color:var(--color-seventen);
}

.main-header.header-style-two .outer-box{
	padding:20px 0px;
}

/* Header Style Three */

.header-style-three{
	position:absolute;
	left:0px;
	top:0px;
	right:0px;
}

.header-style-three .header-top{
	background:none;
	border-bottom:1px solid rgba(255,255,255,0.10);
}

/*** 

====================================================================
	Mobile Menu
====================================================================

***/

.main-header .outer-box .mobile-nav-toggler{
	position: relative;
	padding:0;
	font-size: var(--font-24);
	line-height: 44px;
	cursor: pointer;
	color:var(--white-color);
	display: none;
	font-family: "flaticon";
	align-items:center;
}

.mobile-menu{
	position: fixed;
	right: 0;
	top: 0;
	width: 300px;
	padding-right:30px;
	max-width:100%;
	height: 100%;
	visibility: hidden;
	z-index: 999999;
}

.mobile-menu .nav-logo{
    position:relative;
    padding:20px 20px;
    text-align:left;
    z-index: 15; /* ensure above other controls */
    pointer-events: auto;
}
.mobile-menu .nav-logo a{
    position: relative;
    z-index: 11; /* above close button and scroll chrome */
    display: inline-block;
    pointer-events: auto;
}

.mobile-menu .nav-logo img{
	max-width:200px;
}

.mobile-menu-visible{
	overflow: hidden;
}

.mobile-menu-visible .mobile-menu{
	visibility: visible;
}

.mobile-menu .menu-backdrop{
	position: fixed;
	right: 0;
	top: 0;
	width: 0%;
	height: 100%;
	z-index: 1;
	background: rgba(0,0,0,0.90);
	-webkit-transform: translateX(101%);
	-ms-transform: translateX(101%);
	transform: translateX(101%);
	transition: all 900ms ease;
    -moz-transition: all 900ms ease;
    -webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
	
	-webkit-transition-delay: 300ms;
	-moz-transition-delay: 300ms;
	-ms-transition-delay: 300ms;
	-o-transition-delay: 300ms;
	transition-delay: 300ms;
}

.mobile-menu-visible .mobile-menu .menu-backdrop{
	opacity: 1;
	width:100%;
	visibility: visible;
	transition: all 900ms ease;
    -moz-transition: all 900ms ease;
    -webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
	-webkit-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
}

.mobile-menu .menu-box{
	position: absolute;
	right: -400px;
	top: 0px;
	width: 100%;
	height: 100%;
	max-height: 100%;
	overflow-y: auto;
	background: #ffffff;
	padding: 0px 0px;
	z-index: 5;
	border-radius: 0px;
	
	transition: all 900ms ease;
    -moz-transition: all 900ms ease;
    -webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
}

.mobile-menu-visible .mobile-menu .menu-box{
	right:0px;
	-webkit-transition-delay: 600ms;
	-moz-transition-delay: 600ms;
	-ms-transition-delay: 600ms;
	-o-transition-delay: 600ms;
	transition-delay: 600ms;
}

.mobile-menu .close-btn{
	position: absolute;
	right: 15px;
	top: 15px;
	line-height: 30px;
	width: 30px;
	text-align: center;
	font-size: 14px;
	color: #202020;
	cursor: pointer;
	z-index: 10;
	-webkit-transition:all 0.5s ease;
	-moz-transition:all 0.5s ease;
	-ms-transition:all 0.5s ease;
	-o-transition:all 0.5s ease;
	transition:all 0.5s ease;
	-webkit-transform: translateY(-50px);
	-ms-transform: translateY(-50px);
	transform: translateY(-50px);
	font-family: "flaticon";
}

.mobile-menu-visible .mobile-menu .close-btn{
	-webkit-transform: translateY(0px);
	-ms-transform: translateY(0px);
	transform: translateY(0px);
	-webkit-transition-delay: 900ms;
	-moz-transition-delay: 900ms;
	-ms-transition-delay: 900ms;
	-o-transition-delay: 900ms;
	transition-delay: 900ms;
}

.mobile-menu .close-btn:hover{
	opacity: 0.50;
}

.mobile-menu .navigation{
	position: relative;
	display: block;
	width:100%;
	border-top: 1px solid rgba(0,0,0,0.10);
}

.mobile-menu .navigation li{
	position: relative;
	display: block;
	border-bottom: 1px solid rgba(0,0,0,0.10);
}

.mobile-menu .navigation li > ul > li:last-child{
	border-bottom: none;
}

.mobile-menu .navigation li > ul > li:first-child{
	border-top: 1px solid rgba(0,0,0,0.10);
}

.mobile-menu .navigation li > a{
	position: relative;
	display: block;
	line-height: 24px;
	padding: 10px 20px;
	font-size: 15px;
	color: #404040;
	text-transform: capitalize;
}

.mobile-menu .navigation li:hover > a,
.mobile-menu .navigation li.current > a{
	color:#111111;
}

.mobile-menu .navigation li.dropdown .dropdown-btn{
	position:absolute;
	right:0px;
	top:0px;
	width:44px;
	height:44px;
	text-align:center;
	font-size:16px;
	line-height:44px;
	color:#404040;
	cursor:pointer;
	z-index:5;
}

.mobile-menu .navigation li.dropdown .dropdown-btn:after{
	content:'';
	position:absolute;
	left:0px;
	top:10px;
	width:1px;
	height:24px;
	border-left:1px solid rgba(0,0,0,0.10);
}

.mobile-menu .navigation li > ul,
.mobile-menu .navigation li > ul > li > ul{
	display: none;
}

.mobile-menu .navigation li > ul > li > a{
	padding-left:30px;
}

.mobile-menu .navigation li > ul > li > ul{
	padding-left:0px;
}

.mobile-menu .navigation li > ul > li > ul > li > a{
	padding-left:40px;
}

/* Mobile drawer auth links (로그인/회원가입) */
.mobile-menu .login-link,
.mobile-menu .logout-link,
.mobile-menu .btn-style-two{
	font-size:13px;
	line-height:20px;
}

.main-header .mobile-menu .close-btn:hover{
	opacity: 0.50;
}

.main-header .mobile-menu .navigation{
	position: relative;
	display: block;
	width:100%;
	border-top: 1px solid #dddddd;
}

.main-header .mobile-menu .navigation li{
	position: relative;
	display: block;
	border-bottom: 1px solid #dddddd;
}

.main-header .mobile-menu .navigation li > ul > li:last-child{
	border-bottom: none;
}

.main-header .mobile-menu .navigation li > ul > li:first-child{
	border-top: 1px solid #dddddd;
}

.main-header .mobile-menu .navigation li > a{
	position: relative;
	display: block;
	line-height: 24px;
	padding: 10px 20px;
	font-size: 13px;
	color: var(--dark-color);
	text-transform: capitalize;
}

.main-header .mobile-menu .navigation li:hover > a,
.main-header .mobile-menu .navigation li.current > a{
	color: var(--dark-text-color-two);
}

.main-header .mobile-menu .navigation li.dropdown .dropdown-btn{
	position:absolute;
	right:0px;
	top:0px;
	width:44px;
	height:44px;
	text-align:center;
	color: var(--dark-color);
	font-size: var(--font-16);
	line-height:44px;
	cursor:pointer;
	z-index:5;
}

.main-header .mobile-menu .navigation li.dropdown .dropdown-btn:after{
	content:'';
	position:absolute;
	left:0px;
	top:10px;
	width:1px;
	height:24px;
	border-left:1px solid #dddddd;
}

.main-header .mobile-menu .navigation li > ul,
.main-header .mobile-menu .navigation li > ul > li > ul{
	display: none;
}

.main-header .sticky-header .navbar-header{
	display:none;
}

.main-header .outer-box{
    position: absolute;
    float: right;
    padding: 0; /* center via transform below on desktop */
    right: 0px;
    top: 50%;
    transform: translateY(-50%);
}

/* Search Box Outer */

.main-header .header-lower .search-box-outer{
	position:relative;
	float:left;
}

.main-header .header-lower .search-box-btn{
    position:relative;
    display:block;
    float:left;
    font-size:var(--font-20);
    color:var(--white-color);
    line-height:20px;
    cursor:pointer;
    background:none;
}

.main-header .header-lower .search-box-btn:hover,
.main-header .header-lower .outer-box .nav-btn:hover{
	color:var(--main-color-two);
}

.main-header .header-lower .outer-box .nav-btn{
	position:relative;
	float:left;
	cursor:pointer;
	font-size:var(--font-28);
	color:var(--white-color);
	font-family: "flaticon";
	margin-left:var(--margin-left-25);
}

/*** 

====================================================================
	Search Popup
====================================================================

***/


.search-popup{
	display:none;
	position: fixed;
	left: 0;
	top: 0;
	height: 100vh;
	width: 100%;
	z-index: 99999;
	background-color: rgba(0,0,0,0.90);
    -webkit-transition: all 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    -moz-transition: all 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    -o-transition: all 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);
    transition: all 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000); /* easeInOutQuint */
    -webkit-transition-timing-function: cubic-bezier(0.860, 0.000, 0.070, 1.000);
    -moz-transition-timing-function: cubic-bezier(0.860, 0.000, 0.070, 1.000);
    -o-transition-timing-function: cubic-bezier(0.860, 0.000, 0.070, 1.000);
    transition-timing-function: cubic-bezier(0.860, 0.000, 0.070, 1.000); /* easeInOutQuint */
}

.sidenav-bar-visible .search-popup{
	width: 80%;
}

.search-popup:before{
	display:none;
}

.search-active .search-popup{
	display:block;
}

.search-active .search-popup:before{
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	height: 560px;
	background-image: url(../images/icons/waves-shape.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	content: "";
}

.search-popup .close-search{
	position: absolute;
	left: 0;
	right: 0;
	top: 75%;
	margin: 0 auto;
	margin-top: -200px;
	border-radius: 50%;
	text-align: center;
	background-color:var(--main-color);
	width: 70px;
	cursor:pointer;
	font-family: "flaticon";
	border-bottom: 3px solid var(--white-color);
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
	opacity: 0;
	visibility: hidden;
}

.search-popup .close-search span{
	position: relative;
	display: block;
	height: 70px;
	width: 70px;
	font-size:var(--font-30);
	line-height: 70px;
	color: var(--white-color);
}

.search-active .search-popup .close-search{
	visibility: visible;
	opacity: 1;
	top: 50%;
	-webkit-transition-delay: 1500ms;
	-moz-transition-delay: 1500ms;
	-ms-transition-delay: 1500ms;
	-o-transition-delay: 1500ms;
	transition-delay: 1500ms;
}

.search-popup form{
	position: absolute;
	max-width: 700px;
	top: 50%;
	left: 15px;
	right: 15px;
	margin:-35px auto 0;
	transform: scaleX(0);
	transform-origin: center;
	background-color: var(--dark-color);
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

.search-active .search-popup form{
	transform: scaleX(1);
	-webkit-transition-delay: 1200ms;
	-moz-transition-delay: 1200ms;
	-ms-transition-delay: 1200ms;
	-o-transition-delay: 1200ms;
	transition-delay: 1200ms;
}

.search-popup .form-group{
	position:relative;
	margin:var(--margin-zero);
	overflow: hidden;
}

.search-popup .form-group input[type="text"],
.search-popup .form-group input[type="search"]{
	position:relative;
	display:block;
	font-size:var(--font-18);
	line-height: 50px;
	color:var(--black-color);
	height:70px;
	width:100%;
	padding: 10px 30px;
	background-color: var(--white-color);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
	font-weight:500;
	text-transform:capitalize;
}

.search-popup .form-group input[type="submit"],
.search-popup .form-group button{
	position:absolute;
	right:30px;
	top:0px;
	height:70px;
	line-height: 70px;
	background: transparent;
	text-align:center;
	font-size:var(--font-24);
	color:var(--black-color);
	padding: 0;
	cursor:pointer;
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.search-popup .form-group input[type="submit"]:hover,
.search-popup .form-group button:hover{
	color: var(--black-color);
}

.search-popup input::placeholder,
.search-popup textarea::placeholder{
	color: var(--black-color);
}

.search-popup .close-search.style-two{
	position: absolute;
	right: 25px;
	left: auto;
	color: var(--white-color);
	width:auto;
	height:auto;
	top:25px;
	margin:0px;
	border:none;
	background:none !important;
	box-shadow:none !important;
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.search-popup .close-search.style-two span{
	font-size:var(--font-20);
	color: var(--white-color);
}

.main-header .sticky-header .search-box-btn{
    color: var(--black-color);
    margin-top:0;
    float:none;
    display:flex;
    align-items:center;
    justify-content:center;
    line-height:1;
}

/* Removed desktop absolute centering for outer-box to preserve original positions */

.main-header .mobile-menu .menu-box .mCSB_scrollTools{
	width:3px;
}



/*** 

====================================================================
	Hidden Sidebar style
====================================================================

***/

.sidebar-info-contents{
	position:relative;
}

.sidebar-info-contents .content-inner{
	position:relative;
}

.sidebar-info-contents .content-inner .logo {
	padding-bottom:var(--padding-bottom-20);
}

.sidebar-info-contents .content-inner .logo img{
	display:inline-block;
	max-width:100%;	
}

.sidebar-info-contents .content-inner .content-box{
	position:relative;
}

.sidebar-info-contents .content-inner .content-box h4{
	color:var(--white-color);
	margin-bottom:var(--margin-top-20);
}

.sidebar-info-contents .content-inner .content-box .text{
	color:rgba(255,255,255,0.80);
	margin-bottom:var(--margin-top-25);
}

.sidebar-info-contents .content-inner .contact-info{
	position:relative;
	margin-top:var(--margin-top-60);
}

.sidebar-info-contents .content-inner .contact-info h4{
	color:var(--white-color);
	font-weight:500;
	margin-bottom:var(--margin-top-20);
}

.sidebar-info-contents .content-inner .social-box{
	position:relative;
	margin-top:var(--margin-top-20);
	margin-bottom:var(--margin-top-30);
}

.sidebar-info-contents .content-inner .social-box li{
	position:relative;
	display:inline-block;
	margin-right:var(--margin-right-5);
	transition: all 900ms ease;
    -moz-transition: all 900ms ease;
    -webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
}

.sidebar-info-contents .content-inner .social-box li a{
	position:relative;
	width:36px;
	height:36px;
	color:var(--main-color);
	z-index:1;
	font-size:var(--font-14);
	line-height:36px;
	text-align:center;
	border-radius:50%;
	display:inline-block;
	background-color:var(--white-color);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.sidebar-info-contents .content-inner .social-box li a:hover{
	color:var(--white-color);
	background-color:var(--main-color);
}

.close-side-widget,
.close-side-widget:hover{
	color:var(--white-color) !important;
	font-size:var(--font-24);
}

/* Specific note styling inside header info sidebar */
.info-group .contact-info .list-style-one li .visit-note {
    font-size: 12px;
    font-style: italic;
}

/* Quick social window under header */
.quick-social-widget{
    position: fixed;
    right: 24px; /* move a bit left from the edge */
    top: 128px;  /* place lower to avoid top menu */
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    padding: 8px 6px;
    background: rgba(0,0,0,0.25);
    border-radius: 10px;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
}
.quick-social-widget a{
    color: #ffffff;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px; /* FA icon size inside 36px button */
    border-radius: 8px; /* rounded square */
    background: transparent; /* no per-icon background */
    overflow: hidden; /* contain any scale adjustments on icons */
}
.quick-social-widget a:hover{
    color: var(--main-color-two);
    background: transparent; /* keep background removed on hover */
}
/* Keyboard focus visibility */
.quick-social-widget a:focus-visible{
    outline: 2px solid var(--main-color-two);
    outline-offset: 2px;
}
/* Normalize inline SVG size inside 36px buttons */
.quick-social-widget a svg{
    width: 20px;
    height: 20px;
    display: block;
}
/* Support PNG icon sizing too */
.quick-social-widget a img{
    width: 20px;
    height: 20px;
    display: block;
}
/* Slightly larger YouTube PNG to match visual weight */
.quick-social-widget a .yt-icon{
    width: 28px;
    height: 28px;
    transform: scale(1.1); /* visually compensate for PNG padding */
}
/* Match Facebook size to YouTube/Kakao visual weight */
.quick-social-widget a .fb-icon{
    width: 30px;
    height: 30px;
    transform: scale(1.12);
    transform-origin: center;
}

@media (max-width: 991px){
    .main-header .header-lower .auto-container,
    .main-header .sticky-header .auto-container{
        display:flex;
        align-items:center;
        justify-content:space-between;
        flex-wrap:nowrap;
    }
    .main-header .header-lower .logo-box,
    .main-header .sticky-header .logo{
        order:1;
        position:static;
        transform:none;
        padding:21px 0 !important;
        display:flex;
        align-items:center;
        justify-content:flex-start;
    }
    /* Keep favicon/logo consistently sized on tablet (prevents oversized logo at 991px) */
    .main-header .header-lower .logo-box img,
    .main-header .sticky-header .logo img{
        width:38px !important;
        height:38px !important;
        max-width:38px !important;
        max-height:38px !important;
        object-fit:contain;
        display:block;
    }
    .main-header .nav-outer{
        order:2;
        display:flex;
        flex:1 1 auto;
        min-width:0;
        align-items:center;
        justify-content:center;
    }
    .main-header .nav-outer nav{flex:0 1 auto;}
    .main-header .nav-outer .main-menu{margin:0 auto;}
    .main-header .nav-outer .navbar-header{display:none;}
    .main-header .outer-box{
        order:3;
        display:flex;
        align-items:center;
        gap:12px;
        margin-left:auto;
    }
    .main-header .outer-box .search-box-btn{margin-left:0;margin-right:12px;}
    .main-header .mobile-right .mobile-nav-toggler{display:flex;margin-left:12px;}
    .main-header .sticky-header .mobile-right .mobile-nav-toggler{display:flex;margin-left:12px;color:var(--black-color);}
    .main-header .mobile-auth-links,
    .main-header .sticky-header .mobile-auth-links{display:none;}
    .main-header .nav-outer .navbar-collapse{display:flex !important;justify-content:center;}

    /* Sticky header: make search + hamburger icons black on tablet */
    .main-header .sticky-header .search-box-btn,
    .main-header .sticky-header .search-box-btn .icon,
    .main-header .sticky-header .mobile-nav-toggler,
    .main-header .sticky-header .mobile-nav-toggler .icon{
        color:#000 !important;
    }
}
@media (max-width: 767px){
    /* Mobile: search left, logo centered, hamburger right */
    .main-header .nav-outer,
    .main-header .sticky-header .nav-outer{
        display:none !important;
    }
    .main-header .header-lower .auto-container,
    .main-header .sticky-header .auto-container{
        position:relative;
        display:flex;
        align-items:center;
        justify-content:center;
        padding:10px 12px;
    }
    .main-header .header-lower .logo-box,
    .main-header .sticky-header .logo{
        position:absolute;
        left:50%;
        top:50%;
        transform:translate(-50%,-50%);
        padding:0 !important;
        margin:0;
        z-index:2;
    }
    .main-header .header-lower .logo-box .logo img,
    .main-header .sticky-header .logo img{
        max-height:32px !important;
        height:32px !important;
        width:auto !important;
    }
    .main-header .outer-box,
    .main-header .sticky-header .outer-box{
        position:absolute;
        left:0;
        right:0;
        top:50%;
        transform:translateY(-50%);
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        padding:0 12px;
        margin:0;
        width:100%;
        z-index:3;
        pointer-events:auto;
    }
    .main-header .outer-box .search-wrapper,
    .main-header .sticky-header .outer-box .search-wrapper{
        position:relative;
        display:flex;
        align-items:center;
        gap:8px;
        margin:0;
        order:1;
    }
    .main-header .outer-box .search-wrapper .search-box-btn,
    .main-header .sticky-header .outer-box .search-wrapper .search-box-btn{
        display:flex;
        align-items:center;
        justify-content:center;
        width:32px;
        height:32px;
        background:transparent;
        color:#000;
        padding:0;
        border:none;
        margin:0;
    }
    .main-header .outer-box .mobile-nav-toggler,
    .main-header .sticky-header .mobile-nav-toggler{
        position:relative;
        display:flex;
        align-items:center;
        justify-content:center;
        width:32px;
        height:32px;
        color:#000;
        background:transparent;
        border:none;
        padding:0;
        margin-left:auto;
        order:2;
    }
    .main-header .outer-box .auth-links,
    .main-header .sticky-header .auth-links{display:none !important;}
    .main-header .mobile-auth-links,
    .main-header .sticky-header .mobile-auth-links{display:flex;}
    .main-header .mobile-right .mobile-nav-toggler{display:flex;margin-left:12px;}
    .main-header .sticky-header .mobile-nav-toggler{display:flex;margin-left:12px;color:var(--black-color);}
    .main-header .nav-outer .navbar-header{display:none;}
    .main-header .nav-outer .navbar-collapse{display:flex !important;justify-content:center;}

    /* Sticky header: make search + hamburger icons black on mobile */
    .main-header .sticky-header .search-box-btn,
    .main-header .sticky-header .search-box-btn .icon,
    .main-header .sticky-header .mobile-nav-toggler,
    .main-header .sticky-header .mobile-nav-toggler .icon{
        color:#000 !important;
    }
}
