/**handles:flatsome-style**/
/*
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.   ***************/

body, h1, h2, h3, h4, h5, h6, .heading-font, .off-canvas-center .nav-sidebar.nav-vertical>li>a 
{font-family: sans-serif !important;}

.html_nav_position_text_top{height:36px;padding-top:10px; margin-top:10px!important}
.block-html-after-header.z-1{margin:20px auto !important;}
.product-thumbnails a {border: 0!important;}

.onsale{
	padding: 5px;
}

.badge-container{
	margin: 0px;
}

.badge{
	height: 2em;
}

.badge-inner.new-bubble {
	padding: 5px;
}

.load-more{
	border-color: #555;
}

li.filter-item.checkbox > label > a {
	width: 80%;
    display: inline-flex;
}

li.filter-item > label > a > small {
	    margin-left: auto;
}

.cart_totals .product-name {
	border-style: hidden;
}

.nav-column li>a, .nav-dropdown>li>a {
	padding: 5px 20px!important;
}

/* Top Navigation Font Styling */
.header-nav .nav > li > a,
.header-main .nav > li > a,
.primary-menu > li > a {
	font-weight: 500 !important;
	font-size: 1.2em !important;
}

/* Override Flatsome Navigation Weights & Sizes */
.nav > li > a, 
.mobile-sidebar-levels-2 .nav > li > ul > li > a {
    font-weight: 500 !important;
    font-style: normal !important;
}

.nav-size-large>li>a {
    font-size: 1.2em !important;
}

/* Navigation Icons */
.nav>li>a>i {
    font-size: 2.5em;
}

.nav>li>a>i.icon-menu {
    font-size: 2.5em;
}

[data-icon-label]:after {
	font-size: 15px;
	padding-top: 2px;
	padding-bottom: 2px;
	padding-left: 3px;
	padding-right: 3px;
	min-height: 22px;
}

/* Ninja Forms */
#nf-field-8 {
	background-color: #cfcfcf;
}

div.inline .nf-form-fields-required {
	display: none;
}

div.inline .nf-form-content .nf-fields-wrap {
	display: inline-flex;
	justify-content: center;
	width: 100%;
}

div.inline .nf-form-content .nf-fields-wrap input {
	width: 98%;
}

div.inline .nf-form-content .nf-fields-wrap input[type=button] {
	background: white;
	color: black;
}

/* WooCommerce Checkout & Cart Pages */
.woocommerce-checkout #wide-nav, 
.woocommerce-checkout .footer {
	display: none;
}

.woocommerce-cart #wide-nav, 
.woocommerce-cart .footer {
	display: none;
}

.woocommerce-checkout td,
.woocommerce-checkout th {
    line-height: 1.5em;
}

/* Header */
.header-block {
   width: auto;
}

/* Tables */
td, th {
	line-height: 1em;
	font-size: 1em;
}

/* Cart & Checkout Buttons */
.continue-shopping, 
.mt-0 {
	float: none;
	text-align: right;
}

.woocommerce-mini-cart__buttons, 
.wc-proceed-to-checkout {
    font-size: 17px;
    font-weight: bolder;
}

/* Price Calculator */
#price_calculator td {
	vertical-align: middle;
}

#price_calculator input {
	width: 100px;
	font-size: 1.2em;
}

#price_calculator span.wc-measurement-price-calculator-input-help {
	position: relative;
}

#area_needed {
	border-radius: 10px;
}

#plank-size {
	border-radius: 10px;
}

#price_calculator > tbody > tr.price-table-row.area-input > td:nth-child(2) > span {
	margin: 0px;
}

/* Quote Button */
.gmqqp_submit_btn {
	color: #fff;
}

.gmwqp_inq {
    width: 100%;
    font-size: 17px;
    font-weight: bolder;
}

/* Product Pages */
.woocommerce-variation-add-to-cart, 
form.cart {
	font-size: 1.3em!important;
	justify-content: center!important;
	justify-self: center!important;
}

.single_add_to_cart_button {
	width: 100%;
	border-radius: 10px;
}

.product-info {
	margin: 0px 25px;
}

/* Search Field */
#woocommerce-product-search-field-1 {
	background-color: #fff;
	opacity: 0.8;
	height: 32px;
}

/* Buttons */
.button {
	border-radius: 10px;
	padding: 0 1.2em;
	line-height: 2.4em;
	font-weight: bolder;
}

/* WooCommerce Messages */
.woocommerce-message {
	font-weight: bolder;
	font-size: 1.3em;
	justify-self: center;
}

.woocommerce-message .wc-forward {
	background-color: #aa882a;
}

/* Icons List Under Buy Box */
.icon-list {
    list-style-type: none;
    padding: 10px 10px 10px 0px;
	background-color: #ededed;
	border-radius: 10px;
}
    
.icon-list li {
    display: flex;
	align-items: center;
    line-height: 1.4;
}
    
.icon-container {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
}
    
.icon-container img {
    width: 30px;
    height: 30px;
    object-fit: contain;
}
    
.icon-text {
    display: block;
    line-height: 1.5;
    align-items: center;
}
    
.icon-text b {
    font-weight: bold;
    margin-right: 4px;
}
    
.phone-link {
    text-decoration: none;
}
    
.phone-link:hover {
    text-decoration: underline;
}

/* Badges */
.badge-inner {
	padding: 10px;
}

/* Menu Item Pointer Events */
.wpmi-item {
	pointer-events: none !important;
}

/* Product Thumbnails */
.large-6.col > div.product-thumbnails.thumbnails.slider-no-arrows.slider.row.row-small.row-slider.slider-nav-small.small-columns-4 {
	left: 0px !important;
	transform: translateX(0%) !important;
}

.large-6.col > div.product-thumbnails.thumbnails.slider-no-arrows.slider.row.row-small.row-slider.slider-nav-small.small-columns-4 .col.is-nav-selected.first {
	position: absolute;
	left: 0%;
}

.product-thumbnails a {
	border: 0 !important;
}

/* Block HTML Spacing */
.block-html-after-header.z-1 {
	margin: 8px !important;
}

/* Product Main Padding */
.product-main {
    padding: 5px 0;
}

/* Shop Page Select Dropdown */
#wrapper > div.shop-page-title.category-page-title.page-title > div > div:nth-child(2) > form > select {
	border-radius: 10px;
}

/* Full Width Layout for Desktop */
@media only screen and (min-width: 48.0625em) {
    /* Override the 1080px constraint from Flatsome theme */
    body .container,
    body .container-width,
    body .full-width .ubermenu-nav,
    body .row,
    body.archive .container,
    body.tax-product_cat .container,
    body.post-type-archive-product .container,
    body.archive .row,
    body.tax-product_cat .row,
    body.post-type-archive-product .row {
        max-width: 100% !important;
    }
    
    .page-wrapper,
    .full-width .row-full-width,
    #main-content .container,
    #main-content > .row {
        max-width: 100% !important;
        width: 100% !important;
    }
    
    .container {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
    
    /* Ensure shop products are full width */
    .shop-container,
    .products-container,
    .page-wrapper .row,
    .row-main,
    .large-columns-4,
    .large-columns-5 {
        max-width: 100% !important;
    }
    
    /* Target WooCommerce product grids specifically */
    .woocommerce .products,
    ul.products,
    .products.row {
        max-width: 100% !important;
        width: 100% !important;
    }
    
    /* Full width for product category/archive pages */
    .archive .row,
    .tax-product_cat .row,
    .post-type-archive-product .row {
        max-width: 100% !important;
    }
    
    /* Full width for product pages */
    .product-page .row {
        max-width: 100% !important;
    }
    
    /* Flatsome specific containers */
    .page-wrapper > .row,
    #content .row,
    .row-large > .col {
        max-width: 100% !important;
    }
}

/* Tablet CSS */
@media only screen and (max-width: 849px) {
	.nav-vertical li li.menu-item-has-children>a {
		font-size: 1em;
	}

	.sub-menu {
		font-weight: 300;
		text-transform: uppercase;
		font-size: 0.8em;
		font-style: normal;
	}

	.off-canvas .nav-vertical li li>a {
		padding-bottom: 12px;
		padding-top: 0px;
	}

	.pb-half {
		padding-bottom: 0;
	}
}

/* Mobile CSS */
@media only screen and (max-width: 48em) {
	/*************** MOBILE ONLY CSS ***************/
	
	/* Header */
	.header-main {
		height: 50px;
	}

	#logo img {
		padding-top: 18px;
		padding-left: 9px;
		padding-right: 9px;
	}

	.header-bottom {
		min-height: 52px;
	}

	/* Product Pages */
	.single_add_to_cart_button.button.alt {
		width: 100%;
	}

	.woocommerce-variation-add-to-cart, 
	form.cart {
		width: 100%!important;
	}

	.product-info {
		margin: 0px;
	}

	/* Cart & Checkout */
	.woocommerce-cart .mobile-nav, 
	.woocommerce-checkout .mobile-nav {
		display: none;
	}

	.woocommerce-message .wc-forward {
		width: 100%;
	}

	/* Icons List */
	.icon-container {
		width: 30px;
		height: 30px;
		margin-right: 8px;
	}
			
	.icon-container img {
		width: 24px;
		height: 24px;
	}
			
	.icon-text {
		font-size: 14px;
	}

	/* CLS fix for the Home & Product pages */
	#logo {
		width: 348px !important;
		height: 70px !important;
	}

	.banner-layers.container {
		width: 400px !important;
		height: 430px !important;
	}

	.section-content.relative {
		width: 400px !important;
		min-height: 200px !important;
	}

	.home .bg.section-bg.fill.bg-fill.bg-loaded {
		width: 430px !important;
		min-height: 300px !important;
	}

	.home .is-border {
		width: 430px !important;
		height: 86px !important;
	}

	.single-product #main {
		min-height: 2000px !important;
	}

	.single-product .product-info.summary.col-fit.col.entry-summary.product-summary.text-left {
		min-height: 500px !important;
	}

	/* CLS fix for the Category pages */
	.woocommerce-page img.alignright.lazyloaded {
		width: 98px !important;
		height: 80px !important;
	}
}