/*
Theme Name: Bimby Ricettario
Theme URI: https://www.bimbyricettario.it
Author: Bimby Ricettario
Description: Tema a blocchi per un ricettario Bimby: scheda ricetta in una colonna con velocità, temperatura e tempo evidenziati, spazi pubblicitari per paragrafo e per H2, codici in header e footer, canali Telegram e WhatsApp, menu automatico con le categorie. Le impostazioni sono in Aspetto > Impostazioni tema; colori e font in Aspetto > Editor > Stili.
Version: 1.1.8
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: bimbyricettario
*/

/* ==========================================================
   Variabili brevi
   ========================================================== */
:root {
	--b-base: var(--wp--preset--color--base);
	--b-paper: var(--wp--preset--color--paper);
	--b-surface: var(--wp--preset--color--surface);
	--b-ink: var(--wp--preset--color--ink);
	--b-muted: var(--wp--preset--color--muted);
	--b-petrol: var(--wp--preset--color--petrol);
	--b-petrol-dark: var(--wp--preset--color--petrol-dark);
	--b-saffron: var(--wp--preset--color--saffron);
	--b-saffron-soft: var(--wp--preset--color--saffron-soft);
	--b-line: var(--wp--preset--color--line);
	--b-logo: var(--wp--preset--color--logo);
	--b-logo-soft: var(--wp--preset--color--logo-soft);
	--b-heading: var(--wp--preset--font-family--heading);
	--b-r: 14px;
	--b-r-lg: 22px;
	--b-ombra: 0 1px 2px rgba(14, 65, 39, .06), 0 10px 28px rgba(14, 65, 39, .08);
	--b-wa: #1A8F5A;
	--b-pin: #D50C22;
}

img { max-width: 100%; height: auto; }

/* La pagina non si sposta mai a destra e sinistra (anche con annunci troppo larghi) */
html, body { overflow-x: hidden; }
@supports (overflow: clip) { html, body { overflow-x: clip; } }
.bmr-spazio iframe, .bmr-spazio ins, .bmr-testo iframe { max-width: 100%; }

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0;
	position: absolute !important; width: 1px; word-wrap: normal !important;
}

:where(a, button, input, summary):focus-visible {
	outline: 3px solid var(--b-saffron);
	outline-offset: 3px;
	border-radius: 6px;
}

.bmr-icona { width: 1.25em; height: 1.25em; flex: none; }

/* ==========================================================
   Header
   ========================================================== */
.bmr-header { margin: 0; }
.bmr-header > * { margin-block: 0; }

.bmr-topbar {
	background: var(--b-petrol-dark);
	color: #DDEEE2;
	font-size: .82rem;
	padding-block: .45rem;
}
.bmr-topbar__in {
	display: flex; align-items: center; justify-content: space-between; gap: 1rem;
}
.bmr-topbar__testo { margin: 0; display: flex; align-items: center; gap: .5rem; }
.bmr-topbar__testo .bmr-icona { color: var(--b-saffron); }
.bmr-topbar__canali { display: flex; gap: .4rem; }
.bmr-topbar__canali a {
	display: inline-flex; align-items: center; gap: .35rem;
	color: #fff; text-decoration: none; font-weight: 600;
	padding: .2rem .7rem; border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, .22);
}
.bmr-topbar__canali a:hover { background: rgba(255, 255, 255, .12); color: #fff; }
.bmr-topbar__canali .bmr-icona { width: 1.05em; height: 1.05em; }

@media (max-width: 640px) {
	.bmr-topbar__testo { display: none; }
	.bmr-topbar__in { justify-content: center; }
}

.bmr-testata {
	background: var(--b-paper);
	border-bottom: 1px solid var(--b-line);
	padding-block: .7rem;
}
.bmr-testata__in { gap: 1rem; }
.bmr-marchio { gap: .6rem; min-width: 0; }
.bmr-marchio .wp-block-site-logo,
.bmr-marchio .wp-block-site-logo a { display: block; line-height: 0; }
.bmr-marchio .wp-block-site-logo img {
	height: var(--bmr-logo-pc, 110px) !important; width: auto !important;
	max-width: min(460px, 42vw) !important; object-fit: contain;
}
.bmr-marchio:has(.wp-block-site-logo img) .wp-block-site-title { display: none; }
.bmr-marchio .wp-block-site-title {
	margin: 0; font-family: var(--b-heading); font-weight: 800;
	font-size: clamp(1.25rem, 3.5vw, 1.6rem); letter-spacing: -.02em; line-height: 1.1;
}
.bmr-marchio .wp-block-site-title a { color: var(--b-petrol-dark); text-decoration: none; }
.bmr-marchio .wp-block-site-title a::after {
	content: ""; display: inline-block; width: .38em; height: .38em; margin-left: .12em;
	border-radius: 50%; background: var(--b-saffron); vertical-align: baseline;
}
@media (max-width: 781px) {
	.bmr-marchio .wp-block-site-logo img { height: var(--bmr-logo-tel, 72px) !important; max-width: 62vw !important; }
}

.bmr-azioni { gap: .5rem 1.4rem; }
.bmr-testata__in > .bmr-azioni { flex: 1 1 auto; }

/* Lente e ricerca al centro */
.bmr-lente {
	width: 42px; height: 42px; border-radius: 50%; border: 0; cursor: pointer;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--b-saffron); color: var(--b-petrol-dark);
	transition: transform .15s ease;
}
.bmr-lente:hover { transform: scale(1.06); }
.bmr-lente .bmr-icona { width: 22px; height: 22px; }

.bmr-cerca-interruttore { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.bmr-lente { flex: none; }
.bmr-cerca-velo {
	display: none;
	position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 100000;
	align-items: center; justify-content: center; padding: 1rem; box-sizing: border-box;
}
.bmr-cerca-interruttore:checked ~ .bmr-cerca-velo { display: flex; }
.bmr-cerca-sfondo {
	position: absolute; inset: 0; cursor: pointer;
	background: rgba(14, 65, 39, .6); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px);
}
.bmr-cerca {
	position: relative; width: 100%; max-width: 620px; box-sizing: border-box;
	border-radius: var(--b-r-lg);
	padding: clamp(1.25rem, 4vw, 2rem);
	background: var(--b-paper); color: var(--b-ink);
	box-shadow: 0 30px 80px rgba(14, 65, 39, .35);
	animation: bmr-compari .18s ease-out;
}
@keyframes bmr-compari { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: none; } }
/* Sul telefono la finestra sta un po' più in alto, così la tastiera non la copre */
@media (max-width: 781px) {
	.bmr-cerca-velo { align-items: flex-start; padding-top: 22vh; }
}
html.bmr-cerca-aperta, html.bmr-cerca-aperta body { overflow: hidden; }
.bmr-cerca__titolo {
	margin: 0 0 1rem; font-family: var(--b-heading); font-weight: 800;
	font-size: clamp(1.35rem, 4vw, 1.75rem); text-align: center;
}
.bmr-cerca__riga {
	display: flex; align-items: center; gap: .5rem;
	border: 2px solid var(--b-petrol); border-radius: 999px; padding: .3rem .3rem .3rem 1rem;
	background: var(--b-base);
}
.bmr-cerca__riga > .bmr-icona { color: var(--b-petrol); }
.bmr-cerca__riga input {
	flex: 1; min-width: 0; border: 0; background: transparent;
	font-size: 1.05rem; padding: .55rem .2rem; color: var(--b-ink);
}
.bmr-cerca__riga input:focus { outline: none; }
.bmr-cerca__vai {
	border: 0; border-radius: 999px; background: var(--b-petrol); color: #fff;
	font-weight: 700; padding: .65rem 1.2rem; cursor: pointer;
}
.bmr-cerca__vai:hover { background: var(--b-petrol-dark); }
.bmr-cerca__chiudi {
	position: absolute; top: .6rem; right: .6rem;
	width: 38px; height: 38px; border-radius: 50%; border: 0; cursor: pointer;
	background: var(--b-surface); color: var(--b-ink);
	display: inline-flex; align-items: center; justify-content: center;
}

/* ==========================================================
   Struttura
   ========================================================== */
.bmr-main { padding-block: clamp(1.5rem, 4vw, 3rem) clamp(2.5rem, 6vw, 4.5rem); }
.bmr-main > * { margin-block-start: 0; }

/* ==========================================================
   Sezioni della home
   ========================================================== */
.bmr-sez { margin-block: clamp(2.5rem, 6vw, 4rem) 0; }
.bmr-sez--hero { margin-top: 0; }

.bmr-sez__testa {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .8rem 1rem;
	margin-bottom: 1.25rem;
}
.bmr-sez__titolo {
	display: flex; align-items: center; gap: .7rem; margin: 0;
	font-size: clamp(1.4rem, 3.4vw, 1.9rem);
}
.bmr-sez__icona {
	width: 44px; height: 44px; flex: none; border-radius: 14px;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--b-saffron-soft); color: var(--b-petrol);
	transform: rotate(-4deg);
}
.bmr-sez__icona .bmr-icona { width: 24px; height: 24px; transform: rotate(4deg); }

.bmr-vedi {
	display: inline-flex; align-items: center; gap: .35rem; flex: none;
	border: 1.5px solid var(--b-petrol); border-radius: 999px;
	padding: .4rem .9rem; font-size: .88rem; font-weight: 700;
	color: var(--b-petrol); text-decoration: none; white-space: nowrap;
	transition: background .15s ease, color .15s ease;
}
.bmr-vedi .bmr-icona { width: 16px; height: 16px; }
.bmr-vedi:hover { background: var(--b-petrol); color: #fff; }

/* Scheda generica */
.bmr-scheda { position: relative; min-width: 0; }
.bmr-scheda__img { display: block; position: relative; overflow: hidden; border-radius: var(--b-r); background: var(--b-surface); }
.bmr-scheda__img img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.bmr-scheda:hover .bmr-scheda__img img { transform: scale(1.04); }
.bmr-scheda__vuota { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; color: var(--b-petrol); }
.bmr-scheda__vuota .bmr-icona { width: 40%; height: 40%; opacity: .35; }
.bmr-scheda__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .7rem; margin-bottom: .4rem; }
.bmr-scheda__cat {
	font-size: .72rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
	color: var(--b-petrol-dark); background: var(--b-saffron-soft);
	padding: .2rem .55rem; border-radius: 6px;
}
.bmr-tempo {
	display: inline-flex; align-items: center; gap: .3rem;
	font-size: .85rem; color: var(--b-muted); font-weight: 600;
}
.bmr-tempo .bmr-icona { width: 16px; height: 16px; color: var(--b-petrol); }
.bmr-scheda__titolo { margin: 0; font-size: 1.12rem; line-height: 1.25; font-weight: 700; }
.bmr-scheda__titolo a { color: var(--b-ink); text-decoration: none; }
.bmr-scheda__titolo a:hover { color: var(--b-petrol); }
/* Tutta la scheda cliccabile */
.bmr-scheda__titolo a::after { content: ""; position: absolute; inset: 0; z-index: 1; }

/* Ricetta in evidenza (hero) */
.bmr-scheda--hero .bmr-scheda__img { border-radius: var(--b-r-lg); aspect-ratio: 4 / 3; }
.bmr-scheda--hero .bmr-scheda__testo {
	position: relative; z-index: 2;
	background: var(--b-paper); border-radius: 18px; box-shadow: var(--b-ombra);
	padding: 1.2rem 1.25rem 1.3rem;
	margin: -3.25rem .75rem 0;
}
.bmr-scheda--hero .bmr-scheda__titolo { font-size: clamp(1.6rem, 5vw, 2.6rem); line-height: 1.08; font-weight: 800; }
.bmr-scheda__estratto { margin: .7rem 0 0; color: var(--b-muted); font-size: 1rem; line-height: 1.55; }
.bmr-scheda__vai {
	position: relative; z-index: 2;
	display: inline-flex; align-items: center; gap: .4rem; margin-top: .9rem;
	font-weight: 700; color: var(--b-petrol); text-decoration: none;
}
.bmr-scheda__vai .bmr-icona { width: 18px; height: 18px; }
@media (min-width: 782px) {
	.bmr-scheda--hero .bmr-scheda__img { aspect-ratio: 21 / 10; }
	.bmr-scheda--hero .bmr-scheda__testo {
		position: absolute; left: 2rem; bottom: 2rem; margin: 0;
		max-width: min(540px, 50%); padding: 1.6rem 1.8rem 1.7rem;
	}
	.bmr-scheda--hero .bmr-scheda__titolo { font-size: clamp(1.8rem, 3vw, 2.5rem); }
}

/* Lista compatta (Ultime ricette) */
.bmr-elenco--lista { display: grid; gap: 0; }
.bmr-scheda--lista {
	display: grid; grid-template-columns: 96px 1fr; gap: 1rem; align-items: center;
	padding-block: .85rem; border-bottom: 1px solid var(--b-line);
}
.bmr-scheda--lista:first-child { padding-top: 0; }
.bmr-scheda--lista .bmr-scheda__img { aspect-ratio: 1; border-radius: 12px; }
@media (min-width: 782px) {
	.bmr-elenco--lista { grid-template-columns: repeat(2, 1fr); column-gap: 2.5rem; }
	.bmr-scheda--lista { grid-template-columns: 120px 1fr; }
	.bmr-scheda--lista:nth-child(2) { padding-top: 0; }
	.bmr-scheda--lista .bmr-scheda__titolo { font-size: 1.2rem; }
}

/* Carosello (Le più lette) */
.bmr-elenco--carosello {
	display: grid; grid-auto-flow: column; grid-auto-columns: 68%;
	gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory;
	padding-bottom: .6rem; overscroll-behavior-x: contain;
	scrollbar-width: thin;
}
.bmr-scheda--carosello { scroll-snap-align: start; }
.bmr-scheda--carosello .bmr-scheda__img { aspect-ratio: 4 / 5; }
.bmr-scheda--carosello .bmr-scheda__testo { padding-top: .75rem; }
.bmr-scheda__num {
	position: absolute; left: .7rem; bottom: .55rem;
	font-family: var(--b-heading); font-weight: 800; font-size: 3.4rem; line-height: 1;
	color: #fff; -webkit-text-stroke: 2px var(--b-saffron);
	text-shadow: 0 2px 14px rgba(0, 0, 0, .35);
}
@media (min-width: 782px) {
	.bmr-elenco--carosello {
		grid-auto-flow: row; grid-template-columns: repeat(4, 1fr); grid-auto-columns: auto;
		overflow: visible; margin-inline: 0; padding-inline: 0; gap: 1.6rem 1.4rem;
	}
}

/* Mosaico (Di stagione): foto quadrate con titolo sopra */
.bmr-elenco--mosaico { display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem; }
.bmr-scheda--mosaico .bmr-scheda__img { aspect-ratio: 1; border-radius: 18px; }
.bmr-scheda--mosaico .bmr-scheda__img::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(14, 65, 39, 0) 35%, rgba(14, 65, 39, .88) 100%);
}
.bmr-scheda--mosaico .bmr-scheda__testo {
	position: absolute; left: 0; right: 0; bottom: 0; padding: .8rem .85rem; z-index: 1;
	pointer-events: none;
}
.bmr-scheda--mosaico .bmr-scheda__titolo { font-size: 1rem; }
.bmr-scheda--mosaico .bmr-scheda__titolo a { color: #fff; pointer-events: auto; }
.bmr-scheda--mosaico .bmr-scheda__meta .bmr-tempo { color: #F3E7D3; }
.bmr-scheda--mosaico .bmr-scheda__meta .bmr-tempo .bmr-icona { color: var(--b-saffron); }
.bmr-scheda--mosaico .bmr-scheda__cat { display: none; }
@media (min-width: 782px) {
	.bmr-elenco--mosaico { grid-template-columns: repeat(4, 1fr); gap: 1.2rem; }
	.bmr-scheda--mosaico .bmr-scheda__titolo { font-size: 1.2rem; }
	.bmr-scheda--mosaico .bmr-scheda__testo { padding: 1.1rem 1.2rem; }
}

/* Griglia (correlate, 404) */
.bmr-elenco--griglia { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.4rem 1rem; }
.bmr-scheda--griglia .bmr-scheda__img { aspect-ratio: 4 / 3; }
.bmr-scheda--griglia .bmr-scheda__testo { padding-top: .7rem; }
.bmr-scheda--griglia .bmr-scheda__titolo { font-size: 1rem; }
@media (min-width: 782px) {
	.bmr-elenco--griglia { grid-template-columns: repeat(4, 1fr); gap: 1.8rem 1.4rem; }
	.bmr-scheda--griglia .bmr-scheda__titolo { font-size: 1.12rem; }
}

/* Categorie */
.bmr-cats { display: grid; grid-template-columns: repeat(2, 1fr); gap: .7rem; }
.bmr-cat {
	display: grid; grid-template-columns: 52px 1fr; grid-template-rows: auto auto; column-gap: .7rem;
	align-items: center; padding: .6rem; border-radius: var(--b-r);
	background: var(--b-paper); border: 1px solid var(--b-line);
	text-decoration: none; color: var(--b-ink);
	transition: border-color .15s ease, transform .15s ease;
}
.bmr-cat:hover { border-color: var(--b-petrol); transform: translateY(-2px); color: var(--b-ink); }
.bmr-cat__img {
	grid-row: 1 / 3; width: 52px; height: 52px; border-radius: 50%; overflow: hidden;
	background: var(--b-saffron-soft); color: var(--b-petrol);
	display: flex; align-items: center; justify-content: center;
}
.bmr-cat__img img { width: 100%; height: 100%; object-fit: cover; }
.bmr-cat__nome { font-family: var(--b-heading); font-weight: 700; font-size: .98rem; line-height: 1.2; align-self: end; }
.bmr-cat__num { font-size: .78rem; color: var(--b-muted); align-self: start; }
@media (min-width: 782px) {
	.bmr-cats { grid-template-columns: repeat(4, 1fr); gap: 1rem; }
	.bmr-cat { grid-template-columns: 64px 1fr; padding: .8rem; }
	.bmr-cat__img { width: 64px; height: 64px; }
	.bmr-cat__nome { font-size: 1.08rem; }
}

/* ==========================================================
   Riquadro canali (centrato)
   ========================================================== */
.bmr-canali {
	position: relative; text-align: center;
	background: var(--b-petrol); color: #E3F2E7;
	border-radius: var(--b-r-lg);
	padding: 2.4rem clamp(1rem, 4vw, 2rem) 1.6rem;
	margin: 3.2rem auto 1.5rem;
	max-width: 760px;
	background-image: radial-gradient(circle at 100% 0%, rgba(242, 169, 59, .22), transparent 45%);
}
.bmr-canali__icona {
	position: absolute; top: -26px; left: 50%; transform: translateX(-50%);
	width: 52px; height: 52px; border-radius: 50%;
	background: var(--b-saffron); color: var(--b-petrol-dark);
	display: flex; align-items: center; justify-content: center;
	box-shadow: 0 0 0 6px var(--b-base);
}
.bmr-canali__icona .bmr-icona { width: 26px; height: 26px; }
.bmr-canali__titolo { margin: 0; font-family: var(--b-heading); font-weight: 800; font-size: clamp(1.25rem, 3.5vw, 1.55rem); color: #fff; line-height: 1.2; }
.bmr-canali__testo { margin: .4rem auto 0; max-width: 46ch; font-size: .95rem; line-height: 1.5; }
.bmr-canali__pulsanti { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem; margin-top: 1.1rem; }
.bmr-canali__btn {
	display: inline-flex; align-items: center; gap: .45rem;
	background: #fff; color: var(--b-petrol-dark); text-decoration: none;
	font-weight: 700; font-size: .95rem; padding: .6rem 1.1rem; border-radius: 999px;
	transition: transform .15s ease;
}
.bmr-canali__btn:hover { transform: translateY(-2px); color: var(--b-petrol-dark); }
.bmr-canali__btn--whatsapp .bmr-icona { color: var(--b-wa); }
.bmr-canali__btn--telegram .bmr-icona { color: #1C8ADB; }
.bmr-canali__btn--posta .bmr-icona { color: #C27700; }
.bmr-canali--home { max-width: 1240px; margin-top: clamp(3rem, 6vw, 4rem); }

/* ==========================================================
   Spazi pubblicitari
   ========================================================== */
.bmr-spazio { clear: both; margin-block: 1.6rem; text-align: center; }
.bmr-spazio:empty { display: none; }
.bmr-spazio--video {
	background: transparent; max-width: 336px; margin: 1.2rem auto !important; line-height: 0;
}
.bmr-spazio--video > * { margin: 0 auto !important; }
.bmr-spazio--inrscroller { margin: 1.6rem 0; }
.bmr-spazio--home-1, .bmr-spazio--home-2, .bmr-spazio--home-3 { margin-block: 2rem 0; }
@media (min-width: 782px) { .bmr-solo-mobile { display: none !important; } }
@media (max-width: 781px) { .bmr-solo-desktop { display: none !important; } }

/* ==========================================================
   Articolo
   ========================================================== */
.bmr-briciole { font-size: .84rem; color: var(--b-muted); margin-bottom: 1rem; }
.bmr-briciole p { margin: 0; }
.bmr-briciole a { color: var(--b-muted); }

.bmr-articolo__testa { margin-bottom: 1.2rem; }
.bmr-articolo__testa > * { margin-block: 0; }
.bmr-etichette { display: flex; flex-wrap: wrap; gap: .4rem; font-size: 0; }
.bmr-etichette a {
	font-size: .74rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
	color: var(--b-petrol-dark); background: var(--b-saffron-soft);
	padding: .28rem .65rem; border-radius: 6px; text-decoration: none;
}
.bmr-etichette .wp-block-post-terms__separator { display: none; }
.bmr-articolo__titolo { margin-top: .7rem !important; font-size: clamp(1.9rem, 5.5vw, 2.9rem); line-height: 1.08; }
.bmr-articolo__meta { gap: .3rem 1rem; margin-top: .9rem !important; font-size: .9rem; color: var(--b-muted); }
.bmr-articolo__meta > * { margin: 0; }
.bmr-articolo__meta .wp-block-post-author-name { font-weight: 700; color: var(--b-ink); }
.bmr-articolo__foto img { border-radius: var(--b-r-lg); width: 100%; }

/* Testo dell'articolo */
.bmr-testo > h2 {
	margin-top: 2.4em; padding-top: .6em; position: relative;
	font-size: clamp(1.45rem, 3.8vw, 1.85rem);
}
.bmr-testo > h2::before {
	content: ""; position: absolute; top: 0; left: 0; width: 44px; height: 5px;
	border-radius: 3px; background: var(--b-saffron);
}
.bmr-testo > h3 { color: var(--b-petrol-dark); margin-top: 1.8em; }
.bmr-testo a:not(.wp-element-button):not([class*="wprm"]) {
	text-decoration-thickness: 2px; text-underline-offset: 3px;
	text-decoration-color: var(--b-saffron);
}
.bmr-testo > ul li::marker { color: var(--b-saffron); }
.bmr-testo > ol li::marker { color: var(--b-petrol); font-weight: 700; }
.bmr-testo img { border-radius: var(--b-r); }
.bmr-testo .wp-block-table table { border-collapse: collapse; width: 100%; }
.bmr-testo .wp-block-table td, .bmr-testo .wp-block-table th { border: 1px solid var(--b-line); padding: .55rem .7rem; }

.bmr-disclaimer {
	margin-top: 2.4rem; padding-top: 1rem; border-top: 1px dashed var(--b-line);
	font-size: .82rem; line-height: 1.55; color: var(--b-muted);
}
.bmr-disclaimer p { margin: 0 0 .4rem; }

/* Condivisione */
.bmr-condividi { text-align: center; margin: 1.8rem 0; }
.bmr-condividi__titolo { margin: 0 0 .7rem; font-family: var(--b-heading); font-weight: 700; font-size: 1.1rem; }
.bmr-condividi__pulsanti { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem; }
.bmr-condividi__btn {
	display: inline-flex; align-items: center; gap: .45rem;
	color: #fff !important; text-decoration: none !important; font-weight: 700;
	padding: .65rem 1.15rem; border-radius: 999px;
}
.bmr-condividi__btn--pinterest { background: var(--b-pin); }
.bmr-condividi__btn--whatsapp { background: var(--b-wa); }
.bmr-condividi__btn:hover { filter: brightness(.92); }

/* Commenti */
.bmr-commenti { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid var(--b-line); }
.bmr-commento { padding: 1rem 0; border-bottom: 1px solid var(--b-line); }
.bmr-commento .wp-block-avatar img { border-radius: 50%; }
.bmr-commento .wp-block-comment-author-name { font-weight: 700; }
.bmr-commento .wp-block-comment-date { font-size: .8rem; color: var(--b-muted); }
.bmr-commento .wp-block-comment-date a { color: inherit; }
.bmr-commenti textarea, .bmr-commenti input[type="text"], .bmr-commenti input[type="email"], .bmr-commenti input[type="url"] {
	width: 100%; border: 1.5px solid var(--b-line); border-radius: 12px; padding: .7rem .8rem; background: var(--b-paper); font: inherit;
}
.bmr-commenti .wp-block-post-comments-form input[type="submit"] {
	background: var(--b-petrol); color: #fff; border: 0; border-radius: 999px; padding: .75rem 1.5rem; font-weight: 700; cursor: pointer;
}

/* ==========================================================
   Scheda ricetta WP Recipe Maker — una colonna, stile del tema
   ========================================================== */
.wprm-recipe-container { max-width: 100%; margin-block: 2.5rem; }
.wprm-recipe-jump, .wprm-recipe-jump-video, .wprm-recipe-jump-to-comments { display: none !important; }

.bmr-testo .wprm-recipe {
	background: var(--b-paper) !important;
	border: 1px solid var(--b-line) !important;
	border-top: 6px solid var(--wp--preset--color--logo-dark) !important;
	border-radius: var(--b-r-lg) !important;
	box-shadow: var(--b-ombra) !important;
	padding: clamp(1.1rem, 4vw, 2rem) !important;
	max-width: 100% !important;
	color: var(--b-ink);
	font-family: inherit;
}

/* Tutto in una colonna: niente colonne affiancate (le pubblicità restano ferme) */
.bmr-testo .wprm-recipe .wprm-layout-column-container,
.bmr-testo .wprm-recipe .wprm-container-columns-spaced,
.bmr-testo .wprm-recipe .wprm-container-columns-spaced-middle,
.bmr-testo .wprm-recipe .wprm-container-columns {
	display: block !important;
}
.bmr-testo .wprm-recipe .wprm-layout-column,
.bmr-testo .wprm-recipe .wprm-column-rows,
.bmr-testo .wprm-recipe [class*="wprm-recipe-ingredients-columns"] {
	width: 100% !important; max-width: 100% !important; flex: none !important; float: none !important;
}
.bmr-testo .wprm-recipe .wprm-recipe-image {
	float: none !important; margin: 0 auto 1.2rem !important; text-align: center; display: block;
}
.bmr-testo .wprm-recipe .wprm-recipe-image img { border-radius: var(--b-r); }

.bmr-testo .wprm-recipe .wprm-recipe-name {
	font-family: var(--b-heading) !important; font-weight: 800 !important;
	font-size: clamp(1.5rem, 4.5vw, 2rem) !important; line-height: 1.12 !important;
	color: var(--b-ink) !important; margin: .2rem 0 .6rem !important;
}
.bmr-testo .wprm-recipe .wprm-recipe-summary { color: var(--b-muted); font-size: 1rem; }

/* Tempi, porzioni, difficoltà come etichette */
.bmr-testo .wprm-recipe .wprm-recipe-meta-container { display: flex !important; flex-wrap: wrap; gap: .5rem; margin: 1rem 0 !important; }
.bmr-testo .wprm-recipe .wprm-recipe-meta-container .wprm-recipe-block-container {
	display: inline-flex !important; flex-direction: column; align-items: flex-start;
	background: var(--b-base); border: 1px solid var(--b-line); border-radius: 12px;
	padding: .5rem .8rem !important; margin: 0 !important; min-width: 7.5rem;
	border-left: 1px solid var(--b-line) !important;
}
.bmr-testo .wprm-recipe .wprm-recipe-details-label {
	font-size: .7rem !important; text-transform: uppercase; letter-spacing: .07em;
	color: var(--b-muted) !important; font-weight: 700 !important;
}
.bmr-testo .wprm-recipe .wprm-recipe-details,
.bmr-testo .wprm-recipe .wprm-recipe-details-unit { font-weight: 800; color: var(--b-petrol-dark); }

/* Pulsanti stampa / Pinterest del plugin */
.bmr-testo .wprm-recipe a.wprm-recipe-link {
	border-radius: 999px !important; border: 1.5px solid var(--b-petrol) !important;
	background: transparent !important; color: var(--b-petrol) !important;
	padding: .45rem 1rem !important; font-weight: 700 !important; text-decoration: none !important;
}
.bmr-testo .wprm-recipe a.wprm-recipe-link:hover { background: var(--b-petrol) !important; color: #fff !important; }

/* Titoletti */
.bmr-testo .wprm-recipe .wprm-recipe-header {
	font-family: var(--b-heading) !important; font-weight: 800 !important;
	font-size: 1.35rem !important; color: var(--b-ink) !important;
	display: flex !important; align-items: center; gap: .6rem;
	margin: 1.8rem 0 .9rem !important; padding: 0 !important; border: 0 !important;
}
.bmr-testo .wprm-recipe .wprm-recipe-header::after {
	content: ""; flex: 1; height: 2px; border-radius: 2px;
	background: linear-gradient(90deg, var(--b-saffron) 0 48px, var(--b-line) 48px);
}
.bmr-testo .wprm-recipe .wprm-recipe-group-name {
	font-family: var(--b-heading) !important; font-size: 1.05rem !important; font-weight: 700 !important;
	color: var(--b-petrol-dark) !important; margin: 1.1rem 0 .3rem !important;
}

/* Ingredienti */
.bmr-testo .wprm-recipe ul.wprm-recipe-ingredients { padding: 0 !important; margin: 0 !important; }
.bmr-testo .wprm-recipe li.wprm-recipe-ingredient {
	list-style: none !important; position: relative;
	margin: 0 !important; padding: .6rem 0 .6rem 1.7rem !important;
	border-bottom: 1px dashed var(--b-line);
	line-height: 1.5;
}
.bmr-testo .wprm-recipe li.wprm-recipe-ingredient::before {
	content: ""; position: absolute; left: .15rem; top: 1.05rem;
	width: 10px; height: 10px; border-radius: 50%;
	border: 2.5px solid var(--b-saffron); box-sizing: border-box;
}
.bmr-testo .wprm-recipe li.wprm-recipe-ingredient:last-child { border-bottom: 0; }
.bmr-testo .wprm-recipe .wprm-recipe-ingredient-amount,
.bmr-testo .wprm-recipe .wprm-recipe-ingredient-unit { font-weight: 800; color: var(--b-petrol-dark); }
.bmr-testo .wprm-recipe .wprm-recipe-ingredient-notes { color: var(--b-muted); font-style: italic; }
.bmr-testo .wprm-recipe .wprm-checkbox-container { display: none !important; }

/* Procedimento: un simbolo (il boccale) al posto dei numeri, anche con 20 passaggi */
.bmr-testo .wprm-recipe ul.wprm-recipe-instructions,
.bmr-testo .wprm-recipe ol.wprm-recipe-instructions { padding: 0 !important; margin: 0 !important; }
.bmr-testo .wprm-recipe li.wprm-recipe-instruction {
	list-style: none !important; position: relative;
	margin: 0 !important; padding: .35rem 0 1.15rem 3.1rem !important;
	min-height: 2.4rem;
}
.bmr-testo .wprm-recipe li.wprm-recipe-instruction::before {
	content: ""; position: absolute; left: 0; top: .15rem;
	width: 2.1rem; height: 2.1rem; border-radius: 50%;
	background: var(--b-petrol) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6h10l-1.2 12.2a2 2 0 0 1-2 1.8H9.2a2 2 0 0 1-2-1.8L6 6Z'/%3E%3Cpath d='M16 8.5h1.8a1.7 1.7 0 0 1 1.7 1.7v1.6a1.7 1.7 0 0 1-1.7 1.7H15.5'/%3E%3Cpath d='M5 6h12M9 3.5h4'/%3E%3C/svg%3E") center / 58% no-repeat;
	box-shadow: 0 0 0 4px var(--b-paper);
	z-index: 1;
}
.bmr-testo .wprm-recipe li.wprm-recipe-instruction::after {
	content: ""; position: absolute; left: calc(1.05rem - 1px); top: 2.4rem; bottom: .1rem;
	border-left: 2px dotted var(--b-line);
}
.bmr-testo .wprm-recipe li.wprm-recipe-instruction:last-child::after { display: none; }
.bmr-testo .wprm-recipe .wprm-recipe-instruction-text { line-height: 1.7; padding-top: .2rem; }
.bmr-testo .wprm-recipe .wprm-recipe-instruction-text p { margin: 0 0 .5rem; }
.bmr-testo .wprm-recipe .wprm-recipe-instruction-text p:last-child { margin-bottom: 0; }
.bmr-testo .wprm-recipe .wprm-recipe-buttons { display: flex; flex-wrap: wrap; gap: .5rem; margin: .8rem 0 !important; }
.bmr-testo .wprm-recipe .wprm-recipe-instruction-image img { border-radius: 12px; margin-top: .6rem; }

/* Note */
.bmr-testo .wprm-recipe .wprm-recipe-notes-container {
	background: var(--b-saffron-soft); border-radius: var(--b-r); padding: 1rem 1.2rem !important; margin-top: 1.4rem !important;
}
.bmr-testo .wprm-recipe .wprm-recipe-notes-container .wprm-recipe-header { margin-top: 0 !important; }
.bmr-testo .wprm-recipe .wprm-recipe-notes-container .wprm-recipe-header::after { background: rgba(14, 65, 39, .15); }

/* Valutazione a stelle in zafferano */
.bmr-testo .wprm-recipe .wprm-recipe-rating svg path,
.bmr-testo .wprm-recipe .wprm-recipe-rating svg polygon { fill: var(--b-saffron) !important; }

/* ==========================================================
   Archivi, categorie e ricerca
   ========================================================== */
.bmr-archivio__testa {
	background: var(--b-surface); border-radius: var(--b-r-lg);
	padding: clamp(1.3rem, 4vw, 2.4rem); margin-bottom: 2rem;
	background-image: radial-gradient(circle at 0% 100%, rgba(242, 169, 59, .25), transparent 40%);
}
.bmr-archivio__testa > * { margin-block: 0; }
.bmr-archivio__testa h1 { font-size: clamp(1.9rem, 5vw, 2.8rem); }
.bmr-archivio__testa .wp-block-term-description { margin-top: .7rem; max-width: 70ch; color: var(--b-muted); }
.bmr-archivio__testa .wp-block-term-description p { margin: 0 0 .5rem; }
.bmr-archivio__testa .bmr-cerca-pagina { margin-top: 1rem; max-width: 560px; }

/* Una ricetta per riga con foto grande sul telefono, griglia sul computer */
.bmr-griglia { display: grid !important; grid-template-columns: 1fr; gap: 2rem; padding: 0; margin: 0; list-style: none; }
@media (min-width: 640px) { .bmr-griglia { grid-template-columns: repeat(2, 1fr); gap: 2.2rem 1.4rem; } }
@media (min-width: 1000px) { .bmr-griglia { grid-template-columns: repeat(3, 1fr); } }
.bmr-griglia > li { margin: 0; }

.bmr-card { position: relative; }
.bmr-card > * { margin-block: 0; }
.bmr-card .wp-block-post-featured-image { margin: 0 0 .85rem; overflow: hidden; border-radius: 18px; }
.bmr-card .wp-block-post-featured-image img { border-radius: 18px; transition: transform .4s ease; }
.bmr-card:hover .wp-block-post-featured-image img { transform: scale(1.04); }
.bmr-card__testo > * { margin-block: 0; }
.bmr-card__cat { font-size: 0; display: flex; flex-wrap: wrap; gap: .3rem; }
.bmr-card__cat a {
	position: relative; z-index: 2;
	font-size: .72rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
	color: var(--b-petrol-dark); background: var(--b-saffron-soft);
	padding: .2rem .55rem; border-radius: 6px; text-decoration: none;
}
.bmr-card__cat .wp-block-post-terms__separator { display: none; }
.bmr-card__titolo { margin-top: .5rem !important; font-size: clamp(1.25rem, 4vw, 1.3rem) !important; line-height: 1.22; font-weight: 700; }
.bmr-card__titolo a { color: var(--b-ink); text-decoration: none; }
.bmr-card__titolo a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.bmr-card__titolo a:hover { color: var(--b-petrol); }
.bmr-card .bmr-tempo { margin-top: .4rem; }

/* Paginazione: solo precedente / successiva */
.bmr-paginazione { margin-top: 3rem !important; gap: 1rem; }
.bmr-paginazione .wp-block-query-pagination-numbers { display: none; }
.bmr-paginazione a {
	display: inline-flex; align-items: center; gap: .4rem;
	border: 1.5px solid var(--b-petrol); border-radius: 999px;
	padding: .65rem 1.2rem; font-weight: 700; text-decoration: none; color: var(--b-petrol);
}
.bmr-paginazione a:hover { background: var(--b-petrol); color: #fff; }
.bmr-paginazione .wp-block-query-pagination-next { margin-left: auto; }

.bmr-vuoto { font-size: 1.05rem; color: var(--b-muted); }

/* Modulo di ricerca nelle pagine */
.bmr-cerca-pagina .wp-block-search__inside-wrapper {
	border: 2px solid var(--b-petrol) !important; border-radius: 999px; padding: 4px !important; background: var(--b-paper);
}
.bmr-cerca-pagina .wp-block-search__input { border: 0 !important; background: transparent; padding-left: 1rem; }
.bmr-cerca-pagina .wp-block-search__button { border-radius: 999px; margin-left: 4px; }

/* 404 */
.bmr-404__testa { text-align: center; padding-block: 1rem 1rem; }
.bmr-404__testa .bmr-cerca-pagina { max-width: 520px; margin-inline: auto; }
.bmr-404__numero {
	font-family: var(--b-heading); font-weight: 800; font-size: clamp(4rem, 14vw, 7rem); line-height: 1;
	color: var(--b-saffron); margin-bottom: 0;
}

/* Pagine */
.bmr-pagina__titolo { margin-bottom: 1.2rem; }

/* ==========================================================
   Footer
   ========================================================== */
.bmr-footer {
	background: var(--b-petrol-dark); color: #DCEFE1;
	padding-block: clamp(2.5rem, 6vw, 4rem) 1.5rem;
	margin-top: 0;
	font-size: .95rem;
}
.bmr-footer a { color: #fff; }
.bmr-footer__colonne { gap: 2.5rem; }
.bmr-footer__nome { font-family: var(--b-heading); font-weight: 800; font-size: 1.6rem; margin: 0; }
.bmr-footer__nome a { color: #fff; text-decoration: none; }
.bmr-footer__motto { margin-top: .4rem; color: #C3E3CB; }
.bmr-footer__titolo {
	font-size: .8rem !important; letter-spacing: .1em; text-transform: uppercase;
	color: #FFE1A3 !important; font-family: inherit !important; font-weight: 800 !important; margin-bottom: .9rem;
}
.bmr-footer-lista { list-style: none; padding: 0; margin: 0; display: grid; gap: .45rem; }
.bmr-footer-lista a { text-decoration: none; color: #F1FAF3; }
.bmr-footer-lista a:hover { color: #FFE1A3; }
/* Footer: canali con icona, contatti uno sotto l'altro */
.bmr-footer-lista--icone a { display: inline-flex; align-items: center; gap: .5rem; }
.bmr-footer-lista--icone .bmr-icona { width: 20px; height: 20px; color: #FFE1A3; }
.bmr-footer__presentazione { margin-top: .8rem !important; color: #C3E3CB; font-size: .92rem; line-height: 1.55; max-width: 34ch; }
.bmr-footer .bmr-footer-contatti { flex-direction: column; align-items: flex-start; margin-top: 0; }
.bmr-footer .bmr-footer-btn { white-space: nowrap; }
@media (min-width: 782px) {
	.bmr-footer__colonne > .wp-block-column:nth-child(3) { flex-grow: 1.6 !important; }
}
@media (max-width: 781px) {
	.bmr-footer__colonne { display: grid !important; grid-template-columns: 1fr 1fr; gap: 2rem 1.2rem !important; }
	.bmr-footer__marchio { grid-column: 1 / -1; }
	.bmr-footer__colonne > .wp-block-column:nth-child(3) { grid-column: 1 / -1; order: 5; }
}
.bmr-footer-contatti { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1.2rem; }
.bmr-footer-btn {
	display: inline-flex; align-items: center; gap: .45rem;
	border: 1px solid rgba(255, 255, 255, .25); border-radius: 999px;
	padding: .5rem .95rem; text-decoration: none; font-weight: 600; font-size: .9rem;
	overflow-wrap: anywhere;
}
.bmr-footer-btn:hover { background: rgba(255, 255, 255, .1); color: #fff; }
.bmr-footer-btn--wa { background: #fff; border-color: #fff; color: var(--wp--preset--color--logo-dark) !important; }
.bmr-footer-btn--wa:hover { background: #EAF6EC; color: var(--wp--preset--color--logo-dark) !important; }
.bmr-copyright {
	margin-top: 2.5rem !important; padding-top: 1.2rem; border-top: 1px solid rgba(255, 255, 255, .14);
	font-size: .82rem; color: #C3E3CB;
}

/* Pulsante fisso del canale WhatsApp */
.bmr-fissi {
	position: fixed; right: 14px; bottom: var(--bmr-wa-basso, 90px); z-index: 60;
	display: flex; flex-direction: column; align-items: flex-end; gap: 8px;
}
.bmr-fisso {
	display: flex; align-items: center; justify-content: center; gap: .5rem;
	width: 44px; height: 44px; border-radius: 999px;
	color: #fff; text-decoration: none; font-weight: 700; font-size: .92rem;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .22);
	transition: transform .15s ease;
}
.bmr-fisso:hover { transform: scale(1.06); color: #fff; }
.bmr-fisso .bmr-icona { width: 23px; height: 23px; stroke-width: 2; flex: none; }
.bmr-fisso__testo { display: none; white-space: nowrap; }
.bmr-fisso--whatsapp { background: #1FA855; }
/* Su computer i pulsanti hanno anche la scritta */
@media (min-width: 1100px) {
	.bmr-fissi { right: 22px; bottom: 22px; }
	.bmr-fisso { width: auto; height: 46px; padding: 0 1.1rem 0 .85rem; justify-content: flex-start; }
	.bmr-fisso .bmr-icona { width: 22px; height: 22px; }
	.bmr-fisso__testo { display: inline; }
}
/* Riquadro offerte Amazon (verso la fine dell'articolo) */
.bmr-amazon {
	display: grid; grid-template-columns: auto 1fr; gap: .9rem 1rem; align-items: start;
	margin: 1.6rem 0 0; padding: 1.2rem 1.3rem; border-radius: var(--b-r-lg);
	background: var(--b-saffron-soft); border: 1px solid #F3D9A6;
}
.bmr-amazon__icona {
	width: 48px; height: 48px; border-radius: 14px; background: var(--b-saffron); color: #1B1B1B;
	display: flex; align-items: center; justify-content: center;
}
.bmr-amazon__icona .bmr-icona { width: 26px; height: 26px; }
.bmr-amazon__testo p { margin: 0; font-size: .95rem; line-height: 1.5; color: #4A3A1A; }
.bmr-amazon__testo .bmr-amazon__titolo { font-family: var(--b-heading); font-weight: 800; font-size: 1.15rem; color: var(--b-ink); margin-bottom: .2rem; }
.bmr-amazon__btn {
	grid-column: 1 / -1; justify-self: start;
	display: inline-flex; align-items: center; gap: .45rem;
	background: var(--b-petrol); color: #fff !important; text-decoration: none !important;
	font-weight: 700; padding: .65rem 1.2rem; border-radius: 999px;
}
.bmr-amazon__btn:hover { background: var(--b-petrol-dark); }
@media (min-width: 782px) {
	.bmr-amazon { grid-template-columns: auto 1fr auto; }
	.bmr-amazon__btn { grid-column: auto; }
}

/* Niente animazioni per chi le ha disattivate */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; }
}

/* Titolo delle ricette correlate un po' più piccolo */
.bmr-sez--correlate .bmr-sez__titolo { font-size: clamp(1.25rem, 3vw, 1.6rem); }
.bmr-canali, .bmr-archivio__testa, .bmr-scheda--hero .bmr-scheda__testo { box-sizing: border-box; }
.bmr-home { padding-top: clamp(1rem, 3vw, 2rem); }

/* Pagina dell'articolo a tutta larghezza: foto in proporzione 16:9 */
@media (min-width: 782px) {
	.bmr-articolo .bmr-articolo__foto img { aspect-ratio: 16 / 9; object-fit: cover; }
}
/* Tocco del colore del logo: pallino accanto al nome del sito */
.bmr-marchio .wp-block-site-title a::after { background: var(--b-logo); }


/* ==========================================================
   Menu in alto (costruito dal tema)
   ========================================================== */
.bmr-menu { position: static; }
.bmr-menu ul { list-style: none; margin: 0; padding: 0; }
.bmr-menu__voce {
	display: inline-flex; align-items: center; gap: .3rem;
	background: none; border: 0; padding: .5rem .15rem; cursor: pointer;
	font: inherit; font-size: .98rem; font-weight: 600; color: var(--b-ink); text-decoration: none;
}
.bmr-menu__voce:hover, .bmr-menu__item.is-aperto > .bmr-menu__voce, .bmr-menu__item.is-attivo > .bmr-menu__voce, .bmr-menu__voce[aria-current] { color: var(--b-petrol); }
.bmr-menu__freccia { transition: transform .2s ease; }
.bmr-menu__item.is-aperto .bmr-menu__freccia { transform: rotate(180deg); }
.bmr-menu__tendina a {
	display: block; padding: .5rem .75rem; border-radius: 8px;
	color: var(--b-ink); text-decoration: none; font-size: .95rem; line-height: 1.3;
}
.bmr-menu__tendina a:hover, .bmr-menu__tendina a[aria-current] { background: var(--b-saffron-soft); color: var(--b-petrol-dark); }
.bmr-menu__tendina a[aria-current] { font-weight: 700; }
.bmr-menu__sotto a { padding-left: 1.75rem; color: var(--b-muted); font-size: .9rem; position: relative; }
.bmr-menu__sotto a::before {
	content: ""; position: absolute; left: .9rem; top: 45%; width: 6px; height: 6px;
	border-left: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-50%);
}
.bmr-menu__apri, .bmr-menu__barra { display: none; }

/* Computer: tendine che si aprono sotto la voce */
@media (min-width: 960px) {
	.bmr-menu__pannello { display: block; }
	.bmr-menu__lista { display: flex; align-items: center; gap: 1.5rem; }
	.bmr-menu__item { position: relative; }
	.bmr-menu__tendina {
		position: absolute; top: 100%; left: -1rem; z-index: 100;
		padding-top: .6rem; /* "ponte" invisibile: il mouse non perde la tendina */
		visibility: hidden; opacity: 0; transform: translateY(6px);
		transition: opacity .15s ease, transform .15s ease, visibility .15s;
	}
	.bmr-menu__item--gruppo:last-child .bmr-menu__tendina { left: auto; right: -1rem; }
	.bmr-menu__tendina > ul {
		width: 480px; columns: 2; column-gap: .3rem;
		background: var(--b-paper); border: 1px solid var(--b-line);
		border-top: 4px solid var(--b-saffron);
		border-radius: var(--b-r); box-shadow: var(--b-ombra);
		padding: .6rem;
	}
	.bmr-menu__tendina li { break-inside: avoid; }
	.bmr-menu__item--gruppo:hover > .bmr-menu__tendina,
	.bmr-menu__item--gruppo:focus-within > .bmr-menu__tendina,
	.bmr-menu__item.is-aperto > .bmr-menu__tendina { visibility: visible; opacity: 1; transform: none; }
	.bmr-menu__item--gruppo:hover .bmr-menu__freccia { transform: rotate(180deg); }
}

/* Telefono e tablet: pannello a tutto schermo con gruppi apribili */
@media (max-width: 959px) {
	.bmr-menu__apri {
		display: inline-flex; flex-direction: column; justify-content: center; align-items: center; gap: 4px;
		width: 42px; height: 42px; border-radius: 50%; cursor: pointer;
		border: 1.5px solid var(--b-line); background: var(--b-paper);
	}
	.bmr-menu__apri span { display: block; width: 18px; height: 2px; border-radius: 2px; background: var(--b-ink); }
	.bmr-menu__pannello {
		position: fixed; inset: 0; z-index: 1000; overflow-y: auto; overscroll-behavior: contain;
		background: var(--b-base); padding: 0 1.25rem 2.5rem;
		display: none;
	}
	.bmr-menu.is-aperto .bmr-menu__pannello { display: block; animation: bmr-compari .18s ease-out; }
	.bmr-menu__barra {
		display: flex; align-items: center; justify-content: space-between;
		position: sticky; top: 0; background: var(--b-base); padding: 1rem 0; z-index: 1;
		border-bottom: 1px solid var(--b-line); margin-bottom: .5rem;
	}
	.bmr-menu__titolo { font-family: var(--b-heading); font-weight: 800; font-size: 1.35rem; }
	.bmr-menu__chiudi {
		width: 42px; height: 42px; border-radius: 50%; border: 0; cursor: pointer;
		background: var(--b-surface); color: var(--b-ink);
		display: inline-flex; align-items: center; justify-content: center;
	}
	.bmr-menu__item { border-bottom: 1px solid var(--b-line); }
	.bmr-menu__voce {
		width: 100%; justify-content: space-between; padding: 1rem .1rem;
		font-family: var(--b-heading); font-size: 1.15rem; font-weight: 700;
	}
	.bmr-menu__freccia { width: 20px; height: 20px; }
	.bmr-menu__tendina { display: none; padding: 0 0 .8rem; }
	.bmr-menu__item.is-aperto > .bmr-menu__tendina { display: block; }
	.bmr-menu__tendina > ul { border-left: 3px solid var(--b-saffron); padding-left: .4rem; }
	.bmr-menu__tendina a { padding: .55rem .6rem; font-size: 1rem; }
	.bmr-menu__sotto a { padding-left: 1.6rem; }
	html.bmr-menu-aperto { overflow: hidden; }
}

/* Di stagione: titolo su massimo due righe con i puntini, la foto resta visibile */
.bmr-scheda--mosaico .bmr-scheda__titolo {
	display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2;
	overflow: hidden; text-overflow: ellipsis; line-height: 1.25; color: #fff;
}
.bmr-scheda--mosaico .bmr-scheda__titolo a::after { content: none; }
.bmr-scheda--mosaico .bmr-scheda__img::after { background: linear-gradient(180deg, rgba(14, 65, 39, 0) 50%, rgba(14, 65, 39, .9) 100%); }
@media (max-width: 781px) {
	.bmr-scheda--mosaico .bmr-scheda__titolo { font-size: .9rem; }
	.bmr-scheda--mosaico .bmr-scheda__testo { padding: .6rem .7rem; }
	.bmr-scheda--mosaico .bmr-scheda__meta { display: none; }
}
