/* Mikron Projects Grid */
.pg-projects{width:100%}

.pg-filter{
	list-style:none;
	margin:0 0 28px;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	gap:8px 26px;
}
.pg-filter li{margin:0}
.pg-filter a{
	position:relative;
	display:inline-block;
	padding:4px 0;
	font-size:15px;
	font-weight:500;
	color:#5A6472;
	text-decoration:none;
	cursor:pointer;
	transition:color .15s ease;
}
.pg-filter li.active a{color:#C1121F}
.pg-filter li.active a::after{
	content:"";
	position:absolute;
	left:0;bottom:-2px;
	width:100%;height:2px;
	background:#C1121F;
}

.pg-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:30px;
}

.pg-item{
	display:flex;
	flex-direction:column;
	background:#fff;
	border-radius:0;
	overflow:hidden;
	text-decoration:none;
	color:inherit;
	transition:transform .18s ease, box-shadow .18s ease;
}
a.pg-item:hover{transform:translateY(-4px)}

.pg-thumb{
	position:relative;
	margin:0;
	width:100%;
	aspect-ratio:1;
	min-height:200px;
	background:#eef1f5;
	overflow:hidden;
}
.pg-thumb .pg-img{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
}
.pg-img{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	transition:transform .4s ease, opacity .35s ease;
}
.pg-item:hover .pg-img{transform:scale(1.04)}
.pg-img--hover{opacity:0}
.pg-item:hover .pg-img--hover{opacity:1}

.pg-info{padding:16px 18px 20px}
.pg-title{
	margin:0 0 8px;
	font-size:19px;
	line-height:1.3;
	color:#0B2545;
}
.pg-title a{text-decoration:none;color:inherit}
.pg-summary{
	font-size:15px;
	line-height:1.5;
	color:#5A6472;
}
.pg-summary p{margin:0}

/* Stato filtrato */
.pg-item.pg-hidden{display:none}

@media (max-width:1024px){
	.pg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.pg-style-overlay .pg-title{font-size:26px}
}
@media (max-width:767px){
	.pg-grid{grid-template-columns:1fr 1fr !important;gap:12px !important}
	.pg-style-overlay .pg-title{font-size:18px}
}

/* ===== Stile OVERLAY: testo sull'immagine ===== */
.pg-style-overlay .pg-item{position:relative;display:grid;border-radius:0;overflow:hidden}
.pg-style-overlay .pg-thumb{grid-area:1 / 1;aspect-ratio:1;min-height:200px;margin:0;width:100%}

.pg-style-overlay .pg-thumb::after{
	content:"";
	position:absolute;
	inset:0;
	z-index:1;
	background:rgba(11,37,69,.18);
	transition:background .3s ease;
}
.pg-style-overlay .pg-item:hover .pg-thumb::after{background:rgba(11,37,69,.5)}

.pg-style-overlay .pg-info{
	grid-area:1 / 1;
	z-index:2;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
	pointer-events:none;
}

.pg-style-overlay .pg-title{
	margin:0;
	color:#fff;
	font-size:32px;
	line-height:1.15;
}
.pg-style-overlay .pg-title a{color:#fff}

.pg-style-overlay .pg-summary{
	margin:12px 0 0;
	max-width:82%;
	color:#fff;
	opacity:0;
	transform:translateY(8px);
	transition:opacity .3s ease, transform .3s ease;
}
.pg-style-overlay .pg-item:hover .pg-summary{opacity:1;transform:none}

@media (max-width:767px){
	.pg-style-overlay .pg-thumb{aspect-ratio:1;min-height:160px}
	.pg-style-overlay .pg-title{font-size:22px}
	.pg-style-overlay .pg-info{padding:18px}
	.pg-style-overlay .pg-summary{opacity:1;transform:none}
}

/* ===== Contenimento anti-sovrapposizione ===== */
.pg-projects{display:flow-root;position:relative;width:100%;clear:both;overflow:visible}
.pg-grid{position:relative}


/* Titolo overlay centrato anche su piu righe */
.pg-style-overlay .pg-info{ text-align:center !important; }
.pg-style-overlay .pg-title{ text-align:center !important; width:100%; }
.pg-style-overlay .pg-summary{ text-align:center !important; }

/* ===== Animazione ingresso / cambio filtro ===== */
@keyframes mkwIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.pg-item{animation:mkwIn .40s ease backwards}
