/*
Theme Name: Insieme per Pieve
Theme URI: https://www.insiemeperpieve.it/
Author: Insieme per Pieve
Description: Tema su misura per il blog "Insieme per Pieve" di Pieve Vergonte. Stile "pietra e piode": grigio ardesia, pietra e il rosso ruggine della guglia del campanile.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: insiemeperpieve
*/

/* ---------- Base ---------- */
.wp-site-blocks > * + * { margin-block-start: 0; }
img { max-width: 100%; height: auto; }
:where(a):focus-visible, :where(button, input, textarea):focus-visible { outline: 3px solid var(--wp--preset--color--ruggine); outline-offset: 2px; }

/* ---------- Testata (fissa in alto, si rimpicciolisce scorrendo) ---------- */
.ipp-parte-testata { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 100; }
@media (max-width: 600px) { .ipp-parte-testata { top: 0; } }
.ipp-testata, .ipp-marchio__logo, .ipp-marchio__logo img, .ipp-marchio__titolo { transition: all 0.2s ease; }
.ipp-scorrimento .ipp-testata { padding-top: 8px !important; padding-bottom: 8px !important; }
.ipp-scorrimento .ipp-marchio__logo, .ipp-scorrimento .ipp-marchio__logo img { width: 48px; height: 48px; }
.ipp-scorrimento .ipp-marchio__titolo { font-size: 26px; }
.ipp-scorrimento .ipp-marchio__motto { display: none; }
.ipp-scorrimento .ipp-piode { height: 14px !important; background-position: left bottom; }

.ipp-testata .ipp-testata__riga { gap: 18px 32px; }
.ipp-marchio { gap: 16px; }
.ipp-marchio__logo { display: block; flex: none; width: 72px; height: 72px; border-radius: 50%; overflow: hidden; box-shadow: 0 0 0 3px var(--wp--preset--color--pietra); }
.ipp-marchio__logo img { width: 72px; height: 72px; object-fit: cover; display: block; }
.ipp-marchio__testi { gap: 4px !important; }
.ipp-marchio__titolo { margin: 0; font-family: var(--wp--preset--font-family--titoli); font-size: clamp(28px, 4vw, 40px); font-weight: 700; line-height: 1; letter-spacing: 0.02em; text-transform: uppercase; }
.ipp-marchio__titolo a { color: var(--wp--preset--color--bianco); text-decoration: none; }
.ipp-marchio__motto { margin: 0; font-size: clamp(17px, 1.9vw, 21px); line-height: 1.25; letter-spacing: 0.01em; color: var(--wp--preset--color--pietra); }
.ipp-menu { font-family: var(--wp--preset--font-family--titoli); font-size: 19px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; gap: 8px 24px; }
.ipp-menu a { color: var(--wp--preset--color--bianco) !important; text-decoration: none; }
.ipp-menu a:hover, .ipp-menu .current-menu-item > a { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 2px; }
.ipp-menu .wp-block-navigation__responsive-container-open svg, .ipp-menu .wp-block-navigation__responsive-container-close svg { width: 30px; height: 30px; }

/* La striscia con il disegno dei tetti in piode */
.ipp-piode {
	margin: 0 !important;
	background-color: #454D55;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='26'%3E%3Crect width='40' height='26' fill='%23454D55'/%3E%3Cpath d='M0 0H40V14Q20 26 0 14Z' fill='%2359626B'/%3E%3Cpath d='M0 14Q20 26 40 14' fill='none' stroke='%232F363D' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
}

/* ---------- Etichette e titoli di sezione ---------- */
.ipp-etichetta { margin: 0; font-family: var(--wp--preset--font-family--titoli); font-size: 16px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--ruggine); }
.ipp-sezione__titolo { margin: 0 0 8px; font-family: var(--wp--preset--font-family--titoli); font-size: 30px; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; border-bottom: 4px solid var(--wp--preset--color--ardesia); padding-bottom: 6px; }
.ipp-descrizione-archivio { font-family: var(--wp--preset--font-family--lettura); color: var(--wp--preset--color--testo-tenue); }

/* ---------- Benvenuto ---------- */
.ipp-benvenuto { gap: 0 !important; border-radius: 6px; overflow: hidden; margin-bottom: 32px; }
.ipp-benvenuto__testo { flex: 999 1 420px; min-width: 0; padding: 36px 40px; gap: 12px !important; }
.ipp-benvenuto__frase { margin: 0; font-family: var(--wp--preset--font-family--titoli); font-size: clamp(26px, 3vw, 34px); font-weight: 600; line-height: 1.1; }
.ipp-benvenuto__descrizione { margin: 0; font-family: var(--wp--preset--font-family--lettura); font-size: 18px; color: var(--wp--preset--color--testo-tenue); }
.ipp-benvenuto__link { margin: 0; }
.ipp-benvenuto__link a { font-weight: 700; text-decoration: none; }
.ipp-benvenuto__foto { flex: 0 1 445px; min-width: 0; margin: 0 !important; }
.ipp-benvenuto__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---------- Apertura (articolo piu' recente) ---------- */
.ipp-apertura .wp-block-post-template { margin: 0; padding: 0; list-style: none; }
.ipp-apertura__scheda { gap: 0 !important; border-radius: 6px; overflow: hidden; }
.ipp-apertura__img { flex: 1 1 520px; min-width: 0; min-height: 420px; margin: 0 !important; background: var(--wp--preset--color--ardesia-media); }
.ipp-apertura__img a { display: block; height: 100%; }
.ipp-apertura__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ipp-apertura__testo { flex: 1 1 400px; min-width: 0; padding: 40px 44px; justify-content: center; gap: 14px !important; }
.ipp-apertura__meta { gap: 6px 16px; }
.ipp-apertura__meta .wp-block-post-date { font-family: var(--wp--preset--font-family--titoli); font-size: 16px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--testo-tenue); }
.ipp-apertura__titolo { margin: 0; font-size: clamp(36px, 4.4vw, 60px); line-height: 1.02; }
.ipp-apertura__riassunto { margin: 0; font-size: 20px; }
.ipp-apertura__riassunto p { margin: 0; }

.wp-block-read-more.ipp-pulsante { align-self: flex-start; display: inline-flex; align-items: center; min-height: 48px; padding: 0 24px; border-radius: 4px; background: var(--wp--preset--color--ruggine); color: var(--wp--preset--color--bianco); font-weight: 700; text-decoration: none; }
.wp-block-read-more.ipp-pulsante:hover { background: var(--wp--preset--color--ardesia); color: var(--wp--preset--color--bianco); }

/* ---------- Due colonne: elenco + colonna laterale ---------- */
.ipp-due-colonne { gap: 32px !important; margin-top: 44px; }
.ipp-colonna-principale { flex: 999 1 600px; min-width: 0; }
.ipp-parte-colonna { flex: 1 1 300px; min-width: 0; }
.ipp-articolo + .ipp-parte-colonna, .ipp-principale > .ipp-due-colonne:first-child { margin-top: 0; }

/* ---------- Elenco articoli ---------- */
.ipp-elenco { margin: 0; padding: 0; list-style: none; }
.ipp-voce { gap: 22px !important; padding: 20px 0; border-bottom: 1px solid #C9CCC6; }
.ipp-voce__media { position: relative; flex: 0 0 280px; width: 280px; aspect-ratio: 3 / 2; border-radius: 4px; overflow: hidden; background: var(--wp--preset--color--pietra-scura); }
.ipp-voce__media .wp-block-post-featured-image { margin: 0; height: 100%; }
.ipp-voce__media .wp-block-post-featured-image a { display: block; height: 100%; }
.ipp-voce__media .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ipp-targa { position: absolute; left: 8px; top: 8px; width: 58px; height: 58px; gap: 2px !important; border-radius: 4px; background: var(--wp--preset--color--ardesia); line-height: 1; z-index: 1; }
.ipp-targa .wp-block-post-date { color: var(--wp--preset--color--bianco) !important; margin: 0; }
.ipp-targa__giorno { font-family: var(--wp--preset--font-family--titoli); font-size: 26px !important; font-weight: 700; }
.ipp-targa__mese { font-size: 11px !important; font-weight: 600; text-transform: uppercase; }
.ipp-voce__testo { flex: 1 1 auto; min-width: 0; gap: 6px !important; }
.ipp-voce__categorie { font-size: 17px !important; }
.ipp-voce__titolo { margin: 0; font-size: 28px; line-height: 1.05; }
.ipp-voce__riassunto, .ipp-voce__riassunto p { margin: 0; font-size: 17px; }
/* Anteprima di 7 righe di testo */
.ipp-voce__riassunto .wp-block-post-excerpt__excerpt { display: -webkit-box; -webkit-line-clamp: 7; line-clamp: 7; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.55; }
.ipp-voce__riassunto .wp-block-post-excerpt__more-text { margin-top: 8px; }
.ipp-voce__riassunto .wp-block-post-excerpt__more-link { font-family: var(--wp--preset--font-family--interfaccia); font-weight: 700; font-size: 15px; text-decoration: none; color: var(--wp--preset--color--ruggine); }

/* Immagini piccole: niente ingrandimento sgranato, centrate su fondo ardesia */
.wp-block-post-featured-image:has(img.ipp-piccola) { display: flex; align-items: center; justify-content: center; background: var(--wp--preset--color--ardesia-media); }
.wp-block-post-featured-image:has(img.ipp-piccola) > a { display: flex !important; align-items: center; justify-content: center; width: 100%; }
.wp-block-post-featured-image img.ipp-piccola { width: auto !important; height: auto !important; max-width: min(100%, var(--ipp-max, 100%)) !important; max-height: 100%; object-fit: contain !important; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3); }
.ipp-apertura__img:has(img.ipp-piccola) { padding: 32px; }

/* ---------- Paginazione ---------- */
.ipp-paginazione { margin-top: 28px; font-weight: 600; }
.ipp-paginazione a { text-decoration: none; }
.ipp-paginazione .page-numbers.current { background: var(--wp--preset--color--ardesia); color: var(--wp--preset--color--bianco); padding: 2px 10px; border-radius: 4px; }

/* ---------- Colonna laterale ---------- */
.ipp-colonna { gap: 24px !important; }
.ipp-box { border-radius: 6px; padding: 24px 26px; width: 100%; box-sizing: border-box; }
.ipp-box__titolo { margin: 0 0 14px !important; font-size: 30px; text-transform: uppercase; }
.ipp-piu-letti { margin: 0; padding: 0 0 0 26px; display: flex; flex-direction: column; gap: 16px; font-size: 19px; }
.ipp-piu-letti li { font-weight: 600; line-height: 1.3; }
.ipp-piu-letti a { color: var(--wp--preset--color--testo); text-decoration: none; }
.ipp-piu-letti a:hover { color: var(--wp--preset--color--ruggine); }
.ipp-piu-letti__numero { display: block; margin-top: 2px; font-size: 15px; font-weight: 400; color: var(--wp--preset--color--testo-tenue); }
.ipp-ultimi-commenti { margin: 0; padding: 0; font-size: 18px; line-height: 1.4; }
.ipp-ultimi-commenti li { margin: 0 0 18px; }
.ipp-box--scuro a { color: var(--wp--preset--color--bianco); }
.ipp-box--scuro .wp-block-latest-comments__comment-excerpt p { margin: 6px 0 0; font-size: 17px; line-height: 1.5; color: var(--wp--preset--color--nebbia); }
.ipp-cerca .wp-block-search__input { border: 1px solid #A9B0B6; border-radius: 4px; padding: 12px 14px; font: inherit; font-size: 18px; }
.ipp-cerca .wp-block-search__button { background: var(--wp--preset--color--ruggine); color: var(--wp--preset--color--bianco); border: 0; border-radius: 4px; font-weight: 700; padding: 10px 18px; }

/* ---------- Articolo e pagine ---------- */
.ipp-articolo { flex: 999 1 640px; min-width: 0; border-radius: 6px; padding: 40px 44px; box-sizing: border-box; }
.ipp-pagina { max-width: 1200px; }
.ipp-articolo__titolo { margin-top: 6px; font-size: clamp(34px, 4vw, 52px); line-height: 1.02; }
.ipp-articolo__meta { gap: 6px 14px; color: var(--wp--preset--color--testo-tenue); font-size: 15px; }
.ipp-articolo__autore::before { content: "di "; }
.ipp-articolo__testo { margin-top: 24px; }
.ipp-articolo__testo img { height: auto; border-radius: 4px; }
.ipp-articolo__testo .alignleft, .ipp-articolo__testo img.alignleft { float: left; margin: 0.3em 1.5em 1em 0; }
.ipp-articolo__testo .alignright, .ipp-articolo__testo img.alignright { float: right; margin: 0.3em 0 1em 1.5em; }
.ipp-articolo__testo .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.ipp-articolo__testo .wp-caption { max-width: 100%; }
.ipp-articolo__testo .wp-caption-text { font-size: 14px; color: var(--wp--preset--color--testo-tenue); }
.ipp-articolo__testo::after { content: ""; display: table; clear: both; }
.ipp-articolo__separatore { margin: 36px 0 !important; border: 0; border-top: 1px solid var(--wp--preset--color--pietra-scura); }

/* Condividi */

/* Commenti */
.ipp-commenti .wp-block-comments-title { font-size: 28px; text-transform: uppercase; }
.ipp-commento { padding: 18px 0; border-bottom: 1px solid var(--wp--preset--color--pietra-scura); }
.ipp-commento__intestazione { gap: 4px 14px; }
.ipp-commento__autore { font-weight: 700; }
.ipp-commento__data, .ipp-commento__data a { font-size: 14px; color: var(--wp--preset--color--testo-tenue); text-decoration: none; }
.ipp-commento__testo { font-family: var(--wp--preset--font-family--lettura); font-size: 17px; }
.ipp-commento__rispondi a { font-weight: 700; text-decoration: none; }
.wp-block-comment-template ol { padding-left: 24px; border-left: 3px solid var(--wp--preset--color--pietra-scura); }
.ipp-modulo-commenti input[type="text"], .ipp-modulo-commenti input[type="email"], .ipp-modulo-commenti input[type="url"], .ipp-modulo-commenti textarea { width: 100%; box-sizing: border-box; border: 1px solid #A9B0B6; border-radius: 4px; padding: 10px 12px; font: inherit; }
.ipp-modulo-commenti label { display: block; font-weight: 600; margin-bottom: 4px; }
.ipp-modulo-commenti input[type="checkbox"] { width: 20px; height: 20px; margin-right: 8px; vertical-align: middle; }
.ipp-modulo-commenti input[type="checkbox"] + label, .ipp-modulo-commenti label:has(input[type="checkbox"]) { display: inline; font-weight: 400; }
.ipp-modulo-commenti .form-submit input[type="submit"], .ipp-modulo-commenti .wp-block-button__link { background: var(--wp--preset--color--ruggine); color: var(--wp--preset--color--bianco); border: 0; border-radius: 4px; padding: 12px 24px; font-weight: 700; cursor: pointer; }

/* ---------- Piè di pagina ---------- */
.ipp-piede__colonne { display: flex; flex-wrap: wrap; gap: 40px; }
.ipp-piede__marchio { flex: 2 1 300px; }
.ipp-piede__marchio p { margin: 0 0 8px; }
.ipp-piede__titolo { font-family: var(--wp--preset--font-family--titoli); font-size: 30px; font-weight: 700; text-transform: uppercase; color: var(--wp--preset--color--bianco); }
.ipp-piede__menu { flex: 1 1 180px; display: flex; flex-direction: column; gap: 8px; }
.ipp-piede__intestazione { margin: 0 0 4px; color: var(--wp--preset--color--bianco); font-weight: 700; }
.ipp-piede a { color: var(--wp--preset--color--nebbia); text-decoration: none; }
.ipp-piede a:hover { color: var(--wp--preset--color--bianco); text-decoration: underline; }
.ipp-piede__fondo { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; margin-top: 28px; padding-top: 18px; border-top: 1px solid #454D55; font-size: 13px; }

/* ---------- Pagine successive della homepage ---------- */
.paged .ipp-solo-prima { display: none; }
.paged .ipp-due-colonne { margin-top: 0; }

/* ---------- Telefono ---------- */
@media (max-width: 700px) {
	.ipp-benvenuto__testo, .ipp-apertura__testo, .ipp-articolo { padding: 24px 20px; }
	.ipp-apertura__img { min-height: 240px; }
	.ipp-voce { flex-wrap: wrap !important; }
	.ipp-voce__media { flex: 1 1 100%; width: 100%; }
	.ipp-voce__titolo { font-size: 24px; }
	.ipp-articolo__testo .alignleft, .ipp-articolo__testo img.alignleft,
	.ipp-articolo__testo .alignright, .ipp-articolo__testo img.alignright { float: none; display: block; margin: 0 auto 1em; max-width: 100%; }
}

/* Didascalie delle immagini */
.ipp-articolo__testo figcaption, .ipp-articolo__testo .wp-element-caption { margin-top: 6px; font-family: var(--wp--preset--font-family--interfaccia); font-size: 14px; color: var(--wp--preset--color--testo-tenue); }

/* Rimando alle regole sopra il modulo dei commenti */
.ipp-regole-commenti { font-size: 15px; color: var(--wp--preset--color--testo-tenue); }

/* Pagina Archivio: elenchi di argomenti e anni */
.ipp-articolo__testo .ipp-elenco-archivio { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 4px 32px; font-family: var(--wp--preset--font-family--interfaccia); font-size: 18px; }
.ipp-articolo__testo .ipp-elenco-archivio li { margin: 0; padding: 6px 0; color: var(--wp--preset--color--testo-tenue); }
.ipp-articolo__testo .ipp-elenco-archivio a { font-weight: 600; text-decoration: none; }
.ipp-articolo__testo .ipp-cerca { margin: 16px 0 8px; }

/* Pulsante "Torna all'articolo" nella pagina delle regole */
.ipp-torna { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin: 0 0 24px; padding: 14px 16px; background: var(--wp--preset--color--pietra); border-radius: 6px; font-family: var(--wp--preset--font-family--interfaccia); }
.ipp-articolo__testo > .ipp-torna:last-child, .ipp-articolo__testo .ipp-torna:last-of-type { margin: 28px 0 0; }
.ipp-torna__link { display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border-radius: 4px; background: var(--wp--preset--color--ruggine); color: var(--wp--preset--color--bianco) !important; font-weight: 700; text-decoration: none !important; }
.ipp-torna__link:hover { background: var(--wp--preset--color--ardesia); }
.ipp-torna__titolo { font-size: 15px; color: var(--wp--preset--color--testo-tenue); }

/* Modulo contatti (Contact Form 7) */
.ipp-modulo-contatti, .wpcf7 { margin: 24px 0 32px; font-family: var(--wp--preset--font-family--interfaccia); }
.wpcf7 label { display: block; font-weight: 600; font-size: 17px; }
.wpcf7 p { margin: 0 0 18px; }
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 select, .wpcf7 textarea { width: 100%; box-sizing: border-box; margin-top: 6px; border: 1px solid #A9B0B6; border-radius: 4px; padding: 12px 14px; font: inherit; font-weight: 400; font-size: 17px; background: var(--wp--preset--color--bianco); }
.wpcf7 textarea { min-height: 180px; }
.wpcf7 .wpcf7-acceptance label { font-weight: 400; font-size: 16px; display: flex; gap: 10px; align-items: flex-start; }
.wpcf7 .wpcf7-acceptance input { width: 20px; height: 20px; margin-top: 3px; flex: none; }
.wpcf7 .wpcf7-list-item { margin: 0; }
.wpcf7 input[type="submit"] { min-height: 48px; padding: 0 28px; border: 0; border-radius: 4px; background: var(--wp--preset--color--ruggine); color: var(--wp--preset--color--bianco); font: inherit; font-weight: 700; font-size: 17px; cursor: pointer; }
.wpcf7 input[type="submit"]:hover { background: var(--wp--preset--color--ardesia); }
.wpcf7 input[type="submit"]:disabled { opacity: 0.6; cursor: not-allowed; }
.wpcf7-not-valid-tip { font-size: 15px; font-weight: 600; color: #A3271F; }
.wpcf7 form .wpcf7-response-output { margin: 18px 0 0; padding: 12px 16px; border-radius: 4px; font-size: 16px; }
.ipp-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.wpcf7 select { min-height: 50px; -webkit-appearance: none; appearance: none; padding-right: 44px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%232F363D' stroke-width='2'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; cursor: pointer; }

/* Testo piu' grande nei campi dei moduli (contatti e commenti) */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 select, .wpcf7 textarea,
.ipp-modulo-commenti input[type="text"], .ipp-modulo-commenti input[type="email"], .ipp-modulo-commenti input[type="url"], .ipp-modulo-commenti textarea,
.wp-block-post-comments-form textarea, .wp-block-post-comments-form input[type="text"], .wp-block-post-comments-form input[type="email"], .wp-block-post-comments-form input[type="url"] {
	font-family: var(--wp--preset--font-family--interfaccia) !important;
	font-size: 20px !important;
	line-height: 1.5 !important;
	color: var(--wp--preset--color--testo);
}
.wpcf7 select { font-family: var(--wp--preset--font-family--interfaccia) !important; }

/* Tutta la scheda dell'articolo e' cliccabile (la manina compare ovunque sulla scheda) */
.ipp-voce { position: relative; cursor: pointer; }
.ipp-voce__titolo a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.ipp-voce__categorie a, .ipp-voce__riassunto a, .ipp-voce__media a { position: relative; z-index: 2; }
.ipp-targa { z-index: 3; pointer-events: none; }
.ipp-voce:hover .ipp-voce__titolo a { color: var(--wp--preset--color--ruggine); }
.ipp-voce:hover .ipp-voce__media img { opacity: 0.92; }

/* "Continua a leggere" e numeri delle pagine piu' grandi */
.ipp-voce__riassunto .wp-block-post-excerpt__more-link { font-size: 18px !important; }
.ipp-paginazione { font-size: 20px; gap: 10px; }
.ipp-paginazione .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 8px; border-radius: 4px; box-sizing: border-box; }
.ipp-paginazione a.page-numbers:hover { background: var(--wp--preset--color--pietra-scura); }
.ipp-paginazione .page-numbers.current { padding: 0 8px; }
.ipp-paginazione .wp-block-query-pagination-previous, .ipp-paginazione .wp-block-query-pagination-next { font-size: 18px; font-weight: 700; }

/* Testata: tendina "Argomenti" e lente di ricerca */
.ipp-testata__comandi { gap: 8px 20px; }
.ipp-menu .wp-block-navigation__submenu-container { background: var(--wp--preset--color--ardesia) !important; border: 0 !important; border-top: 3px solid var(--wp--preset--color--ruggine) !important; border-radius: 0 0 6px 6px; padding: 8px 0 !important; min-width: 270px !important; box-shadow: 0 12px 28px rgba(0, 0, 0, 0.3); }
.ipp-menu .wp-block-navigation__submenu-container a { font-family: var(--wp--preset--font-family--interfaccia); text-transform: none; letter-spacing: 0; font-size: 17px; font-weight: 600; padding: 9px 20px !important; }
.ipp-menu .wp-block-navigation__submenu-container a:hover { background: var(--wp--preset--color--ardesia-media); text-decoration: none; }
.ipp-menu .wp-block-navigation__submenu-icon svg { stroke: var(--wp--preset--color--bianco); width: 14px; height: 14px; }
.ipp-cerca-testata { margin: 0; }
.ipp-cerca-testata .wp-block-search__button { background: transparent !important; border: 0; color: var(--wp--preset--color--bianco) !important; width: 44px; height: 44px; padding: 8px !important; margin: 0 !important; display: flex; align-items: center; justify-content: center; }
.ipp-cerca-testata .wp-block-search__button svg { width: 28px; height: 28px; fill: currentColor; }
.ipp-cerca-testata .wp-block-search__inside-wrapper { border: 0 !important; padding: 0 !important; }
.ipp-cerca-testata .wp-block-search__input { border: 0; border-radius: 4px; padding: 10px 14px; font-family: var(--wp--preset--font-family--interfaccia); font-size: 18px; min-width: 220px; }
/* Telefono: dentro il menu aperto le categorie sono gia' visibili */
.wp-block-navigation__responsive-container.is-menu-open .ipp-menu__argomenti .wp-block-navigation__submenu-container { box-shadow: none; border-top: 0 !important; padding: 0 0 0 12px !important; }

/* Negli elenchi anche le immagini piccole riempiono il riquadro (niente cornice grigia) */
.ipp-voce__media .wp-block-post-featured-image:has(img.ipp-piccola) { display: block; background: none; }
.ipp-voce__media .wp-block-post-featured-image:has(img.ipp-piccola) > a { display: block !important; height: 100%; }
.ipp-voce__media .wp-block-post-featured-image img.ipp-piccola { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none; object-fit: cover !important; box-shadow: none; }

/* Apertura con immagine piccola: niente riquadro grande, l'immagine sta accanto al testo come in un giornale */
.ipp-apertura__scheda:has(img.ipp-piccola) { align-items: center !important; }
.ipp-apertura__img:has(img.ipp-piccola) { flex: 0 0 auto !important; min-height: 0 !important; background: none !important; padding: 40px 0 40px 44px !important; display: block !important; }
.ipp-apertura__img:has(img.ipp-piccola) > a { display: block !important; width: auto; }
.ipp-apertura__img img.ipp-piccola { width: 320px !important; max-width: 100% !important; height: auto !important; max-height: none !important; border-radius: 6px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18); }
@media (max-width: 700px) { .ipp-apertura__img:has(img.ipp-piccola) { padding: 24px 20px 0 !important; } .ipp-apertura__img img.ipp-piccola { width: 100% !important; } }

/* Pagine legali */
.ipp-articolo__testo mark { background: #FFE58A; color: var(--wp--preset--color--testo); padding: 0 4px; border-radius: 3px; font-weight: 700; }
.ipp-articolo__testo code { font-size: 0.85em; background: var(--wp--preset--color--pietra); padding: 1px 5px; border-radius: 3px; }
.ipp-articolo__testo h3 { font-size: 24px; margin-top: 28px; }

/* ---------- Testo dei vecchi articoli (formattazioni del vecchio editor) ---------- */
/* Niente giustificato: creava buchi tra le parole */
.wp-block-post-content [style*="text-align: justify"], .wp-block-post-content [style*="text-align:justify"], .wp-block-post-content .has-text-align-justify { text-align: left !important; }
/* Niente rosso acceso: il testo torna del colore normale (il grassetto resta) */
.wp-block-post-content [style*="#ff0000"], .wp-block-post-content [style*="#FF0000"], .wp-block-post-content [style*="#f00;"], .wp-block-post-content [style*="color: red"], .wp-block-post-content [style*="color:red"], .wp-block-post-content [style*="rgb(255, 0, 0)"], .wp-block-post-content font[color="#ff0000"], .wp-block-post-content font[color="red"] { color: inherit !important; }
/* Sottolineato -> evidenziatore: non si confonde con i link */
.wp-block-post-content span[style*="underline"], .wp-block-post-content u { text-decoration: none !important; background: rgba(163, 66, 31, 0.13); border-radius: 3px; padding: 0.04em 0.12em; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.wp-block-post-content span[style*="underline"] span[style*="underline"], .wp-block-post-content span[style*="underline"] u, .wp-block-post-content u span[style*="underline"], .wp-block-post-content u u { background: none; padding: 0; }

/* ---------- Schede: argomenti principali + data per intero ---------- */
.ipp-voce__meta { gap: 0 !important; align-items: baseline; margin: 0; }
.ipp-voce__meta .wp-block-post-terms { margin: 0; }
.ipp-voce__meta .ipp-voce__data { margin: 0; font-family: var(--wp--preset--font-family--titoli); font-size: 16px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--testo-tenue); }
.ipp-voce__meta .ipp-voce__data::before { content: "·"; margin: 0 0.55em; }

/* ---------- Pagina dell'articolo: percorso, lettura, argomenti, condividi, leggi anche ---------- */
.ipp-percorso { margin: 0; font-family: var(--wp--preset--font-family--titoli); font-size: 17px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--wp--preset--color--testo-tenue); }
.ipp-percorso a { color: var(--wp--preset--color--ruggine); text-decoration: none; }
.ipp-percorso a:hover { text-decoration: underline; }
.ipp-percorso__sep { margin: 0 0.45em; }
.ipp-articolo__meta p { margin: 0; }
.ipp-lettura::before { content: "·"; margin-right: 14px; }
.ipp-articolo__argomenti { margin-top: 32px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.ipp-articolo__argomenti-etichetta { font-weight: 700; margin-right: 4px; }
.ipp-articolo__argomenti a { display: inline-block; font-family: var(--wp--preset--font-family--titoli); font-size: 16px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--wp--preset--color--ruggine); background: #F6EBE6; border-radius: 4px; padding: 5px 10px; text-decoration: none; }
.ipp-articolo__argomenti a:hover { background: var(--wp--preset--color--ruggine); color: var(--wp--preset--color--bianco); }
.ipp-condividi { box-sizing: border-box; margin-top: 22px; padding: 20px 22px; background: var(--wp--preset--color--pietra); border-radius: 6px; }
.ipp-condividi__titolo { margin: 0 0 12px !important; font-family: var(--wp--preset--font-family--titoli); font-size: 22px; font-weight: 700; color: var(--wp--preset--color--ardesia); }
.ipp-condividi__pulsanti { display: flex; flex-wrap: wrap; gap: 10px; }
.ipp-condividi__link { display: inline-flex; align-items: center; gap: 9px; min-height: 48px; padding: 0 20px; border: 0; border-radius: 24px; font-family: var(--wp--preset--font-family--interfaccia); font-size: 18px; font-weight: 700; color: var(--wp--preset--color--bianco) !important; text-decoration: none !important; cursor: pointer; transition: transform 0.15s, box-shadow 0.15s; }
.ipp-condividi__link:hover, .ipp-condividi__link:focus-visible { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18); }
.ipp-condividi__link svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ipp-condividi__link--whatsapp { background: #128C4B; }
.ipp-condividi__link--facebook { background: #1764D8; }
.ipp-condividi__link--email { background: var(--wp--preset--color--ardesia); }
.ipp-condividi__link--stampa { background: var(--wp--preset--color--bianco); color: var(--wp--preset--color--ardesia) !important; box-shadow: inset 0 0 0 2px var(--wp--preset--color--ardesia); }
.ipp-leggi { margin-top: 40px; }
.ipp-leggi__titolo { margin: 0 0 14px; font-size: 28px; text-transform: uppercase; letter-spacing: 0.03em; border-bottom: 4px solid var(--wp--preset--color--ardesia); padding-bottom: 6px; }
.ipp-leggi__griglia { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 18px; }
.ipp-leggi__voce { display: flex; flex-direction: column; gap: 6px; text-decoration: none !important; color: inherit; }
.ipp-leggi__img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; display: block; }
.ipp-leggi__img--vuota { background: var(--wp--preset--color--ardesia) url("assets/images/favicon.svg") center / 34% no-repeat; }
.ipp-leggi__meta { font-family: var(--wp--preset--font-family--titoli); font-size: 14px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; color: var(--wp--preset--color--ruggine); }
.ipp-leggi__meta span { color: var(--wp--preset--color--testo-tenue); }
.ipp-leggi__nome { font-family: var(--wp--preset--font-family--titoli); font-size: 20px; font-weight: 700; line-height: 1.12; color: var(--wp--preset--color--ardesia); }
.ipp-leggi__voce:hover .ipp-leggi__nome { color: var(--wp--preset--color--ruggine); }
.ipp-commenti { margin-top: 44px; padding-top: 30px; border-top: 1px solid var(--wp--preset--color--pietra-scura); }
.ipp-stampa-testata, .ipp-stampa-fonte { display: none; }

/* ---------- Stampa: solo l'articolo, con l'intestazione del blog ---------- */
@media print {
	@page { margin: 18mm 16mm; }
	body, .ipp-principale, .ipp-articolo { background: #fff !important; color: #000 !important; }
	.ipp-parte-testata, .ipp-parte-colonna, .ipp-parte-piede, .ipp-torna-su, .ipp-commenti, .ipp-condividi, .ipp-leggi, .ipp-articolo__argomenti, .ipp-percorso, .skip-link, #wpadminbar { display: none !important; }
	.ipp-principale { padding: 0 !important; }
	.ipp-due-colonne { display: block !important; }
	.ipp-articolo { padding: 0 !important; border-radius: 0; box-shadow: none; max-width: none; }
	.ipp-articolo > * { max-width: none !important; }
	.ipp-stampa-testata { display: flex !important; align-items: center; gap: 14px; padding-bottom: 10px; margin-bottom: 18px; border-bottom: 3px solid #2F363D; }
	.ipp-stampa-testata img { width: 60px; height: 60px; border-radius: 50%; }
	.ipp-stampa-testata strong { display: block; font-family: var(--wp--preset--font-family--titoli); font-size: 26pt; text-transform: uppercase; color: #2F363D; line-height: 1; }
	.ipp-stampa-testata span { color: #A3421F; font-size: 11pt; }
	.ipp-articolo__titolo { font-size: 26pt !important; }
	.ipp-articolo__testo { font-size: 12pt; line-height: 1.5; }
	.ipp-articolo__testo a { color: #000; text-decoration: underline; }
	.ipp-articolo__testo img { max-width: 60% !important; break-inside: avoid; }
	.ipp-stampa-fonte { display: block !important; margin-top: 24px; padding-top: 8px; border-top: 1px solid #999; font-size: 9pt; color: #444; }
}

/* ---------- Colonna destra: riquadro Facebook e parte che segue lo scorrimento ---------- */
.ipp-box--facebook { border-top: 5px solid #1764D8; }
.ipp-box--facebook p { margin: 0 0 14px; font-size: 18px; line-height: 1.45; color: var(--wp--preset--color--testo-tenue); }
.ipp-pulsante-fb { display: inline-flex; align-items: center; gap: 9px; min-height: 46px; padding: 0 20px; border-radius: 23px; background: #1764D8; color: var(--wp--preset--color--bianco) !important; font-weight: 700; font-size: 17px; text-decoration: none !important; }
.ipp-pulsante-fb:hover { background: #0F4FAF; }
.ipp-pulsante-fb svg, .ipp-piede__facebook svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ipp-colonna__fissa { width: 100%; }
@media (min-width: 1000px) {
	.ipp-parte-colonna { align-self: stretch; }
	.ipp-parte-colonna > .ipp-colonna { height: 100%; }
	.ipp-colonna__fissa { position: sticky; top: 100px; }
}

/* ---------- Home: Sfoglia per argomento ---------- */
.ipp-sfoglia { margin: 56px 0 0; }
.ipp-sfoglia__griglia { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 14px; }
.ipp-sfoglia__voce { position: relative; display: flex; flex-direction: column; justify-content: flex-end; aspect-ratio: 4 / 3; border-radius: 6px; overflow: hidden; text-decoration: none !important; color: var(--wp--preset--color--bianco) !important; background: var(--wp--preset--color--ardesia) center / cover no-repeat; }
.ipp-sfoglia__voce::before { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(31, 36, 41, 0.92) 0%, rgba(31, 36, 41, 0.45) 45%, rgba(31, 36, 41, 0.05) 75%); transition: background 0.2s; }
.ipp-sfoglia__voce:hover::before, .ipp-sfoglia__voce:focus-visible::before { background: linear-gradient(to top, rgba(163, 66, 31, 0.92) 0%, rgba(163, 66, 31, 0.4) 55%, rgba(163, 66, 31, 0.05) 85%); }
.ipp-sfoglia__voce span { position: relative; padding: 0 16px; }
.ipp-sfoglia__nome { font-family: var(--wp--preset--font-family--titoli); font-size: 25px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; line-height: 1; }
.ipp-sfoglia__numero { margin-top: 4px; padding-bottom: 14px !important; font-size: 15px; color: #E5E7E9; }
.ipp-sfoglia__voce--vuota { background-image: url("assets/images/favicon.svg"); background-size: 42%; background-position: center 30%; }

/* ---------- Piè di pagina: logo, motto, Facebook ---------- */
.ipp-piede__logo { display: flex; align-items: center; gap: 16px; margin-bottom: 14px; }
.ipp-piede__logo img { width: 64px; height: 64px; border-radius: 50%; box-shadow: 0 0 0 3px var(--wp--preset--color--pietra); }
.ipp-piede__logo .ipp-piede__titolo { margin: 0; }
.ipp-piede__motto { margin: 2px 0 0 !important; color: #E9B49B; }
.ipp-piede__facebook { display: inline-flex !important; align-items: center; gap: 8px; margin-top: 6px; padding: 8px 16px; border-radius: 20px; background: #1764D8; color: var(--wp--preset--color--bianco) !important; font-weight: 700; text-decoration: none !important; }
.ipp-piede__facebook:hover { background: #0F4FAF; }

/* ---------- Pulsante "Torna su" ---------- */
.ipp-torna-su { position: fixed; right: 22px; bottom: 22px; z-index: 90; display: inline-flex; align-items: center; gap: 8px; min-height: 50px; padding: 0 20px; border: 0; border-radius: 25px; background: var(--wp--preset--color--ardesia); color: var(--wp--preset--color--bianco); font-family: var(--wp--preset--font-family--interfaccia); font-size: 17px; font-weight: 700; box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25); cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity 0.25s, transform 0.25s, visibility 0.25s; }
.ipp-mostra-su .ipp-torna-su { opacity: 1; visibility: visible; transform: none; }
.ipp-torna-su:hover { background: var(--wp--preset--color--ruggine); }
.ipp-torna-su svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 600px) { .ipp-torna-su { right: 14px; bottom: 14px; padding: 0 16px; } }

/* ---------- Immagine di riserva (articoli senza foto) ---------- */
.ipp-immagine-riserva { position: relative; margin: 0; height: 100%; min-height: 180px; border-radius: 4px; overflow: hidden; background: var(--wp--preset--color--ardesia) url("assets/images/favicon.svg") center 38% / 30% no-repeat; }
.ipp-immagine-riserva a { position: absolute; inset: 0; }
.ipp-immagine-riserva::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 22px; background-color: #454D55; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='26'%3E%3Crect width='40' height='26' fill='%23454D55'/%3E%3Cpath d='M0 0H40V14Q20 26 0 14Z' fill='%2359626B'/%3E%3Cpath d='M0 14Q20 26 40 14' fill='none' stroke='%232F363D' stroke-width='1.5'/%3E%3C/svg%3E"); background-size: 30px 20px; background-repeat: repeat-x; pointer-events: none; }

/* ---------- Schede: effetto al passaggio del mouse ---------- */
.ipp-voce__media { overflow: hidden; border-radius: 4px; }
.ipp-voce__media img { transition: transform 0.35s ease; }
.ipp-voce:hover .ipp-voce__media img { transform: scale(1.05); }
.ipp-voce:hover .ipp-voce__titolo a { color: var(--wp--preset--color--ruggine); }
@media (prefers-reduced-motion: reduce) { .ipp-voce__media img, .ipp-torna-su, .ipp-sfoglia__voce::before { transition: none; } }
@media (max-width: 600px) {
	.ipp-sfoglia__griglia { grid-template-columns: 1fr 1fr; gap: 10px; }
	.ipp-sfoglia__voce { aspect-ratio: 1 / 1; }
	.ipp-sfoglia__nome { font-size: 19px; }
	.ipp-sfoglia__voce span { padding: 0 10px; }
	.ipp-sfoglia__numero { font-size: 13px; padding-bottom: 10px !important; }
}
