/* Caratteri dei temi dei locali (Google Fonts, licenza OFL), solo la parte latina, serviti dal nostro sito */
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 500; font-display: swap; src: url(/static/lib/font/playfair-display-500i.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/playfair-display-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 800; font-display: swap; src: url(/static/lib/font/playfair-display-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/source-sans-3-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/source-sans-3-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Source Sans 3'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/source-sans-3-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Oswald'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/oswald-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Oswald'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/oswald-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/inter-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/inter-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/inter-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 500; font-display: swap; src: url(/static/lib/font/cormorant-garamond-500i.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/cormorant-garamond-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/cormorant-garamond-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Jost'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/jost-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Jost'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/jost-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Jost'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/jost-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Serif Display'; font-style: italic; font-weight: 400; font-display: swap; src: url(/static/lib/font/dm-serif-display-400i.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Serif Display'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/dm-serif-display-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/dm-sans-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/dm-sans-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/dm-sans-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/fraunces-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/fraunces-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/manrope-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/manrope-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/manrope-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Archivo Black'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/archivo-black-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/archivo-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/archivo-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 800; font-display: swap; src: url(/static/lib/font/archivo-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Shippori Mincho'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/shippori-mincho-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Shippori Mincho'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/shippori-mincho-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/zen-kaku-gothic-new-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/zen-kaku-gothic-new-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Zen Kaku Gothic New'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/zen-kaku-gothic-new-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Fredoka'; font-style: normal; font-weight: 500; font-display: swap; src: url(/static/lib/font/fredoka-500.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Fredoka'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/fredoka-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Fredoka'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/fredoka-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Nunito'; font-style: normal; font-weight: 400; font-display: swap; src: url(/static/lib/font/nunito-400.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Nunito'; font-style: normal; font-weight: 600; font-display: swap; src: url(/static/lib/font/nunito-600.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Nunito'; font-style: normal; font-weight: 700; font-display: swap; src: url(/static/lib/font/nunito-700.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Nunito'; font-style: normal; font-weight: 800; font-display: swap; src: url(/static/lib/font/nunito-800.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ===== Temi dei locali (app/temi.py, 12/11/2026) =====
   .tema-locale.t-<modello> sul <body> della scheda e del menu del QR (e sull'anteprima nell'area).
   I colori del locale arrivano da /tema/<id>-<firma>.css (--tema, --tema-accento, --tema-su-carta…);
   qui ogni modello mette caratteri, fondo, carte, forma dei pulsanti e decorazioni. Niente sfumature: solo
   motivi a tinta piena (quadri, righe, puntini). */
.t-trattoria { --t-fondo: #f6efe2; --t-carta: #fffaf0; --t-testo: #2b1d14; --t-tenue: #6b5444; --t-linea: #e2d4bc; --t-tenue-bg: #efe4d0;
  --t-font: 'Source Sans 3', system-ui, sans-serif; --t-font-titoli: 'Playfair Display', Georgia, serif; --t-peso-titoli: 800;
  --t-raggio: 6px; --t-raggio-p: 4px; --t-ombra: 0 1px 2px rgba(43, 29, 20, .06), 0 8px 22px rgba(43, 29, 20, .07); --t-bordo-blocco: 0;
  --t-bottone: var(--tema); --t-bottone-testo: var(--tema-testo); --t-striscia: var(--tema-accento);
  --t-motivo: repeating-linear-gradient(0deg, transparent 0 22px, rgba(255, 255, 255, .14) 22px 30px), repeating-linear-gradient(90deg, transparent 0 22px, rgba(255, 255, 255, .14) 22px 30px); }
.t-pizzeria { --t-fondo: #ffffff; --t-carta: #ffffff; --t-testo: #1a1a1a; --t-tenue: #5c5c5c; --t-linea: #e6e6e6; --t-tenue-bg: #f3f3f3;
  --t-font: Inter, system-ui, sans-serif; --t-font-titoli: Oswald, 'Arial Narrow', sans-serif; --t-peso-titoli: 700; --t-maiuscolo: uppercase;
  --t-raggio: 16px; --t-raggio-p: 12px; --t-ombra: none; --t-bordo-blocco: 1px solid #e6e6e6;
  --t-bottone: var(--tema-accento); --t-bottone-testo: var(--tema-accento-testo); --t-striscia: var(--tema-accento);
  --t-motivo: linear-gradient(90deg, #1f8a4c 33.33%, #ffffff 0 66.66%, #d32f2f 0); --t-motivo-misura: 100% 10px; --t-motivo-ripeti: no-repeat; }
.t-elegante { --t-fondo: #141210; --t-carta: #1c1916; --t-testo: #efe7d8; --t-tenue: #bfb3a0; --t-linea: #3a332a; --t-tenue-bg: #2a2520;
  --t-font: Jost, system-ui, sans-serif; --t-font-titoli: 'Cormorant Garamond', Georgia, serif; --t-peso-titoli: 700;
  --t-raggio: 0; --t-raggio-p: 0; --t-ombra: none; --t-bordo-blocco: 1px solid #3a332a;
  --t-bottone: var(--tema-accento); --t-bottone-testo: var(--tema-accento-testo); --t-striscia: var(--tema-accento); --t-motivo: none; }
.t-mare { --t-fondo: #f2f7f8; --t-carta: #ffffff; --t-testo: #0f2a3a; --t-tenue: #4c6675; --t-linea: #dbe8ec; --t-tenue-bg: #e3eef1;
  --t-font: 'DM Sans', system-ui, sans-serif; --t-font-titoli: 'DM Serif Display', Georgia, serif; --t-peso-titoli: 400;
  --t-raggio: 18px; --t-raggio-p: 10px; --t-ombra: 0 6px 20px rgba(11, 79, 113, .09); --t-bordo-blocco: 0;
  --t-bottone: var(--tema-accento); --t-bottone-testo: var(--tema-accento-testo); --t-striscia: var(--tema-accento);
  --t-motivo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='24'%3E%3Cpath d='M0 12c10-8 30-8 40 0s30 8 40 0' fill='none' stroke='%23fff' stroke-opacity='.16' stroke-width='3'/%3E%3C/svg%3E"); }
.t-bistrot { --t-fondo: #fbfaf6; --t-carta: #ffffff; --t-testo: #22261b; --t-tenue: #5d6150; --t-linea: #e6e3d6; --t-tenue-bg: #efede4;
  --t-font: Manrope, system-ui, sans-serif; --t-font-titoli: Fraunces, Georgia, serif; --t-peso-titoli: 700; --t-spaziatura-titoli: -.02em;
  --t-raggio: 20px; --t-raggio-p: 14px; --t-ombra: 0 1px 3px rgba(34, 38, 27, .06), 0 8px 24px rgba(34, 38, 27, .06); --t-bordo-blocco: 0;
  --t-bottone: var(--t-testo); --t-bottone-testo: var(--t-carta); --t-striscia: var(--tema-accento); --t-motivo: none; }
.t-street { --t-fondo: var(--tema); --t-carta: #ffffff; --t-testo: #111111; --t-tenue: #444444; --t-linea: #dddddd; --t-tenue-bg: #f2f2f2;
  --t-font: Archivo, system-ui, sans-serif; --t-font-titoli: 'Archivo Black', Impact, sans-serif; --t-peso-titoli: 400; --t-maiuscolo: uppercase;
  --t-raggio: 14px; --t-raggio-p: 12px; --t-ombra: 4px 4px 0 #111; --t-bordo-blocco: 2.5px solid #111;
  --t-bottone: var(--tema-accento); --t-bottone-testo: var(--tema-accento-testo); --t-striscia: #111111;
  --t-motivo: radial-gradient(circle, rgba(0, 0, 0, .13) 2px, transparent 2.5px); --t-motivo-misura: 14px 14px; }
.t-sushi { --t-fondo: #f5f1e8; --t-carta: #fbf8f1; --t-testo: #1b1b1b; --t-tenue: #5a554b; --t-linea: #d8d1c2; --t-tenue-bg: #ece6d8;
  --t-font: 'Zen Kaku Gothic New', system-ui, sans-serif; --t-font-titoli: 'Shippori Mincho', Georgia, serif; --t-peso-titoli: 700;
  --t-raggio: 0; --t-raggio-p: 0; --t-ombra: none; --t-bordo-blocco: 1px solid #1b1b1b;
  --t-bottone: var(--tema); --t-bottone-testo: var(--tema-testo); --t-striscia: var(--tema-accento);
  --t-motivo: radial-gradient(circle at calc(100% - 64px) 64px, var(--tema-accento) 0 38px, transparent 39px); }
.t-pasticceria { --t-fondo: #fff6f3; --t-carta: #ffffff; --t-testo: #3d2219; --t-tenue: #6e4337; --t-linea: #f6dcd6; --t-tenue-bg: #fde4df;
  --t-font: Nunito, system-ui, sans-serif; --t-font-titoli: Fredoka, 'Arial Rounded MT Bold', sans-serif; --t-peso-titoli: 700;
  --t-raggio: 24px; --t-raggio-p: 999px; --t-ombra: 0 6px 18px rgba(122, 62, 43, .09); --t-bordo-blocco: 0;
  --t-bottone: var(--tema-accento); --t-bottone-testo: var(--tema-accento-testo); --t-striscia: var(--tema-accento);
  --t-motivo: repeating-linear-gradient(90deg, rgba(255, 255, 255, .55) 0 26px, transparent 26px 52px); }

/* --- scheda del locale (e anteprima) --- */
:is(.pagina-locale.tema-locale main, .anteprima-tema) { --caffe: var(--t-testo); --testo-2: var(--t-tenue); --bordo: var(--t-linea);
  --sabbia: var(--t-tenue-bg); --crema: var(--t-tenue-bg); --pomodoro: var(--tema); --pomodoro-scuro: var(--tema-su-carta); --zafferano: var(--tema-accento);
  background: var(--t-fondo); color: var(--t-testo); font-family: var(--t-font); }
:is(.pagina-locale.tema-locale main, .anteprima-tema) :is(h1, h2, h3, .titolo-pagina, .anteprima-nome) { font-family: var(--t-font-titoli); font-weight: var(--t-peso-titoli);
  letter-spacing: var(--t-spaziatura-titoli, -.01em); text-transform: var(--t-maiuscolo, none); }
/* link del locale col suo colore, con specificità minima: i link con una regola propria (avvisi, mappa) restano come sono */
:where(.pagina-locale.tema-locale main) a:where(:not(.pulsante, .filtro, .chip, .invito-foto, .pulsante-gmaps, .condividi-voce)) { color: var(--tema-su-carta); }
:is(.pagina-locale.tema-locale main, .anteprima-tema) .blocco { background: var(--t-carta); border: var(--t-bordo-blocco); border-radius: var(--t-raggio); box-shadow: var(--t-ombra); }
.pagina-locale.tema-locale main .blocco > h2 { color: var(--tema-su-carta); }
.pagina-locale.tema-locale main .blocco > h2::after { content: ""; display: block; width: 40px; height: 3px; margin-top: 8px; border-radius: 2px; background: var(--tema-accento); }
:is(.pagina-locale.tema-locale main, .anteprima-tema) .pulsante { border-radius: var(--t-raggio-p); }
:is(.pagina-locale.tema-locale main, .anteprima-tema) .pulsante-rosso, :is(.pagina-locale.tema-locale main, .anteprima-tema) .pulsante-rosso:hover { background: var(--t-bottone); color: var(--t-bottone-testo); }
.pagina-locale.tema-locale main .pulsante-rosso:hover { filter: brightness(.92); }
.pagina-locale.tema-locale main .pulsante-chiaro { background: var(--t-carta); color: var(--t-testo); box-shadow: inset 0 0 0 1.5px var(--t-linea); }
.pagina-locale.tema-locale main .pulsante-scuro { background: var(--t-testo); color: var(--t-carta); }
.pagina-locale.tema-locale main .chip { background: var(--t-tenue-bg); color: var(--t-testo); border-radius: var(--t-raggio-p); }
.pagina-locale.tema-locale main :is(input, textarea, select) { background: var(--t-carta); color: var(--t-testo); border-color: var(--t-linea); }
:is(.pagina-locale.tema-locale main, .anteprima-tema) .badge-sconto { background: var(--tema-accento); color: var(--tema-accento-testo); border-radius: var(--t-raggio-p); }
.pagina-locale.tema-locale main .riga-sconto { background: var(--t-tenue-bg); color: var(--t-testo); }
.pagina-locale.tema-locale main .blocco-sconti .riga-sconto { background: var(--t-fondo); }
.pagina-locale.tema-locale main .tabella th, .pagina-locale.tema-locale main .tabella-app tr.migliore td { background: var(--t-tenue-bg); }
.pagina-locale.tema-locale .torna-su { background: var(--tema); color: var(--tema-testo); }
/* testata a tutta larghezza nel colore del locale (trucco border-image: niente scroll di lato), riga sotto */
.pagina-locale.tema-locale .sezione-testa { padding-bottom: 28px; color: var(--tema-testo);
  border-image: linear-gradient(var(--tema) calc(100% - 4px), var(--t-striscia) 0) fill 0 / 0 / 0 100vmax; }
.pagina-locale.tema-locale .sezione-testa :is(.titolo-pagina, .briciole, .briciole a) { color: var(--tema-testo); }
.pagina-locale.tema-locale .sezione-testa .locale-sotto { color: var(--tema-testo); opacity: .85; }
.pagina-locale.tema-locale .sezione-testa .chip { background: var(--tema-chip); color: var(--tema-testo); }
.pagina-locale.tema-locale .sezione-testa :is(.foto-credito, .foto-illustrativa) { color: #5e4d43; }
.pagina-locale.tema-locale .locale-corpo { margin-top: 28px; }
:is(.locale-fascia.tema-locale, .tema-locale .locale-fascia) .locale-copertina { background-color: var(--tema); background-image: var(--t-motivo); background-size: var(--t-motivo-misura, auto); background-repeat: var(--t-motivo-ripeti, repeat); }
.locale-fascia.tema-locale :is(.briciole, .briciole a) { color: var(--tema-testo); text-shadow: none; }
.pagina-locale.tema-locale .locale-fascia .locale-copertina { height: 150px; }
@media (max-width: 640px) { .pagina-locale.tema-locale .locale-fascia .locale-copertina { height: 180px; } }
.tema-locale .locale-testa .locale-figura-logo .locale-foto-img, .pagina-menu.tema-locale .menu-testa-logo { border-color: var(--tema); }
/* copertina del locale: a tutta larghezza della fascia colorata, senza margini (main taglia quello che sborda di lato) */
.pagina-locale.tema-locale main { overflow-x: clip; }
/* copertina del locale: scurita e sotto a tutta la testata (logo, nome, etichette), a tutta larghezza; scritte bianche */
.pagina-locale.tema-locale .sezione-testa:has(.con-copertina) { position: relative; padding-top: 0; color: #fff; }
.pagina-locale.tema-locale .locale-testa.con-copertina { position: static; }
.pagina-locale.tema-locale .locale-testa.con-copertina .locale-copertina { position: absolute; z-index: 0; top: 0; bottom: 4px; left: calc(50% - 50vw); right: calc(50% - 50vw);
  height: auto; border-radius: 0; }
.pagina-locale.tema-locale .locale-testa.con-copertina .locale-copertina::after { background: rgba(20, 14, 12, .7); }
.pagina-locale.tema-locale .locale-testa.con-copertina .locale-testa-dentro { position: relative; z-index: 1; margin-top: 0; padding-top: 84px; align-items: flex-end; }
.pagina-locale.tema-locale .locale-testa.con-copertina .locale-testa-testo { padding-top: 0; }
.pagina-locale.tema-locale .sezione-testa:has(.con-copertina) :is(.titolo-pagina, .locale-sotto) { color: #fff; opacity: 1; }
.pagina-locale.tema-locale .sezione-testa:has(.con-copertina) .chip { background: rgba(255, 255, 255, .2); color: #fff; }
.pagina-locale.tema-locale .sezione-testa:has(.con-copertina) > .briciole { position: absolute; top: 12px; z-index: 2; margin: 0; padding: 0; line-height: 1.5; }
.pagina-locale.tema-locale .sezione-testa:has(.con-copertina) > .briciole, .pagina-locale.tema-locale .sezione-testa:has(.con-copertina) > .briciole a { color: #fff; }
/* sulla copertina: «È il tuo locale?» su un riquadro bianco un po' trasparente, allineato ai margini della pagina */
.pagina-locale.tema-locale .con-copertina .locale-copertina .invito-foto { background: rgba(255, 255, 255, .85); box-shadow: none; right: max(20px, calc(50% - 600px)); }
@media (max-width: 640px) {
  .pagina-locale.tema-locale .con-copertina .locale-copertina .invito-foto { top: 56px; left: 20px; right: 20px; }
  .pagina-locale.tema-locale .locale-testa.con-copertina .locale-testa-dentro { padding-top: 136px; align-items: stretch; }
}
/* menu del QR: la copertina scurita sotto a tutta la testata */
.pagina-menu.tema-locale .menu-testa.con-copertina { padding-top: 28px; color: #fff; }
.pagina-menu.tema-locale .menu-testa.con-copertina .menu-testa-copertina { inset: 0; height: 100%; filter: brightness(.32); }
.pagina-menu.tema-locale .menu-testa.con-copertina :is(h1, .menu-testa-dove, .menu-pagina-sopra) { color: #fff; }

.pagina-locale.tema-locale .invito-foto, .pagina-locale.tema-locale .invito-foto b { color: #1c1310; }
/* --- menu: nella scheda, nel menu del QR e nell'anteprima --- */
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale, .anteprima-tema) .titolo-sezione-menu { font-family: var(--t-font-titoli); font-weight: var(--t-peso-titoli);
  text-transform: var(--t-maiuscolo, none); color: var(--t-testo); border-bottom-color: var(--tema-accento); }
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale, .anteprima-tema) .menu-voce { border-bottom-color: var(--t-linea); }
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale, .anteprima-tema) .menu-voce-prezzo { color: var(--tema-su-carta); }
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale, .anteprima-tema) .menu-voce-descr { color: var(--t-tenue); }
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale) .menu-voce-foto { border-radius: var(--t-raggio); }
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale) .menu-indice a { background: var(--t-carta); border-color: var(--t-linea); color: var(--t-testo); border-radius: var(--t-raggio-p); }
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale) .menu-indice a.attiva { background: var(--tema); border-color: var(--tema); color: var(--tema-testo); }
:is(.pagina-locale.tema-locale main, .pagina-menu.tema-locale) .menu-indice a.attiva small { color: inherit; opacity: .8; }
.pagina-locale.tema-locale main .blocco-menu .menu-indice { background: var(--t-carta); }
/* menu del QR code */
.pagina-menu.tema-locale { background: var(--t-fondo); color: var(--t-testo); font-family: var(--t-font); --caffe: var(--t-testo); --testo-2: var(--t-tenue); --bordo: var(--t-linea); }
.pagina-menu.tema-locale .menu-testa, .pagina-menu.tema-locale .menu-testa.con-copertina { background-color: var(--tema); background-image: var(--t-motivo); background-size: var(--t-motivo-misura, auto); background-repeat: var(--t-motivo-ripeti, repeat);
  color: var(--tema-testo); border-bottom: 4px solid var(--t-striscia); }
.pagina-menu.tema-locale .menu-testa h1 { font-family: var(--t-font-titoli); font-weight: var(--t-peso-titoli); text-transform: var(--t-maiuscolo, none); color: var(--tema-testo); }
.pagina-menu.tema-locale .menu-testa-dove { color: var(--tema-testo); }
.pagina-menu.tema-locale .menu-testa .menu-pagina-sopra { color: var(--tema-testo); opacity: .8; }
.pagina-menu.tema-locale .menu-testa-azioni .pulsante { border-radius: var(--t-raggio-p); }
.pagina-menu.tema-locale .menu-testa-azioni .pulsante:not(.pulsante-rosso), .pagina-menu.tema-locale .menu-testa-stato .chip { background: #fff; color: #1c1310; }
.pagina-menu.tema-locale .menu-testa-azioni .pulsante-rosso { background: var(--t-bottone); color: var(--t-bottone-testo); }
.pagina-menu.tema-locale :is(.menu-sezione, .menu-orari) { background: var(--t-carta); border: var(--t-bordo-blocco); border-radius: var(--t-raggio); box-shadow: var(--t-ombra); }
.pagina-menu.tema-locale .menu-indice { background: var(--t-fondo); border-bottom-color: var(--t-linea); }
.pagina-menu.tema-locale .menu-sconto { background: var(--t-carta); color: var(--t-testo); border-color: var(--tema-accento-su-carta); border-radius: var(--t-raggio); }
.pagina-menu.tema-locale .menu-sconto .badge-sconto { background: var(--tema-accento); color: var(--tema-accento-testo); border-radius: var(--t-raggio-p); }
.pagina-menu.tema-locale .menu-cerca input { background: var(--t-carta); color: var(--t-testo); border-color: var(--t-linea); border-radius: var(--t-raggio-p); }
.pagina-menu.tema-locale .menu-puntini { border-bottom-color: var(--t-linea); }
.pagina-menu.tema-locale .menu-pagina-piede { color: var(--t-tenue); }
.pagina-menu.tema-locale .menu-orari h2 { font-family: var(--t-font-titoli); font-weight: var(--t-peso-titoli); }

/* --- decorazioni di ogni modello --- */
:is(body, .anteprima-tema).tema-locale.t-trattoria .titolo-sezione-menu { display: block; text-align: center; font-style: italic; font-weight: 500; font-size: 28px; color: var(--tema-su-carta); border-bottom: 0; padding: 0 0 6px; }
:is(body, .anteprima-tema).tema-locale.t-trattoria :is(.menu-voce-descr) { font-style: italic; }
:is(body, .anteprima-tema).tema-locale.t-trattoria .menu-voce-prezzo { font-family: 'Playfair Display', Georgia, serif; font-size: 19px; }
:is(body, .anteprima-tema).tema-locale.t-pizzeria .titolo-sezione-menu { display: flex; align-items: center; gap: 10px; font-size: 26px; border-bottom: 0; padding: 0 0 4px; }
:is(body, .anteprima-tema).tema-locale.t-pizzeria .titolo-sezione-menu::before { content: ""; flex: none; width: 10px; height: 26px; background: var(--tema-accento); }
:is(body, .anteprima-tema).tema-locale.t-pizzeria .menu-voce { border: 1px solid var(--t-linea); border-radius: 16px; padding: 12px 14px; margin-top: 12px; }
:is(body, .anteprima-tema).tema-locale.t-pizzeria .menu-voce:last-child { border-bottom: 1px solid var(--t-linea); }
:is(body, .anteprima-tema).tema-locale.t-elegante .titolo-sezione-menu { display: flex; align-items: center; gap: 14px; font-style: italic; font-weight: 500; font-size: 30px; border-bottom: 0; padding: 0 0 6px; }
:is(body, .anteprima-tema).tema-locale.t-elegante .titolo-sezione-menu::before, :is(body, .anteprima-tema).tema-locale.t-elegante .titolo-sezione-menu::after { content: ""; flex: 1 1 20px; height: 1px; background: var(--t-linea); }
:is(body, .anteprima-tema).tema-locale.t-elegante .menu-voce-nome { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 21px; font-weight: 700; }
:is(body, .anteprima-tema).tema-locale.t-elegante .menu-voce-prezzo { color: var(--tema-accento-su-carta); font-weight: 500; }
:is(body, .anteprima-tema).tema-locale.t-elegante :is(main, .menu-testa-azioni, .anteprima-corpo) .pulsante { text-transform: uppercase; letter-spacing: .14em; font-size: 15px; }
:is(body, .anteprima-tema).tema-locale.t-mare .titolo-sezione-menu { font-size: 30px; color: var(--tema-su-carta); border-bottom: 0; padding: 0 0 4px; }
:is(body, .anteprima-tema).tema-locale.t-bistrot .titolo-sezione-menu { font-family: var(--t-font); font-size: 14px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--tema-su-carta); border-bottom: 0; padding: 0 0 4px; }
:is(body, .anteprima-tema).tema-locale.t-bistrot .menu-voce-nome { font-family: Fraunces, Georgia, serif; font-weight: 500; font-size: 20px; }
:is(body, .anteprima-tema).tema-locale.t-street .titolo-sezione-menu { display: inline-block; align-self: flex-start; background: #111; color: #fff; font-size: 22px; padding: 4px 12px; border: 0; transform: rotate(-2deg); margin-bottom: 6px; }
:is(body, .anteprima-tema).tema-locale.t-street .menu-voce-nome { font-weight: 800; }
:is(body, .anteprima-tema).tema-locale.t-street :is(main, .menu-testa-azioni, .anteprima-corpo) .pulsante { box-shadow: 3px 3px 0 #111; border: 2px solid #111; }
:is(body, .anteprima-tema).tema-locale.t-street .menu-indice a.attiva { background: #111; border-color: #111; color: #fff; }
:is(body, .anteprima-tema).tema-locale.t-sushi .titolo-sezione-menu { display: flex; align-items: center; gap: 10px; font-size: 26px; border-bottom: 1px solid var(--t-testo); padding: 0 0 8px; }
:is(body, .anteprima-tema).tema-locale.t-sushi .titolo-sezione-menu::before { content: ""; flex: none; width: 12px; height: 12px; border-radius: 50%; background: var(--tema-accento); }
:is(body, .anteprima-tema).tema-locale.t-pasticceria .titolo-sezione-menu { font-size: 28px; font-weight: 600; color: var(--tema-accento-su-carta); border-bottom: 0; padding: 0 0 4px; }
:is(body, .anteprima-tema).tema-locale.t-pasticceria .menu-voce-foto { border-radius: 50%; }

/* --- scelta del tema nell'area del locale --- */
.modelli-tema { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px; border: 0; padding: 0; margin: 0; }
.modelli-tema legend { font-weight: 700; padding: 0; margin-bottom: 12px; }
.modello-scelta { position: relative; cursor: pointer; }
.modello-scelta input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.modello-carta { display: flex; flex-direction: column; gap: 6px; height: 100%; box-sizing: border-box; padding: 0 0 12px; overflow: hidden;
  border-radius: var(--raggio); border: 2px solid var(--bordo); background: var(--t-fondo); color: var(--t-testo); font-family: var(--t-font); }
.modello-fascia { height: 52px; background-color: var(--p); background-image: var(--t-motivo); background-size: var(--t-motivo-misura, auto); background-repeat: var(--t-motivo-ripeti, repeat); border-bottom: 4px solid var(--a); }
.modello-nome { padding: 0 12px; font-family: var(--t-font-titoli); font-weight: var(--t-peso-titoli); font-size: 20px; line-height: 1.15; text-transform: var(--t-maiuscolo, none); }
.modello-carta small { padding: 0 12px; font-size: 14px; line-height: 1.35; color: var(--t-tenue); }
.modello-scelta input:checked + .modello-carta { border-color: var(--caffe); box-shadow: 0 0 0 3px var(--zafferano); }
.modello-scelta input:focus-visible + .modello-carta { outline: 3px solid var(--zafferano); outline-offset: 2px; }
.modello-scelta { --tema: var(--p); --tema-accento: var(--a); }
.modello-scelta.t-trattoria { --p: #b2452b; --a: #c8b391; }
.modello-scelta.t-pizzeria { --p: #d32f2f; --a: #1b7a43; }
.modello-scelta.t-elegante { --p: #1f1b17; --a: #d4b06a; }
.modello-scelta.t-mare { --p: #0b4f71; --a: #f2b84b; }
.modello-scelta.t-bistrot { --p: #5c6b32; --a: #c9b98f; }
.modello-scelta.t-street { --p: #ffd23f; --a: #ff5a36; }
.modello-scelta.t-sushi { --p: #1b1b1b; --a: #c0392b; }
.modello-scelta.t-pasticceria { --p: #f8c8c8; --a: #7a3e2b; }
.anteprima-tema { max-width: 440px; border-radius: var(--raggio); overflow: hidden; border: 1px solid var(--t-linea); padding-bottom: 12px; }
.anteprima-tema .locale-fascia .locale-copertina { height: 56px; border-radius: 0; }
.anteprima-testa { display: flex; flex-direction: column; gap: 2px; padding: 4px 16px 14px; background: var(--tema); color: var(--tema-testo); border-bottom: 4px solid var(--t-striscia); }
.anteprima-nome { font-size: 24px; line-height: 1.1; }
.anteprima-corpo.blocco { display: flex; flex-direction: column; gap: 6px; margin: 12px 12px 0; padding: 14px 16px; }
.anteprima-piatto { display: flex; justify-content: space-between; gap: 12px; font-weight: 700; }
.anteprima-corpo .menu-voce-descr { margin: 0; font-size: 15px; }
.anteprima-fondo { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 6px; }
.anteprima-fondo .badge-sconto { padding: 4px 10px; }
/* fascia senza copertina, come con la copertina: percorso senza fondo, «È il tuo locale?» bianco un po' trasparente */
.locale-fascia.tema-locale .briciole { margin-top: 8px; }
.pagina-locale.tema-locale .locale-fascia .invito-foto { background: rgba(255, 255, 255, .85); box-shadow: none; }

/* parti del sito dentro la scheda (avvisi, condivisione, banner, mappa): leggibili con ogni tema, anche scuro */
.pagina-locale.tema-locale main :is(.banner, .avviso-non-siamo, .leaflet-container, .scheda-servizi, .lato-blocco) { --caffe: #1c1310; --testo-2: #5e4d43; --crema: #fff6e9; --sabbia: #f7f3ee;
  --bordo: #efe7dc; --pomodoro: #c8321f; --pomodoro-scuro: #a82916; --zafferano: #f5b301; font-family: var(--sans); }
.pagina-locale.tema-locale main :is(.banner, .avviso-non-siamo, .leaflet-container, .scheda-servizi, .lato-blocco) :is(h2, h3, .banner-titolo) { font-family: var(--tondo); text-transform: none; letter-spacing: 0; }
.pagina-locale.tema-locale main .avviso-non-siamo { color: #1c1310; }
.pagina-locale.tema-locale main .avviso-non-siamo a, .pagina-locale.tema-locale main .leaflet-container a:not(.pulsante) { color: #a82916; }
.pagina-locale.tema-locale main .pulsante-gmaps { background: #fff; color: #1c1310; }
/* doppia classe: più forte delle regole dei singoli temi sui pulsanti */
.pagina-locale.tema-locale main .banner .pulsante.pulsante { border-radius: var(--raggio); box-shadow: none; border: 0; text-transform: none; letter-spacing: 0; filter: none; }
.pagina-locale.tema-locale main .banner .pulsante-giallo { background: #f5b301; color: #1c1310; }
.pagina-locale.tema-locale main .banner .pulsante-scuro { background: #1c1310; color: #fff; }
.pagina-locale.tema-locale main .condividi-voce { background: var(--t-carta); color: var(--t-testo); border-color: var(--t-linea); }
.pagina-locale.tema-locale main .condividi-voce:hover { background: var(--t-tenue-bg); color: var(--t-testo); border-color: var(--t-testo); }
.pagina-locale.tema-locale main .condividi-ico { background: var(--t-tenue-bg); color: var(--t-testo); }
.pagina-locale.tema-locale main .leaflet-container .pulsante-chiaro { background: #fff; color: #1c1310; box-shadow: none; }
.pagina-menu.tema-locale .menu-pagina-piede a { color: var(--t-testo); }
.pagina-locale.tema-locale main .locale-link a { color: var(--tema-su-carta); }
.pagina-locale.tema-locale main .lato-blocco { color: #1c1310; }
.pagina-locale.tema-locale .invito-foto .ico { color: var(--tema-su-carta); }
/* il fondo del tema anche sotto la pagina (fino al piede), niente striscia bianca */
body.pagina-locale.tema-locale { background: var(--t-fondo); }
/* computer: immagine e testi della testata allineati in basso (il fondo dell'immagine con l'ultima riga) */
@media (min-width: 641px) {
  .pagina-locale.tema-locale .locale-testa-dentro { align-items: flex-end; }
  .pagina-locale.tema-locale .locale-testa-testo { padding-top: 0; }
}
