/**
Theme Name: Kapsida
Author: Pixforma
Author URI: https://pixforma.com/
Description: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: child-theme-astra
Template: astra
*/

/*
@keyframes kapFadeInUp {
  0% {transform: translate3d(0, 20px, 0);}
  100% {transform: translate3d(0, 0, 0);}
}
*/
@keyframes kapFadeIn{
    0%{opacity:0}
    to{opacity:1}
}

@keyframes kapFadeInUp{
    0%{transform:translate3d(0,7vh,0)}
    to{transform:translateZ(0)}
}

@keyframes iconMove {
    0%{transform:translateX(0);}
    50%{transform:translateX(5px);}
    100%{transform:translateX(0);}
}

.single-product nav.post-navigation {
    display:none;
}

.elementor-button-content-wrapper {
    align-items: center;
}

.elementor-button-wrapper .elementor-button-icon {
    animation: iconMove 1s infinite ;
}

.fadeInUp {
    animation-name:kapFadeInUp,kapFadeIn!important;
    animation-timing-function:cubic-bezier(.22,1,.36,1),cubic-bezier(0,0,.2,1)
}

.fadeIn {
    animation-name:kapFadeIn!important;
    animation-timing-function:cubic-bezier(.22,1,.36,1),cubic-bezier(0,0,.2,1);
}

.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

.white-popup {
	position: relative;
	background: #FFF;
	padding: 0px;
	width: auto;
	max-width: 500px;
	margin: 20px auto;
}

.single.ast-page-builder-template .entry-header + .entry-content, 
.single.ast-page-builder-template .ast-single-entry-banner + .site-content article .entry-content {
    margin-bottom: 0 !important;
}

body.single-post #primary.content-area,
body.single-event #primary.content-area,
body.single-event .ast-article-single {
	padding: 0;
}
body.single-post .ast-container,
body.single-event .ast-container {
	padding: 0 20px;
}
body.single-product header.entry-header {
    display: none !important;
}

body.single-event #primary{
	margin: 0;
}

.kap-dropdown {
  display: inline-block;
  position: relative;
  
}

.kap-dropdown:hover {
    z-index: 2;
}

.kap-dropdown .dropdown-button{
  border:none;
  padding:15px 0px;
  font-size:24px;
  font-weight: 500;
  cursor:pointer;
  display: flex;
  align-items: center;
  line-height: 1;
}

.kap-dropdown .dropdown-button .button-icon{
    margin-left: 16px;
    line-height: 0;
    padding-top: 4px;
    font-size: 18px;
}


.kap-dropdown .dropdown-options {
    display: none;
  position: absolute;
  overflow: auto;
  background-color:#fff;
  box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.4);
  min-width: 180px;
  padding-bottom: 8px;
  padding-top: 8px;
  right: 0px;
  transition: all 0.2s;
}

.kap-dropdown:hover .dropdown-options {
    display: block;
}

.kap-dropdown .dropdown-options a {
  display: block;
  color: #A78585;
  font-size: 18px;
  text-decoration: none;
  padding:8px 24px;
  line-height: 1;
}

.kap-dropdown .dropdown-options a.selected,
.kap-dropdown .dropdown-options a:hover {
  color: #ff7a73;
}

.video-review-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 24px;
}

.video-review-container .video-review-item {
    display: flex;
    background: #ffffff;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 15px 15px 15px rgba(0, 0, 0, 0.05);
}

.video-review-container .video-wrapper{
    width: 45%;
}
.video-review-container .testi-wrapper {
    width: 55%;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: relative;
}

.video-review-container .video-thumbnail {
    background: #cccccc;
    position: relative;
    cursor: pointer;
}

.video-review-container .video-thumbnail .play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.video-review-container .video-thumbnail .play-button svg {
    width: 60px;
    height: 60px;
    opacity: .8;
    transition: all .5s;
    fill: #ff7a73;
}

.video-review-container .testi-contact,
.video-review-container .testi-star {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;    
}

.video-review-container .testi-contact {
	max-height: 50px;
	overflow: hidden;
}

.video-review-container .testi-contact img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
}

.video-review-container .testi-contact h6 {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
}

.video-review-container .testi-star img {
    height: 10px;
}

.video-review-container .testi-star {
    font-size: 14px;
    color: #39202240;
    line-height: 1;
    max-height: 14px;
	overflow: hidden;
}

.video-review-container .testi-content {
    font-size: 16px;
    line-height: 1.2em;
    flex-grow: 1;
    position: absolute;
    bottom: 24px;
    left: 24px;
    right: 24px;
    top: 104px;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none;
}

.video-review-container .testi-content p:last-child {
    margin-bottom: 0;
}

.video-player-wrapper {
	aspect-ratio: 0.5625;
	position: relative;
	padding: 0px;
	width: auto;
	max-width: 360px;
	margin: 20px auto;
}

.video-player-wrapper video {
	width: 100%;
}

.product-gallery-container {
    display: flex;
    align-items: center;
}

.product-gallery-container .product-carousel-wrapper {
    order: 2;
    width: calc(100% - 132px);
    padding-left: 28px;
}

.product-gallery-container .product-carousel-item {
    padding: 8px;
}

.product-gallery-container .product-carousel-item img {
    margin-left: auto;
    margin-right: auto;
}

.product-gallery-container .product-thumbnail-wrapper {
    width: 132px;    
}


.product-gallery-container .product-thumbnail-prev,
.product-gallery-container .product-thumbnail-next {
    cursor: pointer;
    color: #FF7A73;
    font-size: 32px;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-10px, -50%);
    z-index: 2;
    opacity: 0;
    transition: all 0.2s ease;
}

.product-gallery-container .product-thumbnail-next {
    transform: translate(10px, -50%);
    right: 0;
    left: unset;
}

.product-gallery-container .product-carousel:hover .product-thumbnail-prev,
.product-gallery-container .product-carousel:hover .product-thumbnail-next {
    opacity: 1;
    transform: translate(0, -50%);
}

.product-gallery-container .product-thumbnail-item {
    margin-top: 8px;
    margin-bottom: 8px;
    cursor: pointer;
    border: 4px solid #F6F7F9;
}

.product-gallery-container .product-thumbnail-item.slick-current {
    border-color: #FF7A73;
}

.apotek-list-wrapper .location-name {
    color: #eb848c;
    border-bottom: 1px solid #eb848c;
    font-weight: 500;
    padding: 12px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

.apotek-list-wrapper .location-name .fa-plus {
    font-size: 18px;
}

.apotek-list-wrapper .location-name.open .fa-plus:before {
    content: "\f068";
}

.apotek-list-wrapper .location-content {
    border-bottom: 1px solid #eb848c;
    padding: 12px 0px;
    display: none;
}

.apotek-location.level-1 > .location-content {
    padding: 0 0 0 24px;
    border-bottom: 1px solid #eb848c;
}

.apotek-location.level-1 > .location-content > .apotek-location.level-2:last-child {
    margin-bottom: -1px;
}

.apotek-container .location-content-flex {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto;
}

.apotek-container .apotek-list-item {
    border-radius: 15px;
    background: #F6F7F9;
    padding: 16px 24px;
    font-size: 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.apotek-container .apotek-list-item .item-name {
    font-weight: 600;
}

.apotek-container .apotek-list-item .item-info {
    display: flex;
    justify-content: flex-start;
    gap: 8px;
}

.apotek-container .apotek-list-item .item-info i {
    color: #F26163;
    margin-top: 5px;
}

.apotek-container .apotek-list-item .item-info p:last-child {
    margin-bottom: 0;
}

.apotek-search-wrapper {
    margin-bottom: 12px;
}

.apotek-search-wrapper .search-input,
.apotek-search-wrapper .search-input:focus {
    border: 1px solid #EB848C;
}

.apotek-search-wrapper .search-input {
    border-radius: 8px;
    padding-right: 110px;
    height: 40px;
}

.apotek-search-wrapper .search-button {
    border-radius: 0 8px 8px 0;
    background-color: #FF7A73;
    background-image: linear-gradient(90deg, #FF7A73 0%, #FFB2AE 100%);
    padding: 11px 24px;
    font-weight: 500;
    position: absolute;
    top: 0;
    right: 0;
    width: 110px;
    height: 40px;
    text-align: center;
}

.apotek-search-wrapper .search-button i {
    margin-left: 4px;
}

.apotek-search-wrapper .search-button:hover {
    color: #ffffff;
}

.apotek-search-dropdown-wrapper {
    background: #ffffff;
    border: 0;
    border-radius: 8px;
    padding: 0;
    position: absolute;
    width: 100%;
    top: 48px;
    opacity: 0;
    transform: translateY(16px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    height: 0;
}

.apotek-search-dropdown-wrapper.show {
    opacity: 1;
    height: auto;
    padding: 12px 16px;
    border: 1px solid #EB848C;
    transform: translateY(0px);
}

.apotek-search-dropdown-wrapper > div {
    cursor: pointer;
    margin: 8px 0;
    color: #475569;
    font-size:18px;
}

.apotek-search-dropdown-wrapper > div:hover {
    color: #eb848c
}

.apotek-search-result-wrapper {
    padding: 0;
    margin-bottom: 0;
    height: 0;
    transition: opacity 0.3s ease;
    opacity: 0;
}

.apotek-search-result-wrapper.show {
    height: auto;
    padding: 12px 0px;
    margin-bottom: 24px;
    opacity: 1;
}

.ast-scroll-to-top-right {
    right: 20px;
}

@media (max-width: 1024px) {
    .kap-dropdown .dropdown-button{
      font-size:20px;
    }

    .kap-dropdown .dropdown-button .button-icon,
    .kap-dropdown .dropdown-options a { 
        font-size: 16px;
    }

    .video-review-container {
    	grid-template-columns: repeat(2, 1fr);
    	grid-gap: 20px;
	}

	.video-review-container .testi-wrapper {
		padding: 16px;
	}

	.video-review-container .testi-contact {
		max-height: 40px;
	}

	.video-review-container .testi-contact img {
		width: 40px;
		height: 40px;
	}

	.video-review-container .testi-contact h6 {
		font-size: 16px;
	}

	.video-review-container .testi-content {
		left: 16px;
		right: 16px;
		bottom: 16px;
		top: 86px;
		font-size: 14px;
	}

	.video-review-container .video-thumbnail .play-button svg {
		width: 40px;
		height: 40px;
	}

    .product-gallery-container .product-carousel-wrapper {
        width: calc(100% - 127px);
    }

    .product-gallery-container .product-thumbnail-wrapper {
        width: 127px;
    }
    
    .product-gallery-container .product-thumbnail-prev,
    .product-gallery-container .product-thumbnail-next {
        transform: translate(0, -50%) !important;
        opacity: 1 !important;
    }
}

@media (max-width: 767px) {
	.video-review-container .testi-contact h6 {
		font-size: 14px;
	}

	.video-review-container {
    	grid-template-columns: repeat(1, 1fr);
    	grid-gap: 24px;
	}

	.video-review-container .testi-content {
		top: 84px;
	}

	.video-review-container .testi-star {
		font-size: 12px;
	}

	.video-review-container .testi-star img {
		height: 8px;
	}

	.video-player-wrapper {
		max-width: 240px;
	}

    .product-gallery-container {
        display: block;
    }

    .product-gallery-container .product-carousel-wrapper {
        order: unset;
        width: 100%;
        padding: 0;
    }

    .product-gallery-container .product-thumbnail-wrapper {
        width: 100%;
        margin-top: 4px;
    }

    .product-gallery-container .product-thumbnail {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .product-gallery-container .product-thumbnail-item {
        margin: 0 8px;
    }

    .product-gallery-container .product-thumbnail-item {
        border-width: 2px;
        margin: 0 4px;
    }

    .product-gallery-container .product-carousel-item {
        padding: 4px;
    }

    .ast-scroll-to-top-right {
        right: 10px;
        bottom: 10px;
    }

    .apotek-container .location-content-flex {
        grid-template-columns: repeat(1, 1fr);
    }

    .apotek-container .apotek-list-item {
        font-size: 14px;
    }
    
    .apotek-search-result-wrapper.show {
        padding-left: 0;
        padding-right: 0;
    }
    
    .apotek-search-wrapper .search-input {
        padding-right: 76px;
        font-size:14px;
    }
    
    .apotek-search-wrapper .search-button {
        padding-left: 12px;
        padding-right: 12px;
        width: 76px;
    }
    
    .product-gallery-container .product-thumbnail-prev, .product-gallery-container .product-thumbnail-next {
        font-size: 16px;
        display: none !important;
    }
}