/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* Remove space after last P tag */
.elementor-widget-text-editor p:last-child,
.elementor-widget-heading p:last-child,
.premium-header-block p:last-child {
    margin-bottom: 0 !important;
}

/* Add more spacing toblog headings*/
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4 {
	margin-top: 30px !important;
}

/* Links */
p > a,
li > a {
	transition: 300ms;
}

/* Buttons */
.cs-btn-inner-border .elementor-button::before {
	content: "";
	position: absolute;
	left: 5px;
	top: 5px;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	border: 2px solid var(--e-global-color-primary);
}

/* Section images with borders */
.cs-image-border-container::before {
	content: "";
	position: absolute;
	left: 15px;
	top: 15px;
	width: calc(100% - 30px);
	height: calc(100% - 30px);
	border: 3px solid var(--e-global-color-primary);
	z-index: 2;
}

/* Small paragraph bullet points */
.cs-text-bullets li::marker {
	font-size: 15px !important;
}

/* Header sticky effect */
.elementor-sticky,
.elementor-sticky .cs-header-logo-container,
.elementor-sticky .elementor-widget-theme-site-logo img,
.elementor-sticky .cs-header-icon {
	transition: 300ms;
}
.elementor-sticky { 
	width: 100% !important; 
}
.elementor-sticky--effects {
	background: var(--e-global-color-secondary);
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
}
.elementor-sticky--effects .cs-header-logo-container {
	padding: 0 0 5px;
}
@media (min-width: 768px) {
	.elementor-sticky--effects .cs-header-logo-container {
		padding: 0;
	}
}
.elementor-sticky--effects .elementor-widget-theme-site-logo img {
		height: 65px !important;
}
@media (min-width: 1025px) {
	.elementor-sticky--effects .elementor-widget-theme-site-logo img {
			height: 80px !important;
	}
	.elementor-sticky--effects .cs-header-icon {
		height: 80px !important;
	}
}

/* Menu toggle */
.cs-menu-toggle {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.cs-menu-toggle span {
    height: 2px;
	width: 32px;
    background: var(--e-global-color-primary);
    transition: 300ms;
}
.cs-menu-toggle.active span:nth-child(1) {
    transform: rotate(24deg) translate(2px, 4px);
	width: 34px;
}
.cs-menu-toggle.active span:nth-child(2) {
    opacity: 0;
}
.cs-menu-toggle.active span:nth-child(3) {
    transform: rotate(-24deg) translate(3px, -7px);
	width: 34px;
}

/* Menu popup */
.cs-menu-popup {
	z-index: 5 !important;
	overflow: hidden !important;
}
.cs-popup-wp-menu .menu-item {
	display: flex;
	justify-content: center;
}

/* Header icon boxes */
.cs-header-icon {
	height: 96px;
}
@media (max-width: 1024px) {
	.cs-header-icon {
		height: 65px;
	}
}
@media (max-width: 767px) {
	.cs-header-icon {
		height: 50px;
	}
	.cs-header-icon a {
		vertical-align: middle;
	}
}

/* Hero section image */
.cs-hero-image::before {
	content: "";
	position: absolute;
	left: 20px;
	top: 20px;
	width: calc(100% - 40px);
	height: calc(100% - 40px);
	border: 3px solid var(--e-global-color-primary);
}
@media (max-width: 767px) {
	.cs-hero-image::before {
		left: 10px;
		top: 10px;
		width: calc(100% - 20px);
		height: calc(100% - 20px);
	}
}

/* Featured pool cards */
.cs-feat-card-textbox {
	transition: all 600ms;
}
.cs-featured-pool-card:hover .cs-feat-card-textbox {
	gap: 20px;
	padding-bottom: 40px;
}
.cs-feat-card-hidden {
	overflow: hidden;
	transition: all 800ms;
	max-height: 0;
	opacity: 0;
}
.cs-featured-pool-card:hover .cs-feat-card-hidden {
	max-height: 800px;
	opacity: 1;
}
.cs-featured-pool-card.cs-image-border-container::before {
	opacity: 0;
	transition: opacity 900ms;
	pointer-events: none;
}
.cs-featured-pool-card:hover.cs-image-border-container::before {
	opacity: 1;
}

/* Home page FAQs accordion */
.cs-faqs-accordion .elementor-accordion-title,
.cs-faqs-accordion svg {
	transition: 300ms;
}
.cs-faqs-accordion h3:hover .elementor-accordion-title,
.cs-faqs-accordion h3:hover svg {
	color: var(--e-global-color-accent) !important;
}
.cs-faqs-accordion svg {
	width: unset !important;
	height: unset !important;
}

/* Contact page form */
.cs-contact-form .wpforms-container {
	margin: 0 !important;
}
.cs-contact-form input:focus,
.cs-contact-form select:focus,
.cs-contact-form textarea:focus {
	box-shadow: 0 0 0 1px var(--e-global-color-accent),0px 1px 2px rgba(0,0,0,0.15) !important;
}
.cs-contact-form select option:not(:hover) {
	color: rgba(0, 0, 0, 0.7) !important;
}
.cs-contact-form textarea {
	min-height: 140px;
}
.cs-contact-form input.wpforms-error,
.cs-contact-form select.wpforms-error,
.cs-contact-form textarea.wpforms-error {
	border: 1px solid var(--wpforms-label-error-color) !important;
}
.cs-contact-form .wpforms-submit {
	height: unset !important;
}
.cs-contact-form .wpforms-submit:hover {
	background-image: none !important;
}
.cs-btn-inner-border .wpforms-submit::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: 2px solid var(--e-global-color-primary);
}
@media (max-width: 1150px) {
	.cs-contact-form .wpforms-one-half {
		flex: 360px;
		padding: 0 !important;
	}
	.cs-contact-form .wpforms-first {
		margin-bottom: 15px;
	}
	.cs-contact-form input,
	.cs-contact-form select,
	.cs-contact-form textarea {
		margin-bottom: 1px !important;
	}
}

/* Pool Range page pool dropdown list */
/* .cs-pool-dropdown-list ul {
	padding-bottom: 10px;
}
.cs-pool-dropdown-list svg {
	transition: 300ms;
} */

/* Pool Range page filters */
.cs-pool-range-filter button {
	transition: 300ms !important;
	cursor: pointer !important;
}

/* Pool Range loop items */
.cs-pool-loop-item-title a {
	transition: 300ms;
}
.cs-pool-loop-item-title a:hover {
	color: var(--e-global-color-text) !important;
}
@media (min-width: 768px) {
	.cs-pool-loop-item-text {
		height: 100% !important;
	}
	.cs-pool-loop-item-text-link {
		margin-top: auto !important;
	}
}

/* Pool Range page grid */
.cs-pool-range-grid .elementor-post__text {
/* 	display: flex !important; */
}
.cs-pool-range-grid .elementor-post__text a {
/* 	transition: 300ms; */
}

/* Pool Range page grid pagination */
.cs-pool-range-grid .elementor-pagination .current {
	background: var(--e-global-color-accent);
	padding: 6px 9px 5px 11px;
}
.cs-pool-range-grid .elementor-pagination a {
	transition: 300ms;
}
.cs-pool-range-grid .elementor-pagination .prev::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='16' viewBox='0 0 9 16' fill='none'%3E%3Cpath d='M0.292893 8.70711C-0.097631 8.31658 -0.097631 7.68342 0.292893 7.29289L6.65685 0.928932C7.04738 0.538408 7.68054 0.538408 8.07107 0.928932C8.46159 1.31946 8.46159 1.95262 8.07107 2.34315L2.41421 8L8.07107 13.6569C8.46159 14.0474 8.46159 14.6805 8.07107 15.0711C7.68054 15.4616 7.04738 15.4616 6.65685 15.0711L0.292893 8.70711ZM2 9H1V7H2V9Z' fill='%233A339B'/%3E%3C/svg%3E");
	vertical-align: middle;
}
.cs-pool-range-grid .elementor-pagination .next::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='16' viewBox='0 0 9 16' fill='none'%3E%3Cpath d='M8.70711 8.70711C9.09763 8.31658 9.09763 7.68342 8.70711 7.29289L2.34315 0.928932C1.95262 0.538408 1.31946 0.538408 0.928932 0.928932C0.538408 1.31946 0.538408 1.95262 0.928932 2.34315L6.58579 8L0.928932 13.6569C0.538408 14.0474 0.538408 14.6805 0.928932 15.0711C1.31946 15.4616 1.95262 15.4616 2.34315 15.0711L8.70711 8.70711ZM7 9H8V7H7V9Z' fill='%233A339B'/%3E%3C/svg%3E");
	vertical-align: middle;
}
.cs-pool-range-grid .elementor-pagination .prev {
	margin-right: 35px !important;
}
.cs-pool-range-grid .elementor-pagination .next {
	margin-left: 35px !important;
}
.cs-pool-range-grid .elementor-pagination a.prev,
.cs-pool-range-grid .elementor-pagination a.next {
	display: inline-block !important;
}
.cs-pool-range-grid .elementor-pagination a.prev:hover {
	transform: translateX(-3px);
}
.cs-pool-range-grid .elementor-pagination a.next:hover {
	transform: translateX(3px);
}
.cs-pool-range-grid .elementor-pagination span.prev,
.cs-pool-range-grid .elementor-pagination span.next {
	visibility: hidden;
}

/* Testimonials carousel */
@media (min-width: 1367px) and (max-width: 1560px) {
	.cs-testimonials-carousel .swiper-slide > .e-con-full {
		padding: 80px 50px !important;
	}
}

/* Testimonials pagination */
.cs-testimonials-carousel .elementor-swiper-button {
	top: unset !important;
	bottom: -14px !important;
}
.cs-testimonials-carousel .elementor-swiper-button-prev {
    left: calc(50% + -140px) !important;
}
.cs-testimonials-carousel .elementor-swiper-button-prev:hover svg {
    transform: translateX(-3px);
}
.cs-testimonials-carousel .elementor-swiper-button-next {
    right: calc(50% + -140px) !important;
}.cs-testimonials-carousel .elementor-swiper-button-next:hover svg {
    transform: translateX(3px);
}
.cs-testimonials-carousel .swiper-pagination-bullet {
	margin: 0 14px !important;
	border-radius: unset !important;
}
.cs-testimonials-carousel .elementor-swiper-button svg,
.cs-testimonials-carousel .swiper-pagination-bullet {
	transition: 300ms;
}

/* Single Pool page image gallery */
.cs-pool-image-gallery {
	align-self: center;
}
.cs-pool-image-gallery .jet-woo-product-gallery-slider {
	max-width: 1153px !important;
}
.cs-pool-image-gallery .jet-woo-product-gallery-slider img {
	width: 100% !important;
	height: 677px !important;
	object-fit: cover !important;
}
@media only screen and (max-width: 1366px) {
	.cs-pool-image-gallery .jet-woo-product-gallery-slider img {
		height: 550px !important;
	}
}
@media only screen and (max-width: 1024px) {
	.cs-pool-image-gallery .jet-woo-product-gallery-slider img {
		height: 500px !important;
	}
}
@media only screen and (max-width: 767px) {
	.cs-pool-image-gallery .jet-woo-product-gallery-slider img {
		height: 350px !important;
	}
}

/* Single Pool page image gallery navigation */
.cs-pool-image-gallery .jet-swiper-nav {
	width: 105px;
	height: 105px;
}
@media only screen and (max-width: 1024px) {
	.cs-pool-image-gallery .jet-swiper-nav {
		width: 85px;
		height: 85px;
	}
}
@media only screen and (max-width: 767px) {
	.cs-pool-image-gallery .jet-swiper-nav {
		width: 55px;
		height: 55px;
	}
}

/* Single Pool page image gallery thumbnails */
.cs-pool-image-gallery .jet-gallery-swiper-thumb {
	max-width: 1153px !important;
	padding-left: 105px !important;
	padding-right: 105px !important;
	align-self: center !important;
}
.cs-pool-image-gallery .jet-gallery-swiper-thumb img {
	height: 105px !important;
	object-fit: cover !important;
}
@media only screen and (max-width: 1024px) {
	.cs-pool-image-gallery .jet-gallery-swiper-thumb {
		padding-left: 85px !important;
		padding-right: 85px !important;
	}
	.cs-pool-image-gallery .jet-gallery-swiper-thumb img {
		height: 85px !important;
	}
}
@media only screen and (max-width: 767px) {
	.cs-pool-image-gallery .jet-gallery-swiper-thumb {
		padding-left: 55px !important;
		padding-right: 55px !important;
	}
	.cs-pool-image-gallery .jet-gallery-swiper-thumb img {
		height: 55px !important;
	}
}

/* Single Pool page image gallery lightbox controls */
.jet-woo-product-gallery-pswp .pswp__button {
	border: none !important;
	padding: 0 !important;
}

/* Single Pool page sizes table */
.cs-pool-sizes-table {
	border-collapse: separate;
	width: unset !important;
	border: 1px solid var(--e-global-color-accent);
}
.cs-pool-sizes-table th,
.cs-pool-sizes-table td {
	font-size: 16px !important;
	line-height: 20px !important
	letter-spacing: 1.6px !important;
	width: 154px !important;
	border: none !important;
	padding: 5px 8px 4px !important;
}
.cs-pool-sizes-table th {
	color: var(--e-global-color-primary) !important;
	background: var(--e-global-color-accent) !important;
	font-weight: 400 !important;
	text-transform: uppercase !important;
	vertical-align: bottom;
}
.cs-pool-sizes-table td {
	color: var(--e-global-color-accent) !important;
	background: var(--e-global-color-primary) !important;
	font-weight: 600 !important;
	text-align: center;
	box-shadow: inset 0px 0px 0px 1px var(--e-global-color-accent);
}
@media only screen and (max-width: 767px) {
	.cs-pool-sizes-table th,
	.cs-pool-sizes-table td {
		font-size: 14px !important;
		line-height: 18px !important;
	}
}

/* Accessories page accessory headings */
.cs-accessories-page-headings .elementor-button-text {
	text-align: start !important;
	cursor: pointer;
}
.cs-accessories-tab-name.active a {
	color: var(--e-global-color-text) !important;
}

/* Accessories page carousel arrows */
.cs-accessories-page-carousel .carousel-arrow {
	top: 245px !important;
	margin-top: unset !important;
}
@media (min-width: 768px) {
	.cs-accessories-page-carousel .carousel-arrow {
		display: none !important;
	}
}

/* Footer menu links */
@media (max-width: 767px) {
	.cs-footer-menu ul {
		list-style: none;
		padding-left: 0;
	}
	.cs-footer-menu ul li:not(:last-child) {
		margin-bottom: 4px;
	}
}
