/*
Theme Name: Appetito Child
Theme URI: http://appetito.mikado-themes.com
Description: A child theme of Appetito Theme
Author: Mikado Themes
Author URI: http://themeforest.net/user/mikado-themes
Version: 1.0.0
Text Domain: appetito
Template: appetito
*/

/* Slick slider default styling */
/* .slick-list */
.slick-list {
  margin-left: -17px;
  margin-right: -17px;
}

/* .slick-slide */
.slick-slide {
  padding-left: 17px;
  padding-right: 17px;
}

@media (max-width: 1199px) {
  .slick-list {
    margin-left: -10px;
    margin-right: -10px;
  }

  .slick-slide {
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* slick-dots */
.slick-dots {
  display: flex;
  justify-content: center;
  gap: 5px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
  font-size: 0px;
}

.slick-dots li {
  line-height: 1;
}

.slick-dots button {
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  padding: 0;
  border-radius: 9999px;
  border: 1px solid #fff;
  background-color: #223268;
  font-size: 0;
  line-height: 1;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

.slick-dots button:hover {
  background-color: #6b7280;
}

.slick-dots .slick-active button {
  background-color: #db124b;
}

/* .slick-arrow */
.slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 9999px;
  font-size: 0px;
  border: 1px solid transparent;
  background-color: #fff;
  color: #88714d;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.16);
}

.slick-arrow:hover {
  background: #88714d;
  border-color: #88714d;
  color: #ffffff;
}

.slick-prev {
  left: -8px;
}

.slick-next {
  right: -8px;
}

.slick-arrow::before {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  content: url("data:image/svg+xml,%3Csvg%20width%3D%2210%22%20height%3D%2218%22%20viewBox%3D%220%200%2010%2018%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M10%202.306%203.814%209%2010%2015.694%208.086%2017.75%200%209%208.086.25z%22%20fill%3D%22%2388714D%22%2F%3E%3C%2Fsvg%3E");
  line-height: 0;
  transition: 0.2s all ease-in-out;
}

.slick-arrow:hover::before {
  filter: brightness(100);
}

.slick-next::before {
  transform: scaleX(-1);
}

/* Hide arrows */
.arrow-none .slick-arrow {
  display: none !important;
}

/* Hide dots */
.dots-none .slick-dots {
  display: none !important;
}

/* CLS Fix */
[class^="slider-col-"],
[class*=" slider-col-"] {
  display: flex;
  visibility: hidden;
}

[class^="slider-col-"].slick-slider,
[class*=" slider-col-"].slick-slider {
  display: block;
  visibility: visible;
}

/* .hover-card  */
.hover-card {
  max-width: 600px;
}

.hover-card__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 290px;
  overflow: hidden;
  margin-bottom: 1rem;
}

.hover-card__inner:hover .hover-card__media {
  transform: translate(40%, 50%);
  max-width: 600px;
  opacity: 0;
  visibility: hidden;
}

.hover-card__inner:hover .hover-card__content .title {
  transform: translate(0);
}

.hover-card__media {
  position: absolute;
  inset: 0;
  z-index: 2;
  height: 100%;
  margin-bottom: 0;
  transition: 0.5s all ease-in-out;
}

.hover-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hover-card__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-repeat: no-repeat;
  background-position: center;
  color: #fff !important;
  height: 100%;
  padding: 2rem;
  text-align: center;
}

.hover-card__content .title {
  transform: translate(-15rem, -8rem);
  font-size: 18px;
  line-height: 28px;
  display: block;
  transition: 0.5s all ease-in-out;
  text-transform: uppercase;
}

.hover-card__content p {
  color: #fff;
}

.hover-card__content::after {
  position: absolute;
  content: "";
  inset: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: -1;
}

.hover-card__bottom {
  text-align: center;
}

.hover-card__bottom .title {
  display: block;
  font-size: 20px;
  font-weight: 500;
  text-transform: uppercase;
  color: #666;
}
.hover-card__inner .learn-more{
  text-decoration: underline;
  text-underline-position: under;
}

@media(max-width:1199px) {
    .hover-card__content p {
        font-size: 14px;
        line-height: 20px;
    }

    .hover-card__bottom .title {
        font-size: 16px;
    }
}

/* Amelia service descriptions that hold page-builder menus (Weekly In-Home Meal Prep).
   Amelia renders descriptions with white-space: break-spaces and line-height: 2, so every line
   break in the markup became a blank line and the empty side columns stacked up on phones. */
.amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_row,
.amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_row * {
    white-space: normal;
    line-height: 1.6;
}

.amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_row h2,
.amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_row h2 *,
.amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_row h3 {
    line-height: 1.3;
}

/* Keep the title underline below the title when it wraps onto two lines. */
.amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_row h2.mkd-st-title {
    position: relative;
    margin-bottom: 22px;
}

.amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_row h2.mkd-st-title::before {
    top: auto;
    bottom: -10px;
}

@media (max-width: 767px) {
    .amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_column_container:has(> .vc_column-inner > .wpb_wrapper:empty) {
        display: none;
    }

    .amelia-v2-booking #amelia-container .am-fcis__info-service__desc .vc_empty_space {
        height: 12px !important;
    }
}

/* Booking cart: Misun is the only chef and every service is booked as a 1-hour placeholder,
   so the employee name and the duration only confuse customers. */
.amelia-v2-booking #amelia-container .am-fs__ci-info__el:has(> .am-icon-user),
.amelia-v2-booking #amelia-container .am-fs__ci-info__el:has(> .am-icon-date-time) {
    display: none;
}
