/* ---------------------------------------------------------------------- */
/*	Font
/* ---------------------------------------------------------------------- */

@font-face {
    font-family: 'gelasio';
    src: url('theme/font/gelasio-bold-webfont.woff2') format('woff2'),
         url('theme/font/gelasio-bold-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;

}

@font-face {
    font-family: 'gelasio';
    src: url('theme/font/gelasio-italic-webfont.woff2') format('woff2'),
         url('theme/font/gelasio-italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: italic;

}

@font-face {
    font-family: 'gelasio';
    src: url('theme/font/gelasio-regular-webfont.woff2') format('woff2'),
         url('theme/font/gelasio-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}


@font-face {
    font-family: 'gelasio';
    src: url('theme/font/gelasio-medium-webfont.woff2') format('woff2'),
         url('theme/font/gelasio-medium-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;

}

@font-face {
    font-family: 'gibson';
    src: url('theme/font/gibson-bold-webfont.woff2') format('woff2'),
         url('theme/font/gibson-bold-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;

}

@font-face {
    font-family: 'gibson';
    src: url('theme/font/gibson-light-webfont.woff2') format('woff2'),
         url('theme/font/gibson-light-webfont.woff') format('woff');
    font-weight: 100;
    font-style: normal;

}

@font-face {
    font-family: 'gibson';
    src: url('theme/font/gibson-semibold-webfont.woff2') format('woff2'),
         url('theme/font/gibson-semibold-webfont.woff') format('woff');
    font-weight: 600;
    font-style: normal;

}

@font-face {
    font-family: 'gibson';
    src: url('theme/font/gibson-webfont.woff2') format('woff2'),
         url('theme/font/gibson-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

/* ---------------------------------------------------------------------- */
/*	Theme
/* ---------------------------------------------------------------------- */

.text-justify {
    text-align:left;
}

body {
	font-family: 'gelasio', sans-serif;
	color:#000;
    font-size: 16px;
}

h1, .h1 { font-size:30px; }
h2, .h2 { font-size:25px; }
h3, .h3 { font-size:21px; }
h4, .h4 { font-size:19px; }
h5, .h5 { font-size:16px; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family: 'gibson', serif;
}

h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	line-height: 1.3;
}

p {
    margin:0 0 24px 0;
}

a:hover {
	text-decoration:none;
}

.btn {
	padding-left:40px;
	padding-right:40px;
    font-size: 11px;
	line-height:28px;
	letter-spacing: 2px;
	font-weight:bold;
	-webkit-transition: all 500ms ease 0s;
	-moz-transition: all 500ms ease 0s;
	-ms-transition: all 500ms ease 0s;
	-o-transition: all 500ms ease 0s;
	transition: all 500ms ease 0s;
}

.btn-small {
	padding:10px 0;
    font-size: 11px;
	line-height:28px;
	letter-spacing: 2px;
	font-weight:bold;
	color: #888;
	-webkit-transition: all 500ms ease 0s;
	-moz-transition: all 500ms ease 0s;
	-ms-transition: all 500ms ease 0s;
	-o-transition: all 500ms ease 0s;
	transition: all 500ms ease 0s;
}

.btn-small:active, .btn-small:focus, .btn-small.active {
	background-image: none;
	outline: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.input-group .btn {
	padding-left:10px;
	padding-right:10px;
	min-width: 100px;
}


.btn-dark, .btn-dark:visited {
    color: #FFF;
    background-color: #1f1f1f;
    border-color: #1f1f1f;
}

.btn-dark:hover, .btn-dark:focus, .btn-dark:active, .btn-dark.active {
    color: #FFF;
    background-color: #1f1f1f;
    border-color: #1f1f1f;
}

.btn-facebook, .btn-facebook:visited {
    color: #FFF;
    background-color: #4267B2;
    border-color: #4267B2;
}

.btn-facebook:hover, .btn-facebook:focus, .btn-facebook:active, .btn-facebook.active {
    color: #FFF;
    background-color: #4267B2;
    border-color: #4267B2;
}

.btn-primary {
    color: #bf905b;
    background-color: transparent;
    border-color: #bf905b;
}

.btn-light, .btn-light:visited {
    color: #FFF;
	background-color: transparent;
	border-color: #FFF;
}

.btn-light:focus, .btn-light:hover, .btn-light:active, .btn-light.active {
    color: #1f1f1f;
    background-color: #FFF;
    border-color: #FFF;
}

.btn-dark.transparent, .btn-dark.transparent:visited {
    color: #1f1f1f;
    background-color: transparent;
    border-color: #1f1f1f;
}

.btn-dark.transparent:hover, .btn-dark.transparent:focus, .btn-dark.transparent:active, .btn-dark.transparent.active {
    color: #FFF;
    background-color: #1f1f1f;
    border-color: #1f1f1f;
}

hr.lg {
    margin-top: 46px;
    margin-bottom: 46px;
    border: 0;
    border-top: 1px solid #eee;
}

hr.lg.grey {
    border-top: 1px solid #CCC;
}

hr.darkgrey {
    border-top: 1px solid #666;
}

hr.xs {
	width:80px;
	margin-left:0;
	border-top: 1px solid #1f1f1f;
}

hr.white {
	border-top: 3px solid #FFFFFF;
}

hr.green {
	border-top: 3px solid #98C424;
}

hr.darkgreen {
	border-top: 3px solid #14AF94;
}

hr.violet {
	border-top: 3px solid #645F82;
}

hr.blu {
	border-top: 3px solid #0E4F71;
}

hr.lightblu {
	border-top: 3px solid #00BCCD;
}

hr.grey {
	border-top: 3px solid #E0DFE6;
}

hr.xs.white {
	border-top: 1px solid #FFF;
}

hr.xsc {
	width:80px;
	border-top: 1px solid #1f1f1f;
}

hr.xsc.white {
	border-top: 1px solid #FFF;
}

hr.vertical {
	border: 0;
	margin: 40px auto;
	border-left: 1px solid #666;
	height: 80px;
	width: 0px;
}

.hr-divider {
    position: relative;
    width: 100%;
    margin: 30px 0;
    text-align: center;
}
.hr-divider:before {
    position: absolute;
    top: 50%;
    left: 0;   
    display: block;
    content: " ";
    width: 100%;
    height: 1px;
    background: #EEE;
}
.hr-divider span {
    position: relative;
    z-index: 10;
    display: inline-block;
    line-height: 1;
    padding: 0 19px;
	background-color:#FFF;
}

.text-white { color: #FFF;  }
.text-black { color:#111; }
.text-lightgrey { color:#E3E3E3; }
.text-ellipsis { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }

.text-title { font-family: 'gibson', serif; }
.text-body { font-family: 'gelasio', sans-serif; }

.text-blu { color:#0E4F71; }
.text-lightblu { color:#00BCCD; }
.text-green { color:#98C424; }
.text-darkgreen { color:#14AF94; }
.text-violet { color:#645F82; }
.text-grey { color:#E0DFE6; }
.text-pink { color: #D9346E; }

.text-bold { font-weight: 700; }
.text-semibold { font-weight: 600; }
.text-thin { font-weight: 100; }

.text-big { font-size: 1.3em; }
.text-medium { font-size: 1.1em; }
.text-small { font-size: 0.9em; }

.text-btn-small { font-size: 11px; letter-spacing: 2px; font-weight:bold; }

.bg-grey { background-color:#E8E8E8; }
.bg-lightgrey { background-color:#F2F1F2; }
.bg-newlightgrey { background-color:#EEEEEE; }
.bg-white { background-color: #FFF; }
.bg-white-opacity { background-color:rgba(255,255,255,0.2); }
.bg-black { background-color:#1f1f1f; }
.bg-black-opacity { background-color:rgba(0,0,0,0.2); }
.bg-black-opacity-plus { background-color:rgba(0,0,0,0.7); }
.bg-green-gradient { background: linear-gradient(90deg, rgba(35,174,148,1) 0%, rgba(150,193,54,1) 100%); }

.bg-blu { background-color:#0E4F71; }
.bg-green { background-color:#98C424; }
.bg-darkgreen { background-color:#14AF94; }
.bg-violet { background-color:#645F82; }
.bg-lightblu { background-color: #00BCCD; }
.bg-lightblu-opacity { background-color:rgba(0,188,205,0.9); }

.static { position: static; }

.bg-black-gradient-top::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 400px;
	background: -moz-linear-gradient(top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.lh-sm { line-height: 1.5em; }

section { position:relative; }

section.xs { padding-top:10px; padding-bottom:10px; }
section.sm { padding-top:15px; padding-bottom:15px; }
section.md { padding-top:30px; padding-bottom:30px; }
section.lg { padding-top:60px; padding-bottom:60px; }
section.lgb { padding-bottom:60px; }
section.bg { padding:15px; }

.nav-inline > li {
    float:none;
    display:inline-block;
}

small, .small { font-size: 85%; line-height:1.5em; }

.pointer { cursor: pointer; }

.dropdown-menu {
	border: none;
	box-shadow: none;
	font-size: 85%;
}

.dropdown-menu > li > a {
    display: block;
    padding: 3px 0px;
    clear: both;
    font-weight: normal;
    line-height: 1.5;
    color: #666;
    white-space: nowrap;
}

.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
    text-decoration: none;
    color: #222;
    background-color: #FFF;
}

/* ---------------------------------------------------------------------- */
/*	Header / Primary Nav
/* ---------------------------------------------------------------------- */

#headersub { position: fixed; top:-100px; left:0; right: 0; opacity: 0; z-index: 999; transition: all .5s; }
#headersub.show { top:0; opacity:1; }

#header {
    padding: 30px 0;
}

#header:after {
    content:"";
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    height: 3px;
    background-color: #98C424;
}

.menu {
    list-style: none;
    padding: 10px 0;
    margin: 0;
    display: flex;
    justify-content: space-between;
}

.menu a {
    color: #14AF94;
    text-decoration:none;
    font-weight: bold;
}

.menu a:hover, .menu a:focus {
    color: #0F8873;
    text-decoration:none;
}

#headersub .menu li a { opacity: 0.6; }
#headersub .menu li a:hover { opacity: 1; }
#headersub .menu li.active a { opacity: 1; }



.primary-logo span { display: inline-block; }
.secondary-logo span { display: inline-block; }

.primary-logo, .secondary-logo { position: relative; z-index: 1; }

.primary-nav {
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background: rgba(0, 0, 0, 0.9);
	z-index: 12;
	text-align: center;
	padding: 150px 0 0 0;
	margin:0;
	overflow:auto;
	transition:opacity 0.4s;
	opacity:0;
	transform: translate3D(0,-100%,0);
}

.primary-nav-wrap {
	position:relative;
	height: 80px;
	width: 30px;
	margin:0;
    display: inline-block;
}

.primary-nav-trigger {
  position: absolute;
  top:0;
  bottom:0;
  z-index: 13;
  width: 100%;
  display:block;
  right:0;
}
.primary-nav-trigger .menu-icon {
  /* this span is the central line of the menu icon */
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  width: 30px;
  height: 2px;
  background-color: #FFF;
  -webkit-transition: background-color 0.3s;
  -moz-transition: background-color 0.3s;
  transition: background-color 0.3s;
  /* these are the upper and lower lines in the menu icon */
}
.primary-nav-trigger .menu-icon::before, .primary-nav-trigger .menu-icon:after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: #FFF;
  right: 0;
  -webkit-transition: -webkit-transform .3s, top .3s, background-color 0s;
  -moz-transition: -moz-transform .3s, top .3s, background-color 0s;
  transition: transform .3s, top .3s, background-color 0s;
}
.primary-nav-trigger .menu-icon::before {
  top: -7px;
}
.primary-nav-trigger .menu-icon::after {
  top: 7px;
}
.primary-nav-trigger .menu-icon.is-clicked {
  background-color: rgba(255, 255, 255, 0);
}
.primary-nav-trigger .menu-icon.is-clicked::before, .primary-nav-trigger .menu-icon.is-clicked::after {
  background-color: #FFF;
}
.primary-nav-trigger .menu-icon.is-clicked::before {
  top: 0;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}
.primary-nav-trigger .menu-icon.is-clicked::after {
  top: 0;
  -webkit-transform: rotate(225deg);
  -moz-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  -o-transform: rotate(225deg);
  transform: rotate(225deg);
}

body.navigation-is-open {
	overflow:hidden;
}

body.navigation-is-open .primary-nav {
	transform: translate3D(0,0,0);
	opacity:1;
}

body.navigation-is-open .menu-wrap {
	background-color: rgba(0,0,0,0.7);
}

.primary-nav a {
    color: #FFF;
}

.primary-nav a:hover, .primary-nav a:focus {
    color: #99C235;
    text-decoration: none;
}

.primary-nav .menu-nav ul > li > a {
	font-size: 24px;
	letter-spacing: 1px;
	font-family: 'gelasio', sans-serif;
}

.primary-nav .menu-nav ul > li > ul > li > a, .primary-nav a {
	font-size: 14px;
	letter-spacing: 0px;
	font-family: 'gelasio', sans-serif;
}


/* ---------------------------------------------------------------------- */
/*	Main
/* ---------------------------------------------------------------------- */

.background-01 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 50%;
    right: 0px;
    background-color: #F2F1F2;
}

.background-02 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 0px;
    right: calc(50% - 195px);
    background-color: #E8E8E8;
}

.background-03 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 50%;
    right: 0px;
    background-color: #00BCCD;
}

.background-04 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 50%;
    right: 0px;
    background-color: #0E4F71;
}

.background-05 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 0px;
    right: 50%;
    background-color: #14AF94;
}

.background-06 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 0px;
    right: 50%;
    background-color: #0E4F71;
}

.background-07 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 0px;
    right: 50%;
    background-color: #0E4F71;
}

.background-08 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 50%;
    right: 0px;
    background-color: #E8E8E8;
}

.background-09 {
    position: absolute;
    top: 0px;
    bottom:0px;
    left: 0;
    right: 50%;
    background-color: #645F82;
}

.modal-content {
	box-shadow: 0px 30px 30px rgba(0,0,0,0.12);
	border:0;
}

.modal-body {
    position: relative;
}

.modal-footer {
    padding: 30px 50px;
    text-align: right;
    border-top: 1px solid #e5e5e5
}

.modal.fade .modal-dialog {
	-webkit-transform: scale(0.9);
	-moz-transform: scale(0.9);
	-ms-transform: scale(0.9);
	transform: scale(0.9);
}

.modal.in .modal-dialog {
    -webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

.modal .close {
	position: absolute;
	right:0;
	top:0;
	width: 40px;
	height: 40px;
	background: url('site/theme/img/ico-close-black.png') center center no-repeat;
	opacity: .8;
}

.modal .close:hover, .modal .close:focus {
    opacity: 1;
}


.breadcrumb {
    background-color: transparent;
}

.breadcrumb > li {
	font-size: 11px;
	letter-spacing: 1px;
}

.breadcrumb > li + li:before {
    content: "/\00a0";
	padding: 0 10px;
}



/* ---------------------------------------------------------------------- */
/*	Shop
/* ---------------------------------------------------------------------- */

.product-view-tabs .nav-pills > li > a {
	color:#CCC;
	line-height: 28px;
	min-width:100px;
	display: inline-block;
}

.product-view-tabs .nav-pills > li > a:hover, .product-view-tabs .nav-pills > li > a:focus {
    color: #333;
    background-color: transparent;
}

.product-view-tabs .nav-pills > li.active > a, .product-view-tabs .nav-pills > li.active > a:hover, .product-view-tabs .nav-pills > li.active > a:focus {
    color: #333;
    background-color: transparent;
}

.product-view-tabs .nav-pills > li.active >a:after, .product-view-tabs .nav-pills > li > a.active:after, .product-view-tabs .nav-pills > li > a:hover:after {
	width: 40px;
}

.product-view-tabs .nav-pills > li > a:hover > .h2, .product-view-tabs .nav-pills > li > a:focus > .h2 {
    color: #333;
    background-color: transparent;
}

.product-view-tabs .nav-pills > li.active > a > .h2, .product-view-tabs .nav-pills > li.active > a:hover > .h2, .product-view-tabs .nav-pills > li.active > a:focus > .h2 {
    color: #333;
    background-color: transparent;
}

.product-view-tabs .nav-pills > li > a:after {
    content: '';
    display: block;
    width: 0;
    margin: auto;
    border-bottom: 1px solid #99C235;   
	transition: width 0.2s ease-out;
	transform: translateZ(0);
}

.product-view-tabs .nav-pills > li + li:before {
    content: "/\00a0";
}

.product-view-tabs .tab-content > .tab-pane {
		
}

.product-thumbs .item { 
	cursor:pointer; 
}

.wrap-slider-product {
	margin-bottom:30px;
}

#block-product {
	padding: 30px 30px;
	max-width:600px;
	margin:0 auto;
	text-align:center;	
}

#block-product h1 { font-size: 27px; }
#block-product #price_final { font-size: 27px; }

.shop-categories li:first-child, .shop-categories li:first-child a {
    margin-left: 0;
}

.shop-categories li a {
    margin: 0 18px;
	color:#888;
	font-size: 11px;
	letter-spacing: 1px;
	text-transform:uppercase;
	text-decoration: none;
	-webkit-transition: color 0.2s ease;
	transition: color 0.2s ease;
	
}

.shop-categories li.active a {
	color: #99C235;
}

.shop-categories li a:hover {
    color: #99C235;
}

.subscription-wrap {
	position: relative;
}

.subscription-wrap .box {
	position: relative; 
    border: 1px solid #CCC;
	color: #555;
	padding:0 48px 0 20px;
	line-height:40px;
	margin-top:-1px;
}

.quantity-wrap {
    position: relative;
    width: 100%;
    text-align: center;
    border-top: 1px solid #CCC;
	border-right: 1px solid #CCC;
    border-left: 1px solid #CCC;
    overflow: hidden;
	padding:0 20px;
}

#cart-list .quantity-wrap {
	border: none;
	width:auto;
	display:inline-block;
	padding:0;
}

.quantity-wrap .qty {
    display: inline-block;
    height: 38px;
    width: 40px;
    padding: 0;
    font-size: 14px;
    line-height: 40px;
    color: #555; 
    border: 0 none;
    text-align: center;
    background: none;
}

.quantity-wrap .quantity .qty-minus, .quantity-wrap .quantity .qty-plus {
    position: relative;
    display: inline-block;
    font-size: 12px;
    line-height: 40px;
    font-weight: normal;
    color: #888;
    width: 23px;
    height: 38px;
    text-align: center;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.quantity-wrap .quantity .qty-desc {
	float:left;
	font-size:14px;
	line-height:40px;
	color:#555;
	font-weight:bold;
}

.product-item {
	margin-bottom:0px;
}

.options-group .sod_select { margin-bottom:-1px; }


/* ---------------------------------------------------------------------- */
/*	Rating
/* ---------------------------------------------------------------------- */

.rating-input i { font-size: 1.2em; padding-right: 4px; }
.rating-input .rating-clear { display: none; }

.list-reviews .rating-input i { font-size: 1em; padding-right: 4px; color: #99C235; }
.list-reviews .row:last-child hr { display: none; }

.list-reviews .item {
	padding: 14px 28px;
	margin: 0 0 28px;
	border-left: 1px solid #eee;
}


/* ---------------------------------------------------------------------- */
/*	Light Gallery + Light Slider
/* ---------------------------------------------------------------------- */

.lightSlider { z-index: 0; }

.wrap-ls-product .lSSlideOuter .lSPager.lSpg { position:relative; }
.wrap-ls-product .lSSlideOuter .lSPager.lSpg > li a { background-color: #CCC; }
.wrap-ls-product .lSSlideOuter .lSPager.lSpg > li:hover a { background-color: #CCC; }
.wrap-ls-product .lSSlideOuter .lSPager.lSpg > li.active a { background-color: rgba(255, 255, 255, 0); border: 2px solid #CCC; }

.lSAction > .lSPrev {
    left: 30px;
}
.lSAction > .lSNext {
    right: 30px;
}

/* ---------------------------------------------------------------------- */
/*	Footer
/* ---------------------------------------------------------------------- */

#footer {
	color: #888;
	background-color: #1C1C1C;
}

#footer .btn-dark, #footer .btn-dark:visited {
    color: #FFF;
    background-color: #444;
    border-color: #444;
}

#footer .btn-dark:hover, #footer .btn-dark:focus, #footer .btn-dark:active, #footer .btn-dark.active {
    color: #FFF;
    background-color: #99C235;
    border-color: #99C235;
}

#footer input {
	color: #CCC;
}

#footer a {
    color: #FFF;
}

#footer a:hover, #footer a:focus {
    color: #a67641;
}


#footer-bottom {
	background:#151515;
	color:#666;
}

#footer-bottom hr {
	border-top: 1px solid #2D2D2D;
}

#footer-bottom a {
    color: #666;
}

#footer-bottom a:hover, #footer-bottom a:focus {
    color: #999;
}

#footer-bottom a.text-white {
    color: #FFF;
}

#footer-bottom a.text-white:hover, #footer-bottom a.text-white:focus {
    color: #a67641;
}
