/* Popup «Lascia la tua email: 10%» (home plugin 1.1.0, 09/11/2026; scudo contro il tema 1.1.1). Gira anche fuori dalla home, sopra il tema
   Elementor: per questo ogni regola ha il prefisso .dhcp e non usa le variabili della home. Colori e font del sito:
   arancio #F39A12, quasi nero #12171B, Rufina (titoli) e Poppins (testo). Da telefono sale dal basso e non copre lo
   schermo intero (Google penalizza le finestre a tutto schermo); il modulo, quando lo si chiede, prende più spazio. */
.dhcp {
  box-sizing: border-box; position: fixed; z-index: 2147483640;   /* sopra la chat di Amy */
  right: 24px; bottom: 84px;   /* a destra: a sinistra coprirebbe «Ordina ora»; più su del pulsante «Chiedi ad Amy» */
  width: min(392px, calc(100vw - 48px)); max-height: calc(100dvh - 108px); overflow: auto;
  padding: 22px 22px 18px; border-radius: 18px;
  background: #12171B; color: rgba(255, 255, 255, .88);
  box-shadow: 0 24px 60px -12px rgba(0, 0, 0, .55); border: 1px solid rgba(255, 255, 255, .1);
  font: 400 15px/1.5 "Poppins", system-ui, -apple-system, sans-serif; text-align: left;
  opacity: 0; transform: translateY(16px); transition: opacity .3s cubic-bezier(.22, .8, .24, 1), transform .3s cubic-bezier(.22, .8, .24, 1);
}
.dhcp.dhcp-visibile { opacity: 1; transform: none; }
.dhcp[hidden] { display: none; }
.dhcp *, .dhcp *::before, .dhcp *::after { box-sizing: border-box; }
.dhcp p { margin: 0; }
.dhcp button { font-family: inherit; cursor: pointer; }
.dhcp :focus-visible { outline: 3px solid #F39A12; outline-offset: 3px; border-radius: 8px; }

.dhcp-chiudi {
  position: absolute; top: 8px; right: 8px; width: 40px; height: 40px; border-radius: 50%;
  border: 0; background: transparent; color: rgba(255, 255, 255, .75); font-size: 26px; line-height: 1;
}
.dhcp-chiudi:hover { background: rgba(255, 255, 255, .1); color: #fff; }

.dhcp-testa { display: flex; gap: 16px; align-items: center; padding-right: 28px; }
.dhcp-bolla {
  flex: none; width: 92px; height: 92px; border-radius: 50%; background: #F39A12; color: #12171B;
  display: grid; place-content: center; text-align: center; transform: rotate(-6deg);
  box-shadow: 0 10px 30px -10px rgba(243, 154, 18, .8);
}
.dhcp-bolla b { font: 700 34px/1 "Poppins", system-ui, sans-serif; letter-spacing: -.02em; }
.dhcp-bolla span { font-size: 10.5px; font-weight: 600; line-height: 1.15; margin-top: 3px; padding: 0 10px; }
.dhcp-titolo {
  margin: 0; font: 700 28px/1.05 "Rufina", Georgia, serif; color: #fff; letter-spacing: -.01em; text-transform: none;
}
.dhcp-titolo em { font-style: normal; color: #F39A12; }
.dhcp-testo { margin-top: 6px !important; font-size: 14px; }
.dhcp-testo b, .dhcp-come b { color: #F39A12; font-weight: 600; }
.dhcp-come { margin-top: 14px !important; font-size: 13.5px; color: rgba(255, 255, 255, .78); }

.dhcp-azioni { display: flex; align-items: center; gap: 14px; margin-top: 16px; flex-wrap: wrap; }
.dhcp-si {
  min-height: 48px; padding: 12px 22px; border: 0; border-radius: 14px;
  background: #F39A12; color: #12171B; font-size: 16px; font-weight: 600;
  box-shadow: 0 10px 30px -12px rgba(243, 154, 18, .9); transition: background .2s, transform .2s;
}
.dhcp-si:hover { background: #FFAE2E; transform: translateY(-1px); }
.dhcp-no {
  min-height: 44px; padding: 8px 4px; border: 0; background: none; color: rgba(255, 255, 255, .7);
  font-size: 14px; text-decoration: underline; text-underline-offset: 3px;
}
.dhcp-no:hover { color: #fff; }
.dhcp-note { margin-top: 12px !important; font-size: 11.5px; color: rgba(255, 255, 255, .55); }

/* Passo 2: il modulo di Brevo (sfondo chiaro: è disegnato su Brevo). */
.dhcp.dhcp-modulo { width: min(480px, calc(100vw - 48px)); padding: 0; background: #fff; color: #12171B; bottom: 24px; max-height: calc(100dvh - 48px); }
.dhcp-modulo .dhcp-chiudi { color: #12171B; background: rgba(18, 23, 27, .06); z-index: 1; }
.dhcp-modulo .dhcp-chiudi:hover { background: rgba(18, 23, 27, .14); color: #12171B; }
.dhcp-passo2 iframe { display: block; width: 100%; height: 640px; border: 0; }
.dhcp-velo { position: fixed; inset: 0; z-index: 2147483639; background: rgba(10, 8, 6, .55); }
.dhcp-velo[hidden] { display: none; }
html.dhcp-bloccato { overflow: hidden; }
/* Il pulsantino «preferenze cookie» di Iubenda (in basso a sinistra, sopra a tutto) coprirebbe il popup: sparisce solo
   finché il popup è aperto, poi torna. */
body:has(.dhcp.dhcp-visibile) .iubenda-tp-btn { display: none !important; }

/* Scudo contro il tema (1.1.1, visto dal vivo il 09/11 su /menu/): il kit di Elementor dà a OGNI pulsante padding 15/25,
   arancio, maiuscolo e angoli 20px, e agli h2 blu scuro e «capitalize», con priorità più alta della nostra. Sulla home
   il tema non c'è, nelle altre pagine sì: qui si rimettono le nostre regole con !important. */
.dhcp.dhcp button { text-transform: none !important; letter-spacing: normal !important; text-shadow: none !important; margin: 0 !important; line-height: 1.2 !important; }
.dhcp.dhcp .dhcp-chiudi {
  width: 40px !important; height: 40px !important; min-height: 0 !important; padding: 0 !important; border-radius: 50% !important;
  background: transparent !important; color: rgba(255, 255, 255, .75) !important; font-size: 26px !important; line-height: 1 !important; box-shadow: none !important;
}
.dhcp.dhcp .dhcp-chiudi:hover, .dhcp.dhcp .dhcp-chiudi:focus { background: rgba(255, 255, 255, .1) !important; color: #fff !important; }
.dhcp.dhcp.dhcp-modulo .dhcp-chiudi { color: #12171B !important; background: rgba(18, 23, 27, .06) !important; }
.dhcp.dhcp.dhcp-modulo .dhcp-chiudi:hover, .dhcp.dhcp.dhcp-modulo .dhcp-chiudi:focus { background: rgba(18, 23, 27, .14) !important; color: #12171B !important; }
.dhcp.dhcp .dhcp-si {
  padding: 12px 22px !important; border-radius: 14px !important; border: 0 !important;
  background: #F39A12 !important; color: #12171B !important; font-size: 16px !important; font-weight: 600 !important;
}
.dhcp.dhcp .dhcp-si:hover, .dhcp.dhcp .dhcp-si:focus { background: #FFAE2E !important; color: #12171B !important; }
.dhcp.dhcp .dhcp-no {
  padding: 8px 4px !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  background: none !important; color: rgba(255, 255, 255, .7) !important; font-size: 14px !important; font-weight: 400 !important;
  text-decoration: underline !important;
}
.dhcp.dhcp .dhcp-no:hover, .dhcp.dhcp .dhcp-no:focus { background: none !important; color: #fff !important; }
.dhcp.dhcp .dhcp-titolo {
  color: #fff !important; text-transform: none !important; font: 700 28px/1.05 "Rufina", Georgia, serif !important;
  letter-spacing: -.01em !important; margin: 0 !important; padding: 0 !important;
}
.dhcp.dhcp .dhcp-titolo em { color: #F39A12 !important; font: inherit !important; }

/* Telefono: sale dal basso, largo quanto lo schermo. */
@media (max-width: 560px) {
  .dhcp, .dhcp.dhcp-modulo {
    left: 0; right: 0; bottom: 0; width: 100%; border-radius: 22px 22px 0 0; border-bottom: 0;
    padding: 20px 16px max(16px, env(safe-area-inset-bottom)); transform: translateY(100%);
  }
  .dhcp.dhcp-modulo { padding: 0 0 env(safe-area-inset-bottom); max-height: 92dvh; }
  .dhcp.dhcp-visibile { transform: none; }
  .dhcp-bolla { width: 80px; height: 80px; }
  .dhcp-bolla b { font-size: 29px; }
  .dhcp.dhcp .dhcp-titolo { font-size: 25px !important; }
  .dhcp-passo2 iframe { height: 720px; }
}
@media (prefers-reduced-motion: reduce) {
  .dhcp { transition: none; }
}
