@import url('https://fonts.googleapis.com/css2?family=Literata:opsz,wght@7..72,300..900&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

:root{--papier:#f3efe5;--papier2:#e7e0d2;--encre:#171516;--nuit:#170b19;--lie:#7b2336;--sauge:#afc3b0;--blanc:#fffdf7;--filet:rgba(23,21,22,.28);--titre:'Literata',serif;--texte:'Plus Jakarta Sans',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--papier);color:var(--encre);font:1rem/1.65 var(--texte);font-size:1rem;overflow-x:hidden}
img{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
h1,h2,h3{font-family:var(--titre);margin:0;line-height:.9;letter-spacing:-.04em}
h1{font-size:clamp(3.5rem,8vw,9rem);font-weight:900}
h2{font-size:clamp(2.8rem,5.5vw,6.4rem);font-weight:700}
h3{font-size:clamp(1.55rem,2.6vw,2.8rem);font-weight:600}
p{margin:.65rem 0 1.25rem}
.env{width:min(900px,calc(100% - 3rem));margin-inline:auto}
.sur{font-size:.7rem;letter-spacing:.21em;text-transform:uppercase;font-weight:700}
.txt-lie{color:var(--lie)}
.hd{position:sticky;top:0;z-index:60;background:rgba(243,239,229,.96);border-bottom:1px solid var(--filet);backdrop-filter:blur(16px);transition:background .35s,color .35s,box-shadow .35s}
.accueil .hd{position:absolute;width:100%;background:transparent;color:var(--blanc);border-color:rgba(255,255,255,.25)}
.accueil .hd.defile{position:fixed;background:rgba(23,11,25,.9);box-shadow:0 10px 35px rgba(0,0,0,.18)}
.barre{min-height:92px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.2rem;padding:0 max(1.5rem,calc((100vw - 1240px)/2))}
.logo{font:800 clamp(1.3rem,2vw,2rem)/1 var(--titre);letter-spacing:-.04em}
.logo i{font-weight:400;color:var(--lie)}
.accueil .logo i{color:var(--sauge)}
.nav{display:flex;gap:1.15rem;justify-content:center;font-size:.8rem}
.nav a{border-bottom:1px solid transparent;transition:color .25s,transform .25s,border-color .25s}
.nav a:hover{color:var(--lie);transform:translateY(-2px);border-color:currentColor}
.accueil .nav a:hover{color:var(--sauge)}
.actions-hd{display:flex;justify-content:flex-end;align-items:center;gap:.85rem}
.tel{font-size:.8rem;font-weight:700;white-space:nowrap;transition:color .25s,letter-spacing .25s}
.tel:hover{color:var(--lie);letter-spacing:.02em}
.menu-mob{display:none;background:none;border:1px solid currentColor;color:inherit;min-height:44px;padding:.5rem .8rem;transition:background .25s,color .25s}
.menu-mob:hover{background:var(--lie);color:#fff}
.btn{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:.75rem 1.1rem;border:1px solid currentColor;background:transparent;font-size:.73rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:background .25s,color .25s,transform .25s}
.btn:hover{background:var(--lie);color:white;transform:translateY(-3px)}
.btn-plein{background:var(--lie);color:white;border-color:var(--lie);transition:background .25s,color .25s,transform .25s,box-shadow .25s}
.btn-plein:hover{background:var(--sauge);color:var(--nuit);transform:translateY(-3px);box-shadow:0 8px 0 rgba(23,11,25,.18)}
.heros{height:100vh;min-height:720px;position:relative;color:var(--blanc);overflow:hidden;background:var(--nuit)}
.heros>picture,.heros>picture img{position:absolute;inset:0;width:100%;height:100%}
.heros>picture img{animation:ken 22s ease-in-out infinite alternate}
.heros::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,11,25,.96) 0,rgba(23,11,25,.78) 35%,rgba(23,11,25,.12) 68%,transparent 100%)}
.heros-contenu{position:relative;z-index:2;height:100%;display:flex;align-items:flex-end;padding:0 max(1.5rem,calc((100vw - 1240px)/2)) 6vh}
.heros-grille{width:100%;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:4rem;align-items:end}
.heros h1{max-width:760px;animation:monte .8s .15s both}
.heros p{max-width:560px;font-size:1.1rem;animation:monte .8s .3s both}
.outil-heros{background:var(--papier);color:var(--encre);padding:1.3rem;border:1px solid rgba(255,255,255,.4);animation:monte .8s .45s both}
.amorce{color:var(--lie);font-size:.82rem;font-weight:700;margin-top:0}
.choix{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin:.8rem 0}
.choix button{min-height:44px;border:1px solid var(--encre);background:transparent;text-align:left;padding:.65rem;font-size:.78rem;transition:background .2s,color .2s,transform .2s}
.choix button:hover,.choix button.actif{background:var(--lie);color:#fff;transform:translateY(-2px)}
.rep-outil{border-top:1px solid var(--filet);padding-top:.8rem;font:600 1.05rem var(--titre)}
.defile-indic{position:absolute;z-index:3;bottom:1.5rem;left:50%;writing-mode:vertical-rl;font-size:.65rem;letter-spacing:.16em;animation:flotte 2s ease-in-out infinite}
.essentiel{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--filet)}
.essentiel>div{padding:1.35rem;border-right:1px solid var(--filet);min-height:118px}
.essentiel strong{display:block;font:600 1.18rem var(--titre)}
.manifeste{padding:clamp(6rem,11vw,11rem) 0}
.manifeste .colonnes{display:grid;grid-template-columns:.65fr 1.35fr;gap:3rem}
.manifeste p{font:600 clamp(2.4rem,5.6vw,5.8rem)/1.03 var(--titre);margin:0}
.plein{height:88vh;min-height:620px;position:relative;background:var(--papier2);overflow:hidden}
.plein img{filter:saturate(.84);transition:filter .7s,transform 1s}
.plein:hover img{filter:saturate(1.1);transform:scale(1.018)}
.plein-legende{position:absolute;bottom:2rem;left:2rem;background:var(--papier);max-width:430px;padding:1.2rem;border:1px solid var(--encre)}
.edito{padding:7rem 0;border-bottom:1px solid var(--filet)}
.entete-section{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:3rem}
.entete-section p{max-width:340px}
.fiches{border-top:1px solid var(--filet)}
.fiche{display:grid;grid-template-columns:90px 1fr 1fr auto;gap:1.5rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--filet);transition:padding-left .25s,color .25s,background .25s}
.fiche:hover{padding-left:1rem;color:var(--lie);background:rgba(255,255,255,.35)}
.fiche .num{font:900 2.5rem var(--titre);color:var(--lie)}
.fiche .prix{font-weight:700;white-space:nowrap}
.negatif{background:var(--nuit);color:var(--blanc);padding:8rem 0;position:relative;overflow:hidden}
.negatif::before{content:'LE GOÛT AVANT LES MOTS';position:absolute;top:-.1em;left:-2vw;font:900 clamp(5rem,14vw,13rem)/1 var(--titre);color:rgba(255,255,255,.035);white-space:nowrap}
.frise{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.3);position:relative}
.frise article{padding:2rem;border-right:1px solid rgba(255,255,255,.3)}
.frise b{font:600 3rem var(--titre);color:var(--sauge)}
.moment{padding:10rem 0;text-align:center}
.moment blockquote{font:600 clamp(2.8rem,6.7vw,7rem)/.98 var(--titre);margin:0}
.appel{padding:7rem 0;border-top:1px solid var(--filet)}
.appel .env{display:grid;grid-template-columns:1.4fr .6fr;gap:3rem;align-items:end}
.page-haut{padding:clamp(5rem,10vw,9rem) 0 5rem;border-bottom:1px solid var(--filet);background:var(--blanc)}
.page-haut .titre-legal span{font-size:.68em;letter-spacing:-.03em}
.page-haut p{max-width:650px;font-size:1.12rem}
.page-image{height:min(58vw,650px);margin-top:3rem;background:repeating-linear-gradient(45deg,var(--papier2),var(--papier2) 12px,var(--sauge) 12px,var(--sauge) 24px)}
.contenu{padding:6rem 0}
.deux-col{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.trois-col{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.grand-visuel{height:680px;border:1px solid var(--encre);padding:10px;background:var(--papier2)}
.notes{display:grid;gap:.7rem}
.note-gout{display:grid;grid-template-columns:110px 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--filet)}
.note-gout span{font-weight:700}
.produits{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--filet)}
.produit{padding:2rem;border-right:1px solid var(--filet);border-bottom:1px solid var(--filet);transition:background .25s,transform .25s,color .25s}
.produit:hover{background:var(--blanc);transform:translateY(-5px);color:var(--lie)}
.produit .prix{font-weight:700;color:var(--lie)}
.outil{border:1px solid var(--encre);background:var(--blanc);padding:2rem}
.outil-etapes{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.outil-etapes fieldset{border:0;padding:0;margin:0}
.outil-etapes legend{font:600 1.4rem var(--titre);margin-bottom:.8rem}
.option{display:block;width:100%;min-height:44px;border:1px solid var(--filet);background:var(--papier);text-align:left;padding:.7rem;margin:.4rem 0;transition:background .2s,color .2s,border-color .2s,transform .2s}
.option:hover,.option.actif{background:var(--lie);color:#fff;border-color:var(--lie);transform:translateX(4px)}
.resultat{margin-top:2rem;padding:2rem;background:var(--nuit);color:#fff;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}
.resultat strong{font:600 2rem var(--titre)}
.formulaire{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.formulaire label{display:grid;gap:.4rem;font-size:.85rem}
.formulaire .large{grid-column:1/-1}
.formulaire input,.formulaire select,.formulaire textarea{width:100%;min-height:48px;border:1px solid var(--encre);background:var(--blanc);padding:.8rem;border-radius:0;transition:border-color .25s,background .25s,transform .25s}
.formulaire input:focus,.formulaire select:focus,.formulaire textarea:focus{outline:0;border-color:var(--lie);background:#f8f5ff;transform:translateY(-2px)}
.confirmation{display:none;padding:2rem;margin-top:2rem;border:1px solid var(--lie);background:var(--blanc)}
.confirmation.visible{display:block;animation:apparition .6s both}
.fq{border-top:1px solid var(--filet)}
.fq button{width:100%;border:0;border-bottom:1px solid var(--filet);background:none;text-align:left;padding:1.2rem 0;font-weight:700;min-height:44px;transition:color .25s,padding-left .25s}
.fq button:hover{color:var(--lie);padding-left:.5rem}
.fq .rep{display:none;padding:1rem 0 2rem;max-width:680px}
.fq .ouvert+.rep{display:block}
.tableau{width:100%;border-collapse:collapse}
.tableau th,.tableau td{padding:1rem;border-bottom:1px solid var(--filet);text-align:left}
.compte{display:grid;grid-template-columns:.7fr 1.3fr;gap:2rem}
.rail-compte{border-right:1px solid var(--filet);padding-right:2rem}
.carte-compte{border:1px solid var(--encre);padding:2rem;background:var(--blanc)}
.pied{background:var(--encre);color:var(--papier);padding:5rem 0 2rem}
.pied-grille{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:2rem}
.pied a{display:block;margin:.5rem 0;transition:color .25s,transform .25s}
.pied a:hover{color:var(--sauge);transform:translateX(4px)}
.sante{margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.25);font-weight:700}
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}
.rv.vue{opacity:1;transform:none}
.appel-mob{display:none}
@keyframes apparition{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes ken{to{transform:scale(1.06)}}
@keyframes monte{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes flotte{50%{transform:translateY(8px)}}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(123,35,54,0)}}
@keyframes rotation{to{transform:rotate(360deg)}}
@media(max-width:1100px){.heros-grille{grid-template-columns:1fr;gap:1.5rem}.outil-heros{max-width:560px}.heros-contenu{padding-bottom:4vh}}
@media(max-width:980px){.barre{grid-template-columns:1fr auto}.nav{display:none;position:absolute;left:0;right:0;top:92px;background:var(--nuit);color:#fff;padding:1.5rem;flex-direction:column;border-bottom:1px solid rgba(255,255,255,.3)}.nav.ouverte{display:flex}.menu-mob{display:block}.actions-hd .btn{display:none}.essentiel{grid-template-columns:1fr 1fr}.frise{grid-template-columns:1fr}.frise article{border-right:0;border-bottom:1px solid rgba(255,255,255,.3)}.fiche{grid-template-columns:60px 1fr auto}.fiche p{display:none}.produits{grid-template-columns:1fr 1fr}.pied-grille{grid-template-columns:1fr 1fr}.outil-etapes{grid-template-columns:1fr}.trois-col{grid-template-columns:1fr}}
@media(max-width:640px){.barre{min-height:76px}.tel{display:inline;font-size:.67rem}.heros{min-height:820px;height:100svh}.heros>picture img{object-position:center}.heros-contenu{padding:0 1.5rem 2rem}.heros-grille{gap:1rem}.heros h1{font-size:clamp(3.5rem,15vw,5.6rem)}.heros p{font-size:.95rem}.outil-heros{padding:1rem}.choix{grid-template-columns:1fr 1fr}.defile-indic{display:none}.page-haut h1{font-size:3rem}.essentiel{grid-template-columns:1fr}.essentiel>div{border-right:0;border-bottom:1px solid var(--filet);min-height:auto}.manifeste .colonnes,.deux-col,.appel .env,.compte{grid-template-columns:1fr}.plein{height:70vh;min-height:500px}.plein-legende{left:1rem;right:1rem;bottom:1rem}.entete-section{display:block}.fiche{grid-template-columns:42px 1fr}.fiche .prix{grid-column:2}.produits{grid-template-columns:1fr}.produit{border-right:0}.formulaire{grid-template-columns:1fr}.formulaire .large{grid-column:auto}.resultat{grid-template-columns:1fr}.grand-visuel{height:520px}.pied-grille{grid-template-columns:1fr}.appel-mob{display:flex;position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:70;background:var(--lie);color:#fff;min-height:52px;align-items:center;justify-content:center;font-weight:700;animation:pulse 2.5s infinite}.contenu{padding:4rem 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.rv{opacity:1;transform:none}}

/* Accueil — carnet de cave et preuves de sélection */
.preuve-heros{
  max-width:58ch;
  margin-top:1.25rem;
  padding-top:1rem;
  border-top:1px solid rgba(255,255,255,.42);
  font-size:.82rem!important;
  line-height:1.65!important;
  color:rgba(255,255,255,.88);
}
.texte-manifeste{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(1.5rem,4vw,4.5rem);
  align-items:start;
}
.texte-manifeste p{
  margin:0;
  max-width:42ch;
  font-size:clamp(1.05rem,1.5vw,1.32rem);
  line-height:1.7;
}
.texte-manifeste p:first-child::first-letter{
  float:left;
  margin:.12em .14em 0 0;
  color:var(--lie);
  font:700 3.7em/.72 var(--titre);
}
.selection-visuelle{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin-top:clamp(2rem,5vw,5rem);
  background:var(--encre);
  border:1px solid var(--encre);
}
.selection-visuelle figure{
  position:relative;
  min-height:390px;
  margin:0;
  overflow:hidden;
  background-color:var(--papier2);
  background-image:repeating-linear-gradient(135deg,transparent 0 12px,rgba(123,35,54,.1) 12px 13px);
  isolation:isolate;
  transition:transform .35s ease,box-shadow .35s ease;
}
.selection-visuelle figure::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,transparent 42%,rgba(23,21,22,.9));
  pointer-events:none;
  transition:opacity .35s ease;
}
.selection-visuelle img{
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
  filter:saturate(.82) contrast(1.04);
  transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s ease;
}
.selection-visuelle figcaption{
  position:absolute;
  z-index:2;
  left:1.25rem;
  right:1.25rem;
  bottom:1.2rem;
  display:grid;
  gap:.25rem;
  color:#fff;
  transform:translateY(.35rem);
  transition:transform .35s ease;
}
.selection-visuelle figcaption b{
  font:650 clamp(1.2rem,2vw,1.7rem)/1.1 var(--titre);
}
.selection-visuelle figcaption span{
  font-size:.72rem;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.selection-visuelle figure:hover{
  z-index:3;
  transform:translateY(-7px) rotate(-.25deg);
  box-shadow:0 20px 46px rgba(23,21,22,.24);
}
.selection-visuelle figure:hover img{
  transform:scale(1.045);
  filter:saturate(1) contrast(1.02);
}
.selection-visuelle figure:hover figcaption{
  transform:none;
}
.selection-visuelle figure:hover::after{
  opacity:.88;
}

/* Provenances — mise en page de revue imprimée */
.provenances{
  position:relative;
  padding:clamp(5rem,10vw,10rem) 0;
  overflow:hidden;
  background-color:var(--papier2);
  background-image:linear-gradient(rgba(23,21,22,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,21,22,.035) 1px,transparent 1px);
  background-size:32px 32px;
}
.provenances::before{
  content:"CARNET  /  04";
  position:absolute;
  top:2rem;
  right:-1rem;
  color:rgba(123,35,54,.11);
  font:800 clamp(4rem,11vw,10rem)/1 var(--titre);
  letter-spacing:-.07em;
  transform:rotate(2deg);
}
.provenances .entete-section{
  position:relative;
  z-index:2;
  align-items:end;
  margin-bottom:clamp(3rem,7vw,7rem);
}
.provenances .entete-section p{
  max-width:49ch;
  padding-left:1.3rem;
  border-left:3px solid var(--lie);
  line-height:1.75;
}
.mosaique-provenances{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:auto auto;
  gap:clamp(1.2rem,2.5vw,2.8rem);
  align-items:start;
}
.mosaique-provenances figure{
  position:relative;
  margin:0;
  background-color:var(--papier);
  background-image:repeating-linear-gradient(45deg,transparent 0 14px,rgba(123,35,54,.09) 14px 15px);
  box-shadow:0 12px 30px rgba(23,21,22,.12);
  transition:transform .42s cubic-bezier(.2,.7,.2,1),box-shadow .42s ease;
}
.mosaique-provenances figure::before{
  content:"";
  position:absolute;
  z-index:2;
  top:-8px;
  left:50%;
  width:78px;
  height:22px;
  background:rgba(243,239,229,.76);
  box-shadow:0 2px 8px rgba(23,21,22,.08);
  transform:translateX(-50%) rotate(-2deg);
  pointer-events:none;
}
.mosaique-provenances figure:nth-child(even)::before{
  transform:translateX(-50%) rotate(2deg);
}
.mosaique-provenances img{
  display:block;
  width:100%;
  height:clamp(260px,33vw,510px);
  object-fit:cover;
  filter:saturate(.78) sepia(.06);
  transition:filter .4s ease,transform .65s cubic-bezier(.2,.7,.2,1);
}
.mosaique-provenances figcaption{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:1rem;
  padding:1.25rem 1.3rem 1.6rem;
  border-top:1px solid var(--filet);
}
.mosaique-provenances figcaption .num{
  color:var(--lie);
  font:800 2rem/1 var(--titre);
}
.mosaique-provenances figcaption b{
  display:block;
  margin-bottom:.45rem;
  font:650 1.15rem/1.25 var(--titre);
}
.mosaique-provenances figcaption p{
  margin:0;
  font-size:.84rem;
  line-height:1.6;
}
.portrait-productrice{
  grid-column:1/6;
  transform:rotate(-1deg);
}
.portrait-productrice img{
  height:clamp(430px,53vw,720px);
  object-position:center 28%;
}
.marche-vignes{
  grid-column:7/13;
  margin-top:clamp(3rem,9vw,10rem)!important;
  transform:rotate(.7deg);
}
.vendange{
  grid-column:2/7;
  transform:rotate(.5deg);
}
.elevage{
  grid-column:8/13;
  margin-top:clamp(-3rem,-4vw,-1rem)!important;
  transform:rotate(-.8deg);
}
.mosaique-provenances figure:hover{
  z-index:4;
  transform:translateY(-9px) rotate(0);
  box-shadow:0 24px 54px rgba(23,21,22,.2);
}
.mosaique-provenances figure:hover img{
  filter:saturate(1) sepia(0);
  transform:scale(1.018);
}
.note-marge{
  position:relative;
  width:min(630px,88%);
  margin:clamp(3rem,7vw,7rem) 5% 0 auto;
  padding:2rem 2.4rem 2.2rem;
  color:var(--papier);
  background:var(--lie);
  box-shadow:10px 12px 0 var(--encre);
  transform:rotate(-1.2deg);
  transition:transform .35s ease,box-shadow .35s ease;
}
.note-marge::before{
  content:"NOTE DE DÉGUSTATION";
  position:absolute;
  top:-1.1rem;
  left:1.5rem;
  padding:.4rem .7rem;
  color:var(--encre);
  background:var(--papier);
  border:1px solid var(--encre);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.14em;
}
.note-marge b{
  display:block;
  margin-bottom:.55rem;
  font:650 clamp(1.45rem,3vw,2.2rem)/1.1 var(--titre);
}
.note-marge p{
  margin:0;
  max-width:60ch;
  line-height:1.7;
}
.note-marge:hover{
  transform:rotate(0) translateY(-4px);
  box-shadow:14px 16px 0 var(--encre);
}
.guide-service{
  display:grid;
  grid-template-columns:1.25fr repeat(3,minmax(0,1fr));
  gap:1px;
  margin-top:clamp(5rem,10vw,10rem);
  border:1px solid var(--encre);
  background:var(--encre);
  box-shadow:12px 14px 0 rgba(123,35,54,.18);
}
.guide-service-entete,
.guide-service article{
  min-height:340px;
  padding:clamp(1.4rem,2.5vw,2.4rem);
  background:var(--papier);
}
.guide-service-entete{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:var(--blanc);
}
.guide-service-entete h3{
  max-width:12ch;
  margin:1rem 0;
  font:650 clamp(2rem,3.7vw,3.6rem)/.98 var(--titre);
  letter-spacing:-.04em;
}
.guide-service-entete p{
  max-width:35ch;
  margin:0;
  font-size:.84rem;
  line-height:1.65;
}
.guide-service article{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:background .35s ease,color .35s ease,transform .35s ease;
}
.guide-service article>span{
  align-self:flex-end;
  color:var(--lie);
  font:750 3.2rem/1 var(--titre);
  transition:color .35s ease,transform .35s ease;
}
.guide-service article b{
  display:block;
  margin-bottom:.8rem;
  font:650 1.2rem/1.25 var(--titre);
}
.guide-service article p{
  margin:0;
  font-size:.82rem;
  line-height:1.62;
}
.guide-service article:hover{
  z-index:2;
  color:var(--papier);
  background:var(--lie);
  transform:translateY(-7px);
}
.guide-service article:hover>span{
  color:var(--papier);
  transform:rotate(-5deg) scale(1.06);
}

/* Grande table, avis et retrait */
.table-visuelle{
  display:grid;
  grid-template-columns:1.15fr .85fr 1fr;
  gap:1px;
  margin-top:3.5rem;
  border:1px solid rgba(255,255,255,.3);
  background:rgba(255,255,255,.3);
}
.table-visuelle figure{
  position:relative;
  min-height:360px;
  margin:0;
  overflow:hidden;
  background:var(--nuit) repeating-linear-gradient(135deg,transparent 0 13px,rgba(255,255,255,.06) 13px 14px);
  transition:flex-grow .4s ease,filter .4s ease;
}
.table-visuelle img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
  filter:saturate(.74) brightness(.78);
  transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s ease;
}
.table-visuelle figcaption{
  position:absolute;
  left:1rem;
  bottom:1rem;
  padding:.55rem .75rem;
  color:var(--encre);
  background:var(--papier);
  font:600 .82rem/1.2 var(--texte);
  transform:rotate(-1deg);
  transition:transform .3s ease,background .3s ease;
}
.table-visuelle figure:hover img{
  transform:scale(1.04);
  filter:saturate(.96) brightness(.9);
}
.table-visuelle figure:hover figcaption{
  background:#fff;
  transform:rotate(0) translateY(-4px);
}
.moment .env{
  position:relative;
}
.moment .env::before{
  content:"“";
  position:absolute;
  top:-4rem;
  left:-2rem;
  color:rgba(123,35,54,.12);
  font:800 16rem/1 var(--titre);
  pointer-events:none;
}
.moment .env>p{
  max-width:66ch;
  margin:1.5rem auto 0;
  text-align:center;
  line-height:1.75;
}
.avis-grille{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.5rem;
  margin-top:3.5rem;
  text-align:left;
}
.avis-grille article{
  position:relative;
  padding:2rem;
  background:rgba(255,253,247,.7);
  border:1px solid var(--encre);
  box-shadow:7px 8px 0 rgba(123,35,54,.2);
  transition:transform .35s ease,box-shadow .35s ease,background .35s ease;
}
.avis-grille article:nth-child(2){
  transform:translateY(1.3rem) rotate(.6deg);
}
.avis-grille article b{
  font:650 1.35rem/1.25 var(--titre);
}
.avis-grille article p{
  margin:.8rem 0 1.2rem;
  line-height:1.65;
}
.avis-grille article span{
  color:var(--lie);
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.05em;
}
.avis-grille article:hover{
  background:var(--blanc);
  transform:translateY(-6px) rotate(0);
  box-shadow:11px 13px 0 rgba(123,35,54,.27);
}
.appel .env{
  align-items:center;
}
.coffret-appel{
  position:relative;
  justify-self:end;
  width:min(410px,100%);
  min-height:310px;
  overflow:hidden;
  background:var(--papier2) repeating-linear-gradient(45deg,transparent 0 12px,rgba(123,35,54,.12) 12px 13px);
  box-shadow:10px 12px 0 var(--encre);
  transition:transform .4s ease,box-shadow .4s ease;
}
.coffret-appel img{
  display:block;
  width:100%;
  height:310px;
  object-fit:cover;
  filter:saturate(.8);
  transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}
.coffret-appel .btn{
  position:absolute;
  left:1rem;
  right:1rem;
  bottom:1rem;
  justify-content:center;
  border-color:var(--papier);
  box-shadow:0 8px 20px rgba(23,21,22,.25);
}
.coffret-appel:hover{
  transform:translateY(-6px) rotate(.4deg);
  box-shadow:14px 17px 0 var(--encre);
}
.coffret-appel:hover img{
  transform:scale(1.035);
  filter:saturate(1);
}

/* États, lecture et accessibilité */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid var(--sauge);
  outline-offset:4px;
}
.nav a[aria-current="page"]{
  color:var(--lie);
  border-bottom-color:currentColor;
}
::selection{
  color:var(--papier);
  background:var(--lie);
}
@keyframes tampon{
  0%{opacity:0;transform:scale(1.35) rotate(-8deg)}
  65%{opacity:1;transform:scale(.96) rotate(1deg)}
  100%{opacity:1;transform:scale(1) rotate(0)}
}
@keyframes glissement-papier{
  from{opacity:0;transform:translateX(-28px) rotate(-2deg)}
  to{opacity:1;transform:translateX(0) rotate(0)}
}
@keyframes trace-encre{
  from{clip-path:inset(0 100% 0 0)}
  to{clip-path:inset(0)}
}
@keyframes respiration-photo{
  0%,100%{filter:saturate(.76) contrast(1.02)}
  50%{filter:saturate(.9) contrast(1.05)}
}
.provenances .sur{
  animation:tampon .65s both;
}
.note-marge.vue{
  animation:glissement-papier .7s both;
}
.selection-visuelle.vue{
  animation:trace-encre .9s both;
}
.coffret-appel img{
  animation:respiration-photo 8s ease-in-out infinite;
}
@media(max-width:1100px){
  .selection-visuelle{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mosaique-provenances{gap:1.2rem}
  .portrait-productrice{grid-column:1/7}
  .marche-vignes{grid-column:7/13}
  .vendange{grid-column:1/7}
  .elevage{grid-column:7/13}
  .guide-service{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .texte-manifeste{grid-template-columns:1fr}
  .selection-visuelle{grid-template-columns:1fr 1fr}
  .selection-visuelle figure,.selection-visuelle img{min-height:310px}
  .provenances::before{top:1.2rem;right:0;font-size:4rem}
  .provenances .entete-section p{padding-left:1rem}
  .mosaique-provenances{display:block}
  .mosaique-provenances figure{margin:0 0 2rem!important;transform:none}
  .mosaique-provenances img,.portrait-productrice img{height:420px}
  .table-visuelle{grid-template-columns:1fr}
  .table-visuelle figure,.table-visuelle img{min-height:310px}
  .avis-grille{grid-template-columns:1fr}
  .avis-grille article:nth-child(2){transform:none}
  .coffret-appel{justify-self:start;margin-top:2rem}
  .guide-service{grid-template-columns:1fr}
  .guide-service-entete,.guide-service article{min-height:0}
  .guide-service article>span{align-self:flex-start;margin-bottom:2rem}
}
@media(max-width:480px){
  .preuve-heros{display:none}
  .selection-visuelle{grid-template-columns:1fr}
  .selection-visuelle figure,.selection-visuelle img{min-height:350px}
  .mosaique-provenances img,.portrait-productrice img{height:340px}
  .mosaique-provenances figcaption{grid-template-columns:42px 1fr;padding:1rem}
  .note-marge{width:94%;margin-right:0;padding:1.7rem 1.25rem}
  .table-visuelle figure,.table-visuelle img{min-height:280px}
  .avis-grille article{padding:1.4rem}
}
@media print{
  .hd,.outil-heros,.defile-indic,.appel-mob,.appel,.pied{display:none!important}
  body{color:#000;background:#fff}
  .heros{height:auto;min-height:0;color:#000;background:#fff}
  .heros>picture{display:none}
  .heros-contenu{position:static;padding:2rem 0;background:#fff}
  .heros-grille{display:block}
  .rv{opacity:1!important;transform:none!important}
  .provenances,.negatif{color:#000;background:#fff}
  .selection-visuelle,.table-visuelle{break-inside:avoid}
}
@media(forced-colors:active){
  .btn,.fiche,.avis-grille article,.note-marge{border:2px solid ButtonText}
  .sur,.txt-lie,.prix{color:LinkText}
}
