/*
 Theme Name: Kadence Child
 Theme URI: https://yourdomain.com/
 Description: Lightweight child theme for Kadence.
 Author: You
 Author URI: https://yourdomain.com/
 Template: kadence
 Version: 1.0.2.3
 License: GPL-2.0-or-later
 License URI: https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain: kadence-child
*/

/* Forces the Google Autocomplete input to 16px to stop iOS zoom */
input[id$="__pac"] {
    font-size: 16px !important;
}

/* =========================================================
   HERO: Layout + Featured Product Card + Trustpilot
========================================================= */

/* -----------------------------
   HERO LAYOUT BASICS
--------------------------------*/
.hero_container { position: relative; }

.hero_container .kt-row-column-wrap.kt-has-2-columns {
  align-items: stretch;
}

/* Make both hero columns fill the row height */
.hero_container_col1,
.hero_container_col2,
.hero_container_col1 > .kt-inside-inner-col,
.hero_container_col2 > .kt-inside-inner-col {
  height: 100%;
}

/* -----------------------------
   RIGHT SIDE (COL2): TRUSTPILOT + FEATURED (DESKTOP)
--------------------------------*/
.hero_container_col2_row > .kt-row-column-wrap {
  display: flex;
  align-items: stretch;
  gap: 24px;
}

/* Trustpilot column */
.hero_container_col2_row_trustpilot {
  padding-top: 53%;
  flex: 0 0 38%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.hero_container_col2_row_trustpilot iframe { display: block; }

/* Featured product column */
.hero_container_col2_row_featured,
.hero_container_col2_row_featured > .kt-inside-inner-col {
  flex: 1 1 62%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* -----------------------------
   FEATURED QUERY LOOP: STRETCH + CENTER
--------------------------------*/
.hero_container_col2_featured_item {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* The Kadence query wrappers */
.hero_container_col2_featured_item .wp-block-kadence-query-card,
.hero_container_col2_featured_item .kb-query-grid-wrap {
  width: 100%;
}

/* Keep the single product card nicely sized + centered */
.hero_container_col2_featured_item .kb-query-item {
  max-width: 420px;
  margin: 0 auto;
}

/* tighter card stack */
.hero_container_col2_featured_item .kb-query-item > * {
  margin-left: auto;
  margin-right: auto;
}

.hero_container .kb-query-item {
	padding-top: .2rem;
}

@media (max-width: 767px) {
	.hero_container .kb-query-item {
		padding-bottom: 5rem;
	}
}

/* -----------------------------
   PRODUCT CARD: Image Container Styling
--------------------------------*/
.hero_container .kt-image-overlay-wrap { 
	background: #ffffff; 
}

.hero_container .kt-image-overlay-wrap img.kt-img-overlay {
  padding-top: 5rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  padding-bottom: 1rem;
}

@media (max-width: 767px) {
	.hero_container .kt-block-intrinsic img.kt-img-overlay {
	padding-top: 2.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 2.5rem;
	}
}

/* -----------------------------
   MOBILE/TABLET: Stack Trustpilot Above Product
--------------------------------*/
@media (max-width: 767px) {
  .hero_container_col2_row > .kt-row-column-wrap {
    flex-direction: column;
    gap: 16px;
  }

  .hero_container_col2_row_trustpilot,
  .hero_container_col2_row_featured {
    flex: 0 0 auto;
    width: 100%;
  }

  .hero_container_col2_row_trustpilot { padding-top: 5%; }

  .hero_container_col2_featured_item .kb-query-item { max-width: 375px; }

  .hero_container_col2_featured_item .kb-query-grid-wrap.products {
    justify-content: center;
  }


/* ---------------------------------
   IMAGE OVERLAY: Always-visible Text (no hover fade)
----------------------------------*/
.kt-image-overlay-message {
  opacity: 1 !important;
  pointer-events: none;
}

.kt-image-overlay-wrap:hover .kt-image-overlay-message {
  opacity: 1 !important;
}

.kt-image-overlay-color-wrapper {
  transition: opacity 0.25s ease;
}

.kt-image-overlay-wrap:hover .kt-image-overlay-color-wrapper {
  opacity: 0.25;
}

.kt-image-overlay-message {
  position: absolute;
  top: 1.25rem;
  left: 0;
  right: 0;
  text-align: center;
  z-index: 3;
}


/* ---------------------------------
   CTA + subtitle_2: Overlay inside Image Container
----------------------------------*/
.hero_container_col2_featured_item .kb-query-item .kt-image-overlay-wrap {
  position: relative;
}

/* subtitle_2 overlay text */
.hero_container_col2_featured_item .kb-query-item .subtitle_2 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3.25rem; /* default */
  z-index: 999;
  text-align: center;
  margin: 0;
  pointer-events: auto;
}

/* Ensure the Kadence overlay link doesn't block hovering the subtitle_2 link */
.hero_container_col2_featured_item .kb-query-item .kt-imageoverlay-link {
  z-index: 1;
}

/* subtitle_2 link styling */
.hero_container_col2_featured_item .kb-query-item .subtitle_2 a {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;

  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 500;

  color: var(--global-palette4);
  text-decoration: none;

  transition: color 0.2s ease, transform 0.2s ease;
}

.hero_container_col2_featured_item .kb-query-item .subtitle_2 a:hover {
  color: var(--global-palette3);
  transform: translateX(2px);
}

/* subtitle_2 = match image-overlay-subtitle */
.hero_container_col2_featured_item .kb-query-item .subtitle_2,
.hero_container_col2_featured_item .kb-query-item .subtitle_2 a {
  font-size: var(--global-kb-font-size-sm, 0.9rem);
  font-family: var(--global-body-font-family, inherit);
  font-weight: inherit;
  font-style: normal;

  color: var(--global-palette1);
  background: rgba(0, 0, 0, 0);

  padding: 0;
  margin: 0;

  text-transform: none;
  letter-spacing: normal;
  text-decoration: none;
}

/* mobile: move subtitle_2 down */
/* @media (max-width: 767px) {
  .hero_container .hero_container_col2_featured_item .kb-query-item .subtitle_2 {
    bottom: rem;
  }
} */

/* ---------------------------------
   CTA positioning: explicit class (SAFE)
----------------------------------*/
.hero_container_col2_featured_item .kb-query-item .featured_cta {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 1.2rem;
  z-index: 1000;
  text-align: center;
  margin: 0;
}

/* CTA link styling (only the CTA) */
.hero_container_col2_featured_item .kb-query-item p.featured_cta a {
	
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;

  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 500;

  color: var(--global-palette4);
  text-decoration: none;

  transition: color 0.2s ease, transform 0.2s ease;
}

.hero_container .hero_container_col2_featured_item .kb-query-item .featured_cta a:hover {
  color: var(--global-palette3);
  transform: translateX(2px);
}

@media (max-width: 767px) {
 .hero_container_col2_featured_item .kb-query-item .featured_cta {
    bottom: -.5rem;
  }
}

/* Guardrail: never accidentally restyle Add to Cart as CTA */
 .hero_container_col2_featured_item .kb-query-item .kwt-add-to-cart-wrap,
 .hero_container_col2_featured_item .kb-query-item .kwt-add-to-cart-wrap a {
  position: static !important;
  transform: none !important;
  letter-spacing: normal;
  text-transform: none;
}

/* =========================================================
   TABLET STACK (768px–1024px)
========================================================= */
@media (min-width: 768px) and (max-width: 1024px) {

  .hero_container_col2_row > .kt-row-column-wrap {
    flex-direction: column !important;
    gap: 20px;
    align-items: center;
  }

  .hero_container_col2_row_trustpilot {
    padding-top: 0 !important;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .hero_container_col2_row_featured,
  .hero_container_col2_row_featured > .kt-inside-inner-col {
    width: 100%;
    justify-content: center;
  }

  .hero_container_col2_featured_item .kb-query-item {
    max-width: 420px;
  }

  .kt-image-overlay-wrap img.kt-img-overlay {
    padding-top: 2.5rem;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 2.5rem;
  }

  .hero_container_col2_featured_item .kb-query-item .subtitle_2 {
    bottom: 2.6rem;
  }

  .hero_container_col2_featured_item .kb-query-item .featured_cta {
    bottom: 1.1rem;
  }
}

/* TABLET: Trustpilot spans full container width */
@media (min-width: 768px) and (max-width: 1024px) {
  .hero_container_col2_row_trustpilot {
    width: 100%;
    max-width: 100%;
  }

  .hero_container_col2_row_trustpilot > .kt-inside-inner-col {
    width: 100%;
  }

  .hero_container_col2_row_trustpilot iframe {
    width: 100% !important;
    max-width: 100% !important;
    display: block;
  }
}

/* TABLET (768–1024): center + expand product card */
@media (min-width: 768px) and (max-width: 1024px) {
  .hero_container_col2_featured_item { justify-content: center; }

  .hero_container_col2_featured_item .kb-query-item {
    max-width: min(520px, 92vw);
    margin-left: auto;
    margin-right: auto;
  }

  .hero_container_col2_featured_item .kb-query-grid-wrap.products {
    justify-content: center;
  }
}

/* MOBILE (<=767): center + expand Trustpilot */
@media (max-width: 767px) {
  .hero_container_col2_row_trustpilot,
  .hero_container_col2_row_trustpilot > .kt-inside-inner-col {
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: center;
  }

  .hero_container_col2_row_trustpilot iframe {
    width: 100% !important;
    max-width: 100% !important;
    display: block;
  }
}

/* TABLET (768–1024): center the featured product card (SAFE) */
@media (min-width: 768px) and (max-width: 1024px) {
  .hero_container_col2_row_featured,
  .hero_container_col2_row_featured > .kt-inside-inner-col,
  .hero_container_col2_featured_item {
    width: 100%;
  }

  .hero_container_col2_featured_item .wp-block-kadence-query-card {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: min(520px, 92vw);
  }

  .hero_container_col2_featured_item .wp-block-kadence-query {
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100%;
  }
}


