.elementor-2 .elementor-element.elementor-element-a918f35{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2 .elementor-element.elementor-element-3552a86{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-e86b314{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-9da7ede{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2 .elementor-element.elementor-element-a15010c{text-align:center;}.elementor-2 .elementor-element.elementor-element-a15010c .elementor-heading-title{font-family:"Roboto Slab", Sans-serif;font-size:40px;font-weight:600;line-height:48px;letter-spacing:-5%;color:#2E1A47;}.elementor-2 .elementor-element.elementor-element-5982b9e{width:var( --container-widget-width, 82.902% );max-width:82.902%;--container-widget-width:82.902%;--container-widget-flex-grow:0;text-align:center;}.elementor-2 .elementor-element.elementor-element-5982b9e.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-2 .elementor-element.elementor-element-5982b9e .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:20px;font-weight:600;line-height:28px;letter-spacing:6%;color:#512D1E;}.elementor-2 .elementor-element.elementor-element-a502595{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2 .elementor-element.elementor-element-682155b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-ac02d51{width:100%;max-width:100%;}.elementor-2 .elementor-element.elementor-element-fa39251{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2 .elementor-element.elementor-element-288d531{--display:flex;}.elementor-2 .elementor-element.elementor-element-c4dd5eb{text-align:center;}.elementor-2 .elementor-element.elementor-element-c4dd5eb .elementor-heading-title{font-family:"Rokkitt", Sans-serif;font-size:40px;font-weight:600;line-height:48px;letter-spacing:0.6px;color:#382E4E;}.elementor-2 .elementor-element.elementor-element-b4b2019{--display:flex;}.elementor-2 .elementor-element.elementor-element-7dea5a1{text-align:center;}.elementor-2 .elementor-element.elementor-element-7dea5a1 .elementor-heading-title{font-family:"Montaga", Sans-serif;font-weight:600;line-height:48px;letter-spacing:11%;color:#382E4E;}.elementor-2 .elementor-element.elementor-element-751554c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:60px 60px;--row-gap:60px;--column-gap:60px;--margin-top:050px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2 .elementor-element.elementor-element-31715fd img{width:227px;height:227px;border-radius:36px 36px 36px 36px;}.elementor-2 .elementor-element.elementor-element-42c51e8 img{width:227px;height:227px;object-fit:fill;border-radius:36px 36px 36px 36px;}.elementor-2 .elementor-element.elementor-element-ab40018{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:130px 130px;--row-gap:130px;--column-gap:130px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2 .elementor-element.elementor-element-8f21452 .elementor-button{background-color:#D3A96A;}.elementor-2 .elementor-element.elementor-element-41caf80 .elementor-button{background-color:#D3A96A;font-family:"Roboto", Sans-serif;font-size:15px;font-weight:500;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-16e7ffa *//* Main Resets */
html,
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

.cavins-hero *,
.cavins-hero *::before,
.cavins-hero *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.cavins-hero {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(-50vw + 50%);
    height: 850px;
    background: #2E1A47;
    /* Main top banner purple */
    overflow: hidden;
    font-family: 'Montserrat', sans-serif;
    color: #fff;
}

/* Base Wave Config Containers */
.cavins-hero__waves {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 58%;
    z-index: 1;
}

.cavins-hero__wave {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.cavins-hero__wave.is-active {
    opacity: 1;
}

/* Master Fixed Text Top Left */
.cavins-hero__text-fixed {
    position: absolute;
    top: 5%;
    left: 8%;
    z-index: 30;
    max-width: 650px;
}

.cavins-hero__headline {
    font-family: 'Montecatini Pro', serif;
    font-size: 52px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #fff;
}

.cavins-hero__btn {
    display: inline-block;
    margin-top: 30px;
    background: #C19A5B;
    color: #2E1A47;
    text-decoration: none !important;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    padding: 18px 20px;
    border-radius: 16px;
    transition: transform 0.3s, background 0.3s;
}

.cavins-hero__btn:hover {
    background: #d4ae6d;
    transform: translateY(-2px);
}

/* Variable Flavour Details Bottom Left */
.cavins-hero__flavour-block {
    position: absolute;
    bottom: 15%;
    left: 8%;
    z-index: 40;
    /* High Z index for maximum visibility */
    text-align: center;
}

.cavins-hero__flavour-script {
    font-family: 'Great Vibes', cursive;
    font-size: 60px;
    color: #2E1A47;
    /* Extremely visible dark text */
    line-height: 1;
    transform: rotate(-6deg);
    margin-bottom: 8px;
}

.cavins-hero__flavour-names {
    position: relative;
    height: 28px;
}

.cavins-hero__fname {
    position: absolute;
    top: 0;
    left: 54%;
    transform: translateX(-50%) translateY(10px);
    max-width: 450px;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #2E1A47;
    opacity: 0;
    transition: opacity 0.5s ease, transform 0.5s ease;
    pointer-events: none;
}

.cavins-hero__fname.is-active {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

/* Base Products Grid Overlay */
.cavins-hero__gallery {
    position: absolute;
    inset: 0;
    z-index: 10;
    pointer-events: none;
}

/* Updated Positioning: Current image centered, Next image positioned below with smaller size */
.cavins-hero__item {
    position: absolute;
    transform-origin: center;
    transition: all 0.8s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform, opacity, width;
    pointer-events: auto;
}

.cavins-hero__item img {
    width: 100%;
    height: auto;
    display: block;
    filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.3));
}

/* Active Item - Centered, Large, Prominent */
.cavins-hero__item.is-active {
    bottom: 8%;
    left: 50%;
    transform: translateX(-50%);
    width: 40vw;
    max-width: 850px;
    min-width: 280px;
    opacity: 1;
    z-index: 20;
    pointer-events: auto;
}

/* Next Item - Positioned BELOW the current image, SMALLER size */
.cavins-hero__item.is-next {
    bottom: 35%;
    left: 83%;
    transform: translateX(-50%);
    width: 22vw;
    max-width: 330px;
    min-width: 220px;
    z-index: 15;
    pointer-events: auto;
}

/* Previous Item - Fades out to the left (for smooth backward transition) */
.cavins-hero__item.is-prev {
    bottom: 18%;
    left: 20%;
    transform: translateX(-30%) scale(0.55);
    width: 28vw;
    max-width: 380px;
    opacity: 0;
    z-index: 5;
    pointer-events: none;
}

/* Hidden Items - Completely invisible */
.cavins-hero__item.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* Hover effect for active item */
.cavins-hero__item.is-active:hover {
    transform: translateX(-50%) scale(1.02);
    filter: brightness(1.05);
    transition: transform 0.3s ease;
}

/* Hover effect for next item */
.cavins-hero__item.is-next:hover {
    opacity: 0.85;
    filter: brightness(0.98) blur(0px);
    transform: translateX(-50%) scale(1.03);
    transition: all 0.3s ease;
}

/* EXACT UI SCROLL CORNER CONTROLS IN THE BOTTOM RIGHT */
.cavins-hero__arrows {
    position: absolute;
    bottom: 8%;
    right: 6%;
    z-index: 60;
    display: flex;
    gap: 12px;
}

.cavins-hero__arr {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
}

.cavins-hero__arr--prev {
    border: 1px solid rgba(46, 26, 71, 0.4);
    color: rgba(46, 26, 71, 0.6);
}

.cavins-hero__arr--next {
    border: 1px solid #2E1A47;
    color: #2E1A47;
}

.cavins-hero__arr svg {
    width: 14px;
    height: 14px;
}

.cavins-hero__arr:hover {
    background: rgba(45, 27, 94, 0.05);
    transform: scale(1.05);
}

/* Desktop Responsiveness */
@media (max-width: 992px) {
    .cavins-hero {
        height: 750px;
    }

    .cavins-hero__item.is-active {
        width: 42vw;
        max-width: 400px;
    }

    .cavins-hero__item.is-next {
        width: 30vw;
        max-width: 280px;
        bottom: -3%;
    }
}

/* Tablet Responsiveness */
@media (max-width: 768px) {
    .cavins-hero {
        height: 650px;
    }

    .cavins-hero__waves {
        height: 32%;
    }

    .cavins-hero__wave {
        background-size: 100% 100%;
        background-position: center bottom;
    }

    .cavins-hero__text-fixed {
        top: 10%;
        left: 5%;
    }

    .cavins-hero__headline {
        font-size: 28px;
    }

    .cavins-hero__btn {
        font-size: 11px;
        padding: 10px 20px;
        margin-top: 20px;
    }

    .cavins-hero__flavour-block {
        display: none;
    }

    .cavins-hero__item.is-active {
        width: 80vw;
        max-width: 440px;
        bottom: -2%;
    }

    .cavins-hero__item.is-next,
    .cavins-hero__item.is-prev,
    .cavins-hero__item.is-hidden {
        width: 80vw;
        max-width: 440px;
        bottom: -2%;
        left: 50%;
        transform: translateX(-50%) scale(0.95);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

    .cavins-hero__arrows {
        display: none;
    }
}

/* Mobile Responsiveness */
@media (max-width: 480px) {
    .cavins-hero {
        height: 550px;
    }

    .cavins-hero__headline {
        font-size: 20px;
    }

    .cavins-hero__btn {
        font-size: 10px;
        padding: 8px 16px;
        margin-top: 12px;
    }

    .cavins-hero__item.is-active {
        width: 95vw;
        max-width: 380px;
        bottom: -2%;
    }

    .cavins-hero__item.is-next,
    .cavins-hero__item.is-prev,
    .cavins-hero__item.is-hidden {
        width: 95vw;
        max-width: 380px;
        bottom: -2%;
        left: 50%;
        transform: translateX(-50%) scale(0.95);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

}

/* Small Mobile */
@media (max-width: 380px) {
    .cavins-hero {
        height: 500px;
    }

    .cavins-hero__item.is-active {
        width: 100vw;
        max-width: 380px;
        bottom: -2%;
    }

    .cavins-hero__item.is-next,
    .cavins-hero__item.is-prev,
    .cavins-hero__item.is-hidden {
        width: 100vw;
        max-width: 380px;
        bottom: -2%;
        left: 50%;
        transform: translateX(-50%) scale(0.95);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }
}

/* Ensure smooth transition flow is preserved */
.cavins-hero__item {
    transition: all 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.cavins-hero__item.is-active,
.cavins-hero__item.is-next,
.cavins-hero__item.is-prev {
    transition: all 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bc4dc7d *//* Section & Container */
.creed-section {
  background-color: #2a1b41; 
  padding: 80px 20px;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  font-family: 'Josefin Slab', serif;
}

.creed-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* Headings */
.creed-heading {
  font-family: 'Montecatini Pro', serif; /* Or 'icecream_font' */
  font-weight: 600;
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.11em;
  text-align: center;
  color: #F1E6FF; 
  text-transform: uppercase;
  margin-bottom: 20px;
}

.creed-subheading {
  font-family: 'Josefin Slab', serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 0.06em;
  text-align: center;
  color: #cbbce3; 
  margin-bottom: 60px;
}

/* Cards Wrapper */
.creed-cards-wrapper {
  display: flex;
  justify-content: center;
  align-items: center; 
  gap: 20px;
  flex-wrap: wrap;
}

/* Base Card Styling */
.creed-card {
  position: relative;
  border-radius: 20px;
  overflow: hidden; /* Keeps video corners rounded */
  box-shadow: 0 10px 20px rgba(0,0,0,0.3);
  background-color: #4b3b5c; 
  transition: transform 0.3s ease;
}

.creed-card:hover {
  transform: translateY(-5px);
}

/* Media Backgrounds (Images & Videos) */
.creed-bg-media {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}

/* Card Sizing */
.card-tall { width: 220px; height: 380px; }
.card-small { width: 180px; height: 200px; margin-top: 80px; } 
.card-medium { width: 200px; height: 320px; margin-top: 40px; } 

/* =========================================
   NEW FIXES FOR CARD 3 & 5
   ========================================= */

/* FIX 1: Force the 3rd card image to fill the whole height */
.card-smooth .creed-bg-media {
  height: 100% !important;
  object-fit: cover !important;
}

/* FIX 2: Let the nuts pop OUT of the 5th card */
.card-creative {
  overflow: visible !important; /* Allows the image to break out of the box */
}

.card-creative .creed-bg-media {
  width: 130%; /* Makes the image larger than the box */
  height: auto;
  top: -20%; /* Pushes the image UP and out of the box */
  left: 8%; /* Centers the widened image */
  object-fit: contain; 
}


/* Content Positioning inside cards */
.creed-content {
  position: absolute;
  display: flex;
  flex-direction: column;
  z-index: 2;
  padding: 25px;
}

.top-left { top: 0; left: 0; }
.center-left { top: 50%; left: 0; transform: translateY(-50%); }
.bottom-left { bottom: 0; left: 0; }
.bottom-center { bottom: 0; left: 50%; transform: translateX(-50%); width: 100%; align-items: center; }

/* Text Colors */
.dark-text { color: #2a1b41; }
.light-text { color: #ffffff; }
.text-center { text-align: center; }

/* Font Specifications */
.txt-dairy { font-weight: 700; font-size: 20px; line-height: 22px; letter-spacing: 0.11em; }
.txt-heritage { font-weight: 700; font-size: 32px; line-height: 48px; letter-spacing: 0.03em; }
.txt-fruit { font-weight: 700; font-size: 28px; line-height: 48px; letter-spacing: 0.11em; }
.txt-integrity { font-weight: 700; font-size: 20px; line-height: 22px; letter-spacing: 0.11em; }
.txt-unrivalled { font-weight: 700; font-size: 20px; line-height: 22px; letter-spacing: 0.11em; }
.txt-smoothness { font-weight: 700; font-size: 28px; line-height: 36px; letter-spacing: 0.11em; }
.txt-rich { font-weight: 700; font-size: 32px; line-height: 48px; letter-spacing: 0.03em; }
.txt-creaminess { font-weight: 700; font-size: 20px; line-height: 22px; letter-spacing: 0.11em; }
.txt-boundaryless { font-weight: 700; font-size: 32px; line-height: 48px; letter-spacing: 0.03em; }
.txt-creativity { font-weight: 700; font-size: 20px; line-height: 22px; letter-spacing: 0.11em; }

/* Responsive adjustments for mobile */
@media (max-width: 900px) {
  .creed-cards-wrapper { flex-direction: column; }
  .card-small, .card-medium { margin-top: 0; }
  .creed-card { width: 100% !important; max-width: 320px; height: 300px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6b731f0 *//* ROOT SCOPE */
.scoops-section {
  padding: 60px 0;
  text-align: center;
}

/* SWIPER */
.scoops-section .scoops-swiper {
  width: 100%;
}

/* SLIDES */
.scoops-section .scoops-slide {
  width: 296px !important;
  transition: all 0.4s ease;
  opacity: 0.3;
  transform: scale(0.8);
}

/* SIDE */
.scoops-section .scoops-slide.swiper-slide-prev,
.scoops-section .scoops-slide.swiper-slide-next {
  opacity: 0.6;
  transform: scale(0.9);
}

/* ACTIVE */
.scoops-section .scoops-slide.swiper-slide-active {
  opacity: 1;
  transform: scale(1);
}

/* CARD */
.scoops-section .scoops-card {
  width: 296px;
  height: 370px;
  border-radius: 22px;
  overflow: hidden;
  background: #000;
}

/* MEDIA */
.scoops-section .scoops-card img,
.scoops-section .scoops-card video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* TITLE */
.scoops-section .scoops-title {
  margin-top: 12px;
  font-size: 14px;
  color: #333;
}

/* CONTROLS */
.scoops-section .scoops-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 60px;
}

/* 🔥 OVERRIDE SWIPER DEFAULT */
.scoops-section .scoops-pagination {
  position: relative !important;
  width: auto !important;
  left: auto !important;
  bottom: auto !important;

  display: flex;
  align-items: center;
  justify-content: center;

  height: 48px;
  font-size: 16px;
  font-weight: 500;
}

/* NUMBER ALIGN */
.scoops-section .scoops-pagination span {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* DASH */
.scoops-section .scoops-pagination .dash {
  margin: 0 4px;
}

/* CURRENT */
.scoops-section .swiper-pagination-current {
  font-weight: 700;
}

/* ARROWS */
.scoops-section .scoops-prev,
.scoops-section .scoops-next {
  position: relative !important;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #ccc;
}

.scoops-section .scoops-prev::after,
.scoops-section .scoops-next::after {
  font-size: 16px;
  color: #000;
}

/* ALIGN */
.scoops-section .swiper-wrapper {
  align-items: center;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ac02d51 *//* Section Container */
.legacy-section {
  background-color: #ffffff; /* Assuming white background based on image */
  padding: 80px 20px;
  font-family: 'Arial', sans-serif;
}

.legacy-container {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Heading based on your exact specs */
.legacy-heading {
  font-family: 'Montecatini Pro', serif; /* Change to 'icecream_font' if uploaded that way */
  font-weight: 600;
  font-size: 40px;
  line-height: 48px;
  letter-spacing: 0.11em; /* 11% */
  text-align: center;
  color: #2a1b41; /* Dark purple from your brand */
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 25px;
}

/* Subheading based on your exact specs */
.legacy-subheading {
  font-family: 'Josefin Slab', serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 0.06em; /* 6% */
  text-align: center;
  color: #6a6358; /* Muted brownish-gray */
  max-width: 800px;
  margin: 0 auto 50px auto;
}

/* Media/Video Container */
.legacy-media-wrapper {
  position: relative;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
  margin-bottom: 40px;
  cursor: pointer;
}

.legacy-main-img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Play Button Overlay */
.legacy-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Play button hover effect */
.legacy-media-wrapper:hover .legacy-play-btn {
  transform: translate(-50%, -50%) scale(1.1);
  box-shadow: 0 12px 25px rgba(0, 0, 0, 0.3);
}

/* Read Our Story Button */
.legacy-button {
  display: inline-block;
  background-color: #d1ab66; /* Golden/Tan color */
  color: #2a1b41; /* Dark purple text */
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 16px 36px;
  border-radius: 50px; /* Pill shape */
  transition: background-color 0.3s ease, transform 0.2s ease;
}

.legacy-button:hover {
  background-color: #c49d56; /* Slightly darker gold on hover */
  transform: translateY(-2px);
}

/* Responsive adjustments for mobile */
@media (max-width: 768px) {
  .legacy-heading {
    font-size: 32px;
    line-height: 40px;
  }
  .legacy-subheading {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 30px;
  }
  .legacy-play-btn {
    width: 60px;
    height: 60px;
  }
  .legacy-play-btn svg {
    width: 24px;
    height: 24px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7cfbb7c *//* Container styling */
.savor-widget-container {
  background-color: #2a1b41; 
  padding: 0; /* Set to 0 so the wave images touch the top and bottom edges */
  position: relative;
  overflow: hidden;
  font-family: 'Arial', sans-serif; 
  
  /* Force Full Screen Width */
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}

/* --- NEW: Golden Wave Styling --- */
.savor-wave-top, 
.savor-wave-bottom {
  width: 100%;
  height: auto;
  display: block;
  pointer-events: none; /* Prevents the user from accidentally dragging the wave image */
  margin: 0;
  padding: 0;
}

.savor-content-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
  padding: 40px 0; /* Moved the padding here so the content has space between the waves */
}

/* Heading Styling */
.savor-heading {
  color: #fff;
  font-size: 24px;
  font-weight: 300;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 40px;
}

/* Carousel Container */
.savor-carousel-container {
  display: flex;
  gap: 30px;
  overflow-x: auto;
  padding: 20px 40px 40px 40px; 
  scroll-behavior: auto; 
  -ms-overflow-style: none;  
  scrollbar-width: none;  
  cursor: grab;
}

.savor-carousel-container::-webkit-scrollbar {
  display: none; 
}

.savor-carousel-container.active {
  cursor: grabbing;
}

/* Individual Ice Cream Cards */
.savor-item {
  flex: 0 0 auto;
  width: 280px; 
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
}

.savor-img-wrapper {
  width: 100%;
  border-radius: 15px;
  overflow: hidden;
  margin-bottom: 15px;
  box-shadow: 0 10px 20px rgba(0,0,0,0.3);
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.savor-img-wrapper img {
  width: 100%;
  height: auto;
  display: block;
  pointer-events: none; 
  transition: transform 0.5s ease;
}

/* Title under images */
.savor-title {
  color: #d1ab66; 
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0;
  transition: color 0.3s ease;
}

/* --- HOVER ZOOM ANIMATIONS --- */
.savor-item:hover .savor-img-wrapper {
  transform: translateY(-10px); 
  box-shadow: 0 20px 30px rgba(0,0,0,0.6); 
}

.savor-item:hover .savor-img-wrapper img {
  transform: scale(1.1); 
}

.savor-item:hover .savor-title {
  color: #ffffff; 
}

/* Responsive Design for Mobile Devices */
@media (max-width: 768px) {
  .savor-item {
    width: 220px;
  }
  .savor-heading {
    font-size: 20px;
  }
  .savor-carousel-container {
    padding: 10px 20px 30px 20px;
    gap: 20px;
  }
}/* End custom CSS */