.nvnc-agenda,.nvnc-cal,.nvnc-infos{--nvnc-rouge:var(--wp--preset--color--rouge,#bd0000);--nvnc-noir:var(--wp--preset--color--noir,#020202);--nvnc-blanc:var(--wp--preset--color--blanc,#fffef8);--nvnc-creme:var(--wp--preset--color--creme,#f1ede4);--nvnc-jaune:var(--wp--preset--color--jaune,#e8a400);--nvnc-gris:var(--wp--preset--color--gris,#929292)}
.nvnc-agenda{margin-block:32px}
.nvnc-agenda ul{list-style:none;margin:0;padding:0}
.nvnc-agenda__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}
.nvnc-carrousel{position:relative}
.nvnc-carrousel__track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:4px 2px 18px;scrollbar-width:thin;scrollbar-color:var(--nvnc-rouge) transparent}
.nvnc-carrousel__track:focus-visible{outline:2px solid var(--nvnc-rouge);outline-offset:4px}
.nvnc-carrousel__track>li{flex:0 0 clamp(220px,26%,300px);scroll-snap-align:start}
.nvnc-carrousel__nav{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}
.nvnc-carrousel__btn{width:46px;height:46px;border-radius:50%;border:2px solid currentColor;background:transparent;color:inherit;font-size:1.2rem;cursor:pointer;transition:background .2s,color .2s}
.nvnc-carrousel__btn:hover,.nvnc-carrousel__btn:focus-visible{background:var(--nvnc-rouge);border-color:var(--nvnc-rouge);color:#fff}
.nvnc-card{height:100%;display:flex;flex-direction:column;background:var(--nvnc-blanc);color:var(--nvnc-noir);border:1px solid var(--nvnc-noir);border-radius:6px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.nvnc-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #02020222}
.nvnc-card__media{position:relative;display:block;aspect-ratio:3/4;background:var(--nvnc-noir);overflow:hidden}
.nvnc-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.nvnc-card__placeholder{position:absolute;inset:0;display:grid;place-items:center;color:var(--nvnc-blanc);font-weight:800;text-transform:uppercase;letter-spacing:.1em;background:repeating-linear-gradient(135deg,var(--nvnc-noir) 0 18px,#1a1a1a 18px 36px)}
.nvnc-badge{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:3px;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--nvnc-rouge);color:#fff}
.nvnc-badge--stage{background:var(--nvnc-jaune);color:var(--nvnc-noir)}
.nvnc-card__body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.nvnc-card__date{margin:0;color:var(--nvnc-rouge);font-weight:800;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}
.nvnc-card__title{margin:0;font-size:1.15rem;line-height:1.25}
.nvnc-card__title a{color:inherit;text-decoration:none}
.nvnc-card__title a:hover{color:var(--nvnc-rouge)}
.nvnc-card__meta{margin:0;font-size:.86rem;opacity:.8}
.nvnc-card__cta{margin:auto 0 0;padding-top:10px}
.nvnc-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:4px;background:var(--nvnc-rouge);color:#fff!important;text-decoration:none!important;font-weight:700;font-size:.86rem}
.nvnc-btn:hover{background:#930000}
.nvnc-agenda__vide{padding:28px;border:2px dashed currentColor;border-radius:6px;text-align:center;font-weight:600;opacity:.8}
/* Calendrier */
.nvnc-cal{margin-block:32px;color:var(--nvnc-noir)}
.nvnc-cal__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}
.nvnc-cal__title{margin:0;font-size:clamp(1.4rem,2.4vw,2rem)}
.nvnc-cal__nav{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:2px solid var(--nvnc-noir);color:var(--nvnc-noir);text-decoration:none;font-size:1.2rem}
.nvnc-cal__nav:hover,.nvnc-cal__nav:focus-visible{background:var(--nvnc-rouge);border-color:var(--nvnc-rouge);color:#fff}
.nvnc-cal__legend{display:flex;align-items:center;gap:8px;font-size:.85rem;margin-bottom:14px}
.nvnc-cal__legend .nvnc-dot:not(:first-child){margin-left:14px}
.nvnc-dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--nvnc-gris);margin-right:6px;vertical-align:middle}
.nvnc-dot--spectacle{background:var(--nvnc-rouge)}
.nvnc-dot--stage{background:var(--nvnc-jaune)}
.nvnc-cal__grid{width:100%;border-collapse:collapse;table-layout:fixed;background:var(--nvnc-blanc)}
.nvnc-cal__grid th{padding:10px 4px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;background:var(--nvnc-noir);color:var(--nvnc-blanc)}
.nvnc-cal__grid td{height:110px;vertical-align:top;border:1px solid #d9d5cc;padding:6px}
.nvnc-cal__grid td.is-empty{background:var(--nvnc-creme)}
.nvnc-cal__day{display:inline-grid;place-items:center;min-width:28px;height:28px;font-weight:700;font-size:.9rem;border-radius:50%}
.nvnc-cal__grid td.is-today .nvnc-cal__day{background:var(--nvnc-noir);color:var(--nvnc-blanc)}
.nvnc-cal__event{display:block;margin-top:4px;padding:3px 6px;border-radius:3px;font-size:.74rem;font-weight:700;line-height:1.25;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--nvnc-gris);color:#fff}
.nvnc-cal__event--spectacle{background:var(--nvnc-rouge);color:#fff}
.nvnc-cal__event--stage{background:var(--nvnc-jaune);color:var(--nvnc-noir)}
.nvnc-cal__event:hover{filter:brightness(.9)}
.nvnc-cal__list{margin-top:24px}
.nvnc-cal__list h4{margin:0 0 10px;font-size:1rem;text-transform:uppercase;letter-spacing:.08em}
.nvnc-cal__list ul{list-style:none;margin:0;padding:0}
.nvnc-cal__list li{padding:10px 0;border-bottom:1px solid #d9d5cc}
.nvnc-cal__list a{color:inherit}
@media (max-width:700px){.nvnc-cal__grid td{height:54px;padding:3px;text-align:center}.nvnc-cal__event{font-size:0;width:9px;height:9px;padding:0;border-radius:50%;display:inline-block;margin:2px}.nvnc-cal__grid th{font-size:.62rem}}
/* Page d’un rendez-vous */
.nvnc-infos{margin:0 0 32px;padding:22px 24px;border-left:5px solid var(--nvnc-rouge);background:var(--nvnc-creme);border-radius:4px}
.nvnc-infos dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px 24px;margin:0}
.nvnc-infos dt{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--nvnc-rouge)}
.nvnc-infos dd{margin:2px 0 0;font-weight:600}
.nvnc-infos p{margin:18px 0 0}
.nvnc-infos__past{font-style:italic;opacity:.75}
.has-noir-background-color .nvnc-agenda__vide,.nv-dark .nvnc-agenda__vide{color:var(--nvnc-blanc)}
.nvnc-card__past{color:var(--nvnc-gris);font-weight:700}
.nvnc-card.is-past .nvnc-card__media img{filter:grayscale(.35)}
.nvnc-agenda .nvnc-card,.nvnc-agenda .nvnc-card__title a,.nvnc-agenda .nvnc-card__meta{color:var(--nvnc-noir)!important}
.nvnc-agenda .nvnc-card__date{color:var(--nvnc-rouge)!important}
.nvnc-agenda .nvnc-card__title a:hover{color:var(--nvnc-rouge)!important}
/* Formulaire de contact */
.nvnc-formwrap,.nvnc-contact{--nvnc-rouge:var(--wp--preset--color--rouge,#bd0000);--nvnc-noir:var(--wp--preset--color--noir,#020202);--nvnc-blanc:var(--wp--preset--color--blanc,#fffef8);--nvnc-creme:var(--wp--preset--color--creme,#f1ede4)}
.nvnc-contact{display:grid;gap:14px;margin:0}
.nvnc-contact p{margin:0}
.nvnc-contact label{display:block;font-weight:700;font-size:.85rem;margin-bottom:6px;letter-spacing:.02em}
.nvnc-contact label em{font-weight:400;opacity:.75}
.nvnc-contact__req{color:var(--nvnc-rouge)}
.nvnc-contact input[type=text],.nvnc-contact input[type=email],.nvnc-contact input[type=tel],.nvnc-contact select,.nvnc-contact textarea{width:100%;padding:11px 13px;border:2px solid var(--nvnc-noir);border-radius:4px;background:#fff;color:var(--nvnc-noir);font:inherit;font-size:1rem}
.nvnc-contact input:focus-visible,.nvnc-contact select:focus-visible,.nvnc-contact textarea:focus-visible{outline:3px solid var(--nvnc-rouge);outline-offset:1px}
.nvnc-contact textarea{resize:vertical}
.nvnc-contact__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.nvnc-contact__consent{font-size:.85rem;line-height:1.45}
.nvnc-contact__consent label{display:block;font-weight:400}
.nvnc-contact__consent input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--nvnc-rouge);vertical-align:-.2em;margin-right:6px}
.nvnc-contact .nvnc-btn{border:none;cursor:pointer;font:inherit;font-size:.95rem;padding:12px 26px}
.nvnc-contact .nvnc-btn:hover{background:#930000}
.nvnc-hp{position:absolute!important;left:-9999px!important;top:-9999px!important;height:1px;width:1px;overflow:hidden}
.nvnc-contact__notice{padding:14px 16px;border-radius:4px;font-size:.92rem;line-height:1.45}
.nvnc-contact__notice--succes{background:var(--nvnc-creme);border-left:5px solid #2e7d32;color:var(--nvnc-noir)}
.nvnc-contact__notice--erreur{background:var(--nvnc-creme);border-left:5px solid var(--nvnc-rouge);color:var(--nvnc-noir)}
/* v1.2 — style aligné sur l’ancien site : affiches encadrées, boutons pleins */
.nvnc-agenda .nvnc-carrousel .nvnc-card{background:transparent;border:0;border-radius:0;overflow:visible;box-shadow:none;transform:none}
.nvnc-agenda .nvnc-carrousel .nvnc-card__media{border:2.5px solid currentColor;border-radius:14px;aspect-ratio:27/34}
.nvnc-agenda .nvnc-carrousel .nvnc-card__body{padding:14px 0 0;gap:4px}
.nvnc-agenda .nvnc-carrousel .nvnc-card,.nvnc-agenda .nvnc-carrousel .nvnc-card__title a,.nvnc-agenda .nvnc-carrousel .nvnc-card__meta{color:inherit!important}
.nvnc-agenda .nvnc-carrousel .nvnc-card__media{color:var(--nvnc-noir)}
.has-noir-background-color .nvnc-agenda .nvnc-carrousel .nvnc-card__media,.has-anthracite-background-color .nvnc-agenda .nvnc-carrousel .nvnc-card__media{color:var(--nvnc-blanc)}
.has-noir-background-color .nvnc-agenda .nvnc-card__date,.has-anthracite-background-color .nvnc-agenda .nvnc-card__date{color:#ff8f8f!important}
.nvnc-card__title{font-family:var(--wp--preset--font-family--titres,inherit);font-weight:700}
.nvnc-card__cta .nvnc-btn{width:100%;padding:12px 18px;border-radius:10px;background:var(--nvnc-noir);font-family:var(--wp--preset--font-family--titres,inherit);font-size:.95rem}
.has-noir-background-color .nvnc-card__cta .nvnc-btn{background:var(--nvnc-rouge)}
.nvnc-card__cta .nvnc-btn:hover{background:var(--nvnc-rouge)}
.nvnc-card__excerpt{margin:0;font-size:.92rem;line-height:1.55;opacity:.85}
.nvnc-agenda--grille .nvnc-card{border:2.5px solid var(--nvnc-noir);border-radius:18px;background:#fff}
.nvnc-agenda--grille .nvnc-card__media{aspect-ratio:auto;height:190px}
.nvnc-agenda--grille .nvnc-card__body{padding:22px 24px 26px}
.nvnc-agenda--grille .nvnc-card__date{font-size:.75rem}
.nvnc-agenda__grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.nvnc-carrousel__btn{background:var(--nvnc-noir);color:#fff;border-color:var(--nvnc-noir)}
.has-noir-background-color .nvnc-carrousel__btn{background:var(--nvnc-blanc);color:var(--nvnc-noir);border-color:var(--nvnc-blanc)}
