/* CSS Document */

#MainContent_ctl00_pnl_slide {
	display: none;
}

/* ---------- Home 1 ---------- */
div.home1 {
	max-width: 1024px;
	margin: 0 auto;
}
div.home1 h2 {
	padding: 0;
	margin: 0;
	font-size: 12px;
	font-weight: bold;
	line-height: 16px;
}
div.home1 p {
	font-family: 'Montserrat', sans-serif;
	padding: 20px 0 0;
	margin: 0;
	text-transform: none;
	font-size: 14px;
}

/* ---------- Buttons (button1 and button2 are identical) ---------- */
div.button1,
div.button2 {
	margin-top: 30px;
	padding: 5px;
	background-color: #D13239;
	color: #fff;
	max-width: fit-content;
}
div.button1 a,
div.button2 a {
	border: 2px solid #fff;
	padding: 10px 40px;
	display: inline-block;
	color: #fff;
}
div.button1 a:hover,
div.button2 a:hover {
	color: #D13239;
	text-decoration: none;
	background-color: #fff;
}

.home7 {
	background-color: #000;
	z-index: 1;
}

.musei-vaticani, .santa-maggiore {
	border: 1px solid #ccc;
	box-shadow: 0 0 5px 1px #f1f1f1;
}

/* ---------- Slide 1 ---------- */
#slide1 {
	height: 500px;
	max-width: 1440px;
	max-height: 630px;
	margin: 0 auto;
	z-index: 2;
}
#slide1 > div.codrops-top > p {
	margin-bottom: -25px;
	margin-top: 0;
}
.codrops-top {
	padding-top: 5%;
}
.codrops-top img {
	/* max-width: 350px; */
	background: linear-gradient(45deg, white, transparent);
}
.novita {
	font-size: 32px;
	font-weight: bold;
}
.banners img.mobile { display: none; }

@media only screen and (max-width: 767px) {
	#slide1 {
		max-width: 640px;
		max-height: 254px;
	}
	.codrops-top {
		padding-top: 10%;
	}
	.codrops-top img {
		max-width: 80%;
	}
	.novita {
		font-size: 1.5em;
		margin: 20px 0;
		padding-top: 20px;
	}
	.banners img.mobile { display: block; }
	.banners img.desktop { display: none; }
}

@media (min-width: 991px) {
	div#pnl_slide {
		padding-left: 4rem;
		padding-right: 4rem;
	}
}

div#MainContent_ctl00_pnl_instagram .row.inst {
	justify-content: center;
}

#MainContent_ctl00_pnl_main2 {
	padding-bottom: 50px;
}

/* ---------- Home 2 ---------- */
div.home2 {
	max-width: 1100px;
	margin: 70px auto 0;
}

/* ---------- Pallini / Home 3 / Round ---------- */
div.pallini {
	max-width: 1024px;
	margin: 0 auto;
	padding: 40px 0;
}
div.home3 {
	/* background-color: #f1f1f1; */
	margin: 0 auto;
	text-align: center;
	/*
	-moz-box-shadow:    inset  0 -10px 10px -10px grey;
	-webkit-box-shadow: inset  0 -10px 10px -10px grey;
	 box-shadow:        inset  0 -10px 10px -10px grey;
	*/
}
div.home3 img {
	padding-top: 30px;
	padding-bottom: 10px;
}
div.home3 h1 {
	font-size: 28px;
	padding: 0;
	margin: 0;
}
div.round h1 {
	font-size: 20px;
	font-weight: 400;
	padding: 0;
	margin: 10px 0;
}
div.round p {
	font-family: 'Marcellus', sans-serif;
	padding: 0;
	margin: 0;
	text-transform: none;
	font-size: 12px;
	text-align: center;
}
div.round a {
	font-size: 14px;
	color: black;
}
div.round a:hover {
	text-decoration: none;
	color: #ccc;
}
.round-box {
	text-align: center;
	margin: 0 auto;
	padding: 15px;
}

/* ---------- Shared: section headings and red accent text ----------
   Kept after the .home3 / .round rules so the cascade order matches the original file. */
div.home1 h1,
div.home2 h3,
div.pallini h1 {
	font-size: 28px;
	font-weight: 400;
	padding: 0;
	margin: 0;
}
div.home1 span,
div.home2 span,
div.round span,
div.pallini span {
	color: #D13239;
}

.tile .art {
	height: auto;
}

div#mobile-main2-fragment.mobile-home-fragment {
	padding: 0 1rem;
}


div#pnl_slide div#myCarousel {
    background: #f9f5f1;
}

/* FIX Cumulative Layout Shift (CLS) */

#myCarousel .carousel-item video, #myCarousel .carousel-item img {
	aspect-ratio: 3840 / 1000;
	height: auto;
	background: #f9f5f1;
}

@media (max-width: 991px) {
	#myCarousel .carousel-item video, #myCarousel .carousel-item img {
		/* aspect-ratio: 9 / 16; */
	}
}

/* END FIX Cumulative Layout Shift (CLS) */


.el-fam { max-width: 1140px; color: var(--laura-brand); }
.el-fam h3 { color: #000; }
.el-fam h3::first-letter { color: var(--laura-brand); }
.el-fam__label { font-size: 10px; letter-spacing: 2px; }
.el-fam__badge { top: 8px; right: 8px; padding: 5px 8px; background: var(--laura-brand); color: #dfecab; }
.el-fam__img { object-fit: contain; mix-blend-mode: multiply; transition: transform .45s; }
@media (hover: hover) {
.el-fam a:hover .el-fam__img { transform: scale(1.05); }
.el-fam a:hover h3 { text-decoration: underline; }
}
@media (prefers-reduced-motion: reduce) { .el-fam__img { transition: none; } }