/* === DESKTOP === */

/* Header transparent override */
.elementor-148 .elementor-element.elementor-element-4430805,
.elementor-148 .elementor-element.elementor-element-4430805:not(.elementor-motion-effects-element-type-background),
.elementor-148 .elementor-element.elementor-element-4430805 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: transparent !important;
}

/* Title color black */
.elementor-7884 .elementor-element.elementor-element-7b531a7 .elementor-heading-title {
    color: #000000 !important;
}

/* === TABLET (max-width: 1024px) === */
@media (max-width: 1024px) {
    .elementor-7884 .elementor-element.elementor-element-87b5b81 > .elementor-element-populated {
        padding-top: 100px !important;
    }
}

/* === MOBILE (max-width: 767px) === */
@media (max-width: 767px) {
    /* Hero section: let it grow to fit content, reduce negative margin */
    .elementor-7884 .elementor-element.elementor-element-78053a5 {
        margin-top: -50px !important;
    }
    .elementor-7884 .elementor-element.elementor-element-78053a5 > .elementor-container {
        min-height: auto !important;
        padding-bottom: 40px !important;
    }

    /* Hero column: pad top to clear header, align content to top */
    .elementor-7884 .elementor-element.elementor-element-87b5b81 > .elementor-element-populated {
        padding-top: 120px !important;
        margin: 0 15px !important;
        align-content: flex-start !important;
        align-items: flex-start !important;
    }

    /* LEO'S RISTORANTE title */
    .elementor-7884 .elementor-element.elementor-element-7b531a7 .elementor-heading-title {
        font-size: 26px !important;
        line-height: 1.2em !important;
    }
    .elementor-7884 .elementor-element.elementor-element-7b531a7 > .elementor-widget-container {
        margin: 0 0 4px 0 !important;
    }

    /* Subtitle "Family Run Since 1948" */
    .elementor-7884 .elementor-element.elementor-element-46962b0 .elementor-heading-title {
        font-size: 22px !important;
        line-height: 1.2em !important;
    }
    .elementor-7884 .elementor-element.elementor-element-46962b0 > .elementor-widget-container {
        margin: 0 0 12px 0 !important;
    }

    /* TripAdvisor widget */
    .elementor-7884 .elementor-element.elementor-element-a08c8a8 {
        max-width: 130px !important;
        --container-widget-width: 130px !important;
        width: 130px !important;
    }
    .elementor-7884 .elementor-element.elementor-element-a08c8a8 > .elementor-widget-container {
        margin: 0 0 16px 0 !important;
    }

    /* Buttons: stack vertically with spacing */
    .elementor-7884 .elementor-element.elementor-element-a63d8ce,
    .elementor-7884 .elementor-element.elementor-element-1514f26 {
        width: 100% !important;
    }
    .elementor-7884 .elementor-element.elementor-element-a63d8ce > .elementor-widget-container,
    .elementor-7884 .elementor-element.elementor-element-1514f26 > .elementor-widget-container {
        margin: 4px 0 !important;
    }
    .elementor-7884 .elementor-element.elementor-element-a63d8ce .elementor-button,
    .elementor-7884 .elementor-element.elementor-element-1514f26 .elementor-button {
        font-size: 14px !important;
        padding: 10px 20px !important;
        width: 100% !important;
        text-align: center !important;
    }
}
