/**
 * Theme Name: Softub
 * Theme URI: https://softub.com
 * Description: Softub corporate website theme.
 * Author: Slocum Studio
 * Author URI: https://slocumstudio.com/
 * Version: 1.0.4
 * License: GPL2+
 * License URI: http://www.gnu.org/licenses/gpl.html
 * Template: bb-theme
 */

/**
 * Beaver Builder
 */
.fl-menu a {
	line-height: inherit;
}

.fl-menu-mobile-flyout {
	color: #fff;
}

.fl-menu-mobile-flyout .menu .sub-menu {
	margin-left: 1.5em;
}

/**
 * Beaver Themer Header
 */
header.fl-builder-content {
	position: relative;
	z-index: 1001 !important; /* Note: Below WooCommerce/Beaver Builder elements, above Softub Tub Product Hero rows */
}

/**
 * Softub Overlay on Row Above
 *
 * Note: This CSS class can be used in conjunction with a negative top
 * margin in Beaver Builder to ensure a row appears as if it's an overlay
 * on the bottom of the row above this row.
 */
.fl-builder-edit .softub-overlay-on-bottom-of-row-above {
	position: relative;
	z-index: 1000; /* Note: Below WooCommerce/Beaver Builder elements */
}

.softub-overlay-on-bottom-of-row-above .fl-row-content-wrap {
	position: relative;
	z-index: 1000; /* Note: Below WooCommerce/Beaver Builder elements */
}

.fl-builder-edit .softub-overlay-on-bottom-of-row-above .fl-row-content-wrap {
	z-index: auto;
}


/**
 * The Softub Difference Slider - Slide Anything
 */
#softub_difference_slider {

}

#softub_difference_slider .owl-stage {
	height: 100%;

	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-moz-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	-moz-justify-content: space-around;
	-ms-justify-content: space-around;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-moz-align-content: flex-start;
	-ms-align-content: flex-start;
	-webkit-align-content: flex-start;
	align-content: flex-start;
	-ms-flex-pack: start;
}

#softub_difference_slider .owl-carousel .owl-item,
#softub_difference_slider .sa_hover_container {
	height: 100%;
}

#softub_difference_slider .sa_hover_container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

#softub_difference_slider .sa_hover_container > * {
	flex-grow: 1;

	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-moz-justify-content: center;
	-ms-justify-content: center;
	-webkit-justify-content: center;
	justify-content: center;
	-moz-align-content: center;
	-ms-align-content: center;
	-webkit-align-content: center;
	align-content: center;
}

#softub_difference_slider .sa_hover_container h3 {
	font-size: 2em;
	text-transform: uppercase;
}

#softub_difference_slider .sa_hover_container > * h3:first-child {
	margin-top: 0;
}

#softub_difference_slider .sa_hover_container p {
	font-size: 1.1em;
}

#softub_difference_slider .sa_hover_container > * p:last-child {
	margin-bottom: 0;
}

#softub_difference_slider.sa_owl_theme .owl-nav .owl-prev {
	left: 0;
}

#softub_difference_slider.sa_owl_theme .owl-nav .owl-next {
	right: 0;
}

#softub_difference_slider.sa_owl_theme .owl-dots {
	bottom: -40px !important;
}

.fl-builder-edit .fl-preview-medium #softub-difference-slider-module .white {
	max-width: 769px !important; /* Note: Beaver Builder default */
}

.fl-builder-edit .fl-preview-responsive #softub-difference-slider-module .white {
	max-width: 360px !important; /* Note: Beaver Builder default */
}


/**
 * WooCommerce
 */

/* Buttons */
.woocommerce #respond input#submit.alt.disabled,
.woocommerce #respond input#submit.alt.disabled:hover,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce #respond input#submit.alt:disabled:hover,
.woocommerce #respond input#submit.alt:disabled[disabled],
.woocommerce #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce a.button.alt.disabled,
.woocommerce a.button.alt.disabled:hover,
.woocommerce a.button.alt:disabled,
.woocommerce a.button.alt:disabled:hover,
.woocommerce a.button.alt:disabled[disabled],
.woocommerce a.button.alt:disabled[disabled]:hover,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt.disabled:hover,
.woocommerce button.button.alt:disabled,
.woocommerce button.button.alt:disabled:hover,
.woocommerce button.button.alt:disabled[disabled],
.woocommerce button.button.alt:disabled[disabled]:hover,
.woocommerce input.button.alt.disabled,
.woocommerce input.button.alt.disabled:hover,
.woocommerce input.button.alt:disabled,
.woocommerce input.button.alt:disabled:hover,
.woocommerce input.button.alt:disabled[disabled],
.woocommerce input.button.alt:disabled[disabled]:hover {
	background: #209ec7;
}

/* Beaver Themer - WooCommerce Product Images Module */
.woocommerce div.product .fl-module-fl-woo-product-images div.images,
.woocommerce #content div.product .fl-module-fl-woo-product-images div.images {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-moz-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	-moz-justify-content: space-around;
	-ms-justify-content: space-around;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-moz-align-content: flex-start;
	-ms-align-content: flex-start;
	-webkit-align-content: flex-start;
	align-content: flex-start;
	-ms-flex-pack: start;
}

.woocommerce div.product .fl-module-fl-woo-product-images div.images .flex-viewport,
.woocommerce #content div.product .fl-module-fl-woo-product-images div.images .flex-viewport {
	width: 80%;
	order: 2;
}

.woocommerce div.product .fl-module-fl-woo-product-images div.images .flex-control-thumbs,
.woocommerce #content div.product .fl-module-fl-woo-product-images div.images .flex-control-thumbs {
	width: 20%;
	order: 1;
}

.woocommerce div.product .fl-module-fl-woo-product-images div.images .flex-control-thumbs li,
.woocommerce #content .fl-module-fl-woo-product-images div.product .flex-control-thumbs li {
	width: 100%;
	max-width: 80px;
	float: none;
}

/* WooCommerce Variations */
.woocommerce div.product form.cart .variations td.label {
	padding-right: 0;
}

.woocommerce div.product form.cart .variations td.label label {
	line-height: 1em;
}

.woocommerce div.product form.cart .variations td,
.woocommerce-page div.product form.cart .variations td {
	padding-bottom: 0;
}

/* Beaver Themer - WooCommerce Add to Cart Module */
.fl-module-fl-woo-cart-button .variations td {
	width: 100%;
	padding: 0;
	display: block;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .variations td.value,
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart .variations td.value,
.fl-module-fl-woo-cart-button .variations td.value {
	padding-bottom: 0.25em;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .variations tr:last-of-type td.value,
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart .variations tr:last-of-type td.value,
.fl-module-fl-woo-cart-button .variations tr:last-of-type td.value {
	padding-bottom: 0;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .variations td.value .reset_variations,
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart .variations td.value .reset_variations,
.fl-module-fl-woo-cart-button .variations td.value .reset_variations {
	padding: 0;
	line-height: 1.75em;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .single_variation_wrap,
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart .single_variation_wrap,
.fl-module-fl-woo-cart-button form.cart .single_variation_wrap {
	padding-top: 1.5em;
}

.woocommerce div.product .woocommerce-variation-price .price,
.woocommerce div.product .woocommerce-variation-price span.price {
	padding: 0.25em;
	color: #fff;
	background: #209ec7;
	font-size: 28px;
	line-height: 1em;
	border-radius: 4px 4px 0 0;
	display: inline-block;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form),
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form),
.fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart {
	padding: 1.5em;
	background: #d9d9d9;
	border-radius: 4px;

	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-moz-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	-moz-justify-content: space-around;
	-ms-justify-content: space-around;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-moz-align-content: flex-start;
	-ms-align-content: flex-start;
	-webkit-align-content: flex-start;
	align-content: flex-start;
	-ms-flex-pack: start;
}

/* Note: As of 04/14/20 there isn't a better way to target these elements due to the way that WooCommerce handles the visibility on these elements */
.fl-module-fl-woo-cart-button .woocommerce-variation.single_variation[style*="display: block"] + .woocommerce-variation-add-to-cart,
.fl-module-fl-woo-cart-button .woocommerce-variation.single_variation[style*="display:block"] + .woocommerce-variation-add-to-cart {
	border-radius: 0 4px 4px 4px;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form) div.quantity,
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form) div.quantity,
.woocommerce div.product .woocommerce-variation-add-to-cart .fl-module-fl-woo-cart-button form.cart div.quantity,
.fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart .quantity,
.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .button,
.woocommerce div.product form.cart .fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart .button {
	/*float: none;*/
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form) div.quantity input.qty,
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form) div.quantity input.qty,
.woocommerce div.product .woocommerce-variation-add-to-cart .fl-module-fl-woo-cart-button form.cart div.quantity input.qty,
.fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart .quantity input.qty {
	margin-top: 2px;
	height: 45px;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .button,
.woocommerce div.product form.cart .fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart .button {
	padding: 0.5em 1em;
	font-size: 1.25em;
}

.woocommerce div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form) div.quantity,
.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form) div.quantity,
.woocommerce div.product .woocommerce-variation-add-to-cart .fl-module-fl-woo-cart-button form.cart div.quantity,
.woocommerce-page div.product .woocommerce-variation-add-to-cart form.cart div.quantity,
.fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart .quantity {
	margin-right: 15px;
}

/* WooCommerce Messages */
.woocommerce .woocommerce-message,
.woocommerce-page .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce-page .woocommerce-info {
	color: #fff;
	background: #209ec7;
	line-height: 2.5em;
}

.woocommerce .woocommerce-message a.button,
.woocommerce-page .woocommerce-message a.button,
.woocommerce .woocommerce-info a.button,
.woocommerce-page .woocommerce-info a.button {
	color: #fff;
	font-size: 1em;
	font-weight: bold;
	line-height: 1.75em;
}

.woocommerce .woocommerce-message a.button:hover,
.woocommerce-page .woocommerce-message a.button:hover,
.woocommerce .woocommerce-info a.button:hover,
.woocommerce-page .woocommerce-info a.button:hover {
	color: #fff;
	line-height: 1.75em;
}

/**
 * WooCommerce Variation Swatches
 */
.woo-variation-swatches-stylesheet-enabled .variable-items-wrapper .variable-item:not(.radio-variable-item) {
	margin-right: 6px;
}


/**
 * Zoho Forms
 *
 * Note: As of 05/04/20, we do not have a better way to target these forms other than the <form> HTML
 * element action attribute.
 */

/* Note: As of 05/04/20, Zoho uses this ID for all forms. */
#crmWebToEntityForm {
	width: auto !important; /* Note: Zoho sets the color CSS property directly on the element. */
}

form[action*="crm.zoho.com"] > br {
	display: none;
}

form[action*="crm.zoho.com"] table {
	width: auto !important; /* Note: Zoho sets the color CSS property directly on the element. */
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	color: inherit !important; /* Note: Zoho sets the color CSS property directly on the element. */
	font-size: 1em;
}

form[action*="crm.zoho.com"] td {
	font-family: inherit !important; /* Note: Zoho sets the font-family CSS property directly on the element. */
	font-size: inherit !important; /* Note: Zoho sets the font-family CSS property directly on the element. */
}

form[action*="crm.zoho.com"] td:empty {
	display: none;
}

form[action*="crm.zoho.com"] input,
form[action*="crm.zoho.com"] textarea,
form[action*="crm.zoho.com"] select {
	padding: 12px;
	font-size: 16px;
}

form[action*="crm.zoho.com"] input {
	height: 48px;
}

form[action*="crm.zoho.com"] textarea {
	min-height: 150px;
}

form[action*="crm.zoho.com"] input[type="submit"],
form[action*="crm.zoho.com"] input[type="reset"] {
	max-width: none;
	height: auto;
	padding: 15px 40px;
	color: inherit !important; /* Note: Zoho sets the color CSS property directly on the element. */
	font-size: 22px !important; /* Note: Zoho sets the font-size CSS property directly on the element. */
	border-radius: 15px;
	line-height: 18px;
}

form[action*="crm.zoho.com"] input[type="submit"] {
	color: #fff !important; /* Note: Zoho sets the color CSS property directly on the element. */
}

form[action*="crm.zoho.com"] input[type="reset"] {
	color: #7f7f7f;
	border: 1px solid;
}

/* Softub Brochure Zoho Form */
#softub-brochure-zoho-form form[action*="crm.zoho.com"] table {
	color: #000 !important; /* Note: Zoho sets the color CSS property directly on the element. */
	background-color: transparent !important; /* Note: Zoho sets the background-color CSS property directly on the element. */
}

#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=text],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=password],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=email],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=tel],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=date],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=month],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=week],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=time],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=number],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=search],
#softub-brochure-zoho-form form[action*="crm.zoho.com"] input[type=url] {
	width: 84%;
	min-width: 304px; /* Note: As of 06/23/21, this is the width of the reCAPTCHA field */
	color: #000;
	background: #fff;
}



/**
 * Responsive Structure
 */
@media (max-width: 1440px) {
	.woocommerce div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form),
	.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form),
	.fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart {
		padding: 1em;
	}

	.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .button,
	.woocommerce div.product form.cart .fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart .button {
		font-size: 1em;
	}
}

/* iPad Pro */
@media (max-width: 1024px) {
	/**
	 * The Softub Difference Slider - Slide Anything
	 */
	#softub-difference-slider-module .white {
		width: 100vw !important;
	}
}

@media (max-width: 992px) {
	/* Beaver Themer - WooCommerce Product Images Module */
	.woocommerce div.product .fl-module-fl-woo-product-images div.images .flex-viewport,
	.woocommerce #content div.product .fl-module-fl-woo-product-images div.images .flex-viewport {
		width: 100%;
		order: 1;
	}

	.woocommerce div.product .fl-module-fl-woo-product-images div.images .flex-control-thumbs,
	.woocommerce #content div.product .fl-module-fl-woo-product-images div.images .flex-control-thumbs {
		width: 100%;
		order: 2;
	}

	.woocommerce div.product .fl-module-fl-woo-product-images div.images .flex-control-thumbs li,
	.woocommerce #content .fl-module-fl-woo-product-images div.product .flex-control-thumbs li {
		width: 25%;
		max-width: none;
		float: left;
	}

	/* Beaver Themer - WooCommerce Add to Cart Module */
	.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .variations td.value,
	.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart .variations td.value,
	.fl-module-fl-woo-cart-button .variations td.value {
		padding-bottom: 0.5em;
	}

	.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .variations td.label label,
	.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart .variations td.label label,
	.fl-module-fl-woo-cart-button .variations td.label label {
		margin-bottom: 0;
	}

	.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .single_variation_wrap,
	.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart .single_variation_wrap,
	.fl-module-fl-woo-cart-button form.cart .single_variation_wrap {
		padding-top: 0.5em;
	}

	.woocommerce div.product .fl-module-fl-woo-cart-button form.cart .button,
	.woocommerce div.product form.cart .fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart .button {
		font-size: 1.5em;
	}

	/**
	 * The Softub Difference Slider - Slide Anything
	 */
	#softub_difference_slider .owl-item {
		max-width: 100vw;
		margin: auto;
	}

	#softub_difference_slider .sa_hover_container {
		height: auto;
		min-height: 0 !important;
	}

	#softub_difference_slider .sa_hover_container > * {
		flex-grow: 0;
	}

	#softub_difference_slider.sa_owl_theme .owl-dots {
		bottom: -20px !important;
	}
}

@media (max-width: 767px) {
	/* Beaver Themer - WooCommerce Add to Cart Module */
	.woocommerce div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form),
	.woocommerce-page div.product .fl-module-fl-woo-cart-button form.cart:not(.variations_form),
	.fl-module-fl-woo-cart-button .woocommerce-variation-add-to-cart {
		padding: 1em;
		-moz-justify-content: start;
		-ms-justify-content: start;
		-webkit-justify-content: start;
		justify-content: start;
	}

	/**
	 * The Softub Difference Slider - Slide Anything
	 */
	#softub-difference-slider-module .white {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	/**
	 * Softub Testimonials
	 */
	#softub-testimonials img[class*="wp-image-"],
	#softub-testimonials img.alignnone,
	#softub-testimonials img.alignleft,
	#softub-testimonials img.aligncenter,
	#softub-testimonials img.alignright {
		margin-left: auto;
		margin-right: auto;
		display: block;
		float: none;
	}
}