/* ==========================================================================
   Pages : têtes de page, avis, FAQ, engagements, contact, Forum et articles,
   test « Trouver mon produit », suivi de commande, centre d'aide, défi 7 nuits,
   glossaire. Contenus générés par contenus/_generer.py (classes posées sur les blocs).
   ========================================================================== */

/* ---------- Tête de page ---------- */
.page-tete{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:120px var(--gouttiere) 80px}
.page-tete--centre{text-align:center}
.page-tete--centre .page-chapo{margin-inline:auto}
.page-titre{margin-bottom:28px;font-size:clamp(46px,7.2vw,108px);font-weight:400;line-height:1.02;letter-spacing:-.01em}
.page-chapo{max-width:560px;font-size:18px;color:var(--ambiance-douce)}

/* ---------- Avis (accueil et page Avis clients) : résumé calculé par interface.js ---------- */
.avis{padding:40px 0 160px}
.avis--page{padding-top:40px}
.avis__plein{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere);display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start}
.avis__resume{position:sticky;top:110px;padding:32px;border-radius:var(--rayon-grand);background:var(--nuit);color:var(--sur-nuit);display:flex;flex-direction:column;gap:12px}
.avis__note{font:400 22px/1 var(--police-texte);color:var(--sur-nuit-sourdine)}
.avis__note strong{font:400 81px/.85 var(--police-titres);color:var(--sur-nuit);margin-right:8px}
.avis__etoiles{--note:0;width:115px;height:20px;background:linear-gradient(90deg,var(--rose-vif) calc(var(--note) / 5 * 100%),var(--trait-nuit) 0);
  -webkit-mask:var(--i-etoiles) 0 0/100% 100%;mask:var(--i-etoiles) 0 0/100% 100%}
.avis__nombre{font-size:15px;color:var(--sur-nuit-sourdine)}
.avis__repartition{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}
.avis__repartition li{display:grid;grid-template-columns:14px 1fr 22px;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--sur-nuit-sourdine)}
.avis__barre{height:6px;border-radius:3px;background:var(--trait-nuit);overflow:hidden}
.avis__barre span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--lilas),var(--rose));transform-origin:left}
/* bloc « Tous les avis » de WooCommerce, mis en cartes */
.avis__liste .wc-block-review-list{columns:2 280px;column-gap:20px;margin:0;padding:0;list-style:none}
.avis__liste .wc-block-review-list-item__item{break-inside:avoid;margin:0 0 20px;padding:26px;border-radius:var(--rayon-grand);background:var(--surface);color:var(--texte);
  display:flex;flex-direction:column;gap:12px;list-style:none}
.avis__liste .wc-block-review-list-item__rating{order:1}
.avis__liste .wc-block-review-list-item__text{font:400 22px/1.25 var(--police-titres);order:2}
.avis__liste .wc-block-review-list-item__text p{margin:0}
.avis__liste .wc-block-review-list-item__info{display:flex;flex-direction:column;gap:6px;order:3;font-size:14px}
.avis__liste .wc-block-review-list-item__product a{color:var(--sourdine);text-decoration:none}
.avis__liste .wc-block-review-list-item__author{font-weight:600}
.avis__liste .wc-block-review-list-item__published-date{color:var(--sourdine)}
.avis__liste :is(.wc-block-review-list-item__rating__stars,.wc-block-components-review-list-item__rating__stars) span::before{color:var(--rose-vif)}
.avis__liste .wp-block-button__link,.avis__liste .wc-block-load-more button{background:var(--surface);color:var(--texte)}
.avis__liste .wc-block-load-more{display:flex;justify-content:center;margin-top:32px}
.avis__liste .wc-block-load-more .wp-element-button{min-height:52px;padding:0 30px;border-radius:999px;background:#fff;color:var(--texte);border:1.5px solid var(--nuit);font-weight:600;
  transition:background-color .3s,color .3s,transform .3s var(--courbe)}
@media (hover:hover){.avis__liste .wc-block-load-more .wp-element-button:hover{background:var(--nuit);color:#fff;transform:translateY(-2px)}}
.avis__tous{justify-content:center;margin-top:36px}
.avis:has(.avis__tous) .wc-block-load-more{display:none}
.avis__tous .wp-block-button__link{gap:12px;min-height:56px;padding:0 30px;background:var(--nuit);color:#fff;box-shadow:0 18px 40px -20px color-mix(in srgb,var(--nuit) 70%,transparent)}
.avis__tous .wp-block-button__link::after{content:"";width:18px;height:18px;background:currentColor;transition:transform .35s var(--courbe);
  -webkit-mask:var(--i-fleche) center/contain no-repeat;mask:var(--i-fleche) center/contain no-repeat}
@media (hover:hover){.avis__tous .wp-block-button__link:hover{background:var(--nuit-2);color:#fff}}
@media (hover:hover){.avis__tous .wp-block-button__link:hover::after{transform:translateX(4px)}}
/* pas encore d'avis */
.avis__vide{display:none;max-width:720px;margin:0 auto;padding:56px 40px;border-radius:var(--rayon-grand);text-align:center;background:var(--surface);
  border:1px dashed var(--trait);flex-direction:column;align-items:center;gap:16px}
.avis__vide::before{content:"";width:138px;height:24px;background:var(--trait);-webkit-mask:var(--i-etoiles) 0 0/100% 100%;mask:var(--i-etoiles) 0 0/100% 100%}
.avis__vide-titre{font:400 32px/1 var(--police-titres)}
.avis__vide-texte{max-width:460px;color:var(--sourdine)}
.avis.est-vide .avis__plein,.avis.est-vide .avis__tous{display:none}
.avis.est-vide .avis__vide{display:flex}
/* donner son avis : un produit par carte */
.avis-donner{padding:120px 0 140px}
.avis-donner__grille{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding-inline:var(--gouttiere);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.avis-produit{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 22px 26px;border-radius:var(--rayon-grand);background:#fff;text-align:center;
  border:1px solid color-mix(in srgb,var(--trait) 70%,transparent);box-shadow:0 18px 40px -26px color-mix(in srgb,var(--nuit) 35%,transparent);transition:transform .4s var(--courbe)}
@media (hover:hover){.avis-produit:hover{transform:translateY(-3px)}}
.avis-produit__img{margin:0;width:100%;aspect-ratio:4/3;display:grid;place-items:center;border-radius:18px;background:radial-gradient(circle at 50% 40%,#fff,var(--surface-rose) 85%)}
.avis-produit__img img{width:72%;height:72%;object-fit:contain}
.avis-produit__nom{margin:4px 0 0;font:400 24px/1.15 var(--police-titres)}
.avis-produit .boutons{justify-content:center}

/* ---------- FAQ (accueil, contact) : l'arche reste pleine pendant le parallaxe ---------- */
.faq{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere) 140px;display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start}
.faq__titre{margin-bottom:20px;font-size:clamp(32px,4vw,60px);font-weight:400;line-height:.98;letter-spacing:-.01em}
.faq__texte{max-width:340px;color:var(--ambiance-encre);opacity:.9;font-size:16px;line-height:1.6}
.faq__texte a{color:var(--ambiance-encre);text-decoration-color:var(--rose);text-underline-offset:4px;font-weight:600}
.faq__photo{margin-top:56px!important;width:72%;aspect-ratio:3/4;overflow:hidden;border-radius:999px 999px var(--rayon-grand) var(--rayon-grand)}
.faq__photo img{display:block;width:100%;height:calc(100% + 90px)!important;margin-top:-45px;object-fit:cover}
.faq__liste{border-top:1px solid var(--ambiance-trait)}
.faq__liste .wp-block-details{border-bottom:1px solid var(--ambiance-trait);margin:0}
.faq__liste summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;
  font:400 30px/1.15 var(--police-titres);transition:padding .4s var(--courbe)}
@media (hover:hover){.faq__liste summary:hover{padding-left:10px}}
.faq__liste summary::-webkit-details-marker{display:none}
.faq__liste summary::after{content:"+";flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--surface);color:var(--texte);
  font:300 22px/1 var(--police-texte);transition:transform .4s var(--courbe),background-color .4s}
.faq__liste details[open] summary::after{transform:rotate(45deg);background:var(--rose)}
.faq__liste details p{padding:0 60px 28px 0;color:var(--ambiance-douce);max-width:620px}

/* ---------- Engagements (accueil, contact) ---------- */
.engagements{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere) 140px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.engagement{position:relative;padding:32px;border-radius:var(--rayon-grand);background:var(--surface);color:var(--texte);transition:transform .6s var(--courbe)}
.engagement::before{content:"";display:block;width:34px;height:34px;margin-bottom:28px;background:var(--rose-vif);
  -webkit-mask:var(--i-livraison) center/contain no-repeat;mask:var(--i-livraison) center/contain no-repeat}
.engagement--retours::before{-webkit-mask-image:var(--i-retour);mask-image:var(--i-retour)}
.engagement--paiement::before{-webkit-mask-image:var(--i-cadenas);mask-image:var(--i-cadenas)}
.engagement__titre{font:400 30px/1.05 var(--police-titres);margin-bottom:8px}
.engagement p{color:var(--sourdine);font-size:15px}

/* ---------- Contact (formulaire Contact Form 7 : contenus/formulaire-contact.txt) ---------- */
.contact{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere) 120px;display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start}
.contact__formulaire{padding:40px;border-radius:var(--rayon-grand);background:var(--surface)}
.contact__titre{margin-bottom:28px;font-size:clamp(36px,3.6vw,48px);font-weight:400;line-height:.98;letter-spacing:-.01em}
.contact__infos{display:grid;gap:12px}
.contact-item{padding:24px 28px;border-radius:var(--rayon-grand);background:var(--surface-rose)}
.contact-label{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sourdine);margin-bottom:6px}
.contact-valeur{font:400 24px/1.2 var(--police-titres)}
.contact-valeur a{text-decoration:none}
/* inc/theme.php coupe l'ajout de <p>/<br> de Contact Form 7 */
.formulaire .wpcf7,.formulaire .wpcf7-form{display:grid;gap:18px}
.formulaire .wpcf7-form-control-wrap{display:block}
/* en bloc : sinon le champ garde l'espace sous la ligne de base */
.formulaire .wpcf7-form-control-wrap :is(input,select,textarea){display:block;width:100%}
.formulaire .wpcf7-spinner{display:none}
.champ{display:grid;gap:8px}
.champ span:first-child{font-size:14px;font-weight:500}
.champ-rangee{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.consentement .wpcf7-list-item{margin:0}
.consentement label{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--sourdine)}
.consentement input{accent-color:var(--accent);margin-top:2px}
/* le bouton d'envoi est un <input> : son décor se pose sur l'enveloppe .envoi */
.envoi{position:relative;justify-self:start;margin-top:6px}
.envoi input[type=submit]{min-height:48px;padding:0 26px;border:0;border-radius:var(--rayon-bouton);background:var(--accent);color:var(--sur-accent);font:500 15px/1 var(--police-texte);cursor:pointer}
.envoi:has(input:disabled){opacity:.45}   /* tant que la case de consentement n'est pas cochée */
.envoi input:disabled{cursor:not-allowed}
.wpcf7-not-valid-tip{margin-top:6px;color:var(--alerte);font-size:14px}
.formulaire .wpcf7-not-valid{border-color:var(--alerte)!important}
.wpcf7 form .wpcf7-response-output{margin:0;padding:14px 16px;border:1px solid var(--trait);border-radius:var(--rayon);background:var(--fond);font-size:15px}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output{border-color:var(--alerte)}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--texte)}

/* ---------- Forum : appel, encart du défi, liste des articles ---------- */
.forum-appel{max-width:880px;margin:0 auto 40px;padding:64px 40px;text-align:center;border-radius:var(--rayon-grand);background:var(--nuit);color:var(--sur-nuit);
  display:flex;flex-direction:column;align-items:center;gap:20px}
.forum-appel__titre{font-size:clamp(36px,4vw,56px);font-weight:400;line-height:.98;letter-spacing:-.01em;color:var(--sur-nuit)}
.forum-appel__texte{color:var(--sur-nuit-sourdine)}
.forum-appel__texte a{color:var(--sur-nuit)}
.forum-appel .bouton>.wp-block-button__link{background:var(--rose);color:var(--nuit)}
.forum-outil{display:grid;justify-items:center;gap:6px;max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto 60px;padding:0 var(--gouttiere);text-align:center}
.forum-outil>*{margin-inline:auto}
.forum-outil__titre{margin:0;font:400 clamp(28px,3.4vw,42px)/1.1 var(--police-titres)}
.forum-outil__texte{margin:6px 0 14px;max-width:520px;color:var(--sourdine)}
.forum-articles-section{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere) 120px}
.forum-articles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.forum-articles>li{margin:0}
.forum-articles>li:first-child{grid-column:span 2}
.article-carte{position:relative;height:100%;display:flex;flex-direction:column;border-radius:var(--rayon-grand);overflow:hidden;background:var(--surface);transition:transform .6s var(--courbe),box-shadow .6s var(--courbe)}
@media (hover:hover){.article-carte:hover{transform:translateY(-6px);box-shadow:0 30px 60px color-mix(in srgb,var(--texte) 12%,transparent)}}
.article-carte__image{margin:0;overflow:hidden}
.article-carte__image img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--courbe)}
@media (hover:hover){.article-carte:hover .article-carte__image img{transform:scale(1.04)}}
.article-carte__corps{padding:24px 26px 28px;display:flex;flex-direction:column;gap:10px;flex:1}
.article-carte__date{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sourdine)}
.article-carte__titre{font:400 30px/1.08 var(--police-titres);margin:0}
.forum-articles>li:first-child .article-carte__titre{font-size:clamp(34px,3.4vw,46px)}
.article-carte__titre a{text-decoration:none}
.article-carte__titre a::after{content:"";position:absolute;inset:0}   /* toute la carte est cliquable */
.article-carte__extrait{color:var(--sourdine);font-size:15px}
.article-carte__extrait .wp-block-post-excerpt__more-link{display:inline-flex;margin-top:12px;font-weight:600;color:var(--texte);border-bottom:1px solid currentColor;text-decoration:none}

/* ---------- Article (inc/editorial.php : lecture, sommaire, articles liés) ---------- */
.article-tete{max-width:900px;margin:0 auto;padding:80px var(--gouttiere) 40px;text-align:center}
.article-retour a{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--promo);text-decoration:none}
.article-titre{font-size:clamp(32px,4.3vw,63px);line-height:1;margin:18px 0 18px}
.article-date{color:var(--sourdine);font-size:15px}
.article-image{max-width:calc(1100px + 2 * var(--gouttiere));margin:0 auto 64px;padding:0 var(--gouttiere)}
.article-image img{border-radius:var(--rayon-grand);width:100%;object-fit:cover}
.article-texte{max-width:calc(720px + 2 * var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere);font-size:17px;line-height:1.75}
.article-texte>p{margin:0 0 22px}
.article-texte .article-intertitre{font:400 clamp(30px,3vw,42px)/1.1 var(--police-titres);margin:52px 0 18px}
.article-texte .article-liste{margin:0 0 24px;padding-left:22px}
.article-texte .article-liste li{margin-bottom:10px}
.wp-block-post-content h2[id]{scroll-margin-top:calc(var(--entete-h) + 30px)}
.article-outils{display:grid;gap:14px;margin:0 0 32px}
.article-lecture{margin:0;font-size:14px;font-weight:600;color:var(--sourdine)}
.article-sommaire{padding:20px 24px;border-radius:20px;background:#fff;border:1px solid color-mix(in srgb,var(--trait) 70%,transparent)}
.article-sommaire__titre{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--promo)}
.article-sommaire ol{margin:0;padding-left:20px;display:grid;gap:6px}
.article-sommaire a{color:var(--texte);text-decoration:none;font-weight:600;font-size:15px}
@media (hover:hover){.article-sommaire a:hover{text-decoration:underline;text-decoration-color:var(--rose)}}
/* encart produit dans l'article */
.article-produit{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center;margin:48px calc(-1 * min(120px,8vw));padding:28px;border-radius:var(--rayon-grand);background:var(--nuit);color:var(--sur-nuit)}
.article-produit .surtitre{color:var(--rose)}
.article-produit__accroche{font:400 26px/1.25 var(--police-titres);margin-bottom:22px}
.article-produit .bouton>.wp-block-button__link{background:var(--rose);color:var(--nuit)}
.article-produit__carte .wc-block-product-template{display:block;margin:0;padding:0;list-style:none}
.article-produit__carte .wc-block-product{margin:0}
.article-fin{max-width:900px;margin:96px auto 0;padding:56px var(--gouttiere);text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px;border-top:1px solid var(--trait)}
.article-fin__titre{font-size:clamp(32px,3.6vw,52px)}
.article-fin .boutons{justify-content:center}
.article-lies{margin:56px 0 0;padding-top:30px;border-top:1px solid var(--trait)}
.article-lies__titre{margin:0 0 16px;font:400 28px/1.1 var(--police-titres)}
.article-lies__liste{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.article-lie{display:flex;flex-direction:column;gap:10px;color:var(--texte)!important;text-decoration:none!important;font:400 20px/1.25 var(--police-titres)}
.article-lie img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:18px}

/* ---------- Test « Trouver mon produit » (outils.js) ---------- */
.quiz-section{padding:10px var(--gouttiere) 140px}
.quiz{max-width:760px;margin:0 auto;padding:36px 36px 40px;border-radius:32px;background:#fff;
  border:1px solid color-mix(in srgb,var(--trait) 70%,transparent);box-shadow:0 30px 70px -40px color-mix(in srgb,var(--nuit) 45%,transparent);
  opacity:.001;transform:translateY(10px);transition:opacity .5s var(--courbe),transform .5s var(--courbe)}
.quiz.est-pret{opacity:1;transform:none}
.quiz__sans-js{margin:0;text-align:center}
.quiz__tete{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.quiz__etape{flex:none;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sourdine)}
.quiz__progression{flex:1;height:6px;border-radius:999px;background:var(--surface-rose);overflow:hidden}
.quiz__progression span{display:block;height:100%;border-radius:inherit;background:var(--degrade-promo);transition:width .6s var(--courbe)}
.quiz__question{margin:0 0 24px;font:400 clamp(30px,3.6vw,44px)/1.1 var(--police-titres);color:var(--texte)}
.quiz__choix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.quiz__option{display:flex;align-items:center;gap:14px;min-height:76px;padding:14px 18px;border-radius:var(--rayon-carte);cursor:pointer;text-align:left;font:inherit;color:var(--texte);
  background:var(--fond);border:1.5px solid transparent;transition:transform .3s var(--courbe),border-color .3s,background .3s,box-shadow .3s}
.quiz__option:focus-visible{transform:none;border-color:var(--nuit);background:var(--surface-calme);box-shadow:none;outline:2px solid var(--nuit);outline-offset:3px}
@media (hover:hover){.quiz__option:hover{transform:translateY(-2px);border-color:var(--rose);background:#fff;box-shadow:0 14px 30px -18px color-mix(in srgb,var(--rose-vif) 70%,transparent);outline:none}}
.quiz__option.est-choisi{border-color:var(--nuit);background:#fff}
.quiz__emoji{flex:none;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:24px;background:#fff;box-shadow:0 6px 14px -10px color-mix(in srgb,var(--nuit) 40%,transparent)}
.quiz__libelle{display:flex;flex-direction:column;gap:2px;font-weight:600;font-size:16px}
.quiz__libelle small{font-weight:400;font-size:14px;color:var(--sourdine)}
.quiz__retour,.quiz__recommencer{margin-top:20px;padding:8px 0;border:0;background:none;cursor:pointer;font:600 14px var(--police-texte);color:var(--sourdine);text-decoration:underline;text-underline-offset:4px}
@media (hover:hover){.quiz__retour:hover,.quiz__recommencer:hover{color:var(--texte)}}
.quiz__recommencer{display:block;margin-inline:auto}
/* recommandation */
.quiz__pourquoi{margin:-8px 0 22px;font-size:16px;line-height:1.65;color:var(--sourdine)}
.quiz__produit{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;align-items:center;padding:18px;border-radius:24px;background:var(--fond)}
.quiz__produit--principal{background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--surface-rose) 70%,#fff));border:2px solid transparent;
  background-clip:padding-box;box-shadow:0 0 0 2px color-mix(in srgb,var(--rose) 60%,transparent),0 24px 50px -30px var(--rose-vif)}
.quiz__image{display:flex;align-items:center;justify-content:center;gap:4px;aspect-ratio:1;border-radius:18px;background:radial-gradient(circle at 50% 40%,#fff,var(--surface-rose) 85%);overflow:hidden}
.quiz__image img{width:80%;height:80%;object-fit:contain}
.quiz__image--pack img{width:44%;height:60%}
.quiz__image--pack span{font-weight:800;color:var(--nuit)}
.quiz__infos h3{margin:0 0 6px;font:400 26px/1.15 var(--police-titres)}
.quiz__prix{margin:0 0 14px;font:600 26px/1 var(--police-titres)}
.quiz__prix del{font:400 16px var(--police-texte);color:var(--sourdine)}
.quiz__eco{display:inline-block;padding:3px 10px;border-radius:999px;background:var(--degrade-promo);color:#fff;font:700 13px var(--police-texte);vertical-align:middle}
.quiz__actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.quiz__ajout{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 22px;border-radius:999px;border:0;cursor:pointer;background:var(--nuit);color:#fff!important;font:700 15px var(--police-texte);text-decoration:none}
.quiz__ajout em{font-style:normal;font-weight:400;opacity:.8}
.quiz__ajout.est-ajoute{background:var(--promo)}
.quiz__fiche{font-weight:600;font-size:15px;color:var(--texte)}
.quiz__aussi{margin:26px 0 10px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sourdine)}
.quiz__mot{margin:20px 0 0;padding:14px 18px;border-radius:16px;background:var(--fond);font-size:15px;color:var(--texte)}
.quiz__garantie{margin:22px 0 0;font-size:14px;color:var(--sourdine);text-align:center}

/* ---------- Suivre ma commande (formulaire WooCommerce) ---------- */
.suivi-section{padding:10px var(--gouttiere) 120px}
.suivi-section .woocommerce,.suivi-section .woocommerce-form-track-order,.suivi-section form.track_order{max-width:640px;margin:0 auto;padding:32px;border-radius:28px;background:#fff;
  border:1px solid color-mix(in srgb,var(--trait) 70%,transparent);box-shadow:0 30px 70px -40px color-mix(in srgb,var(--nuit) 45%,transparent)}
.suivi-section form.track_order p{margin:0 0 16px}
.suivi-section form.track_order>p:first-child{color:var(--sourdine);font-size:15px}
.suivi-section .form-row{display:flex;flex-direction:column;gap:6px;width:100%!important;float:none!important}
.suivi-section label{font-size:14px;font-weight:600}
.suivi-section input.input-text{min-height:50px;padding:0 18px;border-radius:14px;border:1px solid var(--trait);background:var(--fond);font:inherit}
.suivi-section button[type=submit],.suivi-section .button{min-height:52px;padding:0 28px;border-radius:999px;border:0;background:var(--nuit);color:#fff;font:700 15px var(--police-texte);cursor:pointer}
.suivi-section .woocommerce-order-details,.suivi-section .woocommerce-customer-details{margin-top:24px}
.suivi-section table{width:100%;border-collapse:collapse}
.suivi-section table td,.suivi-section table th{padding:10px 8px;border-bottom:1px solid var(--trait);text-align:left}
.suivi-section mark{padding:0;background:none;color:inherit;font-weight:700}
.suivi__aide{text-align:center;margin-top:20px;color:var(--sourdine);font-size:15px}

/* ---------- Centre d'aide (inc/aide.php, outils.js) ---------- */
.aide-section{padding:0 var(--gouttiere) 60px}
.aide{max-width:820px;margin:0 auto}
.aide__recherche input{width:100%;min-height:60px;padding:0 24px 0 54px;border-radius:999px;border:1px solid var(--trait);font:inherit;font-size:17px;color:var(--texte);
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23161C4F' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='m20 20-4.2-4.2'/%3E%3C/svg%3E") 20px center/22px no-repeat;
  box-shadow:0 18px 40px -28px color-mix(in srgb,var(--nuit) 40%,transparent)}
.aide__recherche input:focus{outline:none;border-color:var(--rose);box-shadow:0 0 0 4px color-mix(in srgb,var(--rose) 30%,transparent)}
.aide__filtres{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:20px 0 26px}
.aide__filtre{border:1px solid var(--trait);background:#fff;color:var(--texte);padding:9px 16px;border-radius:999px;font:600 14px var(--police-texte);cursor:pointer;transition:background .3s,color .3s,border-color .3s}
@media (hover:hover){.aide__filtre:hover{border-color:var(--rose)}}
.aide__filtre.est-actif{background:var(--nuit);border-color:var(--nuit);color:#fff}
.aide__liste{display:grid;gap:10px}
.aide__q{border-radius:20px;background:#fff;border:1px solid color-mix(in srgb,var(--trait) 70%,transparent);transition:box-shadow .3s}
.aide__q[open]{box-shadow:0 18px 40px -28px color-mix(in srgb,var(--nuit) 40%,transparent)}
.aide__q summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font:400 21px/1.25 var(--police-titres);color:var(--texte)}
.aide__q summary::-webkit-details-marker{display:none}
.aide__q summary::after{content:"+";flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--fond);font:400 20px/1 var(--police-texte);transition:transform .3s var(--courbe),background .3s}
.aide__q[open] summary::after{transform:rotate(45deg);background:var(--rose)}
.aide__r{padding:0 22px 20px;color:var(--sourdine);font-size:16px;line-height:1.65}
.aide__r p{margin:0 0 8px}
.aide__r a{color:var(--texte);font-weight:600}
.aide__vide{margin:18px 0 0;padding:18px 22px;border-radius:18px;background:#fff;text-align:center;color:var(--sourdine)}
.aide-raccourcis{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:40px var(--gouttiere) 140px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.aide-raccourci{padding:26px;border-radius:var(--rayon-grand);background:var(--surface);text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.aide-raccourci__titre{margin:0;font:400 24px/1.2 var(--police-titres)}
.aide-raccourci p{margin:0;color:var(--sourdine)}

/* ---------- Défi 7 nuits (outils.js) ---------- */
.defi{max-width:860px;margin:0 auto;padding:0 var(--gouttiere) 40px;display:grid;gap:14px}
.defi-barre{position:sticky;top:calc(var(--entete-h) + 10px);z-index:5;padding:16px 20px;border-radius:20px;background:#fff;border:1px solid color-mix(in srgb,var(--trait) 70%,transparent);box-shadow:0 18px 40px -30px color-mix(in srgb,var(--nuit) 45%,transparent)}
.defi-barre.est-fini{background:var(--nuit);color:#fff}
.defi-barre__texte{font-size:15px;margin-bottom:10px}
.defi-barre__texte strong{font:400 26px/1 var(--police-titres);margin-right:6px}
.defi-barre__jauge{height:8px;border-radius:999px;background:var(--surface-rose);overflow:hidden}
.defi-barre__jauge span{display:block;height:100%;border-radius:inherit;background:var(--degrade-promo);transition:width .6s var(--courbe)}
.defi-barre__note{margin:10px 0 0;font-size:13px;color:var(--sourdine)}
.defi-barre__note a{color:inherit;font-weight:700}
.defi-jour{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 20px;padding:24px 26px;border-radius:24px;background:#fff;border:1px solid color-mix(in srgb,var(--trait) 70%,transparent);transition:background .4s,border-color .4s}
.defi-jour>*{grid-column:1}
.defi-jour__numero{margin:0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--promo)}
.defi-jour__titre{margin:0;font:400 26px/1.15 var(--police-titres)}
.defi-jour__texte{margin:0;color:var(--sourdine);font-size:16px;line-height:1.6}
.defi-jour__liens{margin:2px 0 0;font-size:14px}
.defi-jour__liens a{color:var(--texte);font-weight:600}
.defi-jour__case{grid-column:2;grid-row:1/span 4;align-self:center;min-height:46px;padding:0 18px;border-radius:999px;border:1.5px solid var(--nuit);background:#fff;color:var(--nuit);font:700 14px var(--police-texte);cursor:pointer;white-space:nowrap;transition:background .3s,color .3s,transform .3s var(--courbe)}
@media (hover:hover){.defi-jour__case:hover{transform:translateY(-1px)}}
.defi-jour.est-faite{background:color-mix(in srgb,var(--surface-rose) 50%,#fff);border-color:var(--rose)}
.defi-jour.est-faite .defi-jour__case{background:var(--nuit);color:#fff}
.defi-jour.vient-faite .defi-jour__case{animation:coeur-bat .6s var(--courbe)}
.defi-fin{max-width:860px;margin:0 auto;padding:60px var(--gouttiere) 140px;text-align:center}
.defi-fin .tete-section{display:block;padding:0;margin:0 0 12px}
.defi-fin__texte{max-width:560px;margin:0 auto 20px;color:var(--sourdine)}
.defi-fin .boutons{justify-content:center}
/* les sept lunes (accueil, tableau de bord, connexion) */
.defi-une__lunes{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.defi-une__lunes li{position:relative;width:54px;height:54px;border-radius:50%;background:color-mix(in srgb,#fff 10%,transparent);border:1px solid var(--trait-nuit);transition:background .4s}
.defi-une__lunes li::after{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--rose);box-shadow:inset -9px -3px 0 0 var(--nuit);opacity:.35;transition:opacity .4s,box-shadow .4s}
.defi-une__lunes li.est-faite{background:color-mix(in srgb,var(--rose) 22%,transparent)}
.defi-une__lunes li.est-faite::after{opacity:1;box-shadow:0 0 18px var(--rose)}
.defi-une__lunes--petit{justify-content:flex-start;gap:8px;margin-top:6px}
.defi-une__lunes--petit li{width:30px;height:30px;background:var(--fond);border-color:var(--trait)}
.defi-une__lunes--petit li::after{inset:7px;box-shadow:inset -5px -2px 0 0 #fff}

/* ---------- Glossaire du sommeil (inc/editorial.php) ---------- */
.glossaire-section{padding:0 var(--gouttiere) 40px}
.glossaire{max-width:860px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.glossaire__terme{padding:22px 24px;border-radius:22px;background:#fff;border:1px solid color-mix(in srgb,var(--trait) 70%,transparent);scroll-margin-top:calc(var(--entete-h) + 30px)}
.glossaire dt{font:400 23px/1.2 var(--police-titres);margin:0 0 8px}
.glossaire dd{margin:0;color:var(--sourdine);font-size:15.5px;line-height:1.6}

/* ---------- Adaptatif ---------- */
@media (max-width:1024px){
  .avis__plein{grid-template-columns:1fr}
  .avis__resume{position:relative;top:0}
  .faq{grid-template-columns:1fr;gap:32px}
  .faq__photo{display:none}
  .engagements{grid-template-columns:1fr;gap:10px}
  .engagement{padding:18px 20px;display:grid;grid-template-columns:40px 1fr;column-gap:14px;align-items:center}
  .engagement::before{grid-row:1/3;width:30px;height:30px;margin:0}
  .engagement__titre{font-size:23px;margin-bottom:2px}
  .contact{grid-template-columns:1fr}
  .forum-articles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-produit{margin-inline:0}
}
@media (max-width:860px){
  .champ-rangee{grid-template-columns:minmax(0,1fr)}
  .avis-donner__grille{grid-template-columns:1fr;max-width:480px}
  .avis-donner{padding:80px 0 90px}
  .aide-raccourcis{grid-template-columns:1fr;padding-bottom:90px}
  .aide__q summary{font-size:19px;padding:16px 18px}
  .aide__r{padding:0 18px 18px}
  .defi-une__lunes{justify-content:flex-start;gap:8px}
  .defi-une__lunes li::after{inset:8px}
  .defi-une__lunes:not(.defi-une__lunes--petit){flex-wrap:nowrap;gap:6px}
  .defi-une__lunes:not(.defi-une__lunes--petit) li{width:34px;height:34px;flex:none}
}
@media (max-width:700px){
  .glossaire{grid-template-columns:1fr}
}
@media (max-width:640px){
  .page-tete{padding:80px var(--gouttiere) 48px}
  .page-titre{font-size:40px}
  .avis{padding-bottom:90px}
  .avis__resume{padding:24px}
  .avis__note strong{font-size:60px}
  .avis__liste .wc-block-review-list{columns:1}
  .avis__liste .wc-block-review-list-item__item{padding:20px;margin-bottom:12px}
  .avis__vide{padding:36px 22px}
  .avis__vide-titre{font-size:34px}
  .faq{padding-bottom:90px}
  .faq__liste summary{font-size:24px;padding:20px 0}
  .faq__liste details p{padding-right:0}
  .engagements{padding-bottom:90px}
  .contact__formulaire{padding:24px}
  .forum-articles{grid-template-columns:1fr}
  .forum-articles>li:first-child{grid-column:auto}
  .article-carte__titre{font-size:26px}
  .article-tete{padding-top:48px}
  .article-image{margin-bottom:40px}
  .article-texte{font-size:16px}
  .article-produit{grid-template-columns:1fr;padding:20px}
  .article-lies__liste{grid-template-columns:1fr}
  .quiz{padding:24px 18px 28px;border-radius:24px}
  .quiz__choix{grid-template-columns:1fr}
  .quiz__produit{grid-template-columns:96px minmax(0,1fr);gap:14px;padding:14px}
  .quiz__infos h3{font-size:21px}
  .quiz__prix{font-size:22px}
  .quiz__ajout{min-height:44px;padding:0 18px;font-size:14px}
  .defi-jour{grid-template-columns:1fr;padding:20px}
  .defi-jour__case{grid-column:1;grid-row:auto;justify-self:start;margin-top:8px}
  .defi-jour__titre{font-size:23px}
}

/* Articles : couverture, sommaire et lecture ont chacun leur place. */
.article{padding-bottom:32px;background:radial-gradient(ellipse 85% 680px at 85% 0%,#eae5f780,transparent),var(--fond)}
.article-tete{max-width:calc(var(--largeur) + 2 * var(--gouttiere));margin:0 auto;padding:48px var(--gouttiere) 40px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,4vw,56px);align-items:center;text-align:left}
.article-tete:not(:has(.article-image)){grid-template-columns:minmax(0,1fr);max-width:1000px}
.article-intro{min-width:0}
.article-retour{display:inline-block;margin:0 0 14px;padding:6px 12px;border:1px solid #e4dced;border-radius:999px;background:#fff9;color:var(--promo);font-size:13px;font-weight:700;letter-spacing:.07em}
.article-titre{font-size:clamp(32px,4vw,56px);line-height:1.12;font-weight:500;letter-spacing:-.025em;margin:0 0 20px;overflow-wrap:break-word}
.article-chapo{font-size:17px;line-height:1.65;color:var(--sourdine);margin:0 0 20px;max-width:54ch}
.article-chapo p{margin:0}
.article-date{display:inline-flex;align-items:center;font-size:13px;color:var(--sourdine);margin:0}
.article-image{width:100%;max-width:none;margin:0;padding:10px;border:1px solid #ffffffbb;border-radius:32px;background:linear-gradient(145deg,#fff,#f2edf9);box-shadow:0 24px 60px -38px #12174a50}
.article-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;max-height:390px;object-fit:cover;border-radius:24px}
.article-lecture-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start;max-width:calc(1160px + 2 * var(--gouttiere));margin:0 auto;padding:0 var(--gouttiere)}
.article-outils{position:sticky;top:calc(var(--entete-h) + var(--annonce-h) + 24px);max-height:calc(100svh - var(--entete-h) - var(--annonce-h) - 80px);overflow-y:auto;scrollbar-width:thin;display:grid;gap:18px;margin:0;padding:22px 18px;border:1px solid #e5dfeb;border-radius:24px;background:#ffffffbd;box-shadow:0 18px 45px -34px #12174a40}
.admin-bar .article-outils{top:calc(var(--entete-h) + var(--annonce-h) + 56px)}
.article-lecture{font-size:13px;line-height:1.5;color:var(--sourdine)}
.article-sommaire{padding:0;border:0;border-radius:0;background:transparent}
.article-sommaire__titre{font-size:13px;margin-bottom:14px;letter-spacing:.1em}
.article-sommaire ol{padding-left:19px;gap:12px}
.article-sommaire li{padding-left:3px;line-height:1.5;font-size:14px}
.article-sommaire li::marker{color:var(--promo);font-weight:600}
.article-sommaire a{font-size:14px;line-height:1.5;font-weight:500}
.article-sommaire a:focus-visible,.article-lie:focus-visible{outline:2px solid var(--promo);outline-offset:4px;border-radius:4px}
.article-texte{min-width:0;max-width:none;width:100%;margin:0;padding:clamp(24px,3vw,40px);border:1px solid #ede6ec;border-radius:28px;background:#fffc;box-shadow:0 28px 70px -50px #12174a45;font-size:17px;line-height:1.8;overflow-wrap:break-word}
.article-texte>p{margin:0 0 22px}
.article-texte>p:first-child{font-size:19px;line-height:1.65;color:var(--texte);padding-left:18px;border-left:3px solid var(--rose);margin-bottom:32px}
.article-texte .article-intertitre{position:relative;font-size:clamp(25px,2.4vw,32px);line-height:1.25;font-weight:500;margin:40px 0 18px;padding-top:18px;scroll-margin-top:160px}
.article-texte .article-intertitre::before{content:"";position:absolute;top:0;left:0;width:38px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--rose),var(--lilas))}
.article-texte .article-liste{margin:0 0 26px;padding-left:22px}
.article-texte .article-liste li{padding-left:4px;margin-bottom:12px}
.article-texte .article-liste li::marker{color:var(--promo)}
.article-texte>.article-produit{margin:32px 0;padding:22px;gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:22px;background:linear-gradient(145deg,var(--nuit),var(--nuit-2))}
.article-produit__texte,.article-produit__carte{min-width:0}
.article-produit__accroche{font-size:20px;line-height:1.4;margin-bottom:18px}
.article-produit .boutons .wp-block-button__link{min-height:44px;padding:10px 16px;font-size:14px}
.article-produit__carte .wc-block-product{padding:12px!important;border:1px solid #ffffff40;border-radius:16px;background:#fff;color:var(--nuit)}
.article-produit__carte .carte-image{height:130px}
.article-produit__carte .carte-image img{height:130px;width:100%;object-fit:contain!important}
.article-produit__carte .carte-infos{padding:8px 0 10px}
.article-produit__carte .carte-titre{font-size:19px;line-height:1.3}
.article-produit__carte .carte-cat{letter-spacing:0}
.article-produit__carte .carte-bouton{margin:0}
.article-produit__carte .carte-bouton button,.article-produit__carte .carte-bouton a{min-height:44px;font-size:13px;padding:10px 12px}
.article-lies{max-width:calc(1160px + 2 * var(--gouttiere));margin:56px auto 0;padding:0 var(--gouttiere);border-top:0}
.article-lies__titre{font-size:30px;font-weight:500;margin:0 0 22px}
.article-lies__liste{gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}
.article-lie{position:relative;display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:20px;padding:16px;border:1px solid #e7dfe9;border-radius:24px;background:#fff9;font-size:20px;line-height:1.35}
.article-lie img{width:140px;height:120px;aspect-ratio:auto;border-radius:16px}
.article-lie span{min-width:0;overflow-wrap:break-word}
.article-lie:not(:has(img)){grid-template-columns:minmax(0,1fr)}
.article-fin{max-width:calc(1160px + 2 * var(--gouttiere));margin:40px auto 0;padding:36px var(--gouttiere);border-top:0;gap:20px}
.article-fin__titre{font-size:clamp(26px,3vw,38px);line-height:1.2;font-weight:500}
@media(max-width:1024px){
 .article-lecture-layout{grid-template-columns:1fr;max-width:840px;gap:24px}
 .article-outils{position:static;max-height:none;overflow:visible;padding:22px 24px}
 .article-sommaire ol{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
 .article-lie{grid-template-columns:100px minmax(0,1fr);gap:14px;font-size:18px}
 .article-lie img{width:100px;height:100px}
}
@media(max-width:781px){
 .article-tete{grid-template-columns:1fr;padding-top:28px;padding-bottom:28px;gap:24px}
 .article-titre{font-size:clamp(30px,7.6vw,42px);line-height:1.15;margin-bottom:16px}
 .article-chapo{font-size:16px;line-height:1.65;margin-bottom:16px}
 .article-image{max-width:620px;justify-self:center;border-radius:24px;padding:8px}
 .article-image img{aspect-ratio:16/9;max-height:260px;border-radius:18px}
 .article-lecture-layout{gap:18px}
 .article-outils{padding:20px}
 .article-sommaire ol{grid-template-columns:1fr;gap:10px}
 .article-texte{padding:24px 20px;font-size:16px;line-height:1.75;border-radius:24px}
 .article-texte>p:first-child{font-size:17px;line-height:1.65;padding-left:14px}
 .article-texte .article-intertitre{font-size:25px;margin-top:32px;scroll-margin-top:132px}
 .article-texte>.article-produit{grid-template-columns:1fr;padding:20px}
 .article-produit__carte .wc-block-product{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;align-items:center}
 .article-produit__carte .carte-image,.article-produit__carte .carte-image img{width:90px;height:90px}
 .article-produit__carte .carte-offre,.article-produit__carte .carte-bientot,.article-produit__carte .wc-block-components-product-sale-badge{display:none}
 .article-produit__carte .carte-bouton{grid-column:1/-1}
 .article-produit__carte .carte-titre{font-size:17px}
 .article-produit__carte .carte-infos{padding:0;align-items:flex-start;text-align:left}
 .article-lies{margin-top:36px}
 .article-lies__titre{font-size:26px}
 .article-lies__liste{grid-template-columns:1fr;gap:12px}
 .article-lie{grid-template-columns:92px minmax(0,1fr);padding:12px;font-size:18px}
 .article-lie img{width:92px;height:92px}
 .article-fin{padding-block:28px;margin-top:24px}
 .article-fin .boutons{width:100%;gap:10px}
 .article-fin .boutons .wp-block-button{width:100%}
 .article-fin .wp-block-button__link{width:100%;min-height:46px;font-size:14px}
}

/* Contraste des textes secondaires, cohérent avec les fiches et les cartes produit. */
.article,.article-carte,.article-lies{--sourdine:#555b71}
.article-date,.article-carte__date{color:#555b71}

/* Lecture : panneau repliable natif et section courante sans déplacer le contenu. */
.article-plan summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;cursor:pointer;list-style:none;font-size:14px;font-weight:600;color:var(--nuit)}
.article-plan summary::-webkit-details-marker{display:none}
.article-plan summary::after{content:"+";font-size:20px;font-weight:400}
.article-plan[open] summary::after{content:"−"}
.article-plan[open] summary{margin-bottom:12px}
.article-sommaire a[aria-current=location]{color:var(--nuit);text-decoration-thickness:2px;text-decoration-color:var(--promo);font-weight:600}
.article-texte>p,.article-texte>.article-liste{max-width:66ch}
.article-plan summary:focus-visible{outline:2px solid var(--nuit);outline-offset:3px;border-radius:4px}

/* Ordinateur : images des cartes d'articles bornées par la hauteur visible (1.8.21). */
@media (min-width:1025px){
  .article-carte__image img{max-height:max(160px,calc(var(--vue) - 320px))}
  .forum-articles>li:first-child .article-carte__titre{font-size:clamp(28px,min(3.4vw,6.4vh),46px)}
}

/* ---------- Page 404 : petit ciel de nuit, étoiles qui scintillent (opacité seulement) ---------- */
.page-404{position:relative;display:grid;justify-items:center;gap:14px;padding-block:clamp(120px,18vh,170px) clamp(80px,12vh,120px);text-align:center}
.page-404::before{content:"";width:170px;height:170px;margin-bottom:8px;border-radius:50%;
  background:radial-gradient(circle at 64% 34%,transparent 21px,#f4e7c9 22px 23px,transparent 24px),radial-gradient(circle at 58% 38%,#f4e7c9 0 26px,transparent 27px),
    radial-gradient(1.5px 1.5px at 20% 30%,#fff 60%,transparent),radial-gradient(1px 1px at 30% 70%,#fff 60%,transparent),radial-gradient(1.5px 1.5px at 78% 72%,#fff 60%,transparent),radial-gradient(1px 1px at 84% 24%,#fff 60%,transparent),
    radial-gradient(closest-side,#2a3170,var(--nuit));box-shadow:0 30px 60px -30px #12174a99}
.page-404>h1{margin:0;font-size:clamp(34px,5vw,56px)}
.page-404>p{max-width:46ch;margin:0;color:var(--texte-secondaire)}
.page-404 .wp-block-buttons{justify-content:center;margin-top:10px}
@media (prefers-reduced-motion:no-preference){.page-404::before{animation:lune-404 6s ease-in-out infinite alternate}@keyframes lune-404{to{translate:0 -6px}}}
