/* OmraDiscount CTA — front */
.odc,.odc *{box-sizing:border-box}
.odc[hidden],.odc-overlay[hidden]{display:none!important}
.odc{
	font-family:'Poppins',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
	color:var(--odc-fg);background:var(--odc-bg);
	line-height:1.45;-webkit-font-smoothing:antialiased;text-align:left
}
.odc .odc__head,.odc .odc__body{min-width:0}
.odc p.odc__kicker{margin:0 0 2px;font-family:inherit;font-size:13px;font-weight:500;color:var(--odc-ac);letter-spacing:0}
.odc p.odc__title{margin:0;font-family:inherit;font-size:19px;font-weight:700;line-height:1.25;color:var(--odc-fg)}
.odc .odc__text{margin:6px 0 0;font-size:14px;color:var(--odc-fg);opacity:.86}
.odc .odc__text a{color:var(--odc-ac);text-decoration:underline}
.odc p.odc__prices{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 10px;margin:10px 0 0;font-family:inherit}
.odc .odc__old{font-size:14px;opacity:.6;color:var(--odc-fg)}
.odc .odc__price{font-size:28px;font-weight:700;line-height:1;color:var(--odc-ac)}
.odc .odc__mention{font-size:13px;opacity:.75}
.odc .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* compte à rebours */
.odc .odc__cd{display:flex;gap:6px;margin-top:12px;font-variant-numeric:tabular-nums}
.odc .odc__cd[hidden]{display:none}
.odc .odc__cd-u{display:flex;flex-direction:column;align-items:center;min-width:48px;padding:6px 4px 4px;border-radius:8px;background:color-mix(in srgb,var(--odc-fg) 10%,transparent)}
.odc .odc__cd-u b{font-size:19px;font-weight:700;line-height:1.1}
.odc .odc__cd-u small{font-size:10px;opacity:.7;line-height:1.3}

/* tampon */
.odc .odc__badge{
	display:inline-grid;place-items:center;flex:none;
	width:64px;height:64px;padding:4px;border-radius:50%;
	background:var(--odc-ac);color:var(--odc-bg);
	font-size:15px;font-weight:700;line-height:1.05;text-align:center;
	transform:rotate(-10deg);
	box-shadow:0 0 0 3px var(--odc-bg),0 0 0 5px var(--odc-ac)
}

/* boutons */
.odc .odc__actions{display:flex;flex-wrap:wrap;gap:8px}
.odc a.odc__btn{
	display:inline-flex;align-items:center;justify-content:center;
	min-height:46px;padding:10px 22px;border:0;border-radius:999px;
	background:var(--odc-btn);color:var(--odc-btn-fg);
	font-family:inherit;font-size:15px;font-weight:600;line-height:1.2;
	text-decoration:none;white-space:nowrap;
	transition:filter .15s ease,transform .15s ease
}
.odc a.odc__btn:hover{filter:brightness(1.08);transform:translateY(-1px);color:var(--odc-btn-fg)}
.odc a.odc__btn--ghost,.odc a.odc__btn--ghost:hover{background:transparent;color:var(--odc-fg);box-shadow:inset 0 0 0 1.5px currentColor}
.odc a:focus-visible,.odc button:focus-visible{outline:2px solid var(--odc-ac);outline-offset:3px}

/* fermer */
.odc .odc__close{
	position:absolute;top:10px;right:10px;z-index:3;
	display:grid;place-items:center;width:34px;height:34px;padding:0;margin:0;
	border:0;border-radius:50%;cursor:pointer;
	background:color-mix(in srgb,var(--odc-bg) 70%,#000);color:var(--odc-fg);
	font:400 22px/1 system-ui,sans-serif
}
.odc .odc__close:hover{filter:brightness(1.2)}

/* ---------- bandeaux ---------- */
.odc--bandeau_haut,.odc--bandeau_bas{position:relative;width:100%;padding:10px 56px 10px 16px}
.odc--bandeau_bas{position:fixed;left:0;right:0;bottom:0;z-index:99990;box-shadow:0 -8px 28px rgba(0,0,0,.2);animation:odc-up .35s ease-out}
.odc--bandeau_haut{z-index:99990}
.odc--bandeau_haut .odc__main,.odc--bandeau_bas .odc__main{display:flex;align-items:center;gap:18px;max-width:1200px;margin:0 auto}
.odc--bandeau_haut .odc__body,.odc--bandeau_bas .odc__body{flex:1;display:flex;align-items:center;flex-wrap:wrap;gap:4px 22px}
.odc--bandeau_haut .odc__badge,.odc--bandeau_bas .odc__badge{width:54px;height:54px;font-size:13px}
.odc--bandeau_haut p.odc__title,.odc--bandeau_bas p.odc__title{font-size:16px}
.odc--bandeau_haut .odc__text,.odc--bandeau_bas .odc__text{margin-top:2px;font-size:13px}
.odc--bandeau_haut p.odc__prices,.odc--bandeau_bas p.odc__prices{margin:0}
.odc--bandeau_haut .odc__price,.odc--bandeau_bas .odc__price{font-size:22px}
.odc--bandeau_haut .odc__cd,.odc--bandeau_bas .odc__cd{margin:0}
.odc--bandeau_haut .odc__cd-u,.odc--bandeau_bas .odc__cd-u{min-width:40px;padding:3px 4px 2px}
.odc--bandeau_haut .odc__cd-u b,.odc--bandeau_bas .odc__cd-u b{font-size:16px}
.odc--bandeau_haut .odc__close,.odc--bandeau_bas .odc__close{top:50%;right:12px;transform:translateY(-50%);background:transparent}

/* ---------- carte flottante ---------- */
.odc--flottant{position:fixed;right:20px;bottom:20px;z-index:99991;width:340px;max-width:calc(100vw - 32px);border-radius:16px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.3);animation:odc-up .4s ease-out}
.odc--flottant .odc__media{position:relative}
.odc--flottant .odc .odc__img,.odc--flottant img.odc__img{display:block;width:100%;height:150px;max-width:none;object-fit:cover}
.odc--flottant .odc__media .odc__badge{position:absolute;left:16px;bottom:-26px;z-index:2}
.odc--flottant .odc__body{padding:18px 20px 0}
.odc--flottant.odc--has-media .odc__body{padding-top:36px}
.odc--flottant .odc__body>.odc__badge{float:right;margin:0 0 8px 12px}
.odc--flottant p.odc__title{padding-right:24px}
.odc--flottant.odc--has-media p.odc__title{padding-right:0}
.odc--flottant .odc__actions{padding:16px 20px 20px}
.odc--flottant a.odc__btn{flex:1 1 auto}

/* ---------- popup ---------- */
.odc-overlay{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:16px;background:rgba(6,20,15,.64);animation:odc-fade .25s ease-out}
.odc--popup{position:relative;width:100%;max-width:780px;max-height:calc(100vh - 32px);overflow:auto;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.4);animation:odc-pop .32s cubic-bezier(.2,.8,.3,1)}
.odc--popup .odc__inner{display:grid;grid-template-columns:1fr 1.15fr}
.odc--popup:not(.odc--has-media) .odc__inner{grid-template-columns:1fr}
.odc--popup .odc__media{position:relative;min-height:340px}
.odc--popup img.odc__img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.odc--popup .odc__media .odc__badge{position:absolute;top:30px;right:-28px;z-index:2;width:80px;height:80px;font-size:19px}
.odc--popup .odc__main{display:flex;flex-direction:column;justify-content:center;padding:40px 36px 34px 48px}
.odc--popup:not(.odc--has-media) .odc__main{padding:40px 36px 34px}
.odc--popup .odc__body>.odc__badge{float:right;margin:0 24px 10px 16px;width:80px;height:80px;font-size:19px}
.odc--popup p.odc__title{font-size:27px;line-height:1.2}
.odc--popup .odc__text{font-size:15px}
.odc--popup .odc__price{font-size:34px}
.odc--popup .odc__actions{margin-top:24px}
html.odc-lock,html.odc-lock body{overflow:hidden}

/* ---------- encart ---------- */
.odc--encart{position:relative;margin:32px 0;border-radius:16px;overflow:hidden;clear:both}
.odc--encart .odc__inner{display:grid;grid-template-columns:230px 1fr}
.odc--encart:not(.odc--has-media) .odc__inner{grid-template-columns:1fr}
.odc--encart .odc__media{position:relative;min-height:190px}
.odc--encart img.odc__img{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;object-fit:cover}
.odc--encart .odc__media .odc__badge{position:absolute;top:22px;right:-26px;z-index:2}
.odc--encart .odc__main{display:flex;align-items:center;flex-wrap:wrap;gap:18px 28px;padding:26px 30px 26px 46px}
.odc--encart:not(.odc--has-media) .odc__main{padding:26px 30px}
.odc--encart .odc__body{flex:1 1 280px}
.odc--encart .odc__body>.odc__badge{float:right;margin:0 0 8px 16px}
.odc--encart p.odc__title{font-size:22px}

/* ---------- mobile ---------- */
@media (max-width:767px){
	.odc--dev-desktop{display:none!important}
	.odc--bandeau_haut,.odc--bandeau_bas{padding:10px 42px 12px 12px}
	.odc--bandeau_haut .odc__main,.odc--bandeau_bas .odc__main{flex-wrap:wrap;gap:10px 12px}
	.odc--bandeau_haut .odc__badge,.odc--bandeau_bas .odc__badge{width:44px;height:44px;font-size:12px}
	.odc--bandeau_haut .odc__body,.odc--bandeau_bas .odc__body{flex:1 1 calc(100% - 60px);gap:2px 12px}
	.odc--bandeau_haut .odc__text,.odc--bandeau_bas .odc__text{display:none}
	.odc--bandeau_haut p.odc__title,.odc--bandeau_bas p.odc__title{font-size:15px}
	.odc--bandeau_haut .odc__price,.odc--bandeau_bas .odc__price{font-size:19px}
	.odc--bandeau_haut .odc__actions,.odc--bandeau_bas .odc__actions{width:100%}
	.odc--bandeau_haut a.odc__btn,.odc--bandeau_bas a.odc__btn{flex:1;min-height:42px;padding:8px 14px}
	.odc--bandeau_haut .odc__close,.odc--bandeau_bas .odc__close{top:8px;right:4px;transform:none}

	.odc--flottant{right:12px;left:12px;bottom:12px;width:auto;max-width:none}
	.odc--flottant img.odc__img{height:120px}

	.odc--popup .odc__inner,.odc--encart .odc__inner{grid-template-columns:1fr}
	.odc--popup .odc__media{min-height:180px}
	.odc--encart .odc__media{min-height:160px}
	.odc--popup .odc__media .odc__badge,.odc--encart .odc__media .odc__badge{top:auto;right:18px;bottom:-30px;width:68px;height:68px;font-size:16px}
	.odc--popup .odc__main,.odc--popup:not(.odc--has-media) .odc__main{padding:30px 20px 20px}
	.odc--popup.odc--has-media .odc__main,.odc--encart.odc--has-media .odc__main{padding-top:42px}
	.odc--encart .odc__main,.odc--encart:not(.odc--has-media) .odc__main{padding:22px 20px 20px}
	.odc--popup .odc__body>.odc__badge{width:64px;height:64px;font-size:15px;margin-right:6px}
	.odc--popup p.odc__title{font-size:22px}
	.odc--popup .odc__price{font-size:28px}
	.odc--popup .odc__actions,.odc--encart .odc__actions{width:100%}
	.odc--popup a.odc__btn,.odc--encart a.odc__btn{flex:1 1 100%}
}
@media (min-width:768px){
	.odc--dev-mobile{display:none!important}
}

/* ---------- image entière à côté du texte ---------- */
.odc--img-complete .odc__media{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--odc-fg) 6%,var(--odc-bg))}
.odc--popup.odc--img-complete .odc__media,
.odc--encart.odc--img-complete .odc__media{min-height:0}
.odc--popup.odc--img-complete img.odc__img,
.odc--encart.odc--img-complete img.odc__img,
.odc--flottant.odc--img-complete img.odc__img{position:static;inset:auto;width:100%;height:auto;object-fit:contain}
.odc--popup.odc--img-complete img.odc__img{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}
.odc--flottant.odc--img-complete img.odc__img{max-height:45vh}

/* ---------- flyer seul ---------- */
.odc.odc--flyer{background:transparent}
.odc .odc__flyer{display:block;line-height:0;text-decoration:none}
.odc--flyer img.odc__img{position:static;inset:auto;display:block;margin:0;object-fit:contain;border-radius:14px}
.odc.odc--flyer .odc__close{top:-12px;right:-12px;transform:none;background:#fff;color:#111;box-shadow:0 4px 14px rgba(0,0,0,.3)}

.odc--popup.odc--flyer{width:auto;max-width:none;max-height:none;overflow:visible;border-radius:0;box-shadow:none}
.odc--popup.odc--flyer img.odc__img{
	width:auto;height:auto;
	max-width:min(560px,calc(100vw - 40px));
	max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);
	box-shadow:0 30px 80px rgba(0,0,0,.45)
}

.odc--encart.odc--flyer{overflow:visible;border-radius:0}
.odc--encart.odc--flyer .odc__flyer{width:100%;max-width:560px;margin:0 auto}
.odc--encart.odc--flyer img.odc__img{width:100%;height:auto;max-width:100%}

.odc--flottant.odc--flyer{width:auto;max-width:none;overflow:visible;border-radius:0;box-shadow:none}
.odc--flottant.odc--flyer img.odc__img{
	width:auto;height:auto;max-width:280px;
	max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);
	box-shadow:0 20px 50px rgba(0,0,0,.35)
}
.odc.odc--flottant.odc--flyer .odc__close{width:30px;height:30px;top:-10px;right:-10px}

@media (max-width:767px){
	.odc--popup.odc--img-complete img.odc__img{max-height:45vh}
	.odc--encart.odc--img-complete img.odc__img{max-height:65vh}
	.odc.odc--popup.odc--flyer .odc__close{right:-6px}
	.odc--flottant.odc--flyer{left:auto;right:12px;width:auto}
	.odc--flottant.odc--flyer img.odc__img{max-width:58vw;max-height:55vh}
}

/* ---------- motion ---------- */
@keyframes odc-up{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}
@keyframes odc-fade{from{opacity:0}to{opacity:1}}
@keyframes odc-pop{from{transform:translateY(14px) scale(.97);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){
	.odc,.odc-overlay,.odc *{animation:none!important;transition:none!important}
}
