/*=================================================

POS MENU DEFAULT THEME STYLE - version 1.0
Website: https://sonhlab.com


Build - 015

==================================================*/

html {
	min-height: 100%;

}
body {
	font-family: 'KoHo', sans-serif;
	min-height: 100%;
	overflow-x:hidden;
}
h1, h2, h3 {
	font-family: 'KoHo', sans-serif;
	font-weight: normal;
}

label { cursor: pointer; }
a { text-decoration: none !important; }

#main-wrapper {
	opacity: 0;
}


/*========== START HEADER ==========*/

.pos-topnav {
	height: 3rem;
}

.navbar-brand {
	display: block;
	height: 3rem;
	line-height: 3rem;
}
.navbar-brand > img {
	display: inline-block;
	margin: auto;
}
.pos-brand-logo {
	max-width: 120px;
	max-height: 3rem;
	line-height: 3rem;
	vertical-align:middle;
}
.nav-langswitcher {
	line-height: 3rem;
	height: 3rem;
	cursor: pointer;
}
.nav-langswitcher .dropdown-toggle {
	height: 100%;
	display: block;
	background: none;
	border: 0;
	position: relative;
	
}
.dropdown-toggle:focus{
	outline: none;
	background: rgba(0,0,0,0.2);
	color: inherit;
}
.nav-langswitcher .dropdown-toggle::after {
	vertical-align: 0;
}
.nav-langswitcher .nav-langflag {
	height: 1rem;
}


.nav-langselector .dropdown-item {
	color: inherit;
}
.nav-langselector .dropdown-item:hover {
	background: rgba(0,0,0,0.2);
}


.navbar-nav {}
.navbar a {
	display: block;
	height: 3rem;
	line-height: 3rem;
}


.pos-navitem {
	cursor: pointer;
	line-height: 3rem;
	height: 3rem;
}
.pos-navitem:hover {
	background: rgba(0,0,0,0.2);
}
.pos-navitem:hover span,
.pos-navitem:hover i {
	
}

.pos-header-nav,
.pos-footer-nav {
	font-family: 'KoHo', sans-serif;
}

.pos-breadcrumbs {
	padding:0 20px;
	height:48px;
	line-height:48px;
}
.pos-breadcrumbs > div {
	float:left;
}
.pos-breadcrumbs > div > a {
	color: inherit;
}
.pos-breadcrumbs > div > a:hover {
	text-shadow: 0px 0px 5px #38D1F7;
}
.pos-breadcrumbs > div ~ div {
	
}
.pos-breadcrumbs > div > span {
	padding:0 5px;
	margin:0px;
	display:block;
	float:left;
}

.panel-mobile-nav {
	top: 0;
	left: 0;
	z-index: 1060;
	display: none;
}
.panel-mobile-nav-item {
	
}
.panel-mobile-nav-item:hover {
	background: rgba(0,0,0,0.2);
}

.pos-page-title {
	font-size: 2.5rem;
}

.pos-cartnum-holder {
	height: 3rem;
	line-height: 3rem;
}
.pos-cartnum {
	display: block;
	margin-top: 8px;
	height: 32px;
	line-height: 32px;
}



/*========== END HEADER ==========*/




/*========== START MOBILE MENU ==========*/
.panel-mobile-nav-itemholder {
	overflow: auto;
	left:0;
	top:0;
}
/*========== END MOBILE MENU ==========*/



/*========== START MENU ==========*/
.pos-menu {
	
}


.pos-catmenu-main {
	background: transparent;
	overflow: hidden; 
}

.pos-catmenu-main-imgbg {
	top:0;
	left: 0;
	z-index: 1;
	height: 100%;
	min-width: 100%;
}
.pos-catmenu-main-imgbg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.pos-catmenu-main-header-bg {
	top:0;
	left: 0;
	height: 100%;
	z-index: 2;
}
.pos-catmenu-main-body {
	top: 0;
	left: 0;
	z-index: 3;
	overflow:hidden;
}
.pos-catmenu-basic {
	background: transparent;
}




.pos-catmenu-imgbg-holder {
	width: 100%;
	height: 100%;
}

.pos-catmenu-bg {
	top:0;
	left: 0;
	height: 100%;
	opacity: 0.4;
	z-index: 2;
}


.pos-popular-product:hover {
	background: rgba(255, 255, 255, 0.2);
}
.pos-productpicker {
	cursor: pointer;
}
.pos-productpack:hover {
	background: rgba(0, 0, 0, 0.2);
}


#pos-productpack-holder {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1050;
	display: none;
	-webkit-user-select: none; /* Chrome/Safari */        
	-moz-user-select: none; /* Firefox */
	-ms-user-select: none; /* IE10+ */

	/* Rules below not implemented in browsers yet */
	-o-user-select: none;
	user-select: none;
}

.pos-productpack-layer,
.pos-prodchoices-layer {
	overflow: auto;
	z-index: 2;
}
.pos-productmainimage {
	top: 0;
	right: 0;
	height: 100%;
	z-index: 1;
}
.pos-productmainimage .pos-prodgallery {
	height: 100%;
	position: relative;
}

.pos-productmainimage .pos-prodimgslider,
.pos-productmainimage .slick-list,
.pos-productmainimage .slick-track {
	height: 100%;
}

.pos-prodimgslider .slick-track {
	wdith: 100%;
}


.pos-prodamountsetter span {
	cursor: pointer;
	font-size: 2rem;
	padding: 10px;
}
.pos-prodamount-warning {
	display: none;
}

.pos-prodquestions-holder {
	display: none;
	min-height: 100%;
}
.pos-optionpicker {
	cursor: pointer;
}

.pos-selectedholder {
	/*display:none;*/
	visibility: hidden; 
	height: 0;
	overflow: hidden;
}
.pos-selectedaddon {
	line-height: 2rem;
	border-bottom: 1px solid #ddd;
}
.pos-addonprice::before {
	content: "+";
}
.pos-addonnum {
	height: 2rem;
	line-height: 2rem;
	margin-right: 0.75rem;
	font-weight: bold;
}
.pos-addonnum::after {
	content: "x";
}

.pos-prodsum {
	position: relative;
	width: 100%;
	z-index: 10;
	font-size: 1.5rem;
}
.pos-atcstyle {
	cursor: pointer;
	position: relative;
	border-radius: 5px;
	height: 3rem;
}
.pos-atcstyle > div {
	z-index: 1;
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	font-weight: bold;
}
.pos-addtocart i,
.pos-showoptions i,
.pos-disableditem i {
	display: none;
}
.pos-atcstyle:hover::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: 0;
	border-radius: 5px;
}
.pos-atcstyle:hover::before {
	background: rgba(0, 0, 0, 0.2);
}

/*
.pos-directadd:hover::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: 0;
	background: rgba(0, 0, 0, 0.2);
}
*/


.pos-optionpicker:hover {
	background: #ECEFF1;
}

.pos-questionlist li,
.pos-subprodlist li {
	list-style:none;
}

.pos-escaper {
	cursor: pointer;
	font-size: 1.5rem;
	padding: 8px 0.75rem;
	font-weight: bold;
	display: block;
	height: 40px;
	line-height: 24px;
}
.pos-escaper-title {
	padding-left: 0.5rem;
	height: 24px;
	line-height: 24px;
	font-size: 1rem;
}


.pos-prodgallery-banner-style {
	/*max-height: 15rem;*/
	overflow:hidden;
}

.pos-prodgallery-btn-style {
	width: 4rem;
	height: 4rem;
	overflow: hidden;
	position: absolute;
	top: 1rem;
	right: 1rem;
	border-radius: 50%;
}
.pos-prodgallery-btn-style > img {
	cursor: pointer;
}
/*
.pos-prodgallery-btn-style > img:hover {
	opacity: 0.5;
}
*/


.pos-escaper:hover {
	background: rgba(0, 0, 0, 0.2);
}

#pos-forcedchoice-holder,
#pos-question-holder {
	display: none;
	position: fixed;
	z-index: 1060;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	
	-webkit-user-select: none; /* Chrome/Safari */        
	-moz-user-select: none; /* Firefox */
	-ms-user-select: none; /* IE10+ */

	/* Rules below not implemented in browsers yet */
	-o-user-select: none;
	user-select: none;
}
.pos-forcedchoices {
	display: none;
}
.pos-optionchoices,
.pos-optionquestion {
	display: none;
	position: relative;
}
.pos-choicepicker,
.pos-optionquestion {
	cursor: pointer;
}
.pos-choicepicker:hover,
.pos-optionquestion:hover {
	background: #ECEFF1;
}

.pos-clearprice:hover,
.pos-clearchoices:hover {
	background: rgba(0, 0, 0, 0.2);
}

.pos-choiceset .pos-selectedholder .pos-clearchoices {
	display: none !important;
}
.pos-proderr,
.pos-questionerr {
	display: none;
}

.pos-flashmes-holder {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 1040;
	top: 0;
	left: 0;
	display: none;
}
.pos-flashmes {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow: hidden;
}

.pos-choicepicker-btn {
	position:sticky;
	bottom: 0;
	z-index: 4;
}
/*========== END MENU ==========*/


/*========== END CART ==========*/
.pos-prodimg {
	min-height: 100px;
	max-height: 180px;
	overflow: hidden;
	position: relative;
	z-index:1;
}
.pos-prodimg::before {
	content: "";
	background: #ddd url('../images/icons/no_image.png') center center;
	background-size: cover;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	opacity: 0.5;
	z-index: -1;
	width: 100%;
	height: 100%;
}
.pos-subprodimg {
	height: 120px;
}
.img-cover {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.pos-cart-prodopt ul {
	list-style: none;
	padding: 0 1rem;
	margin: 0;
}
.pos-cart-confirmbtn {
	cursor: pointer;
}
.pos-cart-confirmbtn i {
	display: none;
}
.pos-placeorder i {
	display:none;
}
.pos-cart-shipping {
	display: none;
}
.pos-priceunit {
	line-height: 1
}

.pos-combopriceholder {
	height: 2rem;
	line-height: 2rem;
}
.pos-combopricetag {
	height: 1.5rem;
	line-height: 1.5rem;
	font-size: 1rem;
}
/*========== END CART ==========*/



/*========== START NOTICES ==========*/
.notice {
	display:block;
}
.notice header {
	height:2rem;
	margin-bottom:1rem;
}
.notice-title p {
	text-transform:uppercase;
	font-family: 'Roboto', sans-serif;
	font-size:2rem;
	line-height:1;
}
.notice-closebt img {
	width:2rem;
	height:2rem;
}
.notice-closebt > span {
	display:block;
	color: #fff;
	cursor: pointer;
}
.notice-closebt > span > i {
	font-size: 2rem;
}
.notice ul {
	list-style: none;
	padding: 0px;
}
.notice ul li {
	position:relative;
	font-size: 1rem;
	line-height: 2rem;
	height: 2rem;
}
.notice ul li:before {
	font-size: 1rem;
}
.notice ul .done-icon img,
.notice ul .error-icon img {
	padding: 8px;
	height: 32px;
	display:table-cell;
	vertical-align:middle;
}
.notice ul .done-icon span,
.notice ul .error-icon span {
	display:table-cell;
	vertical-align:middle;
	height: 24px;
}
.notice ul li > div {
	display: inline-table;
	font-family:"Roboto", sans-serif;
	height: 24px;
	font-size:1rem;
	padding:0;
}
/*========== END NOTICES ==========*/




/*========== START LOGIN ==========*/

.pos-login {
	padding:0px;
	float:right;
	position:relative;
	height: 3rem;
}
.nav-mobile-holder {
	width: 3rem;
}
.nav-mobile i {
	font-size: 1.5rem;
}
.pos-login a,
.pos-notification a {
	display:block;
	padding:0 20px;
}

.pos-login ul {
	display:none;
	position:absolute;
	top: 3rem;
	width:200px;
	right:0px;
}
.pos-login > ul > li {
	
}
.pos-loggedinuser,
.pos-guest {
	height: 3rem;
	line-height: 3rem;
}
.pos-loggedinuser:hover > ul {
	display:block;
}

.list-group-item::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left:0;
	height: 100%;
	width: 100%;
}

.pos-loggedinuser .list-group-item:hover::before {
	background: rgba(0, 0, 0, 0.2);
}
.list-group-item a {
	z-index: 10;
}
.pos-auth-container {
	top :0;
	left: 0;
	display: none;
	z-index: 9999;
}



.pos-submitbtn {
	cursor: pointer;
}
.pos-submitbtn i {
	display: none;
}


/*========== END LOGIN ==========*/



/*========== START FOOTER SECTION ==========*/
.pos-footer-section {
	bottom:0px;
	width:100%;
	box-sizing: content-box;
}
.pos-footercontainer {
	padding:0 2rem;
	margin:auto;
}
.pos-footer-nav a:hover {
	background: rgba(245,245,245,0.4);
}
.pos-copyright {
	line-height: 2rem;
	font-size:1.2rem;
}
.pos-copyright a {
	color: inherit;
	text-decoration: none;
}



.pos-bodyloader {
	width:128px;
	height:128px;
	position:fixed;
	top:50%;
	left:50%;
	z-index:9999;
	margin-top:-64px;
	margin-left:-64px;
	border-radius: 50%;
	box-shadow: 0 4px 12px 4px rgba(0, 0, 0, 0.2), 0 6px 18px 6px rgba(0, 0, 0, 0.1);
	display:block;
	background: #fff;
}
.pos-bodyloadingicon-holder {
	background:url(../images/icons/loading.gif) no-repeat center center;
	background-size: 108px 108px;
	width:128px;
	height:128px;
}
.pos-brandloadingicon {
	width: 128px;
	height: 128px;
	padding: 40px;
	text-align:center;
}
.pos-brandloadingicon > img {
	height: 48px;
}

/*========== END FOOTER SECTION ==========*/





/*========== START LAYERS ==========*/

.pos-layer-cm { /* Center - Middle */
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.pos-layer-cft { /* Center - Floating Top */
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
}
.pos-layer-lm { /* Left -Middle */
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
}
.pos-layer-rm { /* Right -Middle */
	top: 50%;
	left: 100%;
	transform: translate(-100%, -50%);
}
.pos-layer-b { /* Bottom */
	top: 100%;
	left: 0;
	transform: translate(0, -100%);
}
/*========== END LAYERS ==========*/



/*========== START RESPONSIVE LAYOUT ==========*/
/*
@media (min-width: 576px) {
	.pos-page-title {
		font-size: 3rem;
	}
	.pos-menu-dfstyle .pos-catmenu-header,
	.pos-menu-dfstyle .pos-catmenu-imgbg {
		height: 160px;
	}
	
	.pos-menu-dfstyle .pos-catmenu-title {
		line-height: 160px;
	}
}

@media (min-width: 768px) {
	.pos-page-title {
		font-size: 3.5rem;
	}
	.pos-menu-dfstyle .pos-catmenu-header,
	.pos-menu-dfstyle .pos-catmenu-imgbg {
		height: 160px;
	}
	.pos-menu-dfstyle .pos-catmenu-title {
		line-height: 160px;
	}
}

@media (min-width: 992px) {
	.pos-page-title {
		font-size: 4rem;
	}
	.pos-menu-dfstyle .pos-catmenu-header,
	.pos-menu-dfstyle .pos-catmenu-imgbg {
		height: 180px;
	}
	.pos-menu-dfstyle .pos-catmenu-title {
		line-height: 180px;
	}
}

@media (min-width: 1200px) {
	.pos-page-title {
		font-size: 5rem;
	}
	.pos-menu-dfstyle .pos-catmenu-header,
	.pos-menu-dfstyle .pos-catmenu-imgbg {
		height: 220px;
	}
	.pos-menu-dfstyle .pos-catmenu-title {
		line-height: 220px;
	}
}


@media (max-width: 575.98px) {
	
}

@media (max-width: 767.98px) {
	
}

@media (max-width: 991.98px) {
	
}

@media (max-width: 1199.98px) {
	
}
*/
/*========== START RESPONSIVE LAYOUT ==========*/



/*========== START PAGINATION ==========*/
.pos-pagenav {
	
}

.pos-pagenav > span {
	font-size:1rem;
	line-height:1rem;
	display: inline-block;
	cursor:pointer;
	margin: 0.2rem;
}
.pos-pagenav > span:hover {
	opacity:0.7;
	background:#ECEFF1;
	color: #1e1e1e;
}
.pos-pagenav > .PageList {

}

.pos-pagenav > .currentPage {
	color: #fff;
	background: #2C84EE;
	padding: 0.5rem 0.8rem;
	border: 2px solid #2C84EE;
}

.pos-pagenav > span > a {
	color: #1e1e1e;
	padding:0;
	font-size:1rem;
	display:inline-block;
	/*height:2rem;*/
	line-height:1rem;
	padding:0.5rem 0.8rem;
	border: 2px solid #CFD8DC;
}


/*========== END PAGINATION ==========*/



/*========== MISC SECTION ==========*/
.layer-fixed-fullframe {
	top :0;
	left: 0;
	display: none;
	z-index: 9999;
}
.img-interlaced { background:#ccc url(../images/repo/backgrounds/interlaced.png) repeat; }

.animatedItem {
	animation-duration: 0.5s;
	animation-fill-mode: both;
}



.shadow-inset {
	-moz-box-shadow: inset 0 0 100px #333;
	-webkit-box-shadow: inset 0 0 100px #333;
	box-shadow: inset 0 0 100px #333;
}
.font-roboto {
	font-family: 'Roboto', sans-serif;
}
.font-titillium-web {
	font-family: 'Titillium Web', sans-serif;
}
.font-lobster {
	font-family: 'Lobster', cursive;
}
.font-koho {
	font-family: 'KoHo', sans-serif;
}

.blk-hidden {
	display:none;
}
.bg-light-green-100 .pos-choicename > .blk-hidden {
	display: inline-block;
}
.cursor-pointer {
	cursor: pointer;
}

.textmask {
	-webkit-text-security: disc;
}

.pos-captchaimg {
	max-width: 100%;
	/*width: 320px;
	height: 80px;*/
}
.pos-captchaimg img {
	width: 100% !important;
	height: auto !important;
}
.pos-captcharefresh {
	height: 1.5rem;
	line-height: 1.5rem;
}
.pos-captcharefresh i {
	font-size: 1rem;
}
.pos-captcharefresh span {
	font-size: 1rem;
}

.pos-optionholder .label {
	cursor: pointer;
	font-size: 1rem;
	line-height:1.5rem;
	height: 100%;
	margin-right: 1rem;
	margin-bottom: 0;
	padding: 1rem 1rem 1rem 3rem;
	transition: background 1s, color 1s;
	display: block;
}

.pos-optionholder .label:before,
.pos-optionholder .label:after {
	position: absolute;
	/*font-family: FontAwesome;*/
	font-family: "Font Awesome 5 Free";
	
	font-size:1.75rem;
	left: 0.75rem;
	top: 1.2rem;
	width:2rem;
}

/*checkbox unchecked */
.pos-optionholder .label:before {
	/*content: "\f096";*/
	content: "\f0c8";
	opacity:0.3;
}
/*checkbox checked*/
.pos-optionholder .label:after {
	content: "\f00c";
	font-weight: 900;
	width: 0;
	overflow: hidden;
	opacity: 0.5;
	color: #2E7D32;
 
	-webkit-transition: all 0.50s;
	-moz-transition: all 0.50s;
	-o-transition: all 0.50s;
	transition: all 0.50s;
}

.pos-optionholder .pos-checkbox:checked + .label:after {
    width: 2rem;
}


/* Start Checkbox */
.pos-checkbox {
	display:none;
}

.pos-checkbox:checked + .label {
	/*background: #F0F4C3;*/
}
.pos-checkbox:checked + .label:before {
	opacity: 0.5;
}
.pos-checkbox:checked + .label:after {
    /*width: 30px;*/
    opacity: 1;
}


/* End Checkbox */





/* Ripple Hover */
.hover-ripple {
	position:relative;
	overflow:hidden;
	transform:translate3d(0,0,0);
}
.hover-ripple:after{
	content:"";
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:999;
	transform:scale(0,0);
	opacity:.2;
	transition:0s;
}
.hover-ripple:hover:after{
	background-image:radial-gradient(circle,#000 10%,transparent 10.01%);
	background-repeat:no-repeat;
	background-position:50%;
	transform:scale(10,10);
	opacity:0;
	transition:transform 0.5s,opacity 1s;
	pointer-events:none;
}


/* START FLICKER EFFECTS */
@keyframes flickerAnimation {
  0%   { opacity:1; }
  50%  { opacity:0; }
  100% { opacity:1; }
}
@-o-keyframes flickerAnimation{
  0%   { opacity:1; }
  50%  { opacity:0; }
  100% { opacity:1; }
}
@-moz-keyframes flickerAnimation{
  0%   { opacity:1; }
  50%  { opacity:0; }
  100% { opacity:1; }
}
@-webkit-keyframes flickerAnimation{
  0%   { opacity:1; }
  50%  { opacity:0; }
  100% { opacity:1; }
}
.animate-flicker {
   -webkit-animation: flickerAnimation .5s infinite;
   -moz-animation: flickerAnimation .5s infinite;
   -o-animation: flickerAnimation .5s infinite;
    animation: flickerAnimation .5s infinite;
}
/* END FLICKER EFFECTS */

/* Ripple effect */
.click-ripple {
	background-position: center;
	transition: background 0.8s;
}
.click-ripple:hover {
	background: #FFEE58 radial-gradient(circle, transparent 1%, #FFEE58 1%) center/15000%;
}
.click-ripple:active {
	background-color: #FFA726;
	background-size: 100%;
	transition: background 0s;
}

.slick-next {
	right: 0 !important;
	z-index: 1 !important;
}
.slick-prev {
	left: 0 !important;
	z-index: 1 !important;
}
.slick-next,
.slick-prev {
	width: 2rem !important;
	height: 2rem !important;
}
.slick-prev:before, .slick-next:before {
	font-size: 2rem !important;
}


.square-blk:before {
	content: "";
	display: block;
	padding-top: 100%;
}

.wrap-blk {
	word-wrap: break-word;
}

.greyscale {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	-webkit-transition: filter 1s;
	transition: filter 1s;
}

.outofstock > div {
	opacity: 0.5;
}

.pos-course-items .ui-state-highlight {
	min-height: 120px;
}