/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

:root {
	interpolate-size: allow-keywords;
	
	--fs-color-success-darker: color-mix(in srgb, var(--fs-color-success) 50%, #000000);
	--fs-color-success-lighter: color-mix(in srgb, var(--fs-color-success) 50%, #ffffff);
	--fs-100: clamp(0.8rem, 0.165vw + 0.759rem, 0.891rem);
	--fs-200: clamp(1rem, 0.341vw + 0.915rem, 1.188rem);
	--fs-300: clamp(1.25rem, 0.605vw + 1.099rem, 1.583rem);
	--fs-400: clamp(1.563rem, 0.996vw + 1.314rem, 2.11rem);
	--fs-500: clamp(1.953rem, 1.563vw + 1.562rem, 2.813rem);
	--fs-600: clamp(2.441rem, 2.378vw + 1.847rem, 3.749rem);
	--fs-700: clamp(3.052rem, 3.538vw + 2.167rem, 4.998rem);
}

body {
	
	main, footer, .mfp-content {
		font: normal normal normal var(--fs-200)/1.5 Asap, sans-serif, system-ui;
		
		:is(h1, h2, h3, h4, h5, h6, p, ul, ol, li, button:not(.toggle), .button:not(.icon)) {margin-block: 0;}
		:is(p, ul, ol, button:not(.toggle), .button:not(.icon)):has(+ :is(h1, h2, h3, h4, h5, h6)) {margin-block-end: 2em;}
		:is(h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote, button:not(.toggle), .button:not(.icon)):has(+ :is(p, ul, ol, blockquote, button, .button)) {margin-block-end: 0.75em;}
		
		:is(ul, ol):not(:has([class])) {
			padding-inline-start: 1.75em;
			
			li, .col-inner & li {
				margin-inline: 0px;
			}
			
		}

		h1 {font-size: var(--fs-400);}
		h2 {font-size: var(--fs-300);}
		h3 {font-size: var(--fs-300);}
		h4 {font-size: var(--fs-200);}
		h5 {font-size: var(--fs-200);}
		h6 {font-size: var(--fs-100);}

		.fs-100 :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {font-size: var(--fs-100);}
		.fs-200 :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {font-size: var(--fs-200);}
		.fs-300 :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {font-size: var(--fs-300);}
		.fs-400 :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {font-size: var(--fs-400);}
		.fs-500 :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {font-size: var(--fs-500);}
		.fs-600 :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {font-size: var(--fs-600);}
		.fs-700 :is(h1, h2, h3, h4, h5, h6, p, ul, ol) {font-size: var(--fs-700);}
		
	}
	
}

.gform_wrapper {
	--gf-form-gap-y: 20px !important;
	--gf-color-primary: var(--fs-color-secondary) !important;
	--gf-color-primary-darker: color-mix(in srgb, var(--gf-color-primary), #000 20%) !important;
	--gf-color-primary-lighter: color-mix(in srgb, var(--gf-color-primary), #000 20%) !important;
	
	.gform-button--width-full {
		width: 100% !important;
	}
	
	.gform_required_legend {
		display: none;
	}
	
	legend, label:not(.gform-field-label--type-sub) {
		font-size: var(--fs-200) !important;
	}
	
}

html {
	margin-right: 0 !important;
	overflow-y: scroll !important;
}

/*BEGIN - Flatsome fixes*/

#customer_details {
	display: grid;
	grid: auto / 100%;
	place-content: start;
	gap: 1em;
	
	& > .clear:nth-child(2),
	.woocommerce-billing-fields,
	.woocommerce-billing-fields__field-wrapper,
	.woocommerce-shipping-fields__field-wrapper {
		display: grid;
		grid: auto / 100%;
		place-content: start;
		gap: 1em;
	}
	
	.woocommerce-billing-fields__field-wrapper,
	.woocommerce-shipping-fields__field-wrapper {

		> * {
			margin: 0 !important;
		}

		input, select, textarea {
			margin: 0 !important;
		}

		.form-row-first, .form-row-last {
			float: unset;
			width: unset;
		}
		
	}
	
}

.woocommerce-ordering select {
	margin: 0 !important;
}

.checkout-sidebar {
	display: grid;
	grid: auto / 100%;
	place-content: start;
	gap: 1.5em;
}

.shop-page-title .page-title-inner {
	min-height: 80px;
}

.post_comments {
	display: none;
}

.balance {
	text-wrap: balance;
}

.product-small, .product-small {
	font-size: var(--fs-100);
	
	.product-title {
		font-size: var(--fs-100);
	}
	
	.price-wrapper .price {
		font-size: var(--fs-200);
	}
	
}

.woocommerce-grouped-product-list {
	.button {
		font-size: var(--fs-100);
		line-height: 1.2;
		min-height: unset;
		padding: .5em 1em;
	}
}

.product .summary {
	
	blockquote, 
	.product-short-description {
		font-size: var(--fs-100);
	}
	
	.product-title {
		text-wrap: balance;
	}
	
}


.box-text, .product-info, .product-lightbox-inner {
	display: grid;
	grid: auto / 100%;
	place-content: start;
	gap: 1.25em;
	
	> * {
		margin: 0 !important;
	}
	
	.price {
		margin-block: 0;
		font-size: var(--fs-400);
	}
	
}


.clip {
	
	> .col-inner {
		overflow: clip;
	}
	
}

.price_slider_wrapper {
	
	.price_slider {
		margin: 0 !important;
	}
	
	.price_slider_amount {
		display: flex;
		flex-flow: column-reverse;
		gap: 1.25em;
		align-items: stretch;

		.price_label {
			text-align: start;
		}

	}
	
}

.wp-block-woocommerce-coming-soon {
	width: min(1100px, 100%);
	margin: 0 auto;
	padding: 20px;
	text-align: center;
}

.woocommerce-variation {
	
	> :is(.woocommerce-variation-description, .woocommerce-variation-price, .woocommerce-variation-availability):empty {
		display: none;
	}
	
}
/*END - Flatsome fixes*/


/*BEGIN -Complianz Fixes*/

#cmplz-document.cmplz-document {
	max-width: unset;
	
	h1, h2, h3, h4, h5, h6 {
		text-transform: uppercase;
	}
	
	h1 {font-size: var(--fs-400);}
	h2 {font-size: var(--fs-300);}
	h3 {font-size: var(--fs-300);}
	h4 {font-size: var(--fs-200);}
	h5 {font-size: var(--fs-200);}
	h6 {font-size: var(--fs-100);}
	p, li {font-size: var(--fs-200);}
	
}

/*BEGIN -Complianz Fixes*/

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}