/* DigiChef • fêtes de fin d'année 2026 — modal responsive, isolé */
html.dc-fete--locked {overflow:hidden!important;}
dialog.dc-fete {
  box-sizing:border-box!important;
  position:fixed!important;
  inset:0!important;
  margin:auto!important;
  padding:0!important;
  width:min(910px,calc(100vw - 40px))!important;
  max-width:min(910px,calc(100vw - 40px))!important;
  height:min(655px,calc(100dvh - 42px))!important;
  max-height:calc(100dvh - 42px)!important;
  border:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:var(--dc-surface,#fffaf6)!important;
  color:var(--dc-ink,#1b2925)!important;
  box-shadow:0 40px 110px rgba(5,10,14,.42)!important;
  text-align:left!important;
  font-family:var(--dc-sans,Arial,sans-serif)!important;
  font-size:14px!important;
  line-height:1.5!important;
  animation:dc-fete-in .27s ease both;
}
dialog.dc-fete::backdrop {background:rgba(12,15,18,.7);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);}
.dc-fete *,.dc-fete *::before,.dc-fete *::after{box-sizing:border-box;}
.dc-fete__frame{width:100%;height:100%;display:grid;grid-template-columns:39% minmax(0,1fr);}
.dc-fete__visual{position:relative;min-width:0;background:#17252d;overflow:hidden;}
.dc-fete__image{display:block!important;position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important;}
.dc-fete__visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,0) 30%,rgba(0,0,0,.1) 55%,rgba(0,0,0,.76));}
.dc-fete__visual-tag{position:absolute;z-index:1;top:25px;left:25px;color:#fff;border:1px solid rgba(255,255,255,.48);background:rgba(16,17,18,.24);padding:8px 12px;border-radius:40px;font:600 10px/1.2 var(--dc-sans,Arial,sans-serif);letter-spacing:.14em;}
.dc-fete__visual-copy{position:absolute;z-index:1;bottom:37px;left:30px;right:24px;color:white;}
.dc-fete__visual-overline{display:block;margin-bottom:11px;color:rgba(255,255,255,.83);font-size:12px;letter-spacing:.04em;}
.dc-fete__visual-brand{margin:0!important;max-width:13ch;color:#fff!important;font-family:var(--dc-serif,Georgia,serif)!important;font-weight:500!important;font-size:clamp(35px,3vw,44px)!important;line-height:1.05!important;letter-spacing:-.02em!important;}
.dc-fete__panel{display:flex;flex-direction:column;position:relative;min-width:0;min-height:0;background:var(--dc-surface,#fffaf6);}
.dc-fete__close{position:absolute!important;right:19px;top:18px;z-index:4;display:grid!important;place-items:center!important;width:39px!important;height:39px!important;padding:0!important;border:1px solid rgba(50,50,50,.14)!important;border-radius:50%!important;background:rgba(255,255,255,.92)!important;color:var(--dc-ink)!important;font:400 27px/1 Arial,sans-serif!important;cursor:pointer!important;transition:transform .18s,background .18s!important;}
.dc-fete__close:hover{transform:rotate(90deg)!important;background:#fff!important;}
.dc-fete__close:focus-visible,.dc-fete__tab:focus-visible,.dc-fete__service:focus-visible,.dc-fete__cta:focus-visible,.dc-fete__menu-summary:focus-visible{outline:3px solid var(--dc-accent)!important;outline-offset:3px!important;}
.dc-fete__scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:38px 38px 22px;scrollbar-width:thin;}
.dc-fete__eyebrow{margin:0 55px 12px 0!important;color:var(--dc-accent)!important;font:700 10px/1.3 var(--dc-sans,Arial,sans-serif)!important;letter-spacing:.18em!important;}
.dc-fete__title{margin:0 42px 6px 0!important;padding:0!important;font-family:var(--dc-serif,Georgia,serif)!important;font-size:clamp(29px,3vw,37px)!important;font-weight:500!important;line-height:1.12!important;letter-spacing:-.025em!important;text-transform:none!important;color:var(--dc-ink)!important;max-width:none!important;}
.dc-fete__date{margin:0 0 20px!important;font:500 12px/1.6 var(--dc-sans,Arial,sans-serif)!important;color:#68665f!important;}
.dc-fete__tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;margin:0 0 20px;border-radius:12px;background:#f1ede6;}
.dc-fete__tab{display:flex!important;align-items:center!important;justify-content:center!important;min-height:40px!important;padding:8px 10px!important;margin:0!important;max-width:none!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#6d6b66!important;font:650 12px/1.2 var(--dc-sans,Arial,sans-serif)!important;cursor:pointer!important;text-transform:none!important;letter-spacing:0!important;box-shadow:none!important;}
.dc-fete__tab.is-active{background:#fff!important;color:var(--dc-accent)!important;box-shadow:0 2px 10px rgba(25,24,22,.08)!important;}
.dc-fete__offer{padding:20px 22px 17px;border:1px solid #ebe3d7;border-radius:16px;background:#fff;}
.dc-fete__offer-label{margin:0 0 7px!important;font:700 10px/1.4 var(--dc-sans,Arial,sans-serif)!important;letter-spacing:.15em;color:#858079!important;}
.dc-fete__price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:9px;}
.dc-fete__price{font:650 34px/1 var(--dc-serif,Georgia,serif);color:var(--dc-accent);letter-spacing:-.03em;}
.dc-fete__per{font:500 11px/1.3 var(--dc-sans,Arial,sans-serif);color:#706b64;}
.dc-fete__intro{margin:12px 0 14px!important;color:#4d4a46!important;font:400 13px/1.65 var(--dc-sans,Arial,sans-serif)!important;max-width:none!important;}
.dc-fete__perks{display:flex;flex-wrap:wrap;gap:7px;}
.dc-fete__perk{border:1px solid #e9e3d9;border-radius:30px;padding:5px 10px;background:#faf7f2;color:#5a554f;font:500 10px/1.3 var(--dc-sans,Arial,sans-serif);}
.dc-fete__section-label{margin:19px 0 10px!important;color:#786e60!important;font:700 10px/1.4 var(--dc-sans,Arial,sans-serif)!important;letter-spacing:.12em!important;}
.dc-fete__services{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 10px;}
.dc-fete__service{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:4px;padding:13px 14px!important;min-height:95px!important;border:1px solid #e5ddd0!important;border-radius:12px!important;background:#fff!important;text-align:left!important;color:var(--dc-ink)!important;cursor:pointer!important;max-width:none!important;margin:0!important;letter-spacing:0!important;box-shadow:none!important;text-transform:none!important;}
.dc-fete__service.is-selected{border-color:var(--dc-accent)!important;box-shadow:inset 0 0 0 1px var(--dc-accent)!important;background:#fcfaf6!important;}
.dc-fete__service-label{font:600 11px/1.3 var(--dc-sans,Arial,sans-serif);}
.dc-fete__service-price{font:700 19px/1.2 var(--dc-serif,Georgia,serif);}
.dc-fete__service-detail{font:400 10px/1.4 var(--dc-sans,Arial,sans-serif);color:#716b61;}
.dc-fete__menu-details{margin:16px 0 0;border:1px solid #e7e0d6;border-radius:13px;overflow:hidden;background:#fff;}
.dc-fete__menu-summary{list-style:none;display:grid;grid-template-columns:1fr auto;position:relative;column-gap:8px;align-items:center;min-height:61px;cursor:pointer;padding:12px 44px 12px 16px;}
.dc-fete__menu-summary::-webkit-details-marker{display:none;}
.dc-fete__menu-summary-title{display:block;font:650 13px/1.3 var(--dc-sans,Arial,sans-serif);color:var(--dc-ink);}
.dc-fete__menu-summary-hint{display:block;grid-column:1;margin-top:3px;font:400 11px/1.3 var(--dc-sans,Arial,sans-serif);color:#80796e;}
.dc-fete__chevron{position:absolute;right:20px;top:18px;font:400 24px/1 var(--dc-sans,Arial,sans-serif);color:var(--dc-accent);transition:transform .2s;}
.dc-fete__menu-details[open] .dc-fete__chevron{transform:rotate(180deg);}
.dc-fete__menu-categories{padding:2px 17px 13px;border-top:1px solid #eee8e0;}
.dc-fete__menu-group{padding:13px 0 4px;border-bottom:1px solid #f0ece5;}
.dc-fete__menu-group:last-child{border-bottom:0;}
.dc-fete__menu-heading{margin:0 0 8px!important;font:600 17px/1.3 var(--dc-serif,Georgia,serif)!important;text-transform:none!important;letter-spacing:0!important;color:var(--dc-accent)!important;}
.dc-fete__menu-list{list-style:none!important;margin:0 0 8px!important;padding:0!important;display:grid;gap:7px;}
.dc-fete__menu-item{margin:0!important;padding:0 0 0 15px!important;position:relative;font:400 12px/1.55 var(--dc-sans,Arial,sans-serif)!important;color:#4f4b44!important;list-style:none!important;}
.dc-fete__menu-item::before{position:absolute;top:8px;left:0;width:4px;height:4px;border-radius:50%;background:var(--dc-accent);content:"";}
.dc-fete__footer{flex:none;display:flex;flex-direction:column;align-items:stretch;padding:17px 38px 19px;border-top:1px solid #ebe4d9;background:var(--dc-surface);}
.dc-fete__cta{display:flex!important;align-items:center!important;justify-content:center!important;gap:13px!important;width:100%!important;max-width:none!important;min-height:49px!important;margin:0!important;padding:12px 18px!important;border:1px solid var(--dc-cta-bg)!important;border-radius:10px!important;background:var(--dc-cta-bg)!important;color:var(--dc-cta-color)!important;font:700 13px/1.3 var(--dc-sans,Arial,sans-serif)!important;text-decoration:none!important;text-align:center!important;letter-spacing:0!important;box-shadow:0 6px 17px rgba(19,24,22,.14)!important;transition:transform .18s,box-shadow .18s,filter .18s!important;cursor:pointer!important;}

.dc-fete__cta:hover{transform:translateY(-2px)!important;filter:brightness(1.08);box-shadow:0 11px 26px rgba(19,24,22,.19)!important;}
.dc-fete__note{margin:9px 0 0!important;color:#898075!important;font:400 10px/1.3 var(--dc-sans,Arial,sans-serif)!important;text-align:center!important;max-width:none!important;}
@keyframes dc-fete-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:720px){
 dialog.dc-fete{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;height:calc(100dvh - 24px)!important;max-height:calc(100dvh - 24px)!important;border-radius:17px!important;}
 .dc-fete__frame{display:flex;flex-direction:column;}
 .dc-fete__visual{flex:0 0 159px;min-height:159px;}
 .dc-fete__visual-tag{top:15px;left:17px;font-size:9px;padding:7px 10px;}
 .dc-fete__visual-copy{left:19px;bottom:17px;right:15px;}
 .dc-fete__visual-overline{font-size:10px;margin-bottom:3px;}
 .dc-fete__visual-brand{font-size:25px!important;max-width:none;}
 .dc-fete__panel{flex:1;min-height:0;}
 .dc-fete__scroll{padding:22px 22px 15px;}
 .dc-fete__close{top:-142px;right:13px;border-color:transparent!important;}
 .dc-fete__title{font-size:clamp(27px,6.2vw,33px)!important;margin-right:0!important;}
 .dc-fete__date{margin-bottom:16px!important;}
 .dc-fete__tabs{margin-bottom:14px;}
 .dc-fete__offer{padding:15px 17px;}
 .dc-fete__price{font-size:30px;}
 .dc-fete__footer{padding:12px 22px 15px;}
 .dc-fete__services{gap:7px;}
 .dc-fete__service{padding:11px!important;}
}
@media(max-width:385px){
 .dc-fete__visual{flex-basis:132px;min-height:132px;}
 .dc-fete__close{top:-115px;}
 .dc-fete__scroll{padding:18px 15px 12px;}
 .dc-fete__footer{padding:11px 15px 13px;}
 .dc-fete__tab{font-size:11px!important;}
 .dc-fete__service-detail{font-size:9px;}
}
@media (prefers-reduced-motion: reduce){
 dialog.dc-fete{animation:none!important;}
 .dc-fete__close,.dc-fete__cta,.dc-fete__chevron{transition:none!important;}
}
