/*
 * CSS del tema oltre ai fogli dei mockup (comune.css, a.css, transizioni.css):
 * adattamenti al markup di WordPress e pagine generiche (privacy, 404).
 */

/* Nero sulla tela (html), body trasparente: i bagliori con z-index -1 (testata del menù) restano visibili
   come nei mockup, dove il nero del body passava alla tela */
html { background: #000; }
body { background: transparent; }

/* Contenitori di WordPress senza effetti sul layout dei mockup */
.wp-site-blocks { padding: 0; }
/* WordPress mette 24px tra i figli di .wp-site-blocks anche senza blockGap: i mockup non li prevedono */
:where(.wp-site-blocks) > * { margin-block: 0; }
main.wp-block-group { margin: 0; }

/* Pagine generiche: titolo Anton, testo in colonna leggibile sotto la testata */
.pagina { padding-top: calc(var(--header-h) + clamp(32px, 6vw, 80px)); padding-bottom: clamp(64px, 9vw, 120px); }
.pagina__titolo { font-size: clamp(2.75rem, 7vw, 6rem); margin-bottom: clamp(24px, 4vw, 48px); }
.pagina__testo > * + * { margin-block-start: 1em; }
.pagina__testo h2 { font-size: clamp(1.75rem, 3vw, 2.5rem); margin-block-start: 1.6em; }
.pagina__testo a { color: var(--bianco); }
.pagina .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.pagina .wp-block-button__link { display: inline-flex; padding: 14px 22px; background: var(--rosso); color: var(--bianco); font-weight: 700; text-decoration: none; text-transform: uppercase; letter-spacing: .08em; font-size: .8125rem; }
.pagina .is-style-outline .wp-block-button__link { background: transparent; box-shadow: inset 0 0 0 1px var(--linea); }

/* Invito al menù: wp_get_attachment_image aggiunge width/height, la fila deve restare 4:5 come nei mockup */
.apri-menu__traccia img { flex: none; width: auto; max-width: none; }

/* Piede: "Preferenze cookie" è un bottone (riapre il banner di Complianz) ma si legge come gli altri link */
.piede__cookie { padding: 0; border: 0; background: none; font: inherit; color: inherit; text-decoration: underline; text-underline-offset: .22em; text-decoration-thickness: 1px; cursor: pointer; }

/* Mappa bloccata da Complianz: segnaposto scuro col bottone nello stile del sito */
.dove .cmplz-blocked-content-container { background: var(--nero-3) center / cover; }
.dove .cmplz-blocked-content-notice { max-width: 320px; padding: 16px 20px; border: 1px solid var(--linea); border-radius: 0; background: rgba(0, 0, 0, .86); color: var(--bianco); font: 500 .875rem/1.5 var(--corpo); }
.dove .cmplz-blocked-content-notice:hover { background: var(--rosso); }

/* Pagine legali generate da Complianz (cookie policy) dentro la colonna .legale */
.legale .cmplz-document { max-width: none; font-size: inherit; margin-top: 32px; }
.legale .cmplz-document h2 { font-family: var(--display); font-weight: 400; text-transform: uppercase; font-size: clamp(1.75rem, 3.4vw, 2.5rem); margin-top: 48px; }
.legale .cmplz-document h3 { font-family: var(--corpo); font-size: 1.0625rem; font-weight: 700; text-transform: none; margin: 0; }
.legale .cmplz-document h4, .legale .cmplz-document h5 { font-family: var(--corpo); font-weight: 700; text-transform: uppercase; letter-spacing: .1em; font-size: .6875rem; color: var(--testo-3); margin: 0; }
.legale .cmplz-document a { color: var(--bianco); }
/* Servizi (Google Maps, Complianz) e categorie del consenso: tendine scure coi bordi del sito
   (il CSS dei documenti di Complianz è spento, opzione use_document_css) */
.legale .cmplz-dropdown, .legale .cmplz-category { margin-top: 8px; border: 1px solid var(--linea); background: var(--nero-3); color: var(--bianco); }
.legale .cmplz-dropdown > summary, .legale .cmplz-category > summary, .legale .cmplz-category-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 16px; list-style: none; cursor: pointer; }
.legale .cmplz-dropdown > summary::-webkit-details-marker { display: none; }
.legale .cmplz-dropdown > summary > div { display: flex; flex: 1; align-items: baseline; justify-content: space-between; gap: 16px; }
.legale .cmplz-dropdown > summary p { margin: 0; font-size: .8125rem; color: var(--testo-3); }
.legale .cmplz-dropdown > summary::after { content: "+"; font-weight: 700; color: var(--testo-2); }
.legale .cmplz-dropdown[open] > summary::after { content: "−"; }
.legale .cmplz-service-description, .legale .cmplz-sharing-data { padding: 0 16px; }
.legale .cmplz-service-description h4, .legale .cmplz-sharing-data h4 { margin-top: 8px; }
.legale .cmplz_consent_per_service_label, .legale .cmplz-accept-service { display: none; }
/* Cookie del servizio: due colonne, etichetta e valore */
.legale .cookies-per-purpose { display: grid; grid-template-columns: max-content 1fr; gap: 6px 20px; align-items: baseline; margin: 16px; padding: 14px 16px; border: 1px solid var(--linea); background: var(--nero-2); color: var(--testo-2); font-size: .875rem; }
.legale .cookies-per-purpose .purpose { grid-column: 1 / -1; padding-bottom: 6px; border-bottom: 1px solid var(--linea); }
.legale .cookies-per-purpose .name { color: var(--bianco); font-weight: 600; }
.legale .cmplz-always-active { color: #3ee07f; font-size: .8125rem; }
.legale .cmplz-category-title { font-weight: 600; }
.legale .cmplz-category .cmplz-description { padding: 0 16px 14px; color: var(--testo-2); }

/* Niente cartina finta di Complianz: fondo scuro con la luce della sede */
.dove .cmplz-blocked-content-container { background-image: radial-gradient(70% 90% at 70% 30%, color-mix(in srgb, var(--g2) 30%, transparent), transparent 70%) !important; background-color: var(--nero-3) !important; }
/* Categorie del consenso nella cookie policy: document-grid.css usa un id, serve la stessa specificità */
.legale #cmplz-manage-consent-container.cmplz-manage-consent-container .cmplz-categories .cmplz-category { background: var(--nero-3); }
.legale #cmplz-manage-consent-container.cmplz-manage-consent-container .cmplz-categories .cmplz-category .cmplz-category-header { padding: 12px 16px; background: transparent; color: var(--bianco); }
.legale #cmplz-manage-consent-container h3 { margin-top: 28px; }
.legale .cmplz-category svg { color: var(--bianco); fill: currentColor; }
.legale .cmplz-category input[type="checkbox"], .cmplz-cookiebanner input[type="checkbox"] { accent-color: var(--rosso); }

/* Banner dei cookie nascosto mentre gira l'intro del nigiri: compare quando l'intro si chiude (intro.js toglie la classe) */
html.intro-attiva .cmplz-cookiebanner { visibility: hidden; }

/* Porte su telefono: il blocco informazioni copre tutta la porta (freccia compresa) e sta sopra il link.
   Lascia passare i tocchi, tranne sui suoi bottoni: freccia e zone libere aprono il ristorante */
@media (max-width: 900px) {
	.porta__info { pointer-events: none; }
	.porta__info a, .porta__info button { pointer-events: auto; }
}
