/* ==========================================================
   GELATO SWEET SPOT
   PAGE ID: 477
   Elementor Flexbox / Container Friendly
   ========================================================== */


/* ==========================================================
   GLOBAL
   ========================================================== */

body.page-id-477 {
    overflow-x: hidden;
}

body.page-id-477 *,
body.page-id-477 *::before,
body.page-id-477 *::after {
    box-sizing: border-box;
}


/* Keep the page within the viewport
   WITHOUT forcing Elementor container behavior */
body.page-id-477 #content,
body.page-id-477 .site-content,
body.page-id-477 .site-main {
    width: 100%;
    max-width: 100%;
}


/* ==========================================================
   TEXT / WORD WRAPPING
   ========================================================== */

body.page-id-477 #content h1,
body.page-id-477 #content h2,
body.page-id-477 #content h3,
body.page-id-477 #content h4,
body.page-id-477 #content p,
body.page-id-477 #content .elementor-heading-title {
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}


/* ==========================================================
   IMAGES
   Let Elementor control image dimensions, widths and
   responsive behavior.
   ========================================================== */

body.page-id-477 #content img {
    max-width: 100%;
}


/* ==========================================================
   TABLET
   768px - 1024px
   ========================================================== */

@media (min-width: 768px) and (max-width: 1024px) {

    /* -----------------------------------------------
       H1
       ----------------------------------------------- */

    body.page-id-477 #content h1,
    body.page-id-477 #content h1.elementor-heading-title,
    body.page-id-477 #content .elementor-widget-heading h1 {
        font-size: clamp(56px, 7vw, 78px) !important;
        line-height: 0.95 !important;
        letter-spacing: -0.035em !important;
    }


    /* -----------------------------------------------
       H2
       ----------------------------------------------- */

    body.page-id-477 #content h2,
    body.page-id-477 #content h2.elementor-heading-title {
        font-size: clamp(38px, 5vw, 52px) !important;
        line-height: 1 !important;
    }


    /* -----------------------------------------------
       IMAGE POSITION
       ----------------------------------------------- */

    body.page-id-477 #content .elementor-widget-image img {
        object-position: center center;
    }
}


/* ==========================================================
   MOBILE
   Up to 767px
   ========================================================== */

@media (max-width: 767px) {

    /* -----------------------------------------------
       PAGE WIDTH
       ----------------------------------------------- */

    body.page-id-477 #content,
    body.page-id-477 .site-content,
    body.page-id-477 .site-main {
        width: 100%;
        max-width: 100%;
    }


    /* -----------------------------------------------
       H1
       ----------------------------------------------- */

    body.page-id-477 #content h1,
    body.page-id-477 #content h1.elementor-heading-title,
    body.page-id-477 #content .elementor-widget-heading h1 {

        display: block;

        width: auto;
        max-width: 100%;

        font-size: clamp(46px, 13vw, 60px) !important;
        line-height: 0.93 !important;
        letter-spacing: -0.04em !important;

        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }


    /* -----------------------------------------------
       H2
       ----------------------------------------------- */

    body.page-id-477 #content h2,
    body.page-id-477 #content h2.elementor-heading-title {

        width: auto;
        max-width: 100%;

        font-size: clamp(34px, 10vw, 46px) !important;
        line-height: 1 !important;
        letter-spacing: -0.025em !important;

        margin-bottom: 6px !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }


    /* -----------------------------------------------
       H3
       ----------------------------------------------- */

    body.page-id-477 #content h3,
    body.page-id-477 #content h3.elementor-heading-title {

        width: auto;
        max-width: 100%;

        font-size: clamp(25px, 7vw, 32px) !important;
        line-height: 1.08 !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }


    /* -----------------------------------------------
       BODY TEXT
       ----------------------------------------------- */

    body.page-id-477 #content p {
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }


    /* -----------------------------------------------
       IMAGES
       ----------------------------------------------- */

    body.page-id-477 #content .elementor-widget-image img {
        max-width: 100%;
        height: auto;
        object-position: center center;
    }


    /* -----------------------------------------------
       BUTTONS
       ----------------------------------------------- */

    body.page-id-477 #content .elementor-button {
        max-width: 100%;
    }


    /* -----------------------------------------------
       MEDIA
       ----------------------------------------------- */

    body.page-id-477 #content img,
    body.page-id-477 #content video,
    body.page-id-477 #content iframe {
        max-width: 100%;
    }


    /* -----------------------------------------------
       FOOTER ICE CREAM MENU
       ----------------------------------------------- */

    body.page-id-477 footer .elementor-497 {
        width: 100% !important;
        max-width: 430px !important;
        margin-left: auto;
        margin-right: auto;
    }

    body.page-id-477 footer .elementor-497 > .e-con {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
    }

    body.page-id-477 footer .elementor-497 .e-con {
        flex-wrap: nowrap !important;
    }

    body.page-id-477 footer .elementor-497 .elementor-widget {
        min-width: 0 !important;
    }


    /* -----------------------------------------------
       FIXED MENU CLEARANCE
       ----------------------------------------------- */

    body.page-id-477 {
        padding-bottom: 115px;
    }
}


/* ==========================================================
   SMALL PHONES
   Up to 390px
   ========================================================== */

@media (max-width: 390px) {

    /* -----------------------------------------------
       H1
       ----------------------------------------------- */

    body.page-id-477 #content h1,
    body.page-id-477 #content h1.elementor-heading-title,
    body.page-id-477 #content .elementor-widget-heading h1 {
        font-size: clamp(44px, 13vw, 54px) !important;
    }


    /* -----------------------------------------------
       H2
       ----------------------------------------------- */

    body.page-id-477 #content h2,
    body.page-id-477 #content h2.elementor-heading-title {
        font-size: clamp(31px, 10vw, 40px) !important;
    }


    /* -----------------------------------------------
       BODY TEXT
       ----------------------------------------------- */

    body.page-id-477 #content p {
        word-break: normal;
        overflow-wrap: normal;
        hyphens: none;
    }


    /* -----------------------------------------------
       CONTENT SAFETY
       ----------------------------------------------- */

    body.page-id-477 #content {
        width: 100%;
        max-width: 100%;
    }
}