@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=EB+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Inter:ital,wght@0,400;0,500;0,600;1,400&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Lora:ital,wght@0,400;0,500;0,600;1,400&family=Nunito+Sans:ital,wght@0,400;0,600;0,700;1,400&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Source+Sans+3:ital,wght@0,400;0,600;0,700;1,400&display=swap");

/* Il contenuto brochure non eredita Unalome Stile Sito. Navbar/footer restano del tema. */
main:has(.unalome-brochure),
.page-content-wrapper:has(.unalome-brochure),
.unalome-brochure,
.unalome-brochure-toolbar,
.unalome-brochure-nav {
	--unalome-card-blue: #b1c2e1;
	--unalome-primary: #9aadd0;
	--unalome-primary-dark: #4a5875;
	--unalome-primary-deep: #3d4a63;
	--unalome-accent: #6d5a4e;
	--unalome-accent-light: #c5d3e8;
	--unalome-bg: #ece7e2;
	--unalome-bg-soft: #f6f1ec;
	--unalome-section-tint: #e8ddd4;
	--unalome-section-light: #f7f3ee;
	--unalome-text: #2c2623;
	--unalome-muted: #8a7a72;
	--unalome-card: #fbf8f4;
	--unalome-heading-font: Georgia, "Times New Roman", serif;
	--unalome-body-font: Georgia, "Times New Roman", serif;
	--unalome-ink: #2c2623;
	--unalome-page: #fbf8f4;
}

/* Isolato: deve vincere sul tema Frappe del sito. */
.page-content-wrapper:has(.unalome-brochure) main,
main:has(.unalome-brochure) {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

.page-content-wrapper:has(.unalome-brochure) .page-breadcrumbs,
.page-content-wrapper:has(.unalome-brochure) .page-header-wrapper {
	display: none !important;
}

.unalome-brochure-toolbar {
	display: flex !important;
	flex-wrap: wrap;
	gap: 0.75rem 1.25rem;
	align-items: center;
	justify-content: space-between;
	padding: 0.85rem 1.5rem;
	background: #f6f1ec;
	color: #3d342f;
	font-size: 0.85rem;
}

.unalome-brochure-toolbar a {
	color: var(--unalome-accent, #6d5a4e);
}

.unalome-brochure-views a {
	margin-left: 0.5rem;
	text-decoration: none;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 0.72rem;
	color: var(--unalome-accent, #6d5a4e);
}

.unalome-brochure-views a.is-active {
	font-weight: 700;
	border-bottom: 1px solid var(--unalome-accent, #6d5a4e);
}

.unalome-brochure {
	background: #ece7e2;
	color: var(--unalome-ink, #2c2623);
	padding: 0 0 2rem;
}

.unalome-brochure-page {
	position: relative;
	max-width: 920px;
	min-height: 90vh;
	margin: 0 auto 1.5rem;
	padding: 2.5rem 2.75rem 3.5rem;
	background-color: var(--unalome-page, #fbf8f4);
	background-repeat: no-repeat;
	/* La foto è larga quanto la pagina e alta di conseguenza: così tiene le sue
	   proporzioni e resta ferma anche quando il testo allunga la pagina. Con
	   "cover" il ritaglio veniva ricalcolato a ogni riga aggiunta. */
	background-size: 100% auto;
	background-position: center top;
	box-sizing: border-box;
}

/* Foto che riempie tutta la pagina: resta piena, ma viene ritagliata e cambia
   inquadratura al crescere del contenuto. */
.unalome-brochure-page--riempi {
	background-size: cover;
	background-position: center top;
}

.unalome-brochure-page--copertina {
	background-color: #e8ddd4;
}

.unalome-brochure-pagehead {
	margin-bottom: 1.75rem;
}

.unalome-brochure-pagehead p {
	margin: 0;
}

.unalome-brochure-row {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	gap: 1.4rem 1.6rem;
	margin-bottom: 2rem;
	align-items: stretch;
	width: 100%;
	max-width: 100%;
}

.unalome-brochure-cell,
.unalome-brochure-rich,
.unalome-brochure-body {
	min-width: 0;
	max-width: 100%;
	overflow-wrap: anywhere;
	word-wrap: break-word;
	word-break: break-word;
}

.unalome-brochure-cell h1,
.unalome-brochure-cell h2,
.unalome-brochure-cell h3 {
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 500;
	color: inherit;
	line-height: 1.25;
}

.unalome-brochure-cell h1 {
	font-size: clamp(2.6rem, 6vw, 4rem);
	margin: 1.5rem 0 0.6rem;
}

.unalome-brochure-cell h2 {
	font-size: 1.35rem;
	margin: 0 0 0.85rem;
}

.unalome-brochure-cell p,
.unalome-brochure-cell li,
.unalome-brochure-cell h1,
.unalome-brochure-cell h2,
.unalome-brochure-cell h3,
.unalome-brochure-rich p,
.unalome-brochure-rich li {
	line-height: 1.65;
	overflow-wrap: anywhere;
	word-break: break-word;
	max-width: 100%;
}

.unalome-brochure-rich img,
.unalome-brochure-cell img {
	max-width: 100%;
	height: auto;
}

/* Varianti tipografiche del testo: sono classi, non stili incollati nel
   contenuto, così valgono sia nell'editor sia sulla pagina pubblicata. */
.unalome-occhiello {
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-size: 0.72rem;
	margin: 0 0 0.6rem;
}

.unalome-didascalia {
	font-size: 0.8rem;
	font-style: italic;
	opacity: 0.8;
	margin: 0.35rem 0 0;
}

.unalome-nota {
	border-left: 2px solid var(--unalome-accent, #6d5a4e);
	padding-left: 0.9rem;
	font-style: italic;
}

.unalome-riquadro {
	background: #f3eee8;
	padding: 1.4rem 1.2rem;
	margin: 0 0 1rem;
}

.unalome-riquadro > :first-child {
	margin-top: 0;
}

.unalome-riquadro > :last-child {
	margin-bottom: 0;
}

.unalome-brochure-rich hr,
.unalome-brochure-cell hr {
	display: block;
	background: none;
	border: none;
	height: 0;
	margin: 1rem auto;
}

.unalome-brochure-rich blockquote,
.unalome-brochure-cell blockquote {
	margin: 0;
	padding: 0.25rem 0 0.5rem;
	border: none !important;
	font-family: Georgia, "Times New Roman", serif;
	font-style: italic;
}

.unalome-brochure-rich blockquote::before,
.unalome-brochure-cell blockquote::before {
	content: "“";
	display: block;
	font-family: Georgia, "Times New Roman", serif;
	font-size: var(--q-size, 3.5rem);
	line-height: 0.65;
	font-style: normal;
	color: var(--q-color, var(--unalome-accent, #6d5a4e));
	margin: 0 0 0.35rem;
}

.unalome-brochure-rich blockquote[data-mark]::before,
.unalome-brochure-cell blockquote[data-mark]::before {
	content: attr(data-mark);
}

.unalome-brochure-rich blockquote + blockquote::before,
.unalome-brochure-cell blockquote + blockquote::before {
	content: none !important;
	display: none !important;
	margin: 0 !important;
}

.unalome-brochure-rich ol,
.unalome-brochure-rich ul,
.unalome-brochure-cell ol,
.unalome-brochure-cell ul {
	list-style: none;
	padding-left: 0;
	margin: 0.45rem 0;
	counter-reset: list-0;
}

.unalome-brochure-rich li,
.unalome-brochure-cell li {
	list-style: none;
	position: relative;
	padding-left: 1.35rem;
	margin: 0.2rem 0;
}

.unalome-brochure-rich li > .ql-ui,
.unalome-brochure-cell li > .ql-ui {
	display: none;
}

.unalome-brochure-rich li[data-list="bullet"]::before,
.unalome-brochure-rich ul > li:not([data-list])::before,
.unalome-brochure-cell li[data-list="bullet"]::before,
.unalome-brochure-cell ul > li:not([data-list])::before,
.unalome-brochure-cell--elenco li::before {
	content: "•";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--unalome-accent, #6d5a4e);
	font-style: normal;
	font-size: 1.15em;
	line-height: 1.45;
}

.unalome-brochure-rich li[data-list="ordered"],
.unalome-brochure-rich ol > li:not([data-list]),
.unalome-brochure-cell li[data-list="ordered"],
.unalome-brochure-cell ol > li:not([data-list]) {
	counter-increment: list-0;
}

.unalome-brochure-rich li[data-list="ordered"]::before,
.unalome-brochure-rich ol > li:not([data-list])::before,
.unalome-brochure-cell li[data-list="ordered"]::before,
.unalome-brochure-cell ol > li:not([data-list])::before {
	content: counter(list-0) ".";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--unalome-accent, #6d5a4e);
	font-style: normal;
	font-variant-numeric: tabular-nums;
}

.unalome-brochure-rich li[data-list="checked"]::before,
.unalome-brochure-cell li[data-list="checked"]::before {
	content: "☑";
	position: absolute;
	left: 0;
	color: var(--unalome-accent, #6d5a4e);
	font-style: normal;
}

.unalome-brochure-rich li[data-list="unchecked"]::before,
.unalome-brochure-cell li[data-list="unchecked"]::before {
	content: "☐";
	position: absolute;
	left: 0;
	color: var(--unalome-accent, #6d5a4e);
	font-style: normal;
}

.unalome-brochure-rich li.ql-indent-1,
.unalome-brochure-cell li.ql-indent-1 {
	padding-left: 2.7rem;
}

.unalome-brochure-rich li.ql-indent-2,
.unalome-brochure-cell li.ql-indent-2 {
	padding-left: 4.05rem;
}

.unalome-brochure-covertext {
	max-width: 22rem;
	padding: 0.5rem 0.75rem 0.5rem 0;
}

.unalome-brochure-serie,
.unalome-brochure-mese,
.unalome-brochure-occhiello,
.unalome-brochure-boxlabel,
.unalome-brochure-brand {
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-size: 0.72rem;
}

.unalome-brochure-mese {
	color: var(--unalome-accent, #6d5a4e);
	margin: 0.75rem 0 0;
}

.unalome-brochure-lead {
	font-family: Georgia, serif;
	font-style: italic;
	margin-top: 1.25rem;
}

.unalome-brochure-cell--citazione blockquote {
	margin: 0;
	padding-top: 0.25rem;
}

.unalome-brochure-marks {
	display: block;
	font-family: Georgia, serif;
	font-size: 3.5rem;
	line-height: 0.7;
	color: #e0b8b1;
}

.unalome-brochure-cell--citazione p,
.unalome-brochure-cell--citazione div {
	font-family: Georgia, serif;
}

.unalome-brochure-cell--immagine figure {
	margin: 0;
	height: 100%;
}

.unalome-brochure-cell--immagine img {
	width: 100%;
	height: 100%;
	min-height: 220px;
	object-fit: cover;
	display: block;
}

.unalome-brochure-cell--immagine figcaption {
	font-size: 0.75rem;
	color: #8a7a72;
	margin-top: 0.4rem;
}

.unalome-brochure-cell--elenco ul {
	margin: 0.75rem 0 0;
}

.unalome-brochure-note {
	color: var(--unalome-accent, #6d5a4e);
	font-family: Georgia, serif;
}

.unalome-brochure-video {
	margin-top: 1rem;
	padding: 1.1rem;
	background: #d5dde6;
	min-height: 7rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.4rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: 0.75rem;
}

.unalome-brochure-video a,
.unalome-brochure-video em {
	color: var(--unalome-accent, #6d5a4e);
	font-style: normal;
	text-transform: none;
	letter-spacing: 0;
}

.unalome-brochure-box {
	background: #f3eee8;
	padding: 2rem 1.6rem;
	min-height: 100%;
}

.unalome-brochure-question {
	font-family: Georgia, serif;
	font-style: italic;
	font-size: 1.55rem;
	line-height: 1.35;
	margin: 0.75rem 0 0;
}

.unalome-brochure-sign {
	font-family: Georgia, "Palatino Linotype", serif;
	font-style: italic;
	font-size: 1.35rem;
	margin: 1.5rem 0 0.2rem;
}

.unalome-brochure-foot {
	margin-top: 1.5rem;
}

.unalome-brochure-foot p {
	margin: 0;
}

.unalome-brochure--slide .unalome-brochure-page {
	display: none;
	min-height: calc(100vh - 110px);
}

.unalome-brochure--slide .unalome-brochure-page.is-active {
	display: block;
}

.unalome-brochure-nav {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1.25rem;
	padding: 1rem;
	background: #f6f1ec;
}

.unalome-brochure-nav button {
	border: 1px solid #c4b6ae;
	background: #fff;
	padding: 0.35rem 0.9rem;
	cursor: pointer;
}

.unalome-imp-split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
}

.unalome-imp-editor,
.unalome-imp-preview,
.unalome-ed-quill,
.unalome-ed-host,
.unalome-ed-canvas {
	min-width: 0;
	max-width: 100%;
}

.unalome-ed-canvas {
	width: calc(var(--unalome-col-span, 6) / 6 * 100%);
	max-width: 100%;
	box-sizing: border-box;
}

.unalome-ed-quill .ql-container,
.unalome-ed-quill .ql-editor {
	min-width: 0;
	max-width: 100%;
	overflow-wrap: anywhere;
	word-break: break-word;
	white-space: pre-wrap;
}

.unalome-imp-editor {
	min-height: 0;
}

/* L'anteprima resta agganciata sotto la barra delle pagine mentre si scorre. */
.unalome-imp-preview {
	background: #efe8e1;
	padding: 0.6rem;
	border-radius: 8px;
	position: sticky;
	top: var(--imp-tabs-h, 52px);
	align-self: start;
	max-height: calc(100vh - var(--imp-tabs-h, 52px) - 150px);
	overflow: auto;
}

.unalome-imp-block-preview {
	background: #fbf8f4;
	padding: 1rem;
	border-radius: 6px;
	min-height: 4rem;
}

.unalome-imp-preview .unalome-brochure-page {
	max-width: 100%;
	min-height: 0;
	margin: 0;
	padding: 1.2rem;
	transform-origin: top center;
	overflow: hidden;
}

.unalome-imp-preview-label {
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8a7a72;
	margin: 0 0 0.5rem;
}

@media (max-width: 1100px) {
	.unalome-imp-split {
		grid-template-columns: 1fr;
	}
	.unalome-imp-preview {
		position: static;
		max-height: none;
		order: -1;
	}
}

@media (max-width: 768px) {
	.unalome-brochure-page {
		padding: 1.5rem 1.1rem 2.5rem;
	}
	.unalome-brochure-row {
		grid-template-columns: 1fr !important;
	}
	.unalome-brochure-cell {
		grid-column: 1 / -1 !important;
	}
}
