/* TypoGraphy */
* {
    box-sizing: border-box;
}

:focus {
    outline: none !important;
    box-shadow: none;
    border-color: inherit;
}

::-webkit-scrollbar {
    width: 0;
}

textarea.form-control {
    resize: none;
    overflow: hidden;
}

html,
body {
    width: 100%;
    overflow-x: hidden;
}

body {
    padding: 0;
    margin: 0;
    font-weight: normal;
    background: #fff;
    overflow-x: hidden;
    font-size: 0.83vw;
    color: #000;
}

img {
    max-width: 100%;
    image-rendering: -webkit-optimize-contrast;
}

a,
a:hover {
    text-decoration: none;
}

p {
    font-size: 0.83vw;
    color: #000;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 1.04vw;
    padding: 0;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #000;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
    color: #01a4ec;
}

h1 {
    font-weight: bold;
    font-size: 5.1vw;
    line-height: 4.38vw;
    color: #585B5D;
}

h2 {
    font-weight: bold;
    font-size: 1.88vw;
    line-height: 1.93vw;
    color: #585B5D;
}

h3 {
    font-weight: bold;
    font-size: 1.46vw;
    line-height: 2.24vw;
    color: #585B5D;
}

h4 {
    font-weight: bold;
    font-size: 1.35vw;
    line-height: 1.56vw;
    color: #585B5D;
}

h5 {
    font-weight: bold;
    font-size: 1.15vw;
    line-height: 1.56vw;
    color: #585B5D;
}

h6 {
    font-weight: bold;
    font-size: 1.04vw;
    line-height: normal;
    color: #585B5D;
}

p {
    font-family: "Montserrat", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 1.04vw;
    line-height: normal;
    color: #fff;
}

p:last-child {
    margin-bottom: 0;
}

ul {
    padding: 0 0 1.04vw 0.94vw;
    margin: 0;
}

ol {
    padding-bottom: 1.04vw;
    padding-left: 0.78vw;
}

ol li {
    position: relative;
    padding-left: 0.26vw;
}

li {
    font-weight: normal;
    font-size: 0.83vw;
    line-height: 1.25vw;
    color: #1A1A1A;
}

li a {
    color: #01a4ec;
}

li a:hover {
    color: #1A1A1A;
}

a {
    transition: 0.7s;
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    color: #03b1e7;
}

a:hover {
    transition: 0.7s;
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    color: #1A1A1A;
}

button {
    padding: 0;
    background-color: transparent;
    border: none;
}

body.mobile-menu {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.btn-pink {
    font-family: 'Noumi';
    font-style: normal;
    font-weight: 400;
    font-size: 2.5vw;
    line-height: 2.5vw;
    text-transform: uppercase;
    color: #ED4C20;
    background: #FACDEC;
    min-width: 13.33vw;
    padding: 0.42vw 1.2vw;
    min-height: 4.32vw;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: 1s;
    -webkit-transition: 1s;
    -moz-transition: 1s;
    border-radius: 0.21vw;
}

.btn-pink:hover {
    background: #181818;
    color: #fff;
}

/** ================== // LOADER SCREEN CSS START // ================== **/
.pre-loader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100vh;
    background: #e5b3e3;
    z-index: 1111;
    border-radius: 0;
    overflow: hidden;
    transition: transform 0.7s;
    transition-timing-function: ease-in;
}

.pre-loader .pre-loader-wrap {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.pre-loader .pre-loader-wrap video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    text-align: center;
    pointer-events: none;
}

.intro-hide .pre-loader {
    transform: translateY(-100%);
}

.pre-loader-mob {
    display: none;
}
button.btn-volume {
    position: absolute;
    left: 2vw;
    bottom: 2vw;
    height: 3.13vw;
    width: 3.13vw;
    z-index: 999;
    background-color: #ffffff;
    border-radius: 100%;
    background-size: 2.08vw;
    background-repeat: no-repeat;
    background-position: center;
    border: 0.05vw solid #ed4c20;
}
button.btn-volume.mute {
    background-image: url("../images/Mute_Icon.png");
}
button.btn-volume.unmute {
    background-image: url("../images/sound-icon.png");
}
/** ================== // LOADER SCREEN CSS END // ================== **/

/** ================== // HEADER CSS START // ================== **/
.top-logo {
    position: absolute;
    top: 2.71vw;
    left: 3.13vw;
    width: 10.42vw;
    z-index: 2;
}

.top-logo img {
    width: 100%;
}

.header .logo img {
    width: 100%;
}

/** ================== // HEADER CSS END // ================== **/

/** ================== // HERO SECTION CSS START // ================== **/
.hero-section {
    background: #E5B4E3;
    padding: 0 0 2.76vw;
    height: 47.45vw;
    overflow: hidden;
}

.hero-title-one {
    position: relative;
    z-index: 1;
}

.hero-title h1 {
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 21.35vw;
    line-height: 26.98vw;
    color: #9FDADB;
    -webkit-text-stroke: 0.05vw #000;
    text-transform: uppercase;
    margin-bottom: 2.6vw;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.hero-title h1 span:nth-child(1) {
    margin-right: -3.13vw;
}

.hero-title h1 span:nth-child(3) {
    margin-left: -3.13vw;
}

.hero-title h1 img {
    width: 11.15vw;
    position: relative;
    left: 0.26vw;
}

.hero-title .aos-animate h1 img {
    animation: rotate 1s linear;
}

@keyframes rotate {
    0% {
        left: -42.97vw;
        transform: rotate(90deg);
    }

    50% {
        transform: rotate(180deg);
    }

    75% {
        transform: rotate(270deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.hero-title h2 {
    text-align: center;
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 15.63vw;
    line-height: 19.79vw;
    color: #FFFFFF;
    margin-top: -9.48vw;
    text-shadow: #9FDADB -1.56vw -1.04vw;
    -webkit-text-stroke: 0.1vw #000;
    margin-bottom: 0;
}

.hero-title h4 {
    font-weight: 400;
    font-size: 4.17vw;
    line-height: 4.79vw;
    text-align: right;
    text-transform: uppercase;
    color: #181818;
    margin-top: -5.16vw;
    margin-right: 0.68vw;
    position: relative;
    top: 0;
    margin-bottom: 0;
    font-family: 'Neue Plak Wide Black';
}

.hero-social-media {
    margin-top: 1.56vw;
}

.hero-social-media ul {
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: flex-end;
    column-gap: 1.04vw;
    padding-right: 1.5vw;
    position: relative;
    top: 1.56vw;
}

.hero-social-media ul li {
    font-size: 2.34vw;
    width: 2.86vw;
    color: #000;
    line-height: 1;
}
.hero-social-media ul li img {
    width: 100%;
}

.hero-social-media ul li a {
    color: #000;
}

.hero-social-media ul li a:hover {
    color: #ED4C20;
}

/** ================== // HERO SECTION CSS END // ================== **/

/** ================== // FULL VIDEO SECTION CSS START // ================== **/
.miami-video-section {
    height: 100vh;
    width: 100%;
    position: relative;
}

.miami-video-section .video-fluid {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-ifm-part {
    position: relative;
    height: 100%;
}
/** ================== // FULL VIDEO SECTION CSS END // ================== **/

/** ================== // MIAMI ICE BABY SECTION CSS START // ================== **/
.miami-ice-baby-section {
    background: #42AF98;
}

.miami-ice-baby-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.miami-ice-baby-left {
    width: 51.55%;
}

.miami-ice-baby-right {
    width: 48.45%;
}
.miami-ice-baby-left-info {
    padding: 9.43vw 4.54vw 10.21vw 4.95vw;
    display: flex;
    align-items: center;
    height: 100%;
    flex-direction: column;
    text-align: center;
        justify-content: center;
        gap: 3rem;
}
.miami-ice-baby-left-info h2 {
    font-style: normal;
    font-weight: 400;
    font-size: 3.33vw;
    text-transform: uppercase;
    color: #FACDEC;
    margin: 0;
    line-height: 130%;
    font-family: 'Neue Plak Wide bold';
    padding-right: 2vw;
}
.miami-ice-baby-left-info h2 sup {
    font-size: 2.33vw;
}

.miami-ice-baby-left-info p b {
    color: #E9DF87;
    font-weight: bold;
}
.miami-ice-baby-left-info h3 {
    font-style: normal;
    font-weight: 400;
    font-size: 1.88vw;
    text-transform: uppercase;
    color: #FACDEC;
    margin: 2.3vw 0 0;
    line-height: 130%;
    font-family: 'Neue Plak Wide bold';
    position: relative;
}
.miami-ice-baby-left-info h3 img {
    position: absolute;
    bottom: -1.15vw;
    right: -5vw;
    width: 5.36vw;
}

.miami-ice-baby-left-info p {
    font-style: normal;
    font-weight: bold;
    font-size: 1.67vw;
    text-transform: uppercase;
    color: #FACDEC;
    margin: 0;
    line-height: 182%;
    font-family: 'Neue Plak Wide bold';
}
.miami-ice-baby-left-info p img {
    width: 2.55vw;
    position: relative;
    top: -0.3vw;
    image-rendering: inherit;
}
.miami-ice-baby-thumb {
    width: 100%;
    height: 100%;
}
.miami-ice-baby-thumb img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

/** ================== // MIAMI ICE BABY SECTION CSS END // ================== **/

/** ================== // OUR STORY SECTION CSS START // ================== **/
.our-story-section {
    background: #ed4c20;
}

.our-story-wrap {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    border: 0.21vw solid #ED4C20;
}

.our-story-section.our-story-repeat-section .our-story-wrap {
    border-color: #3f9635;
}

.our-story-col {
    width: 33.33%;
    border: 0.21vw solid #ED4C20;
    border-radius: 0;
}

.our-story-title h3 {
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 3.33vw;
    line-height: 3.91vw;
    display: flex;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    color: #ED4C20;
    margin-bottom: 0;
    padding: 2.08vw 2.08vw 2.34vw;
    border-bottom: 0.42vw solid #ED4C20;
    background: #FACDEC;
    transition: .6s all;
}

.our-story-col:hover .our-story-title h3 {
    background: #ED4C20;
    color: #FACDEC;
}

.our-story-thumb {
    width: 100%;
    overflow: hidden;
    height: calc(100vh - 8.75vw);
}

.our-story-thumb img {
    width: 100%;
    transition: .5s all;
    height: 100%;
    object-fit: cover;
}

.our-story-col:hover .our-story-thumb img {
    transform: scale(1.1);
}

/** ================== // OUR STORY SECTION CSS END // ================== **/

/** ================== // MARQUEE SECTION CSS START // ================== **/
.marquee-scroll-section {
    position: relative;
    background: #ED4C20;
    padding: 0.68vw 0 5.21vw;
}

.marquee-icecream-wrap {
    width: 10000%;
}

.marquee-icecream-slider {
    overflow: hidden;
}

.marquee-icecream-wrap.ready>* {
    display: inline-block;
    float: left;
    overflow: hidden;

    webkit-animation-timing-function: linear;
    animation-timing-function: linear;

    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;

    -webkit-animation-delay: 1s;
    animation-delay: 1s;

    -webkit-animation-duration: 50s;
    animation-duration: 50s;

    -webkit-animation-name: marginator;
    animation-name: marginator;

    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

/* .marquee-icecream-wrap:hover > * {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
} */

@-webkit-keyframes marginator {
    0% {
        -webkit-transform: translate(0, 0);
        -webkit-transform: translate3d(0, 0, 0);
    }

    100% {
        -webkit-transform: translate(-100%, 0);
        -webkit-transform: translate3d(-100%, 0, 0);
    }
}

@keyframes marginator {
    0% {
        -webkit-transform: translate(0%, 0);
        transform: translate(0, 0);

        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    100% {
        -webkit-transform: translate(-100%, 0);
        transform: translate(-100%, 0);

        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

.marquee-icecream-inner {
    display: flex !important;
    align-items: center;
}

.marquee-icecream-item {
    margin: 0 1.04vw;
    position: relative;
    padding-right: 7vw;
    padding-left: 2vw;
}
.marquee-icecream-item::after {
    width: 2.81vw;
    height: 2.81vw;
    content: "";
    background: #e9df87;
    position: absolute;
    right: 0;
    display: block;
    top: 4.17vw;
    border-radius: 2.81vw;
}
.marquee-icecream-item h4 {
    margin: 0;
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 6.67vw;
    line-height: 9.58vw;
    text-transform: uppercase;
    color: #E9DF87;
}

.ice-cream-img-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: absolute;
    width: 100%;
    padding: 0 3.07vw;
    top: -1.82vw;
    pointer-events: none;
}

.ice-cream-col {
    width: 6.35vw;
}

.ice-cream-image img {
    width: 100%;
}

/** ================== // MARQUEE SECTION CSS END // ================== **/

/** ================== // ICE FLAVORS SECTION CSS START // ================== **/
.ice-flavors-section {
    background: #ED4C20;
    padding: 0 0 7.45vw;
}

.ice-flavors-image {
    width: 15.68vw;
    margin: auto;
}

.ice-flavors-image img {
    width: 100%;
}

.ice-flavors-info {
    padding: 2.6vw 0 0;
    max-width: 79.06vw;
    margin: auto;
}
.ice-flavors-description {
    text-align: center;
}
.ice-flavors-description h2 {
    font-style: normal;
    font-weight: 400;
    font-size: 1.88vw;
    text-transform: uppercase;
    color: #B1FFDF;
    margin: 2.3vw 0 0;
    line-height: 130%;
    font-family: 'Neue Plak Wide bold';
    position: relative;
}
.ice-flavors-description h3 {
    font-style: normal;
    font-weight: 400;
    font-size: 1.88vw;
    text-transform: uppercase;
    color: #FACDEC;
    margin: 2.3vw 0 0;
    line-height: 130%;
    font-family: 'Neue Plak Wide bold';
    position: relative;
}
.ice-flavors-description h3:nth-child(1) {
    margin-top: 0;
}
.ice-flavors-description h3 span {
    position: relative;
    z-index: 1;
    max-width: 46vw;
    display: block;
    margin: 0 auto;
}
.ice-flavors-description h3 span img {
    right: 4vw;
    bottom: -1.2vw;
    width: 3.28vw;
    position: absolute;
    image-rendering: inherit;
}
/* .ice-flavors-description h3::before {
    content: attr(data-label);
    color: #181818;
    position: absolute;
    margin-left: -0.36vw;
    top: -0.1vw;
    text-align: center;
    left: 0;
    right: 0;
} */

.ice-flavors-description h3 span {
    position: relative;
    z-index: 1;
}

/** ================== // ICE FLAVORS SECTION CSS END // ================== **/

/** ================== // OUR FAMILY SECTION CSS START // ================== **/
.miami-bg-video-section {
    position: relative;
  /*  height: 100vh; */
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 700px;
    padding: 6.45vw 30px 7.45vw 30px;
}

.video-part {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.video-part video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-part::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.5;
}

.our-family-section {
    width: 100%;
    z-index: 1;
    position: relative;
}

.our-family-wrap {
    position: relative;
    z-index: 1;
    max-width: 80.26vw;
    margin: 0 auto;
}

.our-family-info .ice-flavors-description h3 {
    color: #E9DF87;
    margin-bottom: 2.28vw;
    font-size: 1.88vw;
    line-height: 1.2;
    margin-top: 0;
}
.our-family-info .ice-flavors-description h3 sup {
    font-size: 1.5vw;
}
.our-family-info .ice-flavors-description h3:last-child {
    margin-bottom: 0;
}

.giangrandi-signature {
    padding-top: 2.28vw;
    width: 25vw;
    margin: auto;
}

.giangrandi-signature img {
    width: 100%;
}

/** ================== // OUR FAMILY SECTION CSS END // ================== **/

/** ================== // RETAILERS SECTION CSS START // ================== **/
.retailers-section {
    background: #FEF8DC;
    padding: 0;
}

.retailers-section .container {
    max-width: 87.03vw;
    padding: 0 0;
}

.retailers-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.retailers-left {
    width: 37%;
    padding: 8.96vw 0 5.89vw;
    /* border-left: 0.1vw solid #DFB1E1;
    border-right: 0.1vw solid #DFB1E1; */
}

.retailers-right {
    width: 63%;
    padding-left: 4.95vw;
    padding-top: 8.96vw;
    padding-bottom: 5.89vw;
}

.retailers-right-info a {
    color: #ED4C20;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.retailers-left-thumb img,
.retailers-location-thumb img {
    width: 100%;
}

.retailers-right-info h4 {
    font-family: 'Neue Plak Wide Black';
    font-weight: bold;
    font-size: 1.88vw;
    line-height: 2.5vw;
    text-transform: uppercase;
    color: #ED4C20;
    margin-bottom: 0.26vw;
    margin-top: -0.31vw;
}

.retailers-right-info p {
    line-height: 1.56vw;
    color: #ED4C20;
    padding-right: 20vw;
}

.retailers-location-thumb {
    margin-top: 1.77vw;
    position: relative;
    max-width: 50.29vw;
    padding: 0 1.88vw 0 0.68vw;
}

.location-pin-dots {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.location-pin-icon {
    width: 1.41vw;
    height: 2.24vw;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: relative;
}

.retailers-location-thumb .location-pin-icon img {
    width: 1.3vw;
}

.location-pin-dots-item {
    position: absolute;
    top: 0;
    left: 0;
}

.pin-item1 {
    top: -0.52vw;
    left: 0.94vw;
}

.pin-item2 {
    top: 3.54vw;
    left: 1.82vw;
}

.pin-item3 {
    top: 15.68vw;
    left: 9.53vw;
}

.pin-item4 {
    top: 1.72vw;
    left: 15.36vw;
}

.pin-item5 {
    top: 8.39vw;
    left: 11.77vw;
}

.pin-item6 {
    top: 9.58vw;
    left: 15.83vw;
}

.pin-item7 {
    top: 10.78vw;
    left: 22.81vw;
}

.pin-item8 {
    top: 16.41vw;
    left: 21.98vw;
}

.pin-item9 {
    bottom: 9.01vw;
    top: auto;
    left: 17.4vw;
}

.pin-item10 {
    bottom: 11.35vw;
    top: auto;
    right: 20.94vw;
    left: auto;
}

.pin-item11 {
    bottom: 5.36vw;
    top: auto;
    right: 20.94vw;
    left: auto;
}

.pin-item12 {
    bottom: 7.14vw;
    top: auto;
    right: 5.21vw;
    left: auto;
}

.popup-location-info-card {
    position: relative;
}

.location-popup-detail {
    position: absolute;
    right: 1.77vw;
    top: -1.04vw;
    width: 9.38vw;
    z-index: 2;
    padding: 0.78vw 0.52vw;
    display: none;
    background: #FFFFFF;
    border: 0.1vw solid #ED4C20;
    border-radius: 0.21vw;
}

.location-pin-dots-item.open .location-popup-detail {
    display: block;
}

.location-popup-detail-inner {
    margin: 0 auto;
}

.location-popup-detail-inner p {
    font-family: "Montserrat", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 0.73vw;
    line-height: 0.89vw;
    color: #ED4C20;
}

.location-popup-close {
    position: absolute;
    right: -0.52vw;
    top: -0.57vw;
    font-size: 0.78vw;
    font-weight: 500;
    cursor: pointer;
    background: #fff;
    border: 0.1vw solid #ed4c20;
    width: 1.3vw;
    height: 1.3vw;
    border-radius: 100%;
    color: #ed4c20;
    display: flex;
    justify-content: center;
    align-items: center;
}

/** ================== // RETAILERS SECTION CSS END// ================== **/


/** ================== // WE LOVE ICECREAM SECTION START // ================== **/
.love-icecream-section {
    padding: 0 0 0.1vw;
    background: #FEF8DC;
    position: relative;
}

.love-icecream-slide-item {
    font-family: 'Neue Plak Wide bold';
    font-weight: 900;
    font-style: normal;
    font-size: 41.67vw;
    line-height: 18.75vw;
    text-transform: uppercase;
    color: #9FDADB;
    margin-bottom: 14.58vw;
    position: relative;
    z-index: 2;
}

.miami-ice-baby-banner {
    margin-top: -17.19vw;
    position: relative;
    z-index: 1;
    overflow: hidden;
    height: 100vh;
}

.miami-ice-baby-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.love-icecream-grid__bg__absolute {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    top: 0;
    height: 100%;
    padding-left: 6.09vw;
    padding-right: 6.09vw;
}

.video__card {
    position: absolute;
    z-index: 22;
}

.video__card:nth-child(1) {
    left: 35.48vw;
    top: 12.38vw;
}

.video__card:nth-child(1) img {
    width: 36.67vw;
}

.video__card:nth-child(2) {
    right: 12.63vw;
    top: 41.06vw;
}

.video__card:nth-child(2) img {
    width: 36.67vw;
}

.video__card:nth-child(3) {
    left: 24.48vw;
    top: 75.52vw;
}

.video__card:nth-child(3) img {
    width: 36.67vw;
}

.video__card:nth-child(4) {
    right: 15.63vw;
    top: 108.21vw;
}

.video__card:nth-child(4) img {
    width: 36.67vw;
}

.video__card:nth-child(5) {
    right: 10.42vw;
    top: 75.52vw;
}

.video__card:nth-child(5) img {
    width: 21.82vw;
}

.video__card:nth-child(6) {
    right: 15.63vw;
    top: 105.21vw;
}

.video__card:nth-child(6) img {
    width: 26.77vw;
}

.icecream-line.love-icecream-grid-line1 {
    height: 100%;
}

.love-icecream-grid-bottom {
    height: 0.1vw;
    width: 92.65vw;
    background: #DFB1E1;
    position: absolute;
    bottom: 61.98vw;
    right: 0.78vw;
}

.icecream-line-wrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    padding-left: 6.50vw;
    padding-right: 6.30vw;
}

.icecream-line {
    height: 100%;
    width: 26.33%;
    border-left: #DFB1E1 0.1vw solid;
}

/** ================== // WE LOVE ICECREAM SECTION END // ================== **/

/** ================== // CHOCOLATE FLAVORS SECTION CSS START // ================== **/
.chocolate-flavors-section {
    background: #E5B4E3;
    padding: 5.25vw 0 11.46vw;
    position: relative;
    overflow: hidden;
}

.chocolate-circle-shape {
    width: 57.29vw;
    height: 57.29vw;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -23.18vw;
    border: 0.52vw solid #B1FFDF;
    display: block;
    border-radius: 100%;
    margin: auto;
}

.chocolate-flavors-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    /* align-items: flex-end; */
    position: relative;
}

.chocolate-flavors-left {
    width: calc(100% - 28.49vw);
    height: calc(100vh - 8vh);
}

.chocolate-flavors-left-info {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.chocolate-flavors-right {
    width: 28.49vw;
    position: relative;
    z-index: 11;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.chocolate-flavors-left-info h2 {
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 5vw;
    line-height: 5vw;
    color: #E9DF87;
    margin-bottom: 2.6vw;
}

.chocolate-flavors-left-info h3 {
    font-family: 'Noumi';
    font-weight: 400;
    font-size: 4.17vw;
    line-height: 4.17vw;
    text-transform: uppercase;
    color: #ED4C20;
    margin-bottom: 1.3vw;
    padding-right: 9.9vw;
}

.chocolate-flavors-left-info p {
    line-height: 1.88vw;
    color: #181818;
}

.chocolate-flavors-title {
    padding-top: 2.34vw;
}

.chocolate-flavors-title h4 {
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 9.38vw;
    line-height: 5.21vw;
    text-transform: uppercase;
    text-align: left;
    color: #B1FFDF;
    margin: 0;
}

.miami-ice-baby-banner-marquee img {
    width: 100%;
}

.chocolate-flavors-section.chocolate-slide2 {
    background: #9FDADB;
}

.chocolate-flavors-section.chocolate-slide2 .chocolate-flavors-left-info h2 {
    color: #3F9635;
}

.chocolate-flavors-section.chocolate-slide2 .chocolate-flavors-left-info .chocolate-flavors-title h4 {
    color: #B1FFDF;
}

.chocolate-carousel {
    margin-bottom: -0.31vw;
}


.slides-container {
    position: relative;
    overflow: hidden;
    background: #E5B4E3;
    width: 100%;
}

.slides-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    height: 100vh;
    padding: 50px 0vw 50px 5.47vw;
}

.left-panel {
    width: calc(100% - 28.49vw);
    height: auto;
    padding: 1vw 0 2vw;
    z-index: 20;
}

.left-inner {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.right-panel {
    width: 28.49vw;
    position: relative;
    z-index: 11;
    display: flex;
    flex-direction: column;
    justify-content: center;
    bottom: 0;
    z-index: 20;
    height: calc(100vh - 100px);
}

.right-panel .flavors-right-arrow {
    width: 80px;
    position: absolute;
    bottom: 0px;
    right: 45%;
    cursor: pointer;
}

/* #svgCurve {
    position: absolute;
    left: 7vw;
    top: -35vw;
    width: 60vw;
    height: 92vw;
    overflow: visible;
} */

#svgCurve {
    position: absolute;
    left: 7vw;
    top: 0;
    width: 45vw;
    height: 100vh;
    overflow: visible;
}

#ice {
    position: absolute;
    /* left: -2.25vw;
    top: -14vw; */
    left: -7vw;
    width: 20vw;
    height: auto;
    transform: translate(0, 0);
}

#ice-current,
#ice-next {
    position: absolute;
    /* left: -2.25vw;
    top: -14vw; 
    left: -7vw; */
    width: 20vw;
    height: auto;
    transform: translate(0, 0);
}

#ice-next {
 display: none;
}

.ice-flavor-img {
position: absolute;
    width: 20vw;
    height: auto;
    transform: translate(0, 0);
    display: none;
}

.ice-flavor-img.current,
.ice-flavor-img.next {
    display: block;
}

.right-panel::after {
    content: "";
    background: url('../images/line-round.svg') no-repeat right;
    position: absolute;
    top: 0;
    left: 15%;
    width: 28.49vw;
    background-size: 100% 100%;
    z-index: -1;
    bottom: 0;
    right: 0;
}
.chocolate-flavors-left-top-card h2.flavor-title {
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 3.33vw;
    line-height: 100%;
    color: #E9DF87;
    margin-bottom: 2.5vw;
    padding-right: 10vw;
    min-height: 6.7vw;
}

h3.flavor-sub-desc {
    font-size: 1.88vw;
    line-height: 100%;
    text-transform: uppercase;
    color: #ED4C20;
    margin-bottom: 4.1vw;
    padding-right: 21vw;
    text-align: left;
    font-family: 'Neue Plak Wide Bold';
    font-weight: bold;
        min-height: 5.7vw;
}

p.flavor-desc {
    line-height: 1.88vw;
    color: #181818;
}

.chocolate-flavors-title2 {
    padding-bottom: 4.2vw;
}

.chocolate-flavors-title2 h4 {
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 9.42vw;
    line-height: 10.42vw;
    text-transform: uppercase;
    text-align: left;
    color: #B1FFDF;
    margin: 0;
}

.flavor-title,
.flavor-sub-desc,
.flavor-desc,
.chocolate-flavors-title-text {
    position: relative;
    opacity: 0;
    left: -260.42vw;
    transition: none;
}

.chocolate-slides-container-mob {
    display: none;
}

/** ================== // CHOCOLATE FLAVORS SECTION CSS END // ================== **/


/** ================== // BRAND MOVEMENT SECTION CSS START // ================== **/
.brand-movement-section {
    background: #ED4C20;
    padding: 3.33vw 0 0;
    border-bottom: 10.42vw solid #E5B4E3;
}

.brand-movement-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.brand-movement-left {
    width: 100%;
    margin-bottom: 3.8vw;
}

.brand-movement-left-info {
    padding-right: 0;
}

.brand-movement-right {
    width: 100%;
}

.brand-movement-left-info .ice-flavors-description h3 {
    text-align: center;
    text-shadow: none;
}

.brand-movement-right-info .ice-flavors-description {
    margin-top: 1.56vw;
}

.brand-movement-right-info .ice-flavors-description h3 {
    text-align: center;
    text-shadow: none;
    color: #9FDADB;
    padding: 0 3vw;
}

.brand-movement-right-info p {
    line-height: 1.56vw;
    color: #E9DF87;
    padding-right: 5.73vw;
}

.brand-movement-right-info p a {
    color: #E9DF87;
}

.brand-movement-right-info p a:hover {
    text-decoration: underline;
}

/** ================== // BRAND MOVEMENT SECTION CSS END // ================== **/

/** ================== // SERVICES PROVIDE SECTION CSS START // ================== **/
.services-provide-wrap {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: 2.6vw -2.6vw -6.77vw;
}

.services-provide-col {
    width: 25%;
    min-height: 21.72vw;
    padding: 0 0.83vw;
}

.services-provide-info {
    background: #9FDADB;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    border-radius: 50%;
    height: 100%;
    padding: 1vw;
    gap: 1.56vw;
    aspect-ratio: 1 / 1;
}

.services-provide-info h4 {
    font-family: 'Neue Plak Wide black';
    font-weight: bold;
    font-size: 1.88vw;
    line-height: 2.14vw;
    text-align: center;
    color: #ED4C20;
    margin-bottom: 0;
}

.services-provide-info p {
    line-height: 1.2vw;
    text-align: center;
    color: #ED4C20;
    padding: 0 1.82vw;
}

.miami-ice-baby-banner.banner-mt {
    margin: 0;
}
.miami-ice-baby-banner-thumb {
    height: 100%;
}
/** ================== // SERVICES PROVIDE SECTION CSS END // ================== **/

/** ================== // OUR STORY REPEAT SECTION CSS START // ================== **/
.our-story-repeat-section .our-story-title h3 {
    color: #3F9635;
    border-color: #3F9635;
    background: #9FDADB;
}

.our-story-repeat-section .our-story-col {
    border-color: #3F9635;
}

.our-story-repeat-section .our-story-col:hover .our-story-title h3 {
    background: #3F9635;
    color: #9FDADB;
}

.our-story-section.our-story-repeat-section {
    background: #3F9635;
}

/** ================== // OUR STORY REPEAT SECTION CSS END // ================== **/


/** ================== // GET IN TOUCH SECTION CSS START // ================== **/
.get-in-touch-section {
    background: #B1FFDF;
}

.get-in-touch-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.get-in-touch-left {
    width: 50%;
}

.get-in-touch-right {
    width: 50%;
}

.get-in-touch-right-info {
    padding: 1.82vw 3.91vw 6.93vw 5.73vw;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
}

.get-in-touch-miami-logo {
    width: 17.86vw;
    margin-left: auto;
}

.miami-beach-image {
    width: 100%;
    height: 100%;
}

.miami-beach-image img,
.get-in-touch-miami-logo img {
    width: 100%;
    height: 100%;
}

.get-in-touch-right-info ul {
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    row-gap: 2.4vw;
    margin-top: -7.92vw;
}

.get-in-touch-right-info ul li {
    font-style: normal;
    font-weight: normal;
    font-size: 2.0888888vw;
    line-height: 2.0888888vw;
    text-transform: uppercase;
    color: #000000;
    font-family: "Bebas Neue", sans-serif;
}

.get-in-touch-right-info ul li span{
    display: block;
}

.get-in-touch-right-info ul li a {
    color: #000000;
}

.get-in-touch-right-info ul li a:hover {
    color: #ED4C20;
}

.get-in-touch-btn {
    margin-top: 3.65vw;
}

.get-in-touch-btn .btn-pink {
    font-family: "Bebas Neue", sans-serif;
    padding-top: 0.8vw;
}
/** ================== // GET IN TOUCH SECTION CSS END // ================== **/

/** ================== //FOOTER CSS START // ================== **/
.footer {
    background: #FACDEC;
    padding: 2.66vw 0;
}

.footer-social-icon ul,
.footer-info ul {
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 1.04vw;
}

.footer-social-icon ul li {
    font-size: 2.86vw;
    color: #000;
}

.footer-social-icon ul li a {
    color: #000;
}

.footer-social-icon ul li a:hover {
    color: #ED4C20;
}

.footer-social-icon ul li img {
    width: 2.86vw;
}

.footer-info {
    padding-top: 2.5vw;
}

.footer-info ul {
    justify-content: center;
    max-width: 68.07vw;
    margin: auto;
}

.footer-info ul li {
    font-family: "Montserrat", sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 1.04vw;
    line-height: 1.88vw;
    text-transform: uppercase;
    color: #181818;
}

.footer-info ul li a {
    color: #181818;
    transition: .5s all;
}

.footer-info ul li a:hover {
    color: #ED4C20;
}

/** ================== // FOOTER CSS END // ================== **/

/** ================== // INNER PAGES CSS START // ================== **/
.inner-bg {
    background: #FEF8DC;
}

.content-section {
    padding-top: 10.94vw;
    padding-bottom: 5.21vw;
}

.content-wrap {
    max-width: 63.02vw;
    margin: 0 auto;
}

.content-section h1 {
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    font-size: 1.88vw;
    line-height: 132.27%;
    text-transform: uppercase;
    color: #181818;
    margin-bottom: 2.08vw;
}

.content-section p {
    color: #181818;
    line-height: 150%;
}

/** ================== // INNER PAGES CSS END // ================== **/

/** ================== // RETAILERS MAP CSS START // ================== **/
div#map {
    height: 31.25vw;
}
.retailers-map .location-popup-detail {
    position: unset !important;
    display: block !important;
}
.retailers-map button.gm-ui-hover-effect {
    opacity: 1 !important;
}
.retailers-map .gm-style-iw-chr {
    position: absolute;
    right: -0.52vw;
    top: -0.57vw;
    font-size: 0.78vw;
    font-weight: 500;
    background: #fff;
    border: 0.1vw solid #ed4c20;
    width: 1.3vw;
    height: 1.3vw;
    border-radius: 100%;
    color: #ed4c20;
    display: flex;
    justify-content: center;
    align-items: center;
}

.retailers-map .gm-style > div {
    cursor: default !important;
}

.retailers-map button.gm-ui-hover-effect>span {
    background: #ed4c20 !important;
    width: 1vw !important;
    height: 1vw !important;
    margin: 0 auto !important;
}
.retailers-map .gm-style-iw-ch {
    padding: 0;
}
.retailers-map .gm-style .gm-style-iw-c {
    overflow: inherit;
}
.gm-style .gm-style-iw-tc::after {
    top: -0.1vw;
}
/** ================== // RETAILERS MAP CSS END // ================== **/
.giving-back-world-bar {
    background: #ED4C20;
    padding: 3vw 1vw;
}
.giving-back-world-bar p {
    font-size: 2.08vw;
    font-family: 'Neue Plak Wide Black';
    font-weight: 900;
    color: #E9DF87;
    text-align: center;
}

.giving-back-world-bar p img {
    width: 4.11vw;
    margin: -2vw 0;
    image-rendering: inherit;
}

#marquee-slider-two .marquee-icecream-item::after{
    display: none;
}

#marquee-slider-two .marquee-icecream-item {
    padding-right: 0;
    padding-left: 0;
}

.brand-movement-left-info .ice-flavors-description h2 {
 /*   color: #9FDADB;
    text-decoration: underline; */
        color: #FACDEC;
}

.brand-movement-right-info h4 {
    font-style: normal;
    font-weight: 400;
    font-size: 1.88vw;
    text-transform: uppercase;
    color: #FACDEC;
    margin: 0;
    line-height: 130%;
    font-family: 'Neue Plak Wide bold';
    position: relative;
    text-align: center;
    padding: 0 12vw;
}
.brand-movement-right-info h2 {
    font-style: normal;
    font-weight: 400;
    font-size: 1.88vw;
    text-transform: uppercase;
    color: #e9df87;
    margin: 2.3vw 0 0;
    line-height: 130%;
    font-family: 'Neue Plak Wide bold';
    position: relative;
    text-align: center;
    text-decoration: underline;
}
.brand-movement-right-info h2 a{
    color: #e9df87;
}

br.break-mobile {
display: none;
}


/* SPANISH */
html[lang="es"] .hero-title h4 {
    font-size: 3.17vw;
}

html[lang="es"] .ice-flavors-description h3 span img {
    right: -1vw;
    bottom: -.5vw;
}

html[lang="es"] .our-family-info .ice-flavors-description h3,
html[lang="es"] .ice-flavors-description h3 {
    font-size: 1.8vw;
}

html[lang="es"] h3.flavor-sub-desc {
font-size: 1.5vw;
}

html[lang="es"] h3.flavor-sub-desc {
    padding-right: 17vw;
    }

html[lang="es"] .services-provide-info h4 {
    font-size: 1.4vw;
}

html[lang="es"] .services-provide-info p br {
display: none;
}