/* ==========================================================================
   Variante CLASSIQUE – site de village : blason, menu en couleur, photo du village,
   actualités en liste et colonne pratique (1.7.0, remplace la variante Essentiel)
   ========================================================================== */
:root {
	--vga-radius: 8px; --vga-radius-sm: 6px;
	--vga-section: clamp(2.5rem, 5vw, 4rem);
}
h1, h2, h3 { font-weight: 750; letter-spacing: -.01em; }

/* ---------- En-tête : blason + nom, coordonnées, recherche ---------- */
.vga-header--classique .vga-header__main { display: flex; align-items: center; gap: 1.25rem; padding-block: 1rem; justify-content: space-between; }
.vga-header--classique .vga-brand__name { font-size: clamp(1.2rem, 1rem + .9vw, 1.7rem); text-transform: uppercase; letter-spacing: .02em; }
.vga-header--classique .vga-brand__tag { font-size: .85rem; }

/* ---------- Barre de menu aux couleurs de la commune (bureau) ---------- */
@media (min-width: 1024px) {
	.vga-header--classique .vga-header__navbar { background: var(--vga-primary); box-shadow: inset 0 -3px 0 rgb(0 0 0 / .12); }
	.vga-header--classique .vga-header__navrow { display: flex; align-items: center; min-height: 54px; }
	.vga-header--classique .vga-drawer { flex: 1; }
	.vga-header--classique .vga-nav__menu { gap: 0; }
	.vga-header--classique .vga-nav > .vga-nav__menu > .menu-item > .vga-nav__link { min-height: 54px; padding-inline: 1rem; border-radius: 0; color: var(--vga-on-primary); font-weight: 650; }
	.vga-header--classique .vga-nav > .vga-nav__menu > .menu-item > .vga-nav__toggle { color: var(--vga-on-primary); }
	.vga-header--classique .vga-nav > .vga-nav__menu > .menu-item > .vga-nav__toggle:hover { background: rgb(255 255 255 / .15); }
	.vga-header--classique .vga-nav > .vga-nav__menu > .menu-item:hover > .vga-nav__link,
	.vga-header--classique .vga-nav > .vga-nav__menu > .is-current > .vga-nav__link,
	.vga-header--classique .vga-nav > .vga-nav__menu > .is-open > .vga-nav__link { background: rgb(0 0 0 / .18); color: var(--vga-on-primary); }
	.vga-header--classique .vga-nav > .vga-nav__menu > .menu-item + .menu-item::before { content: ""; width: 1px; height: 22px; background: rgb(255 255 255 / .25); }
	.vga-header--classique .vga-nav .sub-menu { top: 100%; border-radius: 0 0 var(--vga-radius) var(--vga-radius); border-top: 3px solid var(--vga-secondary); }
	.vga-header--classique .vga-nav :focus-visible { outline-color: var(--vga-on-primary); }
	.vga-header--classique .vga-nav .sub-menu :focus-visible { outline-color: var(--vga-primary); }
}
@media (max-width: 1023.98px) { .vga-header--classique .vga-header__navbar { border: 0; } .vga-header--classique .vga-header__navrow { min-height: 0; } }

/* ---------- Photo du village : nom de la commune et recherche ---------- */
.vga-hero--classique { display: grid; align-items: center; min-height: clamp(320px, 50vh, 480px); color: #fff; text-align: center; }
.vga-hero--classique .vga-hero__media::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgb(8 15 30 / .25) 0%, rgb(8 15 30 / .45) 55%, rgb(8 15 30 / .65) 100%); }
.vga-hero--classique .vga-hero__content { position: relative; z-index: 2; padding-block: clamp(2.5rem, 6vw, 4rem); }
.vga-hero__welcome { margin: 0 0 .35rem; font-size: clamp(1rem, .9rem + .4vw, 1.2rem); font-weight: 600; letter-spacing: .04em; opacity: .95; text-shadow: 0 1px 12px rgb(0 0 0 / .4); }
.vga-hero--classique .vga-hero__title { color: #fff; font-size: clamp(2.2rem, 1.4rem + 3.6vw, 4rem); line-height: 1.05; text-transform: uppercase; letter-spacing: .03em; text-shadow: 0 2px 24px rgb(0 0 0 / .45); }
.vga-hero--classique .vga-hero__lead { max-width: 52ch; margin: .75rem auto 0; font-size: var(--vga-fs-l); text-shadow: 0 1px 12px rgb(0 0 0 / .4); }
.vga-hero__search { max-width: 640px; margin: clamp(1.25rem, 3vw, 2rem) auto 0; text-align: start; }
.vga-hero__search .vga-search { box-shadow: 0 20px 40px -18px rgb(0 0 0 / .6); }
/* 1.7.3 : recherche de l'accueil masquée sur mobile (la loupe de l'en-tête reste disponible), légèrement réduite sur tablette. */
@media (max-width: 767.98px) { .vga-hero--classique .vga-hero__search { display: none; } }
@media (min-width: 768px) and (max-width: 1023.98px) {
	.vga-hero--classique .vga-hero__search { max-width: 520px; }
	.vga-hero--classique .vga-search--large { padding: .4rem; }
	.vga-hero--classique .vga-search--large input[type="search"] { min-height: 46px; font-size: 1.05rem; }
}

/* ---------- Ligne d'accès rapides sous la photo ---------- */
.vga-quickbar { position: relative; z-index: 3; padding-block: 1.25rem; background: var(--vga-surface); border-bottom: 1px solid var(--vga-line); }
.vga-quickbar .vga-quick__list { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: .75rem; }
.vga-quickbar .vga-quick--tuiles .vga-quick__item { padding: 1rem .5rem; gap: .5rem; box-shadow: none; }
.vga-quickbar .vga-quick--tuiles .vga-quick__icon { width: 3rem; height: 3rem; }
.vga-quickbar .vga-quick__title { font-size: .95rem; }
.vga-quickbar .vga-quick__sub { display: none; }
@media (max-width: 900px) { .vga-quickbar .vga-quick__list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 560px) { .vga-quickbar .vga-quick__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ---------- Deux colonnes : actualités + colonne pratique ---------- */
.vga-columns { display: grid; gap: clamp(1.5rem, 4vw, 3rem); padding-block: var(--vga-section); }
@media (min-width: 960px) { .vga-columns { grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr); align-items: start; } }
.vga-v-classique .vga-section-head { align-items: center; padding-bottom: .6rem; margin-bottom: 1.25rem; border-bottom: 3px solid var(--vga-primary); }
.vga-v-classique .vga-section-title { font-size: 1.45rem; text-transform: uppercase; letter-spacing: .03em; }
.vga-v-classique .vga-news--liste .vga-news__list { border-top: 0; }
.vga-v-classique .vga-news--liste .vga-card { align-items: flex-start; padding: 1.1rem 0; }
.vga-v-classique .vga-news--liste .vga-card__media { flex: 0 0 clamp(96px, 22vw, 180px); aspect-ratio: 4 / 3; }
.vga-v-classique .vga-news--liste .vga-card__title { font-size: 1.15rem; }

/* Encadrés de la colonne pratique */
.vga-columns__side { display: grid; gap: 1.25rem; }
.vga-box { overflow: hidden; background: var(--vga-bg); border: 1px solid var(--vga-line); border-radius: var(--vga-radius); box-shadow: var(--vga-shadow-sm); }
.vga-box__title { display: flex; align-items: center; gap: .55rem; margin: 0; padding: .75rem 1.1rem; background: var(--vga-primary); color: var(--vga-on-primary); font-size: 1.05rem; text-transform: uppercase; letter-spacing: .04em; }
.vga-box__body { padding: 1rem 1.1rem 1.15rem; }
.vga-box__label { margin: 0 0 .4rem; font-weight: 700; }
.vga-box .vga-hours { font-size: .95rem; }
.vga-box__line { display: flex; gap: .55rem; align-items: flex-start; margin: .6rem 0 0; }
.vga-box__line .vga-icon { margin-top: .2rem; color: var(--vga-primary); }
.vga-box__cta { margin: 1rem 0 0; }
.vga-box__cta .vga-btn { width: 100%; }
/* Agenda dans un encadré : son titre devient le bandeau de couleur */
.vga-box--agenda .vga-box__body { padding: 0 0 1rem; }
.vga-box--agenda .vga-section-head { margin: 0 0 .75rem; padding: .75rem 1.1rem; border: 0; background: var(--vga-primary); }
.vga-box--agenda .vga-section-title { color: var(--vga-on-primary); font-size: 1.05rem; letter-spacing: .04em; }
.vga-box--agenda .vga-more { color: var(--vga-on-primary); font-size: .85rem; }
.vga-box--agenda .vga-agenda__list, .vga-box--agenda .vga-empty { margin-inline: 1.1rem; }
.vga-box--agenda .vga-agenda__list { gap: .5rem; }
.vga-box--agenda .vga-event { padding: .6rem; gap: .75rem; box-shadow: none; }
.vga-box--agenda .vga-event:hover { transform: none; }
.vga-box--agenda .vga-event__date { min-width: 3.2rem; padding: .4rem; }
.vga-box--agenda .vga-event__day { font-size: 1.25rem; }
.vga-box--agenda .vga-event__title { font-size: .98rem; }
.vga-box--agenda .vga-event__where { display: none; }
.vga-bulletin__name { margin: 0; font-weight: 650; }
.vga-bulletin__meta { font-weight: 500; opacity: .8; }

/* ---------- Mot du maire ---------- */
.vga-mayor { display: grid; gap: 1.5rem 2.5rem; align-items: center; }
@media (min-width: 720px) { .vga-mayor:has(.vga-mayor__photo) { grid-template-columns: 200px minmax(0, 1fr); } }
.vga-mayor__photo img { display: block; width: 200px; height: 200px; object-fit: cover; border-radius: 50%; border: 5px solid var(--vga-bg); box-shadow: var(--vga-shadow); }
@media (max-width: 719.98px) { .vga-mayor__photo { justify-self: center; } .vga-mayor__photo img { width: 150px; height: 150px; } }
.vga-mayor__title { margin: 0 0 .75rem; font-size: 1.45rem; text-transform: uppercase; letter-spacing: .03em; }
.vga-mayor__text { margin: 0 0 .75rem; font-size: 1.1rem; font-style: italic; color: var(--vga-ink-2); max-width: 70ch; }
.vga-mayor__text::before { content: "« "; } .vga-mayor__text::after { content: " »"; }

/* ---------- Newsletter, pages, pied de page ---------- */
.vga-v-classique .vga-nl { border-radius: var(--vga-radius); }
.vga-v-classique .vga-nl__icon { transform: none; border-radius: 50%; }
.vga-v-classique .vga-page-header { border-bottom: 3px solid var(--vga-primary); background: var(--vga-surface); }
.vga-v-classique .vga-btn, .vga-v-classique .wp-block-button__link { border-radius: var(--vga-radius-sm); }
.vga-v-classique .vga-btn[type="submit"] { border-radius: inherit; }
.vga-v-classique .vga-footer__cta { background: var(--vga-secondary); color: var(--vga-on-secondary); }
.vga-v-classique .vga-footer__cta .vga-btn--light { background: var(--vga-ink); color: #fff; }
