/*
Theme Name: Architek
Theme URI: https://architek-bordeaux.com
Author: Architek
Author URI: https://architek-bordeaux.com
Description: Theme bloc sur mesure du cabinet d'architecture Architek, Bordeaux. Chaque section est composee de blocs natifs, editable dans Gutenberg.
Version: 1.0.4
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: architek
Tags: block-theme, full-site-editing, portfolio, business, one-column
*/

/*
Theme Name: Architek
Theme URI: https://architek.fr
Author: Architek
Description: Thème bloc sur mesure — cabinet d'architecture à Bordeaux. Registre : serif Newsreader + grotesque Instrument Sans, une seule couleur non neutre (sauge pâle), bandes pleine largeur, géométrie d'arcs.
Version: 1.0.4
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: architek
Tags: block-theme, full-site-editing, one-column
*/

/* ==========================================================================
   Jetons
   ========================================================================== */
:root{
  --encre:#1A1A17;
  --encre-2:#232320;
  --encre-3:#2C2C27;
  --papier:#EFEDE8;
  --papier-2:#E6E3DB;
  --sauge:#DEE2C1;
  --sauge-2:#D2D7B0;
  --plume:#6B6B62;
  --cendre:#8C8C83;
  --filet:#D5D2C9;
  --filet-nuit:#33332D;

  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --sans:'Instrument Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

  --marge:clamp(16px,4.4vw,68px);
  --bande:clamp(76px,8.4vw,148px);
  --r:3px;
  --coin:clamp(28px,4vw,58px);
}

/* ==========================================================================
   Base
   ========================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--papier);color:var(--encre);
  font:400 13px/1.72 var(--sans);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p,figure,ul,blockquote{margin:0}
ul{padding:0;list-style:none}
button{font:inherit}

/* Neutralisation de l'espacement Gutenberg — à spécificité NULLE, pour ne pas
   écraser les marges du design. Le vrai réglage est blockGap:"0px" dans theme.json. */
:where(.wp-block-group) > :where(*),
:where(.wp-block-buttons){margin-block:0}
:where(figure.wp-block-image){margin:0}
.wp-block-image img{display:block;height:auto}

/* ----- échelle typographique ------------------------------------------- */
.h-xl{
  font:300 clamp(2.45rem,5.2vw,4.6rem)/1.045 var(--serif);
  letter-spacing:-.024em;hyphens:none;text-wrap:balance;
}
.h-l{
  font:300 clamp(1.9rem,3.5vw,3.05rem)/1.1 var(--serif);
  letter-spacing:-.019em;hyphens:none;text-wrap:balance;
}
.h-m{font:400 clamp(1.25rem,1.7vw,1.6rem)/1.2 var(--serif);letter-spacing:-.014em}
.h-s{font:400 1.0625rem/1.35 var(--serif);letter-spacing:-.008em}
.tx{font-size:.8125rem;line-height:1.78;color:var(--plume);max-width:52ch}

.mention{
  display:inline-flex;align-items:center;gap:9px;
  font-size:.6875rem;letter-spacing:.085em;color:var(--plume);
}
.mention::before{
  content:'';width:9px;height:9px;flex:none;
  background:currentColor;border-radius:9px 0 9px 0;
}

.nuit{background:var(--encre);color:var(--papier)}
.nuit .tx{color:var(--cendre)}
.nuit .mention{color:var(--cendre)}
.nuit .h-s,.nuit .h-m,.nuit .h-l,.nuit .h-xl{color:var(--papier)}

/* ----- icônes en masque (substitution des SVG inline) ------------------- */
.carte::before,.critere::before,.marque::before,.pied-marque::before{
  content:'';display:block;flex:none;
  background-color:currentColor;
  -webkit-mask:var(--icone) center/contain no-repeat;
          mask:var(--icone) center/contain no-repeat;
}
.carte::before{height:34px;width:calc(34px * var(--ratio));color:var(--encre);margin-bottom:auto}
.critere::before{width:19px;height:19px;margin-top:3px;color:var(--encre)}
.nuit .critere::before{color:var(--papier)}
.marque::before{height:17px;width:calc(17px * var(--ratio));color:currentColor}
.pied-marque::before{height:clamp(34px,5vw,64px);width:calc(clamp(34px,5vw,64px) * var(--ratio));color:var(--sauge)}

/* ==========================================================================
   Boutons — la classe de core/button atterrit sur le CONTENEUR
   ========================================================================== */
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}
.wp-block-button.btn{display:inline-block;background:none;border:0;padding:0;border-radius:0}
.wp-block-button.btn::after{content:none}
.wp-block-button.btn .wp-block-button__link{
  display:inline-flex;align-items:center;gap:11px;
  padding:13px 23px 13px 25px;border:0;border-radius:999px;cursor:pointer;
  background:var(--encre);color:var(--papier);
  font:400 .75rem/1 var(--sans);letter-spacing:.012em;
  transition:background .25s ease;
}
.wp-block-button.btn .wp-block-button__link::after{
  content:'';width:8px;height:8px;flex:none;
  background:currentColor;border-radius:8px 0 8px 0;opacity:.7;
  transition:transform .3s ease;
}
.wp-block-button.btn .wp-block-button__link:hover{background:var(--encre-3)}
.wp-block-button.btn .wp-block-button__link:hover::after{transform:rotate(90deg)}
.wp-block-button.btn--clair .wp-block-button__link{background:var(--papier);color:var(--encre)}
.wp-block-button.btn--clair .wp-block-button__link:hover{background:#fff}
.wp-block-button.btn--sauge .wp-block-button__link{background:var(--sauge);color:var(--encre)}
.wp-block-button.btn--sauge .wp-block-button__link:hover{background:var(--sauge-2)}

/* ==========================================================================
   Barre de navigation — hors du hero, posée en absolu sur le document
   ========================================================================== */
/* Le verre est porté par un pseudo-élément, PAS par .barre elle-même :
   backdrop-filter fait de son porteur le bloc conteneur des descendants en
   position:fixed, ce qui enfermait le panneau mobile du bloc navigation
   dans la barre au lieu de le laisser couvrir l'écran. */
.barre{
  position:absolute;z-index:40;top:clamp(12px,1.6vw,22px);
  left:var(--marge);right:var(--marge);
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:9px 9px 9px 22px;border-radius:999px;
  color:var(--papier);
}
.barre::before{
  content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;
  background:rgba(22,22,19,.62);
  backdrop-filter:blur(16px) saturate(1.2);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
}
body.admin-bar .barre{top:calc(clamp(12px,1.6vw,22px) + 32px)}
@media (max-width:782px){body.admin-bar .barre{top:calc(clamp(12px,1.6vw,22px) + 46px)}}

.marque{display:flex;align-items:center;gap:11px;flex:none}
.marque-texte{display:block}
.marque-nom{font:400 1rem/1 var(--serif);letter-spacing:-.01em;color:var(--papier)}
.marque-nom a{color:inherit}
.marque-sous{font:400 .5rem/1 var(--sans);letter-spacing:.2em;opacity:.55;margin-top:4px;color:var(--papier)}

.wp-block-navigation.menu{flex:0 1 auto;display:flex;align-items:center}
/* filet : WordPress fournit ces règles via le CSS du bloc, la maquette locale non */
.wp-block-navigation.menu .wp-block-navigation__container{
  display:flex;align-items:center;flex-wrap:nowrap;gap:clamp(14px,2vw,32px);
  margin:0;padding:0;list-style:none;
}
.wp-block-navigation.menu .wp-block-navigation-item{display:flex;align-items:center}
.wp-block-navigation.menu .wp-block-navigation-item__content{
  font:400 .78125rem/1.4 var(--sans);color:rgba(239,237,232,.78);transition:color .2s;
}
.wp-block-navigation.menu .wp-block-navigation-item__content:hover,
.wp-block-navigation.menu .current-menu-item .wp-block-navigation-item__content{color:var(--papier)}
.wp-block-navigation.menu .wp-block-navigation__responsive-container-open,
.wp-block-navigation.menu .wp-block-navigation__responsive-container-close{color:var(--papier)}
/* le panneau mobile s'ouvre blanc sur blanc sans ce surclassement */
.wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open{
  background-color:rgba(20,20,17,.985) !important;
  color:var(--papier) !important;
  padding:clamp(24px,6vw,48px);
}
.wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
  display:flex;flex-direction:column;align-items:flex-start;flex-wrap:wrap;gap:18px;
}
.wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
  font-size:1.25rem;font-family:var(--serif);font-weight:300;color:var(--papier);
}

/* structure du panneau : WordPress la fournit par le CSS du bloc, la maquette non */
.wp-block-navigation.menu .wp-block-navigation__responsive-container,
.wp-block-navigation.menu .wp-block-navigation__responsive-close,
.wp-block-navigation.menu .wp-block-navigation__responsive-dialog,
.wp-block-navigation.menu .wp-block-navigation__responsive-container-content{display:contents}
.wp-block-navigation.menu .wp-block-navigation__responsive-container-open,
.wp-block-navigation.menu .wp-block-navigation__responsive-container-close{
  display:none;align-items:center;justify-content:center;flex:none;
  width:38px;height:38px;padding:0;border:0;border-radius:999px;
  background:none;cursor:pointer;
}
.wp-block-navigation.menu .wp-block-navigation__responsive-container-open svg,
.wp-block-navigation.menu .wp-block-navigation__responsive-container-close svg{
  display:block;width:22px;height:22px;fill:currentColor;
}
.wp-block-navigation.menu .wp-block-navigation__responsive-container-open:hover{background:rgba(239,237,232,.1)}
.wp-block-navigation.menu .menu-cta{display:none}
html.menu-ouvert{overflow:hidden}

/* ==========================================================================
   1 · Hero
   ========================================================================== */
.hero{
  position:relative;isolation:isolate;overflow:hidden;background:var(--encre);
  min-height:min(94vh,900px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:clamp(120px,15vh,170px) var(--marge) clamp(56px,8vh,90px);
  text-align:center;
}
.hero-photo{position:absolute;inset:0;z-index:-2;margin:0}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.hero::before{
  content:'';position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(18,18,15,.52) 0%,rgba(18,18,15,.18) 38%,rgba(18,18,15,.58) 100%);
}
/* les deux coins en arc du bas, en une seule couche */
.hero::after{
  content:'';position:absolute;z-index:5;left:0;right:0;bottom:0;height:var(--coin);
  pointer-events:none;
  background:
    radial-gradient(ellipse var(--coin) var(--coin) at 100% 0,transparent 0 99.4%,var(--papier) 99.5%) left bottom/var(--coin) var(--coin) no-repeat,
    radial-gradient(ellipse var(--coin) var(--coin) at 0 0,transparent 0 99.4%,var(--papier) 99.5%) right bottom/var(--coin) var(--coin) no-repeat;
}
.hero-panneau{
  width:min(100%,880px);padding:clamp(30px,4.4vw,58px) clamp(20px,3.4vw,52px);
  border-radius:var(--r);
  background:rgba(20,20,17,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
  color:var(--papier);
}
.hero-panneau .h-xl{color:var(--papier)}
.hero-encart{
  width:min(100%,440px);margin-top:14px;padding:18px 24px;border-radius:var(--r);
  background:rgba(20,20,17,.5);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
}
.hero-encart .tx{color:rgba(239,237,232,.76);max-width:none}
.hero .wp-block-buttons{margin-top:24px;justify-content:center}

.hero--interne{
  min-height:min(68vh,660px);
  padding-top:clamp(128px,17vh,196px);
  padding-bottom:clamp(44px,7vh,84px);
}
.hero--interne .h-xl{font-size:clamp(2.1rem,4.1vw,3.65rem)}
.hero--interne .hero-panneau{width:min(100%,800px)}

/* ==========================================================================
   2 · Approche
   ========================================================================== */
.approche{
  padding:var(--bande) var(--marge);
  display:grid;grid-template-columns:minmax(0,0.82fr) minmax(0,1.32fr);
  gap:clamp(28px,5vw,88px);align-items:start;
}
.approche-titre{max-width:20ch;margin:20px 0 18px}
.approche-vignette{position:relative;margin-top:clamp(36px,5vw,72px);width:min(100%,290px);aspect-ratio:1}
.approche-vignette .wp-block-image{position:relative;z-index:2;width:100%;height:100%;margin:0}
.approche-vignette img{width:100%;height:100%;object-fit:cover;border-radius:100% 0 0 0}
.approche-vignette::after{
  content:'';position:absolute;z-index:1;right:-19%;bottom:-13%;
  width:46%;aspect-ratio:1;background:var(--sauge);border-radius:0 0 100% 0;
}

.cartes{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.carte{
  display:flex;flex-direction:column;
  background:var(--sauge);border-radius:var(--r);
  padding:26px 24px 28px;min-height:262px;
}
.carte .wp-block-heading{
  margin-top:26px;padding-top:15px;
  border-top:1px solid rgba(26,26,23,.16);
}
.carte .tx{color:rgba(26,26,23,.62);margin-top:9px;font-size:.78125rem}
.carte .membre-role{color:rgba(26,26,23,.52)}

/* ==========================================================================
   3 · Étapes
   ========================================================================== */
.etapes{position:relative;overflow:hidden}
.etapes-grille{display:grid;grid-template-columns:1fr 1fr}
.etapes-gauche{display:flex;flex-direction:column}
.etapes-intro{padding:var(--bande) clamp(24px,3vw,56px) clamp(38px,4vw,62px) var(--marge)}
.etapes-intro .h-l{max-width:14ch;margin-top:18px}
.etapes-photo{flex:1;min-height:clamp(260px,32vw,420px);position:relative}
.etapes-photo .cliche{position:absolute;inset:0;margin:0}
.etapes-photo .cliche img{width:100%;height:100%;object-fit:cover}

/* le gros disque qui mord la photo, et sa feuille sauge */
.etapes::after{
  content:'';position:absolute;z-index:3;left:50%;top:70%;
  width:clamp(170px,25vw,376px);aspect-ratio:1;
  transform:translate(-56%,-50%);
  background:var(--encre);border-radius:50%;pointer-events:none;
}
.etapes::before{
  content:'';position:absolute;z-index:4;left:50%;top:70%;
  width:clamp(44px,6.5vw,98px);aspect-ratio:1;
  transform:translate(-56%,-50%);
  background:var(--sauge);border-radius:100% 0 100% 0;pointer-events:none;
}

.etapes-liste{
  position:relative;z-index:5;
  padding:var(--bande) var(--marge) var(--bande) clamp(24px,3.4vw,64px);
  display:flex;flex-direction:column;justify-content:center;
}
.etape{padding:clamp(18px,2vw,26px) 0;border-top:1px solid var(--filet-nuit)}
.etape:first-child{border-top:0;padding-top:0}
.etape:last-child{padding-bottom:0}
.etape-tete{display:flex;align-items:baseline;gap:14px}
.etape-num{font-size:.625rem;letter-spacing:.14em;color:var(--cendre);flex:none}
.etape .tx{margin-top:8px;max-width:44ch}

/* ==========================================================================
   4 · Lumière
   ========================================================================== */
.lumiere{
  padding:var(--bande) var(--marge);
  display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  gap:clamp(30px,5vw,84px);align-items:center;
}
.demi-disques{position:relative;display:flex;flex-direction:column;align-items:center}
.demi{width:min(100%,430px);aspect-ratio:1/.86;overflow:hidden;margin:0}
.demi img{width:100%;height:100%;object-fit:cover}
.demi--haut{border-radius:0 0 999px 999px;margin-right:clamp(0px,11vw,140px)}
.demi--bas{border-radius:999px 999px 0 0;margin-left:clamp(0px,11vw,140px);margin-top:-3%}

.lumiere-titre{margin-top:18px;max-width:15ch}
.lumiere-liste{margin-top:26px}
.critere{display:flex;gap:16px;padding:clamp(16px,1.8vw,24px) 0;border-top:1px solid var(--filet)}
.critere:first-child{border-top:0}
.nuit .critere{border-color:var(--filet-nuit)}
.critere-texte{flex:1}
.critere .tx{margin-top:7px}

/* ==========================================================================
   5 · Projets
   ========================================================================== */
.projets{padding:var(--bande) var(--marge);position:relative}
.mosaique{
  display:grid;grid-template-columns:repeat(12,1fr);
  grid-auto-rows:clamp(78px,9vw,132px);gap:10px;
}
.mosaique > div{position:relative;overflow:hidden;border-radius:var(--r);background:var(--encre-2)}
.mosaique .wp-block-image{margin:0;height:100%}
.mosaique img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.mosaique > div:hover img{transform:scale(1.045)}
.m1{grid-column:1/4;grid-row:1/3}
.m2{grid-column:4/7;grid-row:1/2}
.m3{grid-column:7/10;grid-row:1/2}
.m4{grid-column:4/7;grid-row:2/3}
.m5{grid-column:7/10;grid-row:2/3}
.m6{grid-column:1/4;grid-row:3/4}
.m7{grid-column:4/13;grid-row:3/4}
.mosaique-titre{
  grid-column:10/13;grid-row:1/3;background:none;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:0 0 4px 10px;overflow:visible;
}
.mosaique-titre .h-l{text-align:left;margin-top:16px}

.pastille-photo{
  position:absolute;z-index:4;left:14px;top:14px;
  display:inline-flex;align-items:center;gap:9px;
  padding:8px 15px;border-radius:999px;line-height:1;
  background:rgba(20,20,17,.58);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  color:var(--papier);font-size:.6875rem;letter-spacing:.03em;
}
.pastille-photo::before{
  content:'';width:7px;height:7px;flex:none;
  background:var(--sauge);border-radius:7px 0 7px 0;
}

.projets-pied{
  margin-top:clamp(34px,4vw,60px);
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,52px);
}
.projets-pied > div{padding-top:17px;border-top:1px solid var(--filet-nuit)}
.projets-pied .tx{margin-top:9px}

/* variante claire de la bande mosaique (page Projets) */
.projets--jour{background:var(--papier);color:var(--encre)}
.projets--jour .projets-pied > div{border-top-color:var(--filet)}
.projets--jour .mosaique > div{background:var(--papier-2)}

/* ==========================================================================
   6 · Territoire — la carte est un fond, pas un bloc vide
   ========================================================================== */
.territoire{padding:var(--bande) var(--marge)}
.territoire-tete{
  display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(24px,4vw,64px);
  align-items:start;padding-bottom:clamp(20px,3vw,40px);
}
.territoire-tete .h-l{max-width:16ch}
.territoire-corps{
  position:relative;display:grid;grid-template-columns:.9fr 1.35fr;
  gap:clamp(20px,3vw,48px);align-items:center;
}
.territoire-corps::after{
  content:'';grid-column:2;grid-row:1;align-self:center;
  width:100%;aspect-ratio:340/312;
  background:var(--carte) center/contain no-repeat;
}
.zones{max-width:360px;grid-column:1;grid-row:1}
.zone{padding:16px 0;border-top:1px solid var(--filet-nuit)}
.zone:first-child{border-top:0;padding-top:0}
.zone .wp-block-heading{font:400 .9375rem/1.3 var(--serif);color:var(--papier)}
.zone .tx{margin-top:5px;font-size:.75rem}

/* ==========================================================================
   7 · Appel
   ========================================================================== */
.appel{padding:var(--bande) var(--marge) 0;position:relative}
.appel-photo{
  position:relative;border-radius:var(--r);overflow:hidden;margin:0;
  height:clamp(300px,42vw,560px);
}
.appel-photo img{width:100%;height:100%;object-fit:cover}
.appel-bloc{
  position:relative;z-index:3;margin:clamp(-120px,-13vw,-60px) 0 0 0;
  width:min(100%,780px);
  background:var(--encre);color:var(--papier);
  border-radius:var(--r) clamp(70px,11vw,170px) var(--r) var(--r);
  padding:clamp(34px,4.6vw,66px) clamp(26px,4vw,64px) clamp(34px,4.6vw,62px);
}
.appel-bloc .h-l{max-width:17ch;color:var(--papier)}
.appel-bloc .tx{color:var(--cendre);margin-top:16px}
.appel-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:28px}
.appel-coord{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.78125rem;color:var(--cendre)}
.appel-coord p{color:var(--cendre)}
.appel-coord a{color:inherit}
.appel-coord a:hover{color:var(--papier)}

/* ==========================================================================
   Pied de page
   ========================================================================== */
.pied{position:relative;overflow:hidden;padding:clamp(66px,8vw,120px) var(--marge) 26px;margin-top:var(--bande)}
/* Derniere section sombre : la marge du pied ouvrirait une bande claire entre
   les deux. Deux ecritures : la maquette locale pose les sections directement
   dans <main>, WordPress les enveloppe dans core/post-content. */
main:has(> :last-child.nuit) + footer .pied,
main:has(> .wp-block-post-content > :last-child.nuit) + footer .pied{margin-top:0}
.pied::before{
  content:'';position:absolute;inset:auto 0 0 0;height:56%;
  background-image:
    radial-gradient(circle 64px at 0 100%,transparent 0 62px,#35352F 62px 63.5px,transparent 63.5px),
    radial-gradient(circle 64px at 128px 100%,transparent 0 62px,#35352F 62px 63.5px,transparent 63.5px);
  background-size:128px 128px;background-repeat:repeat;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 78%);
          mask-image:linear-gradient(180deg,transparent,#000 78%);
  pointer-events:none;
}
.pied-haut{
  position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 1.9fr;
  gap:clamp(30px,4vw,72px);padding-bottom:clamp(48px,6vw,90px);
}
.pied-haut .tx{margin-top:16px}
.colonnes{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2.4vw,40px)}
.colonnes .wp-block-heading{font:500 .6875rem/1.4 var(--sans);letter-spacing:.09em;color:var(--cendre);margin-bottom:14px}
.colonnes .wp-block-list li{margin-bottom:9px;font-size:.78125rem;color:rgba(239,237,232,.72)}
.colonnes .wp-block-list a{color:inherit;transition:color .2s}
.colonnes .wp-block-list a:hover{color:var(--papier)}

.pied-marque{
  position:relative;z-index:2;display:flex;align-items:flex-end;gap:clamp(14px,2vw,26px);
  padding-top:clamp(26px,3vw,44px);border-top:1px solid var(--filet-nuit);
}
.pied-lockup{display:block}
.pied-lockup-1,.pied-lockup-2{font:300 clamp(1.7rem,4.6vw,3.4rem)/.95 var(--serif);letter-spacing:-.022em;color:var(--papier)}
.pied-lockup-2{color:var(--cendre)}
.pied-bas{
  position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:8px 24px;
  justify-content:space-between;margin-top:clamp(30px,4vw,56px);
  font-size:.71875rem;color:var(--cendre);
}
.pied-bas p{color:var(--cendre)}
.pied-bas a{color:inherit}
.pied-bas a:hover{color:var(--papier)}

/* ==========================================================================
   Pages internes
   ========================================================================== */
.equipe{padding:var(--bande) var(--marge)}
.equipe-tete{max-width:34ch;margin-bottom:clamp(28px,4vw,54px)}
.equipe-tete .h-l{margin-top:18px}
.equipe-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.8vw,44px)}
.membre .wp-block-image{
  margin:0;aspect-ratio:1/1.14;overflow:hidden;background:var(--papier-2);
  border-radius:999px 999px var(--r) var(--r);
}
.membre img{width:100%;height:100%;object-fit:cover}
.membre .wp-block-heading{margin-top:20px;padding-top:15px;border-top:1px solid var(--filet)}
.membre .tx{margin-top:9px;font-size:.78125rem}
.membre-role{
  display:block;margin-top:6px;
  font:500 .625rem/1.4 var(--sans);letter-spacing:.11em;color:var(--plume);
}

.fiches{padding:var(--bande) var(--marge);display:flex;flex-direction:column;gap:clamp(40px,6vw,104px)}
.fiche{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(22px,3.8vw,68px);align-items:center}
.fiche:nth-child(even) .fiche-photo{order:2}
.fiche-photo{position:relative;overflow:hidden;aspect-ratio:16/11;background:var(--papier-2)}
.fiche-photo .cliche{margin:0;height:100%}
.fiche-photo img{width:100%;height:100%;object-fit:cover}
.fiche:nth-child(odd)  .fiche-photo{border-radius:var(--r) clamp(56px,9vw,148px) var(--r) var(--r)}
.fiche:nth-child(even) .fiche-photo{border-radius:clamp(56px,9vw,148px) var(--r) var(--r) var(--r)}
/* l'arc est en haut a gauche sur les fiches paires : la pastille passe a droite */
.fiche:nth-child(even) .fiche-photo .pastille-photo{left:auto;right:14px}
.fiche-titre{margin-top:16px;max-width:15ch}
.fiche-texte{margin-top:16px}
.fiche-meta{
  margin-top:22px;padding-top:16px;border-top:1px solid var(--filet);
  font-size:.75rem;color:var(--plume);max-width:none;
}

.contact-grille{
  padding:var(--bande) var(--marge);
  display:grid;grid-template-columns:1.22fr .78fr;
  gap:clamp(30px,4.6vw,84px);align-items:start;
}
.contact-titre{margin-top:18px;max-width:18ch}
.contact-chapo{margin-top:16px}
.coord-bloc{background:var(--sauge);border-radius:var(--r);padding:clamp(24px,3vw,38px)}
.coord-ligne{padding:16px 0;border-top:1px solid rgba(26,26,23,.16)}
.coord-ligne:first-child{border-top:0;padding-top:0}
.coord-ligne:last-child{padding-bottom:0}
.coord-ligne .wp-block-heading{font:400 .9375rem/1.3 var(--serif);letter-spacing:-.008em}
.coord-ligne p{margin-top:6px;font-size:.8125rem;line-height:1.65;color:rgba(26,26,23,.64)}
.coord-ligne a{color:inherit}
.coord-ligne a:hover{color:var(--encre)}
.coord-suite{margin-top:clamp(20px,2.6vw,34px)}

/* ==========================================================================
   Formulaire — Contact Form 7
   ========================================================================== */
.formulaire{margin-top:clamp(26px,3vw,40px)}
.formulaire .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.champ{display:flex;flex-direction:column;gap:8px}
.champ--large{grid-column:1/-1}
.champ label{font-size:.6875rem;letter-spacing:.085em;color:var(--plume)}
/* l'enrobage de CF7 garde l'espace sous la ligne de base : +5 à 13 px par champ */
.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;width:100%;padding:13px 15px;
  font:400 .8125rem/1.5 var(--sans);color:var(--encre);
  background:#FBFAF7;border:1px solid var(--filet);border-radius:var(--r);
  transition:border-color .2s ease;
}
.formulaire textarea{resize:vertical;min-height:138px}
.formulaire ::placeholder{color:#A6A399}
.formulaire input:focus,.formulaire select:focus,.formulaire textarea:focus{outline:0;border-color:var(--encre)}
.mention-rgpd{grid-column:1/-1;font-size:.71875rem;line-height:1.7;color:var(--plume);max-width:none}
.formulaire .wpcf7-submit{
  grid-column:1/-1;justify-self:start;
  display:inline-flex;align-items:center;
  padding:13px 25px;border:0;border-radius:999px;cursor:pointer;
  background:var(--encre);color:var(--papier);
  font:400 .75rem/1 var(--sans);letter-spacing:.012em;
  transition:background .25s ease;
}
.formulaire .wpcf7-submit:hover{background:var(--encre-3)}
.formulaire .wpcf7-spinner{display:none}
.formulaire .wpcf7-not-valid-tip{
  grid-column:1/-1;margin-top:6px;font-size:.6875rem;color:#8C3A2B;
}
.formulaire .wpcf7-response-output{
  grid-column:1/-1;margin:14px 0 0;padding:13px 16px;
  border:1px solid var(--filet);border-radius:var(--r);
  font-size:.78125rem;color:var(--plume);
}

/* ==========================================================================
   Apparition au défilement
   L'état masqué n'existe que sous .js-anim, posé par app.js. Si le script ne
   s'exécute pas, ne se charge pas, ou si l'IntersectionObserver est inactif,
   le contenu reste simplement visible — il ne disparaît jamais.
   ========================================================================== */
.js-anim .monte{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js-anim .monte.vu{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js-anim .monte{opacity:1;transform:none;transition:none}
}

/* ==========================================================================
   Adaptatif
   ========================================================================== */
@media (max-width:1080px){
  .approche{grid-template-columns:1fr;gap:38px}
  .approche-vignette{margin-top:8px}
  .lumiere{grid-template-columns:1fr;gap:38px}
  .demi{width:min(100%,340px)}
  .territoire-corps{grid-template-columns:1fr;gap:34px}
  .territoire-corps::after{grid-column:1;grid-row:2}
  .zones{max-width:none}
  .mosaique{grid-auto-rows:clamp(64px,11vw,110px)}
  .mosaique-titre{grid-column:1/13;grid-row:4/5;padding:14px 0 0}
  .m6{grid-column:1/7;grid-row:3/4}
  .m7{grid-column:7/13;grid-row:3/4}
  .fiche{grid-template-columns:1fr;gap:22px}
  .fiche:nth-child(even) .fiche-photo{order:0}
  .contact-grille{grid-template-columns:1fr;gap:40px}
}
@media (max-width:900px){
  .etapes-grille{grid-template-columns:1fr}
  .etapes-intro{padding:var(--bande) var(--marge) 34px}
  .etapes-photo{min-height:300px}
  .etapes::after{left:auto;right:6vw;top:auto;bottom:-8%;transform:none;width:clamp(130px,30vw,220px)}
  .etapes::before{left:auto;right:calc(6vw + clamp(40px,9vw,66px));top:auto;bottom:6%;transform:none}
  .etapes-liste{padding:44px var(--marge) var(--bande)}
  .projets-pied{grid-template-columns:1fr;gap:0}
  .projets-pied > div{padding:17px 0}
  .territoire-tete{grid-template-columns:1fr;gap:20px}
  .pied-haut{grid-template-columns:1fr;gap:38px}
  .appel-bloc{margin-top:-46px;border-radius:var(--r) clamp(56px,14vw,110px) var(--r) var(--r)}
  .equipe-grille{grid-template-columns:1fr 1fr;gap:26px}
  .membre:last-child{grid-column:1/-1;max-width:50%}
}
@media (max-width:640px){
  .barre{padding:9px 9px 9px 18px}
  .barre > .wp-block-buttons{display:none}
  .cartes{grid-template-columns:1fr}
  .carte{min-height:0}
  .colonnes{grid-template-columns:1fr 1fr;gap:26px 16px}
  .mosaique{grid-auto-rows:84px}
  .m1{grid-column:1/7;grid-row:1/3}
  .m2{grid-column:7/13;grid-row:1/2}
  .m3{grid-column:7/13;grid-row:2/3}
  .m4{grid-column:1/7;grid-row:3/4}
  .m5{grid-column:7/13;grid-row:3/4}
  .m6{grid-column:1/7;grid-row:4/5}
  .m7{grid-column:7/13;grid-row:4/5}
  .mosaique-titre{grid-column:1/13;grid-row:5/6}
  .demi--haut,.demi--bas{margin-left:0;margin-right:0}
  .pied-marque{flex-direction:column;align-items:flex-start;gap:14px}
  .equipe-grille{grid-template-columns:1fr;gap:34px}
  .membre:last-child{max-width:none}
  .membre .wp-block-image{aspect-ratio:1}
  .formulaire .wpcf7-form{grid-template-columns:1fr}
  /* ----- menu plein écran ----- */
  .wp-block-navigation.menu .wp-block-navigation__responsive-container-open{display:inline-flex}
  .wp-block-navigation.menu .wp-block-navigation__responsive-container{
    display:none;position:fixed;inset:0;z-index:90;
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open{
    display:block;padding:0;background-color:var(--encre) !important;
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close{display:block;height:100%}
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog{
    display:flex;flex-direction:column;height:100%;
    padding:calc(var(--marge) + 10px) var(--marge) calc(var(--marge) + 18px);
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{
    display:inline-flex;align-self:flex-end;
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
    display:block;width:100%;margin-top:auto;margin-bottom:auto;
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    flex-direction:column;align-items:stretch;gap:0;
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{
    display:block;border-top:1px solid var(--filet-nuit);
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:first-child{border-top:0}
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
    display:block;padding:17px 0;
    font:300 clamp(27px,7.6vw,36px)/1.14 var(--serif);letter-spacing:-.015em;
    color:rgba(239,237,232,.82);
  }
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .current-menu-item .wp-block-navigation-item__content{color:var(--papier)}
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .menu-cta{display:block;border-top:0;margin-top:30px}
  .wp-block-navigation.menu .wp-block-navigation__responsive-container.is-menu-open .menu-cta .wp-block-navigation-item__content{
    display:inline-flex;align-items:center;padding:14px 26px;border-radius:999px;
    background:var(--sauge);color:var(--encre);
    font:400 .75rem/1 var(--sans);letter-spacing:.012em;
  }
  .hero--interne{min-height:auto}
}

.marque::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2038%2024%27%3E%3Cpath%20d%3D%27M0%200A12%2012%200%200%201%200%2024Z%27%2F%3E%3Cpath%20d%3D%27M25%200A12%2012%200%200%200%2025%2024Z%27%2F%3E%3Cpath%20d%3D%27M26%200A12%2012%200%200%201%2026%2024Z%27%2F%3E%3C%2Fsvg%3E");--ratio:1.5833333333333333}
.carte--terrain::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2040%2034%27%3E%3Cpath%20d%3D%27M0%200A17%2017%200%200%201%200%2034Z%27%2F%3E%3Cpath%20d%3D%27M40%200A17%2017%200%200%200%2040%2034Z%27%2F%3E%3C%2Fsvg%3E");--ratio:1.1764705882352942}
.carte--programme::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2040%2034%27%3E%3Cpath%20d%3D%27M0%200A17%2017%200%200%201%200%2034Z%27%2F%3E%3Crect%20x%3D%2730%27%20y%3D%270%27%20width%3D%275%27%20height%3D%2734%27%2F%3E%3C%2Fsvg%3E");--ratio:1.1764705882352942}
.carte--matiere::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2034%2034%27%3E%3Cpath%20d%3D%27M0%200A17%2011%200%200%200%2034%200Z%27%2F%3E%3Cpath%20d%3D%27M0%2034A17%2011%200%200%201%2034%2034Z%27%2F%3E%3C%2Fsvg%3E");--ratio:1}
.carte--chantier::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2042%2034%27%3E%3Cpath%20d%3D%27M0%2034V17A17%2017%200%200%201%2017%2034Z%27%2F%3E%3Cpath%20d%3D%27M42%200A17%2017%200%200%200%2042%2034Z%27%2F%3E%3C%2Fsvg%3E");--ratio:1.2352941176470589}
.critere--soleil::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2019%2019%27%3E%3Cpath%20d%3D%27M0%2019A9.5%209.5%200%200%201%2019%2019Z%27%2F%3E%3C%2Fsvg%3E");--ratio:1}
.critere--terrain::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2019%2019%27%3E%3Cpath%20d%3D%27M0%2019V0A19%2019%200%200%201%2019%2019Z%27%2F%3E%3C%2Fsvg%3E");--ratio:1}
.critere--matiere::before{--icone:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2019%2019%27%3E%3Cpath%20d%3D%27M0%200A19%2019%200%200%201%2019%2019H12.5A12.5%2012.5%200%200%200%200%206.5Z%27%2F%3E%3C%2Fsvg%3E");--ratio:1}
.territoire-corps::after{--carte:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20340%20312%27%3E%3Cpath%20d%3D%27M85%206L91.4%2013.2L93.6%2015.6L95.1%2017.3L99.3%2021.9L105.3%2028L109.8%2032.3L113.4%2036.3L115.3%2038.9L119.6%2044.9L121.7%2047.8L123.7%2050.6L124.7%2053.7L127%2060.9L131.5%2059.8L133.9%2059.7L143.7%2060.9L146%2061.5L148%2060.7L149.8%2060.4L151.4%2061.1L151.3%2059.3L152%2057.6L153.7%2057.5L155.3%2058.8L154.9%2060.7L154.3%2062.3L154.8%2064.7L155.8%2066.6L157.5%2066.4L159%2067.3L161%2067.5L162.8%2067.9L165.4%2068L167.3%2067.6L169.1%2067L170.8%2067.8L172.6%2068.4L174.4%2068.7L175.9%2069.8L177.5%2070.6L178.6%2072.1L178.4%2074.1L177.6%2076L179.4%2076.9L180.5%2078.8L179.3%2080.8L179.3%2082.8L178.8%2084.5L178.5%2086.4L179.6%2087.8L180.9%2089.5L181.2%2091.6L181.7%2093.5L182.5%2095.5L183.1%2097.7L183.9%2099.2L184.3%2097.5L185.2%2096L186.6%2094.3L189.1%2094L190.7%2094.6L192.1%2095.9L193.5%2096.9L193.8%2099.4L195.5%2098.5L197.4%2098.8L199%2099.5L200.5%20100.4L201.6%20101.8L202.1%20103.5L203.2%20105.3L204.7%20106.9L206.9%20107.4L208.7%20107.4L210.6%20109.1L212.5%20109.6L214.1%20110.2L216%20110.4L217.7%20110.7L220.1%20111.5L221.8%20110.7L222.7%20109L223.9%20107.4L225.2%20106.1L227.2%20105L229.4%20104.5L230.4%20106.1L231.8%20107.3L233.1%20109.3L234.8%20108.9L236.7%20109L238.3%20107.4L238.9%20105.8L240.8%20105.3L242.9%20104.9L244.6%20105.2L246.9%20105.4L249.3%20105.8L250.5%20107.1L251.3%20109.1L252.4%20110.8L252.9%20113.2L254%20114.6L253%20117.7L252.5%20119.8L251.2%20122.3L249.7%20123.4L249.4%20125.4L248.6%20127.3L248.5%20129.9L249%20132L248.1%20134.2L247.5%20136.1L245.9%20135.3L245.1%20136.9L244.6%20138.6L244.3%20140.3L243.4%20142.3L244.7%20143.6L245.4%20145.6L246.4%20147.1L247.8%20148.7L247.4%20150.4L246.4%20152.5L245.2%20154L244.7%20156L243.2%20157L242.8%20159.1L241.5%20160.4L240.2%20161.8L238%20162.2L239.5%20163.3L241.7%20164L243.5%20164.4L245.3%20163.7L247.4%20164.9L248.8%20165.9L248.6%20167.6L250.1%20169L251.9%20168.7L253.6%20170L255.1%20168.9L256.7%20167.2L258.8%20167.1L259.5%20169L261.7%20168.5L263.8%20168.3L265.5%20167.9L267.1%20168.6L269.5%20168.5L271.1%20169.1L273.2%20168.7L274.2%20166.7L275.7%20165L277.6%20164.3L280.1%20161.9L280%20160L282.2%20159.6L284.5%20159.6L286.8%20160.3L288.4%20161.5L289.7%20162.7L291%20164.1L290.3%20165.8L288.8%20167.1L287.1%20168.8L284.7%20168.9L283.8%20170.7L284.5%20172.4L285.2%20174.3L285.1%20176L285.1%20178.1L285.7%20179.7L287%20181.2L288.7%20182.5L287.3%20183.7L285.2%20184.3L283.4%20184.8L281.6%20185.1L280.2%20183.7L279.1%20182.2L277.4%20183L276.5%20184.5L275.9%20186.5L275.7%20188.7L276.6%20190.7L274.9%20190.8L273.6%20189.7L273%20187.9L272.2%20186L270.4%20186.6L269.8%20188.7L267.8%20188.7L266.1%20189.5L264.7%20187.9L264.3%20189.6L264.3%20191.4L264.1%20193.4L263.4%20195L261.9%20193.7L260%20193.7L259.2%20195.7L259.1%20197.9L260.3%20199.8L263%20199.7L263%20201.4L264%20203.3L265.8%20202.9L267.8%20202.4L269.5%20203.1L271%20204.4L269.5%20206.7L268.5%20208.5L268.3%20210.2L266.2%20210.3L264.6%20208.8L264.4%20210.5L265.2%20212L266%20213.5L266.1%20215.7L263.7%20216L262.6%20217.3L261.2%20218.7L259.5%20220L257.6%20220.6L255.5%20221.2L256.2%20222.9L255.7%20224.7L254.4%20226.4L254.3%20228.2L252.1%20228.4L250.2%20228.3L248.2%20228L246.7%20229L245.7%20230.4L244.2%20229.1L242.7%20228.2L243.6%20229.7L244.8%20231.1L245.7%20233L244.4%20234.7L242.8%20235.6L241.3%20236.8L240.6%20238.5L240.2%20240.9L240.6%20242.7L240.9%20244.8L241%20247.3L242.8%20248.2L244%20249.9L243.3%20251.8L242%20253.5L241.8%20255.5L240.7%20257.1L241.9%20258.6L243%20260.6L244.2%20262L245.7%20263.4L244.2%20264.9L246.5%20266.1L245.4%20268.2L243.3%20268L241.7%20267.2L240.2%20268.4L238.8%20269.5L237%20269.7L235%20270.1L232.2%20271.4L229.7%20274.8L232.5%20277.9L237.5%20283.6L237.2%20285.9L237.6%20288.1L236.5%20289.4L234.7%20290.4L233.7%20291.9L233%20294L231.4%20293.3L230.2%20295.1L229.3%20296.8L227.5%20297.3L224.4%20296.7L221.2%20298.9L219.4%20297.5L217.3%20295.7L216.5%20293.4L215.4%20291.4L213.8%20290L212.1%20290.1L210.5%20290.8L208.1%20290.6L207.7%20292.5L208%20297.4L208.3%20300.6L208.5%20303.4L206.3%20304.1L201%20306L196.3%20304.5L192.4%20303.8L189.4%20303.6L186.9%20303.3L182.9%20302.6L182.5%20300.2L181.8%20296.7L182.5%20293.2L183%20290.6L183.6%20287.5L183.1%20285.6L181.4%20285.8L180%20284.6L178.5%20283.7L176.9%20282.9L176.4%20278L172.9%20277.8L169.2%20277.5L163.2%20274.4L161.6%20268.9L157.7%20267.2L155%20265L153.1%20264.3L150%20263.2L146.3%20261.6L144.5%20261.3L146.2%20260L146.5%20257.4L146.3%20254.8L146.2%20251.9L144.3%20250.5L140.8%20249.4L138.8%20248.7L137.8%20250.2L136.9%20252L134.7%20251.8L132.9%20251.3L130.6%20250.7L125.2%20252.3L123.5%20252.4L122.9%20254.3L120.8%20255L119.1%20255.9L117.4%20256.7L115.5%20256.8L113.1%20257.3L108.3%20255.4L105.5%20254.3L102.5%20253.2L101.4%20251.8L97.3%20253.2L93.6%20254.8L84.5%20256.3L87.8%20253.2L90.1%20247.8L91.9%20243.2L91.5%20240.7L90.8%20237.7L87.2%20237.2L84.9%20237.9L81.3%20235.8L77.4%20233.3L75.8%20232.5L73.6%20237L72.6%20238.9L63.9%20241.9L59.3%20243.6L52.7%20245.7L49.9%20246.5L49.9%20244.6L50.1%20242.8L50.3%20239.6L50.2%20237.6L50.1%20235.6L49.5%20233.2L48.9%20230.9L49.1%20229.2L51.1%20227.3L52.4%20225.2L53.4%20223.8L54.7%20221.6L55.3%20220L56.3%20217.9L57%20215.8L57.4%20214L57.6%20211.6L57.5%20209.8L58%20208L58.7%20206.3L59.5%20204.6L61.2%20203.9L63.1%20204L65.3%20204.5L67.1%20204.9L67%20206.6L65.2%20207.5L66%20209.1L66.9%20207.6L68.7%20207.5L70.8%20207.6L72.9%20208.3L75.1%20208.8L76.8%20208.8L78.3%20207.9L80.1%20208.2L82%20207.4L84.5%20207.4L85.9%20208.5L86.7%20206.9L88.4%20207.2L87.7%20205.6L86%20203.8L85.2%20201.3L83.5%20200.8L83.1%20199.1L81.3%20199.9L79.9%20198.7L78.3%20196.8L80%20197.3L81.8%20197.7L81.9%20195.9L80.7%20194.4L78.5%20193L77.1%20191.3L74.9%20189.1L73.7%20187.7L71.9%20186.9L70.4%20185.7L71.1%20184L69.5%20185L68.1%20183.7L66.3%20182.7L65%20181L63.4%20179.7L62.6%20181.4L61.6%20183.1L62.2%20184.7L61.3%20186.4L59.7%20188L59%20189.8L57.5%20191.3L56.4%20193.1L54.7%20193.8L54%20195.7L53.1%20197.5L52.6%20199.6L52%20202.9L52.2%20205.2L51.4%20206.8L51.1%20208.7L51.2%20211L51.3%20212.7L49.7%20213.5L48.8%20211.8L48.7%20210L48.6%20208.2L48.8%20206.5L49%20204.4L49.3%20200.9L49.6%20198.3L49.8%20196.5L50.2%20193.4L50.8%20189.1L51.3%20186.1L51.9%20181.8L52.1%20179.7L52.5%20177.6L52.8%20174.9L53%20172.6L53.3%20170.5L53.7%20167.1L54%20165.3L54.4%20162.6L54.6%20160.7L54.8%20158.6L55%20156L55.3%20153.9L55.5%20151.6L55.7%20149.7L56%20147.4L56.3%20144.6L56.5%20142.6L56.8%20140.3L57.1%20137.1L57.3%20134.9L57.7%20130.9L57.9%20128.5L58.1%20126.2L58.3%20124L58.4%20122L58.6%20120.3L58.8%20118.3L59%20116.2L59.2%20114L59.4%20112.1L59.5%20109.5L59.7%20107.5L59.9%20105.7L60.1%20103.9L60.2%20101.9L60.4%20100L60.7%2098.2L60.9%2096.2L61.1%2093.5L61.3%2091.4L61.5%2089.5L61.7%2087.8L62%2085.2L62.2%2082.9L62.4%2080.6L62.7%2078.6L63.1%2074.9L63.3%2072.4L63.5%2070.6L63.6%2068.8L63.9%2067L64%2065L64.1%2062.9L64.2%2061.2L64.3%2059.2L64.3%2057.4L64.4%2054.9L64.5%2053.2L64.4%2048.9L64.2%2047L64.3%2044.1L64.3%2042.3L64.4%2040.1L65.1%2037.7L65.7%2034.9L65.6%2032.7L65.4%2031L64.8%2028.7L65.2%2026.2L65.9%2024.5L66.9%2022.4L67.6%2020.5L68.9%2018.8L70.3%2017.5L71.5%2016L72.6%2013.8L73.6%2012.4L74%2010.6L74.9%208.7L76.8%208.1L79.4%206.5L85%206L85%206Z%27%20fill%3D%27none%27%20stroke%3D%27%233C3C35%27%20stroke-width%3D%271%27%20stroke-linejoin%3D%27round%27%2F%3E%3Cpath%20d%3D%27M79.7%207C95%2040%20116%2070%20127.4%2087.8C134%2096%20143%20110%20150.5%20123.6%27%20fill%3D%27none%27%20stroke%3D%27%234A4A41%27%20stroke-width%3D%271.1%27%20stroke-dasharray%3D%272.5%203.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Cpath%20d%3D%27M150.5%20123.6C148%20140%20150%20155%20153.7%20166.1C165%20190%20188%20214%20204.8%20228.1%27%20fill%3D%27none%27%20stroke%3D%27%234A4A41%27%20stroke-width%3D%271.1%27%20stroke-dasharray%3D%272.5%203.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Cpath%20d%3D%27M150.5%20123.6C168%20132%20190%20143%20205.9%20149.3C218%20154%20230%20160%20237.5%20163.4%27%20fill%3D%27none%27%20stroke%3D%27%234A4A41%27%20stroke-width%3D%271.1%27%20stroke-dasharray%3D%272.5%203.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Cg%20transform%3D%27translate(153.7%20166.1)%27%3E%3Ccircle%20r%3D%277%27%20fill%3D%27%23DEE2C1%27%20stroke%3D%27%23DEE2C1%27%20stroke-width%3D%271%27%2F%3E%3Ccircle%20r%3D%272.4%27%20fill%3D%27%231A1A17%27%2F%3E%3Ctext%20x%3D%27-13%27%20y%3D%273.3%27%20text-anchor%3D%27end%27%20fill%3D%27%23EFEDE8%27%20font-family%3D%27Instrument%20Sans%2CHelvetica%2CArial%2Csans-serif%27%20font-size%3D%279%27%20letter-spacing%3D%270.45%27%3EBordeaux%3C%2Ftext%3E%3C%2Fg%3E%3Cg%20transform%3D%27translate(63.1%20205)%27%3E%3Ccircle%20r%3D%276%27%20fill%3D%27%231A1A17%27%20stroke%3D%27%2333332D%27%20stroke-width%3D%271%27%2F%3E%3Ccircle%20r%3D%272%27%20fill%3D%27%238C8C83%27%2F%3E%3Ctext%20x%3D%2712%27%20y%3D%273.3%27%20fill%3D%27%238C8C83%27%20font-family%3D%27Instrument%20Sans%2CHelvetica%2CArial%2Csans-serif%27%20font-size%3D%279%27%20letter-spacing%3D%270.45%27%3EArcachon%3C%2Ftext%3E%3C%2Fg%3E%3Cg%20transform%3D%27translate(76.1%20130.9)%27%3E%3Ccircle%20r%3D%276%27%20fill%3D%27%231A1A17%27%20stroke%3D%27%2333332D%27%20stroke-width%3D%271%27%2F%3E%3Ccircle%20r%3D%272%27%20fill%3D%27%238C8C83%27%2F%3E%3Ctext%20x%3D%2712%27%20y%3D%273.3%27%20fill%3D%27%238C8C83%27%20font-family%3D%27Instrument%20Sans%2CHelvetica%2CArial%2Csans-serif%27%20font-size%3D%279%27%20letter-spacing%3D%270.45%27%3ELacanau%3C%2Ftext%3E%3C%2Fg%3E%3Cg%20transform%3D%27translate(218.9%20153.9)%27%3E%3Ccircle%20r%3D%276%27%20fill%3D%27%231A1A17%27%20stroke%3D%27%2333332D%27%20stroke-width%3D%271%27%2F%3E%3Ccircle%20r%3D%272%27%20fill%3D%27%238C8C83%27%2F%3E%3Ctext%20x%3D%2712%27%20y%3D%273.3%27%20fill%3D%27%238C8C83%27%20font-family%3D%27Instrument%20Sans%2CHelvetica%2CArial%2Csans-serif%27%20font-size%3D%279%27%20letter-spacing%3D%270.45%27%3ESaint-%C3%89milion%3C%2Ftext%3E%3C%2Fg%3E%3Cg%20transform%3D%27translate(204.8%20228.1)%27%3E%3Ccircle%20r%3D%276%27%20fill%3D%27%231A1A17%27%20stroke%3D%27%2333332D%27%20stroke-width%3D%271%27%2F%3E%3Ccircle%20r%3D%272%27%20fill%3D%27%238C8C83%27%2F%3E%3Ctext%20x%3D%2712%27%20y%3D%273.3%27%20fill%3D%27%238C8C83%27%20font-family%3D%27Instrument%20Sans%2CHelvetica%2CArial%2Csans-serif%27%20font-size%3D%279%27%20letter-spacing%3D%270.45%27%3ELangon%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E")}


/* ==========================================================================
   Adaptations WordPress — ajoutees en phase 4, absentes de la maquette
   ========================================================================== */

/* La barre d'admin decale le document de 32 px : le cartouche flottant suit. */
body.admin-bar .barre{top:calc(clamp(12px,1.6vw,22px) + 32px)}

/* core/site-title sort un <p> ; il porte deja .marque-nom, on neutralise
   les marges que le bloc pose de son cote. */
.wp-block-site-title{margin:0}
.wp-block-site-title a{text-decoration:none;color:inherit}

/* Le CSS de core/navigation est imprime APRES cette feuille : a specificite
   egale il gagne. Les regles du menu sont donc toutes qualifiees par .menu. */
.wp-block-navigation.menu .wp-block-navigation-item__content{text-decoration:none}
.wp-block-navigation.menu .wp-block-navigation__responsive-container-open,
.wp-block-navigation.menu .wp-block-navigation__responsive-container-close{background:none;border:0}

/* Contact Form 7 : le gabarit du formulaire reprend les classes de la
   maquette, il ne reste que les elements que CF7 ajoute lui-meme. */
.wpcf7 form .wpcf7-response-output{
  margin:18px 0 0;padding:12px 16px;border:1px solid var(--filet);border-radius:var(--r);
  font-size:.75rem;color:var(--plume);
}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--sauge-2);color:var(--encre);background:var(--sauge)}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output{border-color:#B4523F;color:#B4523F}
.wpcf7-not-valid-tip{display:block;margin-top:6px;font-size:.6875rem;color:#B4523F}
.wpcf7-spinner{display:none}

/* Un lien vide de core/image ne doit jamais encadrer une photo de fond. */
figure.wp-block-image a{display:block}
