/*
 * avantune.v1.css: foglio unico di avantune.com
 *
 * Unica fonte del CSS di Avantune valido per tutto il sito (Bandzoogle, tema Zenith).
 * Va caricato in Header content, prima della base del tema: per questo alcune regole
 * hanno bisogno di !important per vincere sul tema.
 * I termini (foglio unico, base del tema, CSS di pagina...) sono in GLOSSARY.md.
 *
 * Indice
 *   1. Fondamenta (variabili, html e body, scorrimento orizzontale, tipografia)
 *   2. Header e menu
 *   3. Menu mobile
 *   4. Sezioni e feature row
 *   5. Componenti av-*
 *   6. Home
 *   7. Footer e newsletter
 */


/* == 1. Fondamenta == */

/* Variabili: valori ripetuti almeno 3 volte, con il nome del ruolo */
:root {
  --av-color-accent: #FA5A30;          /* arancio Avantune: pulsanti, link bar */
  --av-color-accent-active: #F19136;   /* arancio chiaro: hover dei pulsanti, pagina attiva */
  --av-color-text-light: #ffffff;      /* testo su sfondo arancio o scuro */
  --av-color-surface: #ffffff;         /* sfondo di box, pulsanti chiari e campi */
  --av-color-bg-light: #f1f1f1;        /* sfondo grigio chiaro delle sezioni */
  --av-font-button: Arial, Helvetica, sans-serif;
  --av-space-button: 15px;             /* padding dei pulsanti e della link bar */
}

@font-face {
font-family: 'Raleway'; src: url('https://assets-production.bndzgl.com/assets/14a9befe-1c91-462e-a061-dae53899d8f2/raleway-regular.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
font-family: 'Raleway'; src: url('https://assets-production.bndzgl.com/assets/75d1b0a5-efcf-4604-af4d-4905c65865a0/raleway-medium.woff2') format('woff2'); font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
font-family: 'Raleway'; src: url('https://assets-production.bndzgl.com/assets/57887a65-34dd-4a15-9722-07bc6a06a535/raleway-semibold.woff2') format('woff2'); font-weight: 600; font-style: normal; font-display: swap;
}

body {
  overflow-x: hidden;
}
html {
  scroll-behavior: smooth;
  scroll-margin-top: 100px;
}

/* Niente scorrimento orizzontale, nemmeno su mobile */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}

/* Nessun contenitore più largo della finestra (senza usare 100vw) */
#usersite-container,
#content,
.page,
.section,
[class*="feature_row"],
[class*="zoogle-column"] {
  max-width: 100%;
  overflow-x: hidden;
}

/* Solo mobile: media fluidi e niente sforamenti laterali, il desktop resta com'è */
@media (max-width: 768px) {
  img, video, canvas, iframe {
    max-width: 100%;
    height: auto;
  }

  [id^="feature_row_"] {
    overflow-x: hidden;   /* solo asse X, non taglia in verticale */
  }

  /* Media background: nessuna larghezza forzata, solo il limite della finestra */
  media-background,
  media-background[mode="fixed"],
  [class*="banner"],
  [class*="hero"] {
    box-sizing: border-box;
    max-width: 100%;
  }
}

/* Titoli: non spezzare le parole a metà */
.titolo_seo,
.text-big {
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* Titoli lunghi che sforano su iPhone e mobile */
@media (max-width: 430px) {
  .titolo_seo,
  .titolo_seo * {
    overflow-wrap: anywhere;
    word-break: break-word;       /* fallback */
    hyphens: auto;
    -webkit-hyphens: auto;        /* iOS Safari */
    white-space: normal;
  }

  .titolo_seo {
    margin-left: 16px;
    margin-right: 16px;
    font-size: clamp(30px, 25vw, 40px) !important; /* batte: #usersite-container h1 (base Bandzoogle, application) */
    line-height: 1.15 !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */
    overflow: visible;
  }

  .text-big,
  .text-big * {
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
    -webkit-hyphens: auto;
    white-space: normal;
  }

  .text-big {
    font-size: clamp(30px, 25vw, 40px) !important; /* batte: #usersite-container span.font_large, #usersite-container span.text-big (base Bandzoogle, application) */
    line-height: 1.15 !important; /* batte: attributo style (inline) */
    overflow: visible;
  }
}

.parenttag { display: grid; }
.childtag { justify-self: center; }


/* == 2. Header e menu == */

.not-intro-page #usersite-container:not(.mobile-view) .title-nav-container {position:absolute; top:0;}
body:not(.mobile-view) #usersite-container[data-theme-cta-header-position-enum="middle"] .default-page-header-area {
  margin-top: 200px !important; /* batte: body:not(.mobile-view) #usersite-container[data-theme-cta-header-position-enum="middle"] .default-page-header-area (tema Zenith) */
  margin-bottom: auto;
  display: none;
}

/* Menu in alto, nel flusso della pagina (desktop) */
#usersite-container:not(.mobile-view) .title-nav-container {
  position: relative !important; /* batte: .not-intro-page #usersite-container:not(.mobile-view) .title-nav-container (foglio unico) */
  top: auto !important; /* batte: .not-intro-page #usersite-container .title-nav-container (tema Zenith) */
  left: auto !important; /* batte: .not-intro-page #usersite-container .title-nav-container (tema Zenith) */
  right: auto !important; /* batte: .not-intro-page #usersite-container .title-nav-container (tema Zenith) */
  z-index: auto !important; /* batte: .not-intro-page #usersite-container .title-nav-container (tema Zenith) */
}

/* Inner-page: il page-header parte subito dopo il menu */
.not-intro-page #usersite-container .inner-page #page-header {
  min-height: 0 !important; /* batte: .not-intro-page #usersite-container .inner-page #page-header (tema Zenith) */
  height: auto;
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
  display: block;
}
.not-intro-page #usersite-container .inner-page #page-header + * {
  margin-top: 0;
}
.not-intro-page #usersite-container .inner-page {
  display: flex;
  flex-direction: column;
}

/* Landing-page: come la inner-page */
.not-intro-page #usersite-container .landing-page #page-header {
  --responsive-header-height: none !important; /* batte: .not-intro-page #usersite-container .landing-page #page-header (tema Zenith) */
  --vh-mobile-header-height: unset;
  min-height: 0 !important; /* batte: .not-intro-page.mobile-view .landing-page #page-header (tema Zenith) */
  height: auto;
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
  display: block !important; /* batte: .not-intro-page #usersite-container .landing-page #page-header (tema Zenith) */
}
.not-intro-page #usersite-container .landing-page #page-header + * {
  margin-top: 0;
}
.not-intro-page #usersite-container .landing-page {
  display: flex;
  flex-direction: column;
}

/* Niente header extra che aggiungono spazio */
#page_media_container { display: none !important; /* batte: #usersite-container .page-media-wrapper (base Bandzoogle, application) */ }
.default-page-header-area { display: none; }

.not-intro-page #usersite-container #site-wide-header { padding: 0 !important; /* batte: .not-intro-page #usersite-container #site-wide-header (tema Zenith) */ }


/* == 3. Menu mobile == */

/* Nessuna regola: il menu mobile usa la base del tema. */


/* == 4. Sezioni e feature row == */

.not-intro-page #usersite-container .site-wrap {
  max-width: 1700px !important; /* batte: .not-intro-page #usersite-container #cart, .not-intro-page #usersite-container .site-wrap, .not-intro-page #usersite-container .site-wide-feature-area .zoogle-content (tema Zenith) */
  margin-left: auto;
  margin-right: auto;
}

/* Colonne */
@media only screen and (max-width: 768px) {
  .zoogle-column {
    width: 100% !important; /* batte: #usersite-container .zoogle-columns-50-50 .zoogle-column (base Bandzoogle, application) */
    padding: 10px !important; /* batte: moda-section:has(.gc11-hero), .moda:has(.gc11-hero), .zoogle-columns-inner:has(.gc11-hero), .site-wrap:has(.gc11-hero), .zoogle-column:has(.gc11-hero), .zoogle-feature:has(.gc11-hero), .feature:has(.gc11-hero), .html_feature:has(.gc11-hero), .block-interactions:has(.gc11-hero) (\3c style> nella pagina) */
  }
  .nomargin {margin-top:0px !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */ margin-bottom:0px !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */ margin-left: 0px !important; /* batte: attributo style (inline) */}
  .minibox {margin-right: 5px !important; /* batte: attributo style (inline) */}
  .freccia {width: 45px;}
  .titolominibox {margin-top: 8px !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */}
}

@media only screen and (min-width: 769px) and (max-width: 1800px) {
  .zoogle-column {
    padding: 10px !important; /* batte: moda-section:has(.gc11-hero), .moda:has(.gc11-hero), .zoogle-columns-inner:has(.gc11-hero), .site-wrap:has(.gc11-hero), .zoogle-column:has(.gc11-hero), .zoogle-feature:has(.gc11-hero), .feature:has(.gc11-hero), .html_feature:has(.gc11-hero), .block-interactions:has(.gc11-hero) (\3c style> nella pagina) */
  }
}

/* Sfondi fissi: su mobile e tablet scorrono con la pagina */
@media only screen and (max-width: 600px) {
  media-background[mode="fixed"] {
    background-attachment: scroll !important; /* batte: &[mode="fixed"] (base Bandzoogle, usersite) */
    background-size: cover !important; /* batte: &[mode="fixed"], &[mode="parallax"] (base Bandzoogle, usersite) */
    background-position: right center !important; /* batte: &[mode="fixed"], &[mode="parallax"] (base Bandzoogle, usersite) */
    background-repeat: no-repeat;
    margin-right: -120px !important; /* batte: media-background[mode="fixed"] (foglio unico) */
  }
}

@media only screen and (min-width: 600px) {
  media-background[mode="fixed"] {
    background-attachment: scroll !important; /* batte: &[mode="fixed"] (base Bandzoogle, usersite) */
    background-size: cover !important; /* batte: &[mode="fixed"], &[mode="parallax"] (base Bandzoogle, usersite) */
    background-position: right center !important; /* batte: &[mode="fixed"], &[mode="parallax"] (base Bandzoogle, usersite) */
    background-repeat: no-repeat;
    margin-right: 0 !important; /* batte: media-background[mode="fixed"] (foglio unico) */
  }
}

/* Feature row di singole pagine */
#feature_row_20419756 { background-color: var(--av-color-bg-light) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }   /* chi-siamo */
#feature_row_25487836,
#feature_row_25547910 { margin-top: -50px; }           /* our-values */
#feature_row_32013948 { margin-top: -50px; }           /* servizi-specializzati */

/* Pagine seo-* */
@media only screen and (min-width: 1610px) {
  .titolo_seo, .sottotitolo_seo, .pulsante_seo { margin-left: 0 !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */ }
}

/* Carriere e valori */
@media only screen and (min-width: 600px) {
  .sloganhp  { margin-top: 30px !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */ }
}

/* Slider dei loghi */
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(calc(-5250px));
    transform: translateX(calc(-5250px));
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(calc(-5250px));
    transform: translateX(calc(-5250px));
  }
}
.not-intro-page #usersite-container .slider {
  height: 100px;
  overflow: hidden;
  position: relative;
  width: auto;
  margin-left: -200px;
  margin-right: -200px;
}
.not-intro-page #usersite-container .slider::before,
.not-intro-page #usersite-container .slider::after {
  background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0) 100%);
  content: "";
  height: 100px;
  position: absolute;
  width: 200px;
  z-index: 2;
}
.not-intro-page #usersite-container .slider::after {
  right: 0;
  top: 0;
  -webkit-transform: rotateZ(180deg);
  transform: rotateZ(180deg);
}
.not-intro-page #usersite-container .slider::before {
  left: 0;
  top: 0;
}
.not-intro-page #usersite-container .slider .slide-track {
  -webkit-animation: scroll 40s linear infinite;
  animation: scroll 40s linear infinite;
  display: flex;
  width: calc(7000px);
}
.not-intro-page #usersite-container .slider .slide {
  height: 100px;
  width: 250px;
}

/* Form */
#usersite-container form.simple_form textarea { font-size: 1em; min-height: 6em !important; /* batte: #usersite-container form.simple_form textarea (base Bandzoogle, application) */ }
#usersite-container form.simple_form .input label {
  align-items: center; display: flex; font-size: 1em; font-weight: 700; margin-bottom: 0 !important; /* batte: #usersite-container form.simple_form .input label (base Bandzoogle, application) */
}
#usersite-container section.custom_form_feature form { padding-top: 0 !important; /* batte: #usersite-container section.custom_form_feature form (base Bandzoogle, application) */ }

/* Pulsanti */
.semi-transparent-button3 {
  color: var(--av-color-text-light) !important; /* batte: #usersite-container a (base Bandzoogle, application) */
  font-family: var(--av-font-button);
  font-weight: bold;
  display: block;
  float:left;
  box-sizing: border-box;
  margin: 0 auto;
  padding: var(--av-space-button);
  font-size: 16px;
  width: 100%;
  max-width: 300px;
  background: var(--av-color-accent);
  border: 0px solid var(--av-color-accent);
  border-radius: 40px;
  text-align: center;
  text-decoration: none;
  letter-spacing: 1px;
  transition: all 0.3s ease-out;
  box-shadow: 1px 3px 5px rgba(255, 255, 255, 0.5);
}
.semi-transparent-button3:hover,
.semi-transparent-button3:focus,
.semi-transparent-button3:active {
  font-family: var(--av-font-button);
  font-weight: bold;
  text-decoration: none !important; /* batte: .no-touchevents #usersite-container a:focus, .no-touchevents #usersite-container a:hover (base Bandzoogle, application) */
  background: var(--av-color-accent-active);
  color: var(--av-color-text-light);
  transition: all 0.5s ease-in;
}

.semi-transparent-button5 {
  color: var(--av-color-text-light) !important; /* batte: #usersite-container a (base Bandzoogle, application) */
  font-size: 14px;
  font-family: var(--av-font-button);
  font-weight: bold;
  display: block;
  float:left;
  box-sizing: border-box;
  margin: 0 auto;
  padding: var(--av-space-button);
  width: 100%;
  max-width: 275px;
  background: var(--av-color-accent);
  border-radius: 40px;
  text-align: center;
  text-decoration: none;
  letter-spacing: 1px;
  transition: all 0.3s ease-out;
  box-shadow: 1px 3px 5px rgba(250, 90, 48, 0.5);
}
.semi-transparent-button5:hover,
.semi-transparent-button5:focus,
.semi-transparent-button5:active {
  font-family: var(--av-font-button);
  font-weight: bold;
  text-decoration: none !important; /* batte: .no-touchevents #usersite-container a:focus, .no-touchevents #usersite-container a:hover (base Bandzoogle, application) */
  background: var(--av-color-accent-active);
  color: var(--av-color-text-light);
  transition: all 0.5s ease-in;
}

.button.button-multiline.button-large {
  background: var(--av-color-surface);
  font-family: Roboto, sans-serif;
  font-size: 18px !important; /* batte: #usersite-container .button (base Bandzoogle, application) */
  font-weight: 600 !important; /* batte: #usersite-container .button (base Bandzoogle, application) */
  font-style: normal;
  font-variation-settings:
     "wdth" 100;
}

.button.button-multiline.button-extra-large {
  background: var(--av-color-surface);
  font-family: Roboto, sans-serif;
  font-size: 18px !important; /* batte: #usersite-container .button (base Bandzoogle, application) */
  font-weight: 600 !important; /* batte: #usersite-container .button (base Bandzoogle, application) */
  font-style: normal;
}

/* Link bar */
#link_bar a { color: var(--av-color-text-light) !important; /* batte: #usersite-container a (base Bandzoogle, application) */ padding: var(--av-space-button); font-weight: bold; float: left; margin-right: 20px; }
#link_bar a:link { color:#d0d0d0; background-color:#aaaaaa; }
#link_bar a:visited { color:#c0c0c0; background-color:#aaaaaa; }
#link_bar a:hover { color:var(--av-color-text-light) !important; /* batte: #usersite-container .text-main a, #usersite-container a:not(.btn-wiz), #usersite-container h1 a, #usersite-container h2 a, #usersite-container h3 a, #usersite-container h4 a, #usersite-container h5 a (tema Zenith) */ background-color:var(--av-color-accent); }
#link_bar a:active { color:#f0f0f0; background-color:var(--av-color-accent); }

/* Blog */
article.post.blog-article.single-item.post-single {
  margin-top: 50px !important; /* batte: #usersite-container .blog_feature article (base Bandzoogle, application) */
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
}
.meta.text-tertiary.alt-font {
  font-weight: 700 !important; /* batte: #usersite-container .alt-font (tema Zenith) */
  font-size: 20px !important; /* batte: #usersite-container .alt-font (tema Zenith) */
}
.heading-blog.text-main.alt-font {
  font-weight: 700 !important; /* batte: #usersite-container .alt-font (tema Zenith) */
  font-size: 20px !important; /* batte: #usersite-container .alt-font (tema Zenith) */
  color: #000000 !important; /* batte: #usersite-container .text-main, #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5 (tema Zenith) */
}
/* Titolo solo nella pagina dell'articolo singolo */
.post.blog-article.single-item.post-single .heading-blog.text-main.alt-font {
  font-family: "Raleway", sans-serif !important; /* batte: #usersite-container .alt-font (tema Zenith) */
  font-size: 36px !important; /* batte: .heading-blog.text-main.alt-font (foglio unico) */
  font-weight: 900 !important; /* batte: .heading-blog.text-main.alt-font (foglio unico) */
  line-height: 1.2 !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */
  color: #000000 !important; /* batte: #usersite-container .text-main, #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5 (tema Zenith) */
  text-align: center;
  margin-left: auto !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */
  margin-right: auto !important; /* batte: #usersite-container h1, #usersite-container h2, #usersite-container h3, #usersite-container h4, #usersite-container h5, #usersite-container h6, #usersite-container hgroup (base Bandzoogle, application) */
}

.not-intro-page #usersite-container .pagination {
  display: inline-block;
  border-top: 0px;
}
.not-intro-page #usersite-container .pagination a {
  color: black;
  float: left;
  padding: 8px 16px;
  text-decoration: none;
  transition: background-color 0.3s;
  border: 1px solid #ddd;
  margin: 0 4px;
}
.not-intro-page #usersite-container .pagination a.active {
  background-color: var(--av-color-accent-active);
  color: var(--av-color-text-light);
  border: 1px solid var(--av-color-accent-active);
}
.not-intro-page #usersite-container .pagination a:hover:not(.active) {
  background-color: #ddd;
}

/* Video: il poster resta visibile anche alla fine */
.video-js.vjs-ended .vjs-poster {
  display: block;
}


/* == 5. Componenti av-* == */

#usersite-container:has(.av-hero) {
  background: #0d0b09 !important; /* batte: .not-intro-page #usersite-container, body (tema Zenith) */
}
body:has(.av-hero) {
  background: #0d0b09;
}


/* == 6. Home == */

/* Video e loghi: versione desktop o mobile */
@media only screen and (max-width: 600px) {
  #videoist_desk, #videoist_desk2 { display: none !important; /* batte: #videoist_desk, #videoist_desk2 (foglio unico) */ }
  #videoist_mob,  #videoist_mob2  { display: block !important; /* batte: #videoist_mob, #videoist_mob2 (foglio unico) */ }

  .flex-box { flex: 1 0 100px; margin: 0; background-color: var(--av-color-surface); padding-bottom: 10px; justify-content: center; }
  .logogcpw { width: 300px !important; /* batte: .logogcpw (foglio unico) */ }
}

@media only screen and (min-width: 600px) {
  #videoist_mob, #videoist_mob2 { display: none !important; /* batte: #videoist_mob, #videoist_mob2 (foglio unico) */ }
  #videoist_desk, #videoist_desk2 { display: flex !important; /* batte: #videoist_desk, #videoist_desk2 (foglio unico) */ }

  .flex-box { flex: 1 0 100px; margin: 10px; background-color: var(--av-color-surface); padding: 3px; justify-content: center; }
  .logogcpw { width: 350px !important; /* batte: .logogcpw (foglio unico) */ }
}

@media (max-width: 800px) {
  .not-intro-page #usersite-container .flex-container {
    flex-direction: column;
  }
}
@media (min-width: 801px) {
  .not-intro-page #usersite-container .flex-container {
    flex-direction: row;
  }
}

/* Sezioni video, home ENG e ITA */
#feature_row_20590492 { background: linear-gradient(#57413a, var(--av-color-bg-light)) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }
#feature_row_23663425 { background: linear-gradient(#57413a, var(--av-color-bg-light)) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }
/* Sezioni Contact Form, home ENG e ITA */
#feature_row_20590567 { background-color: var(--av-color-bg-light) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }
#feature_row_23663426 { background-color: var(--av-color-bg-light) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }
/* Sezioni Testimonials, home ENG e ITA */
#feature_row_20590590 { background-color: var(--av-color-bg-light) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }
#feature_row_23663427 { background-color: var(--av-color-bg-light) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }

#feature_row_24829809,
#feature_row_23663418,
#feature_row_20590429,
#feature_row_20589522,
#feature_row_23663424 { background: linear-gradient(to right, #6f3c30, #131313) !important; /* batte: .not-intro-page #usersite-container [class*="section-style"]:not(.has-section-styles), .not-intro-page #usersite-container .style-section-style-1.tier-card (tema Zenith) */ }


/* == 7. Footer e newsletter == */

#footer-wrap #site-wide-footer .site-wrap { max-width: 1300px !important; /* batte: .not-intro-page #usersite-container .site-wrap (foglio unico) */ }
#feature_row_15354303 { padding: 0px; }        /* riga del site-wide header */
#feature_row_15354301 { padding-bottom: 30px; } /* riga del footer */
#site-terms { padding: 0px; }
#site-wide-footer { padding: 0px; }

/* Newsletter (prima nel CSS del Site-wide footer) */
.bz-newsletter-custom {
  width: 100%;
  padding: 0 20px 40px 20px;
  text-align: center;
  border-radius: 12px;
  font-family: inherit;
}

.nl-header h2 {
  font-family: inherit;
  color: var(--av-color-text-light);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 25px;
  font-size: 1.1rem;
  line-height: 1.3;
}

.nl-form-wrapper {
  max-width: 550px;
  margin: 0 auto;
}

.nl-input-row {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.nl-input-group {
  flex: 1;
  position: relative;
}

.nl-visually-hidden {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.nl-input-row input[type="email"] {
  width: 100%;
  padding: 12px 20px;
  border: 2px solid transparent;
  border-radius: 999px;
  font-family: inherit;
  font-size: 0.9rem;
  outline: none;
  background: var(--av-color-surface);
  color: #1A1A2E;
  transition: all 0.2s ease;
}

.nl-input-row input[type="email"]:focus {
  box-shadow: 0 0 0 3px rgba(232, 98, 26, 0.3);
}

.nl-submit-btn {
  padding: 12px 25px;
  background-color: #E8621A;
  color: var(--av-color-text-light);
  border: none;
  border-radius: 999px;
  font-family: inherit;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.85rem;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: all 0.2s ease;
  min-width: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nl-submit-btn:hover { background-color: #c94f0f; }
.nl-submit-btn:focus-visible { outline: 2px solid #ffffff; outline-offset: 2px; }
.nl-submit-btn:disabled { opacity: 0.75; cursor: default; }

.nl-error {
  display: none;
  font-size: 0.75rem;
  color: #ffb3a1;
  margin-top: 4px;
  text-align: left;
  padding-left: 15px;
}

.nl-status {
  margin-top: 15px;
  padding: 10px;
  border-radius: 20px;
  font-size: 0.85rem;
}

.nl-success   { color: #81c784; background: rgba(255,255,255,0.05); border: 1px solid #81c784; }
.nl-error-box { color: #ffb3a1; background: rgba(255,255,255,0.05); border: 1px solid #e05a3a; }

.nl-spinner {
  width: 14px;
  height: 14px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: nl-spin 0.8s linear infinite;
  display: none;
}

@keyframes nl-spin { to { transform: rotate(360deg); } }
.loading .nl-spinner { display: block; }
.loading .nl-btn-label { display: none; }

@media (prefers-reduced-motion: reduce) {
  .nl-spinner { animation-duration: 2s; }
  .nl-submit-btn, .nl-input-row input[type="email"] { transition: none; }
}

@media (max-width: 550px) {
  .nl-input-row { flex-direction: column; }
  .nl-submit-btn { width: 100%; }
}
