/*
Theme Name: Léabricots Nails School
Theme URI: https://lightcoral-wallaby-781425.hostingersite.com
Author: Mara Studio
Author URI: https://marastudio.fr
Description: Thème bloc sur mesure pour Léabricots Nails School — coachings privés en onglerie et nail art. Toutes les pages se modifient dans l'éditeur de blocs.
Version: 1.0.3
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: leabricots
Tags: block-theme, full-site-editing, one-column
*/

/* Couleurs et polices : les jetons reprennent la palette de Léabricots.
   Polices : "Barsika" pointe pour l'instant vers Bodoni Moda (remplacer
   assets/fonts/bodoni-moda*.woff2 par les fichiers Barsika le moment venu). */
:root{
  --nude:#f4d7c0;
  --chocolat:#402718;
  --acajou:#723f33;
  --camel:#c69c6d;
  --creme:#faf3ec;
  --papier:#fffaf5;
  --doux:#7a5a49;
  --ligne:rgba(64,39,24,.16);
  --titre:"Barsika","Bodoni Moda",Georgia,serif;
  --corps:"Glacial Indifference","Questrial",system-ui,sans-serif;
  --max:1240px;
  --gut:clamp(20px,4vw,56px);

  --i-fleche:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10'%3E%3Cpath d='M0 5h15M11 1l4 4-4 4' stroke='%23000' fill='none'/%3E%3C/svg%3E");
  --i-eclat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 0c.8 7.2 4.8 11.2 12 12-7.2.8-11.2 4.8-12 12-.8-7.2-4.8-11.2-12-12 7.2-.8 11.2-4.8 12-12z'/%3E%3C/svg%3E");
  --i-horloge:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.4'%3E%3Ccircle cx='8' cy='8' r='6.5'/%3E%3Cpath d='M8 4v4l3 2'/%3E%3C/svg%3E");
  --i-sac:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.4'%3E%3Cpath d='M3 6h10v8H3zM6 6V4a2 2 0 014 0v2'/%3E%3C/svg%3E");
  --i-duo:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.4'%3E%3Ccircle cx='5.5' cy='6' r='2.5'/%3E%3Ccircle cx='11' cy='6' r='2.5'/%3E%3Cpath d='M1.5 14c.5-3 2-4.5 4-4.5s3.5 1.5 4 4.5M8 11c.8-1 1.8-1.5 3-1.5 2 0 3.5 1.5 4 4.5'/%3E%3C/svg%3E");
  --i-insta:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.4'%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='.6'/%3E%3C/svg%3E");
  --i-lieu:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.3'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0119 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");
  --i-certif:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.1'%3E%3Crect x='6' y='8' width='36' height='26'/%3E%3Cpath d='M12 16h24M12 22h16'/%3E%3Ccircle cx='33' cy='34' r='6'/%3E%3Cpath d='M29 39l-2 7 6-3 6 3-2-7'/%3E%3C/svg%3E");
}

/* ===== Base ===== */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--creme);color:var(--chocolat);font-family:var(--corps);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--titre);font-weight:400;text-transform:uppercase;line-height:1.04;letter-spacing:.01em;hyphens:none;text-wrap:balance}
:where(.wp-block-group)>:where(*),:where(.wp-block-buttons){margin-block:0}
:where(.wp-site-blocks)>*{margin-block:0}
figure.wp-block-image{margin:0}
.wp-block-image img{height:auto}
.wp-block-image figcaption.wp-element-caption{margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut)}
.kicker{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--acajou);margin-bottom:18px;line-height:1.65}
.signature{font-family:var(--titre);font-style:italic;text-transform:none;letter-spacing:0}
:root .eclat-avant::before{content:"";display:block;width:20px;height:20px;background:var(--camel);-webkit-mask:var(--i-eclat) center/contain no-repeat;mask:var(--i-eclat) center/contain no-repeat}

/* ===== Boutons (core/buttons + core/button) ===== */
.wp-block-buttons.boutons,.wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px}
.wp-block-button.btn{margin:0;display:inline-flex}
.wp-block-button.btn .wp-block-button__link{display:inline-flex;align-items:center;gap:12px;font-family:var(--corps);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:15px 26px;border:1px solid currentColor;border-radius:0;background:transparent;color:inherit;line-height:1.65;white-space:nowrap;transition:background .25s,color .25s,border-color .25s}
.wp-block-button.btn--fleche .wp-block-button__link::after{content:"";width:16px;height:10px;flex:none;background:currentColor;-webkit-mask:var(--i-fleche) center/contain no-repeat;mask:var(--i-fleche) center/contain no-repeat;transition:transform .25s}
.wp-block-button.btn--fleche .wp-block-button__link:hover::after{transform:translateX(4px)}
.wp-block-button.btn--plein .wp-block-button__link{background:var(--nude);border-color:var(--nude);color:var(--chocolat)}
.wp-block-button.btn--plein .wp-block-button__link:hover{background:var(--papier);border-color:var(--papier)}
.wp-block-button.btn--fonce .wp-block-button__link{background:var(--chocolat);border-color:var(--chocolat);color:var(--creme)}
.wp-block-button.btn--fonce .wp-block-button__link:hover{background:var(--acajou);border-color:var(--acajou)}
.wp-block-button.btn--ligne .wp-block-button__link{color:var(--chocolat)}
.wp-block-button.btn--ligne .wp-block-button__link:hover{background:var(--chocolat);color:var(--creme);border-color:var(--chocolat)}
.wp-block-button.btn--ligne-clair .wp-block-button__link{color:var(--creme)}
.wp-block-button.btn--ligne-clair .wp-block-button__link:hover{background:var(--creme);color:var(--chocolat);border-color:var(--creme)}

/* ===== En-tête ===== */
.wp-site-blocks>header.wp-block-template-part{margin:0}
.entete{position:absolute;inset:0 0 auto 0;z-index:20;color:var(--creme)}
.admin-bar .entete{top:var(--wp-admin--admin-bar--height,32px)}
.entete__in{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:26px;padding-bottom:26px;border-bottom:1px solid rgba(250,243,236,.22)}
.entete .wp-block-site-logo img,.pied .wp-block-site-logo img{height:38px;width:auto}
.pied .wp-block-site-logo img{height:42px}
.wp-block-site-logo a{display:block}
.wp-block-navigation.nav{font-size:12px}
.wp-block-navigation.nav .wp-block-navigation__container{gap:34px}
.wp-block-navigation.nav .wp-block-navigation-item__content{font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;font-weight:700;opacity:.92;line-height:26.4px}
.wp-block-navigation.nav .wp-block-navigation-item__content:hover,.wp-block-navigation.nav .wp-block-navigation-item__content[aria-current="page"]{opacity:1;text-decoration:underline;text-underline-offset:6px}
.wp-block-navigation.nav .wp-block-navigation-item__content[aria-current="page"]{text-decoration-color:var(--nude)}
.wp-block-button.entete__cta .wp-block-button__link{display:inline-block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;text-decoration:none;border:1px solid rgba(250,243,236,.7);border-radius:999px;padding:11px 20px;color:var(--creme);background:transparent;line-height:1.65}
.wp-block-button.entete__cta .wp-block-button__link:hover{background:var(--creme);color:var(--chocolat)}
.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(--chocolat)!important;color:var(--creme)!important;padding:30px var(--gut)}
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:22px}
.wp-block-navigation.nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:14px}

/* ===== Hero ===== */
.hero{position:relative;background:var(--acajou) url("assets/img/zebre.webp") center/cover;color:var(--creme);padding:150px 0 0}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(64,39,24,.62) 0%,rgba(64,39,24,.38) 48%,rgba(64,39,24,.08) 100%)}
.hero__in{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:end}
.hero__texte{padding-bottom:120px}
.hero .kicker{color:var(--nude)}
.hero h1{font-size:clamp(44px,5.6vw,82px);margin-bottom:28px}
.hero h1 em,.bandeau h1 em{font-style:italic;text-transform:none;color:var(--nude)}
.hero h1 em{display:inline-block;font-size:1.22em;line-height:.95;letter-spacing:0;padding-bottom:.06em;background:linear-gradient(transparent 84%,rgba(198,156,109,.75) 84%,rgba(198,156,109,.75) 90%,transparent 90%)}
.hero .hero__intro{max-width:470px;font-size:17px;color:rgba(250,243,236,.92);margin-bottom:38px}
.hero .hero__materiel{display:inline-block;position:relative;font-size:15px;color:var(--creme);background:rgba(244,215,192,.16);border:1px solid rgba(244,215,192,.55);padding:12px 20px 12px 52px;margin:-14px 0 34px}
.hero .hero__materiel::before{content:"";position:absolute;left:20px;top:50%;width:18px;height:18px;margin-top:-9px;background:var(--nude);-webkit-mask:var(--i-eclat) center/contain no-repeat;mask:var(--i-eclat) center/contain no-repeat}
.hero__materiel strong{font-weight:700;letter-spacing:.04em}
.hero__visuel{position:relative;align-self:stretch;margin-bottom:-90px}
.hero__photo.wp-block-image{position:relative;height:100%;min-height:560px;border:10px solid var(--papier);box-shadow:0 30px 60px rgba(40,22,12,.35)}
.hero__photo.wp-block-image img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero__icone.wp-block-image{position:absolute;left:-64px;top:42px;width:128px;transform:rotate(-10deg);filter:drop-shadow(0 12px 18px rgba(40,22,12,.35))}
.hero__icone.wp-block-image img{width:100%}
.hero__sign{position:absolute;right:26px;bottom:24px;text-align:right;color:var(--creme);text-shadow:0 2px 14px rgba(40,22,12,.45)}
.hero__sign .signature{font-size:42px;line-height:1;display:block}
.hero__sign .hero__sign-sous{font-size:11px;letter-spacing:.32em;text-transform:uppercase;font-weight:700;line-height:1.65}

/* Titre « Et si on parlait de TON PROJET ? » : phrase en petite italique, « ton projet » en italique majuscule */
/* (:root pour passer devant .bandeau h1 et .contact h2, définis plus bas) */
:root h1.titre-projet,:root h2.titre-projet{font-style:italic;text-transform:none;letter-spacing:0;line-height:1.15}
:root h1.titre-projet{font-size:clamp(26px,2.8vw,40px)}
:root h2.titre-projet{font-size:clamp(22px,2.2vw,30px)}
:root .titre-projet em{display:block;font-style:italic;text-transform:uppercase;letter-spacing:.01em;line-height:1;margin-top:.12em}
:root h1.titre-projet em{font-size:clamp(54px,7.4vw,118px);color:var(--nude)}
:root h2.titre-projet em{font-size:clamp(46px,5.6vw,84px);color:var(--acajou)}

/* ===== Atouts ===== */
.atouts{background:var(--papier);border-bottom:1px solid var(--ligne);position:relative;z-index:1}
.atouts__in{display:grid;grid-template-columns:repeat(4,1fr);padding-top:46px;padding-bottom:46px}
.atout{display:grid;grid-template-columns:18px 1fr;column-gap:16px;align-items:start;padding:4px 30px;border-left:1px solid var(--ligne)}
.atout:first-child{border-left:0;padding-left:0}
.atout::before{content:"";grid-row:1/3;width:18px;height:18px;margin-top:2px;background:var(--camel);-webkit-mask:var(--i-eclat) center/contain no-repeat;mask:var(--i-eclat) center/contain no-repeat}
.atout .atout__titre{grid-column:2;display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;line-height:1.4;margin-bottom:4px;font-weight:700}
.atout .atout__texte{grid-column:2;font-size:14px;line-height:26.4px;color:var(--doux)}

/* ===== Ton niveau (collage) ===== */
.niveau{background:var(--nude);padding:150px 0 130px;overflow:hidden}
.niveau__in{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.collage{position:relative;height:540px}
.polaroid.wp-block-image{position:absolute;background:var(--papier);padding:12px 12px 40px;box-shadow:0 22px 44px rgba(64,39,24,.22)}
.polaroid.wp-block-image img{width:100%;height:100%;object-fit:cover}
.polaroid--1.wp-block-image{width:58%;height:66%;left:0;top:4%;transform:rotate(-6deg)}
.polaroid--2.wp-block-image{width:52%;height:60%;right:0;top:0;transform:rotate(5deg)}
.polaroid--3.wp-block-image{width:50%;height:56%;left:24%;bottom:0;transform:rotate(-1.5deg);z-index:2}
.polaroid.wp-block-image figcaption.wp-element-caption{position:absolute;left:0;right:0;bottom:10px;margin:0;text-align:center;font-family:var(--titre);font-style:italic;font-size:17px;line-height:1.65;color:var(--acajou)}
.niveau h2{font-size:clamp(34px,3.8vw,54px);margin-bottom:28px}
.niveau__texte>p:where(:not(.kicker)){max-width:500px;margin-bottom:18px;color:var(--chocolat)}
.niveau .accroche{font-family:var(--titre);font-style:italic;font-size:24px;line-height:1.35;margin:30px 0 36px;color:var(--acajou)}

/* ===== Formations (cartes de l'accueil) ===== */
.formations{padding:130px 0 150px}
.formations__tete{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:70px}
.formations h2{font-size:clamp(40px,5vw,72px)}
.formations__tete .formations__intro{max-width:380px;color:var(--doux)}
.cartes{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}
.carte{background:var(--papier);border:1px solid var(--ligne);padding:16px 16px 30px;display:flex;flex-direction:column}
.carte__img.wp-block-image{aspect-ratio:4/3.4;overflow:hidden;margin-bottom:26px}
.carte__img.wp-block-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.carte:hover .carte__img img{transform:scale(1.04)}
.carte__corps{padding:0 10px;display:flex;flex-direction:column;flex:1}
.carte .kicker{margin-bottom:8px}
.carte h3{font-size:28px;margin-bottom:14px}
.carte .carte__texte{font-size:15px;line-height:1.55;color:var(--doux);margin-bottom:22px}
.carte__meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--doux);border-top:1px solid var(--ligne);padding-top:16px;margin-bottom:20px}
.carte__meta .meta{display:inline-flex;align-items:center;gap:7px;font-size:13px}
.carte__meta .meta::before{content:"";width:15px;height:15px;flex:none;background:currentColor;-webkit-mask:var(--i-horloge) center/contain no-repeat;mask:var(--i-horloge) center/contain no-repeat}
.carte__meta .meta--materiel::before{-webkit-mask-image:var(--i-sac);mask-image:var(--i-sac)}
.carte__meta .meta--duo::before{-webkit-mask-image:var(--i-duo);mask-image:var(--i-duo)}
.carte .carte__prix{font-family:var(--titre);font-size:40px;line-height:1;margin-bottom:24px}
.carte__prix em{font-family:var(--corps);font-style:normal;font-size:13px;letter-spacing:.04em;color:var(--doux);margin-left:6px}
.carte__corps>.wp-block-buttons{margin-top:auto}
.wp-block-button.btn--bloc{display:flex;width:100%}
.wp-block-button.btn--bloc .wp-block-button__link{width:100%;justify-content:center}
.carte--star{background:var(--chocolat);color:var(--creme);border-color:var(--chocolat);transform:translateY(-36px);box-shadow:0 34px 60px rgba(64,39,24,.28);position:relative}
.carte--star .kicker{color:var(--camel)}
.carte--star .carte__texte,.carte--star .carte__meta,.carte--star .carte__prix em{color:rgba(250,243,236,.78)}
.carte--star .carte__meta{border-color:rgba(250,243,236,.2)}
.badge{position:absolute;top:30px;left:30px;background:var(--nude);color:var(--chocolat);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;padding:8px 14px;z-index:2;line-height:1.65}

/* ===== Étapes ===== */
.etapes{background:var(--acajou);color:var(--creme);padding:130px 0;position:relative}
.etapes__in{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center}
.etapes .kicker{color:var(--nude)}
.etapes h2{font-size:clamp(36px,4.2vw,60px);margin-bottom:54px}
.etape{display:grid;grid-template-columns:76px 1fr;gap:10px;padding:24px 0;border-top:1px solid rgba(250,243,236,.2)}
.etape:last-of-type{border-bottom:1px solid rgba(250,243,236,.2)}
.etape .etape__num{font-family:var(--titre);font-size:40px;line-height:1;color:var(--nude)}
.etape h3{font-size:20px;letter-spacing:.04em;margin-bottom:6px}
.etape__corps p{font-size:15px;color:rgba(250,243,236,.8)}
.etapes .etapes__note{margin-top:30px;font-size:13px;color:rgba(250,243,236,.65);max-width:560px}
.etapes__visuel{position:relative}
.etapes__photo.wp-block-image{border:10px solid var(--papier);box-shadow:0 30px 60px rgba(30,14,8,.35);aspect-ratio:4/5;overflow:hidden}
.etapes__photo.wp-block-image img{width:100%;height:100%;object-fit:cover}
.etapes__carte{position:absolute;left:-60px;bottom:-40px;background:var(--creme);color:var(--acajou);padding:26px 30px;transform:rotate(-3deg);box-shadow:0 20px 40px rgba(30,14,8,.3);max-width:260px}
.etapes__carte .signature{font-size:27px;line-height:1.2}

/* ===== À propos (accueil) ===== */
.apropos{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--papier)}
.apropos__photo.wp-block-image,.histoire__photo.wp-block-image{position:relative;overflow:hidden}
.apropos__photo.wp-block-image img,.histoire__photo.wp-block-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.apropos__texte{padding:110px var(--gut) 110px clamp(40px,7vw,110px);display:flex;flex-direction:column;justify-content:center;max-width:680px}
.apropos h2{font-size:clamp(36px,4vw,58px);margin-bottom:30px}
.apropos__texte>p:where(:not(.kicker)){margin-bottom:18px;color:var(--doux)}
.apropos__texte p strong{color:var(--chocolat);font-weight:400}
.apropos__sign{margin:22px 0 36px}
.apropos__sign .signature{font-size:48px;line-height:1;color:var(--acajou);display:block}
.apropos__sign .apropos__sign-sous{font-size:13px;line-height:26.4px;color:var(--doux)}
.apropos__texte>.wp-block-buttons{display:block}

/* ===== Citation ===== */
.citation{position:relative;background:var(--acajou) url("assets/img/zebre.webp") center 30%/cover;color:var(--creme);padding:120px 0}
.citation::before{content:"";position:absolute;inset:0;background:rgba(64,39,24,.28)}
.citation__in{position:relative;display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}
.citation .citation__quote{font-family:var(--titre);font-style:italic;font-size:clamp(28px,3.4vw,48px);line-height:1.22;max-width:780px;text-wrap:balance;text-shadow:0 2px 20px rgba(40,22,12,.35);border:0;padding:0;margin:0}
.citation .citation__quote p{font:inherit;text-wrap:balance}
.citation .citation__quote cite{display:block;font-family:var(--corps);font-style:normal;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;margin-top:26px;color:var(--nude);line-height:1.22}
.citation__photo.wp-block-image{width:300px;aspect-ratio:3/4;border:10px solid var(--papier);transform:rotate(4deg);margin:-200px 0;box-shadow:0 24px 40px rgba(30,14,8,.3);overflow:hidden}
.citation__photo.wp-block-image img{width:100%;height:100%;object-fit:cover}

/* ===== Galerie (accueil) ===== */
.galerie{padding:150px 0 120px}
.galerie__tete{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}
.galerie h2{font-size:clamp(36px,4.4vw,64px)}
.galerie__grille{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:300px 300px;gap:14px}
.galerie__grille>figure.wp-block-image{overflow:hidden;position:relative}
.galerie__grille>figure:first-child{grid-row:span 2}
.galerie__grille>figure.wp-block-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.galerie__grille>figure:hover img{transform:scale(1.05)}

/* ===== FAQ ===== */
.faq{background:var(--papier);padding:130px 0;border-top:1px solid var(--ligne)}
.faq__tete{text-align:center;margin-bottom:64px}
.faq__tete h2{font-size:clamp(36px,4.4vw,64px);margin-bottom:12px}
.faq__tete>p:where(:not(.kicker)){color:var(--doux)}
.faq__in{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:start}
.faq details.wp-block-details{border-bottom:1px solid var(--ligne);margin:0}
.faq details.wp-block-details:first-child{border-top:1px solid var(--ligne)}
.faq details.wp-block-details summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:17px;font-weight:700}
.faq details summary::-webkit-details-marker{display:none}
.faq details summary::after{content:"+";font-family:var(--titre);font-size:28px;line-height:1;font-weight:400;color:var(--acajou);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details.wp-block-details>p{padding:0 50px 26px 0;color:var(--doux);margin:0}
.faq__liste .faq__plus{margin-top:34px}
.faq__visuel{position:relative;margin-top:10px}
.faq__photo.wp-block-image{border:10px solid var(--creme);box-shadow:0 26px 50px rgba(64,39,24,.2);transform:rotate(2.5deg);aspect-ratio:4/5;overflow:hidden}
.faq__photo.wp-block-image img{width:100%;height:100%;object-fit:cover}
.faq__visuel .faq__note{position:absolute;right:-18px;bottom:-34px;transform:rotate(-4deg);font-size:26px;color:var(--acajou);background:var(--nude);padding:14px 22px;line-height:1.15}

/* ===== Contact (bandeau) ===== */
.contact{background:var(--nude);display:grid;grid-template-columns:1.1fr .9fr}
.contact__texte{padding:120px var(--gut) 120px max(var(--gut),calc((100vw - var(--max))/2 + var(--gut)))}
.contact h2{font-size:clamp(36px,4.2vw,62px);margin-bottom:28px;max-width:600px}
.contact__texte>p:where(:not(.kicker)){max-width:520px;margin-bottom:16px}
.contact__texte .contact__sign,.contact-page__texte .contact__sign{font-size:26px;color:var(--acajou);margin:26px 0 16px}
.contact__tigre{position:relative;background:url("assets/img/zebre.webp") center/cover;display:grid;place-items:center;min-height:420px}
.contact__icone.wp-block-image{width:min(52%,260px);filter:drop-shadow(0 20px 30px rgba(30,14,8,.45));transform:rotate(-8deg)}
.contact__icone.wp-block-image img{width:100%}

/* ===== Pied de page ===== */
.wp-site-blocks>footer.wp-block-template-part{margin:0}
.pied{background:var(--chocolat);color:rgba(250,243,236,.85);padding:70px 0 30px}
.pied__haut{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;padding-bottom:46px;border-bottom:1px solid rgba(250,243,236,.14)}
.pied .wp-block-navigation.nav{color:var(--creme)}
.pied .pied__reseau{display:flex;align-items:center;gap:10px;font-size:14px}
.pied .pied__reseau::before{content:"";width:20px;height:20px;flex:none;background:currentColor;-webkit-mask:var(--i-insta) center/contain no-repeat;mask:var(--i-insta) center/contain no-repeat}
.pied .pied__reseau a{text-decoration:none}
.pied__bas{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:26px;font-size:13px;color:rgba(250,243,236,.6)}

/* ======================= Pages internes ======================= */

/* Bandeau de page (fond tigre) */
.bandeau{position:relative;background:var(--acajou) url("assets/img/zebre.webp") center 40%/cover;color:var(--creme);padding:190px 0 96px}
.bandeau::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(64,39,24,.6) 0%,rgba(64,39,24,.3) 60%,rgba(64,39,24,.12) 100%)}
.bandeau__in{position:relative}
.bandeau .kicker{color:var(--nude)}
.bandeau h1{font-size:clamp(46px,6.4vw,96px);margin-bottom:22px;max-width:900px}
.bandeau .bandeau__texte{max-width:520px;font-size:17px;color:rgba(250,243,236,.9)}
.bandeau--centre{text-align:center}
.bandeau--centre::before{background:rgba(64,39,24,.4)}
.bandeau--centre h1,.bandeau--centre .bandeau__texte{margin-left:auto;margin-right:auto}

/* À propos */
.histoire{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--papier)}
.histoire__photo.wp-block-image{min-height:720px}
.histoire__texte{padding:110px var(--gut) 110px clamp(40px,7vw,110px);max-width:720px}
.histoire h2{font-size:clamp(34px,3.8vw,54px);margin-bottom:30px}
.histoire__texte>p:where(:not(.kicker)){margin-bottom:18px;color:var(--doux)}
.histoire .lead{font-size:19px;color:var(--chocolat)}

.vision{background:var(--nude);padding:130px 0;overflow:hidden}
.vision__in{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.vision h2{font-size:clamp(34px,3.8vw,54px);margin-bottom:30px}
.vision__texte>p:where(:not(.kicker)){margin-bottom:16px;color:var(--chocolat);max-width:540px}
.vision .vision__phrase{font-family:var(--titre);font-style:italic;font-size:clamp(26px,2.6vw,36px);line-height:1.28;color:var(--acajou);margin-bottom:34px;max-width:none;text-wrap:balance}
.vision__visuel{position:relative;height:560px}
.vision__visuel .polaroid--1.wp-block-image{width:66%;height:78%;left:4%;top:2%;transform:rotate(-4deg)}
.vision__visuel .polaroid--2.wp-block-image{width:52%;height:58%;right:0;top:auto;bottom:0;transform:rotate(6deg)}

.piliers{padding:120px 0;background:var(--creme)}
.piliers__grille{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ligne)}
.pilier{padding:46px 40px 10px 0}
.pilier+.pilier{padding-left:40px;border-left:1px solid var(--ligne)}
.pilier .signature{display:block;font-size:44px;line-height:1;color:var(--acajou);margin-bottom:18px}
.pilier h3{font-size:22px;letter-spacing:.04em;margin-bottom:12px}
.pilier>p:where(:not(.signature)){color:var(--doux);font-size:15px}

.formations--mini{padding:90px 0;border-top:1px solid var(--ligne)}
.formations--mini .formations__tete{margin-bottom:0;align-items:center}
.formations--mini h2{font-size:clamp(32px,3.6vw,50px)}

/* Formations */
.pourquoi{padding:120px 0 110px;background:var(--creme)}
.pourquoi__tete{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:64px}
.pourquoi h2{font-size:clamp(34px,4vw,58px)}
.pourquoi__intro p{color:var(--doux);margin-bottom:12px}
.pourquoi__grille{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.raison{background:var(--papier);border:1px solid var(--ligne);padding:32px 30px 34px}
.raison::before{content:"";display:block;width:20px;height:20px;margin-bottom:22px;background:var(--camel);-webkit-mask:var(--i-eclat) center/contain no-repeat;mask:var(--i-eclat) center/contain no-repeat}
.raison .raison__titre{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;font-weight:700}
.raison .raison__texte{font-size:14px;line-height:26.4px;color:var(--doux)}
.raison--materiel{background:var(--chocolat);border-color:var(--chocolat);color:var(--creme)}
.raison--materiel::before{background:var(--nude)}
.raison.raison--materiel .raison__titre{color:var(--nude)}
.raison.raison--materiel .raison__texte{color:rgba(250,243,236,.8)}

.formule{padding:120px 0;scroll-margin-top:20px}
.formule--papier{background:var(--papier)}
.formule__in{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
.formule--inverse .formule__in{grid-template-columns:1.1fr .9fr}
.formule--inverse .formule__visuel{order:2}
.formule__visuel{position:sticky;top:40px}
.formule__photo.wp-block-image{border:10px solid var(--papier);box-shadow:0 30px 60px rgba(64,39,24,.22);aspect-ratio:4/5;overflow:hidden}
.formule__photo.wp-block-image img{width:100%;height:100%;object-fit:cover}
.formule__visuel .badge{top:-14px;left:-14px}
.formule h2{font-size:clamp(36px,4.4vw,62px);margin-bottom:14px}
.formule .formule__accroche{font-family:var(--titre);font-style:italic;font-size:24px;line-height:1.3;color:var(--doux);margin-bottom:14px;max-width:600px}
.formule__meta{display:flex;flex-wrap:wrap;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne);margin-bottom:32px}
.formule__meta .meta-bloc{padding:18px 30px 18px 0;margin-right:30px;border-right:1px solid var(--ligne)}
.formule__meta .meta-bloc:last-child{border-right:0;margin-right:0}
.meta-bloc .meta-bloc__label{display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--doux);line-height:1.65}
.meta-bloc .meta-bloc__valeur{font-family:var(--titre);font-weight:400;font-size:30px;line-height:38px}
.formule h3{font-size:17px;letter-spacing:.08em;margin:34px 0 16px}
.formule__texte>p:where(:not(.kicker):not(.formule__accroche)){color:var(--doux);margin-bottom:14px;max-width:600px}
.formule .formule__note{font-size:14px;font-style:italic;margin-top:24px}
ul.programme{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 34px;max-width:640px;padding:0}
ul.programme li{position:relative;padding:11px 0 11px 22px;border-bottom:1px solid var(--ligne);font-size:15px}
ul.programme li::before{content:"";position:absolute;left:2px;top:19px;width:7px;height:7px;background:var(--camel);transform:rotate(45deg)}
.formule__actions{margin-top:34px}
.conseil{margin-top:30px;padding:22px 26px;border-left:2px solid var(--camel);background:rgba(198,156,109,.12);max-width:600px}
.conseil .conseil__titre{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px;font-weight:700}
.formule--star{background:var(--acajou);color:var(--creme)}
.formule--star .kicker,.formule--star .formule__accroche{color:var(--nude)}
.formule--star .formule__texte>p:where(:not(.kicker):not(.formule__accroche)),.formule--star .meta-bloc__label{color:rgba(250,243,236,.8)}
.formule--star .formule__meta,.formule--star .formule__meta .meta-bloc,.formule--star ul.programme li{border-color:rgba(250,243,236,.2)}
.formule--star .formule__photo.wp-block-image{box-shadow:0 30px 60px rgba(30,14,8,.4)}
.formule--star .conseil{background:rgba(244,215,192,.12);border-color:var(--nude)}

.tarifs{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:640px;margin-top:6px}
.tarif{border:1px solid var(--ligne);padding:22px 24px;background:var(--creme)}
.tarif .tarif__label{display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--doux);margin-bottom:6px}
.tarif .tarif__prix{display:block;font-family:var(--titre);font-size:34px;line-height:1.1;margin-bottom:8px}
.tarif__prix em{font-family:var(--corps);font-style:normal;font-size:14px;letter-spacing:.04em;color:var(--doux)}
.tarif .tarif__texte{font-size:14px;line-height:26.4px;color:var(--doux)}

.certificat{background:var(--creme);border-top:1px solid var(--ligne);padding:56px 0}
.certificat__in{display:flex;gap:26px;align-items:center}
.certificat__in::before{content:"";width:44px;height:44px;flex:none;background:var(--acajou);-webkit-mask:var(--i-certif) center/contain no-repeat;mask:var(--i-certif) center/contain no-repeat}
.certificat__in p{color:var(--doux);font-size:15px;max-width:830px}
.certificat__in strong{color:var(--chocolat)}

/* Galerie */
.mosaique-wrap{padding:90px 0 120px}
.filtres{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:44px}
.filtres .filtre{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--chocolat);border:1px solid var(--ligne);border-radius:999px;padding:11px 20px;cursor:pointer;transition:all .2s;line-height:1.2;user-select:none}
.filtres .filtre:hover{border-color:var(--chocolat)}
.filtres .filtre.actif{background:var(--chocolat);color:var(--creme);border-color:var(--chocolat)}
.mosaique{columns:3;column-gap:18px}
.mosaique>figure.wp-block-image{break-inside:avoid;margin:0 0 18px;position:relative;overflow:hidden;background:var(--papier);display:block}
.mosaique>figure.masque{display:none}
.mosaique>figure.wp-block-image img{width:100%;height:auto;transition:transform .7s}
.mosaique>figure:hover img{transform:scale(1.04)}
.mosaique>figure.cadre-portrait img{aspect-ratio:4/5;object-fit:cover;object-position:50% 50%}
.mosaique>figure.wp-block-image figcaption.wp-element-caption{position:absolute;left:14px;bottom:14px;margin:0;background:var(--creme);color:var(--chocolat);padding:8px 14px;font-family:var(--titre);font-style:italic;font-size:17px;line-height:1.2}
.insta{background:var(--papier);border-top:1px solid var(--ligne);padding:100px 0}
.insta__in{display:grid;grid-template-columns:auto 1fr auto;gap:50px;align-items:center}
.insta__badge{display:grid;place-items:center;width:150px;height:150px;border-radius:50%;background:url("assets/img/zebre.webp") center/cover;box-shadow:0 18px 34px rgba(64,39,24,.25)}
.insta__icone.wp-block-image{width:92px;transform:rotate(-8deg);filter:drop-shadow(0 8px 12px rgba(30,14,8,.4))}
.insta h2{font-size:clamp(30px,3.4vw,48px);margin-bottom:10px}
.insta__texte p{color:var(--doux)}

/* FAQ page */
.faq--page{border-top:0;padding-top:110px}
.faq__aside{position:sticky;top:40px}

/* Contact page */
.contact-page{padding:110px 0 130px}
.contact-page__in{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}
.contact-page h2{font-size:clamp(34px,3.8vw,54px);margin-bottom:26px}
.contact-page__texte>p:where(:not(.kicker)){color:var(--doux);margin-bottom:16px;max-width:480px}
.coord{margin:36px 0;border-top:1px solid var(--ligne)}
.coord__item{display:grid;grid-template-columns:22px 1fr;column-gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--ligne)}
.coord__item::before{content:"";grid-row:1/3;width:22px;height:22px;background:var(--acajou);-webkit-mask:var(--i-insta) center/contain no-repeat;mask:var(--i-insta) center/contain no-repeat}
.coord--lieu::before{-webkit-mask-image:var(--i-lieu);mask-image:var(--i-lieu)}
.coord__item .coord__label{grid-column:2;display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--doux)}
.coord__item .coord__valeur{grid-column:2;font-size:16px}
.coord__valeur a{text-decoration:none}
.ensuite{background:var(--nude);padding:30px 32px;margin-top:10px}
.ensuite .ensuite__titre{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px;font-weight:700}
ol.ensuite__liste{list-style:none;counter-reset:e;padding:0}
ol.ensuite__liste li{counter-increment:e;display:grid;grid-template-columns:40px 1fr;padding:8px 0;font-size:15px}
ol.ensuite__liste li::before{content:"0" counter(e);font-family:var(--titre);font-size:22px;line-height:1.1;color:var(--acajou)}

.formulaire{background:var(--papier);border:1px solid var(--ligne);padding:48px;box-shadow:0 30px 60px rgba(64,39,24,.08);position:relative}
.formulaire::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid var(--camel);z-index:-1}
.formulaire h3{font-size:26px;margin-bottom:8px}
.formulaire .formulaire__intro{font-size:15px;color:var(--doux);margin-bottom:30px}
.formulaire .rgpd{font-size:13px;color:var(--doux);margin:18px 0 0}
/* Contact Form 7 */
.formulaire .wpcf7 form{margin:0}
.champs{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.champ{display:flex;flex-direction:column;gap:8px;min-width:0}
.champ--plein{grid-column:1/-1}
.champ>label,.champ .champ__legende{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;line-height:1.65}
.champ .champ__legende{margin-bottom:-8px}
.formulaire .wpcf7-form-control-wrap{display:block}
.formulaire input[type=text],.formulaire input[type=email],.formulaire input[type=tel],.formulaire select,.formulaire textarea{display:block;font-family:var(--corps);font-size:16px;line-height:normal;color:var(--chocolat);background:var(--creme);border:1px solid var(--ligne);border-radius:0;padding:14px 16px;width:100%}
.formulaire textarea{min-height:150px;height:150px;resize:vertical}
.formulaire input:focus,.formulaire select:focus,.formulaire textarea:focus{outline:2px solid var(--camel);outline-offset:1px;border-color:var(--camel)}
.formulaire .wpcf7-radio{display:flex;flex-wrap:wrap;gap:10px}
.formulaire .wpcf7-list-item{margin:0}
.formulaire .wpcf7-list-item label{font-size:14px;border:1px solid var(--ligne);padding:10px 16px;cursor:pointer;display:inline-flex;gap:8px;align-items:center;background:var(--creme)}
.formulaire .wpcf7-list-item input{accent-color:var(--acajou)}
.formulaire .wpcf7-submit{margin-top:30px;cursor:pointer;font-family:var(--corps);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:normal;padding:15px 54px 15px 26px;border:1px solid var(--chocolat);border-radius:0;color:var(--creme);background:var(--chocolat) var(--i-fleche-clair,none) no-repeat right 26px center/16px 10px;transition:background-color .25s}
.formulaire .wpcf7-submit{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10'%3E%3Cpath d='M0 5h15M11 1l4 4-4 4' stroke='%23faf3ec' fill='none'/%3E%3C/svg%3E")}
.formulaire .wpcf7-submit:hover{background-color:var(--acajou);border-color:var(--acajou)}
.formulaire .wpcf7-spinner{display:none}
.formulaire .wpcf7-not-valid-tip{font-size:13px;color:var(--acajou);margin-top:6px}
.formulaire .wpcf7 form .wpcf7-response-output{margin:20px 0 0;padding:16px 20px;border:0;background:var(--nude);font-size:15px}

/* Accessibilité */
.wp-block-button__link:focus-visible,.filtre:focus-visible,.faq summary:focus-visible,.wp-block-navigation-item__content:focus-visible{outline:2px solid var(--camel);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ======================= Responsive ======================= */
@media (max-width:1080px){
  .wp-block-navigation.nav .wp-block-navigation__container{gap:22px}
  .atouts__in{grid-template-columns:repeat(2,1fr);gap:26px 0}
  .atout:nth-child(3){border-left:0;padding-left:0}
  .hero__visuel{margin-bottom:-60px}
  ul.programme{grid-template-columns:1fr}
}
@media (max-width:900px){
  /* Menu burger dès 900px (le bloc Navigation bascule par défaut à 600px) */
  .entete .wp-block-navigation.nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
  .entete .wp-block-navigation.nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
  .entete .entete__cta-wrap{display:none}
  .entete .wp-block-navigation.nav .wp-block-navigation__responsive-container-open{width:40px;height:40px;align-items:center;justify-content:center}
  .hero{padding-top:120px;z-index:2}
  .hero__in{grid-template-columns:1fr;gap:40px}
  .hero__texte{padding-bottom:0}
  .hero__visuel{margin:0 0 -70px 34px}
  .hero__photo.wp-block-image{min-height:420px}
  .hero__icone.wp-block-image{left:-40px;width:96px}
  .atouts__in{padding-top:110px}
  .niveau{padding:100px 0}
  .niveau__in,.etapes__in,.faq__in{grid-template-columns:1fr;gap:60px}
  .collage{height:420px}
  .formations__tete,.galerie__tete{flex-direction:column;align-items:flex-start}
  .cartes{grid-template-columns:1fr;gap:28px}
  .carte--star{transform:none}
  .etapes__visuel{margin:0 0 30px 40px}
  .etapes__carte{left:-40px}
  .apropos{grid-template-columns:1fr}
  .apropos__photo.wp-block-image{min-height:460px}
  .apropos__texte{padding:80px var(--gut)}
  .citation__in{grid-template-columns:1fr}
  .citation__photo.wp-block-image{margin:0;width:220px;justify-self:end}
  .galerie__grille{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,200px)}
  .galerie__grille>figure:first-child{grid-row:span 1}
  .galerie__grille>figure:last-child{grid-column:span 2}
  .faq__visuel{max-width:340px;margin:0 auto 30px}
  .contact{grid-template-columns:1fr}
  .contact__texte{padding:90px var(--gut)}
  .contact__tigre{min-height:320px}
  .pied .wp-block-navigation.nav .wp-block-navigation__container{flex-wrap:wrap;gap:16px 24px}

  .bandeau{padding:150px 0 70px}
  .histoire,.vision__in,.formule__in,.formule--inverse .formule__in,.contact-page__in,.pourquoi__tete{grid-template-columns:1fr;gap:50px}
  .histoire__photo.wp-block-image{min-height:480px}
  .histoire__texte{padding:80px var(--gut)}
  .vision{padding:90px 0}
  .vision__visuel{height:420px}
  .piliers__grille{grid-template-columns:1fr}
  .pilier,.pilier+.pilier{padding:34px 0;border-left:0;border-bottom:1px solid var(--ligne)}
  .pourquoi__grille{grid-template-columns:1fr 1fr}
  .formule{padding:90px 0}
  .formule--inverse .formule__visuel{order:0}
  .formule__visuel{position:relative;top:0;max-width:420px;margin-left:14px}
  .tarifs{grid-template-columns:1fr}
  .mosaique{columns:2;column-gap:12px}
  .mosaique>figure.wp-block-image{margin-bottom:12px}
  .insta__in{grid-template-columns:1fr;gap:28px}
  .faq__aside{position:relative;top:0}
  .formulaire{padding:30px 22px}
  .formulaire::before{display:none}
  .champs{grid-template-columns:1fr}
}
@media (max-width:520px){
  .atouts__in{grid-template-columns:1fr}
  .atout{border-left:0;padding-left:0}
  .hero h1{font-size:40px}
  .wp-block-button.btn .wp-block-button__link{padding:14px 20px}
  .faq details.wp-block-details>p{padding-right:0}
  .pourquoi__grille{grid-template-columns:1fr}
  .formule__meta .meta-bloc{padding:14px 18px 14px 0;margin-right:18px}
  .mosaique>figure.wp-block-image figcaption.wp-element-caption{font-size:14px;left:8px;bottom:8px;padding:6px 10px}
}
