/*
Theme Name: FataDolce
Theme URI: https://fatadolce.com
Description: Tema figlio di Twenty Twenty-Five per FataPasticciera — blog di ricette.
Author: FataPasticciera
Template: twentytwentyfive
Version: 3.0.0
Requires at least: 6.7
Requires PHP: 7.4
Text Domain: fatadolce
*/

:root {
	--fd-caramel: #C98B4E;
	--fd-shadow: 0 14px 40px rgba(70, 44, 31, 0.12);
	--fd-shadow-soft: 0 6px 18px rgba(70, 44, 31, 0.07);
	--fd-radius: 18px;
	--fd-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

html, body {
	overflow-x: clip;
}
body {
	-webkit-font-smoothing: antialiased;
}

/* =========================================================
   HEADER — sticky, blur, logo
   ========================================================= */
.fd-header {
	position: sticky;
	top: 0;
	z-index: 60;
	background: rgba(253, 248, 238, 0.86);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--wp--preset--color--accent-5);
	transition: box-shadow 0.3s var(--fd-ease);
}
.fd-header.fd-scrolled {
	box-shadow: var(--fd-shadow-soft);
}
.fd-header .wp-block-site-logo img {
	height: 46px;
	width: auto;
	display: block;
	border-radius: 12px;
	transition: transform 0.25s var(--fd-ease);
}
.fd-header .wp-block-site-logo a:hover img {
	transform: scale(1.04);
}

/* nav */
.fd-nav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 1.4rem;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.95rem;
}
.fd-nav > a {
	position: relative;
	text-decoration: none;
	color: var(--wp--preset--color--contrast);
	font-weight: 550;
	padding: 0.35rem 0;
}
.fd-nav > a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 100%;
	bottom: 0;
	height: 2px;
	border-radius: 2px;
	background: var(--fd-caramel);
	transition: right 0.28s var(--fd-ease);
}
.fd-nav > a:hover::after,
.fd-nav > a[aria-current="page"]::after {
	right: 0;
}
.fd-lang {
	display: inline-flex;
	gap: 0.3rem;
	margin-inline-start: 0.5rem;
	font-size: 0.78rem;
	letter-spacing: 0.05em;
}
.fd-lang a {
	text-decoration: none;
	color: var(--wp--preset--color--accent-4);
	padding: 0.28rem 0.6rem;
	border-radius: 999px;
	border: 1px solid transparent;
	transition: all 0.2s var(--fd-ease);
}
.fd-lang a:hover {
	border-color: var(--wp--preset--color--accent-5);
	color: var(--wp--preset--color--contrast);
}
.fd-lang a[aria-current="true"] {
	background: var(--wp--preset--color--accent-3);
	color: var(--wp--preset--color--accent-2);
	font-weight: 700;
}

@media (max-width: 781px) {
	.fd-header .wp-block-group {
		justify-content: center;
		row-gap: 0.35rem;
	}
	.fd-nav {
		justify-content: center;
		font-size: 0.9rem;
		gap: 0.2rem 1rem;
	}
}

/* =========================================================
   HERO
   ========================================================= */
.fd-hero .wp-block-cover__background {
	background: linear-gradient(180deg, rgba(50, 27, 15, 0.18) 0%, rgba(50, 27, 15, 0.38) 55%, rgba(50, 27, 15, 0.72) 100%) !important;
	opacity: 1 !important;
}
.fd-kicker {
	font-size: 0.82rem;
	font-weight: 650;
	letter-spacing: 0.22em;
	text-transform: uppercase;
}
.fd-hero .fd-kicker {
	color: var(--wp--preset--color--accent-3);
}
.fd-hero-title {
	line-height: 1.04;
	text-wrap: balance;
	text-shadow: 0 2px 24px rgba(40, 20, 8, 0.35);
}
.fd-btn-ghost .wp-block-button__link {
	background: rgba(255, 255, 255, 0.12);
	border: 1.5px solid rgba(255, 255, 255, 0.75);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}
.fd-btn-ghost .wp-block-button__link:hover {
	background: rgba(255, 255, 255, 0.24);
}

/* entrance animation (hero) */
@keyframes fd-fade-up {
	from { opacity: 0; transform: translateY(26px); }
	to   { opacity: 1; transform: translateY(0); }
}
.fd-anim-1, .fd-anim-2, .fd-anim-3 {
	animation: fd-fade-up 0.8s var(--fd-ease) both;
}
.fd-anim-2 { animation-delay: 0.15s; }
.fd-anim-3 { animation-delay: 0.3s; }

/* =========================================================
   SECTIONS
   ========================================================= */
.fd-section-kicker {
	color: var(--fd-caramel);
	margin-bottom: 0.35rem;
}
.fd-section-title {
	position: relative;
	margin-bottom: 2.2rem !important;
}
.fd-section-title::after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -0.85rem;
	width: 56px;
	height: 3px;
	border-radius: 3px;
	background: var(--fd-caramel);
}

/* =========================================================
   CATEGORY TILES
   ========================================================= */
.fd-tiles {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.1rem;
}
.fd-tile {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	border-radius: var(--fd-radius);
	overflow: hidden;
	text-decoration: none;
	box-shadow: var(--fd-shadow-soft);
	transform: translateZ(0);
}
.fd-tile img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s var(--fd-ease);
}
.fd-tile::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(45, 24, 12, 0) 40%, rgba(45, 24, 12, 0.72) 100%);
	transition: background 0.3s var(--fd-ease);
}
.fd-tile:hover img {
	transform: scale(1.06);
}
.fd-tile span {
	position: absolute;
	z-index: 2;
	left: 1rem;
	right: 1rem;
	bottom: 0.85rem;
	color: #fff;
	font-weight: 650;
	font-size: 1.02rem;
	letter-spacing: 0.01em;
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.45);
}
@media (max-width: 1023px) {
	.fd-tiles { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 649px) {
	.fd-tiles { grid-template-columns: repeat(2, 1fr); gap: 0.8rem; }
	.fd-tile span { font-size: 0.92rem; left: 0.75rem; bottom: 0.65rem; }
}

/* =========================================================
   CARDS (query loops)
   ========================================================= */
.fd-grid .wp-block-post {
	background: var(--wp--preset--color--accent-6);
	border: 1px solid var(--wp--preset--color--accent-5);
	border-radius: var(--fd-radius);
	overflow: hidden;
	transition: box-shadow 0.35s var(--fd-ease), transform 0.35s var(--fd-ease);
}
.fd-grid .wp-block-post:hover {
	box-shadow: var(--fd-shadow);
	transform: translateY(-4px);
}
.fd-grid .wp-block-post-featured-image {
	margin: 0;
	overflow: hidden;
}
.fd-grid .wp-block-post-featured-image img {
	border-radius: 0;
	display: block;
	transition: transform 0.6s var(--fd-ease);
}
.fd-grid .wp-block-post:hover .wp-block-post-featured-image img {
	transform: scale(1.05);
}
.fd-grid .wp-block-post-title,
.fd-grid .wp-block-post-date {
	padding-inline: 1.1rem;
}
.fd-grid .wp-block-post-title {
	margin-top: 0.85rem;
	font-size: 1.12rem;
	line-height: 1.3;
}
.fd-grid .wp-block-post-title a {
	text-decoration: none;
	color: var(--wp--preset--color--contrast);
	transition: color 0.2s;
}
.fd-grid .wp-block-post-title a:hover {
	color: var(--wp--preset--color--accent-1);
}
.fd-grid .wp-block-post-date {
	padding-bottom: 1.1rem;
	margin-top: 0.4rem;
	font-size: 0.78rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent-4);
}
.fd-grid .wp-block-post-date a {
	color: inherit;
	text-decoration: none;
}

/* reveal-on-scroll (attivo solo con JS) */
.fd-js .fd-reveal .wp-block-post,
.fd-js .fd-reveal .fd-tile {
	opacity: 0;
	transform: translateY(22px);
	transition: opacity 0.65s var(--fd-ease), transform 0.65s var(--fd-ease), box-shadow 0.35s var(--fd-ease);
}
.fd-js .fd-reveal.is-in .wp-block-post,
.fd-js .fd-reveal.is-in .fd-tile {
	opacity: 1;
	transform: translateY(0);
}
.fd-js .fd-reveal.is-in .wp-block-post:nth-child(2),
.fd-js .fd-reveal.is-in .fd-tile:nth-child(2) { transition-delay: 0.07s; }
.fd-js .fd-reveal.is-in .wp-block-post:nth-child(3),
.fd-js .fd-reveal.is-in .fd-tile:nth-child(3) { transition-delay: 0.14s; }
.fd-js .fd-reveal.is-in .wp-block-post:nth-child(4),
.fd-js .fd-reveal.is-in .fd-tile:nth-child(4) { transition-delay: 0.21s; }
.fd-js .fd-reveal.is-in .wp-block-post:nth-child(5),
.fd-js .fd-reveal.is-in .fd-tile:nth-child(5) { transition-delay: 0.28s; }
.fd-js .fd-reveal.is-in .wp-block-post:nth-child(6),
.fd-js .fd-reveal.is-in .fd-tile:nth-child(6) { transition-delay: 0.35s; }
.fd-js .fd-reveal.is-in .fd-tile:nth-child(7) { transition-delay: 0.42s; }
.fd-js .fd-reveal.is-in .fd-tile:nth-child(8) { transition-delay: 0.49s; }

@media (prefers-reduced-motion: reduce) {
	.fd-anim-1, .fd-anim-2, .fd-anim-3 { animation: none; }
	.fd-js .fd-reveal .wp-block-post,
	.fd-js .fd-reveal .fd-tile { opacity: 1; transform: none; transition: none; }
	.fd-tile img, .fd-grid .wp-block-post-featured-image img { transition: none; }
}

/* =========================================================
   ARTICOLO — lettura
   ========================================================= */
.wp-block-post-content {
	font-size: 1.0625rem;
}
.wp-block-post-content > p {
	margin-block: 1.15em;
}
.wp-block-post-content h2 {
	margin-top: 2.2em;
	margin-bottom: 0.7em;
}
.wp-block-post-content img {
	border-radius: 14px;
	height: auto;
	box-shadow: var(--fd-shadow-soft);
}
.wp-block-post-content ul li {
	margin-block: 0.4em;
}
.wp-block-post-content blockquote {
	background: #fff;
	border-radius: 0 14px 14px 0;
	padding: 1rem 1.4rem;
}

/* FAQ (details) */
.wp-block-details {
	background: var(--wp--preset--color--accent-6);
	border: 1px solid var(--wp--preset--color--accent-5);
	border-radius: 14px;
	padding: 0.9rem 1.2rem;
	margin-block: 0.65rem;
	transition: box-shadow 0.25s var(--fd-ease);
}
.wp-block-details:hover {
	box-shadow: var(--fd-shadow-soft);
}
.wp-block-details summary {
	font-weight: 650;
	cursor: pointer;
	list-style: none;
	position: relative;
	padding-right: 1.8rem;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after {
	content: "+";
	position: absolute;
	right: 0.2rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.35rem;
	font-weight: 400;
	color: var(--fd-caramel);
	transition: transform 0.25s var(--fd-ease);
}
.wp-block-details[open] summary::after {
	transform: translateY(-50%) rotate(45deg);
}
.wp-block-details[open] summary {
	margin-bottom: 0.5rem;
}

/* stelline kksr */
.kk-star-ratings {
	margin-block: 0.5rem 1rem;
}

/* =========================================================
   WPRM — recipe card
   ========================================================= */
.wprm-recipe-container {
	background: #fff !important;
	border: 1px solid var(--wp--preset--color--accent-5) !important;
	border-radius: var(--fd-radius) !important;
	padding: 1.6rem !important;
	box-shadow: var(--fd-shadow-soft);
}
.wprm-recipe-container .wprm-recipe-name {
	font-family: var(--wp--preset--font-family--heading) !important;
	color: var(--wp--preset--color--contrast) !important;
}
.wprm-recipe-container .wprm-recipe-header,
.wprm-recipe-container h3,
.wprm-recipe-container h4 {
	color: var(--wp--preset--color--accent-2) !important;
}
.wprm-recipe-container a.wprm-recipe-print,
.wprm-recipe-container a.wprm-recipe-pin,
.wprm-recipe-container .wprm-recipe-link {
	background: var(--wp--preset--color--accent-1) !important;
	border-color: var(--wp--preset--color--accent-1) !important;
	color: #fff !important;
	border-radius: 999px !important;
	transition: background 0.2s;
}
.wprm-recipe-container a.wprm-recipe-print:hover,
.wprm-recipe-container a.wprm-recipe-pin:hover {
	background: var(--wp--preset--color--accent-2) !important;
}
.wprm-recipe-container .wprm-recipe-details-container,
.wprm-recipe-container .wprm-recipe-times-container {
	border-color: var(--wp--preset--color--accent-5) !important;
}
.wprm-recipe-container .wprm-recipe-image img {
	border-radius: 14px;
}
.wprm-recipe-container li.wprm-recipe-ingredient::marker,
.wprm-recipe-container li.wprm-recipe-instruction::marker {
	color: var(--fd-caramel);
	font-weight: 700;
}
.wprm-recipe-container .wprm-recipe-servings-container,
.wprm-recipe-container .wprm-recipe-tags-container {
	border-radius: 10px;
}

/* =========================================================
   CF7 — modulo contatti
   ========================================================= */
.wpcf7 form {
	display: grid;
	gap: 0.9rem;
	background: var(--wp--preset--color--accent-6);
	border: 1px solid var(--wp--preset--color--accent-5);
	border-radius: var(--fd-radius);
	padding: 1.6rem;
	box-shadow: var(--fd-shadow-soft);
}
.wpcf7 form p {
	margin: 0;
}
.wpcf7 label {
	font-size: 0.86rem;
	font-weight: 600;
	color: var(--wp--preset--color--accent-4);
	display: block;
}
.wpcf7 .wpcf7-form-control-wrap {
	display: block;
	margin-top: 0.3rem;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
	width: 100%;
	padding: 0.75rem 1rem;
	border: 1.5px solid var(--wp--preset--color--accent-5);
	border-radius: 12px;
	background: var(--wp--preset--color--base);
	font: inherit;
	color: var(--wp--preset--color--contrast);
	transition: border-color 0.2s, box-shadow 0.2s;
}
.wpcf7 input:focus,
.wpcf7 textarea:focus {
	outline: none;
	border-color: var(--wp--preset--color--accent-1);
	box-shadow: 0 0 0 4px rgba(133, 86, 69, 0.12);
}
.wpcf7 input[type="submit"] {
	justify-self: start;
	background: var(--wp--preset--color--accent-1);
	color: #fff;
	font-weight: 600;
	font-size: 1rem;
	border: none;
	border-radius: 999px;
	padding: 0.8rem 2.2rem;
	cursor: pointer;
	transition: background 0.2s, transform 0.15s;
}
.wpcf7 input[type="submit"]:hover {
	background: var(--wp--preset--color--accent-2);
	transform: translateY(-1px);
}
.wpcf7 .wpcf7-response-output {
	border-radius: 12px;
	padding: 0.8rem 1.1rem;
	margin: 0;
}

/* =========================================================
   FOOTER
   ========================================================= */
.fd-footer {
	background: var(--wp--preset--color--accent-3);
}
.fd-footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr;
	gap: 2.5rem;
	align-items: start;
}
.fd-footer-brand img {
	height: 52px;
	width: auto;
	border-radius: 12px;
	margin-bottom: 0.8rem;
}
.fd-footer h4 {
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent-2);
	margin: 0 0 0.9rem;
}
.fd-footer-col a[hidden] {
	display: none;
}
.fd-footer-col a {
	display: block;
	color: var(--wp--preset--color--contrast);
	text-decoration: none;
	padding-block: 0.28rem;
	font-size: 0.95rem;
	transition: color 0.2s, transform 0.2s var(--fd-ease);
}
.fd-footer-col a:hover {
	color: var(--wp--preset--color--accent-1);
	transform: translateX(3px);
}
.fd-footer-tagline {
	color: var(--wp--preset--color--accent-2);
	font-size: 0.95rem;
	max-width: 34ch;
	margin: 0 0 0.6rem;
}
.fd-footer-bottom {
	border-top: 1px solid rgba(70, 44, 31, 0.15);
	margin-top: 2.2rem;
	padding-top: 1.2rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
	justify-content: space-between;
	font-size: 0.82rem;
	color: var(--wp--preset--color--accent-2);
}
.fd-footer-bottom a {
	color: inherit;
}
@media (max-width: 781px) {
	.fd-footer-grid {
		grid-template-columns: 1fr;
		gap: 1.8rem;
		text-align: center;
	}
	.fd-footer-brand img { margin-inline: auto; }
	.fd-footer-tagline { margin-inline: auto; }
	.fd-footer-col a:hover { transform: none; }
	.fd-footer-bottom { justify-content: center; text-align: center; }
}

/* =========================================================
   VARIE
   ========================================================= */
.wp-block-search__input {
	border-radius: 999px 0 0 999px;
	border: 1.5px solid var(--wp--preset--color--accent-5);
	padding: 0.65rem 1.2rem;
	background: #fff;
}
.wp-block-search__button {
	border-radius: 0 999px 999px 0;
	margin-left: 0;
	background: var(--wp--preset--color--accent-1);
	color: #fff;
	border: none;
	padding-inline: 1.4rem;
	transition: background 0.2s;
}
.wp-block-search__button:hover {
	background: var(--wp--preset--color--accent-2);
}
.wp-block-query-pagination a {
	text-decoration: none;
	font-weight: 600;
}
.wp-element-button, .wp-block-button__link {
	transition: background 0.2s, transform 0.15s var(--fd-ease), box-shadow 0.2s;
}
.wp-element-button:hover, .wp-block-button__link:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 20px rgba(70, 44, 31, 0.18);
}
.is-style-outline .wp-block-button__link {
	border: 1.5px solid var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--accent-1);
}
.is-style-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--accent-1);
	color: #fff;
}

/* =========================================================
   V3 — sfondo gradientato + sezioni fluttuanti
   ========================================================= */
html {
	background: linear-gradient(168deg, #FEFBF4 0%, #FBE3BE 46%, #F9EFDD 78%, #FDF8EE 100%) fixed;
	min-height: 100%;
}
body {
	background: transparent;
}
.wp-site-blocks {
	padding-bottom: 0.5rem;
}

/* superficie fluttuante */
.fd-card {
	background: rgba(255, 253, 249, 0.88);
	border: 1px solid rgba(255, 255, 255, 0.85);
	border-radius: 28px;
	box-shadow: 0 18px 50px rgba(115, 74, 45, 0.10);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	padding: clamp(1.4rem, 4vw, 3rem) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: min(1200px, calc(100% - 1.6rem)) !important;
}
.fd-card + .fd-card,
.fd-card + .wp-block-group .fd-card {
	margin-top: 1.6rem !important;
}
.fd-card-narrow {
	max-width: min(820px, calc(100% - 1.6rem)) !important;
}

/* header full-bleed sopra il gradiente */
.fd-header {
	background: rgba(254, 251, 244, 0.82);
}

/* HERO v3 — split testo + video in cornice (nessun crop) */
.fd-hero3 {
	margin-top: 1.6rem !important;
	overflow: hidden;
}
.fd-hero3 .wp-block-columns {
	align-items: center;
	gap: clamp(1.4rem, 3.5vw, 3rem);
}
.fd-hero3 .fd-kicker {
	color: var(--wp--preset--color--accent-1);
}
.fd-hero3 h1 {
	line-height: 1.06;
	text-wrap: balance;
	margin-top: 0.4rem;
}
.fd-video-frame {
	border-radius: 22px;
	overflow: hidden;
	box-shadow: var(--fd-shadow);
	border: 1px solid rgba(255, 255, 255, 0.9);
	line-height: 0;
	transform: rotate(0.6deg);
}
.fd-video-frame video {
	display: block;
	width: 100%;
	height: auto;
}
@media (max-width: 781px) {
	.fd-hero3 .wp-block-columns {
		flex-direction: column-reverse;
		display: flex;
	}
	.fd-hero3 .wp-block-column {
		width: 100%;
	}
	.fd-hero3 h1, .fd-hero3 .fd-kicker, .fd-hero3 p {
		text-align: center;
	}
	.fd-hero3 .wp-block-buttons {
		justify-content: center;
	}
	.fd-video-frame {
		transform: none;
	}
}

/* articolo come card */
.fd-article .wp-block-post-title {
	margin-top: 0.3rem;
}
.fd-article .wp-block-post-featured-image img {
	border-radius: 18px;
}

/* footer flottante */
.fd-footer {
	border-radius: 28px;
	margin: 2rem auto 1.2rem !important;
	max-width: min(1200px, calc(100% - 1.6rem)) !important;
	box-shadow: 0 18px 50px rgba(115, 74, 45, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.7);
}

/* foto ritratto */
.fd-portrait img {
	border-radius: 24px;
	box-shadow: var(--fd-shadow);
	transform: rotate(-1deg);
}

/* la barra sezione resta leggibile sul gradiente */
.fd-section-title::after {
	background: var(--wp--preset--color--accent-1);
}

/* =========================================================
   V4 — header fixed dinamico, hero-video background,
   niente card-nelle-card, articolo con sidebar
   ========================================================= */

/* header fixed: trasparente in cima, glass su scroll, hide/show */
.fd-header {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	transition: transform 0.35s var(--fd-ease), background 0.3s var(--fd-ease), box-shadow 0.3s var(--fd-ease), border-color 0.3s var(--fd-ease), backdrop-filter 0.3s var(--fd-ease);
	will-change: transform;
}
.fd-header.fd-at-top {
	background: transparent;
	border-bottom-color: transparent;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	box-shadow: none;
}
.fd-header.fd-hidden {
	transform: translateY(-104%);
	box-shadow: none;
}
.wp-site-blocks {
	padding-top: var(--fd-header-h, 84px);
}
@media (prefers-reduced-motion: reduce) {
	.fd-header { transition: none; }
}

/* hero: il video è un background sul suo pannello nero (i bordi del
   montaggio sono neri: il cover non "taglia" nulla di visibile) */
.fd-video-frame {
	transform: none;
	background: #121212;
	aspect-ratio: 4 / 3.4;
	border: 0;
	border-radius: 24px;
}
.fd-video-frame video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media (max-width: 781px) {
	.fd-video-frame { aspect-ratio: 16 / 10; }
}

/* MAI card nelle card: elementi interni alle superfici diventano piatti */
.fd-card .wprm-recipe-container,
.fd-article .wprm-recipe-container {
	background: transparent !important;
	border: 0 !important;
	border-top: 1px solid var(--wp--preset--color--accent-5) !important;
	border-bottom: 1px solid var(--wp--preset--color--accent-5) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 1.6rem 0 !important;
}
.fd-card .wp-block-details,
.fd-article .wp-block-details {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--accent-5);
	border-radius: 0;
	box-shadow: none;
	padding: 0.9rem 0.2rem;
	margin-block: 0;
}
.fd-card .wp-block-details:hover,
.fd-article .wp-block-details:hover {
	box-shadow: none;
}
.fd-card .wpcf7 form {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0;
}
.fd-card .wp-block-post-content blockquote,
.fd-article blockquote {
	background: transparent;
	border-left: 4px solid var(--wp--preset--color--accent-3);
	border-radius: 0;
}
.fd-card .wp-block-post-content img {
	box-shadow: none;
}

/* articolo con sidebar */
.fd-post-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 330px;
	gap: 1.8rem;
	align-items: start;
	max-width: min(1200px, calc(100% - 1.6rem));
	margin-inline: auto;
}
.fd-post-layout .fd-article {
	max-width: none !important;
	margin: 0 !important;
}
.fd-sidebar {
	position: sticky;
	top: calc(var(--fd-header-h, 84px) + 1rem);
}
.fd-sidebar .fd-card {
	max-width: none !important;
	padding: 1.4rem !important;
}
.fd-sidebar h4 {
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent-1);
	margin: 0 0 0.8rem;
}
.fd-side-post {
	display: grid;
	grid-template-columns: 62px 1fr;
	gap: 0.7rem;
	align-items: center;
	text-decoration: none;
	padding-block: 0.45rem;
}
.fd-side-post img {
	width: 62px;
	height: 62px;
	object-fit: cover;
	border-radius: 12px;
	display: block;
}
.fd-side-post span {
	color: var(--wp--preset--color--contrast);
	font-size: 0.88rem;
	line-height: 1.35;
	font-weight: 550;
}
.fd-side-post:hover span {
	color: var(--wp--preset--color--accent-1);
}
.fd-side-cats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}
.fd-side-cats a {
	text-decoration: none;
	font-size: 0.8rem;
	font-weight: 600;
	color: var(--wp--preset--color--accent-2);
	background: var(--wp--preset--color--accent-3);
	padding: 0.3rem 0.75rem;
	border-radius: 999px;
	transition: background 0.2s, color 0.2s;
}
.fd-side-cats a:hover {
	background: var(--wp--preset--color--accent-1);
	color: #fff;
}
.fd-side-block + .fd-side-block {
	margin-top: 1.4rem;
	padding-top: 1.4rem;
	border-top: 1px solid var(--wp--preset--color--accent-5);
}
@media (max-width: 1023px) {
	.fd-post-layout {
		grid-template-columns: 1fr;
	}
	.fd-sidebar {
		position: static;
	}
}

/* sezioni "aperte" (titolo su gradiente, card solo per i contenuti veri) */
.fd-open-section {
	max-width: min(1200px, calc(100% - 1.6rem));
	margin-inline: auto;
}

/* =========================================================
   V4.1 — Meadow (template WPRM) rebrandizzato: via i verdi/oro,
   dentro cioccolato/caramello/crema del logo
   ========================================================= */
.wprm-recipe.wprm-recipe-template-meadow {
	--meadow-accent-color: #855645 !important;
	/* V9.2: sfondo uniforme col resto della card (via il beige "a blocco") */
	--meadow-main-background-color: #fff !important;
	--meadow-list-border-color: #EEDFC8 !important;
}
.wprm-recipe-template-meadow .wprm-recipe-name {
	font-family: var(--wp--preset--font-family--heading) !important;
}
.wprm-recipe-template-meadow a.wprm-recipe-print,
.wprm-recipe-template-meadow a.wprm-recipe-pin {
	border-radius: 999px !important;
}

/* =========================================================
   V5 — hero full-bleed col video di background, smooth scroll,
   allineamenti scheda, admin bar nello sticky
   ========================================================= */

/* smooth scroll con offset per l'header fisso */
@media (prefers-reduced-motion: no-preference) {
	html { scroll-behavior: smooth; }
}
[id] {
	scroll-margin-top: calc(var(--fd-header-h, 84px) + 24px);
}

/* header sotto la admin bar di WP quando presente */
.fd-header {
	top: var(--wp-admin--admin-bar--height, 0px);
}

/* --- HERO full-bleed: video = background, testo a destra --- */
.fd-hero-full {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-top: calc(-1 * var(--fd-header-h, 84px));
	min-height: 92vh;
	display: flex;
	align-items: center;
	overflow: hidden;
	background: #141414;
	padding: calc(var(--fd-header-h, 84px) + 2rem) 0 6rem;
}
.fd-hero-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center left;
}
.fd-hero-full::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(20, 18, 16, 0) 30%, rgba(20, 18, 16, 0.45) 55%, rgba(20, 18, 16, 0.88) 82%);
	z-index: 1;
}
.fd-hero-full::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 170px;
	background: linear-gradient(180deg, rgba(254, 251, 244, 0) 0%, #FEFBF4 92%);
	z-index: 2;
	pointer-events: none;
}
.fd-hero-full-inner {
	position: relative;
	z-index: 3;
	width: min(1200px, calc(100% - 3rem));
	margin-inline: auto;
	display: flex;
	justify-content: flex-end;
}
.fd-hero-copy {
	max-width: 540px;
	color: #FDF3E3;
}
.fd-hero-copy .fd-kicker {
	color: #FBDCAD;
	margin: 0 0 0.9rem;
}
.fd-hero-copy h1 {
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(2.6rem, 5vw, 3.9rem);
	line-height: 1.05;
	color: #FFF9EF;
	margin: 0 0 1.1rem;
	text-wrap: balance;
	text-shadow: 0 2px 30px rgba(0, 0, 0, 0.45);
}
.fd-hero-sub {
	font-size: 1.125rem;
	line-height: 1.6;
	color: rgba(253, 243, 227, 0.88);
	margin: 0 0 1.8rem;
}
.fd-hero-btns {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
}
.fd-hero-btns a {
	text-decoration: none;
	font-weight: 600;
	font-size: 1rem;
	border-radius: 999px;
	padding: 0.85rem 1.9rem;
	transition: background 0.2s, transform 0.15s var(--fd-ease), box-shadow 0.2s;
}
.fd-hero-btns a.wp-element-button {
	background: var(--wp--preset--color--accent-1);
	color: #fff;
}
.fd-hero-btns a.wp-element-button:hover {
	background: var(--wp--preset--color--accent-2);
	transform: translateY(-1px);
}
.fd-hero-btns a.fd-ghost {
	border: 1.5px solid rgba(255, 249, 239, 0.8);
	color: #FFF9EF;
	background: rgba(255, 255, 255, 0.08);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}
.fd-hero-btns a.fd-ghost:hover {
	background: rgba(255, 255, 255, 0.2);
	transform: translateY(-1px);
}
@media (max-width: 781px) {
	.fd-hero-full {
		min-height: 84vh;
		padding-bottom: 5rem;
	}
	.fd-hero-video {
		object-position: center;
	}
	.fd-hero-full::before {
		background: linear-gradient(180deg, rgba(20, 18, 16, 0.15) 0%, rgba(20, 18, 16, 0.55) 45%, rgba(20, 18, 16, 0.85) 100%);
	}
	.fd-hero-full-inner {
		justify-content: center;
	}
	.fd-hero-copy {
		text-align: center;
	}
	.fd-hero-btns {
		justify-content: center;
	}
}

/* header sopra l'hero scuro: testi chiari finché è trasparente in cima */
.fd-header.fd-at-top.fd-over-dark {
	border-bottom-color: transparent;
}
.fd-header.fd-at-top.fd-over-dark .fd-nav > a {
	color: #FBE7CB;
}
.fd-header.fd-at-top.fd-over-dark .fd-nav > a::after {
	background: #FBDCAD;
}
.fd-header.fd-at-top.fd-over-dark .fd-lang a {
	color: rgba(251, 231, 203, 0.75);
}
.fd-header.fd-at-top.fd-over-dark .fd-lang a[aria-current="true"] {
	background: rgba(251, 220, 173, 0.25);
	color: #FBDCAD;
}

/* --- scheda WPRM: allineamenti indipendenti da 1/2 righe --- */
.wprm-recipe-template-meadow .wprm-recipe-times-container {
	align-items: stretch !important;
}
.wprm-recipe-template-meadow .wprm-recipe-times-container .wprm-recipe-details-container {
	display: flex !important;
	flex-direction: column;
	justify-content: flex-start;
	gap: 0.3rem;
	text-align: center;
}
.wprm-recipe-template-meadow .wprm-recipe-times-container .wprm-recipe-details-label {
	display: flex !important;
	align-items: flex-end;
	justify-content: center;
	min-height: 2.8em;
	line-height: 1.3;
}
.wprm-recipe-template-meadow .wprm-recipe-jump-to-section {
	display: inline-flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	min-height: 112px;
	min-width: 128px;
	padding: 0.9rem 1rem !important;
	text-align: center;
}
.wprm-recipe-template-meadow .wprm-recipe-details-container-inline .wprm-recipe-details-label {
	margin-right: 0.4em;
}

/* V5.1 — fix breakout hero: specificità layout Gutenberg, simmetria, blockGap */
main:has(> .entry-content .fd-hero-full),
main:has(.fd-hero-full) {
	margin-block-start: 0 !important;
}
.entry-content > .fd-hero-full,
section.fd-hero-full {
	width: auto !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-top: calc(-1 * var(--fd-header-h, 84px)) !important;
}
/* overlay destro più deciso: il testo resta leggibile anche quando
   nel montaggio passano immagini chiare */
.fd-hero-full::before {
	background: linear-gradient(90deg, rgba(20, 18, 16, 0) 26%, rgba(20, 18, 16, 0.55) 50%, rgba(20, 18, 16, 0.93) 74%);
}
@media (max-width: 781px) {
	.fd-hero-full::before {
		background: linear-gradient(180deg, rgba(20, 18, 16, 0.2) 0%, rgba(20, 18, 16, 0.6) 45%, rgba(20, 18, 16, 0.9) 100%);
	}
}

/* =========================================================
   V5.2 — hero CONTAINED: card scura arrotondata nel container,
   video come background della card (niente full-bleed)
   ========================================================= */
.entry-content > .fd-hero-full,
section.fd-hero-full {
	width: auto !important;
	max-width: min(1200px, calc(100% - 1.6rem)) !important;
	margin: 0.8rem auto 0 !important;
	border-radius: 28px;
	min-height: 80vh;
	padding: clamp(2.5rem, 6vh, 5rem) 0;
	box-shadow: 0 22px 60px rgba(70, 44, 31, 0.22);
	border: 1px solid rgba(255, 255, 255, 0.12);
}
.fd-hero-full::after {
	display: none; /* card contenuta: si integra col gradiente da sé */
}
.fd-hero-full-inner {
	width: min(1040px, calc(100% - 3rem));
}
@media (max-width: 781px) {
	.entry-content > .fd-hero-full,
	section.fd-hero-full {
		min-height: 72vh;
		max-width: calc(100% - 1rem) !important;
	}
}

/* =========================================================
   V6 — hero DAVVERO full width (il wrapper del template
   bloccava gli alignfull a content-width) + video mobile
   ========================================================= */
.entry-content > section.fd-hero-full,
section.fd-hero-full.alignfull,
section.fd-hero-full {
	width: auto !important;
	max-width: none !important;
	margin: 0 calc(-1 * var(--wp--style--root--padding-right, 0px)) 0 calc(-1 * var(--wp--style--root--padding-left, 0px)) !important;
	border-radius: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	min-height: 88vh;
	padding: clamp(3rem, 8vh, 6rem) 0;
}
@media (max-width: 781px) {
	.entry-content > section.fd-hero-full,
	section.fd-hero-full.alignfull,
	section.fd-hero-full {
		min-height: 80vh;
	}
}

/* =========================================================
   V7 — hero CHIARA: slideshow di foto dei post migliori come
   background, velo crema integrato con la palette (niente scuro)
   ========================================================= */
section.fd-hero-full {
	background: var(--wp--preset--color--accent-3) !important;
	min-height: 84vh;
}
.fd-hero-slides {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}
.fd-hero-slide {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	opacity: 0;
	animation: fd-slide 30s var(--fd-ease) infinite;
	will-change: opacity, transform;
}
.fd-hero-slide:nth-child(2) { animation-delay: 6s; }
.fd-hero-slide:nth-child(3) { animation-delay: 12s; }
.fd-hero-slide:nth-child(4) { animation-delay: 18s; }
.fd-hero-slide:nth-child(5) { animation-delay: 24s; }
@keyframes fd-slide {
	0%   { opacity: 0; transform: scale(1); }
	4%   { opacity: 1; }
	20%  { opacity: 1; }
	27%  { opacity: 0; transform: scale(1.08); }
	100% { opacity: 0; transform: scale(1); }
}

/* velo crema: foto visibili a sinistra, testo su crema a destra */
.fd-hero-full::before {
	background: linear-gradient(90deg,
		rgba(253, 248, 238, 0.10) 22%,
		rgba(253, 248, 238, 0.66) 52%,
		rgba(253, 248, 238, 0.94) 74%,
		rgba(253, 248, 238, 0.98) 100%) !important;
}

/* testi hero: palette del sito (niente bianco su nero) */
.fd-hero-copy {
	color: var(--wp--preset--color--contrast);
}
.fd-hero-copy .fd-kicker {
	color: var(--wp--preset--color--accent-1);
}
.fd-hero-copy h1 {
	color: var(--wp--preset--color--contrast);
	text-shadow: none;
}
.fd-hero-sub {
	color: var(--wp--preset--color--accent-4);
}
.fd-hero-btns a.fd-ghost {
	border: 1.5px solid var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--accent-1);
	background: rgba(255, 253, 249, 0.6);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}
.fd-hero-btns a.fd-ghost:hover {
	background: var(--wp--preset--color--accent-1);
	color: #fff;
}

@media (max-width: 781px) {
	.fd-hero-full::before {
		background: linear-gradient(180deg,
			rgba(253, 248, 238, 0.12) 0%,
			rgba(253, 248, 238, 0.55) 42%,
			rgba(253, 248, 238, 0.94) 78%,
			rgba(253, 248, 238, 0.98) 100%) !important;
	}
	section.fd-hero-full { min-height: 76vh; }
}

@media (prefers-reduced-motion: reduce) {
	.fd-hero-slide { animation: none; }
	.fd-hero-slide:first-child { opacity: 1; }
}

/* V7.1 — velo più leggero a sinistra: foto vive, testo sempre su crema */
.fd-hero-full::before {
	background: linear-gradient(90deg,
		rgba(253, 248, 238, 0) 0%,
		rgba(253, 248, 238, 0.06) 30%,
		rgba(253, 248, 238, 0.62) 54%,
		rgba(253, 248, 238, 0.93) 72%,
		rgba(253, 248, 238, 0.98) 100%) !important;
}
/* leggero tocco caldo uniforme sulle foto */
.fd-hero-slides::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(251, 220, 173, 0.10);
	mix-blend-mode: multiply;
	pointer-events: none;
}
@media (max-width: 781px) {
	.fd-hero-full::before {
		background: linear-gradient(180deg,
			rgba(253, 248, 238, 0) 0%,
			rgba(253, 248, 238, 0.12) 32%,
			rgba(253, 248, 238, 0.88) 68%,
			rgba(253, 248, 238, 0.98) 100%) !important;
	}
}

/* V7.2 — soggetti foto a sinistra + velo pieno nella zona testo */
.fd-hero-slide {
	background-position: left center;
}
.fd-hero-full::before {
	background: linear-gradient(90deg,
		rgba(253, 248, 238, 0) 0%,
		rgba(253, 248, 238, 0.05) 26%,
		rgba(253, 248, 238, 0.55) 46%,
		rgba(253, 248, 238, 0.92) 62%,
		rgba(253, 248, 238, 0.98) 76%) !important;
}

/* =========================================================
   V7.3 — slider a 4 foto (via il render) + header trasparente
   sopra l'hero in home, con velo alto per la leggibilità
   ========================================================= */
.fd-hero-slide {
	animation-duration: 24s;
}
.fd-hero-slide:nth-child(2) { animation-delay: 6s; }
.fd-hero-slide:nth-child(3) { animation-delay: 12s; }
.fd-hero-slide:nth-child(4) { animation-delay: 18s; }
@keyframes fd-slide {
	0%   { opacity: 0; transform: scale(1); }
	5%   { opacity: 1; }
	25%  { opacity: 1; }
	33%  { opacity: 0; transform: scale(1.08); }
	100% { opacity: 0; transform: scale(1); }
}

/* l'hero sale sotto l'header fisso: al top l'header è trasparente sull'hero */
section.fd-hero-full {
	margin-top: calc(-1 * var(--fd-header-h, 84px)) !important;
	padding-top: calc(var(--fd-header-h, 84px) + 2rem);
}
/* velo alto: logo e nav leggibili sopra qualsiasi foto */
.fd-hero-slides::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(253, 248, 238, 0.72) 0%, rgba(253, 248, 238, 0.25) 12%, rgba(253, 248, 238, 0) 24%);
	pointer-events: none;
}

/* V7.4 — stessa specificità del blocco V6 per vincere sul margin-top */
.entry-content > section.fd-hero-full,
section.fd-hero-full.alignfull {
	margin-top: calc(-1 * var(--fd-header-h, 84px)) !important;
}

/* =========================================================
   V7.5 — mobile piccolo (iPhone): header compatto, hero NON
   sotto l'header (clearance robusta), velo più forte
   ========================================================= */
@media (max-width: 781px) {
	/* hero parte sotto l'header, niente margine negativo fragile */
	.entry-content > section.fd-hero-full,
	section.fd-hero-full.alignfull,
	section.fd-hero-full {
		margin-top: 0 !important;
		padding-top: 2.6rem;
		min-height: 72vh;
	}
	.fd-hero-slides::before {
		display: none; /* il velo alto serviva solo con l'hero sotto l'header */
	}

	/* header compatto: logo più piccolo, righe strette, lingue senza divisore */
	.fd-header {
		padding-top: 0.45rem !important;
		padding-bottom: 0.5rem !important;
	}
	.fd-header .wp-block-site-logo img {
		height: 34px;
	}
	.fd-header .wp-block-group {
		row-gap: 0.15rem;
	}
	.fd-nav {
		font-size: 0.86rem;
		gap: 0.1rem 0.85rem;
	}
	.fd-lang {
		margin-inline-start: 0;
		padding-inline-start: 0;
		border-inline-start: 0;
	}
	.fd-lang a {
		padding: 0.2rem 0.5rem;
	}

	/* velo mobile più deciso: testo leggibile anche su foto chiare */
	.fd-hero-full::before {
		background: linear-gradient(180deg,
			rgba(253, 248, 238, 0.10) 0%,
			rgba(253, 248, 238, 0.45) 30%,
			rgba(253, 248, 238, 0.88) 52%,
			rgba(253, 248, 238, 0.97) 72%,
			rgba(253, 248, 238, 0.99) 100%) !important;
	}
	.fd-hero-copy .fd-kicker {
		font-size: 0.72rem;
	}
}

/* =========================================================
   V7.6 — mobile: trasparenza sopra l'hero ANCHE qui,
   header ultra-compatto
   ========================================================= */
@media (max-width: 781px) {
	.fd-header {
		padding-top: 0.35rem !important;
		padding-bottom: 0.4rem !important;
	}
	.fd-header .wp-block-site-logo img {
		height: 30px;
		border-radius: 8px;
	}
	.fd-header .wp-block-group {
		row-gap: 0.1rem;
	}
	.fd-nav {
		font-size: 0.84rem;
		gap: 0.05rem 0.75rem;
	}
	.fd-lang {
		font-size: 0.72rem;
		gap: 0.2rem;
	}
	.fd-lang a {
		padding: 0.16rem 0.45rem;
	}

	/* hero di nuovo sotto l'header trasparente */
	.entry-content > section.fd-hero-full,
	section.fd-hero-full.alignfull,
	section.fd-hero-full {
		margin-top: calc(-1 * var(--fd-header-h, 96px)) !important;
		padding-top: calc(var(--fd-header-h, 96px) + 1.4rem);
		min-height: 76vh;
	}
	.fd-hero-slides::before {
		display: block;
	}
}

/* =========================================================
   V7.7 — menu hamburger su mobile: header a una riga,
   pannello apribile con nav + lingue
   ========================================================= */
.fd-burger {
	display: none;
}
@media (max-width: 781px) {
	.fd-header .wp-block-group {
		flex-wrap: nowrap;
		justify-content: space-between;
		row-gap: 0;
	}
	.fd-burger {
		display: inline-flex;
		flex-direction: column;
		justify-content: center;
		gap: 5px;
		background: rgba(255, 253, 249, 0.72);
		border: 1px solid var(--wp--preset--color--accent-5);
		border-radius: 10px;
		padding: 11px 10px;
		cursor: pointer;
	}
	.fd-burger span {
		display: block;
		width: 20px;
		height: 2px;
		background: var(--wp--preset--color--accent-2);
		border-radius: 2px;
		transition: transform 0.25s var(--fd-ease), opacity 0.2s;
	}
	.fd-menu-open .fd-burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
	.fd-menu-open .fd-burger span:nth-child(2) { opacity: 0; }
	.fd-menu-open .fd-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

	.fd-nav {
		display: none;
		position: absolute;
		top: calc(100% + 0.4rem);
		left: 0.6rem;
		right: 0.6rem;
		background: rgba(254, 251, 244, 0.97);
		-webkit-backdrop-filter: blur(14px);
		backdrop-filter: blur(14px);
		border: 1px solid var(--wp--preset--color--accent-5);
		border-radius: 16px;
		box-shadow: var(--fd-shadow);
		padding: 0.6rem 1rem 1rem;
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}
	.fd-menu-open .fd-nav {
		display: flex;
		animation: fd-fade-up 0.25s var(--fd-ease) both;
	}
	.fd-nav > a {
		padding: 0.7rem 0.2rem;
		font-size: 1rem;
		border-bottom: 1px solid rgba(238, 223, 200, 0.6);
		text-align: left;
	}
	.fd-nav > a::after {
		display: none;
	}
	.fd-nav > a:last-of-type {
		border-bottom: 0;
	}
	.fd-lang {
		margin: 0.5rem 0 0;
		padding: 0.8rem 0 0;
		border-inline-start: 0;
		border-top: 1px solid var(--wp--preset--color--accent-5);
		justify-content: center;
		gap: 0.5rem;
		font-size: 0.8rem;
	}
	.fd-lang a {
		padding: 0.3rem 0.7rem;
	}
}

/* V7.8 — su mobile la admin bar WP scorre via (position absolute):
   l'header si aggancia a top 0, niente fascia vuota sopra */
@media (max-width: 600px) {
	.fd-header {
		top: 0 !important;
	}
}

/* V7.9 — input CF7: border-box, mai oltre il bordo della card */
.wpcf7, .wpcf7 * {
	box-sizing: border-box;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
	max-width: 100%;
}

/* V9 — desktop largo: layout articolo 1360, card ricetta a 2 colonne
   (ingredienti sticky a sinistra, step a destra). Il CSS free di WPRM
   collassa SEMPRE le colonne (.wprm-column-rows-recipe-900 incondizionato):
   qui le ripristiniamo solo quando la colonna articolo è davvero larga. */
.wp-block-group.fd-post-layout.alignfull,
.fd-post-layout {
	max-width: min(1560px, calc(100% - 1.6rem));
	margin-inline: auto;
}
@media (min-width: 1280px) {
	/* overflow hidden (per gli angoli arrotondati) crea uno scroll-container
	   e uccide lo sticky: clip ritaglia uguale ma lascia funzionare lo sticky */
	.fd-article .wprm-recipe-template-meadow {
		overflow: clip;
	}
	.fd-article .wprm-recipe-template-meadow .wprm-layout-column-container.wprm-column-rows-recipe-900 {
		flex-direction: row;
		align-items: flex-start;
	}
	.fd-article .wprm-recipe-template-meadow .wprm-column-rows-recipe-900 > .wprm-layout-column {
		width: auto;
		min-width: 0;
	}
	.fd-article .wprm-recipe-template-meadow .meadow-main-left {
		position: sticky;
		top: calc(var(--fd-header-h, 72px) + 1.2rem);
	}

	/* V9.1 — meno aria dentro la card: usa tutta la colonna articolo
	   (non solo i 860px del testo), padding e gap più compatti,
	   ingredienti 38% / preparazione 62%. L'entry-content si allarga
	   alla card, ma i blocchi di testo restano a 860 per leggibilità. */
	.fd-card.fd-article > .entry-content {
		max-width: none;
	}
	.fd-article .entry-content > :not(.wprm-recipe-container) {
		max-width: 860px;
		margin-inline: auto;
	}
	.fd-article .entry-content > .wprm-recipe-container {
		max-width: none;
	}
	.fd-article .wprm-recipe-template-meadow .wprm-column-gap-40 {
		column-gap: 28px;
	}
	.fd-article .wprm-recipe-template-meadow .wprm-column-rows-recipe-900 > .meadow-main-left {
		flex: 0 0 38%;
	}
	.fd-article .wprm-recipe-template-meadow .wprm-column-rows-recipe-900 > .meadow-main-right {
		flex: 1 1 auto;
	}
}

/* V8 — pagina risultati ricerca: card come archivio + form nel box titolo */
.fd-card .wp-block-search {
	max-width: 480px;
	margin-inline: auto;
}
.fd-card .wp-block-search .wp-block-search__input {
	min-width: 0;
}
.fd-grid .wp-block-post-excerpt {
	padding-inline: 1.1rem;
	margin-top: 0.5rem;
	font-size: 0.9rem;
	line-height: 1.55;
	color: var(--wp--preset--color--accent-2);
}
.fd-grid .wp-block-post-excerpt p {
	margin: 0;
}

/* V9.2 — compattamento: card ricetta e sezioni sotto con meno aria,
   a tutte le larghezze (richiesta utente: "quanto padding inutile") */
.fd-article .wprm-recipe-template-meadow .wprm-layout-container.wprm-padding-40 {
	padding: 22px 24px;
}
.fd-article .wprm-recipe-container {
	margin-block: 1.4rem;
}
.fd-article .entry-content > h2 {
	margin-block-start: 1.7rem;
	margin-block-end: 0.8rem;
}
.wprm-recipe-template-meadow .wprm-recipe-jump-to-section-container {
	margin-block: 0.5rem 0.9rem !important;
}
.wprm-recipe-template-meadow .wprm-recipe-jump-to-section {
	min-height: 92px;
	min-width: 112px;
	padding: 0.7rem 0.85rem !important;
}
.wprm-recipe-template-meadow .meadow-main-right > .wprm-spacer {
	display: none;
}
.wprm-recipe-template-meadow .wprm-recipe-jump-to-section-container {
	display: flex !important;
	justify-content: center;
	gap: 2.6rem;
}

/* V9.3 — niente scatola-nella-scatola: dentro l'articolo la card WPRM
   si fonde con la card che la contiene (né bordo né padding propri) */
.fd-article .wprm-recipe.wprm-recipe-template-meadow {
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 0 !important;
}
.fd-article .wprm-recipe-template-meadow .wprm-layout-container.wprm-padding-40 {
	padding: 10px 0;
}
.fd-article .wprm-recipe-template-meadow {
	--meadow-main-background-color: transparent !important;
}

/* V9.4 — UNA sola larghezza contenuto nell'articolo: titolo, immagine hero,
   testo, card ricetta e sezioni sotto condividono gli stessi bordi */
.fd-card.fd-article > *,
.fd-card.fd-article > .entry-content {
	max-width: 1020px;
	margin-inline: auto;
}
.fd-article .entry-content > :not(.wprm-recipe-container) {
	max-width: none;
	margin-inline: 0;
}

/* V9.5 — pagina articolo "aperta" (richiesta utente): il contenuto vive sul
   gradiente, niente card bianca ne padding extra su articolo e sidebar */
.single-post .fd-card {
	background: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	padding: 0 !important;
}
.single-post .fd-sidebar .fd-card {
	padding: 0 !important;
}
