/* ==========================================================================
   Regole che LawPlus scriveva in linea uguali su tutte le pagine
   (quelle che cambiano da pagina a pagina le genera functions.php)
   ========================================================================== */
.slz-title-command { background-size: cover; background-position: center center; }
.slz-title-command .title-command-wrapper { text-align: center; padding: 160px 0; }
.slz-title-command .icon-top { color: #ffffff; }
.slz-title-command .icon-top:before,
.slz-title-command .icon-top:after { background-color: #ffffff; }
.slz-title-command .title-command-wrapper .title { font-size: 48px; color: #ffffff; }
.slz-title-command .title-command-wrapper .breadcrumb .breadcrumb-link { font-size: 14px; color: #ffffff; }
.slz-title-command .title-command-wrapper .breadcrumb .breadcrumb-active { font-size: 14px; color: #b99f46; }
.slz-topbar-list .social i { font-size: 16px; }
.slz-footer-bottom { background-color: #050e1f !important; color: #454b57; }
.slz-footer-bottom .slz-name { color: #454b57 !important; }
.slz-footer-bottom .social i { font-size: 16px; }

/* ==========================================================================
   Porcaro — adattamenti a Twenty Twenty-Five
   ========================================================================== */

/* I contenitori dei blocchi non devono aggiungere spazi o larghezze proprie:
   la griglia è quella di LawPlus (.container / .row / .col-*). */
.wp-site-blocks,
.wp-site-blocks > *,
.body-wrapper,
.slz-wrapper-content,
.wp-block-template-part { margin: 0; padding: 0; }
.wp-site-blocks > * + * { margin-block-start: 0; }
.slz-main-content.wp-block-group,
.slz-main-content .wp-block-group { box-sizing: border-box; }

/* Le pagine WPBakery usano righe "a tutta larghezza" calcolate via JS: evitiamo tagli orizzontali. */
.body-wrapper { overflow: hidden; }

/* Contenitore tecnico invisibile (vedi functions.php, wptexturize). */
porcaro-raw { display: contents; }

/* Footer: il wrapper <footer> ora è il template part. */
footer.wp-block-template-part { display: block; }

/* Accessibilità: focus visibile su tutti i controlli dell'header/footer. */
.slz-header-wrapper a:focus-visible,
.slz-hamburger-menu:focus-visible,
.slz-wrapper-footer a:focus-visible,
.back-to-top a:focus-visible {
	outline: 2px solid #c8ac48 !important;
	outline-offset: 2px;
}
.slz-hamburger-menu { cursor: pointer; }

/* ==========================================================================
   Testata home (sostituisce Slider Revolution "home-page-02")
   ========================================================================== */
.porcaro-hero {
	position: relative;
	height: 100vh;
	min-height: 500px;
	overflow: hidden;
	background: #111;
}
.porcaro-hero__slides,
.porcaro-hero__slide { position: absolute; inset: 0; }
.porcaro-hero__slide {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 0;
	animation-duration: var(--porcaro-cycle, 27s);
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	animation-fill-mode: both;
}
.porcaro-hero__slide:first-child { opacity: 1; }
.porcaro-hero__content {
	position: absolute;
	left: 50%;
	top: calc(50% - 104px);
	width: 1240px;
	max-width: 100%;
	transform: translateX(-50%);
	padding-left: 19px;
	box-sizing: border-box;
	color: #fff;
	font-family: "Libre Baskerville", serif;
}
.porcaro-hero__title {
	font-size: 40px;
	line-height: 48px;
	font-weight: 700;
	white-space: nowrap;
}
.porcaro-hero__subtitle,
.porcaro-hero__names {
	font-size: 24px;
	line-height: 24px;
	font-weight: 400;
	white-space: pre;
}
.porcaro-hero__subtitle { margin-top: 3px; }
.porcaro-hero__names { margin-top: 9px; white-space: normal; }
.porcaro-hero__names span { white-space: nowrap; margin-right: 1.15em; }

@media (max-width: 1239px) {
	.porcaro-hero__content { padding-left: 40px; }
}
/* Su mobile LawPlus sovrapponeva le righe: qui vanno a capo senza sovrapporsi. */
@media (max-width: 767px) {
	.porcaro-hero__content { top: auto; bottom: 50%; transform: translate(-50%, 50%); padding: 0 32px; }
	.porcaro-hero__title { font-size: 26px; line-height: 32px; white-space: normal; }
	.porcaro-hero__subtitle,
	.porcaro-hero__names { font-size: 15px; line-height: 20px; white-space: normal; }
	.porcaro-hero__subtitle { margin-top: 10px; }
	.porcaro-hero__names { margin-top: 6px; }
	.porcaro-hero__names span { display: inline-block; margin-right: 14px; }
}
@media (prefers-reduced-motion: reduce) {
	.porcaro-hero__slide { animation: none !important; }
	.porcaro-hero__slide:not(:first-child) { opacity: 0 !important; }
}

/* ==========================================================================
   Articoli e liste (template semplici per news, ricerca, archivi)
   ========================================================================== */
.porcaro-single__title { font-family: "Libre Baskerville", serif; color: #111; margin-bottom: 10px; }
.porcaro-single__date { color: #c8ac48; margin-bottom: 30px; }
.porcaro-list .wp-block-post { margin-bottom: 40px; }
.porcaro-list .wp-block-post-title { font-family: "Libre Baskerville", serif; font-size: 20px; margin-bottom: 6px; }
.porcaro-list .wp-block-post-title a { color: #111; }
.porcaro-list .wp-block-post-date { color: #c8ac48; font-size: 13px; margin-bottom: 10px; }
