/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* ===============================
   SUB MENU STYLE – EXACT REQUEST
   =============================== */

#sticky-header {
    width: 100%;
    z-index: 9999;
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

#sticky-header.is-sticky {
    position: fixed;
    top: 0;
    left: 0;
    box-shadow: 0 2px 10px rgba(0,0,0,0.03);
}

.sticky-placeholder {
    width: 100%;
}

#menu-main .gb-sub-menu {
    background: transparent;
    padding: 0;
    margin: 0;
    width: max-content;  
    min-width: 100%;
    white-space: nowrap;
}

#menu-main .gb-sub-menu > li {
    background: #7a7a7a;
    margin: 0;
}
#menu-main .gb-sub-menu li.current-menu-item > a.gb-menu-link,
#menu-main .gb-sub-menu li.current-page-ancestor > a.gb-menu-link {
    background: #3f444b;
    color: #a3e9dc;
}


#menu-main .gb-sub-menu > li:not(:last-child) {
    border-bottom:1px dashed #a3e9dc;
}

#menu-main .gb-sub-menu > li > a.gb-menu-link {
    display: block;
    padding: 14px 22px;
    color: #ffffff;
    box-sizing: border-box;
    transition: background 0.25s ease, color 0.25s ease;
}

#menu-main .gb-sub-menu > li > a.gb-menu-link:hover {
    background: #3f444b;
    color:#a3e9dc;
}

#menu-main .gb-submenu-toggle svg {
    display: none;
}

#menu-main .gb-submenu-toggle {
    width: 14px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23391866' d='M20.1 9L12 17.1 3.9 9z'/%3E%3C/svg%3E");
}

#menu-main .gb-menu-item:hover > a .gb-submenu-toggle,
#menu-main .gb-menu-item.current-menu-item > a .gb-submenu-toggle,
#menu-main .gb-menu-item.current-menu-ancestor > a .gb-submenu-toggle {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgb(117%20184%20172)' d='M20.1 9L12 17.1 3.9 9z'/%3E%3C/svg%3E");
}
#menu-main .gb-sub-menu .menu-item-has-children > a.gb-menu-link {
    display: flex;
    align-items: center;
    justify-content: start;
    line-height: 1.2;  
}

#menu-main .gb-sub-menu .menu-item-has-children > a .gb-submenu-toggle {
    display: flex;      
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    position: relative;
    top: 0;                
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M9 6l6 6-6 6'/%3E%3C/svg%3E");
}

#menu-main .gb-sub-menu .menu-item-has-children:hover > a .gb-submenu-toggle,
#menu-main .gb-sub-menu .menu-item-has-children.current-menu-ancestor > a .gb-submenu-toggle,
#menu-main .gb-sub-menu .menu-item-has-children.current-menu-item > a .gb-submenu-toggle {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgb(117%20184%20172)' d='M9 6l6 6-6 6'/%3E%3C/svg%3E");
}

/* 
 * Home Page
 */
.zoom-bg {
    animation: bgZoomOnce 20s ease-out forwards;
}

@keyframes bgZoomOnce {
    from {
        background-size: 100%;
    }
    to {
        background-size: 120%;
    }
}

.hero-slider .gb-carousel-control {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    width: auto;
    height: auto;
}

.hero-slider .gb-carousel-control-icon svg {
    color: #ffffff;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.hero-slider .gb-carousel-control:focus-visible {
    outline: none;
}
.hero-slider .gb-carousel-control--previous:hover svg {
    transform: translateX(-6px) scale(1.15);
}

.hero-slider .gb-carousel-control--next:hover svg {
    transform: translateX(6px) scale(1.15);
}
/* 
 * Veterinary Services Page
 */
.wat-hero-bg {
    position: relative;
    overflow: hidden;
}

.wat-hero-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    transform: scale(1.2);
    transform-origin: 0% 100%;
    z-index: 0;
}

.wat-hero-bg > * {
    position: relative;
    z-index: 1;
}

/* 
 * Patient center Page
*/

.divider {
    max-width: 300px;
    color: #a3e9dc;
}
.petcenter .divider.is-style-wide {
    color: #fff;
}
/* 
 * Discounts For Dogs Page
*/

.promotion-bg{
    background-color: #16ab90 !important;
}
.parallax-fast {
    background-size: 120% !important;
    will-change: background-position;
}

/* 
 * Contact Page
*/

.map-wrapper {
	  position: relative;
	  width: 100%;
	  height: 600px; 
	  overflow: hidden;
}

.map-wrapper iframe {
	  width: 100%;
	  height: 100%;
	  border: 0;
}

.map-overlay {
	  position: absolute;
	  inset: 0;
	  opacity: 0;
	  transition: opacity 0.4s ease;
	  pointer-events: none;
}

/* posts */
.post-divider {
    border-top: 1.89px solid #9a9a9a;
    margin:0;
}
.dynamic-entry-content {
    color: #7a7a7a;
    text-decoration: none;
}

.dynamic-entry-content a {
    color: #391866;
    text-decoration: none;
    transition: color 0.2s ease;
}

.dynamic-entry-content a:hover,
.dynamic-entry-content a:focus {
    color: #a3e9dc;
}


/* 
 *	Footer styles 
 */
.f-text-hover a:hover{
    color: #75b8ac;
}

.divider {
    max-width: 330px;
    width: 100%;
    color:#000;
    height: 0.5px;
    transform: scaleY(0.5); 
    transform-origin: 0 0;
	margin: 0;
}

.footer-slider .gb-carousel-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background: transparent ;
  border: none;
  border-radius: 0;
  z-index: 20;
  box-shadow: none;
  transition: opacity 0.3s ease;
}

.footer-slider .gb-carousel-control:hover {
  opacity: 0.8;
}

.footer-slider .gb-carousel-control--previous {
  left: 10px;
}

.footer-slider .gb-carousel-control--next {
  right: 10px;
}


.footer-slider .gb-carousel-items {
  overflow: visible ;
}

.footer-slider .gb-carousel-item {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.footer-slider .gb-carousel-item.is-active {
  opacity: 1;
}


.footer-slider .gb-carousel-dot.is-active {
  background-color: #391866;
  transform: scale(1.2);
}

.footer-slider.gb-carousel {
  overflow: hidden;
  width: 100%;
  position: relative;
}

.footer-slider {
  position: relative;
  padding: 0 60px;
}

.footer-slider .gb-carousel-item {
  box-sizing: border-box;
}

.footer-slider.gb-carousel-autoheight .gb-carousel-items {
  height: auto;
  min-height: 200px;
}
.footer-slider .gb-carousel-pagination {
  border: 5px solid transparent;
}
@media (max-width: 1442px) {
    .zero-padding {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

@media (max-width: 1204px) {

    .gb-navigation--mobile .gb-menu-toggle {
        background: #391866 !important;
        color: #ffffff !important;
    }

    .gb-navigation--mobile 
    .gb-menu-container.gb-menu-container--mobile {
        background: #7a7a7a !important;
    }

    .gb-navigation--mobile ul.gb-menu > li:not(:last-child) {
        border-bottom: 1px dashed rgb(160 228 216);
    }

    .gb-navigation--mobile ul.gb-menu > li > a.gb-menu-link {
        color: #ffffff !important;
        transition: all 0.3s ease;
    }

    .gb-navigation--mobile ul.gb-menu > li > a.gb-menu-link:hover {
        background: rgb(63 68 75);
    }

    .gb-navigation--mobile .gb-submenu-toggle {
        color: #ffffff !important;
    }

    .gb-navigation--mobile 
    ul.gb-sub-menu > li > a.gb-menu-link {
        color: #a0e5d9 !important;
        padding-left: 30px;
    }
	  .gb-navigation--mobile #menu-main .gb-submenu-toggle {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M20.1 9L12 17.1 3.9 9z'/%3E%3C/svg%3E") !important;
    }
	
/* 	Footer slider  */
	.footer-slider {
    padding: 0 20px;
  }
  
  .footer-slider .gb-carousel-control {
    width: 32px;
    height: 32px;
  }
  
  .footer-slider .gb-carousel-control--previous {
    left: 0;
  }
  
  .footer-slider .gb-carousel-control--next {
    right: 0;
  }
  
  .footer-slider.gb-carousel-autoheight .gb-carousel-items {
    min-height: 180px;
  }
}
  body .map-wrapper {
    height: 450px !important;
  }

@media (max-width: 768px) {
    #parallax-bg {
        background-position: center center !important;
        background-attachment: scroll !important;
    }
	  .zoom-bg {
        animation: none;
        background-size: cover;
    }
	body .map-wrapper {
		height: 320px !important;
	  }
}

@media screen and (max-width: 479px) {
  .footer-slider {
    padding: 0 15px;
  }
  
  .footer-slider .gb-carousel-control {
    width: 28px;
    height: 28px;
  }
  
  .footer-slider.gb-carousel-autoheight .gb-carousel-items {
    min-height: 160px;
  }
}