/*

Theme Name:		Storm Creek Distributor
Description:	Theme for the Storm Creek Distributor web store
Version:			1.0
Template: 		stormcreek
Author:			SG Web Partners
Author URI:		https://sgwebpartners.com
Domain Path:	/lib/languages
Text Domain:	stc

*/

/* = Core Classes
---------------------------------------------------- */

.video-block .play{
	background-color: rgba(0,0,0,0.3);
	z-index: 1;

	font-size: 70px;
	line-height: 50px;
	text-decoration: none;
	text-align: center;
	color: #fff;

	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
}

.video-block .play:hover,
.video-block .play:active,
.video-block .play:focus{
	color: #da4221;
}

.video-block .play::before{
	transform: translate(-50%, -50%);

	position: absolute;
	left: 50%;
	top: 50%;
}

/* = Site Header: Desktop
---------------------------------------------------- */

/* menu */

.site-header-desktop-menu-button div{
	padding-right: 0;
}

/* search */

.site-header-desktop-search{
	width: 32%;
}

/* icons */

.site-header-desktop-icon.account{
	position: relative;
}

.site-header-desktop-icon.account:hover{
	color: #ff5420;
}

.site-header-desktop-icon-menu{
	background-color: #fff;
	border: 1px solid #bfbfbf;
	padding: 28px 35px 32px;

	font-size: 14px;
	line-height: 28px;
	white-space: nowrap;
	text-align: left;
	color: #0d0d0d;

	position: absolute;
	display: none;
	left: -1px;
	top: 100%;
}

.site-header-desktop-icon.account:hover .site-header-desktop-icon-menu{
	display: block;
}

.site-header-desktop-icon-menu-title{
	margin-bottom: 6px;

	font-size: 18px;
	line-height: 32px;
	text-transform: uppercase;
	font-weight: 700;
}

.site-header-desktop-icon-menu li{
	list-style: none;
}

body:not(.checkout) .cart-opener{
	cursor: default;
}

.site-header-desktop-icon.cart{
	white-space: nowrap;
	width: 110px;
}

.site-header-desktop-icon.cart i::before{
	vertical-align: middle;
}

.site-header-desktop-icon.cart span{
	vertical-align: middle;
	display: inline-block;
	margin-left: 5px;

	font-size: 16px;
	font-weight: 500;
}

/* = Page Header
---------------------------------------------------- */

.page-header .page-header-text:not(:first-child){
	padding-top: 10px;
}

.page-header .page-header-text:not(:first-child)::before{
	display: none;
}

/* = Page Content
---------------------------------------------------- */

.page-content ul > li{
	padding-left: 23px;
}

.page-content ul > li::before{
	width: 10px;
	height: 10px;

	border-radius: 50%;
	background-color: #da4221;
	content: '';

	top: 10px;
	left: 0;
}

/* popups */

.page-content .popup-window-container ul > li::before{
	width: 9px;
	height: 9px;
	top: 9px;
}

/* = WooCommerce Styles by BizzyWeb
---------------------------------------------------- */

.woocommerce-in-hands-date:after {
    display: block !important;
    content: 'Applies to rush and decorated orders only' !important;
    font-size: 14px !important;
    line-height: 18px !important;
    margin-top: 6px !important;
}

.woocommerce-notification-email:after {
    display: block !important;
    content: 'To send to multiple people, put a comma between email addresses' !important;
    font-size: 14px !important;
    line-height: 18px !important;
    margin-top: 6px !important;   
}

.decoration-option-thread-color {
    margin-top: 10px;
}

.decoration-option-thread-color span {
    font-size: 14px;
}

.program-safe::before {
    background-color: #f27137;
    height: 20px;
    width: 20px;
    display: flex;
    content: "PS";
    color: #fff;
    font-size: 10px;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    padding: 2px;
}

.page.product .variation-matrix-table .color {
    padding-left: 5px !important;
}

.page.product .variation-matrix-table .row > div {
    font-size: 13px !important;
}

.product-swatch.size-24 {
    padding-left: 30px !important;
}

/* = Contact Forms
---------------------------------------------------- */

.gform_wrapper .enroll-now{
	max-width: 720px;
	margin: auto;
}

.gform_wrapper .enroll-now .gfield_label{
  display: none;
}

.gform_wrapper .enroll-now .gform_footer{
	text-align: center;
}

/* = Page Sections
---------------------------------------------------- */

.slider-section-item-upper-text{
	max-width: 920px;
	margin: auto;

	font-size: 24px;
	line-height: 39px;
	text-transform: uppercase;
	font-weight: 700;
}

.slider-section-item-upper-text a{
	text-decoration: none;
}

.slider-section-item-upper-text p,
.slider-section-item-upper-text ol,
.slider-section-item-upper-text ul{
	margin-bottom: 20px;
}

.slider-section-item-upper-text p:last-child,
.slider-section-item-upper-text ol:last-child,
.slider-section-item-upper-text ul:last-child{
	margin-bottom: 0;
}

.slider-section-item-title:not(:first-child){
	margin-top: 2px;
}

.slider-section-item-lower-text{
	max-width: 920px;
	margin: auto;

	font-size: 24px;
	line-height: 39px;
	text-transform: uppercase;
	font-weight: 700;
}

.slider-section-item-lower-text:not(:first-child){
	margin-top: 18px;
}

.slider-section-item-lower-text a{
	text-decoration: none;
}

.slider-section-item-lower-text p,
.slider-section-item-lower-text ol,
.slider-section-item-lower-text ul{
	margin-bottom: 20px;
}

.slider-section-item-lower-text p:last-child,
.slider-section-item-lower-text ol:last-child,
.slider-section-item-lower-text ul:last-child{
	margin-bottom: 0;
}

.slider-section-item-buttons:not(:first-child){
	margin-top: 12px;
}

.slider-section-item-quote-text{
	max-width: 920px;
	margin: auto;

	font-size: 24px;
	line-height: 39px;
	text-transform: uppercase;
	font-weight: 700;
}

.slider-section-item-quote-text:not(:first-child){
	margin-top: 50px;
}

.slider-section-item-quote-author{
	max-width: 920px;
	margin: auto;

	font-size: 20px;
	line-height: 20px;
}

.slider-section-item-quote-author:not(:first-child){
	margin-top: 18px;
}

/* = Company page
---------------------------------------------------- */

.page.company .page-content{
	max-width: 930px;
}

/* press releases */

.page.company .press-releases li{
	line-height: 23px;
	color: #000;
}

.page.company .press-releases li:not(:first-child){
	margin-top: 17px;
}

.page.company .press-releases .item-date{
	display: block;
	margin-bottom: 3px;
	color: #595959;
}

.page.company .press-releases .item-title{
	display: inline-block;
	font-weight: 700;
}

/* recent articles */

.page.company .recent-articles-title{
	padding: 7px 325px 7px 0;
	position: relative;
}

.page.company .recent-articles-title .button{
	transform: translateY(-50%);
	max-width: 300px;

	position: absolute;
	right: 0;
	top: 50%;
}

.page.company .recent-articles-inner{
	padding-top: 7px;
	margin: 0 -15px;
}

.page.company .recent-articles .item{
	width: 50%;
	padding: 0 15px;
	margin-bottom: 35px;
	float: left;
}

.page.company .recent-articles .item-inner{
	position: relative;
}

.page.company .recent-articles .item-thumb{
	background-position: center;
	background-size: cover;
	height: 360px;
}

.page.company .recent-articles .item-hover{
	padding: 20px;

	background-color: rgba(0,0,0,0.8);
	color: #fff;

	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
}

.page.company .recent-articles .item-hover.expanded{
	padding-bottom: 80px;
}

.page.company .recent-articles .item-hover-inner{
	max-height: 100%;
	overflow: hidden;
}

.page.company .recent-articles .item-date{
	margin-bottom: 8px;
	display: block;
}

.page.company .recent-articles .item-title{
	display: inline-block;
	margin-bottom: 0;

	text-decoration: none;
	color: inherit;
}

.page.company .recent-articles .item-excerpt{
	margin-top: 12px;
	display: none;

	font-size: 14px;
	line-height: 22px;
}

.page.company .recent-articles .item-link{
	transition: opacity 0.6s;
	opacity: 0;

	position: absolute;
	bottom: 20px;
	left: 20px;
}

.page.company .recent-articles .item-hover.expanded .item-link{
	opacity: 1;
}

/* recent videos */

.page.company .recent-videos{
	margin-top: 30px;
}

.page.company .recent-videos-inner{
	padding-top: 14px;
	margin: 0 -15px;
}

.page.company .recent-videos .item{
	width: 50%;
	padding: 0 15px;
	margin-bottom: 35px;
	float: left;
}

.page.company .recent-videos .item:nth-child(2n+1){
	clear: left;
}

.page.company .recent-videos .item-title{
	margin-bottom: 0;
	margin-top: 25px;
}

/* case studies */

.page.company .case-studies{
	margin-top: 20px;
}

.page.company .case-studies-inner{
	padding-top: 22px;
	margin: 0 -10px;
}

.page.company .case-studies .item{
	width: 25%;
	padding: 0 10px;
	margin-bottom: 25px;
	float: left;
}

.page.company .case-studies .item:nth-child(4n+1){
	clear: left;
}

/* contacts */

.page.company .bottom-contacts{
	margin-top: 40px;

	-webkit-align-items: stretch;
	align-items: stretch;

	display: -webkit-flex;
	display: flex;
}

.page.company .bottom-contacts-left,
.page.company .bottom-contacts-right{
	background-color: #f2f2f2;
	padding: 40px 30px;
	width: 32.258065%;
}

.page.company .bottom-contacts-right{
	line-height: 24px;
}

.page.company .bottom-contacts-central{
	width: 35.483871%;
	padding: 0 15px;
}

.page.company .bottom-contacts-image:not(:first-child){
	margin-top: 15px;
}

.page.company .bottom-contacts-image img{
	width: 100%;
}

.page.company .bottom-contacts h2{
	margin-bottom: 20px;
}

.page.company .bottom-contacts p,
.page.company .bottom-contacts ol,
.page.company .bottom-contacts ul{
	margin-bottom: 20px;
}

.page.company .bottom-contacts p:last-child,
.page.company .bottom-contacts ol:last-child,
.page.company .bottom-contacts ul:last-child{
	margin-bottom: 0;
}

/* = Registration Page
---------------------------------------------------- */

.page.user-form .registration-form{
	max-width: 720px;
	margin: auto;
}

.page.user-form .registration-form .gform_wrapper{
	margin-bottom: 0;
}

.page.user-form .registration-form .validation_error{
	text-align: center;
}

.page.user-form .registration-form .gfield.show-label .gfield_label{
	margin-bottom: 2px;
	font-size: inherit;
}

.page.user-form .registration-form .gfield:not(.show-label) .gfield_label{
	display: none;
}

.page.user-form .registration-form .gform_confirmation_message{
	text-align: center;
	margin-bottom: 0;
}

.page.user-form .registration-form .gform_button{
	min-width: 200px;
}

/* = Landing - Register page
---------------------------------------------------- */

.page.landing-register .page-content{
	text-align: center;
	padding: 60px 0;
}

.page.landing-register .page-content .wrap{
	max-width: 1220px;
}

.page.landing-register .top-section{
	padding-top: 20px;

	display: -webkit-flex;
	display: flex;
}

.page.landing-register .top-section-column{
	padding: 0 20px;
	width: 50%;
}

.page.landing-register .bottom-section:not(:first-child){
	padding-top: 60px;
}

/* = Landing - Rep Portal page
---------------------------------------------------- */

/* header */

.page.landing-rep-portal .page-header-outer{
	height: 540px;
}

.page.landing-rep-portal .page-header-title{
	font-size: 60px;
	font-weight: 700;
}

/* content */

.page.landing-rep-portal .page-content{
	padding-top: 80px;
}

.page.landing-rep-portal .page-content a{
	text-decoration-color: #ccc;
	color: #000;
}

/* = Landing - Enroll page
---------------------------------------------------- */

/* header */

.page.landing-enroll .page-header-outer{
	height: 460px;
}

/* content */

.page.landing-enroll .page-content{
	padding-bottom: 40px;
	padding-top: 50px;
}

.page.landing-enroll .page-content .wrap{
	max-width: 1220px;
}

/* top */

.page.landing-enroll .top-section-left{
	padding-top: 50px;
	line-height: 23px;

	width: 43.220339%;
	float: left;
}

.page.landing-enroll .top-section-left h1{
	line-height: 42px;
}

.page.landing-enroll .top-section-left p,
.page.landing-enroll .top-section-left ol,
.page.landing-enroll .top-section-left ul{
	margin-bottom: 15px;
}

.page.landing-enroll .top-section-left p:last-child,
.page.landing-enroll .top-section-left ol:last-child,
.page.landing-enroll .top-section-left ul:last-child{
	margin-bottom: 0;
}

.page.landing-enroll .top-section-right{
	background-color: #f2f2f2;
	padding: 40px 50px;

	text-align: center;
	line-height: 25px;

	width: 52.542373%;
	float: right;
}

.page.landing-enroll .top-section-right p,
.page.landing-enroll .top-section-right ol,
.page.landing-enroll .top-section-right ul{
	margin-bottom: 20px;
}

.page.landing-enroll .top-section-right p:last-child,
.page.landing-enroll .top-section-right ol:last-child,
.page.landing-enroll .top-section-right ul:last-child{
	margin-bottom: 0;
}

.page.landing-enroll .disclaimer{
	font-size: 12px;
	line-height: 19px;
	opacity: 0.5;
}

/* bottom */

.page.landing-enroll .bottom-section:not(:first-child){
	padding-top: 40px;
}

/* = Site Footer
---------------------------------------------------- */

.site-footer-inner{
	padding-bottom: 35px;
	position: relative;
}

.site-footer-left{
	padding-bottom: 68px;
}

/* logos */

.site-footer-logos{
	line-height: 0;
	font-size: 0;

	position: absolute;
	bottom: 0;
	left: 0;
}

.site-footer-logos span{
	background-image: url(lib/images/footer-logos.png);
	vertical-align: middle;
	display: inline-block;
}

.site-footer-logos span.asi{
	background-position: 0 0;
	margin-right: 29px;
	height: 41px;
	width: 68px;
}

.site-footer-logos span.ppai{
	background-position: -69px 0;
	margin-right: 26px;
	height: 45px;
	width: 69px;
}

.site-footer-logos span.sage{
	background-position: -139px 0;
	height: 48px;
	width: 106px;
}

/* copyrights */

.copyrights{
	margin-top: 25px;
}

/* = Side Panel
---------------------------------------------------- */

.side-panel{
	display: none;
	width: 340px;

	border-width: 1px 0 1px 1px;
	border-color: #cecece;
	border-style: solid;

	bottom: auto;
	right: 0;
}

.side-panel-title{
	padding: 22px 20px 10px;

	-webkit-justify-content: space-between;
	justify-content: space-between;

	display: -webkit-flex;
	display: flex;

	background-color: transparent;

	line-height: 30px;
	text-align: left;
	color: inherit;

	position: static;
	right: auto;
	left: auto;
	top: auto;
}

.side-panel-title-text{
	font-size: 18px;
}

.side-panel-title-link{
	display: inline-block;
	cursor: pointer;

	font-size: 14px;
	text-transform: none;
	text-decoration: underline;
	font-weight: 300;
	color: #da4221;
}

.side-panel-title-link:hover{
	text-decoration: none;
	color: #ff5420;
}

.side-panel-inner{
	position: relative;
	bottom: auto;
	right: auto;
	left: auto;
	top: auto;
}

.side-panel-inner::before{
	display: none;
}

.side-panel-page{
	position: relative;
	bottom: auto;
	right: auto;
	left: auto;
	top: auto;
}

/* cart */

.side-panel-cart,
.side-panel-cart-outer{
	position: relative;
	bottom: auto;
	right: auto;
	left: auto;
	top: auto;
}

.side-panel-cart-outer{
	bottom: auto !important;
	max-height: 500px;
}

.side-panel-cart-inner{
	padding-bottom: 0;
	padding-top: 6px;
}

.side-panel-cart-bottom{
	padding: 15px 20px 20px;
	position: relative;
}

.side-panel-cart-bottom::before{
	height: 1px;

	background-color: #d8d8d8;
	content: "";

	position: absolute;
	right: 20px;
	left: 20px;
	top: 14px;
}