/*************************************
ALL SITE GENERIC STYLES
*************************************/
* { outline: 0 !important; }
.push { clear:both;}
.tl {text-align: left;}
.tc {text-align: center;}
.tr {text-align: right;}
.uc {text-transform: uppercase;}
.lc { text-transform: lowercase; }
.underline { text-decoration: underline; }
.center {margin:0 auto; display:block;float: none;}
.outerContainer { overflow: auto; width: 100%; display: block; }
.innerContainer { max-width: 1280px; overflow: auto; display: block; margin: 0 auto; padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
.contentContainer { max-width: 1000px; overflow: auto; display: block; margin: 0 auto; padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
.inner-content { max-width: 1000px; margin: 0 auto !important; padding-left: 20px; padding-right: 20px; box-sizing: border-box;}
@media screen and (min-width: 768px) {
	p, ul, ol { font-size: 14pt; }
}
@media screen and (max-width: 767px) {
	p, ul, ol { font-size: 12pt; }
}
p { margin-top: 0; margin-bottom: 15px; }
.flexLeft { display: flex; flex-wrap: wrap; }
.flexCenter { display: flex; justify-content: center; flex-wrap: wrap; }
body { overflow-x: hidden; }
body ul, body ol { margin-left: 0; }
.wp-block-buttons { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }

/*************************************
ITA SPECIFIC STYLES
*************************************/
h1,h2,h3,h4,h5,h6 { font-family: 'Raleway', sans-serif; font-weight: 900; text-transform: uppercase; line-height: 1.1; width: 100%; }
a,p,ol,ul,li,button,td,th,#text,.woocommerce-info { font-family: 'Raleway', sans-serif; font-weight: 400; line-height: 1.3; }
a:link, a:visited { transition: all 0.25s ease-in-out; text-decoration: none; color: #1e313a; }
a:hover { color: #111; }
.white { color: #fff; }
.whiteBG { background: #fff; }
.button, .woocommerce-MyAccount-navigation-link a, a.wp-block-button__link, #gform_submit_button_1 { font-family: 'Raleway', sans-serif !important; font-size: 18pt !important; color: #fff !important; padding: 15px 25px !important; text-align: center !important; cursor: pointer; background-size: 100% 300% !important; background-position: 99% 0 !important; background: linear-gradient(to bottom, #1e313a 45%, #b21e28 55%); border: none !important; border-radius: 0 !important; transition: all 0.25s ease-in-out; line-height: 1.1 !important; font-weight: 900; text-transform: uppercase; }
.button:hover, .button.current, .woocommerce-MyAccount-navigation-link a:hover, a.wp-block-button__link:hover, .is-active a, #gform_submit_button_1:hover { background-position: 0 85% !important; }
.woocommerce .button:not(.shopFilter) { background: #1e313a !important; }
.woocommerce .button:not(.shopFilter):hover { background: #b21e28 !important; }
.navy { color: #1e313a; }
.yellow { color: #b21e28; }
.gold { color: #ca9b12; font-weight: bold; }
.entry-content { background: #fff; padding: 60px 0; }
.hentry, .entry-content { margin: 0 !important; }
.titleBox { padding: 100px 30px; }
h1 { text-align: center; text-shadow:2px 2px 5px #111; font-size: 40pt !important; color: #fff; font-family: serif; font-family: 'PT Serif', serif; text-transform: none; }
@media screen and (max-width: 650px) {
	h1 { font-size: 28pt !important; }
	.woocommerce .button:not(.shopFilter) { font-size: 14pt !important; }
}

/*************************************
HEADER AND NAVIGATION
*************************************/
.custom-logo-link, .custom-logo { display: block !important; }
#masthead { position: absolute; z-index: 2; padding: 0 20px; width: 100%; }
#innerHeader { margin: 0 auto; display: flex; align-items: center; justify-content: center; }
.site-branding { max-width: 100px; width: 100%; float: left; padding: 10px 20px 10px 0; box-sizing: border-box; }
#site-navigation { float: right; width: calc(100% - 100px); padding: 0; }
#primary-menu { display: flex; align-items: center; justify-content: flex-end; float: right; position: relative; }
#primary-menu li { box-sizing: border-box; margin: 0 auto; text-align: center; }
#primary-menu li a { transition: all 0.25s ease-in-out; font-size: 11pt; padding: 25px 10px; text-transform: uppercase; color: #111; font-weight: bold; }
@media screen and (min-width: 768px) {
	#primary-menu li a::after { content: "-"; position: absolute; bottom: 25px; left: 10px; height: 2px; background: #fff; width: 0; color: transparent; transition: all 0.25s ease-in-out; text-shadow: none !important; }
	#primary-menu li a:hover::after, #primary-menu li.current-menu-item a::after, #primary-menu .current-menu-parent a::after { background: #b21e28; width: calc(100% - 20px); }
}
@media screen and (max-width: 767px) {
	#primary-menu li a { color: #fff; }
	#primary-menu li.current-menu-item a, #primary-menu li a:hover { color: #b21e28; font-weight: bold; }
	#masthead { z-index: 9999999999999; }
	#innerHeader { flex-direction: column; }
	#site-navigation { padding: 0; }
	#primary-menu { background: rgba(22,22,22,0.95); padding: 10px 15px; display: block; float: none; }
	.menu-toggle { -webkit-transform: translate3d(0,0,0); text-align: left; color: #fff; position: fixed; top: 0; left: 0; border: none; border-radius: 0; padding: 8px; font-size: 24pt; text-shadow: 0 0 3px #000; font-family: 'Raleway', sans-serif; cursor: pointer; z-index: 999999999999999999; width: 40px; background: transparent; }
	.menu-toggle:before { content: "\2630"; margin-right: 11px; }
	.toggled .menu-toggle:before { content: "\2573" !important; margin-right: 10px; }
	#masthead .menu-navigation-container { left: 0; top: -400px; position: fixed; width: 100%; background: transparent; padding: 0; z-index: 999998; transition: all 0.25s ease-in-out; }
	#primary-menu li { float: none; padding: 0; border-bottom: 1px solid #bbb; width: 100%; text-align: left; }
	#primary-menu li:last-child { border-bottom: none; }
	#masthead .toggled .menu-navigation-container { left: 0; top: 0; bottom: 0; overflow-y: scroll; }
	#primary-menu li a { padding: 10px; text-align: center; }
}

/*************************************
FOOTER
*************************************/
#footer { background: #1e313a; }
#innerFooter { padding: 5px 0; display: flex;  justify-content: space-between; align-items: center; flex-wrap: wrap; }
#copyright, #credit { padding: 5px 20px; }
#copyright p { margin-bottom: 0; font-size: 12pt; color: #fff; text-transform: uppercase; }
#credit img { width: 50px; }
#credit a { display: block; }
@media screen and (max-width: 530px) {
	#innerFooter { justify-content: center; }
	#copyright p { text-align: center; }
}

/*************************************
HOME/SHOP
*************************************/
.home .entry-content { display: none; }
#filters { background: #1e313a; overflow: visible; }
#filters .innerContainer { display: flex; flex-wrap: wrap; overflow: visible; align-items: center; justify-content: center; padding: 0; }
#theShop { padding: 50px 20px; margin: 0 auto; width: 100%; max-width: 1000px; display: flex; flex-wrap: wrap; }
@media screen and (max-width: 950px) {
	#filters .button { font-size: 14pt !important; padding: 10px 15px !important; }
}
@media screen and (max-width: 650px) {
	#filters .button { font-size: 12pt !important; }
}
.results { text-align: center; width: 100%; }
#theShop .product { width: 25%; padding: 10px; cursor: pointer; }
#theShop .product img { position: relative; transition: all 0.25s ease-in-out; bottom: 0; width: 100%; height: 250px; object-fit: cover; }
#theShop .product:hover img { bottom: 5px; }
#theShop .product h2 { margin: 0; font-size: 12pt; }
.cdsPrice { margin: 0; text-align: center; padding-top: 8px; }
@media screen and (max-width: 900px) {
	#theShop .product { width: 33.33%; }
}
@media screen and (max-width: 650px) {
	#theShop .product { width: 50%; }
}

/*************************************
PRODUCT POPUP STYLES
*************************************/
#buyContainer { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.6); z-index: 999999999999; } 
#buyContainer .innerContainer { padding: 0; position: fixed; left: 100px; top: 75px; right: 100px; bottom: 75px; overflow-y: auto; }
#close { position: absolute; top: 0; right: 0; font-size: 20pt; cursor: pointer; margin: 0; z-index: 999999; transition: all 0.25s ease-in-out; color: #fff; background: #1e313a; padding: 5px; margin: 0; line-height: 1.0; border-bottom-left-radius: 50%; }
#close:hover { color: #b21e28; }
#buyContainer img { width: 235px; height: 225px; object-fit: cover; padding: 10px; cursor: pointer; }
.info { background: #fff; display: flex; justify-content: center; flex-wrap: wrap; border: 10px solid #1e313a; border-bottom: none; align-items: center; }
.details { width: calc(100% - 235px); padding: 15px; display: flex; flex-direction: column; justify-content: center; }
.details ul { margin-bottom: 0; }
.details h2 { margin-top: 0; margin-bottom: 20px; color: #1e313a; line-height: 1.0; }
.sizes { background: #1e313a; width: 100%; overflow: auto; display: flex; justify-content: center; flex-wrap: wrap; padding: 5px; }
.sizeBox { background: #fff; padding: 10px; width: calc(14.285% - 10px); display: flex; flex-grow: 1; cursor: pointer; transition: all 0.25s ease-in-out; margin: 5px; }
.size, .exclusive { display: flex; flex-grow: 1; flex-direction: column; align-items: center; justify-content: center; }
.sizeBox { position: relative; }
.sizeBox:hover { background: #b21e28; }
.sizeName, .sizeInfo { color: #1e313a; text-transform: uppercase; text-align: center; margin: 0; }
.sizeInfo { font-size: 12pt; }
.sizePrice { color: #111; font-size: 14pt; font-weight: bold; text-align: center; margin: 0; line-height: 1.0; }
.addToCartMessage { padding: 20px 10px; text-align: center; color: #fff; margin-bottom: 0; }
.addToCartMessage a { color: #b21e28; }
.addToCartMessage a:hover { color: #fff; }
@media screen and (max-width: 950px) {
	.sizeBox { width: calc(33.33% - 10px); }
	#buyContainer .innerContainer { left: 50px; right: 50px; top: 50px; bottom: 50px; }
}
@media screen and (max-width: 675px) {
	.info { flex-direction: column; align-items: center; justify-content: center; }
	.details { width: 100%; }
	.info h2, .info p { text-align: center; }
}
@media screen and (max-width: 700px) {
	#buyContainer .innerContainer { left: 0; right: 0; top: 0; bottom: 0; }
	#close { position: fixed; top: 0; right: 0; }
}
#imgContainer { position: fixed; top: 0; right: 0; left: 0; bottom: 0; display: flex; align-items: center; justify-content: center; background: #fff; z-index: 999999999999999; background: rgba(22,22,22,0.7); cursor: pointer; }
#imgContainer img { height: 90vh; object-fit: contain; }
#quantityField { width: 100%; background: #fff; margin: 5px; font-family: 'Raleway', sans-serif; color: #404041; text-align: center; padding: 5px; }
#quantity { font-family: 'Raleway', sans-serif; text-align: center; border: 1px solid #404041; border-radius: 0; max-width: 200px; width: 100%; }

/*************************************
ACCOUNT PAGE
*************************************/
.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content { width: 100% !important; float: none !important; }
#customer_login, .u-columns { display: flex; }
.u-column1, .u-column2 { width: 50%; padding: 10px 20px; display: flex; flex-direction: column; justify-content: center; text-align: center; }
.woocommerce label { width: 100%; display: block; padding-bottom: 4px; }
.woocommerce input:not(#rememberme), .woocommerce .select2-selection { width: 100%; background: #1e313a; color: #fff; font-family: 'Raleway', sans-serif; border: none; }
.woocommerce input:not(#rememberme)::placeholder, .woocommerce .select2-selection__rendered { color: #fff !important; }
.woocommerce label.woocommerce-form-login__rememberme { padding-bottom: 15px; }
.woocommerce-ResetPassword { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.cart-empty, .return-to-shop { text-align: center; }
.woocommerce-MyAccount-navigation-link--downloads { display: none; }
.woocommerce-MyAccount-navigation ul { padding: 0 0 30px; margin: 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; list-style-type: none; }
.woocommerce-MyAccount-navigation-link a { display: block; }
.woocommerce-MyAccount-content { text-align: center; }
fieldset { font-family: 'Raleway', sans-serif; margin-bottom: 20px; }
.woocommerce-MyAccount-content .woocommerce-message { display: flex; flex-direction: column; align-items: center; justify-content: center; font-family: 'Raleway', sans-serif; }
.woocommerce-MyAccount-content .woocommerce-message .button { margin-bottom: 15px !important; }
@media screen and (max-width: 1000px) {
	.woocommerce-MyAccount-navigation-link a { font-size: 14pt !important; padding: 10px 15px !important; }
}
@media screen and (max-width: 650px) {
	#customer_login, .u-columns { flex-direction: column; }
	.u-column1, .u-column2 { width: 100%; padding: 10px 0; }
}
.woocommerce-message { border-top-color: #1e313a; font-family: 'Raleway', sans-serif; }
.woocommerce-message::before { color: #1e313a; }

/*************************************
SINGLE PRODUCT PAGE
*************************************/
.single-product #buyContainer, .single-product #buyContainer .innerContainer { position: initial; background: #fff; }
.single-product > #buyContainer { display: none; }
.single-product .inner-content { max-width: 1280px; }
.single-product #close { display: none; }
#singleProductButtons { margin-top: 30px; }
#singleProductButtons .button { margin: 5px !important; }
.single-product .info { border: none; }
.single-product .innerContainer { max-width: 1000px; }
.description ul, .description p { margin-bottom: 20px; }
.description a { font-weight: bold; text-decoration: underline; color: #1e313a !important; }
.description a:hover { color: #000 !important; }

/*************************************
WOOCOMMERCE GARBAGE
*************************************/
.woocommerce-info { border: none !important; border-radius: 10px !important; }
.woocommerce-info::before { color: #1e313a !important; }

/*************************************
CONTACT PAGE
*************************************/
#gform_wrapper_1 .gfield { width: 100%; margin: 0 0 10px; padding: 0 8px; clear: none; float: left; }
#gform_wrapper_1 input:not(.button), #gform_wrapper_1 textarea { width: 100% !important; background: #404041; border: none; border-radius: 0; color: #fff; }
#field_1_1, #field_1_2, #field_1_3 { width: 33.33% !important; }
#gform_submit_button_1 { margin: -30px auto 0 !important; display: block; }
#gform_confirmation_message_1 p { background: #404041; color: #fff; margin: 0; padding: 20px; }
@media screen and (max-width: 641px) {
	#field_1_1, #field_1_2, #field_1_3 { width: 100% !important; }
}
.gform_description { text-align: center; font-family: 'Raleway', sans-serif; padding-bottom: 20px; display: block; }

/*************************************
FORMAT TABLE OUTPUT
*************************************/
#reportTable { background: #222; border-spacing: 2px; text-align: left; }
#reportTable td, #reportTable th { background: #fff; padding: 4px; }
#reportTable th { font-weight: bold; background: #b21e28; }
#reportTable tr:nth-of-type(odd) td { background: #f2f2f2; }