/* Diakoneo Packs */
.dkp-grille{--dkp-cols:3;display:grid;grid-template-columns:repeat(var(--dkp-cols),minmax(0,1fr));gap:28px;align-items:stretch;margin:24px 0;padding:14px 0}
.dkp-carte{--dkp-c1:#f05a2b;--dkp-c2:#4fbdeb;--dkp-encre:#14243a;position:relative;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:#fff;color:var(--dkp-encre);box-shadow:0 22px 44px -26px rgba(20,49,79,.45),0 0 0 1px rgba(20,49,79,.06);transition:transform .25s,box-shadow .25s;font-family:inherit;text-align:left}
.dkp-carte:hover{transform:translateY(-6px);box-shadow:0 30px 54px -26px rgba(20,49,79,.55),0 0 0 1px rgba(20,49,79,.06)}
.dkp-carte.dkp-avant{transform:scale(1.04);z-index:1}
.dkp-carte.dkp-avant:hover{transform:scale(1.04) translateY(-6px)}
.dkp-carte *{box-sizing:border-box}
.dkp-tete{position:relative;padding:34px 24px 18px;text-align:center}
.dkp-nom{margin:0;font-size:24px;line-height:1.2;font-weight:700;color:inherit}
.dkp-sous{margin:6px 0 0;font-size:14px;opacity:.75}
.dkp-rond{width:136px;height:136px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;text-align:center;position:relative}
.dkp-prix{display:flex;flex-direction:column;align-items:center;line-height:1.1}
.dkp-prix strong{font-size:24px;font-weight:700}
.dkp-prix small{font-size:14px;font-weight:600;opacity:.9}
.dkp-prix del{font-size:14px;opacity:.7}
.dkp-liste{list-style:none!important;margin:0!important;padding:4px 26px 8px!important;display:grid;gap:11px;flex:1}
.dkp-liste li{position:relative;margin:0!important;padding:0 0 0 28px!important;font-size:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;line-height:1.35;background:none!important;list-style:none!important}
.dkp-liste li::before{display:none!important}
.dkp-puce{position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:50%;border:2px solid var(--dkp-c1)}
.dkp-puce::after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid var(--dkp-c1);border-width:0 2px 2px 0;transform:rotate(45deg)}
.dkp-non{opacity:.55;text-decoration:line-through}
.dkp-non .dkp-puce{border-color:currentColor;opacity:.6}
.dkp-non .dkp-puce::after{left:6px;top:5px;width:2px;height:2px;border:0;background:currentColor;border-radius:50%;transform:none}
.dkp-pied{padding:22px 24px 28px;text-align:center}
.dkp-bouton{display:inline-flex;align-items:center;justify-content:center;min-width:170px;padding:13px 26px;border:0;border-radius:12px;font:inherit;font-size:15px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;color:#fff!important;text-decoration:none!important;background:linear-gradient(135deg,var(--dkp-c1),color-mix(in srgb,var(--dkp-c1) 55%,#ffd36b));box-shadow:0 12px 24px -12px var(--dkp-c1);transition:transform .15s,box-shadow .15s,filter .15s}
.dkp-bouton:hover,.dkp-bouton:focus-visible{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 16px 28px -12px var(--dkp-c1)}
.dkp-bouton:focus-visible{outline:3px solid var(--dkp-c2);outline-offset:3px}
.dkp-bandeau{position:absolute;top:16px;right:-38px;z-index:2;width:140px;padding:5px 0;text-align:center;transform:rotate(45deg);background:var(--dkp-c2);color:#fff;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 6px 14px -6px rgba(0,0,0,.4)}

/* Style 1 : dégradé */
.dkp-degrade{color:#fff;background:linear-gradient(160deg,color-mix(in srgb,var(--dkp-c2) 75%,#7b4fd6),var(--dkp-c2) 55%,color-mix(in srgb,var(--dkp-c2) 70%,#14314f))}
.dkp-degrade .dkp-rond{background:linear-gradient(145deg,color-mix(in srgb,var(--dkp-c1) 60%,#ffd36b),var(--dkp-c1));box-shadow:0 0 0 10px rgba(255,255,255,.18),0 18px 30px -12px rgba(0,0,0,.35);color:#fff}
.dkp-degrade .dkp-rond::before,.dkp-degrade .dkp-rond::after{content:"";position:absolute;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#c9a7ff,#5b2fa6)}
.dkp-degrade .dkp-rond::before{left:-30px}
.dkp-degrade .dkp-rond::after{right:-30px}
.dkp-degrade .dkp-nom{color:color-mix(in srgb,var(--dkp-c1) 70%,#ffd36b)}
.dkp-degrade .dkp-puce{border-color:#fff}
.dkp-degrade .dkp-puce::after{border-color:#fff}
.dkp-degrade .dkp-non .dkp-puce::after{background:#fff}
.dkp-degrade .dkp-tete{order:0}

/* Style 2 : arc */
.dkp-arc{background:#fff}
.dkp-arc::before{content:"";position:absolute;left:-12%;right:-12%;top:210px;bottom:-40px;border-radius:50% 50% 0 0/120px 120px 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--dkp-c2) 22%,#fff),color-mix(in srgb,var(--dkp-c2) 8%,#fff));z-index:0}
.dkp-arc>*:not(.dkp-bandeau){position:relative;z-index:1}
.dkp-arc .dkp-tete{display:flex;flex-direction:column-reverse}
.dkp-arc .dkp-nom{color:var(--dkp-c2);font-size:26px;margin-bottom:16px}
.dkp-arc .dkp-rond{margin-bottom:0;background:color-mix(in srgb,var(--dkp-c2) 12%,#fff);color:var(--dkp-c2);box-shadow:0 0 0 2px color-mix(in srgb,var(--dkp-c2) 35%,#fff),0 0 0 14px color-mix(in srgb,var(--dkp-c2) 8%,transparent),0 0 0 16px color-mix(in srgb,var(--dkp-c2) 25%,#fff)}
.dkp-arc .dkp-prix strong{color:var(--dkp-encre)}
.dkp-arc .dkp-prix del{color:var(--dkp-encre)}
.dkp-arc .dkp-sous{order:-1;margin:-8px 0 16px}
.dkp-arc .dkp-liste{color:color-mix(in srgb,var(--dkp-c2) 75%,#14243a)}
.dkp-arc .dkp-puce{border:0;width:18px;height:18px}
.dkp-arc .dkp-oui .dkp-puce::after{left:5px;top:0;border-color:var(--dkp-c2);width:6px;height:11px;border-width:0 3px 3px 0}
.dkp-arc .dkp-bouton{border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--dkp-c2) 55%,#fff),var(--dkp-c2));box-shadow:0 0 0 4px color-mix(in srgb,var(--dkp-c2) 18%,#fff),0 12px 22px -12px var(--dkp-c2)}

/* Style 3 : vague */
.dkp-vague .dkp-tete{display:flex;flex-direction:column;color:#fff;padding-bottom:0;background:linear-gradient(120deg,color-mix(in srgb,var(--dkp-c1) 70%,#ff6fb5),color-mix(in srgb,var(--dkp-c1) 60%,#ffd36b))}
.dkp-vague .dkp-nom{order:1;text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px}
.dkp-vague .dkp-sous{order:2;margin:-8px 0 14px}
.dkp-vague .dkp-rond{order:3;margin:0 auto;z-index:2;color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--dkp-c1) 70%,#ff6fb5),color-mix(in srgb,var(--dkp-c1) 50%,#ffd36b));box-shadow:0 0 0 7px #fff,0 0 0 9px #b9b9c4,0 18px 30px -14px rgba(0,0,0,.4)}
.dkp-vague .dkp-tete::after{content:"";order:4;display:block;height:96px;margin:-78px -24px 0;background:#fff;-webkit-mask:radial-gradient(130% 100px at 35% 100%,#000 98%,transparent 100%) bottom/100% 100% no-repeat;mask:radial-gradient(130% 100px at 35% 100%,#000 98%,transparent 100%) bottom/100% 100% no-repeat}
.dkp-vague .dkp-liste{padding-top:20px!important}
.dkp-vague .dkp-puce{border-color:color-mix(in srgb,var(--dkp-c1) 70%,#ff6fb5)}
.dkp-vague .dkp-puce::after{border-color:color-mix(in srgb,var(--dkp-c1) 70%,#ff6fb5)}
.dkp-vague .dkp-bouton{border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--dkp-c1) 70%,#ff6fb5),color-mix(in srgb,var(--dkp-c1) 45%,#ffd36b))}

/* Fenêtre */
.dkp-fenetre{width:min(640px,calc(100vw - 24px));max-height:calc(100vh - 32px);padding:0;border:0;border-radius:20px;background:#fff;color:#14243a;box-shadow:0 30px 80px -20px rgba(10,25,45,.55);overflow:hidden}
.dkp-fenetre[open]{display:flex;flex-direction:column;animation:dkp-entre .25s ease-out}
.dkp-fenetre::backdrop{background:rgba(10,25,45,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.dkp-fenetre-tete{display:flex;align-items:center;gap:12px;padding:18px 22px;color:#fff;background:linear-gradient(120deg,var(--dkp-c1),color-mix(in srgb,var(--dkp-c1) 55%,var(--dkp-c2)))}
.dkp-fenetre-tete h2{flex:1;margin:0;font-size:20px;line-height:1.25;color:#fff}
.dkp-fermer{flex:0 0 auto;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.dkp-fermer:hover,.dkp-fermer:focus-visible{background:rgba(255,255,255,.35)}
.dkp-fenetre-corps{padding:22px;overflow:auto}
.dkp-fenetre-corps .wpcf7 input[type=text],.dkp-fenetre-corps .wpcf7 input[type=email],.dkp-fenetre-corps .wpcf7 input[type=tel],.dkp-fenetre-corps .wpcf7 textarea,.dkp-fenetre-corps .wpcf7 select{width:100%;max-width:100%}
html.dkp-ouvert{overflow:hidden}
@keyframes dkp-entre{from{opacity:0;transform:translateY(16px) scale(.98)}}

@media (max-width:980px){.dkp-grille{grid-template-columns:repeat(min(var(--dkp-cols),2),minmax(0,1fr))}}
@media (max-width:640px){.dkp-grille{grid-template-columns:1fr;gap:22px}.dkp-carte.dkp-avant{transform:none}}
@media (prefers-reduced-motion:reduce){.dkp-carte,.dkp-bouton{transition:none}.dkp-fenetre[open]{animation:none}}
