.cvp-wrap,.cvp-wrap *{box-sizing:border-box}
.cvp-wrap{position:relative;left:50%;width:100vw;margin-left:-50vw;background:#0c0907;color:#f7ead4;border-top:2px solid #c89a31;border-bottom:2px solid #c89a31}
.cvp-hero{padding:22px 18px 18px;text-align:center;background:linear-gradient(135deg,#4d070a,#a90e12 50%,#4a0709);overflow:hidden}
.cvp-brand{position:relative;display:inline-block;margin:0 auto 8px;padding:0 64px 13px;line-height:1}
.cvp-brand:before,.cvp-brand:after{content:"";position:absolute;top:48%;width:46px;height:1px;background:linear-gradient(90deg,transparent,#e7ba4f)}
.cvp-brand:before{left:0}.cvp-brand:after{right:0;transform:scaleX(-1)}
.cvp-brand-main{display:block;color:#fff0d4;font-family:Georgia,"Times New Roman",serif;font-size:clamp(24px,3.4vw,43px);font-weight:900;letter-spacing:2.2px;text-shadow:0 2px 0 #250304,0 0 10px rgba(231,186,79,.2)}
.cvp-brand-by{position:absolute;right:46px;bottom:-1px;display:block;color:#f4cf67;font-family:"Brush Script MT","Segoe Script","Snell Roundhand",cursive;font-size:clamp(18px,2.4vw,31px);font-weight:500;letter-spacing:.2px;white-space:nowrap;transform:rotate(-7deg);transform-origin:center;text-shadow:0 2px 1px #3d0608}
.cvp-hero h2{margin:4px 0 6px!important;color:#f4cf67!important;font-family:Georgia,serif!important;font-size:clamp(36px,5.2vw,62px)!important;line-height:1!important;text-shadow:0 3px 0 #250304}
.cvp-hero p{max-width:720px;margin:auto;color:#fff0d4;font-size:14px;font-style:italic}

/* V1.3.3 — même format 3 colonnes, programme déroulant sous chaque bouton */
.cvp-shell{width:100%;max-width:none;margin:0;padding:14px clamp(10px,1.8vw,24px) 24px}
.cvp-view-help{margin:0 0 8px;text-align:center;color:#bda370;font-size:11px;font-weight:700;letter-spacing:.3px}
.cvp-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}
.cvp-day-column{min-width:0;display:flex;flex-direction:column;gap:6px}
.cvp-day-button{appearance:none!important;-webkit-appearance:none!important;width:100%!important;min-height:42px!important;margin:0!important;padding:7px 12px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;color:#e7ba4f!important;background:#17110d!important;background-image:none!important;border:1px solid #8b6821!important;border-radius:7px!important;font:inherit!important;font-size:14px!important;font-weight:900!important;letter-spacing:.9px!important;line-height:1.15!important;cursor:pointer!important;box-shadow:none!important;text-shadow:none!important;transition:.18s ease!important}
.cvp-day-button .cvp-day-label{display:block}.cvp-day-button .cvp-day-action{display:block;padding-left:9px;border-left:1px solid rgba(231,186,79,.45);color:#cdb16e;font-size:9px;font-weight:900;letter-spacing:.55px;white-space:nowrap}

.cvp-day-button .cvp-day-arrow{display:inline-block;margin-left:4px;font-size:14px;line-height:1;font-weight:900;vertical-align:-1px}
.cvp-day-column.is-open .cvp-day-arrow{font-size:14px}
.cvp-day-button:hover,.cvp-day-button:focus,.cvp-day-button:active,.cvp-day-column.is-open .cvp-day-button{color:#2f130b!important;background:linear-gradient(180deg,#f4d576,#cfa440)!important;background-color:#cfa440!important;border-color:#7d5a16!important;outline:none!important;box-shadow:none!important;text-shadow:none!important;filter:none!important}
.cvp-day-button:hover .cvp-day-action,.cvp-day-button:focus .cvp-day-action,.cvp-day-column.is-open .cvp-day-action{color:#51270e;border-left-color:rgba(81,39,14,.4)}
.cvp-day-panel[hidden]{display:none!important}
.cvp-day-panel{min-width:0;animation:cvpDrop .18s ease-out}
@keyframes cvpDrop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.cvp-day{height:auto;min-height:0;padding:8px;background:linear-gradient(180deg,#17110d,#100c09);border:1px solid #6c4f1c;border-radius:9px;box-shadow:0 8px 22px rgba(0,0,0,.22)}
.cvp-day-head{display:none}
.cvp-empty{height:auto;min-height:90px;display:flex;align-items:center;justify-content:center;padding:16px;color:#d7b873;background:#120e0b;border:1px dashed #8b6821;border-radius:8px;text-align:center}
.cvp-timeline{display:grid;gap:6px}
.cvp-timeline:before{display:none}
.cvp-item{position:relative;display:block;min-height:0;padding:8px;background:#120e0b;border:1px solid #4f3b1a;border-radius:8px;box-shadow:0 5px 14px rgba(0,0,0,.18)}
.cvp-item:before{display:none}
.cvp-item.is-highlight{border-color:#d0a23e;box-shadow:0 0 0 1px rgba(208,162,62,.12),0 7px 18px rgba(0,0,0,.22)}
.cvp-time{display:flex;align-items:baseline;gap:5px;padding:0 0 5px;border-bottom:1px solid rgba(139,104,33,.45);text-align:left}
.cvp-time strong{display:block;color:#f3cc66;font-size:15px;line-height:1}.cvp-time small{display:block;margin:0;color:#c9ad75;font-size:8px}
.cvp-image{height:100px;margin-top:7px;overflow:hidden;border:1px solid #8b6821;border-radius:7px;background:#050403}.cvp-image img{display:block;width:100%;height:100%;object-fit:cover}
.cvp-body{padding:6px 0 0}.cvp-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.cvp-title-row h3{margin:0!important;color:#f6dfaa!important;font-family:Georgia,serif!important;font-size:clamp(14px,1.15vw,18px)!important;line-height:1.12!important}.cvp-badge{flex:0 0 auto;padding:3px 5px;color:#32120a;background:#e5bc51;border-radius:999px;font-size:6px;font-weight:900}.cvp-location{margin:5px 0 0;color:#e2bc5a;font-size:9px;font-weight:800}.cvp-description{margin:5px 0 0;color:#d8c7a9;font-size:11px;line-height:1.28}

/* Partage réseaux du Programme */
.cvp-share{max-width:900px;margin:18px auto 0;padding:10px 12px;background:rgba(12,9,7,.72);border:1px solid #c89a31;border-radius:10px}
.cvp-share-label{display:block;margin-bottom:8px;color:#f4cf67;font-size:10px;font-weight:900;letter-spacing:1.1px}
.cvp-share-buttons{display:flex;justify-content:center;gap:7px;flex-wrap:wrap}
.cvp-wrap .cvp-share-btn{appearance:none!important;-webkit-appearance:none!important;padding:8px 11px!important;background:#17110d!important;background-image:none!important;color:#f4cf67!important;border:1px solid #c89a31!important;border-radius:7px!important;font:inherit!important;font-size:12px!important;font-weight:800!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important;text-shadow:none!important;transition:.18s ease!important}
.cvp-wrap .cvp-share-btn:hover,.cvp-wrap .cvp-share-btn:focus,.cvp-wrap .cvp-share-btn:active{background:linear-gradient(180deg,#f4d576,#cfa440)!important;background-color:#cfa440!important;color:#2f130b!important;border-color:#7d5a16!important;box-shadow:none!important;text-shadow:none!important;outline:none!important;filter:none!important;transform:translateY(-1px)}
.cvp-share-feedback{display:block;min-height:14px;margin-top:5px;color:#fff0d4;font-size:11px;font-weight:800}

@media(max-width:980px){
 .cvp-program-grid{grid-template-columns:1fr}
 .cvp-view-help{display:none}
 .cvp-day-column{margin-bottom:2px}
 .cvp-day-button{justify-content:space-between!important;padding-left:15px!important;padding-right:15px!important;font-size:13px!important}
}
@media(max-width:760px){
 .cvp-brand{padding:0 32px 18px;margin-bottom:10px}.cvp-brand:before,.cvp-brand:after{width:24px}.cvp-brand-main{font-size:clamp(23px,8vw,34px);letter-spacing:1px}.cvp-brand-by{right:26px;bottom:1px;font-size:clamp(17px,6vw,24px);transform:rotate(-6deg)}
 .cvp-shell{padding:10px 8px 18px}.cvp-day{padding:7px}.cvp-item{padding:8px}.cvp-image{height:140px}
 .cvp-share{margin-top:14px;padding:9px 7px}.cvp-share-buttons{gap:5px}.cvp-wrap .cvp-share-btn{padding:8px 9px!important;font-size:10px!important}
}
@media(max-width:600px){.cvp-wrap{left:auto;width:100%;margin-left:0}}

/* Titre Programme compact sur mobile */
@media(max-width:760px){.cvp-wrap .cvp-hero .cvp-program-title{display:block!important;width:100%!important;max-width:100%!important;margin:8px auto 9px!important;padding:0 6px!important;white-space:nowrap!important;overflow:visible!important;font-size:clamp(30px,9.5vw,42px)!important;line-height:1!important;letter-spacing:.2px!important;text-align:center!important}}
@media(max-width:420px){.cvp-wrap .cvp-hero .cvp-program-title{font-size:clamp(28px,9vw,36px)!important}.cvp-hero{padding-left:12px!important;padding-right:12px!important}}

/* V1.4.0 — horaires facultatifs et programme souple */
.cvp-flex-note{max-width:760px!important;margin:8px auto 0!important;padding:7px 10px!important;color:#f4cf67!important;background:rgba(12,9,7,.45)!important;border:1px solid rgba(231,186,79,.42)!important;border-radius:7px!important;font-size:11px!important;font-style:normal!important;font-weight:700!important;line-height:1.35!important}
.cvp-time small{font-size:8px!important;text-transform:uppercase;letter-spacing:.45px}
.cvp-item:not(:has(.cvp-time)) .cvp-image{margin-top:0}
@media(max-width:760px){.cvp-flex-note{font-size:10px!important;margin-top:7px!important}}
