/*
Theme Name: Angie.Shoot
Theme URI: https://angieshoot.com
Author: Angélique Glowacki
Description: Thème bloc sur mesure pour Angie.Shoot, photographe boudoir à Bruxelles.
Version: 1.10.1
Requires at least: 6.6
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: angie-shoot
*/

/* =========================================================
   Angie.Shoot — maquette
   Registre : référence gołędowskafotograf.pl
   Palette : celle de la cliente
   ========================================================= */

:root {
  --nuit: #1C1917;
  --nuit-profonde: #141110;
  --carte: #241D1A;
  --carte-2: #2A211D;
  --or: #B59667;
  --or-clair: #CDB083;
  --creme: #F1E8DD;
  --sable: #D8C3AF;
  --brun: #5A4034;
  --bordeaux: #6E3A45;

  --filet: rgba(181, 150, 103, .22);
  --filet-doux: rgba(181, 150, 103, .12);

  --f-titre: "Josefin Sans", "Jost", sans-serif;
  --f-texte: "Jost", system-ui, sans-serif;
  --f-script: "Yellowtail", cursive;

  --r-carte: 24px;
  --r-photo: 16px;
  --largeur: 1180px;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--nuit);
  color: var(--sable);
  font-family: var(--f-texte);
  font-weight: 300;
  font-size: 17px;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
strong { color: var(--creme); font-weight: 600; }
p { margin: 0 0 1.1em; }
p:where(.script, .surtitre, .initiale, .pastille, .etape__num, .toi__num, .formule__inclus, .formule__prix, .pack__prix, .pack__cadeau, .atelier__date, .atelier__barre, .atelier__montant, .atelier__mention, .chiffre__nombre, .chiffre__script, .temoignage__prenom, .temoignage__type, .contact__label, .contact__valeur, .cadeau__carte-sur, .cadeau__carte-nom, .cadeau__carte-script, .logo, .reseaux, .legal__sommaire, .pied__legal, .pied__copyright, .coord__ligne) { margin: 0; }

h1, h2, h3, h4 {
  margin: 0;
  font-family: var(--f-titre);
  font-weight: 200;
  line-height: 1.12;
  color: var(--or);
  hyphens: none;
  text-wrap: balance;
}

.script {
  font-family: var(--f-script);
  font-weight: 400;
  color: var(--creme);
  letter-spacing: 0;
  text-transform: none;
}

.surtitre {
  display: block;
  font-family: var(--f-texte);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: var(--or);
  margin-bottom: 22px;
}

.conteneur {
  width: min(var(--largeur), 100% - 48px);
  margin-inline: auto;
}

/* ---------- Boutons ---------- */

.btn .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 16px 34px;
  border-radius: 999px;
  border: 1px solid var(--or);
  font-family: var(--f-texte);
  font-weight: 600;
  font-size: 12.5px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--or);
  background: transparent;
  cursor: pointer;
  transition: background .3s, color .3s, box-shadow .3s, border-color .3s;
}
.btn .wp-block-button__link:hover { background: rgba(181, 150, 103, .1); }

.btn--plein .wp-block-button__link {
  background: var(--or);
  color: var(--nuit);
  box-shadow: 0 10px 40px -8px rgba(181, 150, 103, .55);
}
.btn--plein .wp-block-button__link:hover { background: var(--or-clair); }

.btn--voile .wp-block-button__link {
  border-color: rgba(241, 232, 221, .7);
  background: rgba(90, 64, 52, .42);
  color: var(--creme);
  font-weight: 500;
  letter-spacing: .08em;
  font-size: 13.5px;
  min-width: 244px;
  backdrop-filter: blur(4px);
}
.btn--voile .wp-block-button__link:hover { background: rgba(90, 64, 52, .7); }

/* ---------- En-tête ---------- */

.entete {
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 20;
}
.entete__barre {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 84px;
  padding-inline: clamp(24px, 4.5vw, 64px);
}
.logo {
  font-family: var(--f-script);
  font-size: 30px;
  color: var(--creme);
  line-height: 1;
  white-space: nowrap;
}
.logo strong { color: var(--or); font-weight: inherit; }
.logo a { color: inherit; }

.wp-block-navigation.nav .wp-block-navigation__container { gap: clamp(22px, 2.8vw, 44px); }
.wp-block-navigation.nav .wp-block-navigation-item__content {
  font-size: 15px;
  font-weight: 400;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(241, 232, 221, .82);
  transition: color .25s;
}
.wp-block-navigation.nav .wp-block-navigation-item__content:hover,
.wp-block-navigation.nav .current-menu-item > .wp-block-navigation-item__content { color: var(--creme); }
.wp-block-navigation.nav .current-menu-item > .wp-block-navigation-item__content { border-bottom: 1px solid var(--or); padding-bottom: 4px; }

/* ---------- Hero ---------- */

.hero {
  position: relative;
  min-height: max(100vh, 720px);
  background: var(--nuit);
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding-top: max(130px, 15vh);
  overflow: hidden;
}
.hero .hero__fond {
  position: absolute;
  inset: 0;
  margin: 0;
}
.hero .hero__fond img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; }
.hero__fond--mobile { display: none; }
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(20, 17, 16, .55) 0%, rgba(20, 17, 16, 0) 22%),
    radial-gradient(48% 42% at 78% 28%, rgba(20, 17, 16, .7) 0%, rgba(20, 17, 16, 0) 100%),
    linear-gradient(0deg, var(--nuit) 0%, rgba(28, 25, 23, 0) 26%);
}
.hero__texte {
  position: relative;
  z-index: 2;
  margin-right: clamp(24px, 8vw, 150px);
  text-align: right;
}
.hero h1 {
  font-size: clamp(38px, 4.1vw, 60px);
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--creme);
  line-height: 1.16;
}
.hero__sous {
  margin: 18px 0 40px;
  font-family: var(--f-titre);
  font-weight: 300;
  font-size: clamp(16px, 1.45vw, 21px);
  letter-spacing: .3em;
  color: var(--sable);
}
.hero__actions { display: flex; gap: 16px; justify-content: flex-end; flex-wrap: wrap; }

/* ---------- À propos ---------- */

.apropos { padding: 110px 0 60px; }
.apropos__titre {
  text-align: center;
  font-size: clamp(56px, 6vw, 84px);
  margin-bottom: 64px;
}
.apropos__grille {
  display: grid;
  grid-template-columns: 420px 1fr;
  gap: 72px;
  align-items: start;
}
.apropos__photo { position: sticky; top: 40px; }
.apropos__photo .script {
  display: block;
  text-align: center;
  font-size: 40px;
  margin-bottom: 18px;
}
.apropos__photo figure {
  margin: 0;
  position: relative;
}
.apropos__photo img {
  width: 100%;
  aspect-ratio: 420 / 540;
  object-fit: cover;
  object-position: 42% 50%;
  border-radius: var(--r-photo);
  box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .8);
}
.apropos__photo figure::after {
  content: "";
  position: absolute;
  inset: 22px -22px -22px 22px;
  border: 1px solid var(--filet);
  border-radius: var(--r-photo);
  z-index: -1;
}
.apropos__texte h3 {
  font-size: clamp(38px, 3.6vw, 52px);
  margin: 6px 0 32px;
}
.apropos__texte h3 em { font-family: var(--f-script); font-style: normal; color: var(--creme); }
.apropos__texte h3 em { font-size: 1.08em; }
.apropos__texte p { font-size: 16.5px; }

/* ---------- Chiffres ---------- */

.chiffres { padding: 50px 0 120px; }
.chiffres__grille {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
  max-width: 740px;
  margin-inline: auto;
}
.chiffre {
  position: relative;
  text-align: center;
  padding: 40px 24px 40px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(110, 58, 69, .22), rgba(110, 58, 69, 0) 70%),
    linear-gradient(180deg, var(--carte-2), var(--carte));
}
.chiffre__nombre {
  font-family: var(--f-titre);
  font-weight: 200;
  font-size: 96px;
  line-height: 1;
  color: var(--or);
  position: relative;
  display: inline-block;
}
.chiffre__nombre sup {
  position: absolute;
  left: -.42em;
  top: .12em;
  font-size: .36em;
}
.chiffre__valeur { position: relative; display: inline-block; }
.chiffre__script {
  position: absolute;
  right: -.9em;
  bottom: -.32em;
  font-size: 27px;
  white-space: nowrap;
}
.chiffre > p { margin: 26px 0 0; font-size: 15px; color: var(--sable); }

/* ---------- Avis ---------- */

.avis {
  padding: 120px 0 130px;
  background: var(--nuit-profonde);
  border-block: 1px solid rgba(255, 255, 255, .035);
}
.entete-section { text-align: center; max-width: 760px; margin: 0 auto 64px; }
.entete-section h2 { font-size: clamp(44px, 4.6vw, 68px); margin-bottom: 26px; }
.entete-section p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 16.5px; margin: 0; }

.avis__piste {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  align-items: start;
  width: min(1180px, 100% - 48px);
  margin-inline: auto;
}
.temoignage {
  padding: 30px 30px 26px;
  border-radius: 20px;
  border: 1px solid var(--filet);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
  display: flex;
  flex-direction: column;
}
.temoignage__qui { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; }
.initiale {
  flex: 0 0 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid var(--or);
  display: grid;
  place-items: center;
  font-family: var(--f-titre);
  font-weight: 300;
  font-size: 21px;
  padding-top: 4px;
  color: var(--or);
}
.temoignage__prenom { font-weight: 500; font-size: 16px; color: var(--creme); line-height: 1.3; }
.temoignage__type {
  display: block;
  font-weight: 500;
  font-size: 10px;
  letter-spacing: .24em;
  color: rgba(181, 150, 103, .85);
  text-transform: uppercase;
}
.temoignage .temoignage__texte {
  margin: 0 0 18px;
  font-size: 15.5px;
  line-height: 1.75;
  display: -webkit-box;
  -webkit-line-clamp: 7;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.temoignage.est-ouvert .temoignage__texte { display: block; -webkit-line-clamp: unset; }
.temoignage .lire {
  align-self: flex-start;
  margin-top: auto;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  font-family: var(--f-texte);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--or);
}

.fleche {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(241, 232, 221, .65);
  background: rgba(20, 17, 16, .7);
  color: var(--creme);
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: background .25s, border-color .25s;
  backdrop-filter: blur(6px);
}
.fleche:hover { border-color: var(--or); background: rgba(181, 150, 103, .18); }
.fleche svg { width: 18px; height: 18px; }

/* ---------- Offre (carrousel) ---------- */

.offre {
  position: relative;
  padding: 120px 0 120px;
  background:
    radial-gradient(55% 38% at 50% 8%, rgba(110, 58, 69, .32), rgba(110, 58, 69, 0) 100%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, .012) 0 1px, transparent 1px 120px),
    var(--nuit);
  overflow: hidden;
}
.carrousel { position: relative; }
.carrousel__piste {
  display: flex;
  gap: 28px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding: 34px calc(50% - 207px) 40px;
}
.carrousel__piste::-webkit-scrollbar { display: none; }
.carrousel > .fleche {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
}
.carrousel > .fleche--prec { left: clamp(12px, 2vw, 32px); }
.carrousel > .fleche--suiv { right: clamp(12px, 2vw, 32px); }

.formule {
  position: relative;
  flex: 0 0 414px;
  scroll-snap-align: center;
  padding: 22px 22px 28px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background: linear-gradient(180deg, var(--carte-2) 0%, var(--carte) 100%);
  text-align: center;
  transition: transform .5s cubic-bezier(.2, .7, .2, 1), border-color .4s, box-shadow .5s, opacity .5s;
  transform: scale(.94);
  opacity: .82;
}
.formule.est-active {
  transform: scale(1);
  opacity: 1;
  border-color: var(--or);
  box-shadow: 0 0 0 1px rgba(181, 150, 103, .25), 0 40px 120px -20px rgba(110, 58, 69, .65);
}
.formule__photo {
  position: relative;
  border-radius: var(--r-photo);
  overflow: hidden;
  aspect-ratio: 370 / 430;
}
.formule .formule__photo img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s; }
.formule.est-active .formule__photo img { transform: scale(1.04); }
.formule__photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(36, 29, 26, .9) 0%, rgba(36, 29, 26, 0) 34%);
}
.formule__titre { position: relative; z-index: 1; margin-top: -42px; }
.formule__titre .script { display: block; font-size: 22px; line-height: 1; margin-bottom: 8px; }
.formule__titre h3 {
  font-size: 40px;
  text-transform: uppercase;
  letter-spacing: .04em;
  line-height: 1.12;
  min-height: 2.24em;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
.carrousel--simple .formule__titre h3 { min-height: 0; }
.formule__desc { font-size: 15.5px; margin: 14px 8px 18px; min-height: 52px; }
.formule__prix {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
  padding: 14px 0 12px;
  border-top: 1px solid var(--filet-doux);
}
.formule__prix s { font-size: 15px; color: rgba(216, 195, 175, .6); margin-right: 6px; }
.formule__prix strong { font-size: 46px; font-weight: 600; line-height: 1; letter-spacing: -.01em; }
.formule__prix em { font-style: normal; font-weight: 600; color: var(--or); font-size: 20px; }
.formule__inclus {
  font-size: 12.5px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(216, 195, 175, .8);
  margin-bottom: 22px;
}
.formule .boutons, .formule .boutons .wp-block-button, .formule .btn .wp-block-button__link { width: 100%; }
.formule.est-active .btn .wp-block-button__link {
  background: var(--or);
  color: var(--nuit);
  box-shadow: 0 10px 40px -8px rgba(181, 150, 103, .55);
}

.pastille {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  padding: 6px 16px;
  border-radius: 999px;
  background: var(--or);
  color: var(--nuit);
  font-weight: 600;
  font-size: 10.5px;
  letter-spacing: .22em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ruban {
  position: absolute;
  top: 0;
  right: 0;
  width: 170px;
  height: 170px;
  overflow: hidden;
  z-index: 2;
  border-top-right-radius: var(--r-carte);
  pointer-events: none;
}
.ruban span {
  position: absolute;
  top: 42px;
  right: -58px;
  width: 240px;
  padding: 7px 0;
  transform: rotate(45deg);
  background: var(--or);
  color: var(--nuit);
  font-weight: 600;
  font-size: 9.5px;
  letter-spacing: .16em;
  text-align: center;
  text-transform: uppercase;
  box-shadow: 0 6px 20px rgba(0, 0, 0, .4);
}

.points { display: flex; justify-content: center; gap: 8px; margin-top: 4px; }
.points button {
  width: 8px; height: 8px; padding: 0;
  border-radius: 999px; border: 0;
  background: rgba(241, 232, 221, .25);
  cursor: pointer;
  transition: width .35s, background .35s;
}
.points button.est-actif { width: 26px; background: var(--or); }

/* ---------- Étapes ---------- */

.etapes {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-height: 1000px;
  background: var(--nuit-profonde);
}
.etapes__texte {
  padding: 120px clamp(24px, 4vw, 64px) 120px max(24px, calc((100vw - var(--largeur)) / 2));
  position: relative;
  z-index: 2;
}
.etapes__texte h2 { font-size: clamp(64px, 6.4vw, 92px); line-height: 1; }
.etapes__texte h2 + .script { display: block; font-size: 30px; line-height: 1.3; margin: 8px 0 28px; }
.etapes__intro { max-width: 520px; font-size: 16.5px; margin-bottom: 44px; }
.etape {
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 18px;
  padding: 30px 0;
  border-top: 1px solid var(--filet);
  max-width: 560px;
}
.etape__num {
  font-family: var(--f-titre);
  font-weight: 200;
  font-size: 64px;
  line-height: .9;
  color: var(--or);
}
.etape h3 {
  font-family: var(--f-texte);
  font-weight: 500;
  font-size: 17px;
  color: var(--or);
  margin-bottom: 8px;
  line-height: 1.4;
}
.etape p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 15.5px; margin: 0; }
.etapes__photo {
  position: relative;
  margin: 0;
  overflow: hidden;
}
.etapes .etapes__photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 40% 30%;
}
.etapes__photo::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, var(--nuit-profonde) 0%, rgba(20, 17, 16, 0) 38%),
    linear-gradient(0deg, var(--nuit-profonde) 0%, rgba(20, 17, 16, 0) 18%),
    linear-gradient(180deg, var(--nuit-profonde) 0%, rgba(20, 17, 16, 0) 14%);
}
.etapes__citation {
  position: absolute;
  z-index: 2;
  right: clamp(24px, 5vw, 80px);
  bottom: 110px;
  max-width: 330px;
  text-align: right;
  font-family: var(--f-script);
  font-size: 34px;
  line-height: 1.25;
  color: var(--creme);
}
.etapes__citation::before {
  content: "";
  display: block;
  width: 60px;
  height: 1px;
  background: var(--or);
  margin: 0 0 18px auto;
}

/* ---------- Bon cadeau ---------- */

.cadeau { padding: 130px 0 120px; }
.cadeau__bloc {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  width: min(1240px, 100% - 48px);
  margin-inline: auto;
  min-height: 560px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background:
    radial-gradient(70% 90% at 0% 100%, rgba(110, 58, 69, .35), rgba(110, 58, 69, 0) 70%),
    var(--carte);
  overflow: hidden;
}
.cadeau__texte { padding: 70px 40px 70px 70px; position: relative; z-index: 2; align-self: center; }
.cadeau__texte h2 { font-size: clamp(52px, 5.2vw, 76px); line-height: 1.02; }
.cadeau__texte .script { display: block; font-size: 30px; line-height: 1.3; margin: 14px 0 22px; max-width: 420px; }
.cadeau__texte p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 16.5px; max-width: 440px; margin-bottom: 34px; }
.cadeau__photo { position: relative; margin: 0; }
.cadeau__bloc .cadeau__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.cadeau__photo::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, var(--carte) 0%, rgba(36, 29, 26, .4) 30%, rgba(36, 29, 26, 0) 60%);
}
.cadeau__carte {
  position: absolute;
  z-index: 2;
  right: 56px;
  bottom: 56px;
  width: 300px;
  padding: 26px 28px;
  border-radius: 14px;
  border: 1px solid rgba(181, 150, 103, .55);
  background: linear-gradient(135deg, rgba(36, 29, 26, .9), rgba(28, 25, 23, .78));
  backdrop-filter: blur(8px);
  box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .7);
}
.cadeau__carte-sur { font-weight: 500; font-size: 10px; letter-spacing: .3em; color: var(--or); text-transform: uppercase; }
.cadeau__carte-nom { display: block; font-family: var(--f-titre); font-weight: 300; font-size: 31px; color: var(--creme); letter-spacing: .08em; line-height: 1.2; }
.cadeau__carte-script { font-family: var(--f-script); font-size: 22px; color: var(--or); }

/* =========================================================
   Pages internes : Offre et Contact
   ========================================================= */

/* ---------- Intro (offre) ---------- */

.intro { padding: 170px 0 110px; overflow-x: clip; }
.intro__grille {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}
.intro h1 { font-size: clamp(48px, 5.2vw, 76px); line-height: 1.05; }
.intro__texte .script { display: block; font-size: 34px; line-height: 1.3; margin: 10px 0 30px; padding-left: 18%; }
.intro__texte p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 16.5px; max-width: 500px; }
.intro__actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 36px; }
.intro__photo { margin: 0; position: relative; }
.intro__photo img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  box-shadow: 0 50px 100px -40px rgba(0, 0, 0, .9);
}
.intro__photo::before {
  content: "";
  position: absolute;
  inset: -40px -40px auto auto;
  width: 70%;
  height: 70%;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(110, 58, 69, .45), rgba(110, 58, 69, 0));
  z-index: -1;
}

/* ---------- Galerie ---------- */

.galerie { padding: 40px 0 120px; }
.galerie .entete-section { margin-bottom: 48px; }
.galerie__defile { position: relative; }
.galerie__piste {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding-inline: max(24px, calc((100vw - var(--largeur)) / 2));
}
.galerie__piste::-webkit-scrollbar { display: none; }
.galerie__piste figure {
  flex: 0 0 clamp(240px, 26vw, 380px);
  margin: 0;
  scroll-snap-align: center;
}
.galerie__piste img {
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  border-radius: var(--r-photo);
  border: 1px solid var(--filet-doux);
}
.galerie__defile > .fleche { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; }
.galerie__defile > .fleche--prec { left: clamp(12px, 2vw, 32px); }
.galerie__defile > .fleche--suiv { right: clamp(12px, 2vw, 32px); }

/* ---------- Tarifs (packs) ---------- */

.tarifs {
  padding: 120px 0 110px;
  background:
    radial-gradient(55% 40% at 50% 6%, rgba(110, 58, 69, .3), rgba(110, 58, 69, 0) 100%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, .012) 0 1px, transparent 1px 120px),
    var(--nuit-profonde);
}
.tarifs__piste {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
  align-items: start;
  width: min(1240px, 100% - 48px);
  margin-inline: auto;
  padding-top: 18px;
}
.pack {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0 0 30px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
  overflow: visible;
}
.pack--vedette {
  border-color: var(--or);
  box-shadow: 0 0 0 1px rgba(181, 150, 103, .25), 0 40px 120px -20px rgba(110, 58, 69, .65);
  transform: translateY(-16px);
}
.pack__tete {
  position: relative;
  padding: 78px 32px 26px;
  text-align: center;
  border-radius: var(--r-carte) var(--r-carte) 0 0;
  overflow: hidden;
  isolation: isolate;
}
.pack__tete .pack__fond { position: absolute; inset: 0; z-index: -2; margin: 0; opacity: .5; }
.pack__tete .pack__fond img { width: 100%; height: 100%; object-fit: cover; object-position: center 30%; }
.pack__tete::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(180deg, rgba(110, 58, 69, .55) 0%, rgba(36, 29, 26, .7) 45%, var(--carte-2) 100%);
}
.pack__tete h3 {
  font-size: clamp(32px, 2.9vw, 42px);
  text-transform: uppercase;
  letter-spacing: .04em;
  line-height: 1.05;
  min-height: 2.1em;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.pack__tete .script {
  display: block;
  font-size: 26px;
  line-height: 1;
  margin: -4px 0 16px 38%;
}
.pack__tete p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 15.5px; margin: 0; color: var(--sable); min-height: 5.25em; }
.pack__prix {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
  padding: 4px 0 20px;
}
.pack__prix strong { font-size: 58px; font-weight: 600; line-height: 1; color: var(--creme); }
.pack__prix em { font-style: normal; font-weight: 600; color: var(--or); font-size: 22px; }
.pack__liste {
  list-style: none;
  margin: 0 30px 18px;
  padding: 0;
  font-size: 15px;
}
.pack__liste li {
  position: relative;
  padding: 11px 0 11px 22px;
  border-top: 1px solid var(--filet-doux);
  line-height: 1.5;
}
.pack__liste li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 19px;
  width: 7px;
  height: 7px;
  border: 1px solid var(--or);
  transform: rotate(45deg);
}
.pack__acompte {
  margin: auto 30px 18px;
  padding: 14px 16px;
  border-radius: 12px;
  background: rgba(181, 150, 103, .08);
  font-size: 14px;
  text-align: center;
}
.pack .boutons { margin: 0 30px; }
.pack .boutons .wp-block-button, .pack .btn .wp-block-button__link { width: 100%; }
.pack__cadeau {
  display: block;
  margin-top: 14px;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--or);
}
.pack__cadeau:hover { color: var(--or-clair); }

/* ---------- Toujours inclus ---------- */

.inclus { padding: 120px 0 60px; }
.inclus__bloc {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: min(1240px, 100% - 48px);
  margin-inline: auto;
  min-height: 600px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background: var(--carte);
  overflow: hidden;
}
.inclus__photo { position: relative; margin: 0; }
.inclus__bloc .inclus__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; }
.inclus__photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(270deg, var(--carte) 0%, rgba(36, 29, 26, 0) 40%);
}
.inclus__carte {
  position: absolute;
  z-index: 1;
  left: 32px;
  bottom: 32px;
  width: min(330px, calc(100% - 64px));
  padding: 24px 26px 8px;
  border-radius: 16px;
  border: 1px solid var(--filet);
  background: rgba(28, 25, 23, .82);
  backdrop-filter: blur(8px);
}
.inclus__carte .surtitre { margin-bottom: 12px; font-size: 11px; }
.inclus__carte p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 14.5px; }
.inclus__texte { padding: 72px 64px; align-self: center; }
.inclus__texte h2 { font-size: clamp(48px, 4.8vw, 70px); text-transform: uppercase; letter-spacing: .04em; line-height: 1; }
.inclus__texte .script { display: block; font-size: 28px; margin: 6px 0 34px 30%; }
.inclus__liste { list-style: none; margin: 0; padding: 0; }
.inclus__liste li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 20px;
  padding: 16px 0;
  border-bottom: 1px solid var(--filet-doux);
}
.inclus__liste strong {
  font-weight: 500;
  font-size: 13px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--creme);
  white-space: nowrap;
}
.inclus__liste em { font-style: normal; font-size: 15px; color: var(--or); text-align: right; }

/* ---------- Formation ---------- */

.formation { padding: 110px 0 40px; }
.formation__grille {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: stretch;
}
.atelier {
  display: flex;
  flex-direction: column;
  padding: 44px 44px 40px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background:
    radial-gradient(90% 60% at 100% 0%, rgba(110, 58, 69, .28), rgba(110, 58, 69, 0) 70%),
    linear-gradient(180deg, var(--carte-2), var(--carte));
}
.atelier__entete { margin-bottom: 26px; }
.atelier__entete .script { display: block; font-size: 26px; line-height: 1; }
.atelier__entete h3 { font-size: clamp(42px, 4vw, 58px); text-transform: uppercase; letter-spacing: .04em; margin: 4px 0 14px; }
.atelier__date {
  display: inline-block;
  padding: 7px 16px;
  border-radius: 999px;
  border: 1px solid var(--filet);
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--creme);
}
.atelier .pack__liste { margin: 0 0 26px; }
.atelier__prix {
  margin-top: auto;
  padding: 22px 0 24px;
  border-top: 1px solid var(--filet);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: baseline;
  column-gap: 18px;
}
.atelier__barre s { font-size: 20px; color: rgba(216, 195, 175, .55); }
.atelier__montant { display: flex; align-items: baseline; gap: 8px; }
.atelier__montant strong { font-size: 58px; font-weight: 600; line-height: 1; color: var(--creme); }
.atelier__montant em { font-style: normal; font-weight: 600; color: var(--or); font-size: 22px; }
.atelier__mention { grid-column: 1 / -1; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--or); margin-top: 8px; }
.atelier .boutons { align-self: flex-start; }
.atelier .btn .wp-block-button__link { min-width: 260px; }

/* ---------- Contact ---------- */

.contact { padding: 170px 0 110px; }
.contact__grille {
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 80px;
  align-items: start;
}
.contact h1 { font-size: clamp(48px, 5.2vw, 76px); line-height: 1.05; }
.contact__texte .script { display: block; font-size: 32px; margin: 10px 0 30px; padding-left: 12%; }
.contact__texte > p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 16.5px; max-width: 480px; }
.contact__photo { margin: 0; max-width: 360px; }
.contact__photo img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: 50% 25%;
  border-radius: var(--r-photo);
  border: 1px solid var(--filet-doux);
}

/* ---------- Questions ---------- */

.questions {
  padding: 110px 0 120px;
  background: var(--nuit-profonde);
  border-top: 1px solid rgba(255, 255, 255, .035);
}
.questions__grille {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 80px;
  align-items: start;
}
.questions h2 { font-size: clamp(44px, 4.4vw, 64px); }
.questions .script { display: block; font-size: 30px; margin: 8px 0 0 30%; }
.questions details {
  border-bottom: 1px solid var(--filet);
  padding: 4px 0;
}
.questions summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 22px 0;
  font-size: 18px;
  font-weight: 400;
  color: var(--creme);
}
.questions summary::-webkit-details-marker { display: none; }
.questions summary::after {
  content: "+";
  flex: 0 0 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--filet);
  display: grid;
  place-items: center;
  font-family: var(--f-titre);
  font-size: 22px;
  color: var(--or);
  transition: transform .3s;
}
.questions details[open] summary::after { transform: rotate(45deg); }
.questions details p { margin: -6px 0 22px; max-width: 640px; font-size: 16px; }

/* ---------- Est-ce que c'est toi / doutes ---------- */

.toi { padding: 60px 0 110px; }
.toi .entete-section { margin-bottom: 48px; }
.toi__grille {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.toi__carte {
  padding: 30px 26px 26px;
  border-radius: 20px;
  border: 1px solid var(--filet);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
}
.toi__num {
  display: block;
  font-family: var(--f-titre);
  font-weight: 200;
  font-size: 46px;
  line-height: 1;
  color: var(--or);
  margin-bottom: 16px;
}
.toi__carte p:not(.script, .surtitre, .toi__num, .etape__num) { margin: 0; font-size: 17px; line-height: 1.55; color: var(--creme); }
.toi__carte strong { color: var(--or-clair); font-weight: 500; }
.toi__conclusion { max-width: 780px; text-align: center; margin-top: 54px; }
.toi__conclusion .script { display: block; font-size: 32px; line-height: 1.35; margin-bottom: 22px; }
.toi__conclusion p:not(.script, .surtitre, .toi__num, .etape__num) { font-size: 16.5px; margin: 0; }

.doutes { padding: 120px 0; background: var(--nuit-profonde); }
.doutes__grille {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.doute {
  padding: 36px 32px 30px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background:
    radial-gradient(90% 60% at 100% 0%, rgba(110, 58, 69, .22), rgba(110, 58, 69, 0) 70%),
    linear-gradient(180deg, var(--carte-2), var(--carte));
}
.doute h3 { font-size: 30px; line-height: 1.15; margin-bottom: 16px; }
.doute p:not(.script, .surtitre, .toi__num, .etape__num) { margin: 0; font-size: 15.5px; }

.tarifs__note {
  text-align: center;
  font-size: 14px;
  margin: 44px auto 0;
  padding-inline: 24px;
  color: rgba(216, 195, 175, .8);
}

/* Disponibilités : sous les formules, là où l'on choisit sa date */
.dispo {
  width: min(var(--largeur), 100% - 48px);
  margin: 48px auto 0;
  padding: 36px 44px 44px;
  text-align: center;
  border: 1px solid rgba(181, 150, 103, .45);
  border-radius: var(--r-carte);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
  box-shadow: 0 30px 80px -40px rgba(181, 150, 103, .35);
}
.dispo > .surtitre { display: block; margin-bottom: 30px; }
.dispo__liste { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
.dispo__liste li { position: relative; padding-top: 74px; font-size: 15px; line-height: 1.5; color: var(--sable); }
.dispo__liste li::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 58px;
  height: 58px;
  transform: translateX(-50%);
  border-radius: 50%;
  border: 1px solid rgba(181, 150, 103, .5);
  background: rgba(181, 150, 103, .06) center / 24px no-repeat;
}
.dispo__liste li:nth-child(1)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.5'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E"); }
.dispo__liste li:nth-child(2)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.5'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
.dispo__liste li:nth-child(3)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.5'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3Ccircle cx='12' cy='15.5' r='1.8' fill='%23B59667'/%3E%3C/svg%3E"); }
.dispo__liste li:nth-child(4)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.5'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E"); }
.dispo__liste strong { display: inline-block; margin-bottom: 4px; font-weight: 500; font-size: 19px; letter-spacing: .02em; color: var(--creme); }

/* ---------- Appel final ---------- */

.appel { padding: 60px 0 130px; }
.appel__bloc {
  text-align: center;
  padding: 80px 40px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background:
    radial-gradient(60% 80% at 50% 0%, rgba(110, 58, 69, .4), rgba(110, 58, 69, 0) 70%),
    var(--carte);
}
.appel__bloc .script { display: block; font-size: 40px; line-height: 1; }
.appel__bloc h2 { font-size: clamp(46px, 5vw, 72px); text-transform: uppercase; letter-spacing: .04em; margin: 4px 0 22px; }
.appel__bloc p:not(.script, .surtitre, .toi__num, .etape__num) { max-width: 520px; margin: 0 auto 34px; font-size: 16.5px; }
.appel__actions { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

/* ---------- Formation : programme, après le cours, paiement ---------- */

.programme { padding: 110px 0; background: var(--nuit-profonde); }
.programme__grille { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; max-width: 1060px; }
.programme__carte {
  padding: 40px 40px 26px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
}
.programme__carte .script { display: block; font-size: 26px; line-height: 1; }
.programme__carte h3 { font-size: 50px; text-transform: uppercase; letter-spacing: .04em; margin: 4px 0 20px; }
.programme__carte .pack__liste { margin: 0; }

.apres { padding: 120px 0 40px; }
.apres__liste { list-style: none; margin: 0; padding: 0; counter-reset: apres; }
.apres__liste li {
  counter-increment: apres;
  position: relative;
  padding: 14px 0 14px 48px;
  border-bottom: 1px solid var(--filet-doux);
  font-size: 15.5px;
  line-height: 1.55;
}
.apres__liste li::before {
  content: counter(apres, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 13px;
  font-family: var(--f-titre);
  font-weight: 300;
  font-size: 20px;
  color: var(--or);
}

.paiement {
  margin-top: 30px;
  padding: 34px 40px;
  border-radius: var(--r-carte);
  border: 1px dashed rgba(181, 150, 103, .4);
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 40px;
  align-items: center;
}
.paiement .surtitre { margin: 0; grid-row: span 2; }
.paiement ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 34px; font-size: 15.5px; color: var(--creme); }
.paiement li::before { content: "◇"; color: var(--or); margin-right: 10px; font-size: 12px; }
.paiement p:not(.script, .surtitre, .toi__num, .etape__num) { margin: 10px 0 0; font-size: 13.5px; color: rgba(216, 195, 175, .75); }

/* ---------- Bon cadeau ---------- */

.intro__photo--cadeau img { aspect-ratio: 5 / 4; }
.intro__photo--cadeau .cadeau__carte { right: -24px; bottom: 40px; }
.marche { padding: 110px 0 130px; background: var(--nuit-profonde); }
.marche .doute .toi__num { margin-bottom: 18px; }

.questions details p a { color: var(--or); border-bottom: 1px solid var(--filet); }
.questions--nuit { background: var(--nuit); }

/* ---------- Pages légales ---------- */

.legal { padding: 170px 0 120px; }
.legal__grille {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 72px;
  align-items: start;
}
.legal__entete { position: sticky; top: 40px; }
.legal__entete h1 { font-size: clamp(40px, 3.6vw, 54px); line-height: 1.08; }
.legal__sommaire {
  display: flex;
  flex-direction: column;
  margin-top: 34px;
  border-top: 1px solid var(--filet);
}
.legal__sommaire a {
  padding: 14px 0;
  border-bottom: 1px solid var(--filet-doux);
  font-size: 14.5px;
  line-height: 1.45;
  color: var(--sable);
  transition: color .25s;
}
.legal__sommaire a:hover { color: var(--or); }
.legal__texte {
  max-width: 760px;
  padding: 48px 56px 40px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
}
.legal__texte h2 {
  scroll-margin-top: 30px;
  font-size: 34px;
  line-height: 1.2;
  margin: 56px 0 10px;
  padding-top: 40px;
  border-top: 1px solid var(--filet);
}
.legal__texte h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.legal__texte h3 {
  font-family: var(--f-texte);
  font-weight: 500;
  font-size: 13px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--or);
  margin: 34px 0 12px;
}
.legal__texte p, .legal__texte li { font-size: 15.5px; line-height: 1.75; }
.legal__texte p { margin-bottom: .9em; }
.legal__texte ul { margin: 0 0 1em; padding-left: 20px; }
.legal__texte li { margin-bottom: 4px; }
.legal__texte li::marker { color: var(--or); }
.legal__texte a { color: var(--or); border-bottom: 1px solid var(--filet); }
.legal__meta { font-size: 13.5px !important; color: rgba(216, 195, 175, .7); }

.tarifs__note a, .paiement p a, .formulaire__accord a { color: var(--or); border-bottom: 1px solid var(--filet); }

@media (max-width: 1080px) {
  .legal__grille { grid-template-columns: 1fr; gap: 40px; }
  .legal__entete { position: static; }
}
@media (max-width: 760px) {
  .legal { padding: 120px 0 80px; }
  .legal__texte { padding: 30px 22px 24px; }
  .legal__texte h2 { font-size: 28px; }
}

/* ---------- Pied de page ---------- */

.pied { padding: 70px 0 0; border-top: 1px solid rgba(255, 255, 255, .05); }
.pied__grille {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 20px;
  width: min(900px, 100% - 48px);
  margin-inline: auto;
}
.pied__carte {
  padding: 32px 30px;
  border-radius: 18px;
  border: 1px solid var(--filet-doux);
  background: linear-gradient(180deg, var(--carte), rgba(36, 29, 26, .6));
}
.pied__carte .logo { font-size: 36px; display: block; margin: 6px 0 8px; }
.pied__intro { font-size: 15px; margin-bottom: 18px; }
.pied__carte h4 {
  font-family: var(--f-texte);
  font-weight: 500;
  font-size: 12.5px;
  letter-spacing: .32em;
  text-transform: uppercase;
  margin: 8px 0 22px;
}
.pied__bas {
  margin-top: 56px;
  padding: 22px 24px;
  background: var(--nuit-profonde);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 28px;
  text-align: center;
  font-size: 12.5px;
  color: rgba(216, 195, 175, .7);
}
.pied__legal { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 20px; }
.pied__legal a { border-bottom: 1px solid transparent; transition: color .25s, border-color .25s; }
.pied__legal a:hover { color: var(--creme); border-color: var(--filet); }

/* ---------- Responsive ---------- */

@media (max-width: 1080px) {
  .apropos__grille { grid-template-columns: 1fr; gap: 48px; }
  .apropos__photo { position: static; max-width: 440px; margin-inline: auto; width: 100%; }
  .avis__piste {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    width: 100%;
    padding-inline: 24px;
  }
  .avis__piste::-webkit-scrollbar { display: none; }
  .temoignage { flex: 0 0 min(340px, 84vw); scroll-snap-align: center; }
  .etapes { grid-template-columns: 1fr; }
  .etapes__photo { min-height: 640px; order: -1; }
  .etapes__photo::before {
    background:
      linear-gradient(0deg, var(--nuit-profonde) 0%, rgba(20, 17, 16, 0) 40%),
      linear-gradient(180deg, var(--nuit-profonde) 0%, rgba(20, 17, 16, 0) 14%);
  }
  .etapes__texte { padding-top: 20px; }
  .cadeau__bloc { grid-template-columns: 1fr; }
  .cadeau__photo { min-height: 420px; order: -1; }
  .cadeau__photo::before { background: linear-gradient(0deg, var(--carte) 0%, rgba(36, 29, 26, 0) 50%); }
  .pied__grille { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
  .entete__barre { height: 72px; }
  .hero { align-items: flex-end; justify-content: center; padding-top: 0; }
  .hero__fond { display: none; }
  .hero .hero__fond--mobile { display: block; }
  .hero .hero__fond--mobile img { object-position: 45% 50%; }
  .hero::before {
    background:
      linear-gradient(180deg, rgba(20, 17, 16, .5) 0%, rgba(20, 17, 16, 0) 30%),
      linear-gradient(0deg, var(--nuit) 0%, rgba(28, 25, 23, .75) 38%, rgba(28, 25, 23, 0) 65%);
  }
  .hero__texte { margin: 0 24px 72px; text-align: center; }
  .hero__sous { letter-spacing: .2em; margin-bottom: 30px; }
  .hero__actions { justify-content: center; }
  .hero__actions .wp-block-button, .btn--voile .wp-block-button__link { min-width: 0; width: 100%; }
  .apropos { padding-top: 80px; }
  .apropos__titre { margin-bottom: 40px; }
  .apropos__photo figure::after { inset: 14px -10px -14px 14px; }
  .chiffres__grille { grid-template-columns: 1fr; }
  .avis, .offre { padding: 90px 0; }
  .carrousel__piste { padding-inline: calc(50% - 150px); gap: 16px; }
  .formule { flex-basis: 300px; padding: 16px 16px 22px; }
  .formule__titre h3 { font-size: 32px; }
  .formule__prix strong { font-size: 38px; }
  .carrousel > .fleche { top: auto; bottom: -56px; transform: none; }
  .carrousel > .fleche--prec { left: calc(50% - 110px); }
  .carrousel > .fleche--suiv { right: calc(50% - 110px); }
  .points { margin-top: 18px; }
  .etapes__photo { min-height: 520px; }
  .etapes__citation { font-size: 26px; bottom: 60px; }
  .etape { grid-template-columns: 64px 1fr; }
  .etape__num { font-size: 46px; }
  .cadeau { padding: 90px 0; }
  .cadeau__bloc { width: calc(100% - 32px); }
  .cadeau__texte { padding: 36px 26px 44px; }
  .cadeau__carte { right: 20px; bottom: 26px; width: 230px; padding: 18px 20px; }
  .cadeau__carte-nom { font-size: 23px; letter-spacing: .05em; }
  .pied__grille { grid-template-columns: 1fr; }
}

/* ---------- Pages internes : responsive ---------- */

@media (max-width: 1080px) {
  .intro__grille, .contact__grille, .questions__grille { grid-template-columns: 1fr; gap: 56px; }
  .intro__photo { max-width: 520px; }
  .formulaire { position: static; }
  .dispo__liste { grid-template-columns: repeat(2, 1fr); row-gap: 36px; }
  .tarifs__piste {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    width: 100%;
    gap: 18px;
    padding: 30px calc(50% - min(170px, 43vw)) 40px;
  }
  .tarifs__piste::-webkit-scrollbar { display: none; }
  .pack { flex: 0 0 min(340px, 86vw); scroll-snap-align: center; }
  .pack--vedette { transform: none; }
  .inclus__bloc { grid-template-columns: 1fr; }
  .inclus__photo { min-height: 460px; }
  .inclus__photo::after { background: linear-gradient(0deg, var(--carte) 0%, rgba(36, 29, 26, 0) 40%); }
  .formation__grille { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .intro, .contact { padding: 120px 0 80px; }
  .intro__texte .script, .contact__texte .script { padding-left: 0; font-size: 28px; }
  .galerie__defile > .fleche { display: none; }
  .galerie__piste figure { flex-basis: 72vw; }
  .tarifs { padding: 90px 0 70px; }
  .dispo { width: calc(100% - 32px); margin-top: 36px; padding: 30px 18px 34px; }
  .dispo__liste { gap: 30px 14px; }
  .dispo__liste strong { font-size: 17px; }
  .pack__tete { padding: 56px 24px 22px; }
  .pack__tete h3 { font-size: 34px; }
  .pack__liste { margin-inline: 22px; }
  .pack__acompte, .pack .boutons { margin-inline: 22px; }
  .inclus { padding: 80px 0 40px; }
  .inclus__bloc { width: calc(100% - 32px); }
  .inclus__texte { padding: 40px 24px 44px; }
  .inclus__texte .script { margin-left: 20%; }
  .inclus__liste li { flex-direction: column; gap: 4px; }
  .inclus__liste em { text-align: left; }
  .atelier { padding: 32px 24px 28px; }
  .atelier .boutons, .atelier .boutons .wp-block-button, .atelier .btn .wp-block-button__link { min-width: 0; width: 100%; }
  .formulaire { padding: 32px 22px 28px; }
  .formulaire__ligne { grid-template-columns: 1fr; gap: 0; }
  .questions { padding: 80px 0; }
  .questions .script { margin-left: 0; }
}

@media (max-width: 1080px) {
  .toi__grille { grid-template-columns: repeat(2, 1fr); }
  .doutes__grille, .programme__grille { grid-template-columns: 1fr; max-width: 640px; }
  .paiement { grid-template-columns: 1fr; row-gap: 14px; }
  .paiement .surtitre { grid-row: auto; }
  .intro__photo--cadeau .cadeau__carte { right: 16px; }
}

@media (max-width: 760px) {
  .chiffres__grille { grid-template-columns: 1fr; }
  .toi__grille { grid-template-columns: 1fr; }
  .toi__conclusion .script { font-size: 27px; }
  .doutes, .programme, .marche { padding: 80px 0; }
  .doute { padding: 28px 24px 24px; }
  .programme__carte { padding: 30px 24px 18px; }
  .programme__carte h3 { font-size: 40px; }
  .apres { padding: 80px 0 30px; }
  .paiement { padding: 26px 22px; }
  .appel { padding: 40px 0 90px; }
  .appel__bloc { padding: 56px 22px; }
  .appel__bloc .script { font-size: 32px; }
}

/* =========================================================
   Couche WordPress
   Le CSS des blocs est imprimé APRÈS cette feuille : à spécificité égale il gagne.
   Les règles ci-dessous sont donc toujours plus spécifiques que celles des blocs.
   ========================================================= */

/* Neutralisations à spécificité nulle (blocs-gutenberg.md) */
:where(.wp-block-group) > :where(*), :where(.wp-block-buttons) { margin-block: 0; }
figure.wp-block-image { margin: 0; }
.wp-block-buttons.boutons, .wp-block-buttons.hero__actions,
.wp-block-buttons.intro__actions, .wp-block-buttons.appel__actions { display: flex; flex-wrap: wrap; gap: 14px; }
.wp-block-buttons.hero__actions { gap: 16px; justify-content: flex-end; }
.wp-block-buttons.appel__actions { justify-content: center; }
.wp-block-button.btn { margin: 0; }
.btn .wp-block-button__link { line-height: 1.75; text-align: center; }
.formule .boutons .wp-block-button, .pack .boutons .wp-block-button { flex: 1 1 auto; }
.etapes__photo .wp-block-image, .cadeau__photo .wp-block-image, .inclus__photo .wp-block-image { position: static; margin: 0; }

/* En-tête : barre d'administration WordPress */
body.admin-bar .entete { top: 32px; }
@media (max-width: 782px) { body.admin-bar .entete { top: 46px; } }
.entete__barre .logo { margin: 0; }

/* Menu principal (core/navigation) */
.wp-block-navigation.nav { font-family: var(--f-texte); }
.wp-block-navigation.nav .wp-block-navigation-item__content { text-decoration: none; }
.wp-block-navigation.nav .wp-block-navigation__responsive-container-open,
.wp-block-navigation.nav .wp-block-navigation__responsive-container-close { color: var(--creme); }
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open {
  background-color: var(--nuit-profonde) !important;
  color: var(--creme) !important;
}
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
  align-items: center;
  justify-content: center;
  gap: 30px;
}
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
  font-size: 20px;
  letter-spacing: .14em;
}
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
  align-items: center;
  justify-content: center;
  padding-top: 0;
  min-height: 100%;
}
/* le dialogue occupe toute la hauteur pour que le menu soit centré à toutes les largeurs */
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { flex: 1; display: flex; flex-direction: column; }
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { flex: 1; }

/* Le bloc navigation replie le menu sous 600 px : on le replie jusqu'à 959 px (6 entrées) */
@media (min-width: 600px) and (max-width: 959px) {
  .wp-block-navigation.nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
  .wp-block-navigation.nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}

/* Bandeau de consentement (pixel Meta) : imprimé par functions.php, piloté par app.js.
   Les deux boutons ont volontairement le même style : refuser doit être aussi simple qu'accepter. */
.consentement {
  position: fixed;
  z-index: 100000;
  right: 24px;
  bottom: 24px;
  width: min(540px, calc(100% - 48px));
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 24px 26px;
  border-radius: 20px;
  border: 1px solid rgba(181, 150, 103, .45);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
  box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .85);
  color: var(--sable);
  font-family: var(--f-texte);
  font-size: 14.5px;
  line-height: 1.6;
}
.consentement__texte { margin: 0; }
.consentement__texte strong { display: block; margin-bottom: 6px; font-family: var(--f-titre); font-weight: 300; font-size: 24px; color: var(--creme); }
.consentement__texte a { color: var(--or); border-bottom: 1px solid var(--filet); text-decoration: none; }
.consentement__actions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.consentement__choix { display: flex; flex-direction: column; gap: 14px; padding-top: 4px; border-top: 1px solid var(--filet-doux); }
.consentement__option { display: grid; grid-template-columns: 20px 1fr; gap: 12px; align-items: start; padding-top: 12px; }
.consentement__option input { width: 18px; height: 18px; margin: 3px 0 0; accent-color: var(--or); }
.consentement__option label { font-size: 13.5px; line-height: 1.5; color: rgba(216, 195, 175, .85); }
.consentement__option label span { display: block; margin-bottom: 2px; font-size: 14.5px; font-weight: 500; color: var(--creme); }
.consentement__option label em { margin-left: 8px; font-style: normal; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--or); }
.consentement .consentement__btn--plein { background: var(--or); color: var(--nuit); align-self: flex-start; padding-inline: 26px; }
.consentement.est-personnalise .consentement__actions { display: none; }
.consentement__btn {
  flex: 1;
  min-height: 46px;
  padding: 12px 10px;
  border-radius: 999px;
  border: 1px solid var(--or);
  background: transparent;
  color: var(--or);
  font-family: var(--f-texte);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .16em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color .25s, color .25s;
}
.consentement__btn:hover, .consentement__btn:focus-visible { background: var(--or); color: var(--nuit); }
@media (max-width: 760px) {
  .consentement { right: 12px; bottom: 12px; width: calc(100% - 24px); padding: 20px; max-height: calc(100vh - 24px); overflow-y: auto; }
  .consentement__actions { grid-template-columns: 1fr 1fr; }
  .consentement__actions [data-consentement="personnaliser"] { grid-column: 1 / -1; grid-row: 2; }
}

/* Contrôles ajoutés par le script (flèches, points, « Lire la suite ») */
.fleche { padding: 0; }
.galerie__defile, .carrousel { position: relative; }

/* Chiffres */
.chiffre__nombre { margin: 0; }
.chiffre__script { line-height: 1; }

/* Carte « bon cadeau » : la mention garde la hauteur de ligne du texte courant, comme dans la maquette */
.cadeau__carte-sur { line-height: 29.75px; }

/* Avis */
.temoignage__nom { line-height: 1.3; }

/* Coordonnées (page contact) : icônes en CSS */
.contact__coord { margin: 36px 0 40px; }
.contact__ligne {
  display: grid;
  grid-template-columns: 46px 1fr;
  column-gap: 18px;
  align-items: center;
  padding: 16px 0;
  border-top: 1px solid var(--filet-doux);
}
.contact__ligne::before {
  content: "";
  grid-row: span 2;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(181, 150, 103, .6);
  background: center / 18px no-repeat;
}
.contact__ligne--mail::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.5'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E"); }
.contact__ligne--instagram::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.5'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='.8' fill='%23B59667'/%3E%3C/svg%3E"); }
.contact__ligne--lieu::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.5'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.contact__label {
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--or);
  line-height: 1.75;
}
.contact__valeur { font-size: 16px; color: var(--creme); line-height: 1.75; overflow-wrap: anywhere; }

/* Formulaire : carte + Contact Form 7 */
.formulaire {
  position: sticky;
  top: 40px;
  padding: 44px 44px 40px;
  border-radius: var(--r-carte);
  border: 1px solid var(--or);
  background:
    radial-gradient(80% 50% at 100% 0%, rgba(110, 58, 69, .3), rgba(110, 58, 69, 0) 70%),
    linear-gradient(180deg, var(--carte-2), var(--carte));
  box-shadow: 0 40px 120px -30px rgba(110, 58, 69, .55);
}
.formulaire h2 { font-size: 44px; margin-bottom: 28px; }
.formulaire .wpcf7 form > p, .formulaire .wpcf7-form > p { margin: 0; }
.formulaire__ligne { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.formulaire label {
  display: block;
  margin-bottom: 18px;
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--or);
}
.formulaire label small { text-transform: none; letter-spacing: 0; color: rgba(216, 195, 175, .6); font-weight: 300; font-size: 12px; }
.formulaire .wpcf7-form-control-wrap { display: block; }
.formulaire input:not([type="checkbox"]):not([type="submit"]),
.formulaire select,
.formulaire textarea {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid var(--filet);
  background: rgba(20, 17, 16, .6);
  color: var(--creme);
  font-family: var(--f-texte);
  font-weight: 300;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: none;
  outline: none;
  transition: border-color .25s;
}
.formulaire textarea { resize: vertical; min-height: 150px; height: auto; }
.formulaire input:focus, .formulaire select:focus, .formulaire textarea:focus { border-color: var(--or); }
.formulaire input::placeholder, .formulaire textarea::placeholder { color: rgba(216, 195, 175, .45); }
.formulaire select { appearance: none; background-image: linear-gradient(45deg, transparent 50%, var(--or) 50%), linear-gradient(135deg, var(--or) 50%, transparent 50%); background-position: calc(100% - 22px) 50%, calc(100% - 16px) 50%; background-size: 6px 6px; background-repeat: no-repeat; }
.formulaire select option { background: var(--carte); }
.formulaire .formulaire__accord { margin: 6px 0 26px; }
.formulaire .wpcf7-acceptance .wpcf7-list-item { margin: 0; }
.formulaire .wpcf7-acceptance label {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin: 0;
  font-size: 13.5px;
  letter-spacing: 0;
  text-transform: none;
  font-weight: 300;
  color: var(--sable);
}
.formulaire .wpcf7-acceptance input { width: 18px; height: 18px; flex: 0 0 18px; margin: 2px 0 0; accent-color: var(--or); }
.formulaire .wpcf7-acceptance a { color: var(--or); border-bottom: 1px solid var(--filet); }
.formulaire .wpcf7-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 54px;
  padding: 16px 34px;
  border-radius: 999px;
  border: 1px solid var(--or);
  background: var(--or);
  color: var(--nuit);
  font-family: var(--f-texte);
  font-weight: 600;
  font-size: 12.5px;
  letter-spacing: .26em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 10px 40px -8px rgba(181, 150, 103, .55);
  transition: background .3s;
}
.formulaire .wpcf7-submit:hover { background: var(--or-clair); }
.formulaire .wpcf7-spinner { display: none; }
.formulaire .wpcf7-not-valid-tip { margin-top: 6px; font-size: 12.5px; letter-spacing: 0; text-transform: none; color: #E3A3A3; }
.formulaire .wpcf7 form .wpcf7-response-output {
  margin: 18px 0 0;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid var(--filet);
  font-size: 14px;
  color: var(--creme);
}
.formulaire .wpcf7 form.sent .wpcf7-response-output { border-color: var(--or); }
.formulaire .wpcf7 form.init .wpcf7-response-output,
.formulaire .wpcf7 form.resetting .wpcf7-response-output,
.formulaire .wpcf7 form.submitting .wpcf7-response-output { display: none; }

/* Pied de page */
.pied__carte .logo { font-size: 36px; display: block; margin: 6px 0 8px; }
.reseaux a {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(181, 150, 103, .6);
  font-size: 0;
  transition: background .25s;
}
.reseaux a::before {
  content: "";
  width: 15px;
  height: 15px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.6'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.5' cy='6.5' r='.8' fill='%23B59667'/%3E%3C/svg%3E") center / contain no-repeat;
}
.reseaux a:hover { background: rgba(181, 150, 103, .15); }
.reseaux { margin-bottom: 22px; }
.coord__ligne { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; font-size: 15px; overflow-wrap: anywhere; }
.coord__ligne::before { content: ""; flex: 0 0 15px; height: 15px; background: center / contain no-repeat; }
.coord__lieu::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.6'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.coord__mail::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B59667' stroke-width='1.6'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E"); }
.wp-block-navigation.pied__menu .wp-block-navigation__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px 24px;
  align-items: start;
  padding-bottom: 9px;
}
.wp-block-navigation.pied__menu .wp-block-navigation-item__content { font-size: 15.5px; text-decoration: none; color: var(--sable); }
.wp-block-navigation.pied__menu .wp-block-navigation-item__content:hover { color: var(--creme); }
.pied__copyright { margin: 0; }

/* Pages simples (404, liste d'articles) */
.page-simple { padding: 190px 0 120px; }
.page-erreur .appel__bloc { max-width: 760px; }

@media (max-width: 1080px) {
  .formulaire { position: static; }
}
@media (max-width: 760px) {
  .formulaire { padding: 32px 22px 28px; }
  .formulaire__ligne { grid-template-columns: 1fr; gap: 0; }
}

/* =========================================================
   Boutique (WooCommerce) — la feuille de WooCommerce est désactivée,
   tout le rendu de la boutique vient d'ici.
   ========================================================= */

/* --- En-tête : accès « Mon espace » --- */
.entete__barre { justify-content: flex-start; gap: 22px; }
.entete__barre .logo { margin-right: auto; }
.entete__barre .wp-block-woocommerce-customer-account a { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border-radius: 50%; border: 1px solid rgba(241, 232, 221, .35); color: var(--creme); transition: border-color .25s, color .25s; }
.entete__barre .wp-block-woocommerce-customer-account a:hover { border-color: var(--or); color: var(--or); }
.entete__barre .wp-block-woocommerce-customer-account svg { width: 20px; height: 20px; fill: currentColor; }
/* panier (woocommerce/mini-cart) : même pastille ronde que « Mon espace » ; le script du bloc colore
   le compteur en ligne, d'où les !important */
.entete__barre .wp-block-woocommerce-customer-account + .entete__panier { margin-left: -10px; }
.entete__barre .entete__panier .wc-block-mini-cart__button { position: relative; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border-radius: 50%; border: 1px solid rgba(241, 232, 221, .35); background: none; color: var(--creme); cursor: pointer; transition: border-color .25s, color .25s; }
.entete__barre .entete__panier .wc-block-mini-cart__button:hover { border-color: var(--or); color: var(--or); }
.entete__barre .entete__panier .wc-block-mini-cart__quantity-badge { display: grid; place-items: center; }
.entete__barre .entete__panier .wc-block-mini-cart__icon { width: 20px; height: 20px; margin: 0; }
.entete__barre .entete__panier .wc-block-mini-cart__badge { position: absolute; top: -5px; right: -6px; min-width: 18px; height: 18px; padding: 0 5px; margin: 0; border: 0; border-radius: 999px; background: var(--or) !important; color: var(--nuit) !important; font-family: var(--f-texte); font-size: 10.5px; font-weight: 600; line-height: 18px; }
/* tiroir du panier ; l'attribut hidden doit rester plus fort que « img { display: block } » */
[hidden] { display: none !important; }
.wc-block-components-drawer__screen-overlay { background: rgba(20, 17, 16, .6); }
.wc-block-mini-cart__drawer .wc-block-components-drawer { background: var(--carte); color: var(--sable); font-family: var(--f-texte); border-left: 1px solid var(--filet); }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close { color: var(--creme); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__title { font-family: var(--f-titre); font-weight: 300; font-size: 30px; color: var(--creme); margin: 28px 24px 18px; }
.wc-block-mini-cart__drawer .wc-block-components-product-name { color: var(--or); font-size: 16px; text-decoration: none; }
.wc-block-mini-cart__drawer .wc-block-cart-item__prices, .wc-block-mini-cart__drawer .wc-block-components-product-price { color: var(--creme); }
.wc-block-mini-cart__drawer .wc-block-cart-item__remove-link { color: rgba(216, 195, 175, .7) !important; font-size: 13px; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer { border-top: 1px solid var(--filet); background: transparent; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-subtotal { color: var(--creme); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wp-block-button__link,
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-components-button {
  border-radius: 999px; font-family: var(--f-texte); font-weight: 600; font-size: 11.5px; letter-spacing: .22em; text-transform: uppercase; padding: 14px 18px;
}
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-mini-cart__footer-cart { border: 1px solid var(--or) !important; background: transparent !important; color: var(--or) !important; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-mini-cart__footer-checkout { border: 1px solid var(--or) !important; background: var(--or) !important; color: var(--nuit) !important; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__empty-cart-wrapper { color: var(--sable); }

/* --- Réserve de place sous l'en-tête --- */
main.produit, main.boutique { padding: 160px 0 110px; }
body.woocommerce-cart main, body.woocommerce-checkout main, body.woocommerce-account main {
  padding: 160px max(24px, calc((100vw - var(--largeur)) / 2)) 110px;
}
.commerce__entete { margin-bottom: 40px; }
.commerce__entete h1 { font-size: clamp(44px, 4.6vw, 66px); }

/* --- Notifications --- */
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error,
.wc-block-components-notice-banner {
  list-style: none;
  margin: 0 0 24px !important;
  padding: 16px 20px !important;
  border-radius: 14px !important;
  border: 1px solid var(--filet) !important;
  background: var(--carte) !important;
  color: var(--creme) !important;
  font-size: 15px;
}
.woocommerce-error, .wc-block-components-notice-banner.is-error { border-color: rgba(227, 163, 163, .6) !important; }
.woocommerce-message a, .woocommerce-info a, .woocommerce-error a,
.wc-block-components-notice-banner a { color: var(--or); }
.wc-block-components-notice-banner > svg { fill: var(--or); background: transparent !important; }
.woocommerce-message .button, .woocommerce-info .button { float: right; color: var(--or); text-transform: uppercase; letter-spacing: .2em; font-size: 11px; }

/* --- Fil d'Ariane --- */
.woocommerce-breadcrumb { font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: rgba(216, 195, 175, .7); margin-bottom: 18px; }
.woocommerce-breadcrumb a { color: var(--or); }

/* --- Onglets de catégories (core/navigation, onglet courant marqué par le script) --- */
.boutique .entete-section { margin-bottom: 44px; }
.boutique .boutique__description p { margin: 0; }
.wp-block-navigation.boutique__filtres { width: min(var(--largeur), 100% - 48px); margin: 0 auto 56px; font-family: var(--f-texte); }
.wp-block-navigation.boutique__filtres .wp-block-navigation__container { gap: 12px; justify-content: center; }
.wp-block-navigation.boutique__filtres .wp-block-navigation-item__content {
  display: inline-block;
  padding: 12px 26px;
  border: 1px solid var(--filet);
  border-radius: 999px;
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--sable);
  transition: border-color .25s, color .25s, background-color .25s;
}
.wp-block-navigation.boutique__filtres .wp-block-navigation-item__content:hover { border-color: var(--or); color: var(--creme); }
.wp-block-navigation.boutique__filtres .current-menu-item > .wp-block-navigation-item__content { background: var(--or); border-color: var(--or); color: var(--nuit); }

/* --- Grille de la boutique --- */
.boutique .entete-section h1 { font-size: clamp(48px, 5vw, 72px); margin-bottom: 22px; }
.boutique__grille { width: min(var(--largeur), 100% - 48px); margin-inline: auto; }
.boutique__grille .wc-block-product-template {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.boutique__grille .wc-block-product {
  display: flex;
  flex-direction: column;
  width: auto !important;
  margin: 0 !important;
  padding: 20px 20px 26px;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
  text-align: center;
}
.boutique__grille .wc-block-components-product-image { margin: 0 0 18px !important; border-radius: var(--r-photo); overflow: hidden; }
.boutique__grille .wc-block-components-product-image img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; height: auto; }
.boutique__grille .wp-block-post-title { font-size: 26px; line-height: 1.2; margin: 0 0 10px; }
.boutique__grille .wp-block-post-title a { color: var(--or); }
.boutique__grille .wc-block-components-product-price { font-size: 26px !important; font-weight: 600; color: var(--creme); margin-bottom: 18px; }
.boutique__grille .wc-block-components-product-price del { font-size: 16px; font-weight: 400; color: rgba(216, 195, 175, .55); margin-right: 6px; }
.boutique__grille .wc-block-components-product-price ins { text-decoration: none; }
.prix-acompte { display: block; margin-top: 4px; font-size: 13px; font-weight: 400; letter-spacing: .08em; color: var(--or); }
.prix-gratuit { color: var(--creme); }
.boutique__grille .wp-block-woocommerce-product-button { margin-top: auto; }
.boutique__grille .wc-block-components-product-button__button,
.boutique__grille .wp-block-button__link {
  width: 100%;
  min-height: 52px;
  padding: 14px 24px !important;
  border-radius: 999px !important;
  border: 1px solid var(--or) !important;
  background: transparent !important;
  color: var(--or) !important;
  font-family: var(--f-texte);
  font-weight: 600;
  font-size: 12px !important;
  letter-spacing: .24em;
  text-transform: uppercase;
}
.boutique__grille .wc-block-components-product-button__button:hover { background: rgba(181, 150, 103, .12) !important; }
.boutique__grille .added_to_cart { display: block; margin-top: 10px; color: var(--or); font-size: 13px; }

/* --- Page produit --- */
.produit__grille { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 72px; align-items: start; }
.produit__media { position: sticky; top: 40px; }
.produit__media .woocommerce-product-gallery { opacity: 1 !important; margin: 0; }
.produit__media .woocommerce-product-gallery__wrapper { margin: 0; }
.produit__media .woocommerce-product-gallery__image img {
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  height: auto;
  border-radius: var(--r-carte);
  border: 1px solid var(--filet);
  box-shadow: 0 50px 100px -40px rgba(0, 0, 0, .9);
}
.produit__media .woocommerce-product-gallery__trigger, .produit__media .flex-control-nav, .produit__media .onsale { display: none; }
.produit__infos .wp-block-post-title { font-size: clamp(40px, 3.8vw, 56px); line-height: 1.08; margin-bottom: 18px; }
.produit__infos .wc-block-components-product-price, .produit__infos .price { font-size: 40px !important; font-weight: 600; color: var(--creme); margin-bottom: 18px; display: block; }
.produit__infos .wc-block-components-product-price del, .produit__infos .price del { font-size: 20px; font-weight: 400; color: rgba(216, 195, 175, .55); margin-right: 8px; }
.produit__infos ins { text-decoration: none; }
.produit__infos .wp-block-post-excerpt { font-size: 17px; margin-bottom: 26px; }
.produit__infos .wp-block-post-excerpt__excerpt { margin: 0; }
.produit__infos form.cart { margin: 0 0 34px; padding: 26px; border-radius: var(--r-carte); border: 1px solid var(--or); background: linear-gradient(180deg, var(--carte-2), var(--carte)); }
.produit__infos .bon-pour { margin: 0 0 18px; }
.produit__infos .bon-pour label, .produit__infos table.variations label {
  display: block;
  margin-bottom: 8px;
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--or);
}
.produit__infos .bon-pour small { text-transform: none; letter-spacing: 0; color: rgba(216, 195, 175, .6); font-weight: 300; font-size: 12px; }
.produit__infos .bon-pour input, .produit__infos table.variations select {
  display: block;
  width: 100%;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid var(--filet);
  background: rgba(20, 17, 16, .6);
  color: var(--creme);
  font-family: var(--f-texte);
  font-weight: 300;
  font-size: 16px;
  outline: none;
}
.produit__infos .bon-pour input:focus, .produit__infos table.variations select:focus { border-color: var(--or); }
.produit__infos table.variations { width: 100%; border-collapse: collapse; margin-bottom: 14px; }
.produit__infos table.variations th, .produit__infos table.variations td { display: block; padding: 0; text-align: left; }
.produit__infos table.variations select { appearance: none; background-image: linear-gradient(45deg, transparent 50%, var(--or) 50%), linear-gradient(135deg, var(--or) 50%, transparent 50%); background-position: calc(100% - 22px) 50%, calc(100% - 16px) 50%; background-size: 6px 6px; background-repeat: no-repeat; }
.produit__infos .reset_variations { display: inline-block; margin-top: 8px; font-size: 12px; color: var(--or); }
.produit__infos .woocommerce-variation-price .price { font-size: 30px !important; margin: 4px 0 14px; }
.produit__infos .stock { font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--or); margin: 0 0 14px; }
.produit__infos .quantity { display: none; }
.produit__infos .single_add_to_cart_button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 56px;
  padding: 16px 34px;
  border: 1px solid var(--or);
  border-radius: 999px;
  background: var(--or);
  color: var(--nuit);
  font-family: var(--f-texte);
  font-weight: 600;
  font-size: 12.5px;
  letter-spacing: .26em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 10px 40px -8px rgba(181, 150, 103, .55);
  transition: background .3s;
}
.produit__infos .single_add_to_cart_button:hover { background: var(--or-clair); }
.produit__infos .single_add_to_cart_button.disabled { opacity: .5; cursor: not-allowed; }
.produit__description { padding-top: 26px; border-top: 1px solid var(--filet); }
.produit__description ul { list-style: none; margin: 0 0 1.1em; padding: 0; }
.produit__description li { position: relative; padding: 10px 0 10px 22px; border-bottom: 1px solid var(--filet-doux); font-size: 15.5px; line-height: 1.5; }
.produit__description li::before { content: ""; position: absolute; left: 2px; top: 18px; width: 7px; height: 7px; border: 1px solid var(--or); transform: rotate(45deg); }
.produit__note { margin-top: 26px; font-size: 13.5px; color: rgba(216, 195, 175, .75); }
.produit__note a { color: var(--or); border-bottom: 1px solid var(--filet); }

/* --- Panier et paiement (blocs WooCommerce) --- */
body.woocommerce-cart main, body.woocommerce-checkout main { color: var(--sable); }
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout { font-family: var(--f-texte); }
.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar-layout .wc-block-components-sidebar { box-sizing: border-box; }
.wc-block-components-sidebar,
.wc-block-cart__totals-title,
.wp-block-woocommerce-checkout-order-summary-block {
  border-radius: var(--r-carte);
}
.wp-block-woocommerce-checkout-order-summary-block, .wc-block-cart .wc-block-components-sidebar {
  padding: 20px 24px !important;
  border: 1px solid var(--filet) !important;
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
}
.wc-block-components-title, .wc-block-components-checkout-step__title, .wc-block-cart__totals-title {
  font-family: var(--f-titre) !important;
  font-weight: 300 !important;
  color: var(--or) !important;
  font-size: 26px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.wc-block-components-product-name { color: var(--creme) !important; font-weight: 500; text-decoration: none; }
.wc-block-components-product-details { font-size: 14px; color: var(--sable); }
.wc-block-components-formatted-money-amount, .wc-block-components-product-price__value { color: var(--creme); }
.wc-block-components-totals-item__label, .wc-block-components-totals-item { color: var(--sable); }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label { color: var(--creme); font-weight: 600; font-size: 20px; }
.wc-block-components-text-input input, .wc-block-components-text-input textarea,
.wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-textarea {
  background: rgba(20, 17, 16, .6) !important;
  color: var(--creme) !important;
  border: 1px solid var(--filet) !important;
  border-radius: 12px !important;
  font-family: var(--f-texte) !important;
}
.wc-block-components-text-input label, .wc-blocks-components-select__label, .wc-block-components-combobox label { color: rgba(216, 195, 175, .75) !important; }
.wc-block-components-text-input.is-active input, .wc-block-components-text-input input:focus { border-color: var(--or) !important; box-shadow: none !important; }
.wc-block-components-checkbox .wc-block-components-checkbox__input { background: rgba(20, 17, 16, .6); border-color: var(--filet); }
.wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: var(--or); }
.wc-block-components-checkout-step__description, .wc-block-checkout__terms, .wc-block-components-checkbox__label { color: var(--sable); font-size: 14.5px; }
.wc-block-checkout__terms a, .wc-block-components-checkbox__label a { color: var(--or); }
.wc-block-components-button:not(.is-link), .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
  min-height: 56px !important;
  border-radius: 999px !important;
  border: 1px solid var(--or) !important;
  background: var(--or) !important;
  color: var(--nuit) !important;
  font-family: var(--f-texte) !important;
  font-weight: 600 !important;
  font-size: 12.5px !important;
  letter-spacing: .26em !important;
  text-transform: uppercase !important;
  box-shadow: 0 10px 40px -8px rgba(181, 150, 103, .55);
}
.wc-block-components-button.is-link, .wc-block-components-checkout-return-to-cart-button { color: var(--or) !important; }
.wc-block-components-radio-control__option, .wc-block-components-radio-control-accordion-option {
  border-color: var(--filet) !important;
  color: var(--creme);
}
.wc-block-components-panel__button, .wc-block-components-totals-coupon__button { color: var(--or) !important; }
.wc-block-components-quantity-selector { border-color: var(--filet) !important; border-radius: 999px; }
.wc-block-components-quantity-selector input { color: var(--creme); background: transparent; }
.wc-block-cart-items, .wc-block-cart-items td, .wc-block-cart-items th, .wc-block-components-totals-wrapper { border-color: var(--filet-doux) !important; }
.wc-block-cart-item__remove-link { color: var(--or) !important; }
.wc-block-components-product-metadata__description { font-size: 13.5px; }
.wc-block-components-order-summary-item__quantity { background: var(--or) !important; color: var(--nuit) !important; border: 0 !important; box-shadow: none !important; }
.wc-block-components-order-summary-item__image img { border-radius: 10px; }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { color: var(--or); font-family: var(--f-titre); font-weight: 200; }
.wc-block-components-validation-error { color: #E3A3A3; }

/* --- Mon espace --- */
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 40px; align-items: start; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 14px; border-radius: var(--r-carte); border: 1px solid var(--filet); background: var(--carte); }
.woocommerce-MyAccount-navigation li a { display: block; padding: 12px 16px; border-radius: 12px; font-size: 15px; color: var(--sable); transition: background .2s, color .2s; }
.woocommerce-MyAccount-navigation li a:hover { color: var(--creme); background: rgba(181, 150, 103, .08); }
.woocommerce-MyAccount-navigation li.is-active a { color: var(--nuit); background: var(--or); font-weight: 500; }
.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--filet-doux); }
.woocommerce-MyAccount-content { min-width: 0; padding: 36px 40px; border-radius: var(--r-carte); border: 1px solid var(--filet); background: linear-gradient(180deg, var(--carte-2), var(--carte)); }
.woocommerce-MyAccount-content h2 { font-size: 38px; margin-bottom: 18px; }
.woocommerce-MyAccount-content h3 { font-family: var(--f-texte); font-weight: 500; font-size: 17px; color: var(--or); margin: 28px 0 8px; }
.woocommerce-MyAccount-content a:not(.button):not(.espace-carte):not(.wp-block-button__link) { color: var(--or); border-bottom: 1px solid var(--filet); }
.woocommerce-MyAccount-content ul:not(.wc-block-components-list) { padding-left: 20px; }
.woocommerce-MyAccount-content li::marker { color: var(--or); }
.espace-accueil .script { font-size: 34px; line-height: 1; margin-bottom: 6px; }
.espace-cartes { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 26px; }
.espace-carte { display: block; padding: 22px 24px; border-radius: 18px; border: 1px solid var(--filet); background: rgba(20, 17, 16, .35); transition: border-color .25s, transform .25s; }
.espace-carte:hover { border-color: var(--or); transform: translateY(-2px); }
.espace-carte strong { display: block; font-family: var(--f-titre); font-weight: 300; font-size: 26px; color: var(--or); margin-bottom: 6px; }
.espace-carte span { font-size: 14.5px; color: var(--sable); line-height: 1.6; }
.espace-contenu .boutons { margin-top: 30px; }

/* tableaux (commandes, fichiers) */
.woocommerce-MyAccount-content table { width: 100%; border-collapse: collapse; font-size: 15px; }
.woocommerce-MyAccount-content th { text-align: left; font-weight: 500; font-size: 11.5px; letter-spacing: .2em; text-transform: uppercase; color: var(--or); padding: 10px 12px; border-bottom: 1px solid var(--filet); }
.woocommerce-MyAccount-content td { padding: 14px 12px; border-bottom: 1px solid var(--filet-doux); vertical-align: middle; }
.woocommerce-MyAccount-content .button, .woocommerce-account .woocommerce-Button, .woocommerce-account button.button, .woocommerce-account .woocommerce-form-login__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 22px;
  border-radius: 999px;
  border: 1px solid var(--or);
  background: transparent;
  color: var(--or);
  font-family: var(--f-texte);
  font-weight: 600;
  font-size: 11.5px;
  letter-spacing: .22em;
  text-transform: uppercase;
  cursor: pointer;
}
.woocommerce-account button[type="submit"], .woocommerce-account .woocommerce-form-login__submit { background: var(--or); color: var(--nuit); min-height: 52px; padding: 14px 30px; }

/* formulaires classiques (connexion, informations) */
.woocommerce-account form .form-row { margin: 0 0 18px; padding: 0; }
.woocommerce-account form label { display: block; margin-bottom: 8px; font-size: 11.5px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--or); }
.woocommerce-account form label.woocommerce-form__label-for-checkbox { display: flex; gap: 10px; align-items: center; text-transform: none; letter-spacing: 0; font-size: 14px; color: var(--sable); }
.woocommerce-account form .input-text, .woocommerce-account form input[type="email"], .woocommerce-account form input[type="password"], .woocommerce-account form input[type="text"] {
  width: 100%;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid var(--filet);
  background: rgba(20, 17, 16, .6);
  color: var(--creme);
  font-family: var(--f-texte);
  font-size: 16px;
  outline: none;
}
.woocommerce-account form .input-text:focus { border-color: var(--or); }
.woocommerce-account .required { color: var(--or); border: 0; text-decoration: none; }
.woocommerce-account fieldset { margin: 26px 0 0; padding: 22px; border-radius: 16px; border: 1px solid var(--filet-doux); }
.woocommerce-account legend { padding: 0 8px; color: var(--or); font-family: var(--f-titre); font-size: 22px; }

/* supprimer mon espace : lien discret, action en bordeaux */
.espace-suppression-lien { margin: 40px 0 0; padding-top: 24px; border-top: 1px solid var(--filet-doux); font-size: 14.5px; color: rgba(216, 195, 175, .7); }
.espace-suppression__formulaire { max-width: 460px; margin-top: 30px; }
.woocommerce-account .espace-suppression button[type="submit"] { background: var(--bordeaux); border-color: var(--bordeaux); color: var(--creme); }
.woocommerce-account .show-password-input { display: none; }
.woocommerce-account .lost_password a { color: var(--or); font-size: 14px; }
body.woocommerce-account:not(.logged-in) .woocommerce { display: block; max-width: 560px; }
body.woocommerce-account:not(.logged-in) .woocommerce-form-login {
  padding: 36px 40px;
  border-radius: var(--r-carte);
  border: 1px solid var(--or);
  background: linear-gradient(180deg, var(--carte-2), var(--carte));
}
body.woocommerce-account:not(.logged-in) h2 { font-size: 38px; margin-bottom: 22px; }

@media (max-width: 1080px) {
  .boutique__grille .wc-block-product-template { grid-template-columns: repeat(2, 1fr); }
  .produit__grille { grid-template-columns: 1fr; gap: 40px; }
  .produit__media { position: static; max-width: 560px; }
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  main.produit, main.boutique { padding: 120px 0 80px; }
  body.woocommerce-cart main, body.woocommerce-checkout main, body.woocommerce-account main { padding: 120px 16px 80px; }
  .boutique__grille .wc-block-product-template { grid-template-columns: 1fr; }
  .wp-block-navigation.boutique__filtres { width: calc(100% - 32px); margin-bottom: 40px; }
  .wp-block-navigation.boutique__filtres .wp-block-navigation__container { gap: 8px; }
  .wp-block-navigation.boutique__filtres .wp-block-navigation-item__content { padding: 10px 16px; font-size: 11.5px; letter-spacing: .14em; }
  .produit__infos form.cart { padding: 20px; }
  .woocommerce-MyAccount-content { padding: 26px 20px; }
  .espace-cartes { grid-template-columns: 1fr; }
  .woocommerce-MyAccount-content table { font-size: 14px; }
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login { padding: 26px 20px; }
}
