.elementor-314 .elementor-element.elementor-element-af6f2e2{--display:flex;}.elementor-314 .elementor-element.elementor-element-94595d0{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-314 .elementor-element.elementor-element-6959011{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-field-group.recaptcha_v3-bottomleft, .elementor-314 .elementor-element.elementor-element-4c325bf .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-314 .elementor-element.elementor-element-4c325bf .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-314 .elementor-element.elementor-element-4c325bf .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-314 .elementor-element.elementor-element-4c325bf .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-field-type-html{padding-bottom:0px;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-button[type="submit"]{color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-314 .elementor-element.elementor-element-4c325bf{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-314 .elementor-element.elementor-element-f19bfc8{--spacer-size:1px;}.elementor-314 .elementor-element.elementor-element-7317bbb{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-314 .elementor-element.elementor-element-c068079{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-314 .elementor-element.elementor-element-6fd9e20.elementor-element{--align-self:flex-start;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-314 .elementor-element.elementor-element-37b25c6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-314 .elementor-element.elementor-element-4dbf6ee .elementor-icon-wrapper{text-align:center;}.elementor-314 .elementor-element.elementor-element-326b264 .elementor-icon-wrapper{text-align:center;}.elementor-314 .elementor-element.elementor-element-5d15b26 .elementor-icon-wrapper{text-align:center;}.elementor-314 .elementor-element.elementor-element-148fbd6 .elementor-icon-wrapper{text-align:center;}.elementor-314 .elementor-element.elementor-element-f4442ee{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-314 .elementor-element.elementor-element-d921905{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(3, 1fr);--grid-auto-flow:row;}.elementor-314 .elementor-element.elementor-element-bef4184{--display:flex;}.elementor-314 .elementor-element.elementor-element-4b4174c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-314 .elementor-element.elementor-element-71c38c3{--display:flex;}.elementor-314 .elementor-element.elementor-element-6fdcb7f{--display:flex;}.elementor-314 .elementor-element.elementor-element-b6074f2{--spacer-size:1px;}.elementor-314 .elementor-element.elementor-element-733c652{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-314 .elementor-element.elementor-element-a7a3a3f{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-314 .elementor-element.elementor-element-7317bbb{--grid-auto-flow:row;}.elementor-314 .elementor-element.elementor-element-d921905{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-314 .elementor-element.elementor-element-af6f2e2{--content-width:1300px;}}@media(max-width:767px){.elementor-314 .elementor-element.elementor-element-7317bbb{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-314 .elementor-element.elementor-element-d921905{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS *//* ═══════════════════════════════════════════════════════════════
   FOOTER - CSS COMPLETO
   ═══════════════════════════════════════════════════════════════ */

/* Main Container */
.footer-main {
    background: #003366 !important;
    color: #e8eaf0 !important;
    width: 100% !important;
    padding: 0 !important;
}

.footer-main {
    position: relative !important;
}

/* ═══════════════════════════════════════════════════════════════
   FORM SECTION
   ═══════════════════════════════════════════════════════════════ */

.footer-form-section {
    padding: 60px 52px 40px !important;
}

.footer-form-section > .e-con-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.footer-title .elementor-heading-title {
    font-size: clamp(2rem, 5vw, 3.5rem) !important;
    font-weight: 800 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    background: linear-gradient(90deg, #fff 0%, #f2ae31 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.footer-form-row {
    margin-top: 40px !important;
}

/* ═══════════════════════════════════════════════════════════════
   FOOTER FORM - EFFETTO GLASS
   ═══════════════════════════════════════════════════════════════ */

/* Form layout - tutto su una riga */
.footer-form .elementor-form,
.footer-form .elementor-form-fields-wrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    align-items: center !important;
    background: transparent !important;
}

.footer-form .elementor-field-group,
.footer-form .elementor-field-type-select {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    flex: 1 1 0 !important;
    min-width: 120px !important;
}

/* Nascondi label */
.footer-form .elementor-field-label {
    display: none !important;
}

/* Select wrapper fix */
.footer-form .elementor-select-wrapper {
    width: 100% !important;
    margin: 0 !important;
}

/* Input con effetto Glass */
.footer-form .elementor-field,
.footer-form input.elementor-field,
.footer-form select.elementor-field,
.footer-form input[type="text"],
.footer-form input[type="email"],
.footer-form input[type="tel"],
.footer-form select,
.footer-form .elementor-select-wrapper select {
    background: rgba(255, 255, 255, 0.06) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 12px !important;
    color: #fff !important;
    font-size: 14px !important;
    padding: 0 16px !important;
    height: 50px !important;
    line-height: 50px !important;
    width: 100% !important;
    margin: 0 !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
}

.footer-form .elementor-field::placeholder,
.footer-form input::placeholder {
    color: rgba(255, 255, 255, 0.4) !important;
}

.footer-form .elementor-field:focus,
.footer-form input:focus,
.footer-form select:focus {
    border-color: #f2ae31 !important;
    background: rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 0 0 2px rgba(242, 174, 49, 0.15) !important;
    outline: none !important;
}

/* Select */
.footer-form select.elementor-field,
.footer-form select {
    color: rgba(255, 255, 255, 0.4) !important;
    appearance: none !important;
    cursor: pointer !important;
}

.footer-form select option {
    background: #0a1628 !important;
    color: #fff !important;
}

/* Bottone Submit */
.footer-form .elementor-field-type-submit {
    flex: 0 0 auto !important;
    min-width: 160px !important;
    display: flex !important;
    align-items: center !important;
}

.footer-form .elementor-button,
.footer-form button[type="submit"] {
    background: linear-gradient(135deg, #f2ae31 0%, #e89d20 100%) !important;
    color: #050d1f !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 0 28px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    white-space: nowrap !important;
    height: 50px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 18px rgba(242, 174, 49, 0.35) !important;
    cursor: pointer !important;
    margin: 0 !important;
}

.footer-form .elementor-button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 28px rgba(242, 174, 49, 0.5) !important;
}

/* ═══════════════════════════════════════════════════════════════
   DIVIDER
   ═══════════════════════════════════════════════════════════════ */

.footer-divider {
    height: 1px !important;
    min-height: 1px !important;
    background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.12) 30%, rgba(242,174,49,0.35) 50%, rgba(255,255,255,0.12) 70%, transparent 100%) !important;
    margin: 0 52px !important;
    padding: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   FOOTER BODY
   ═══════════════════════════════════════════════════════════════ */

.footer-body {
    padding: 56px 52px 48px !important;
}

.footer-body > .e-con-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 260px 1fr auto !important;
    gap: 48px !important;
    align-items: start !important;
}

/* Brand Column */
.footer-col-brand {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

.footer-logo img {
    width: 160px !important;
    height: auto !important;
    filter: brightness(0) invert(1) !important;
    opacity: 0.9 !important;
}

.footer-tagline,
.footer-tagline p {
    font-size: 0.85rem !important;
    color: rgba(232, 234, 240, 0.45) !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

.footer-socials,
.footer-socials > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    gap: 10px !important;
    margin-top: 4px !important;
}

.footer-social-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
}

.footer-social-btn .elementor-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: rgba(232, 234, 240, 0.65) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background 0.22s, color 0.22s, border-color 0.22s, transform 0.18s !important;
}

.footer-social-btn .elementor-icon:hover {
    background: rgba(242, 174, 49, 0.18) !important;
    border-color: rgba(242, 174, 49, 0.5) !important;
    color: #f2ae31 !important;
    transform: translateY(-3px) !important;
}

/* Services Column */
.footer-col-services {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
}

.footer-col-title .elementor-heading-title {
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.2em !important;
    color: #f2ae31 !important;
    text-transform: uppercase !important;
    margin: 0 !important;
}

.footer-services-grid,
.footer-services-grid > .e-con-inner {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 4px 16px !important;
}

.footer-service-link .elementor-heading-title,
.footer-service-link a {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 0.8rem !important;
    color: rgba(232, 234, 240, 0.55) !important;
    text-decoration: none !important;
    padding: 4px 0 !important;
    transition: color 0.2s, gap 0.2s !important;
}

.footer-service-link .elementor-heading-title:hover,
.footer-service-link a:hover {
    color: #f2ae31 !important;
}

/* Map Column */
.footer-col-map {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.footer-map-card {
    width: 260px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    transition: border-color 0.3s ease !important;
    padding: 0 !important;
}

.footer-map-card:hover {
    border-color: rgba(242, 174, 49, 0.3) !important;
}

.footer-map-card > .e-con-inner {
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-map-iframe {
    height: 160px !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

.footer-map-iframe > .e-con-inner {
    padding: 0 !important;
    margin: 0 !important;
}

.footer-map-iframe iframe {
    width: 100% !important;
    height: 100% !important;
    filter: grayscale(100%) invert(90%) contrast(90%) !important;
    opacity: 0.75 !important;
    transition: filter 0.3s ease, opacity 0.3s ease !important;
    display: block !important;
}

.footer-map-card:hover .footer-map-iframe iframe {
    filter: grayscale(0%) invert(0%) contrast(100%) !important;
    opacity: 1 !important;
}

.footer-map-address {
    padding: 12px 14px !important;
    background: rgba(0, 0, 0, 0.25) !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
}

.footer-map-address > .e-con-inner {
    gap: 4px !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-map-address .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
}

.footer-map-address .elementor-heading-title {
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    color: #fff !important;
    margin: 0 !important;
}

.footer-map-address p,
.footer-map-address span,
.footer-map-address .elementor-text-editor,
.footer-map-address .elementor-text-editor p {
    font-size: 0.75rem !important;
    color: rgba(255, 255, 255, 0.5) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.footer-map-address {
    margin-top: -30px !important;
}

/* ═══════════════════════════════════════════════════════════════
   BOTTOM BAR
   ═══════════════════════════════════════════════════════════════ */

.footer-bottom-bar {
    padding: 20px 52px 32px !important;
}

.footer-bottom-bar > .e-con-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
}

.footer-referral-btn .elementor-button {
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.16em !important;
    color: #f2ae31 !important;
    background: transparent !important;
    padding: 7px 20px !important;
    border: 1px solid rgba(242, 174, 49, 0.45) !important;
    border-radius: 100px !important;
    transition: background 0.22s, color 0.22s, border-color 0.22s !important;
}

.footer-referral-btn .elementor-button:hover {
    background: rgba(242, 174, 49, 0.15) !important;
    border-color: rgba(242, 174, 49, 0.7) !important;
    color: #ffc84a !important;
}

.footer-legal-links,
.footer-legal-links > .e-con-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0 !important;
}

.footer-legal-link .elementor-heading-title,
.footer-legal-link a {
    font-size: 0.72rem !important;
    color: rgba(232, 234, 240, 0.35) !important;
    -webkit-text-fill-color: rgba(232, 234, 240, 0.35) !important;
    background: none !important;
    text-decoration: none !important;
    padding: 0 8px !important;
    transition: color 0.2s !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
}

.footer-legal-link .elementor-heading-title:hover,
.footer-legal-link a:hover {
    color: #f2ae31 !important;
    -webkit-text-fill-color: #f2ae31 !important;
}

.footer-copyright,
.footer-copyright p {
    font-size: 0.75rem !important;
    color: rgba(232, 234, 240, 0.25) !important;
    margin: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════════ */

@media (max-width: 1200px) {
    .footer-form .elementor-form,
    .footer-form .elementor-form-fields-wrapper {
        flex-wrap: wrap !important;
    }
    
    .footer-form .elementor-field-group {
        flex: 1 1 30% !important;
        min-width: 150px !important;
    }
}

@media (max-width: 1024px) {
    .footer-body > .e-con-inner {
        grid-template-columns: 1fr 1fr !important;
    }
    
    .footer-col-map {
        grid-column: span 2 !important;
    }
}

@media (max-width: 768px) {
    .footer-form-section {
        padding: 40px 16px 30px !important;
    }
    
    .footer-form .elementor-field-group {
        flex: 1 1 100% !important;
    }
    
    .footer-form .elementor-field-type-submit {
        width: 100% !important;
        min-width: 100% !important;
    }
    
    .footer-form .elementor-button {
        width: 100% !important;
    }
    
    .footer-divider {
        margin: 0 16px !important;
    }
    
    .footer-body {
        padding: 32px 16px 28px !important;
    }
    
    .footer-body > .e-con-inner {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }
    
    .footer-col-brand {
        text-align: center !important;
        align-items: center !important;
    }
    
    .footer-logo img {
        width: 120px !important;
    }
    
    .footer-tagline {
        max-width: 280px !important;
    }
    
    .footer-socials,
    .footer-socials > .e-con-inner {
        justify-content: center !important;
    }
    
    .footer-col-services {
        text-align: center !important;
        align-items: center !important;
    }
    
    .footer-services-grid,
    .footer-services-grid > .e-con-inner {
        max-width: 320px !important;
        justify-items: start !important;
    }
    
    .footer-col-map {
        text-align: center !important;
        align-items: center !important;
        grid-column: auto !important;
    }
    
    .footer-map-card {
        max-width: 300px !important;
        margin: 0 auto !important;
    }
    
    .footer-bottom-bar {
        padding: 16px !important;
    }
    
    .footer-bottom-bar > .e-con-inner {
        flex-direction: column !important;
        text-align: center !important;
    }
    
    .footer-legal-links,
    .footer-legal-links > .e-con-inner {
        justify-content: center !important;
    }
}

/* ═══════════════════════════════════════════════════════════════
   FIX SELECT FIELD
   ═══════════════════════════════════════════════════════════════ */

.footer-form .elementor-select-wrapper,
.footer-form .elementor-field-type-select .elementor-field-group,
.footer-form .elementor-field-type-select .elementor-widget-container {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

.footer-form .elementor-select-wrapper .elementor-field {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.footer-form .elementor-select-wrapper select,
.footer-form select.elementor-field-textual {
    background: rgba(255, 255, 255, 0.06) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    padding: 0 16px !important;
    font-size: 14px !important;
    line-height: 50px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

.footer-form .elementor-select-wrapper select:hover,
.footer-form select.elementor-field-textual:hover {
    border-color: rgba(255, 255, 255, 0.25) !important;
    background-color: rgba(255, 255, 255, 0.09) !important;
}

.footer-form .elementor-select-wrapper select:focus,
.footer-form select.elementor-field-textual:focus {
    outline: none !important;
    border-color: rgba(212, 175, 55, 0.5) !important;
    box-shadow: 0 0 0 2px rgba(212, 175, 55, 0.15) !important;
}

.footer-form .elementor-select-wrapper select option {
    background: #1a1a2e !important;
    color: #ffffff !important;
    padding: 10px !important;
}

/* ═══════════════════════════════════════════════════════════════
   SOCIAL ICONS
   ═══════════════════════════════════════════════════════════════ */

.footer-socials,
.footer-col-brand .elementor-element[class*="container"] {
    display: flex !important;
    flex-direction: row !important;
    gap: 10px !important;
}

.footer-social-btn,
.footer-social-btn .elementor-icon {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.footer-social-btn .elementor-icon {
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    transition: all 0.25s ease !important;
}

.footer-social-btn svg,
.footer-social-btn i {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    background: transparent !important;
    border: none !important;
    fill: rgba(232, 234, 240, 0.65) !important;
    color: rgba(232, 234, 240, 0.65) !important;
}

.footer-social-btn:hover .elementor-icon {
    background: rgba(242, 174, 49, 0.18) !important;
    border-color: rgba(242, 174, 49, 0.5) !important;
    transform: translateY(-3px) !important;
}

.footer-social-btn:hover svg,
.footer-social-btn:hover i {
    fill: #f2ae31 !important;
    color: #f2ae31 !important;
}
SOSTITUISCI CON:

/* ═══════════════════════════════════════════════════════════════
   SOCIAL ICONS - FIX
   ═══════════════════════════════════════════════════════════════ */

.footer-socials .elementor-widget-icon,
.footer-socials .elementor-icon-wrapper,
.footer-col-brand .elementor-widget-icon,
.footer-col-brand .elementor-icon-wrapper {
    width: 36px !important;
    height: 36px !important;
}

.footer-socials .elementor-icon,
.footer-col-brand .elementor-icon {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    font-size: 16px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.07) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.25s ease !important;
}

.footer-socials .elementor-icon svg,
.footer-socials .elementor-icon i,
.footer-col-brand .elementor-icon svg,
.footer-col-brand .elementor-icon i {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    fill: rgba(232, 234, 240, 0.65) !important;
    color: rgba(232, 234, 240, 0.65) !important;
}

.footer-socials .elementor-icon:hover,
.footer-col-brand .elementor-icon:hover {
    background: rgba(242, 174, 49, 0.18) !important;
    border-color: rgba(242, 174, 49, 0.5) !important;
    transform: translateY(-3px) !important;
}

.footer-socials .elementor-icon:hover svg,
.footer-socials .elementor-icon:hover i,
.footer-col-brand .elementor-icon:hover svg,
.footer-col-brand .elementor-icon:hover i {
    fill: #f2ae31 !important;
    color: #f2ae31 !important;
}


/* ═══════════════════════════════════════════════════════════════
   FOOTER MOBILE - FIX COMPLETO
   ═══════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    
    /* Titolo più piccolo */
    .footer-title .elementor-heading-title {
        font-size: 1.8rem !important;
        letter-spacing: 0.1em !important;
        text-align: center !important;
    }
    
    /* Form section padding ridotto */
    .footer-form-section {
        padding: 30px 16px 20px !important;
    }
    
    /* Divider più corto */
    .footer-divider {
        margin: 0 16px !important;
    }
    
    /* Footer body */
    .footer-body {
        padding: 24px 16px 20px !important;
    }
    
    /* Colonne centrate */
    .footer-col-brand,
    .footer-col-services,
    .footer-col-map {
        text-align: center !important;
        align-items: center !important;
    }
    
    /* Social icons centrate */
    .footer-socials,
    .footer-socials > .e-con-inner {
        justify-content: center !important;
    }
    
    /* Services grid centrata */
    .footer-services-grid,
    .footer-services-grid > .e-con-inner {
        justify-content: center !important;
        text-align: center !important;
    }
    
    /* Mappa centrata */
    .footer-map-card {
        margin: 0 auto !important;
        max-width: 280px !important;
    }
    
    /* Bottom bar */
    .footer-bottom-bar {
        padding: 20px 16px !important;
    }
    
    .footer-bottom-bar > .e-con-inner {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 16px !important;
    }
    
    /* Referral button centrato */
    .footer-referral-btn {
        margin: 0 auto !important;
        display: flex !important;
        justify-content: center !important;
    }
    
    .footer-referral-btn .elementor-button {
        margin: 0 auto !important;
    }
    
    /* Legal links centrati */
    .footer-legal-links,
    .footer-legal-links > .e-con-inner {
        justify-content: center !important;
        text-align: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    
    /* Copyright centrato */
    .footer-copyright {
        text-align: center !important;
        width: 100% !important;
    }
}

@media (max-width: 480px) {
    
    /* Titolo ancora più piccolo */
    .footer-title .elementor-heading-title {
        font-size: 1.5rem !important;
        letter-spacing: 0.08em !important;
    }
    
    /* Form fields più compatti */
    .footer-form .elementor-field,
    .footer-form input,
    .footer-form select {
        height: 45px !important;
        font-size: 13px !important;
    }
    
    /* Services su 1 colonna */
    .footer-services-grid,
    .footer-services-grid > .e-con-inner {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
    
    /* Legal links più piccoli */
    .footer-legal-link .elementor-heading-title {
        font-size: 0.65rem !important;
        padding: 0 4px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════
   FIX MOBILE - AGGIUNTE
   ═══════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    
    /* TITOLO SINGOLA RIGA */
    .footer-title .elementor-heading-title {
        font-size: 1.2rem !important;
        white-space: nowrap !important;
    }
    
    /* SERVICES - 2 COLONNE */
    .footer-services-grid,
    .footer-services-grid > .e-con-inner {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px 16px !important;
        text-align: left !important;
    }
    
    .footer-service-link .elementor-heading-title,
    .footer-service-link a {
        font-size: 0.7rem !important;
    }
    
    /* ICONE SOCIAL MOBILE */
    .footer-social-btn,
    .footer-social-btn .elementor-icon {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        max-width: 30px !important;
    }
}

@media (max-width: 480px) {
    
    /* SERVICES - 2 COLONNE ANCHE QUI */
    .footer-services-grid,
    .footer-services-grid > .e-con-inner {
        grid-template-columns: 1fr 1fr !important;
    }
}/* End custom CSS */