/* buttons */
.button {
	transition: background-color .3s ease, color .3s ease, border-color .3s ease;
}


/* headings */
h1, h2, h3, h4, h5, h6,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	font-weight: 600;
	transition: color .3s ease;
}		


/* Header */

.site-header {
	background-color: #ffffff;
	background-position: left center;
	background-repeat: repeat-y;
	border-bottom: 18px solid #0099CB;
	padding: 2rem 0;
}

.site-branding,
.woocommerce-active .site-header .site-search {
	margin-bottom: .2rem!important;
}
.site-branding .custom-logo-link .custom-logo {
	max-width: 380px;
	background: rgba(255, 255, 255, 1);
  -webkit-box-shadow: 0px 0px 10px 10px rgba(255, 255, 255, 1);
  box-shadow: 0px 0px 10px 10px rgba(255, 255, 255, 1);
}

.site-header-cart .cart-contents {
	padding: 1rem 0;
}

.outline-widget {
	padding: .3rem .5rem;
}

/* marquee reviews in header */
.site-header .marquee-reviews-container {
	margin-bottom: -2rem;
	margin-top: 1rem;
	width: 100%;
	position: relative;
	overflow: hidden;
	height: 1.6rem;
}
.site-header .marquee-reviews-container .marquee-text {
	display: inline-block;
	white-space: nowrap;
	animation: marquee 30s linear infinite;
	line-height: 1;
}
@keyframes marquee {
	0% { transform: translateX(100vw); }
	100% { transform: translateX(-100%); }
}
.marquee-reviews-container:hover .marquee-text {
	animation-play-state: paused;
}

/* content wrapper */
div #content > .col-full {
	position: relative;
}
div #content > .col-full:before,
div #content > .col-full:after {
	content: '';
	position: absolute;
	display: block;
	background: rgb(255, 246, 243);
	inset: -10rem auto -2rem auto;
	z-index: -1;	
}
div #content > .col-full:before {
	right: 81%;
	left: -30vw;
}
div #content > .col-full:after {
	left: 81%;
	right: -30vw;
}

/* @media screen and (min-width: 768px) {
	#content>.col-full:before {
		right: calc(73.9130434783% + 1rem);
	}
@media screen and (min-width: 1064px) {
	#content>.col-full:before {
		right: 73.9130434783%;
	}
} */

.woocommerce-breadcrumb {
	padding: 10px 16px;
	background: rgba(255, 255, 255, 1);
	display: inline-block;
}

/* footer */
.site-footer .site-info {
	display: none;
}



/* name search */
.company-name-search-widget-box {}
.company-name-search-widget-box p {
	margin-bottom: .5rem;
}
.company-name-search-widget-box input {}
.company-name-search-widget-box button {
	margin-top: .65rem;
}

.company-name-search-wide-box {
	margin: 1.5rem 0;
}
.company-name-search-wide-box p {
	margin-bottom: .5rem;
}
.company-name-search-wide-box input {}
.company-name-search-wide-box button {
}


/* Dual Sidebar Layout */
.dual-sidebar-layout .col-full {
    display: flex;
    gap: 50px;
    max-width: 1500px;
    margin: 0 auto;
    padding: 0 20px;
}

.dual-sidebar-layout .content-area {
    flex: 1;
    order: 2;
	margin: 0!important;
}

.dual-sidebar-layout .sidebar-left {
    width: 250px;
    order: 1;
}

.dual-sidebar-layout .sidebar-right {
    width: 250px;
    order: 3;
}

@media (max-width: 768px) {
    .dual-sidebar-layout .col-full {
        flex-direction: column;
    }
    
    .dual-sidebar-layout .sidebar-left,
    .dual-sidebar-layout .sidebar-right {
        width: 100%;
    }
}

/* Hide empty WooCommerce divs in dual sidebar layout */
.dual-sidebar-layout .col-full > .woocommerce:empty {
    display: none;
}

/* Ensure WooCommerce divs don't interfere with flex layout */
.dual-sidebar-layout .col-full > .woocommerce {
    order: 10; /* Push to end */
}


/* package display group block */
.package-display {
	margin: 1rem 0;
}
.package-display .wp-block-column .wp-block-image,
.package-display .wp-block-column .wp-block-image figure {
	margin-bottom: 0!important;
}
.package-display .wp-block-column p {
	margin-top: .4rem;
}
.package-display .company-name-search-widget-box {
	text-align: center;
	margin-top: 0;
	margin-block-start: 0;
}


/* WooCommerce Shop Tiles */
.cf-product-tile {
	display: flex;
	gap: 30px;
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #e0e0e0;
	text-align: left;
}

.cf-product-image {
	flex-shrink: 0;
	width: 200px;
	text-align: center;
}

.cf-product-image img {
	height: auto;
	display: block;
	margin-left: auto;
	margin-left: right;
}

.cf-product-content {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.cf-product-title {
	margin: 0;
	font-size: 24px;
	font-weight: 600;
}

.cf-product-title a {
	text-decoration: none;
	color: inherit;
}

.cf-product-title a:hover {
	color: #0073aa;
}

.cf-product-price {
	font-size: 18px;
	font-weight: 600;
}

.cf-price-label {
	font-weight: normal;
	color: #666;
}

.cf-product-description {
	font-size: 14px;
	line-height: 1.6;
	color: #555;
}

.cf-product-add-to-cart {
	margin-top: 5px;
}
.cf-product-buttons > div {
	display: inline-block;
}
.cf-product-buttons .button {
	padding: 10px 20px;
}

.cf-more-info-button {
	background-color: #f0f0f0;
	color: #333;
}

.cf-more-info-button:hover {
	background-color: #e0e0e0;
}

/* Ensure single column layout */
ul.products {
	display: block !important;
}

ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
}