/*
Theme Name: Pizza Lampo Venezia
Theme URI: https://pizzalampovenezia.it
Author: Pizza Lampo Venezia
Description: Plugin su misura per Pizza Lampo Venezia — pizzeria al taglio, takeaway e delivery a Lido di Venezia. Design dark mode moderno ispirato ai colori del logo.
Version: 2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pizzalampo
*/

/* ==========================================================================
   TOKEN DI DESIGN — DARK MODE
   ========================================================================== */
:root{
  --fondo: #120E0B;
  --fondo-2: #1B140F;
  --superficie: #211A13;
  --superficie-2: #2A2118;
  --bordo: rgba(255,255,255,.10);
  --bordo-forte: rgba(255,255,255,.18);
  --rosso: #FF4B36;
  --rosso-scuro: #E23A22;
  --verde: #4CAF64;
  --verde-scuro: #357347;
  --verde-acceso: #22C55E;
  --verde-acceso-scuro: #16A34A;
  --oro: #F5B942;
  --oro-scuro: #D89A24;
  --testo: #F3ECDF;
  --testo-muto: #B7AC99;
  --bianco: #FFFFFF;
  --ombra: 0 12px 30px rgba(0,0,0,.55);
  --glow-rosso: 0 0 0 1px rgba(255,75,54,.35), 0 10px 26px rgba(255,75,54,.28);
  --glow-oro: 0 0 0 1px rgba(245,185,66,.35), 0 10px 26px rgba(245,185,66,.22);
  --radius: 12px;
  --font-display: 'Anton', 'Arial Narrow', sans-serif;
  --font-body: 'Nunito Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --max-width: 1180px;
}

/* ==========================================================================
   RESET DI BASE
   ========================================================================== */
*, *::before, *::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  font-family: var(--font-body);
  color: var(--testo);
  background: var(--fondo);
  line-height: 1.6;
  font-size: 17px;
  -webkit-font-smoothing: antialiased;
}
img{ max-width:100%; display:block; }
a{ color: inherit; text-decoration:none; }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3,h4{ font-family: var(--font-display); font-weight:400; letter-spacing:.3px; line-height:1.1; margin:0 0 .5em; color: var(--testo); }
h1{ font-size: clamp(2.4rem, 5vw, 4rem); }
h2{ font-size: clamp(1.8rem, 4vw, 2.6rem); }
h3{ font-size: 1.4rem; }
p{ margin:0 0 1em; max-width: 62ch; color: var(--testo-muto); }
.container{ max-width: var(--max-width); margin:0 auto; padding:0 24px; }
:focus-visible{ outline: 3px solid var(--oro); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce){ *{ animation:none !important; transition:none !important; scroll-behavior:auto !important; } }

/* ==========================================================================
   BOTTONI
   ========================================================================== */
.btn{
  display:inline-flex; align-items:center; gap:.5em;
  font-family: var(--font-display); letter-spacing:.4px; font-size:1.05rem;
  padding: .85em 1.6em; border-radius: var(--radius);
  border: 2px solid transparent; cursor:pointer; transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.btn:hover{ transform: translateY(-2px); }
.btn-primario{ background: linear-gradient(135deg, var(--rosso) 0%, var(--rosso-scuro) 100%); color: var(--bianco); box-shadow: var(--glow-rosso); }
.btn-primario:hover{ box-shadow: 0 0 0 1px rgba(255,75,54,.5), 0 14px 34px rgba(255,75,54,.4); }
.btn-secondario{ background: transparent; color: var(--testo); border-color: var(--bordo-forte); }
.btn-secondario:hover{ background: var(--oro); color: var(--fondo); border-color: var(--oro); }
.btn-verde{ background: var(--verde-acceso); color:#fff; box-shadow: 0 0 0 1px rgba(34,197,94,.45), 0 10px 26px rgba(34,197,94,.4); }
.btn-verde:hover{ background: var(--verde-acceso-scuro); box-shadow: 0 0 0 1px rgba(34,197,94,.6), 0 14px 34px rgba(34,197,94,.5); }
.btn-outline-scuro{ background:transparent; border-color: var(--bordo-forte); color: var(--testo); }
.btn-outline-scuro:hover{ background: var(--superficie-2); border-color: var(--oro); }

/* ==========================================================================
   HEADER
   ========================================================================== */
.site-header{
  position: sticky; top:0; z-index: 500;
  background: rgba(18,14,11,.88);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--bordo);
}
.header-inner{ display:flex; align-items:center; justify-content:space-between; padding: 10px 24px; max-width: var(--max-width); margin:0 auto; }
.site-logo{ display:flex; align-items:center; gap:12px; }
.site-logo img.logo-orizzontale{ height:58px; width:auto; border-radius:6px; }
.nav-principale ul{ display:flex; gap: 6px; align-items:center; }
.nav-principale a{
  font-family: var(--font-display); font-size:1rem; letter-spacing:.4px;
  padding: 10px 14px; border-radius: var(--radius); color: var(--testo-muto);
}
.nav-principale a:hover, .nav-principale .current-menu-item a{ background: var(--superficie-2); color: var(--oro); }
.nav-chiuso-badge{
  background: var(--rosso); color:#fff; font-family: var(--font-display);
  font-size:.85rem; padding:4px 10px; border-radius: 20px; margin-left:8px; white-space:nowrap;
}
.menu-toggle{
  display:none; background:none; border:none; cursor:pointer; padding:8px;
}
.menu-toggle span{ display:block; width:26px; height:3px; background:var(--testo); margin:5px 0; border-radius:2px; }

@media (max-width: 880px){
  .menu-toggle{ display:block; }
  .nav-principale{
    position:absolute; top:100%; left:0; right:0; background: var(--fondo-2);
    border-bottom: 1px solid var(--bordo);
    display:none;
  }
  .nav-principale.aperto{ display:block; }
  .nav-principale ul{ flex-direction:column; padding: 10px 24px 20px; align-items:stretch; }
  .nav-principale a{ display:block; padding:12px 6px; }
  .site-logo img.logo-orizzontale{ height:38px; }
}

/* ==========================================================================
   STRISCIA INFO (social / no ordini online)
   ========================================================================== */
.striscia-info{
  background: var(--fondo-2); color: var(--testo-muto);
  font-size:.9rem; text-align:center; padding: 8px 16px;
  border-bottom: 1px solid var(--bordo);
}
.striscia-info a{ color: var(--oro); font-weight:700; text-decoration: underline; text-underline-offset:3px; }

/* ==========================================================================
   HERO (Home)
   ========================================================================== */
.hero{
  background:
    radial-gradient(ellipse 700px 420px at 78% 15%, rgba(255,75,54,.18), transparent 60%),
    radial-gradient(ellipse 600px 400px at 10% 90%, rgba(245,185,66,.10), transparent 60%),
    var(--fondo-2);
  color: var(--testo);
  position:relative;
  overflow:hidden;
}
.hero-inner{
  max-width: var(--max-width); margin:0 auto; padding: 70px 24px 90px;
  display:grid; grid-template-columns: 1.1fr .9fr; gap:40px; align-items:center;
  position:relative; z-index:2;
}
.hero-testo h1{ color: var(--testo); }
.hero-testo p.tagline{ font-size:1.2rem; max-width: 46ch; color: var(--testo-muto); }
.hero-azioni{ display:flex; gap:14px; flex-wrap:wrap; margin-top: 1.6em; }
.hero-img{ position:relative; }
.hero-img img{ width:100%; max-width:420px; margin:0 auto; filter: drop-shadow(0 20px 40px rgba(0,0,0,.6)); border-radius:50%; }
.hero-eyebrow{
  display:inline-block; background: rgba(255,75,54,.15); color: var(--rosso); font-family: var(--font-display);
  font-size:.85rem; padding:6px 14px; border-radius:20px; margin-bottom:16px; letter-spacing:.5px;
  border:1px solid rgba(255,75,54,.4);
}
@media (max-width: 780px){
  .hero-inner{ grid-template-columns:1fr; text-align:center; padding: 46px 24px 60px; }
  .hero-azioni{ justify-content:center; }
  .hero-img img{ max-width:260px; }
}

/* ==========================================================================
   INFO STRIP (orari / indirizzo / chiusura)
   ========================================================================== */
.info-strip{
  background: var(--superficie); border-bottom:1px solid var(--bordo);
}
.info-strip .container{
  display:flex; flex-wrap:wrap; gap: 20px 40px; padding: 18px 24px; justify-content:center;
}
.info-item{ display:flex; align-items:center; gap:10px; font-size:.98rem; color: var(--testo-muto); }
.info-item .ico{ font-size:1.3rem; line-height:1; }
.info-item strong{ color: var(--oro); }

/* ==========================================================================
   SEZIONI GENERICHE
   ========================================================================== */
.sezione{ padding: 70px 0; }
.sezione-alt{ background: var(--superficie); }
.sezione-intestazione{ text-align:center; max-width: 640px; margin: 0 auto 46px; }
.sezione-intestazione p{ margin:0 auto; }

/* Griglia categorie home */
.griglia-categorie{ display:grid; grid-template-columns: repeat(auto-fit, minmax(200px,1fr)); gap: 22px; max-width:980px; margin:0 auto; }
.tessera-categoria{
  background: linear-gradient(160deg, var(--superficie-2) 0%, var(--superficie) 100%);
  border: 1px solid var(--bordo-forte); border-top: 4px solid var(--oro); border-radius: var(--radius);
  padding: 32px 22px; text-align:center; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px;
}
.tessera-categoria:hover{ transform: translateY(-4px); box-shadow: var(--glow-rosso); border-color: rgba(255,75,54,.5); }
.tessera-categoria.tessera-bibite{ border-top-color: var(--verde); }
.tessera-categoria.tessera-pizze{ border-top-color: var(--rosso); }
.tessera-categoria.tessera-fritti{ border-top-color: var(--oro); }
.tessera-categoria .emoji{ font-size:2.6rem; line-height:1; }
.tessera-categoria h3{ margin:0; }

/* Perche sceglierci */
.griglia-motivi{ display:grid; grid-template-columns: repeat(auto-fit, minmax(220px,1fr)); gap: 30px; }
.motivo{ text-align:center; }
.motivo .ico{ font-size:2.2rem; display:inline-block; background:var(--superficie); border:1px solid var(--bordo); border-radius:50%; width:72px; height:72px; line-height:72px; box-shadow: var(--ombra); margin-bottom:14px; }

/* Banner app in arrivo / social */
.banner-app{
  background: linear-gradient(135deg, var(--rosso) 0%, var(--rosso-scuro) 100%);
  color:#fff; border-radius: var(--radius); padding: 40px; text-align:center;
  box-shadow: var(--glow-rosso);
}
.banner-app h2{ color:#fff; }
.banner-app p{ margin:0 auto 1.5em; max-width:60ch; }
.banner-app .social-link-grande{
  display:inline-flex; align-items:center; gap:10px; background: rgba(255,255,255,.15);
  border: 2px solid rgba(255,255,255,.6); padding: .8em 1.5em; border-radius: 30px; margin: 6px;
  font-family: var(--font-display); letter-spacing:.3px; color:#fff;
}
.banner-app .social-link-grande:hover{ background:#fff; color: var(--rosso-scuro); }

/* ==========================================================================
   POPUP HOME
   ========================================================================== */
.pl-popup-overlay{
  position: fixed; inset:0; background: rgba(0,0,0,.75);
  display:flex; align-items:center; justify-content:center; z-index: 9999;
  opacity:0; visibility:hidden; transition: opacity .25s ease;
  padding: 20px;
}
.pl-popup-overlay.attivo{ opacity:1; visibility:visible; }
.pl-popup-box{
  background: var(--superficie); border-radius: var(--radius); max-width: 460px; width:100%;
  padding: 36px 30px 30px; position:relative; box-shadow: 0 24px 60px rgba(0,0,0,.6);
  border-top: 4px solid var(--rosso); border-left:1px solid var(--bordo); border-right:1px solid var(--bordo); border-bottom:1px solid var(--bordo);
  transform: translateY(14px); transition: transform .25s ease;
}
.pl-popup-overlay.attivo .pl-popup-box{ transform: translateY(0); }
.pl-popup-box h3{ color: var(--oro); margin-bottom:.4em; }
.pl-popup-box.con-immagine{ display:flex; flex-direction:column; gap:0; padding:0; overflow:hidden; max-width:480px; text-align:center; }
.pl-popup-img{ width:100%; aspect-ratio:16/9; }
.pl-popup-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.pl-popup-testo{ padding: 30px 28px; flex:1; text-align:center; }
.pl-popup-box.con-immagine .pl-popup-chiudi{ background: rgba(0,0,0,.5); border-radius:50%; width:32px; height:32px; display:flex; align-items:center; justify-content:center; top:12px; right:12px; color:#fff; z-index:2; }
.pl-popup-etichetta{
  display:block; background:none; color: var(--oro); font-family: var(--font-display);
  font-size: clamp(1.6rem, 4vw, 2.2rem); padding:0; margin-bottom:10px; letter-spacing:.4px;
  border:none; line-height:1.1;
}
.pl-popup-chiudi{
  position:absolute; top:10px; right:14px; background:none; border:none; font-size:1.6rem;
  cursor:pointer; color: var(--testo-muto); line-height:1;
}
.pl-popup-contenuto{ font-size:1rem; color: var(--testo); }
.pl-popup-contenuto p{ color:inherit; max-width:none; margin:0 0 .8em; }
.pl-popup-contenuto p:last-child{ margin-bottom:0; }
.pl-popup-contenuto img{ max-width:100%; border-radius:8px; margin:10px 0; }

/* ==========================================================================
   PAGINA MENU
   ========================================================================== */
.pagina-menu-intestazione{ background: var(--fondo-2); color: var(--testo); padding: 50px 0 40px; text-align:center; border-bottom:1px solid var(--bordo); }
.pagina-menu-intestazione h1{ color:var(--testo); }
.pagina-menu-intestazione p{ margin:0 auto; }

.banner-menu{
  max-width: 900px; margin: -26px auto 40px; position:relative; z-index:5;
  background: var(--oro); border-radius: var(--radius); box-shadow: var(--glow-oro);
  padding: 22px 26px; text-align:center; color: var(--fondo);
  border: 2px solid var(--oro-scuro);
}
.banner-menu.con-immagine{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:18px; }
.banner-menu-img{ flex-shrink:0; width:100%; max-width:420px; aspect-ratio:2/1; border-radius: var(--radius); overflow:hidden; margin:0 auto; }
.banner-menu-img img{ width:100%; height:100%; object-fit:cover; }
.banner-menu-testo-blocco{ flex:1; text-align:center; }
.banner-menu .etichetta{
  display:block; font-family: var(--font-display); color: var(--rosso-scuro);
  font-size: clamp(1.8rem, 4.5vw, 2.6rem); letter-spacing:.5px; margin-bottom:10px; line-height:1.1;
}
.banner-menu-titolo{
  display:block; font-family: var(--font-display); font-size: clamp(1.4rem, 3vw, 2rem);
  letter-spacing:.3px; line-height:1.15;
}
.banner-menu-testo{ display:block; font-size:.95rem; margin-top:6px; color: rgba(18,14,11,.75); text-align:center; }
.banner-menu-testo p{ margin:0 0 .5em; max-width:none; color:inherit; }
.banner-menu-testo p:last-child{ margin-bottom:0; }
.banner-menu-testo img{ max-width:100%; border-radius:8px; margin:10px 0; }

.nav-categorie{
  display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin: 10px 0 50px;
  position: sticky; top: 74px; background: rgba(18,14,11,.92); backdrop-filter: blur(8px);
  padding: 12px 0; z-index:100;
}
.nav-categorie a{
  border:1px solid var(--bordo-forte); border-radius: 30px; padding: 8px 18px; font-size:.92rem;
  font-family: var(--font-display); letter-spacing:.3px; color: var(--testo-muto);
  text-transform: uppercase;
}
.nav-categorie a:hover{ background: var(--rosso); border-color: var(--rosso); color:#fff; }

.categoria-menu{ margin-bottom: 60px; scroll-margin-top: 150px; }
.categoria-titolo{
  display:flex; align-items:center; gap:16px; margin-bottom: 24px;
}
.categoria-titolo h2{ margin:0; white-space:nowrap; color: var(--oro); }
.categoria-titolo::after{ content:""; flex:1; border-bottom: 1px dotted var(--bordo-forte); }

.lista-piatti{ display:flex; flex-direction:column; gap: 22px; }
.piatto{ display:flex; align-items:flex-start; gap:18px; }
.piatto-foto{ width:78px; height:78px; border-radius: var(--radius); object-fit:cover; flex-shrink:0; border:1px solid var(--bordo); }
.piatto-foto-placeholder{
  width:78px; height:78px; border-radius: var(--radius); flex-shrink:0; background: var(--superficie);
  display:flex; align-items:center; justify-content:center; font-size:1.6rem; border:1px solid var(--oro);
}
.piatto-corpo{ flex:1; }
.piatto-riga{ display:flex; align-items:baseline; gap:8px; }
.piatto-nome{ font-weight:800; color: var(--testo); font-size:1.08rem; }
.piatto-riga::after{ content:""; flex:1; border-bottom: 1px dotted var(--bordo-forte); transform: translateY(-3px); }
.piatto-prezzo{ font-family: var(--font-display); color: var(--oro); font-size:1.08rem; white-space:nowrap; }
.piatto-prezzo-doppio{ display:flex; align-items:baseline; gap:6px; white-space:nowrap; }
.piatto-prezzo-doppio .piatto-prezzo{ font-size:.98rem; }
.piatto-prezzo-etichetta{ font-size:.72rem; text-transform:uppercase; letter-spacing:.4px; color: var(--testo-muto); }
.piatto-prezzo-sep{ color: var(--testo-muto); }
.piatto-desc{ font-size:.92rem; color: var(--testo-muto); margin: 4px 0 0; }
.badge-novita{
  background: var(--rosso); color:#fff; font-size:.7rem; font-family: var(--font-display);
  padding:2px 8px; border-radius:10px; margin-left:8px; vertical-align: middle;
}
.note-menu{
  max-width: 900px; margin: 10px auto 60px; background: var(--superficie); border-left: 3px solid var(--verde);
  border-radius: var(--radius); padding: 20px 26px; font-size:.92rem; color: var(--testo-muto);
  border-top:1px solid var(--bordo); border-right:1px solid var(--bordo); border-bottom:1px solid var(--bordo);
  text-align:center;
}

/* ==========================================================================
   PAGINA CHI SIAMO / CONTATTI
   ========================================================================== */
.pagina-intestazione{ background: var(--fondo-2); color: var(--testo); padding: 56px 0; text-align:center; border-bottom:1px solid var(--bordo); }
.pagina-intestazione h1{ color: var(--testo); }
.pagina-intestazione p{ margin:0 auto; }
.contenuto-standard{ padding: 60px 0; }
.blocco-due-colonne{ display:grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items:center; }
@media (max-width:780px){ .blocco-due-colonne{ grid-template-columns:1fr; } }
.blocco-due-colonne img{ border-radius: var(--radius); box-shadow: var(--ombra); }

.griglia-valori{ display:grid; grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); gap:26px; margin-top: 40px; }
.valore-card{ background: var(--superficie); border:1px solid var(--bordo); border-radius: var(--radius); padding:26px; text-align:center; box-shadow: var(--ombra); }
.valore-card .ico{ font-size:2rem; margin-bottom:10px; display:block; }
.valore-card p{ color: var(--testo-muto); }

.griglia-contatti{ display:grid; grid-template-columns: 1fr 1fr; gap: 44px; }
@media (max-width:780px){ .griglia-contatti{ grid-template-columns:1fr; } }

/* Consegne */
.griglia-consegne{ display:grid; grid-template-columns: 1fr 1fr; gap: 30px; }
@media (max-width:780px){ .griglia-consegne{ grid-template-columns:1fr; } }
.scheda-consegna{ background: var(--superficie); border:1px solid var(--bordo); border-radius: var(--radius); padding: 30px; text-align:center; box-shadow: var(--ombra); }
.scheda-consegna h3{ color: var(--oro); margin-bottom:18px; }
.fasce-orarie{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
.fascia-oraria{
  display:inline-block; background: var(--superficie-2); border:1px solid var(--bordo-forte);
  color: var(--testo); font-family: var(--font-display); letter-spacing:.3px;
  padding: 8px 16px; border-radius: 30px; font-size:.95rem;
}
.consegne-disattive{ color: var(--rosso); font-style:italic; margin:0; }
.scheda-contatto{ background: var(--superficie); border:1px solid var(--bordo); border-radius: var(--radius); padding: 30px; box-shadow: var(--ombra); }
.scheda-contatto h3{ margin-bottom:.6em; color: var(--oro); }
.riga-contatto{ display:flex; gap:12px; padding: 10px 0; border-bottom:1px solid var(--bordo); color: var(--testo); }
.riga-contatto:last-child{ border-bottom:none; }
.riga-contatto .ico{ font-size:1.3rem; }
.tabella-orari{ width:100%; border-collapse:collapse; }
.tabella-orari td{ padding:8px 4px; border-bottom:1px solid var(--bordo); font-size:.95rem; color: var(--testo); }
.tabella-orari td:first-child{ font-weight:700; }
.tabella-orari tr.giorno-chiuso td{ color: var(--rosso); font-style:italic; }
.mappa-embed{ border-radius: var(--radius); overflow:hidden; box-shadow: var(--ombra); border:1px solid var(--bordo); width:100%; min-height:320px; filter: grayscale(.2) invert(.92) hue-rotate(180deg) contrast(.9); }
.social-riga{ display:flex; gap:14px; margin-top: 18px; }
.social-riga a{ background: var(--superficie-2); border:1px solid var(--bordo-forte); color:var(--testo); width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.3rem; }
.social-riga a:hover{ background: var(--rosso); border-color: var(--rosso); color:#fff; }

/* ==========================================================================
   FOOTER
   ========================================================================== */
.site-footer{ background: var(--fondo-2); color: var(--testo-muto); padding: 56px 0 26px; border-top:1px solid var(--bordo); }
.footer-grid{ display:grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 40px; margin-bottom: 40px; }
@media (max-width:780px){ .footer-grid{ grid-template-columns:1fr; text-align:center; } }
.site-footer h4{ color: var(--oro); font-family: var(--font-display); font-size:1.1rem; margin-bottom: .8em; letter-spacing:.4px; }
.footer-grid img{ height:52px; margin-bottom:14px; border-radius:8px; }
@media (max-width:780px){ .footer-grid img{ margin-left:auto; margin-right:auto; } }
.footer-grid p{ color: var(--testo-muto); font-size:.92rem; }
.footer-social{ display:flex; gap:12px; margin-top:14px; }
@media (max-width:780px){ .footer-social{ justify-content:center; } }
.footer-social a{ background: var(--superficie-2); border:1px solid var(--bordo-forte); color:var(--testo); width:42px; height:42px; border-radius:50%; display:flex; align-items:center; justify-content:center; }
.footer-social a:hover{ background: var(--rosso); border-color: var(--rosso); color:#fff; }
.footer-orari td{ padding:4px 0; font-size:.9rem; border:none; color: var(--testo-muto); }
.footer-orari tr.giorno-chiuso td{ color: var(--oro); }
.footer-bottom{ text-align:center; border-top:1px solid var(--bordo); padding-top: 22px; font-size:.85rem; color: var(--testo-muto); }
.footer-bottom a{ text-decoration: underline; color: var(--oro); }

/* ==========================================================================
   TASTO "CHIAMA ORA" FISSO (solo mobile)
   ========================================================================== */
.pl-chiama-fisso{
  display:none;
  position: fixed; bottom: 18px; right: 18px; z-index: 800;
  align-items:center; justify-content:center;
  width:60px; height:60px; border-radius:50%;
  background: var(--verde-acceso); color:#fff;
  box-shadow: 0 0 0 1px rgba(34,197,94,.45), 0 10px 26px rgba(0,0,0,.5);
}
.pl-chiama-fisso:active{ background: var(--verde-acceso-scuro); }
.pl-chiama-ico{ font-size:1.7rem; line-height:1; }
.pl-chiama-testo{ display:none; }
@media (max-width: 880px){
  .pl-chiama-fisso{ display:inline-flex; }
}

/* ==========================================================================
   UTILITY
   ========================================================================== */
.solo-schermo-lettore{ position:absolute !important; width:1px;height:1px; overflow:hidden; clip:rect(0,0,0,0); }
