/**
 * News Grid - Stile card notizie con layout featured + griglia
 *
 * Usare la classe `.olimpia-news-grid` sul container Elementor esterno
 * che contiene i due figli (colonna featured sx + griglia dx).
 *
 * Struttura attesa in Elementor:
 *   Container (.olimpia-news-grid) [flex row]
 *     ├── Container figlio sx (.olimpia-news-featured) [1 post, sticky]
 *     └── Container figlio dx (.olimpia-news-list) [N post, griglia 3 col]
 *
 * Entrambi usano il widget "TRX Addons Posts" skin Classic.
 */

/* ==========================================================================
   Layout container principale
   ========================================================================== */

.olimpia-news-grid {
	gap: var(--space-xl, 24px);
}

/* Colonna featured: sticky */
.olimpia-news-grid > .olimpia-news-featured {
	position: sticky;
	top: 120px; /* offset per header fisso */
	align-self: flex-start;
}

/* ==========================================================================
   Card generiche (si applicano a tutti i .trx-addons-posts-item dentro
   .olimpia-news-grid, riutilizzabili anche fuori con .olimpia-news-card)
   ========================================================================== */

.olimpia-news-grid .trx-addons-posts-item,
.olimpia-news-card {
	border: none;
	box-shadow: none;
	background: transparent;
}

/* --- Immagine --- */
.olimpia-news-grid .trx-addons-posts-item-thumbnail img,
.olimpia-news-card .trx-addons-posts-item-thumbnail img {
	border-radius: var(--radius-sm, 8px);
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	aspect-ratio: 1/1;
}

/* --- Badge categoria --- */
.olimpia-news-grid .trx-addons-posts-item-terms-wrap,
.olimpia-news-card .trx-addons-posts-item-terms-wrap {
	margin-top: var(--space-md, 12px);
	margin-bottom: var(--space-xs, 4px);
}

.olimpia-news-grid .trx-addons-posts-item-term a,
.olimpia-news-card .trx-addons-posts-item-term a {
	display: inline-block;
	background: var(--color-primary, #8B1A2B);
	color: var(--color-white, #fff) !important;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 3px 8px;
	border-radius: 3px;
	line-height: 1.4;
	text-decoration: none;
	transition: background var(--transition-fast, 0.2s ease);
}

.olimpia-news-grid .trx-addons-posts-item-term a:hover,
.olimpia-news-card .trx-addons-posts-item-term a:hover {
	background: var(--color-primary-dark, #6e1522);
}

/* --- Titolo --- */
.olimpia-news-grid .trx-addons-posts-item-title,
.olimpia-news-card .trx-addons-posts-item-title {
	text-transform: uppercase;
	font-weight: 800;
	line-height: 1.15;
	margin: var(--space-sm, 8px) 0 var(--space-sm, 8px);
	letter-spacing: -0.01em;
}

.olimpia-news-grid .trx-addons-posts-item-title a,
.olimpia-news-card .trx-addons-posts-item-title a {
	color: var(--color-black, #1a1a1a);
	text-decoration: none;
	transition: color var(--transition-fast, 0.2s ease);
}

.olimpia-news-grid .trx-addons-posts-item-title a:hover,
.olimpia-news-card .trx-addons-posts-item-title a:hover {
	color: var(--color-primary, #8B1A2B);
}

/* Featured (colonna sx): titolo più grande */
.olimpia-news-featured .trx-addons-posts-item-title {
	font-size: clamp(1.4rem, 2.2vw, 2rem);
}

/* --- Data / Meta --- */
.olimpia-news-grid .trx-addons-posts-item-meta,
.olimpia-news-card .trx-addons-posts-item-meta {
	font-size: var(--font-size-sm, 12px);
	color: var(--color-gray-500, #888);
	margin-top: var(--space-xs, 4px);
}

.olimpia-news-grid .trx-addons-posts-item-date .trx-addons-icon,
.olimpia-news-card .trx-addons-posts-item-date .trx-addons-icon {
	display: none; /* Nascondi icona calendario, solo testo data */
}

/* Nascondi separatori e commenti (come nel mockup) */
.olimpia-news-grid .trx-addons-meta-separator,
.olimpia-news-grid .trx-addons-posts-item-comments,
.olimpia-news-card .trx-addons-meta-separator,
.olimpia-news-card .trx-addons-posts-item-comments {
	display: none;
}

/* --- Excerpt (nascosto nel mockup) --- */
.olimpia-news-grid .trx-addons-posts-item-excerpt,
.olimpia-news-card .trx-addons-posts-item-excerpt {
	display: none;
}

/* ==========================================================================s
   Griglia colonna destra — immagine 16:10 come nel mockup
   Nota: .olimpia-news-list può essere standalone (pagina News ID 14040)
   oppure figlio di .olimpia-news-grid (homepage). Le regole card sono
   duplicate qui per coprire entrambi i casi.
   ========================================================================== */

.olimpia-news-list .trx-addons-posts-grid {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-xl, 24px);
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Reset width/flex forzati dal TRX Addons widget sugli item wrapper */
.olimpia-news-list .trx-addons-posts-grid .trx-addons-grid-item-wrap {
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.olimpia-news-list .trx-addons-posts-item {
	border: none;
	box-shadow: none;
	background: transparent;
}

.olimpia-news-list .trx-addons-posts-item-thumbnail img {
	border-radius: var(--radius-sm, 8px);
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.olimpia-news-list .trx-addons-posts-item-terms-wrap {
	margin-top: var(--space-md, 12px);
	margin-bottom: var(--space-xs, 4px);
}

.olimpia-news-list .trx-addons-posts-item-term a {
	display: inline-block;
	background: var(--color-primary, #8B1A2B);
	color: var(--color-white, #fff) !important;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 3px 8px;
	border-radius: 3px;
	line-height: 1.4;
	text-decoration: none;
	transition: background var(--transition-fast, 0.2s ease);
}

.olimpia-news-list .trx-addons-posts-item-term a:hover {
	background: var(--color-primary-dark, #6e1522);
}

.olimpia-news-list .trx-addons-posts-item-title {
	text-transform: uppercase;
	font-weight: 800;
	line-height: 1.15;
	margin: var(--space-sm, 8px) 0 var(--space-sm, 8px);
	letter-spacing: -0.01em;
	font-size: clamp(0.9rem, 1.2vw, 1.1rem);
}

.olimpia-news-list .trx-addons-posts-item-title a {
	color: var(--color-black, #1a1a1a);
	text-decoration: none;
	transition: color var(--transition-fast, 0.2s ease);
}

.olimpia-news-list .trx-addons-posts-item-title a:hover {
	color: var(--color-primary, #8B1A2B);
}

.olimpia-news-list .trx-addons-posts-item-meta {
	font-size: var(--font-size-sm, 12px);
	color: var(--color-gray-500, #888);
	margin-top: var(--space-xs, 4px);
}

.olimpia-news-list .trx-addons-posts-item-date .trx-addons-icon {
	display: none;
}

.olimpia-news-list .trx-addons-meta-separator,
.olimpia-news-list .trx-addons-posts-item-comments {
	display: none;
}

.olimpia-news-list .trx-addons-posts-item-excerpt {
	display: none;
}

/* ==========================================================================
   Pagination — stile condiviso con le pagine archivio
   Selettori su .olimpia-news-list (classe CSS del widget Elementor)
   ========================================================================== */

.olimpia-news-list .trx-addons-posts-pagination {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}

.olimpia-news-list .trx-addons-posts-pagination .page-numbers,
.olimpia-news-list .trx-addons-posts-pagination a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	color: var(--color-gray-700, #555);
	background: #fff;
	border: 1px solid var(--color-gray-200, #ccc);
	transition: all 0.2s ease;
}

.olimpia-news-list .trx-addons-posts-pagination a:hover {
	background: var(--color-primary, #AA1A2D);
	color: #fff;
	border-color: var(--color-primary, #AA1A2D);
}

.olimpia-news-list .trx-addons-posts-pagination .page-numbers.current {
	background: var(--color-black);
	color: #fff;
	border-color: var(--color-black);
}

.olimpia-news-list .trx-addons-posts-pagination .page-numbers.dots {
	border: none;
	background: none;
	color: #999;
	min-width: auto;
	padding: 0 4px;
}

/* Frecce prev/next — icona freccia via content (coerente con archivi) */
.olimpia-news-list .trx-addons-posts-pagination .page-numbers.prev,
.olimpia-news-list .trx-addons-posts-pagination .page-numbers.next {
	font-size: 0;
	position: relative;
}

.olimpia-news-list .trx-addons-posts-pagination .page-numbers.prev::before {
	content: "←";
	font-size: 14px;
}

.olimpia-news-list .trx-addons-posts-pagination .page-numbers.next::before {
	content: "→";
	font-size: 14px;
}

/* ==========================================================================
   Pagination Mobile — mostra solo prev / current / next
   ========================================================================== */

@media (max-width: 575px) {
	.olimpia-news-list .trx-addons-posts-pagination .page-numbers {
		display: none;
	}

	.olimpia-news-list .trx-addons-posts-pagination .page-numbers.prev,
	.olimpia-news-list .trx-addons-posts-pagination .page-numbers.next,
	.olimpia-news-list .trx-addons-posts-pagination .page-numbers.current {
		display: inline-flex;
	}
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1024px) {
	.olimpia-news-grid > .olimpia-news-featured {
		position: static; /* disabilita sticky su tablet */
	}

	.olimpia-news-list .trx-addons-posts-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	.olimpia-news-grid {
		flex-direction: column;
	}

	.olimpia-news-featured .trx-addons-posts-item-title {
		font-size: 1.4rem;
	}

	.olimpia-news-list .trx-addons-posts-item-title {
		font-size: 1rem;
	}

	.olimpia-news-list .trx-addons-posts-grid {
		grid-template-columns: 1fr;
	}
}

/* ==========================================================================
   Other News Block - Griglia articoli correlati (single news)
   ========================================================================== */

.other-news-block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-xl, 24px);
}

/* --- Card --- */
.other-news-block .trx-addons-posts-item,
.other-news-block article {
	border: none;
	box-shadow: none;
	background: transparent;
}

/* --- Immagine --- */
.other-news-block .trx-addons-posts-item-thumbnail img,
.other-news-block .post-thumbnail img,
.other-news-block .post_featured img {
	border-radius: var(--radius-sm, 8px);
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	aspect-ratio: 16 / 10;
}

/* --- Badge categoria --- */
.other-news-block .trx-addons-posts-item-terms-wrap,
.other-news-block .post_meta_categories,
.other-news-block .post-categories {
	margin-top: var(--space-md, 12px);
	margin-bottom: var(--space-xs, 4px);
}

.other-news-block .trx-addons-posts-item-term a,
.other-news-block .post_meta_categories a,
.other-news-block .post-categories a,
.other-news-block .cat-links a {
	display: inline-block;
	background: var(--color-primary, #8B1A2B);
	color: var(--color-white, #fff) !important;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 3px 8px;
	border-radius: 3px;
	line-height: 1.4;
	text-decoration: none;
	transition: background var(--transition-fast, 0.2s ease);
}

.other-news-block .trx-addons-posts-item-term a:hover,
.other-news-block .post_meta_categories a:hover,
.other-news-block .post-categories a:hover,
.other-news-block .cat-links a:hover {
	background: var(--color-primary-dark, #6e1522);
}

/* --- Titolo --- */
.other-news-block .trx-addons-posts-item-title,
.other-news-block .post-title,
.other-news-block .entry-title,
.other-news-block h4,
.other-news-block h3 {
	text-transform: uppercase;
	font-weight: 800;
	line-height: 1.15;
	margin: var(--space-sm, 8px) 0 var(--space-sm, 8px);
	letter-spacing: -0.01em;
	font-size: clamp(0.9rem, 1.3vw, 1.15rem);
}

.other-news-block .trx-addons-posts-item-title a,
.other-news-block .post-title a,
.other-news-block .entry-title a,
.other-news-block h4 a,
.other-news-block h3 a {
	color: var(--color-black, #1a1a1a);
	text-decoration: none;
	transition: color var(--transition-fast, 0.2s ease);
}

.other-news-block .trx-addons-posts-item-title a:hover,
.other-news-block .post-title a:hover,
.other-news-block .entry-title a:hover,
.other-news-block h4 a:hover,
.other-news-block h3 a:hover {
	color: var(--color-primary, #8B1A2B);
}

/* --- Data / Meta --- */
.other-news-block .trx-addons-posts-item-meta,
.other-news-block .post-date,
.other-news-block .post_meta_date,
.other-news-block .entry-meta {
	font-size: var(--font-size-sm, 12px);
	color: var(--color-gray-500, #888);
	margin-top: var(--space-xs, 4px);
}

.other-news-block .trx-addons-posts-item-date .trx-addons-icon {
	display: none;
}

/* Nascondi excerpt, separatori, commenti */
.other-news-block .trx-addons-posts-item-excerpt,
.other-news-block .trx-addons-meta-separator,
.other-news-block .trx-addons-posts-item-comments {
	display: none;
}

/* --- Responsive --- */
@media (max-width: 1024px) {
	.other-news-block {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	.other-news-block {
		grid-template-columns: 1fr;
		gap: var(--space-lg, 20px);
	}
}

/* (Latest News Block styles moved to sorex.css for global layout) */
