/*
Theme Name: GreyboxPro Child
Theme URI: http://greyboxpro.com/
Author: Mettro Pty Ltd
Author URI: https://mettro.com.au/
Description: GreyboxPro child theme, Theme Demo: https://demo.greyboxpro.com/
Version: 1.0.0
Template: greyboxpro
Text Domain: greyboxpro
*/
.single.single-docs .betterdocs-nested-category-wrapper {
	margin-left: 0px !important;
}
header.navbar_fixed .navbar-nav > li > a {
	color: #fff;
}

.home-colors .e-con .e-con .column-fill-image .elementor-widget-image img{
  max-height: 200px;
  min-height: 200px !important;
  width: 100% !important;
  object-fit: cover;
}
.elementor-button-danger .elementor-button.elementor-size-default, .elementor-button-danger .elementor-button.elementor-size-sm, .elementor-button-danger a.elementor-button.elementor-size-default, .elementor-button-danger a.elementor-button.elementor-size-sm {
    border: none !important;
}
.accordion-home h3.jet-toggle__label-text {
	font-size: 16px !important;
}
.custom-preview-btn {
	background-color: #51c9e5;
	color: #FFFFFF !important;
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 500;
	border: 0px solid;
	border-radius: 50px 50px 50px 50px;
	border-color: #e9eaed;
	font-family: "Oswald";
	margin: 0.5em 0 0 0;
	line-height: 1.1em;
	padding: 15px 25px 15px 25px;
}
.home-icon h3.elementor-icon-box-title {
	font-size: 1.25rem !important;
}
.not-sure-btn .elementor-button-text br {
  display: block;
}
.not-sure-btn .elementor-button-text{
    text-align: left;
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0,0,0,0);
  border: 0;
}
.anchor-links {
  scroll-margin-top: 100px !important;
}
@media (max-width: 767px){
  .color-slider .jet-woo-product-gallery__image img{
    max-width: 100% !important;
    width: 100% !important;
    object-fit: cover;
  }
}
/* 
.hero .elementor-background-slideshow__preloader {
    display: none !important;
} 
.hero .elementor-swiper-button.elementor-aspect-ratio-preloader,
.hero .elementor-loader,
.hero .swiper-loader {
    display: none !important;
}
.hero .elementor-main-swiper,
.hero .swiper-container,
.hero .swiper-wrapper {
    opacity: 1 !important;
    visibility: visible !important;
} */

body, html {
  overflow-x: hidden;
  transform: none !important;
  backface-visibility: visible !important;
  -webkit-transform: none !important;
}
.single-product .elementor-location-header.navbar_fixed, .woocommerce .elementor-location-header.navbar_fixed, .single-project .elementor-location-header.navbar_fixed, .single-our-pools .elementor-location-header.navbar_fixed, .single-docs .elementor-location-header.navbar_fixed{
	background: var(--e-global-color-955a0f0);
	color: #fff;
}
.navbar_fixed [href="#"] {
	color: #fff;
}
.navbar_fixed header .navbar-nav > li > a {
	color: #fff;
}
header .navbar .sub-menu .sub-menu-item li a {
  color: #000000;
}
.navbar_fixed .gbp-parent-current-item > a.menu-link {
	color: #51c9e5;
}
.single-post header.navbar_fixed .navbar-nav > li > a, header.navbar_fixed .navbar-nav > li > a {
	color: #fff !important;
}
.navbar_fixed .default-burger-menu-icon svg {
	fill: #fff !important;
}
.page header .navbar-nav > li > a, .page header .navbar .sub-menu .sub-menu-item li a, .single.single-our-pools header .navbar-nav > li > a, .single.single-our-pools header .navbar .sub-menu .sub-menu-item li a{
	font-weight: 400 !important;
}
/* @media screen and (min-width: 1200px) { */
  img.header-logo-dark {
    height: 50px;
    width: 124.367px;	  
  }
img.header-logo-light {
    height: 50px;
    object-fit: contain !important;
    object-position: left !important;
}
@media screen and (max-width: 767px) {
  img.header-logo-light {
    height: 50px;
    object-fit: contain !important;
    object-position: center !important;
  }
}
/* } */
.navbar_fixed .header-logo-dark, .navbar_fixed .header-logo-light {
	width: 124.367px;
	height: auto !important;
	padding: 0px !important;
	margin-bottom: -11.45px;
}

.single-project .elementor-slideshow__title {
	display: none;
}


.custom-icon .elementor-icon-list-item .elementor-icon-list-icon svg {
  position: relative;
  top: 0;
}
/**/

/* 1. The White Box (Container) */
.testimonial-bubble .jet-testimonials__comment {
  position: relative;
  /* We remove overflow/clamping from here so the button can live comfortably inside */
  display: block; 
  overflow: visible; 
}

/* 2. The Inner Wrapper (Created by JS) - This gets the clamp */
.testimonial-bubble .jet-testimonials__comment-inner {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5; /* Limit text to 5 lines */
  overflow: hidden;
  transition: max-height 0.3s ease;
}

/* 3. Expanded State */
.testimonial-bubble .jet-testimonials__comment.is-expanded .jet-testimonials__comment-inner {
  -webkit-line-clamp: unset;
  overflow: visible;
}

/* 4. Read more link */
.testimonial-bubble .read-more-toggle {
  display: inline-block;
  margin-top: 10px; /* Space between text and button */
  font-size: 14px;
  font-weight: 600;
  color: #2fb6df; 
  cursor: pointer;
}

.testimonial-bubble .read-more-toggle:hover {
  text-decoration: underline;
}

.pool-information .elementor .elementor-element.elementor-widget-n-tabs:not(:has(> .elementor-widget-container)) > .e-n-tabs > .e-n-tabs-heading .e-n-tab-title[aria-selected="true"]{
  background: transparent !important;
}
.jet-tabs__control-inner .entered.lazyloaded {
	min-width: 90px;
	border-radius: 100% !important;
	min-height: 90px !important;
	object-fit: cover !important;
}
.jet-tabs__control-inner .jet-tabs__label-image img {
	min-width: 90px;
	border-radius: 100% !important;
	min-height: 90px !important;
	object-fit: cover !important;
}


/* Css Latest */
.hero .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
   background: #fff !important;
   padding: 10px;
   border-radius: 30px;
   margin-top: -50px;
   width: max-content;
   transform: translate(-40%);
   left: 50%;
}
@media only screen and (max-width: 768px){
    .hero .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
/*        margin-top: -10px; */
       margin-top: -45px;
    }
}
/* Testimonial Bubbles */
.testimonial-bubble .jet-testimonials__comment::after {
   content: "";
   position: absolute;
   bottom: -10px;
   left: 40px;
   width: 0;
   height: 0;
   border-left: 10px solid transparent;
   border-right: 10px solid transparent;
   border-top: 10px solid #eefafc !important;
}
.testimonial-bubble .swiper-pagination-bullets.swiper-pagination-horizontal{
    left: 50% !important;
}
/* tabs */
.single-our-pools .elementor .elementor-element.elementor-widget-n-tabs:not(:has(> .elementor-widget-container)) > .e-n-tabs[data-touch-mode="false"] > .e-n-tabs-heading .e-n-tab-title[aria-selected="false"]:hover{
    background: transparent !important;
}

.tabs .e-n-tabs-heading::before {
  content: 'Choose Your Pool Size';
  font-size: 16px;
  font-family: Oswald;
  font-weight: 500;
  text-transform: uppercase;
  color: #1f2c46 !important;
}
.tabs .e-n-tabs-heading {
  padding: 20px 25px;
  background: #edf9fc !important;
  border-radius: 25px;
}

.tabs svg:not(:root) {
   overflow: visible !important;
}
.tabs .elementor-widget-n-tabs .e-n-tab-title .e-n-tab-icon {
   overflow: visible !important;
}

@media only screen and (max-width: 767px){
  .tabs .e-n-tab-title {
    background: #eefafc !important;
    padding: 10px !important;
    border-radius: 10px !important;
  }
  .tabs.elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-icon svg {
    fill: rgb(81, 201, 229) !important;
  }
  .pool-information .elementor .elementor-element.elementor-widget-n-tabs:not(:has(> .elementor-widget-container)) > .e-n-tabs > .e-n-tabs-heading .e-n-tab-title[aria-selected="true"] {
	background: #1f2c47 !important;
	color: #fff !important;
  }		
}
/* Pool Colours */
.pool-colours .jet-tabs__content * {
   justify-content: center;
   align-items: center;
}
.pool-colours .jet-tabs__control-wrapper::before {
   content: 'Select Your Colour';
   width: 100% !important;
   font-family: 'Oswald';
   text-transform: uppercase;
   font-weight: 500;
   font-size: 16px;  
}
@media only screen and (min-width: 1441px){
    .pool-colours .jet-tabs__control-wrapper::before{
        padding-left: 10px;
    }
}
@media only screen and (min-width: 1025px) and (max-width:1440px){
   .pool-colours .jet-tabs__control-wrapper::before {
     padding-left: 15px;
   }
}
.pool-colours .jet-tabs__control-wrapper {
  flex-flow: row wrap !important;
}
.pool-colours .jet-tabs__control-inner {
  flex-flow: column !important;
}
.pool-colours .jet-tabs__control {
  width: calc(20% - 1%);
  display: flex;
  justify-content: center !important;
  align-items: center;
  flex-grow: 1;
}
.pool-colours .jet-tabs__control-wrapper{
  align-self: center !important;
}
.pool-colours .jet-tabs__label-image {
  min-width: 90px;
  border-radius: 100% !important;
  min-height: 90px !important;
  object-fit: cover !important;
}

@media only screen and (max-width: 1024px){
   .pool-colours .jet-tabs__content * {
      display: flex;
      justify-content: center;
      align-items: center;
      max-width: 100% !important;
      /*width: 100% !important;*/
   }
   .pool-colours .jet-tabs__control-wrapper::before {
     margin-left: 1rem;
   }
   .pool-colours .custom-preview-btn {
      margin-left: 1rem;
   }
}
@media only screen and (max-width: 500px){
   .pool-colours .jet-tabs__control {
      width: 33.3% !important;
       margin-left: -5%;
   }
   .pool-colours .custom-preview-btn {
      width: 100% !important;
      display: flex;
      margin: 0 10px;
      justify-content: center;
   }
   .pool-colours .jet-tabs__control-wrapper::before {
       margin-top: 10px;
   }
}
.pool-colours .jet-tabs__content.active-content p {
   margin: 0 auto !important;
}

.pool-colours .active-tab::before {
   content: '\f00c';
   position: absolute;
   color: #fff !important;
   font-size: 40px;
   margin-top: -35px;
   font-family: "Font Awesome 6 Free";
   font-weight: 900;
}
/* pool-lifestyle */
@media only screen and (min-width: 1441px){
    .pool-lifestyle .elementor-image-box-title {
      font-size: 20px !important;
    }
}
.pool-lifestyle .elementor-image-box-content {
   padding: 0px !important;
}
.pool-lifestyle .elementor-image-box-title {
   line-height: 1em;
   margin-top: 0px !important;
}
/* Pool Gallery */

/* .rpc-cta {
    grid-column: 1 / -1;
	column-span: all;
} */

/*  */

.rpc-gallery {
   column-count: 4;
   column-gap: 12px;
}
@media (max-width: 1200px) { .rpc-gallery { column-count: 4; } }
@media (max-width: 1024px) { .rpc-gallery { column-count: 3; } }
@media (max-width: 767px)  { .rpc-gallery { column-count: 2; } }


/* .rpc-gallery {
    display: block; 
}
.rpc-gallery-batch {
    column-count: 4;
    column-gap: 12px;
}
@media (max-width: 1200px) { .rpc-gallery-batch { column-count: 4; } }
@media (max-width: 1024px) { .rpc-gallery-batch { column-count: 3; } }
@media (max-width: 767px)  { .rpc-gallery-batch { column-count: 2; } }
 */
.rpc-item, .rpc-cta {
  break-inside: avoid;
  margin-bottom: 12px;
}
.rpc-item img {
  width: 100%;
  display: block;
  border-radius: 4px !important;
  object-fit: cover;
}
.rpc-cta-inner {
  background: #1f2c47;
  color: #fff !important;
  padding: 28px;
  text-align: center;
  border-radius: 6px;
}
.rpc-cta .rpc-cta-inner h3 {
	color: #51c9e5 !important;
}
.rpc-cta-btn {
  display: inline-block;
  margin-top: 14px;
  padding: 10px 18px;
  background: #e63946;
  color: #fff;
  border-radius: 4px;
  text-decoration: none;
}

.rpc-load-more {
  display: block !important;
  margin: 40px auto 0 !important;
/*   padding: 14px 32px;
  background: #0b4c75;
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer; */
}

.rpc-colour-filter {
    position: relative;
}
.rpc-colour-options {
    display: none;
    position: absolute;
    top: 110%;
    right: 0;
    width: max-content;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(0,0,0,.12);
    z-index: 99;
	left: 50%;
    transform: translateX(-50%);
}
.rpc-colour-options.open {
    display: block;
}
.rpc-colour-option {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    cursor: pointer;
	font-size: 14px !important;
    line-height: 1em;
}
.rpc-colour-option img {
    width: 26px;
    height: 26px;
    border-radius: 4px;
    object-fit: cover;
}
.rpc-colour-option:first-child {
	text-align: center;
	justify-content: center;
}
.rpc-colour-option:hover {
    background: #f5f5f5;
}
.rpc-gallery-filters {
  display: flex;
  width: 100%;
  padding-bottom: 40px;
  justify-content: center;
  gap: 1rem;
  align-items: center;
  flex-direction: row;
}
#rpc-filter-type{
  width: 200px !important;
  color: var( --e-global-color-955a0f0 );
  background-color: var( --e-global-color-2443990 );
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: #B2B2B2;
  border-radius: 100px 100px 100px 100px;
  padding: 12px 25px 12px 25px;
}
select#rpc-filter-type::after {
	content: "▾";
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	color: #1b2436;
	pointer-events: none;
}
.rpc-select {
    position: relative;
    display: inline-block;
}

.rpc-select select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 40px;
    cursor: pointer;
}

.rpc-select::after {
    content: "▾";
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    color: #1b2436;
    pointer-events: none;
    font-size: 14px;
}
.rpc-colour-toggle label {
  font-family: "Poppins", Helvetica, sans-serif, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 300;
}
.rpc-colour-toggle label::after {
    content: "▾";
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    color: #1b2436;
    pointer-events: none;
    font-size: 14px;
}
.rpc-colour-toggle {
	background-color: var( --e-global-color-2443990 );
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: #B2B2B2;
	border-radius: 100px 100px 100px 100px;
	padding: 11px 25px 11px 25px;
	width: 200px;
	justify-content: space-between !important;
	display: flex;
	align-items: center;
}
.rpc-hover-wrapper {
    position: relative;
    display: inline-block;
    overflow: hidden;
	border-radius: 5px;
}
.rpc-hover-wrapper img {
    display: block;
    transition: transform 0.5s ease;
}
.rpc-hover-wrapper:hover img {
    transform: scale(1.05); 
}
.rpc-hover-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0,0,0,0.6);
    color: #fff;
    text-align: center;
    padding: 10px;
    opacity: 0;
    transition: opacity 0.3s ease;
    font-size: 14px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.rpc-hover-wrapper:hover .rpc-hover-overlay {
    opacity: 1;
}
.glightbox-clean .gdesc-inner {
    padding: 1rem;
}
@media only screen and (max-width: 550px){
  .rpc-gallery-filters{
    flex-direction: column
  }
  .rpc-gallery-filters h2.elementor-heading-title.elementor-size-small{
    width: 100% !important;
    text-align: center
  }
}
.page-id-14139 .dialog-lightbox-widget.dialog-type-buttons.dialog-type-lightbox.elementor-lightbox {
    display: none !important;
}
.glightbox-clean .gslide-title {
    text-align: left;
}
.gdesc-inner::after {
    content: ''; 
    display: flex; 
    width: 90px !important;
    height: 90px !important;
    background-image: url('https://www.tranquility-pools-srp.com.au/wp-content/uploads/2026/02/Tranquility-Pools-RGB-Two-Colour.png');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; 
    position: absolute; 
    top: 0;
    right: 10px;
    bottom: 0;
	align-self: center;
}

/*  */
@media only screen and (max-width: 1024px){
  .jet-tabs__control-wrapper {
    min-width: 100% !important;
    width: 100% !important;
    margin-top: 10px;
    padding: 10px !important;
	justify-content: center !important;  
  }
}

/*  */
.rpc-load-more.loading {
    pointer-events: none;
    opacity: 0.7;
}

.rpc-spinner {
    width: 16px;
    height: 16px;
    border: 2px solid #fff;
    border-top: 2px solid transparent;
    border-radius: 50%;
    display: inline-block;
    margin-left: 8px;
    animation: rpcSpin 0.7s linear infinite;
    vertical-align: middle;
}

@keyframes rpcSpin {
    to { transform: rotate(360deg); }
}
#install_enquiry {
    scroll-margin-top: 100px !important; 
}