/* AVB Site : cartes d'actualités et page d'article, aux couleurs du site */
:root {
	--avb-night: #12164D;
	--avb-ink: #14163A;
	--avb-muted: #5D607D;
	--avb-red: #C8321F;
	--avb-gold: #E9A92C;
	--avb-line: #E3E4EE;
	--avb-serif: 'Playfair Display', Georgia, serif;
	--avb-sans: 'Be Vietnam Pro', system-ui, sans-serif;
}

.avb-label {
	margin: 0;
	font: 600 12px/1.4 var(--avb-sans);
	letter-spacing: 2.4px;
	text-transform: uppercase;
	color: var(--avb-red);
}
.avb-label--gold { color: var(--avb-gold); }

/* vignettes */
.avb-thumb { display: block; border-radius: 4px; overflow: hidden; background: var(--avb-night); }
.avb-thumb img, .avb-thumb svg { display: block; width: 100% !important; max-width: none; height: 200px !important; object-fit: cover; object-position: center top; }
/* (!important : les styles d'Elementor imposent sinon height:auto aux images) */
.avb-thumb--big img, .avb-thumb--big svg { height: 360px !important; }
.avb-thumb--square { flex: 0 0 24%; }
.avb-thumb--square img, .avb-thumb--square svg { height: auto !important; aspect-ratio: 1; }
.avb-thumb:hover img { opacity: .92; }

/* bloc « à la une » */
.avb-une { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; }
.avb-une__main { flex: 1 1 520px; display: flex; flex-direction: column; gap: 14px; }
.avb-une__list { flex: 1 1 340px; display: flex; flex-direction: column; }
.avb-une__title { margin: 0; font: 500 38px/1.1 var(--avb-serif); }
.avb-une__title a, .avb-row__title a, .avb-card__title a { color: var(--avb-ink); text-decoration: none; }
.avb-une__title a:hover, .avb-row__title a:hover, .avb-card__title a:hover { color: var(--avb-red); }
.avb-une__excerpt { margin: 0; font: 300 17px/1.7 var(--avb-sans); color: var(--avb-muted); }
.avb-row { display: flex; gap: 18px; align-items: flex-start; padding: 18px 0; border-top: 1px solid var(--avb-line); }
.avb-row:last-child { border-bottom: 1px solid var(--avb-line); }
.avb-row > div { display: flex; flex-direction: column; gap: 6px; }
.avb-row__title { margin: 0; font: 500 21px/1.2 var(--avb-serif); }

/* rubriques et grille */
.avb-chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 56px; }
.avb-chips a { padding: 8px 16px; border: 1px solid var(--avb-line); border-radius: 99px; color: var(--avb-ink); text-decoration: none; font: 400 14px var(--avb-sans); }
.avb-chips a:hover { border-color: var(--avb-red); color: var(--avb-red); }
.avb-chips span { color: var(--avb-muted); }
.avb-cat { padding: 0 0 72px; scroll-margin-top: 24px; }
.avb-cat + .avb-cat { padding-top: 72px; border-top: 1px solid var(--avb-line); }
.avb-cat__title { margin: 14px 0 40px; font: 500 54px/1.05 var(--avb-serif); letter-spacing: -.5px; color: var(--avb-ink); }
.avb-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.avb-card { display: flex; flex-direction: column; gap: 10px; }
.avb-card__title { margin: 0; font: 500 21px/1.2 var(--avb-serif); }

/* liste simple */
.avb-liste { margin: 0; padding-left: 18px; font: 400 16px/1.7 var(--avb-sans); color: var(--avb-muted); }
.avb-liste li { margin-bottom: 8px; }
.avb-liste a { color: var(--avb-ink); }

/* page d'un article */
.avb-single { font-family: var(--avb-sans); }
.avb-single__hero { background: var(--avb-night); padding: 72px 24px 56px; }
.avb-single__in, .avb-single__body { max-width: 740px; margin: 0 auto; }
.avb-single__in { max-width: 900px; display: flex; flex-direction: column; gap: 16px; }
.avb-single__back { color: rgba(255, 255, 255, .7); text-decoration: none; font-size: 14px; }
.avb-single__back:hover { color: #fff; }
.avb-single__title { margin: 0; font: 500 clamp(36px, 6vw, 60px)/1.05 var(--avb-serif); letter-spacing: -.5px; color: #fff; }
.avb-single__lead { margin: 0; font: 400 22px/1.45 var(--avb-serif); color: rgba(255, 255, 255, .8); }
.avb-single__body { padding: 56px 24px 100px; }
.avb-single__poster { margin: 0 0 40px; }
.avb-single__poster img { display: block; width: 100%; height: auto; border-radius: 4px; }
.avb-single__content { font-size: 19px; line-height: 1.7; color: var(--avb-ink); }
.avb-single__content h2, .avb-single__content h3 { font-family: var(--avb-serif); font-weight: 500; color: var(--avb-ink); margin: 1.4em 0 .4em; }
.avb-single__content h2 { font-size: 30px; }
.avb-single__content a { color: var(--avb-red); }
.avb-single__content img { max-width: 100%; height: auto; border-radius: 4px; }
.avb-single__content figure { margin: 32px 0; }
.avb-single__content .wp-block-embed iframe { width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 4px; }
.avb-single__nav { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--avb-line); font-weight: 500; font-size: 15px; }
.avb-single__nav a { color: var(--avb-red); text-decoration: none; max-width: 48%; }

@media (max-width: 1024px) {
	.avb-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.avb-cat__title { font-size: 42px; }
}
@media (max-width: 767px) {
	.avb-grid { grid-template-columns: 1fr; gap: 32px; }
	.avb-cat__title { font-size: 33px; }
	.avb-une__title { font-size: 28px; }
	.avb-thumb--big img, .avb-thumb--big svg { height: 240px !important; }
	.avb-single__hero { padding: 46px 20px 36px; }
	.avb-single__lead { font-size: 19px; }
	.avb-single__body { padding: 40px 20px 64px; }
	.avb-single__content { font-size: 17px; }
	.avb-single__nav a { max-width: 100%; }
}
