/*
Theme Name: Kadence GKM
Theme URI: https://example.com
Description: Kadence child theme with GKM core styles, animation system, and components.
Author: GK Marketing
Author URI: https://example.com
Template: kadence
Version: 2.1.0
Text Domain: kadence-gkm
*/

/* 
This file is intentionally minimal.
All styles are loaded via functions.php.
*/

.gk-office-hours {}
.gk-office-hours-row {
  display: flex;
  justify-content: space-between;
}
.gk-office-hours-day {}
.gk-office-hours-time {}
.gk-office-hours-time.is-closed {
  opacity: 0.6;
}

/* Code for service page space */
.section-gk h3 {
		    margin-top: 0.5em;
    margin-bottom: 0.2em;
	  font-size: 50px;
  letter-spacing: 0px;
	  margin-bottom: 1rem;
}

/* .service-hero h6.eyebrow{
  text-transform: uppercase;
  font-size: .85rem;
  letter-spacing: 3px;
  color: var(--brand-accent);
  margin-bottom: 1.5rem;
} */
.service-hero h1{
  margin: .5rem 0 1rem;
}

/* H2 on service pages (copies your H1 styling structure) */
body[class*="service"] h2{
  margin: 1rem 0 0.7rem;
  letter-spacing: 0;
}


/* H3 on service pages */
body[class*="service"] h3{
  margin: 1rem 0 1rem;
  font-size: 2.5rem; /* adjust this */
}

.service-hero h4{
  font-size: 1.5rem;
  margin-bottom: 1rem;
  font-weight: 600;
  line-height: 140%;

}
.service-hero p{
  font-size: 1rem;
  color: var(--text-body);
  margin-bottom: 1rem;
  line-height: 1.6;
}

/* Divider */
hr.section-divider{
  border: 0;
  border-top: 1px solid var(--global-gray-400) !important;
  margin: 35px 0 16px 0 !important;
}



/* Css for Service pages */
 .postfold-dynamic-html section.section-gk {
  background: var(--surface);
  padding: 2.5em;
/*   box-shadow: 0 0 30px rgba(0, 0, 0, 0.15); */
  margin-bottom: 60px;
  border-bottom: 6px solid var(--brand-accent);
  position: relative;
  z-index: 4;
/*   border-radius: 20px; */
  overflow: hidden;    /* 👈 Keeps inner elements from bleeding past corners */
}

@media (max-width: 768px) {
	.postfold-dynamic-html section.section-gk {
 	  padding: 1.5em;
} 
}

/* Code for service page space */
.section-gk h3 {
		    margin-top: 0.5em;
    margin-bottom: 0.2em;
	  font-size: 50px;
  letter-spacing: 0px;
	  margin-bottom: 1rem;
}

/* .service-hero h6.eyebrow{
  text-transform: uppercase;
  font-size: .85rem;
  letter-spacing: 3px;
  color: var(--brand-accent);
  margin-bottom: 1.5rem;
} */
.service-hero h1{
	font-size: 64px;
  margin: .5rem 0 1rem;
}

/* H2 on service pages (copies your H1 styling structure) */
body[class*="service"] h2{
  margin: 1rem 0 0.7rem;
  letter-spacing: 0;
}


/* H3 on service pages */
body[class*="service"] h3{
  margin: 1rem 0 1rem;
  font-size: 2.5rem; /* adjust this */
}

.service-hero h4{
  font-size: 1.5rem;
  margin-bottom: 1rem;
  font-weight: 600;
  line-height: 140%;

}
.service-hero p{
  font-size: 1rem;
  color: var(--text-body);
  margin-bottom: 1rem;
  line-height: 1.6;
}

/* Divider */
hr.section-divider{
  border: 0;
  border-top: 1px solid var(--global-gray-400) !important;
  margin: 35px 0 16px 0 !important;
}



/* this hides zocdoc button on desktop and mobile*/

a.zd-plugin-initialized {
    display: none !important;
}


.kt-info-box-image svg path {
    fill: currentColor !important;
}

.kt-info-svg-image path {
    fill: currentColor !important;
}
.gk-office-hours {}
.gk-office-hours-row {
  display: flex;
  justify-content: space-between;
}
.gk-office-hours-day {}
.gk-office-hours-time {}
.gk-office-hours-time.is-closed {
  opacity: 0.6;
}
@media (max-width: 768px) {
  body .zd-sticky-button,
  body .zd-alert-box,
  body a[data-type="book-button"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* this gets rid of scroll bars in the menu */

.kt-row-column-wrap.kt-has-1-columns.kt-row-layout-equal.kt-tab-layout-inherit.kt-mobile-layout-row.kt-row-valign-top.kt-inner-column-height-full, .kt-row-column-wrap.kt-has-4-columns.kt-row-layout-equal.kt-tab-layout-inherit.kt-mobile-layout-row.kt-row-valign-top {
    overflow-y: hidden !important;
}

/* Strong crop for black bars baked into video thumbnails */
.wp-block-kadence-videopopup,
.kb-video-popup-wrap,
.kb-video-container,
.kadence-video-popup-wrap,
.kadence-video-popup-link,
.kb-videopopup-link {
    overflow: hidden !important;
}

/* Keep the visible frame clean */
.wp-block-kadence-videopopup img,
.kb-video-popup-wrap img,
.kb-video-container img,
.kadence-video-popup-wrap img,
.kadence-video-popup-link img,
.kb-videopopup-link img,
.wp-block-kadence-videopopup video,
.kb-video-popup-wrap video,
.kb-video-container video,
.kadence-video-popup-wrap video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.32) !important;
    transform-origin: center center !important;
}


/* =========================================================
   MODERN SMOOTH STICKY IMAGE COLLAGE
   3-COLUMN SCROLL ANIMATION FOR KADENCE
========================================================= */

/* Main row / section */
.animated-image-row {
  overflow: visible !important;
  position: relative;
}

/* Let sticky work inside Kadence wrappers */
.animated-image-row,
.animated-image-row .kt-row-column-wrap,
.animated-image-row .kb-row-layout-wrap,
.animated-image-row .kt-inside-inner-col {
  overflow: visible !important;
}

/* Base styling for all 3 columns */
.animated-image-row .image-col {
  position: sticky !important;
  align-self: flex-start;
  z-index: 2;
  opacity: 0;
  animation: collageReveal 0.9s ease forwards;
  will-change: transform, opacity;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}

/* Left column */
.animated-image-row .image-col.image-col-left {
  top: 105px;
  transform: translate3d(0, -20px, 0);
}

/* Middle column */
.animated-image-row .image-col.image-col-middle {
  top: 155px;
  transform: translate3d(0, 28px, 0);
  animation-delay: 0.12s;
}

/* Right column */
.animated-image-row .image-col.image-col-right {
  top: 125px;
  transform: translate3d(0, 8px, 0);
  animation-delay: 0.24s;
}

/* Image styling - no border radius added */
.animated-image-row .image-col img {
  border-radius: inherit !important;
  box-shadow: 0 22px 55px rgba(20, 35, 50, 0.14);
  transition: transform 0.65s cubic-bezier(0.22, 1, 0.36, 1),
              box-shadow 0.65s cubic-bezier(0.22, 1, 0.36, 1),
              filter 0.65s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
  backface-visibility: hidden;
}

/* Subtle hover effect */
.animated-image-row .image-col img:hover {
  transform: translate3d(0, -6px, 0) scale(1.015);
  box-shadow: 0 30px 75px rgba(20, 35, 50, 0.2);
  filter: saturate(1.04) contrast(1.02);
}

/* Smooth reveal only, no movement jump */
@keyframes collageReveal {
  from {
    opacity: 0;
    filter: blur(7px);
  }

  to {
    opacity: 1;
    filter: blur(0);
  }
}

/* Mobile / tablet: turn off sticky */
@media (max-width: 1024px) {
  .animated-image-row .image-col {
    position: static !important;
    top: auto !important;
    transform: none !important;
    opacity: 1;
    animation: none;
  }

  .animated-image-row .image-col img {
    transform: none !important;
    box-shadow: 0 16px 38px rgba(20, 35, 50, 0.12);
  }
}

/* styles financing links as buttons */

.payment-buttons img {
  display: block;
  border-radius: 10px;
  background: linear-gradient(
    to top,
    #F6F6ED 0%,
    #ffffff 100%
  );
  transition: background 0.3s ease;
}

.payment-buttons a:hover img {
  background: linear-gradient(
    to bottom,
    #F4FAF6 0%,
    #ffffff 100%
  );
}

/* Office Hours Layout Fix */
.gk-office-hours-row {
  display: grid;
  grid-template-columns: 100px auto;
  column-gap: 5px;
  align-items: start;
}

.gk-office-hours-day,
.gk-office-hours-time {
  white-space: nowrap;
}


