@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400&display=swap');

/* ==========================================================
   MARCO MARE — HOME HERO v3
   Server: salvare questo contenuto come mm-home.css
   ========================================================== */

/* BASE */
.mm-home-hero-desktop,
.mm-home-hero-mobile {
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

.mm-home-hero-desktop *,
.mm-home-hero-mobile * {
    box-sizing: border-box;
}

/* ==========================================================
   DESKTOP
   ========================================================== */

.mm-home-hero-desktop {
    min-height: 560px !important;
    background-image: url('/img/marco-mare-home-hero.webp') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
}

.mm-home-hero-desktop > .elementor-container,
.mm-home-hero-desktop .mm-home-hero-inner > .elementor-container {
    width: 100% !important;
    max-width: 1800px !important;
    min-height: 560px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.mm-home-hero-desktop .mm-home-hero-inner > .elementor-container {
    display: flex !important;
    align-items: stretch !important;
}

.mm-home-hero-desktop .mm-home-hero-empty-column {
    flex: 0 0 55.5% !important;
    width: 55.5% !important;
    max-width: 55.5% !important;
    min-height: 560px !important;
}

.mm-home-hero-desktop .mm-home-hero-text-column {
    flex: 0 0 44.5% !important;
    width: 44.5% !important;
    max-width: 44.5% !important;
    min-height: 560px !important;
}

.mm-home-hero-desktop .mm-home-hero-text-column > .elementor-column-wrap,
.mm-home-hero-desktop .mm-home-hero-text-column .elementor-widget-wrap {
    width: 100% !important;
    min-height: 560px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mm-home-hero-desktop .mm-home-hero-text-column .elementor-widget-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

.mm-home-hero-desktop .mm-home-hero-text-column .elementor-widget {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mm-home-hero-desktop .mm-home-hero-copy {
    width: 600px !important;
    max-width: calc(100% - 50px) !important;
    margin: 0 auto 0 25px !important;
    padding: 0 !important;
    text-align: left !important;
}

/* ==========================================================
   TESTI — SEMPRE BIANCHI
   ========================================================== */

.mm-home-hero-desktop .mm-home-hero-copy,
.mm-home-hero-desktop .mm-home-hero-copy h1,
.mm-home-hero-desktop .mm-home-hero-copy h2,
.mm-home-hero-desktop .mm-home-hero-copy p,
.mm-home-hero-desktop .mm-home-hero-copy span,
.mm-home-hero-mobile .mm-home-hero-copy,
.mm-home-hero-mobile .mm-home-hero-copy h1,
.mm-home-hero-mobile .mm-home-hero-copy h2,
.mm-home-hero-mobile .mm-home-hero-copy p,
.mm-home-hero-mobile .mm-home-hero-copy span {
    color: #ffffff !important;
}

.mm-home-hero-copy {
	text-shadow:
        0 2px 3px rgba(0,0,0,.70),
        0 4px 12px rgba(0,0,0,.45) !important;
}

.mm-home-title,
.mm-home-title-marco,
.mm-home-title-mare {
    font-family: "Caveat", cursive !important;
    font-weight: 400 !important;
}

.mm-home-title {
    position: relative !important;
    display: block !important;
    width: 430px !important;
    max-width: 100% !important;
    height: 165px !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.mm-home-title-marco,
.mm-home-title-mare {
    position: absolute !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 5.6rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    color: #ffffff !important;
}

.mm-home-title-marco {
    top: 0 !important;
    left: 0 !important;
}

.mm-home-title-mare {
    top: 67px !important;
    left: 100px !important;
}

.mm-home-title-mare::after {
    content: "";
    position: absolute;
    left: 65px;
    bottom: -7px;
    width: 180px;
    height: 7px;
    background: #ffffff !important;
    border-radius: 100% 20% 100% 20%;
    transform: rotate(-4deg);
}

.mm-home-hero-copy h2 {
    margin: 0 0 14px !important;
    padding: 0 !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    color: #ffffff !important;
}

.mm-home-hero-copy p {
    margin: 0 0 22px !important;
    padding: 0 !important;
    font-size: 1.05rem !important;
    line-height: 1.5 !important;
    color: #ffffff !important;
}

/* ==========================================================
   PULSANTI — PILLOLA
   ========================================================== */

.mm-home-hero-actions {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    gap: 10px !important;
}

.mm-home-hero-desktop .mm-home-hero-actions {
    justify-content: flex-start !important;
}

.mm-home-hero-actions > a.mm-home-btn,
.mm-home-hero-actions > a.mm-home-btn:link,
.mm-home-hero-actions > a.mm-home-btn:visited {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    margin: 0 !important;
    padding: 0 18px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    font-size: .86rem !important;
    font-weight: 700 !important;
    line-height: 40px !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    text-transform: none !important;
    color: #ffffff !important;
    text-shadow: none !important;
    box-shadow: none !important;
}

.mm-home-hero-actions > a.mm-home-btn-primary {
    background: #111111 !important;
    border: 2px solid #fe2c55 !important;
}

.mm-home-hero-actions > a.mm-home-btn-secondary {
    background: rgba(0,0,0,.18) !important;
    border: 2px solid #ffffff !important;
}

/* ==========================================================
   MOBILE — ALTO + CENTRATO
   ========================================================== */

.mm-home-hero-mobile {
    min-height: 650px !important;
    background-image: url('/img/marco-mare-home-hero-mobile.webp') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
}

.mm-home-hero-mobile > .elementor-container,
.mm-home-hero-mobile .mm-home-hero-inner,
.mm-home-hero-mobile .mm-home-hero-inner > .elementor-container,
.mm-home-hero-mobile .mm-home-hero-mobile-content,
.mm-home-hero-mobile .mm-home-hero-mobile-content > .elementor-column-wrap,
.mm-home-hero-mobile .mm-home-hero-mobile-content .elementor-widget-wrap,
.mm-home-hero-mobile .mm-home-hero-mobile-content .elementor-widget,
.mm-home-hero-mobile .mm-home-hero-mobile-content .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mm-home-hero-mobile > .elementor-container,
.mm-home-hero-mobile .mm-home-hero-inner > .elementor-container,
.mm-home-hero-mobile .mm-home-hero-mobile-content,
.mm-home-hero-mobile .mm-home-hero-mobile-content > .elementor-column-wrap,
.mm-home-hero-mobile .mm-home-hero-mobile-content .elementor-widget-wrap {
    min-height: 650px !important;
}

.mm-home-hero-mobile > .elementor-container,
.mm-home-hero-mobile .mm-home-hero-inner > .elementor-container,
.mm-home-hero-mobile .mm-home-hero-mobile-content > .elementor-column-wrap,
.mm-home-hero-mobile .mm-home-hero-mobile-content .elementor-widget-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    align-content: flex-start !important;
    justify-content: flex-start !important;
}

.mm-home-hero-mobile .mm-home-hero-mobile-content .elementor-widget {
    align-self: flex-start !important;
    min-height: 0 !important;
}

.mm-home-hero-mobile .mm-home-hero-copy {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 16px 14px 0 !important;
    text-align: center !important;
    color: #ffffff !important;
}

.mm-home-hero-mobile .mm-home-title {
    width: 285px !important;
    max-width: 82vw !important;
    height: 104px !important;
    margin: 0 auto 4px !important;
}

.mm-home-hero-mobile .mm-home-title-marco,
.mm-home-hero-mobile .mm-home-title-mare {
    font-size: 3.5rem !important;
    color: #ffffff !important;
}

.mm-home-hero-mobile .mm-home-title-marco {
    top: 0 !important;
    left: 12px !important;
}

.mm-home-hero-mobile .mm-home-title-mare {
    top: 42px !important;
    left: 82px !important;
}

.mm-home-hero-mobile .mm-home-title-mare::after {
    left: 40px;
    bottom: -5px;
    width: 125px;
    height: 5px;
    background: #ffffff !important;
}

.mm-home-hero-mobile .mm-home-hero-copy h2 {
    margin: 0 0 7px !important;
    font-size: 1.18rem !important;
    line-height: 1.2 !important;
    text-align: center !important;
    color: #ffffff !important;
}

.mm-home-hero-mobile .mm-home-hero-copy p {
    width: 100% !important;
    max-width: 390px !important;
    margin: 0 auto 12px !important;
    font-size: .84rem !important;
    line-height: 1.35 !important;
    text-align: center !important;
    color: #ffffff !important;
}

.mm-home-hero-mobile .mm-home-hero-actions {
    justify-content: center !important;
    width: 100% !important;
}

.mm-home-hero-mobile .mm-home-hero-actions > a.mm-home-btn {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    font-size: .74rem !important;
    line-height: 36px !important;
}

@media (max-width: 390px) {
    .mm-home-hero-mobile .mm-home-hero-copy {
        padding: 12px 8px 0 !important;
    }

    .mm-home-hero-mobile .mm-home-title {
        width: 260px !important;
        height: 96px !important;
    }

    .mm-home-hero-mobile .mm-home-title-marco,
    .mm-home-hero-mobile .mm-home-title-mare {
        font-size: 3.15rem !important;
    }

    .mm-home-hero-mobile .mm-home-title-mare {
        top: 38px !important;
        left: 72px !important;
    }

    .mm-home-hero-mobile .mm-home-hero-actions > a.mm-home-btn {
        height: 38px !important;
        min-height: 38px !important;
        max-height: 38px !important;
        padding: 0 9px !important;
        font-size: .68rem !important;
        line-height: 34px !important;
    }
}
/* ==========================================================
   HOME — 3 CARD SOTTO LA HERO
   ========================================================== */

.mm-home-cards {
    position: relative !important;
    z-index: 10 !important;
    width: 100% !important;
    margin: -34px 0 0 !important;
    padding: 0 32px 56px !important;
    background: transparent !important;
}

.mm-home-cards > .elementor-container {
    display: flex !important;
    width: 100% !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
    gap: 16px !important;
    align-items: stretch !important;
}

.mm-home-card-column {
    position: relative !important;
    flex: 1 1 0 !important;
    width: 33.333% !important;
    max-width: 33.333% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border: 3px solid #fff !important;
    border-radius: 16px !important;
    background: #102332 !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.18) !important;
}

.mm-home-card-column > .elementor-column-wrap,
.mm-home-card-column .elementor-widget-wrap,
.mm-home-card-column .elementor-widget,
.mm-home-card-column .elementor-widget-container {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mm-home-card {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 3 / 2 !important;
    overflow: hidden !important;
    color: #fff !important;
    text-decoration: none !important;
    background: #102332 !important;
}

.mm-home-card img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform .35s ease !important;
}

.mm-home-card::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(
        to bottom,
        rgba(5,18,29,0) 34%,
        rgba(5,18,29,.16) 51%,
        rgba(5,18,29,.88) 100%
    ) !important;
    pointer-events: none !important;
}

.mm-home-card-content {
    position: absolute !important;
    z-index: 2 !important;
    left: 22px !important;
    right: 20px !important;
    bottom: 18px !important;
    color: #fff !important;
    text-shadow: 0 2px 5px rgba(0,0,0,.5) !important;
}

.mm-home-card-title {
    display: block !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: clamp(1.45rem, 2vw, 2rem) !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
}

.mm-home-card-text {
    display: block !important;
    max-width: 82% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: .9rem !important;
    line-height: 1.3 !important;
}

.mm-home-card-arrow {
    position: absolute !important;
    right: 18px !important;
    bottom: 18px !important;
    z-index: 3 !important;
    display: flex !important;
    width: 36px !important;
    height: 36px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid rgba(255,255,255,.9) !important;
    border-radius: 50% !important;
    color: #fff !important;
    font-size: 1.1rem !important;
    line-height: 1 !important;
    text-shadow: none !important;
}

.mm-home-card:hover,
.mm-home-card:focus {
    color: #fff !important;
    text-decoration: none !important;
}

.mm-home-card:hover img,
.mm-home-card:focus img {
    transform: scale(1.035) !important;
}

.mm-home-card:hover .mm-home-card-arrow,
.mm-home-card:focus .mm-home-card-arrow {
    transform: translateX(3px) !important;
    background: rgba(255,255,255,.16) !important;
}

@media (max-width: 991px) {
    .mm-home-cards {
        margin-top: -24px !important;
        padding-right: 18px !important;
        padding-left: 18px !important;
        padding-bottom: 42px !important;
    }

    .mm-home-cards > .elementor-container {
        gap: 12px !important;
    }

    .mm-home-card-column {
        border-radius: 13px !important;
    }

    .mm-home-card-content {
        left: 15px !important;
        right: 14px !important;
        bottom: 14px !important;
    }

    .mm-home-card-title {
        font-size: 1.35rem !important;
    }

    .mm-home-card-text {
        max-width: 78% !important;
        font-size: .78rem !important;
    }

    .mm-home-card-arrow {
        right: 13px !important;
        bottom: 13px !important;
        width: 31px !important;
        height: 31px !important;
        font-size: .95rem !important;
    }
}

@media (max-width: 767px) {
    .mm-home-cards {
        margin-top: -18px !important;
        padding: 0 14px 34px !important;
    }

    .mm-home-cards > .elementor-container {
        flex-direction: column !important;
        gap: 14px !important;
    }

    .mm-home-card-column {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        border-width: 2px !important;
        border-radius: 14px !important;
    }

    .mm-home-card-content {
        left: 18px !important;
        right: 18px !important;
        bottom: 17px !important;
    }

    .mm-home-card-title {
        font-size: 1.65rem !important;
    }

    .mm-home-card-text {
        max-width: calc(100% - 54px) !important;
        font-size: .88rem !important;
    }

    .mm-home-card-arrow {
        right: 16px !important;
        bottom: 16px !important;
        width: 34px !important;
        height: 34px !important;
    }
}
/* CARD HOME — allargamento desktop centrato */
@media (min-width: 992px) {
    .mm-home-cards > .elementor-container {
        position: relative !important;
        left: 50% !important;
        width: calc(100% + 40px) !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        transform: translateX(-50%) !important;
    }
}
/* ==========================================================
   HOME — BANNER TIKTOK — VERSIONE 2
   ========================================================== */

.mm-home-tiktok-section {
    position: relative !important;
    width: 100% !important;
    background: #fff !important;
}

.mm-home-tiktok-section > .elementor-container {
    width: 100% !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
}

.mm-home-tiktok-column,
.mm-home-tiktok-column > .elementor-column-wrap,
.mm-home-tiktok-column .elementor-widget-wrap,
.mm-home-tiktok-column .elementor-widget,
.mm-home-tiktok-column .elementor-widget-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* ==========================================================
   PANNELLO
   ========================================================== */

.mm-home-tiktok-banner {
    position: relative !important;

    display: grid !important;
    grid-template-columns: 185px 390px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 26px !important;

    width: 100% !important;
    min-height: 235px !important;

    margin: 0 auto !important;
    padding: 20px 26px !important;

    overflow: visible !important;

    border-radius: 16px !important;

    background:
        radial-gradient(
            circle at 48% 10%,
            rgba(42, 72, 88, .32),
            transparent 40%
        ),
        linear-gradient(
            135deg,
            #172a36 0%,
            #0b1821 56%,
            #071017 100%
        ) !important;

    box-shadow: 0 15px 35px rgba(0,0,0,.18) !important;
}


/* ==========================================================
   IPHONE
   ========================================================== */

.mm-home-tiktok-phone {
    position: relative !important;
    z-index: 5 !important;

    display: block !important;

    width: 175px !important;

    margin: -38px 0 -38px 8px !important;

    transform: rotate(-6deg) !important;
    transform-origin: center center !important;

    text-decoration: none !important;
}

.mm-home-tiktok-phone img {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    filter: drop-shadow(0 15px 16px rgba(0,0,0,.38)) !important;

    transition: transform .25s ease !important;
}

.mm-home-tiktok-phone:hover img {
    transform: scale(1.025) !important;
}


/* ==========================================================
   TESTO CENTRALE
   ========================================================== */

.mm-home-tiktok-copy {
    position: relative !important;
    z-index: 4 !important;

    width: 100% !important;

    color: #fff !important;
}

.mm-home-tiktok-kicker {
    display: block !important;

    margin: 0 0 7px !important;

    color: rgba(255,255,255,.72) !important;

    font-size: 9px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    letter-spacing: .045em !important;
    text-transform: uppercase !important;
}

.mm-home-tiktok-copy h2 {
    margin: 0 0 10px !important;
    padding: 0 !important;

    color: #fff !important;

    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1.03 !important;
    letter-spacing: -.035em !important;
}

.mm-home-tiktok-copy h2 br {
    display: none !important;
}

.mm-home-tiktok-copy h2 br::after {
    content: " " !important;
}

.mm-home-tiktok-copy p {
    max-width: 380px !important;

    margin: 0 0 15px !important;
    padding: 0 !important;

    color: rgba(255,255,255,.78) !important;

    font-size: 11px !important;
    line-height: 1.4 !important;
}


/* ==========================================================
   PULSANTE
   ========================================================== */

.mm-home-tiktok-btn {
    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;

    gap: 8px !important;

    min-height: 38px !important;

    padding: 0 18px !important;

    border-radius: 999px !important;

    background: #fe2c55 !important;
    color: #fff !important;

    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1 !important;

    text-decoration: none !important;

    box-shadow: 0 7px 17px rgba(254,44,85,.28) !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease !important;
}

.mm-home-tiktok-btn:hover,
.mm-home-tiktok-btn:focus {
    color: #fff !important;
    text-decoration: none !important;

    transform: translateY(-2px) !important;

    box-shadow: 0 10px 22px rgba(254,44,85,.38) !important;
}


/* ==========================================================
   4 COVER TIKTOK
   ========================================================== */

.mm-home-tiktok-posts {
    position: relative !important;
    z-index: 4 !important;

    display: flex !important;

    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;

    gap: 10px !important;

    padding: 0 6px 0 0 !important;

    min-width: 0 !important;
}

.mm-home-tiktok-post {
    position: relative !important;

    display: block !important;

    flex: 1 1 0 !important;

    width: 0 !important;
    min-width: 0 !important;
    max-width: 118px !important;

    overflow: hidden !important;

    border: 2px solid rgba(255,255,255,.68) !important;
    border-radius: 9px !important;

    background: #101820 !important;

    box-shadow: 0 9px 18px rgba(0,0,0,.32) !important;

    transform-origin: center center !important;

    transition:
        transform .22s ease,
        box-shadow .22s ease !important;
}

.mm-home-tiktok-post img {
    display: block !important;

    width: 100% !important;
    height: 174px !important;

    object-fit: cover !important;
}


/* inclinazioni */

.mm-home-tiktok-post:nth-child(1) {
    transform: rotate(3deg) translateY(3px) !important;
}

.mm-home-tiktok-post:nth-child(2) {
    transform: rotate(-2deg) translateY(-3px) !important;
}

.mm-home-tiktok-post:nth-child(3) {
    transform: rotate(2.5deg) translateY(2px) !important;
}

.mm-home-tiktok-post:nth-child(4) {
    transform: rotate(-3deg) translateY(-2px) !important;
}


/* hover */

.mm-home-tiktok-post:hover,
.mm-home-tiktok-post:focus {
    z-index: 10 !important;

    transform:
        rotate(0deg)
        translateY(-6px)
        scale(1.04) !important;

    box-shadow: 0 14px 24px rgba(0,0,0,.42) !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 1199px) {

    .mm-home-tiktok-banner {
        grid-template-columns: 150px 330px minmax(0, 1fr) !important;

        gap: 18px !important;

        min-height: 220px !important;

        padding: 20px 22px !important;
    }

    .mm-home-tiktok-phone {
        width: 145px !important;
        margin-left: 2px !important;
    }

    .mm-home-tiktok-copy h2 {
        font-size: 25px !important;
    }

    .mm-home-tiktok-post img {
        height: 150px !important;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .mm-home-tiktok-banner {
        display: flex !important;
        flex-direction: column !important;

        min-height: 0 !important;

        gap: 18px !important;

        padding: 28px 18px 30px !important;

        overflow: hidden !important;

        border-radius: 15px !important;
    }

    .mm-home-tiktok-phone {
        width: 180px !important;

        margin: -12px auto 0 !important;

        transform: rotate(-5deg) !important;
    }

    .mm-home-tiktok-copy {
        text-align: center !important;
    }

    .mm-home-tiktok-kicker {
        font-size: 9px !important;
    }

    .mm-home-tiktok-copy h2 {
        font-size: 28px !important;
        line-height: 1.05 !important;
    }

    .mm-home-tiktok-copy h2 br {
        display: initial !important;
    }

    .mm-home-tiktok-copy p {
        max-width: 420px !important;

        margin-right: auto !important;
        margin-left: auto !important;

        font-size: 12px !important;
    }

    .mm-home-tiktok-posts {
        width: 100% !important;

        justify-content: center !important;

        gap: 7px !important;

        padding: 5px 3px !important;
    }

    .mm-home-tiktok-post {
        width: 25% !important;
        max-width: none !important;
    }

    .mm-home-tiktok-post img {
        width: 100% !important;
        height: auto !important;

        aspect-ratio: 3 / 4 !important;

        object-fit: cover !important;
    }
}
/* ==========================================================
   HOME — BANNER TIKTOK — RIFINITURA V3
   ========================================================== */

@media (min-width: 768px) {

    /* Più spazio al testo e cover leggermente più presenti */
    .mm-home-tiktok-banner {
        grid-template-columns: 190px 470px minmax(0, 1fr) !important;
        gap: 20px !important;
    }

    /* iPhone più grande e più simile al mockup */
    .mm-home-tiktok-phone {
        width: 190px !important;
        margin: -46px 0 -46px 4px !important;
        transform: rotate(-6deg) !important;
    }

    /* Titolo meno compresso */
    .mm-home-tiktok-copy h2 {
        font-size: 29px !important;
        line-height: 1.04 !important;
    }

    /*
     * Nel JSON c'è un <br> tra le due frasi.
     * Nasconderlo elimina anche lo spazio: lo trasformiamo
     * quindi in uno spazio vero.
     */
    .mm-home-tiktok-copy h2 br {
        display: inline !important;
    }

    .mm-home-tiktok-copy h2 br::after {
        content: " " !important;
    }

    /* Cover più grandi e un po' più vicine */
    .mm-home-tiktok-posts {
    gap: 12px !important;
    padding-right: 8px !important;
    justify-content: flex-end !important;
	transform: translateX(-110px) !important;
}

.mm-home-tiktok-post {
    flex: 0 0 125px !important;
    width: 125px !important;
    max-width: 125px !important;
}

    .mm-home-tiktok-post img {
        height: 184px !important;
    }
}
/* TIKTOK — stessa larghezza delle 3 card */
@media (min-width: 768px) {
    .mm-home-tiktok-section > .elementor-container {
        position: relative !important;
        left: 50% !important;
        width: calc(100% + 40px) !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        transform: translateX(-50%) !important;
    }
}
/* ==========================================================
   HOME — IL MARE NON HA STAGIONI
   ========================================================== */

.mm-home-sea-safe-section {
    position: relative !important;
    width: 100% !important;
    background: #fff !important;
}

.mm-home-sea-safe-section > .elementor-container {
    position: relative !important;
    left: 50% !important;

    width: calc(100% + 40px) !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    transform: translateX(-50%) !important;
}

.mm-home-sea-safe-column,
.mm-home-sea-safe-column > .elementor-column-wrap,
.mm-home-sea-safe-column .elementor-widget-wrap,
.mm-home-sea-safe-column .elementor-widget,
.mm-home-sea-safe-column .elementor-widget-container {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* ==========================================================
   BLOCCO PRINCIPALE
   ========================================================== */

.mm-home-sea-safe {
    position: relative !important;

    display: grid !important;
    grid-template-columns: 1.05fr .95fr !important;
    align-items: stretch !important;

    width: 100% !important;
    min-height: 360px !important;

    overflow: hidden !important;

    border-radius: 18px !important;

    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(24, 139, 198, .13),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #102b3b 0%,
            #0b1e2b 65%,
            #081720 100%
        ) !important;

    box-shadow: 0 14px 32px rgba(0,0,0,.14) !important;
}


/* ==========================================================
   TESTO
   ========================================================== */

.mm-home-sea-safe-copy {
    position: relative !important;
    z-index: 2 !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;

    padding: 48px 55px !important;

    color: #fff !important;
}

.mm-home-sea-safe-kicker {
    display: block !important;

    margin: 0 0 10px !important;

    color: #48b9ed !important;

    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    letter-spacing: .09em !important;
    text-transform: uppercase !important;
}

.mm-home-sea-safe-copy h2 {
    margin: 0 0 17px !important;
    padding: 0 !important;

    color: #fff !important;

    font-size: clamp(2.2rem, 3vw, 3.3rem) !important;
    font-weight: 800 !important;
    line-height: 1.02 !important;
    letter-spacing: -.035em !important;
}

.mm-home-sea-safe-copy p {
    max-width: 600px !important;

    margin: 0 0 12px !important;
    padding: 0 !important;

    color: rgba(255,255,255,.82) !important;

    font-size: 14px !important;
    line-height: 1.55 !important;
}

.mm-home-sea-safe-copy p:last-of-type {
    margin-bottom: 23px !important;
}


/* ==========================================================
   CTA METEO
   ========================================================== */

.mm-home-sea-safe-btn {
    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;

    gap: 12px !important;

    min-height: 44px !important;

    padding: 0 21px !important;

    border: 2px solid #48b9ed !important;
    border-radius: 999px !important;

    background: #48b9ed !important;
    color: #071720 !important;

    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;

    text-decoration: none !important;

    transition:
        transform .22s ease,
        background .22s ease,
        color .22s ease !important;
}

.mm-home-sea-safe-btn:hover,
.mm-home-sea-safe-btn:focus {
    background: transparent !important;
    color: #fff !important;
    text-decoration: none !important;

    transform: translateY(-2px) !important;
}


/* ==========================================================
   FOTO BISCEGLIE
   ========================================================== */

.mm-home-sea-safe-media {
    position: relative !important;

    min-width: 0 !important;
    min-height: 360px !important;

    overflow: hidden !important;
}

.mm-home-sea-safe-media::after {
    content: "" !important;

    position: absolute !important;
    inset: 0 !important;

    background: linear-gradient(
        90deg,
        rgba(8,23,32,.42) 0%,
        rgba(8,23,32,.08) 20%,
        rgba(8,23,32,0) 42%
    ) !important;

    pointer-events: none !important;
}

.mm-home-sea-safe-media img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    min-height: 360px !important;

    object-fit: cover !important;
    object-position: center center !important;

    transition: transform .5s ease !important;
}

.mm-home-sea-safe:hover .mm-home-sea-safe-media img {
    transform: scale(1.025) !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 991px) {

    .mm-home-sea-safe-section > .elementor-container {
        width: 100% !important;
    }

    .mm-home-sea-safe {
        grid-template-columns: 1fr 1fr !important;
        min-height: 330px !important;
    }

    .mm-home-sea-safe-copy {
        padding: 38px 32px !important;
    }

    .mm-home-sea-safe-copy h2 {
        font-size: 2.25rem !important;
    }

    .mm-home-sea-safe-copy p {
        font-size: 13px !important;
    }

    .mm-home-sea-safe-media,
    .mm-home-sea-safe-media img {
        min-height: 330px !important;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .mm-home-sea-safe-section > .elementor-container {
        left: auto !important;

        width: 100% !important;

        transform: none !important;
    }

    .mm-home-sea-safe {
        display: flex !important;
        flex-direction: column !important;

        min-height: 0 !important;

        border-radius: 15px !important;
    }

    .mm-home-sea-safe-copy {
        order: 2 !important;

        padding: 30px 23px 32px !important;
    }

    .mm-home-sea-safe-media {
        order: 1 !important;

        width: 100% !important;
        min-height: 230px !important;
    }

    .mm-home-sea-safe-media img {
        min-height: 230px !important;
        height: 230px !important;

        object-position: center center !important;
    }

    .mm-home-sea-safe-media::after {
        background: linear-gradient(
            0deg,
            rgba(8,23,32,.42) 0%,
            rgba(8,23,32,0) 45%
        ) !important;
    }

    .mm-home-sea-safe-copy h2 {
        font-size: 2rem !important;
    }

    .mm-home-sea-safe-copy p {
        max-width: none !important;

        font-size: 13px !important;
        line-height: 1.5 !important;
    }
}
/* ==========================================================
   HOME — ULTIMI ARTICOLI DAL DIARIO
   ========================================================== */

.mm-home-diary-content {
    width: 100% !important;
    padding: 48px 20px 34px !important;
    background: #fff !important;
}

.mm-home-diary-title {
    margin: 0 0 28px !important;
    padding: 0 !important;

    color: #102332 !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: -.025em !important;
    text-align: left !important;
    text-transform: none !important;
}


/* 4 CARD */

.mm-home-diary-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;

    width: 100% !important;
	max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mm-home-diary-card {
    width: 100% !important;
	max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
	
	flex: none !important;

    overflow: hidden !important;

    border: 1px solid rgba(16,35,50,.10) !important;
    border-radius: 14px !important;

    background: #fff !important;

    box-shadow: 0 8px 24px rgba(16,35,50,.09) !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease !important;
}

.mm-home-diary-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 13px 30px rgba(16,35,50,.15) !important;
}

.mm-home-diary-link {
    display: flex !important;
    flex-direction: column !important;

    width: 100% !important;
    height: 100% !important;

    color: #102332 !important;
    text-decoration: none !important;
}

.mm-home-diary-link:hover,
.mm-home-diary-link:focus {
    color: #102332 !important;
    text-decoration: none !important;
}


/* IMMAGINE */

.mm-home-diary-image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 3 / 2 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;

    background: #e9eef1 !important;
}

.mm-home-diary-image img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;

    object-fit: cover !important;

    transition: transform .35s ease !important;
}

.mm-home-diary-card:hover .mm-home-diary-image img {
    transform: scale(1.035) !important;
}


/* TESTI CARD */

.mm-home-diary-card h2 {
    margin: 0 !important;
    padding: 18px 18px 8px !important;

    color: #102332 !important;

    font-size: 18px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-transform: none !important;
}

.mm-home-diary-card .snippet {
    margin: 0 !important;
    padding: 0 18px 20px !important;

    color: #56636c !important;

    font-size: 13px !important;
    line-height: 1.45 !important;
    text-align: left !important;
}


/* ==========================================================
   VAI AL DIARIO
   ========================================================== */

.mm-home-diary-more {
    width: 100% !important;

    margin: 26px 0 38px !important;
    padding: 0 !important;

    text-align: center !important;
}

.mm-home-diary-more ul,
.mm-home-diary-more li {
    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}

.mm-home-diary-more .btn {
    display: inline-flex !important;

    min-height: 44px !important;

    align-items: center !important;
    justify-content: center !important;

    padding: 0 24px !important;

    border: 2px solid #168ac4 !important;
    border-radius: 999px !important;

    background: #168ac4 !important;
    color: #fff !important;

    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;

    text-decoration: none !important;

    box-shadow: none !important;
}

.mm-home-diary-more .btn:hover,
.mm-home-diary-more .btn:focus {
    background: transparent !important;
    color: #168ac4 !important;
}


/* ==========================================================
   HOME — SEMPRE NUOVE PROSPETTIVE
   ========================================================== */

.mm-home-prospettive {
    position: relative !important;

    width: 100% !important;
    height: 330px !important;

    margin: 0 !important;

    overflow: hidden !important;

    border-radius: 0 !important;

    background: #102332 !important;
}


/* FOTO */

.mm-home-prospettive-bg {
    position: absolute !important;
    inset: 0 !important;

    display: block !important;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
    object-position: center 56% !important;
}


/* LEGGERA OMBRA PER LEGGIBILITÀ */

.mm-home-prospettive::after {
    content: "" !important;

    position: absolute !important;
    inset: 0 !important;

    z-index: 1 !important;

    background:
        linear-gradient(
            90deg,
            rgba(5,18,29,.62) 0%,
            rgba(5,18,29,.28) 35%,
            rgba(5,18,29,.04) 61%,
            rgba(5,18,29,.20) 100%
        ) !important;

    pointer-events: none !important;
}


/* CONTENUTI SOPRA LA FOTO */

.mm-home-prospettive-overlay {
    position: relative !important;
    z-index: 2 !important;

    display: flex !important;

    width: 100% !important;
    height: 100% !important;

    align-items: center !important;
    justify-content: space-between !important;

    padding: 36px 48px !important;
}


/* TESTO SINISTRA */

.mm-home-prospettive-copy {
    width: 42% !important;
    max-width: 470px !important;

    color: #fff !important;

    text-shadow: 0 2px 6px rgba(0,0,0,.35) !important;
}

.mm-home-prospettive-title {
    margin: 0 0 14px !important;
    padding: 0 !important;

    color: #fff !important;

    font-family: "Caveat", cursive !important;
    font-size: 45px !important;
    font-weight: 500 !important;
    line-height: .86 !important;

    transform: rotate(-3deg) !important;
    transform-origin: left center !important;
}

.mm-home-prospettive-text {
    max-width: 390px !important;

    margin: 0 0 14px !important;
    padding: 0 !important;

    color: rgba(255,255,255,.94) !important;

    font-size: 14px !important;
    line-height: 1.45 !important;
}

.mm-home-prospettive-sign {
    display: inline-block !important;

    color: #fff !important;

    font-family: "Caveat", cursive !important;
    font-size: 28px !important;
    line-height: 1 !important;

    transform: rotate(-4deg) !important;
}


/* ==========================================================
   BOX SOCIAL DESTRA
   ========================================================== */

.mm-home-prospettive-social {
    display: flex !important;
    flex-direction: column !important;

    width: 230px !important;

    gap: 14px !important;

    padding: 20px !important;

    border: 1px solid rgba(255,255,255,.20) !important;
    border-radius: 14px !important;

    background: rgba(5,18,29,.86) !important;

    box-shadow: 0 12px 30px rgba(0,0,0,.22) !important;

    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
}

.mm-home-prospettive-social-title {
    display: block !important;

    color: #fff !important;

    font-size: 16px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

.mm-home-prospettive-tiktok {
    display: flex !important;

    min-height: 42px !important;

    align-items: center !important;
    justify-content: center !important;

    gap: 8px !important;

    padding: 0 16px !important;

    border: 2px solid #fff !important;
    border-radius: 999px !important;

    background: #fff !important;
    color: #102332 !important;

    font-size: 12px !important;
    font-weight: 800 !important;

    text-decoration: none !important;
}

.mm-home-prospettive-tiktok:hover,
.mm-home-prospettive-tiktok:focus {
    background: transparent !important;
    color: #fff !important;
    text-decoration: none !important;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 991px) {

    .mm-home-diary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .mm-home-diary-image {
        height: 190px !important;
    }

    .mm-home-prospettive {
        height: 310px !important;
    }

    .mm-home-prospettive-overlay {
        padding: 30px !important;
    }

    .mm-home-prospettive-copy {
        width: 52% !important;
    }
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .mm-home-diary-content {
        padding: 36px 14px 28px !important;
    }

    .mm-home-diary-title {
        margin-bottom: 20px !important;

        font-size: 25px !important;
    }

    .mm-home-diary-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .mm-home-diary-image {
        height: 210px !important;
    }

    .mm-home-diary-more {
        margin: 22px 0 30px !important;
    }


    /* BANNER */

    .mm-home-prospettive {
        height: 470px !important;
    }

    .mm-home-prospettive-bg {
        object-position: center center !important;
    }

    .mm-home-prospettive::after {
        background: rgba(5,18,29,.42) !important;
    }

    .mm-home-prospettive-overlay {
        flex-direction: column !important;

        align-items: flex-start !important;
        justify-content: space-between !important;

        padding: 30px 22px 24px !important;
    }

    .mm-home-prospettive-copy {
        width: 100% !important;
        max-width: 420px !important;
    }

    .mm-home-prospettive-title {
        font-size: 39px !important;
    }

    .mm-home-prospettive-text {
        font-size: 13px !important;
    }

    .mm-home-prospettive-social {
        width: 100% !important;

        padding: 16px !important;
    }
}
/* Banner finale — full width della colonna Home */
.mm-home-prospettive {
    position: relative !important;
    left: 50% !important;
    width: calc(100% + 40px) !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%) !important;
}
/* ==========================================================
   HOME — RIFINITURE FINALI DIARIO
   ========================================================== */

/* Riduce lo spazio tra "Il mare non ha stagioni" e Diario */
.mm-home-diary-content {
    padding-top: 24px !important;
}


/* Banner finale realmente full-width della colonna */
.mm-home-prospettive {
    position: relative !important;
    left: 50% !important;

    width: calc(100% + 80px) !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    transform: translateX(-50%) !important;
}
.mm-home-prospettive-social-icons {
    display: flex;
    align-items: center;
	justify-content: center;
    gap: 20px;
    margin-top: 14px;
}

.mm-home-prospettive-social-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    font-size: 25px;
    line-height: 1;
    text-decoration: none !important;
    opacity: .95;
    transition: opacity .2s ease, transform .2s ease;
}

.mm-home-prospettive-social-icons a:hover {
    color: #fff !important;
    opacity: 1;
    transform: translateY(-2px);
}

.mm-home-prospettive-social-icons i {
    color: inherit !important;
    font-size: inherit !important;
}
/* HOME — elimina spazio sotto banner finale */
.mm-home-diary-content {
    padding-bottom: 0 !important;
}
/* HOME — elimina spazio tra Sedestral e footer */
.sedestral.blog-container-home {
    margin-bottom: 0 !important;
}