:root{--b:#650b12;--g:#d6b254;--c:#fff7e8}.avp-agenda,.avp-agenda *{box-sizing:border-box}.avp-agenda{position:relative;left:50%;width:100vw;margin-left:-50vw;padding:58px 34px 70px;background:linear-gradient(180deg,#faeed7,#f0d7aa);color:#2a120c;border-top:2px solid var(--g);border-bottom:2px solid var(--g)}.avp-hero{text-align:center;margin-bottom:28px}.avp-hero>span{color:var(--b);font-weight:800;letter-spacing:4px}.avp-hero h2{margin:10px 0 0;color:#26080a!important;font-family:Georgia,serif;font-size:clamp(38px,5vw,66px)}.avp-view-switch,.avp-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:18px}.avp-view-switch button,.avp-filters button{padding:11px 16px;color:#f0d47c!important;background:#111!important;border:1px solid var(--g)!important;border-radius:7px!important;font-weight:800!important;cursor:pointer!important}.avp-view-switch button.is-active,.avp-view-switch button:hover,.avp-filters button.is-active,.avp-filters button:hover{color:#fff!important;background:linear-gradient(#8b111b,#58070e)!important}.avp-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.avp-cards[hidden],.avp-card[hidden],.avp-calendar[hidden],.avp-modal[hidden],.avp-lightbox[hidden]{display:none!important}.avp-card{display:flex;overflow:hidden;flex-direction:column;background:var(--c);border:1px solid #c79d45;border-radius:12px;box-shadow:0 12px 28px rgba(74,35,11,.15)}.avp-poster{position:relative;min-height:430px;aspect-ratio:2/3;overflow:hidden;background:#111}.avp-poster img{width:100%;height:100%;object-fit:contain;background:#120d0b}.avp-placeholder{display:flex;height:100%;align-items:center;justify-content:center;font-size:70px}.avp-date{position:absolute;top:10px;left:10px;display:flex;width:62px;padding:7px 4px;flex-direction:column;align-items:center;background:#fff0cd;border:1px solid var(--g);border-radius:7px}.avp-date strong{font-size:25px}.avp-date span{font-size:12px;font-weight:800}.avp-date small{font-size:9px}.avp-type{position:absolute;top:10px;right:10px;max-width:165px;padding:7px 10px;color:#fff;background:#7f1018;border-radius:5px;font-size:10px;font-weight:800;text-transform:uppercase}.avp-type-participe{background:#166b69}.avp-type-partenaire{background:#9b6514}.avp-type-adherents{background:#5b286a}.avp-card-body{display:flex;padding:17px;flex:1;flex-direction:column}.avp-category{color:#8a1019;font-size:11px;font-weight:800;text-transform:uppercase}.avp-card-body h3{margin:7px 0 0;color:#25100b!important;font-family:Georgia,serif;font-size:25px}.avp-subtitle{color:#6d190f;font-weight:700}.avp-info{font-size:13px}.avp-actions{display:flex;margin-top:auto;padding-top:16px;flex-wrap:wrap;gap:8px}.avp-details,.avp-primary,.avp-secondary{display:inline-flex!important;min-height:42px!important;padding:10px 15px!important;align-items:center!important;justify-content:center!important;border-radius:7px!important;font-size:11px!important;font-weight:800!important;text-decoration:none!important;cursor:pointer!important}.avp-details,.avp-primary{color:var(--c)!important;background:linear-gradient(#a81722,var(--b))!important;border:1px solid var(--g)!important}.avp-secondary{color:var(--b)!important;background:var(--c)!important;border:1px solid #8b111b!important}.avp-details:hover,.avp-primary:hover,.avp-secondary:hover{color:#3d070b!important;background:linear-gradient(#f3db88,var(--g))!important}.avp-calendar{padding:22px;background:var(--c);border:1px solid #c79d45;border-radius:14px}.avp-calendar-head{display:grid;grid-template-columns:54px 1fr 54px;align-items:center}.avp-calendar-head button{width:46px;height:46px;color:#fff!important;background:var(--b)!important;border:1px solid var(--g)!important;border-radius:50%!important}.avp-cal-title{text-align:center;color:#4d0910!important}.avp-weekdays,.avp-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.avp-weekdays{margin-top:15px;background:#efd6a7;border:1px solid #d1ac5d;text-align:center;font-weight:800}.avp-weekdays span{padding:10px 4px}.avp-day{min-height:120px;padding:8px;background:#fffaf0;border-right:1px solid #d1ac5d;border-bottom:1px solid #d1ac5d}.avp-day.is-outside{background:#f4ead8}.avp-day.is-today{box-shadow:inset 0 0 0 3px #8b111b}.avp-day-event{display:block;width:100%;margin:4px 0;padding:6px;color:#fff;background:#7f1018;border:0;border-radius:5px;font-size:10px;font-weight:800;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avp-modal,.avp-lightbox{position:fixed;z-index:999999;inset:0;display:flex;padding:30px;align-items:center;justify-content:center}.avp-modal-backdrop,.avp-lightbox-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.9)}.avp-modal-content{position:relative;z-index:2;width:min(1180px,96vw);max-height:92vh;overflow:auto;background:#f8ecd2;border:2px solid var(--g);border-radius:18px}.avp-event-sheet{position:relative;display:grid;grid-template-columns:minmax(330px,40%) 1fr;min-height:700px}.avp-close{position:absolute;z-index:20;top:16px;right:16px;display:flex;width:52px;height:52px;align-items:center;justify-content:center;color:var(--c);background:var(--b);border:2px solid var(--g);border-radius:50%;cursor:pointer}.avp-close span,.avp-close span:before{display:block;width:22px;height:3px;background:currentColor;border-radius:999px}.avp-close span{transform:rotate(45deg)}.avp-close span:before{content:"";transform:rotate(90deg)}.avp-close:hover{color:#3d070b;background:var(--g)}.avp-sheet-poster{position:relative;min-height:700px;background:#111}.avp-sheet-poster img{width:100%;height:100%;object-fit:cover}.avp-sheet-type{position:absolute;left:20px;bottom:20px;padding:9px 12px;color:#fff;background:var(--b);border:1px solid var(--g);border-radius:6px}.avp-sheet-content{padding:38px}.avp-sheet-kicker{color:#7a0e17;font-weight:900;letter-spacing:2px}.avp-sheet-content h3{margin:8px 0 0;color:#26080a!important;font-family:Georgia,serif;font-size:clamp(38px,4vw,58px)!important}.avp-sheet-subtitle{color:#8a1119;font-size:21px;font-style:italic}.avp-sheet-grid{display:grid;margin:26px 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.avp-sheet-grid>div{padding:13px 14px;background:#f5dfb8;border:1px solid #d2ac5a;border-radius:10px}.avp-sheet-grid small{display:block;color:#7a0e17;font-size:10px;font-weight:900}.avp-role{padding:15px 17px;color:var(--c);background:var(--b);border-left:5px solid var(--g);border-radius:9px}.avp-role strong{color:#f0d47c}.avp-program,.avp-media{margin-top:26px;padding:22px;background:var(--c);border:1px solid #d2ac5a;border-radius:12px}.avp-video{display:flex;min-height:180px;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#fff;background:linear-gradient(135deg,#300509,#080808);border:1px solid var(--g);border-radius:10px;cursor:pointer}.avp-video b{display:flex;width:62px;height:62px;align-items:center;justify-content:center;background:#790d16;border:2px solid var(--g);border-radius:50%;font-size:25px}.avp-gallery{display:grid;margin-top:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.avp-gallery-item{display:block;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--g);border-radius:8px;cursor:pointer}.avp-gallery-item img{width:100%;height:100%;object-fit:cover}.avp-sheet-actions{display:flex;margin-top:24px;flex-wrap:wrap;gap:10px}.avp-lightbox-content{position:relative;z-index:2;display:flex;width:min(1200px,90vw);height:min(800px,84vh);align-items:center;justify-content:center}.avp-lightbox-content img,.avp-lightbox-content video,.avp-lightbox-content iframe{max-width:100%;max-height:100%;border:2px solid var(--g);border-radius:9px}.avp-lightbox-content iframe{width:100%;height:100%}.avp-lightbox-close,.avp-lightbox-prev,.avp-lightbox-next{position:absolute;z-index:3;display:flex;width:54px;height:54px;align-items:center;justify-content:center;color:var(--c);background:var(--b);border:2px solid var(--g);border-radius:50%;font-size:30px;cursor:pointer}.avp-lightbox-close{top:18px;right:20px}.avp-lightbox-prev{left:16px}.avp-lightbox-next{right:16px}.avp-lightbox-prev,.avp-lightbox-next{top:50%;transform:translateY(-50%)}@media(max-width:1100px){.avp-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.avp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.avp-event-sheet{grid-template-columns:1fr}.avp-sheet-poster{min-height:520px}}@media(max-width:600px){.avp-agenda{left:auto;width:100%;margin-left:0;padding:40px 14px}.avp-cards{grid-template-columns:1fr}.avp-view-switch,.avp-filters{flex-direction:column}.avp-view-switch button,.avp-filters button{width:100%}.avp-sheet-content{padding:22px 16px}.avp-sheet-grid{grid-template-columns:1fr}.avp-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.avp-day{min-height:76px;padding:4px}.avp-day-event{height:8px;padding:0;font-size:0;border-radius:999px}.avp-modal,.avp-lightbox{padding:8px}}

.avp-linked-gallery{margin-top:26px;padding:22px;background:#fff7e8;border:1px solid #d2ac5a;border-radius:12px}
.avp-linked-gallery>span{color:#8a1119;font-family:Cinzel,Georgia,serif;font-size:10px;font-weight:900;letter-spacing:2px}
.avp-linked-gallery h4{margin:4px 0 8px!important;color:#4c080e!important;font-family:'Playfair Display',Georgia,serif!important;font-size:25px!important}
.avp-linked-gallery-subtitle{margin:0 0 14px;color:#6d190f;font-style:italic}
.avp-linked-gallery-footer{display:flex;margin-top:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.avp-linked-gallery-footer small{color:#654b38;font-weight:700}

.avp-linked-gallery-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.avp-media-stats{display:flex;flex-wrap:wrap;gap:8px}
.avp-media-stats span{display:inline-flex;min-height:34px;padding:7px 10px;align-items:center;color:#fff7e8;background:linear-gradient(180deg,#7e1018,#51070d);border:1px solid #d6b254;border-radius:999px;font-size:11px;font-weight:900}
.avp-linked-video{position:relative;display:flex;min-height:220px;margin:18px 0;padding:22px;overflow:hidden;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#fff7e8;background:radial-gradient(circle at 50% 36%,rgba(145,18,28,.55),transparent 32%),linear-gradient(135deg,#320509,#080808);border:1px solid #d6b254;border-radius:12px;cursor:pointer;box-shadow:0 12px 28px rgba(0,0,0,.18);transition:transform .2s ease,box-shadow .2s ease}
.avp-linked-video:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(0,0,0,.28),0 0 22px rgba(214,178,84,.18)}
.avp-linked-video-kicker{color:#f0d47c;font-family:Cinzel,Georgia,serif;font-size:10px;font-weight:900;letter-spacing:2px}
.avp-linked-video b{display:flex;width:66px;height:66px;align-items:center;justify-content:center;color:#fff;background:#790d16;border:2px solid #d6b254;border-radius:50%;font-size:26px}
.avp-linked-video strong{color:#fff7e8;font-size:15px}
.avp-linked-gallery-summary{display:flex;flex-wrap:wrap;gap:8px}
.avp-linked-gallery-summary span{color:#654b38;font-size:12px;font-weight:800}
.avp-linked-gallery-empty{margin:16px 0 0;padding:14px;color:#6d190f;background:#f4dfb8;border:1px dashed #c49a47;border-radius:8px;text-align:center;font-weight:700}
.avp-linked-gallery-missing{background:#f8e6c6}
@media(max-width:650px){.avp-linked-gallery-head{flex-direction:column}.avp-media-stats{width:100%}.avp-media-stats span{flex:1 1 auto;justify-content:center}.avp-linked-gallery-footer{align-items:stretch;flex-direction:column}.avp-linked-gallery-footer .avp-secondary{width:100%}}

/* V3.1 Module 3 — état sans album lié */
.avp-gallery-placeholder{
    display:grid;
    margin-top:26px;
    padding:20px;
    grid-template-columns:54px 1fr auto;
    align-items:center;
    gap:16px;
    background:radial-gradient(circle at 100% 0%,rgba(214,178,84,.14),transparent 34%),#fff7e8;
    border:1px dashed #c49a47;
    border-radius:12px;
}
.avp-gallery-placeholder-icon{
    display:flex;
    width:52px;
    height:52px;
    align-items:center;
    justify-content:center;
    background:linear-gradient(180deg,#7e1018,#51070d);
    border:1px solid #d6b254;
    border-radius:50%;
    font-size:24px;
    box-shadow:0 7px 16px rgba(0,0,0,.15);
}
.avp-gallery-placeholder span{
    color:#8a1119;
    font-family:Cinzel,Georgia,serif;
    font-size:10px;
    font-weight:900;
    letter-spacing:2px;
}
.avp-gallery-placeholder h4{
    margin:3px 0 5px!important;
    color:#4c080e!important;
    font-family:'Playfair Display',Georgia,serif!important;
    font-size:23px!important;
}
.avp-gallery-placeholder p{margin:0;color:#654b38;line-height:1.5}
.avp-gallery-placeholder.is-upcoming{
    background:radial-gradient(circle at 100% 0%,rgba(214,178,84,.18),transparent 34%),linear-gradient(135deg,#fff8e9,#f5dfb7);
}
.avp-gallery-placeholder.is-past{border-style:solid}
@media(max-width:700px){
    .avp-gallery-placeholder{grid-template-columns:48px 1fr}
    .avp-gallery-placeholder .avp-secondary{grid-column:1/-1;width:100%}
    .avp-gallery-placeholder-icon{width:46px;height:46px}
}

/* V3.2 Module 5 — retour Galerie -> Événement */
.avp-return-event{
    display:flex;
    margin:0 auto 18px;
    justify-content:flex-start;
}
.avp-return-event-link{
    display:inline-flex;
    min-height:42px;
    padding:10px 15px;
    align-items:center;
    justify-content:center;
    color:#fff7e8!important;
    background:linear-gradient(180deg,#8a1119,#54070d)!important;
    border:1px solid #d6b254!important;
    border-radius:7px!important;
    font-family:Montserrat,Arial,sans-serif;
    font-size:11px;
    font-weight:900;
    text-decoration:none!important;
    box-shadow:0 6px 14px rgba(0,0,0,.18);
}
.avp-return-event-link:hover{
    color:#3d070b!important;
    background:linear-gradient(180deg,#f3db88,#d6b254)!important;
}

.avp-multiday-program{margin-top:26px;padding:22px;background:#fff7e8;border:1px solid #d2ac5a;border-radius:12px}.avp-multiday-program>span{color:#8a1119;font-family:Cinzel,Georgia,serif;font-size:10px;font-weight:900;letter-spacing:2px}.avp-multiday-program>h4{margin:4px 0 16px!important;color:#4c080e!important;font-family:'Playfair Display',Georgia,serif!important;font-size:25px!important}.avp-day-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.avp-day-tab{display:flex!important;min-width:130px!important;min-height:54px!important;padding:9px 13px!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;color:#f0d47c!important;background:#111!important;border:1px solid #d6b254!important;border-radius:8px!important;cursor:pointer!important}.avp-day-tab strong{color:inherit!important;font-family:'Playfair Display',Georgia,serif;font-size:16px;text-transform:capitalize}.avp-day-tab small{margin-top:2px;color:inherit;opacity:.86}.avp-day-tab.is-active,.avp-day-tab:hover{color:#fff7e8!important;background:linear-gradient(180deg,#8b111b,#54070d)!important}.avp-day-panel[hidden]{display:none!important}.avp-program-timeline{display:grid}.avp-program-line{position:relative;display:grid;min-height:48px;grid-template-columns:18px 78px 1fr;gap:10px;align-items:start}.avp-program-line:not(:last-child)::before{position:absolute;top:14px;bottom:-1px;left:6px;width:2px;content:"";background:#d6b254}.avp-program-dot{position:relative;z-index:2;width:14px;height:14px;margin-top:2px;background:#7b0d16;border:3px solid #f0d47c;border-radius:50%;box-shadow:0 0 0 2px #7b0d16}.avp-program-time{color:#7b0d16;font-weight:900}.avp-program-title{color:#2a100b;font-weight:700}.avp-program-empty{margin:0;padding:14px;color:#6d190f;background:#f4dfb8;border:1px dashed #c49a47;border-radius:8px;text-align:center}@media(max-width:600px){.avp-day-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.avp-day-tab{min-width:0!important;width:100%!important}.avp-program-line{grid-template-columns:16px 62px 1fr;gap:8px}}

/* V3.4 — carte Google Maps intégrée et CTA intelligent */
.avp-map-embed{margin-top:26px;padding:22px;background:#fff7e8;border:1px solid #d2ac5a;border-radius:12px}
.avp-map-head>span{color:#8a1119;font-family:Cinzel,Georgia,serif;font-size:10px;font-weight:900;letter-spacing:2px}
.avp-map-head h4{margin:4px 0 14px!important;color:#4c080e!important;font-family:'Playfair Display',Georgia,serif!important;font-size:25px!important}
.avp-map-frame{overflow:hidden;aspect-ratio:16/8;background:#eee;border:1px solid #d6b254;border-radius:10px}
.avp-map-frame iframe{display:block;width:100%;height:100%;border:0}
.avp-map-route{margin-top:12px}
.avp-smart-cta{display:flex;margin-top:26px;padding:18px;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#5c0810,#2a0306);border:1px solid #d6b254;border-radius:12px}
.avp-smart-cta-copy{display:flex;align-items:center;gap:12px}.avp-smart-cta-copy>span{font-size:30px}.avp-smart-cta-copy strong{display:block;color:#f0d47c;font-family:Cinzel,Georgia,serif}.avp-smart-cta-copy small{display:block;margin-top:3px;color:#fff7e8}
.avp-free-badge,.avp-full-badge{display:inline-flex;min-height:42px;padding:10px 15px;align-items:center;justify-content:center;border-radius:7px;font-size:11px;font-weight:900}
.avp-free-badge{color:#19462d;background:#dff2e6;border:1px solid #3a8c5d}.avp-full-badge{color:#fff;background:#6b0b12;border:1px solid #d6b254}
.avp-entry-full{background:linear-gradient(135deg,#3b0509,#160103)}.avp-entry-free{background:linear-gradient(135deg,#163624,#0b1c13)}
@media(max-width:700px){.avp-map-frame{aspect-ratio:4/3}.avp-smart-cta{align-items:stretch;flex-direction:column}.avp-smart-cta .avp-primary,.avp-free-badge,.avp-full-badge{width:100%}}


/* V3.4.1 — affiche événement toujours visible en entier */
.avp-sheet-poster{
    display:flex!important;
    min-height:700px!important;
    padding:14px!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    background:#111!important;
}
.avp-sheet-poster img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:calc(92vh - 28px)!important;
    object-fit:contain!important;
    object-position:center center!important;
}
.avp-sheet-type{
    z-index:2;
}
@media(max-width:850px){
    .avp-sheet-poster{
        min-height:420px!important;
        max-height:72vh!important;
    }
    .avp-sheet-poster img{
        width:auto!important;
        height:auto!important;
        max-width:100%!important;
        max-height:68vh!important;
    }
}

/* V3.5 — grand événement à la une */
.avp-featured-event{
    display:grid;
    max-width:1240px;
    margin:0 auto 30px;
    overflow:hidden;
    grid-template-columns:minmax(320px,42%) 1fr;
    background:linear-gradient(135deg,#160407,#3d070c 55%,#190204);
    border:2px solid #d6b254;
    border-radius:16px;
    box-shadow:0 22px 55px rgba(66,20,10,.25);
}
.avp-featured-visual{
    position:relative;
    min-height:430px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#0b0908;
}
.avp-featured-visual img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
}
.avp-featured-placeholder{
    color:#d6b254;
    font-size:100px;
}
.avp-featured-ribbon{
    position:absolute;
    top:18px;
    left:18px;
    padding:8px 12px;
    color:#3b070b;
    background:linear-gradient(180deg,#f3db88,#d6b254);
    border:1px solid #8b671f;
    border-radius:6px;
    font-size:10px;
    font-weight:900;
    letter-spacing:1px;
}
.avp-featured-copy{
    display:flex;
    padding:34px;
    flex-direction:column;
    justify-content:center;
}
.avp-featured-kicker{
    color:#f0d47c;
    font-family:Cinzel,Georgia,serif;
    font-size:11px;
    font-weight:900;
    letter-spacing:2px;
    text-transform:uppercase;
}
.avp-featured-copy h3{
    margin:8px 0 0!important;
    color:#fff7e8!important;
    font-family:'Playfair Display',Georgia,serif!important;
    font-size:clamp(38px,4.5vw,62px)!important;
    line-height:1!important;
}
.avp-featured-subtitle{
    margin:12px 0 0;
    color:#f0d7b3;
    font-size:18px;
    font-style:italic;
}
.avp-featured-meta{
    display:flex;
    margin-top:20px;
    flex-wrap:wrap;
    gap:10px;
}
.avp-featured-meta span{
    display:inline-flex;
    padding:8px 10px;
    color:#fff7e8;
    background:rgba(255,255,255,.07);
    border:1px solid rgba(214,178,84,.45);
    border-radius:7px;
    font-size:12px;
    font-weight:700;
}
.avp-countdown{
    display:grid;
    margin-top:24px;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.avp-countdown>div{
    padding:12px 8px;
    text-align:center;
    background:#fff7e8;
    border:1px solid #d6b254;
    border-radius:9px;
}
.avp-countdown strong{
    display:block;
    color:#650b12;
    font-family:'Playfair Display',Georgia,serif;
    font-size:30px;
    line-height:1;
}
.avp-countdown small{
    display:block;
    margin-top:4px;
    color:#6d4b35;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
}
.avp-featured-actions{
    display:flex;
    margin-top:24px;
    flex-wrap:wrap;
    gap:10px;
}
.avp-featured-event.is-now .avp-countdown::before{
    content:"L'événement commence aujourd'hui";
    grid-column:1/-1;
    padding:8px 10px;
    color:#fff7e8;
    background:#650b12;
    border-radius:7px;
    text-align:center;
    font-weight:900;
}
.avp-checkline{
    display:flex!important;
    align-items:center;
    gap:8px;
    font-weight:600;
}
.avp-checkline input{
    width:auto!important;
}
@media(max-width:900px){
    .avp-featured-event{grid-template-columns:1fr}
    .avp-featured-visual{min-height:360px}
}
@media(max-width:600px){
    .avp-featured-copy{padding:24px 18px}
    .avp-countdown{grid-template-columns:repeat(2,minmax(0,1fr))}
    .avp-featured-actions{flex-direction:column}
    .avp-featured-actions>*{width:100%}
}

/* V3.6 — événements passés */
.avp-card-past{display:none;position:relative;opacity:.94}
.avp-agenda.avp-show-past .avp-card{display:none!important}
.avp-agenda.avp-show-past .avp-card-past{display:block!important}
.avp-agenda.avp-show-past .avp-featured-event{display:none!important}
.avp-card-past:after{content:"ÉVÉNEMENT PASSÉ";position:absolute;top:12px;left:12px;z-index:5;padding:6px 9px;background:#4d4141;color:#fff7e8;border:1px solid #d6b254;border-radius:5px;font-size:9px;font-weight:900;letter-spacing:.7px}
.avp-past-filter{border-color:#8d6f3a!important}

/* V3.6.1 — l'événement reste visible le lendemain */
.avp-card-yesterday{
    position:relative;
    display:block!important;
    overflow:hidden;
}
.avp-yesterday-ribbon{
    position:absolute;
    top:28px;
    right:-52px;
    z-index:20;
    width:210px;
    padding:9px 12px;
    color:#fff7e8;
    background:linear-gradient(180deg,#8a1119,#57080e);
    border-top:1px solid #e1c267;
    border-bottom:1px solid #e1c267;
    box-shadow:0 5px 12px rgba(0,0,0,.28);
    font-family:Cinzel,Georgia,serif;
    font-size:11px;
    font-weight:900;
    letter-spacing:1.2px;
    text-align:center;
    transform:rotate(38deg);
    pointer-events:none;
}
.avp-agenda.avp-show-past .avp-card-yesterday{
    display:none!important;
}
@media(max-width:600px){
    .avp-yesterday-ribbon{
        top:24px;
        right:-58px;
        width:210px;
        font-size:10px;
    }
}

/* V3.7.3 — série / édition */
.avp-series-line{display:flex;flex-wrap:wrap;gap:6px;margin:7px 0 2px}
.avp-series-name,.avp-edition-name{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900}
.avp-series-name{color:#fff7e8;background:#6f0b13;border:1px solid #d6b254}
.avp-edition-name{color:#5b3b20;background:#f3dfb2;border:1px solid #c79d4c}

/* V3.8 finitions */
.avp-cards{align-items:stretch}
.avp-card{height:100%;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.avp-card:hover{transform:translateY(-4px);border-color:#b8872e;box-shadow:0 18px 36px rgba(74,35,11,.22)}
.avp-poster{display:flex;align-items:center;justify-content:center;min-height:430px;background:#120d0b}
.avp-poster img{width:100%;height:100%;object-fit:contain!important;object-position:center!important}
.avp-card-body{min-height:270px}
.avp-card-body h3{display:-webkit-box;overflow:hidden;min-height:2.15em;line-height:1.08!important;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.avp-info{min-height:56px}
.avp-actions{width:100%;margin-top:auto}.avp-actions .avp-details,.avp-actions .avp-primary{flex:1 1 120px}
.avp-empty-filter[hidden]{display:none!important}.avp-empty-filter{max-width:760px;margin:24px auto 0;padding:28px 24px;text-align:center;background:rgba(255,247,232,.82);border:1px dashed #c49a47;border-radius:12px}
.avp-empty-filter>span{display:flex;width:48px;height:48px;margin:0 auto 10px;align-items:center;justify-content:center;color:#f0d47c;background:#650b12;border:1px solid #d6b254;border-radius:50%;font-size:20px}
.avp-empty-filter h3{margin:0 0 6px!important;color:#4c080e!important;font-family:'Playfair Display',Georgia,serif!important;font-size:26px!important}.avp-empty-filter p{margin:0;color:#654b38}
@media(max-width:1100px){.avp-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.avp-agenda{padding-left:12px!important;padding-right:12px!important}.avp-cards{grid-template-columns:1fr!important;gap:16px!important}.avp-poster{min-height:400px}.avp-card-body{min-height:0;padding:16px!important}.avp-card-body h3{min-height:0;font-size:26px!important}.avp-info{min-height:0}.avp-actions{flex-direction:column}.avp-actions .avp-details,.avp-actions .avp-primary,.avp-actions .avp-secondary{width:100%!important;flex:auto!important}.avp-filters{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important}.avp-filters button{width:100%!important;padding:9px 8px!important;font-size:10px!important}.avp-view-switch{display:grid!important;grid-template-columns:1fr 1fr}.avp-view-switch button{width:100%!important}}
@media(max-width:430px){.avp-filters{grid-template-columns:1fr}}

/* V3.9 — statut proche + outils visiteurs */
.avp-soon-badge{position:absolute;top:12px;right:12px;z-index:6;padding:7px 10px;color:#3d070b;background:linear-gradient(180deg,#f3db88,#d6b254);border:1px solid #8b671f;border-radius:5px;box-shadow:0 4px 12px rgba(0,0,0,.18);font-family:Cinzel,Georgia,serif;font-size:9px;font-weight:900;letter-spacing:.7px}
.avp-visitor-tools{margin-top:22px;padding:16px;background:#fff7e8;border:1px solid #d2ac5a;border-radius:10px}
.avp-tools-label{display:block;margin-bottom:9px;color:#8a1119;font-family:Cinzel,Georgia,serif;font-size:9px;font-weight:900;letter-spacing:1.5px}
.avp-tools-actions{display:flex;flex-wrap:wrap;gap:8px}
html body .avp-tool-button{display:inline-flex!important;min-height:40px!important;padding:9px 12px!important;align-items:center!important;justify-content:center!important;color:#f0d47c!important;background:#160407!important;border:1px solid #d6b254!important;border-radius:7px!important;font-size:10px!important;font-weight:900!important;text-decoration:none!important;cursor:pointer!important}
html body .avp-tool-button:hover{color:#3d070b!important;background:linear-gradient(180deg,#f3db88,#d6b254)!important}
.avp-copy-confirm{display:block;margin-top:9px;color:#6b0b12;font-size:11px;font-weight:900}
.avp-copy-confirm[hidden]{display:none!important}
@media(max-width:600px){.avp-tools-actions{display:grid;grid-template-columns:1fr}.avp-tool-button{width:100%!important}}


/* V4.0.2 — partage public des événements */
html body .avp-card-share{
    display:inline-flex!important;
    min-height:42px!important;
    padding:10px 14px!important;
    align-items:center!important;
    justify-content:center!important;
    color:#650b12!important;
    background:#fff7e8!important;
    border:1px solid #d6b254!important;
    border-radius:7px!important;
    font-size:11px!important;
    font-weight:900!important;
    cursor:pointer!important;
}
html body .avp-card-share:hover{
    color:#3d070b!important;
    background:linear-gradient(180deg,#f3db88,#d6b254)!important;
}
.avp-social-share{margin-top:14px;padding-top:14px;border-top:1px solid #e2c77e}
.avp-social-share-title{display:block;margin-bottom:9px;color:#8a1119;font-family:Cinzel,Georgia,serif;font-size:9px;font-weight:900;letter-spacing:1.4px}
.avp-social-share-actions{display:flex;flex-wrap:wrap;gap:8px}
html body .avp-social-button{display:inline-flex!important;min-height:38px!important;padding:8px 12px!important;align-items:center!important;justify-content:center!important;color:#fff!important;border:1px solid rgba(0,0,0,.16)!important;border-radius:7px!important;font-size:10px!important;font-weight:900!important;text-decoration:none!important}
html body .avp-facebook{background:#1877f2!important}
html body .avp-whatsapp{background:#128c7e!important}
html body .avp-xshare{background:#111!important}
html body .avp-linkedin{background:#0a66c2!important}
html body .avp-emailshare{background:#650b12!important;border-color:#d6b254!important}
html body .avp-social-button:hover{filter:brightness(1.08)}
.avp-social-share small{display:block;margin-top:9px;color:#6c513e;font-size:10px;line-height:1.45}
.avp-actions .avp-card-share{flex:1 1 105px}
.avp-featured-actions .avp-card-share{min-width:120px}
@media(max-width:680px){.avp-actions .avp-card-share,.avp-featured-actions .avp-card-share{width:100%!important;flex:auto!important}.avp-social-share-actions{display:grid;grid-template-columns:1fr 1fr}.avp-social-button{width:100%!important}}
@media(max-width:430px){.avp-social-share-actions{grid-template-columns:1fr}}


/* V4.0.5 — visibilité renforcée des commandes de partage */
html body .avp-actions .avp-card-share,
html body .avp-featured-actions .avp-card-share{display:inline-flex!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:2!important}
.avp-share-tools-forced{display:block!important;visibility:visible!important;opacity:1!important}


/* V4.0.6 — menu de partage visible sous chaque événement */
.avp-card-body,.avp-featured-event{position:relative}
.avp-quick-share{margin-top:10px;padding:10px;border:1px solid #d6b254;border-radius:10px;background:#fffaf0;box-shadow:0 8px 22px rgba(74,36,16,.12)}
.avp-quick-share[hidden]{display:none!important}
.avp-quick-share-title{display:block;margin-bottom:8px;color:#8a1119;font-family:Cinzel,Georgia,serif;font-size:9px;font-weight:900;letter-spacing:1.2px;text-align:center}
.avp-quick-share-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
html body .avp-quick-share-btn{display:flex!important;align-items:center;justify-content:center;min-height:38px;padding:8px 10px!important;border:0!important;border-radius:8px!important;color:#fff!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;cursor:pointer;line-height:1.2}
html body .avp-quick-facebook{background:#1877f2!important}
html body .avp-quick-whatsapp{background:#128c7e!important}
html body .avp-quick-copy{background:#650b12!important}
@media(max-width:540px){.avp-quick-share-buttons{grid-template-columns:1fr}.avp-quick-share-btn{width:100%!important}}


/* V4.1.0 — pièce jointe / formulaire de concours */
.avp-attachment-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px;border:1px solid #b88d37;border-radius:999px;background:#f7f0df;color:#650b12!important;font-weight:800;text-decoration:none!important;line-height:1.15;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.avp-attachment-link:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(82,52,25,.12);background:#fff8e5}
.avp-contest-download{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0;padding:22px;border:1px solid #d6b254;border-radius:16px;background:#fff8e5}
.avp-contest-download-copy{min-width:0}
.avp-contest-download-copy>span{display:block;margin-bottom:5px;color:#9f111b;font-size:.78rem;font-weight:900;letter-spacing:.12em}
.avp-contest-download-copy h4{margin:0 0 6px;color:#650b12}
.avp-contest-download-copy p{margin:5px 0;color:#5b4632}
.avp-contest-file-name{font-weight:700;word-break:break-word}
.avp-contest-download-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border-radius:999px;background:#650b12;color:#fff!important;font-weight:900;text-decoration:none!important;text-align:center}
.avp-contest-download-button:hover{background:#9f111b}
@media(max-width:700px){.avp-contest-download{align-items:stretch;flex-direction:column}.avp-contest-download-button{width:100%}.avp-attachment-link{width:100%}}


/* V4.1.2 — harmonisation du bouton de téléchargement du formulaire concours */
html body .avp-actions .avp-attachment-link,
html body .avp-featured-actions .avp-attachment-link{
    display:inline-flex!important;
    width:100%!important;
    flex:1 1 100%!important;
    min-height:42px!important;
    padding:10px 14px!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:7px!important;
    font-size:11px!important;
    font-weight:900!important;
    text-align:center!important;
    line-height:1.2!important;
    order:4;
}
html body .avp-actions .avp-details,
html body .avp-featured-actions .avp-details{order:1}
html body .avp-actions .avp-card-share,
html body .avp-featured-actions .avp-card-share{order:2}
html body .avp-actions .avp-primary,
html body .avp-featured-actions .avp-primary{order:3}
html body .avp-actions .avp-attachment-link:hover,
html body .avp-featured-actions .avp-attachment-link:hover{
    transform:none!important;
}

/* V4.2.0 — boutons supplémentaires personnalisables par événement */
.avp-extra-actions{
    display:grid;
    width:100%;
    flex:1 1 100%;
    grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
    gap:8px;
    order:3;
}
html body .avp-extra-actions .avp-custom-link{
    width:100%!important;
    min-height:42px!important;
    margin:0!important;
    text-align:center!important;
}
html body .avp-actions .avp-primary,
html body .avp-featured-actions .avp-primary{order:4}
html body .avp-actions .avp-attachment-link,
html body .avp-featured-actions .avp-attachment-link{order:5}
.avp-sheet-actions .avp-extra-actions{
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
}
@media(max-width:680px){
    .avp-extra-actions{grid-template-columns:1fr}
}

/* V4.3.0 — horaires multi-jours */
.avp-day-hours{display:flex;align-items:center;gap:9px;margin:0 0 14px;padding:11px 13px;color:#4c080e;background:#f4dfb8;border:1px solid #d6b254;border-radius:8px}.avp-day-hours span{font-size:18px}.avp-day-hours strong{font-size:16px}.avp-info .avp-date-range{font-weight:700;color:#650b12}.avp-info .avp-variable-hours{font-weight:700;color:#7a0e17}


/* V4.3.1 — croix de fermeture seules, sans rond */
.avp-close,
.avp-close:hover,
.avp-close:focus,
.avp-close:active{
    top:12px!important;
    right:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:36px!important;
    height:36px!important;
    padding:0!important;
    color:#7f1018!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:none!important;
    font-family:Arial,sans-serif!important;
    font-size:36px!important;
    font-weight:400!important;
    line-height:1!important;
    cursor:pointer!important;
}
.avp-close:hover,
.avp-close:focus{
    color:#d6b254!important;
}
.avp-close span,
.avp-close span::before{
    display:none!important;
    content:none!important;
}

.avp-lightbox-close,
.avp-lightbox-close:hover,
.avp-lightbox-close:focus,
.avp-lightbox-close:active{
    top:14px!important;
    right:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:36px!important;
    height:36px!important;
    padding:0!important;
    color:#fff!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:none!important;
    font-family:Arial,sans-serif!important;
    font-size:38px!important;
    font-weight:400!important;
    line-height:1!important;
    cursor:pointer!important;
}
.avp-lightbox-close:hover,
.avp-lightbox-close:focus{
    color:#d6b254!important;
}

/* Bandeau Annulé : affichage non destructif sur toutes les affiches */
.avp-poster,.avp-sheet-poster,.avp-featured-visual{position:relative;overflow:hidden}
.avp-cancelled-ribbon{position:absolute;left:50%;top:48%;z-index:12;transform:translate(-50%,-50%) rotate(-18deg);box-sizing:border-box;width:125%;max-width:none;padding:13px 8px;background:#a41120;color:#fff;border:3px solid #fff;outline:2px solid #a41120;box-shadow:0 5px 16px rgba(0,0,0,.32);text-align:center;font-weight:900;font-family:inherit;font-size:clamp(24px,3vw,44px);line-height:1.2;letter-spacing:.13em;text-shadow:1px 2px 2px rgba(0,0,0,.35);pointer-events:none}
.avp-sheet-poster .avp-cancelled-ribbon{font-size:clamp(25px,4vw,56px)}
.avp-featured-visual .avp-cancelled-ribbon{font-size:clamp(24px,3vw,48px)}
