/* BAK CONTATTI — nero #000 + righe oro a tratti */
body.bak-contatti-nero-oro {
    background: #000 !important;
    color: #fff;
    position: relative;
}

/* Sfondo globale: righe diagonali oro spezzate. Non copre il contenuto. */
body.bak-contatti-nero-oro::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: .72;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='650' viewBox='0 0 900 650'%3E%3Cg stroke='%23D4AF37' stroke-width='4' opacity='.55' fill='none'%3E%3Cpath d='M-100 180 L170 -90'/%3E%3Cpath d='M-40 430 L430 -40'/%3E%3Cpath d='M170 650 L760 60'/%3E%3Cpath d='M500 650 L1050 100'/%3E%3Cpath d='M700 850 L1150 400'/%3E%3C/g%3E%3Cg stroke='%23D4AF37' stroke-width='4' opacity='.55' fill='none'%3E%3Cpath d='M-100 180 L-20 100' stroke-dasharray='75 32'/%3E%3Cpath d='M-40 430 L60 330' stroke-dasharray='95 38'/%3E%3Cpath d='M170 650 L290 530' stroke-dasharray='105 42'/%3E%3Cpath d='M500 650 L630 520' stroke-dasharray='100 40'/%3E%3Cpath d='M700 850 L820 730' stroke-dasharray='90 36'/%3E%3C/g%3E%3C/svg%3E");
    background-repeat: repeat;
    background-size: 900px 650px;
}

/* Tutta la superficie della pagina resta nera; non vengono rimosse le immagini. */
body.bak-contatti-nero-oro #page,
body.bak-contatti-nero-oro main,
body.bak-contatti-nero-oro .site-main,
body.bak-contatti-nero-oro .elementor,
body.bak-contatti-nero-oro .elementor-section-wrap,
body.bak-contatti-nero-oro .elementor-section,
body.bak-contatti-nero-oro .elementor-container,
body.bak-contatti-nero-oro .elementor-widget-wrap,
body.bak-contatti-nero-oro .e-con,
body.bak-contatti-nero-oro .e-con-inner {
    background-color: transparent !important;
}

/* Sopra al motivo di sfondo */
body.bak-contatti-nero-oro #page,
body.bak-contatti-nero-oro main,
body.bak-contatti-nero-oro .elementor {
    position: relative;
    z-index: 1;
}

/* Testi leggibili */
body.bak-contatti-nero-oro h1,
body.bak-contatti-nero-oro h2,
body.bak-contatti-nero-oro h3,
body.bak-contatti-nero-oro h4,
body.bak-contatti-nero-oro h5,
body.bak-contatti-nero-oro h6 {
    color: #D4AF37 !important;
}

body.bak-contatti-nero-oro p,
body.bak-contatti-nero-oro li,
body.bak-contatti-nero-oro .elementor-widget-text-editor,
body.bak-contatti-nero-oro .elementor-widget-text-editor p,
body.bak-contatti-nero-oro .elementor-icon-list-text {
    color: #fff !important;
}

/* Non modifica header e footer: rimangono quelli già presenti nel sito. */
body.bak-contatti-nero-oro header,
body.bak-contatti-nero-oro .elementor-location-header,
body.bak-contatti-nero-oro footer,
body.bak-contatti-nero-oro .elementor-location-footer {
    position: relative;
    z-index: 5;
}


/* BAK Contatti 1.0.1 - remove contact emojis and force readable white text */
body.bak-contatti-nero-oro,
body.bak-contatti-nero-oro .bak-contatti-wrap,
body.bak-contatti-nero-oro .bak-contatti-wrap p,
body.bak-contatti-nero-oro .bak-contatti-wrap li,
body.bak-contatti-nero-oro .bak-contatti-wrap span,
body.bak-contatti-nero-oro .bak-contatti-wrap a,
body.bak-contatti-nero-oro .bak-contatti-wrap .elementor-text-editor,
body.bak-contatti-nero-oro .bak-contatti-wrap .elementor-widget-text-editor {
    color: #ffffff !important;
}

/* Hide emoji/icon elements inserted for address and phone */
body.bak-contatti-nero-oro .bak-contact-icon,
body.bak-contatti-nero-oro .bak-contact-emoji,
body.bak-contatti-nero-oro .contact-icon,
body.bak-contatti-nero-oro .contact-emoji,
body.bak-contatti-nero-oro .emoji {
    display: none !important;
}

/* Also neutralize common emoji characters if they are direct text nodes by hiding
   the icon wrapper; the actual address/phone text remains visible. */
body.bak-contatti-nero-oro .bak-contatti-address,
body.bak-contatti-nero-oro .bak-contatti-phone {
    color: #ffffff !important;
}


/* 1.0.2 — contact text must always be white */
body.bak-contatti-nero-oro .elementor-widget-text-editor,
body.bak-contatti-nero-oro .elementor-widget-text-editor *,
body.bak-contatti-nero-oro .elementor-icon-list-text,
body.bak-contatti-nero-oro .elementor-icon-list-item,
body.bak-contatti-nero-oro .elementor-widget-icon-list a,
body.bak-contatti-nero-oro .elementor-widget-icon-list span {
    color: #ffffff !important;
}

/* Hide contact icon wrappers if present */
body.bak-contatti-nero-oro .bak-contact-icon,
body.bak-contatti-nero-oro .bak-contact-emoji,
body.bak-contatti-nero-oro .contact-icon,
body.bak-contatti-nero-oro .contact-emoji,
body.bak-contatti-nero-oro .emoji {
    display: none !important;
}


/* 1.0.3 — HARD OVERRIDE: all contact-page copy is white */
html body.bak-contatti-nero-oro,
html body.bak-contatti-nero-oro #page,
html body.bak-contatti-nero-oro main,
html body.bak-contatti-nero-oro .elementor {
    color: #ffffff !important;
}

html body.bak-contatti-nero-oro main :where(
    p, li, span, a, div, strong, em, b, small, label,
    .elementor-heading-title,
    .elementor-widget-text-editor,
    .elementor-widget-text-editor *,
    .elementor-icon-list-text,
    .elementor-icon-list-item
) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Keep headings gold */
html body.bak-contatti-nero-oro main :where(h1,h2,h3,h4,h5,h6) {
    color: #D4AF37 !important;
    -webkit-text-fill-color: #D4AF37 !important;
}

/* Remove the contact emojis even if Elementor renders them as plain text. */
html body.bak-contatti-nero-oro main .bak-contact-icon,
html body.bak-contatti-nero-oro main .bak-contact-emoji,
html body.bak-contatti-nero-oro main .contact-icon,
html body.bak-contatti-nero-oro main .contact-emoji {
    display: none !important;
}
