:root {
  --fond: #f6f5f0;
  --papier: #fff;
  --encre: #252922;
  --bleu: #2856cb;
  --secondaire: #64665e;
  --trait: color-mix(in srgb, var(--encre) 19%, transparent);
  --leger: color-mix(in srgb, var(--bleu) 7%, var(--fond));
  --voile: color-mix(in srgb, var(--encre) 64%, transparent);
  --titre: Impact, 'Arial Narrow', 'Helvetica Neue', sans-serif;
  --corps: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--fond);color:var(--encre);font-family:var(--corps);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--titre);font-weight:900;line-height:.96;letter-spacing:-.025em}h1{font-size:clamp(48px,8.35vw,130px)}h2{font-size:clamp(43px,6vw,88px)}h3{line-height:1.2}em{font-style:normal;color:var(--bleu)}a:focus-visible,summary:focus-visible{outline:3px solid var(--bleu);outline-offset:5px}a,summary{-webkit-tap-highlight-color:var(--leger)}.cadre{width:calc(100% - 36px);max-width:1360px;margin-inline:auto}.espace{padding-block:66px}.repere{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--bleu);margin-bottom:14px}.evitement{position:absolute;top:-100px;background:var(--papier);padding:16px;z-index:10}.evitement:focus{top:0}.bandeau{padding:14px 24px;background:var(--leger);color:var(--bleu);text-align:center;font-size:14px}.bandeau[hidden]{display:none}.entete{display:grid;grid-template-columns:60px 1fr;align-items:center;gap:0 15px;padding-block:12px;border-bottom:1px solid var(--trait)}.logo{grid-row:span 2}.logo img{width:58px;height:58px;object-fit:contain}.entete nav{display:flex;justify-content:flex-end;gap:18px;grid-column:2}.entete nav a{font-size:12px;min-height:44px;display:flex;align-items:center}.entete nav a[aria-current]{color:var(--bleu)}.telephone{grid-column:2;text-align:right;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:flex-end;min-height:44px;gap:8px}.telephone span{color:var(--bleu)}.pratique{padding-top:24px}.soir{padding-bottom:24px}.soir .repere{margin-bottom:10px}.point{display:inline-block;width:7px;height:7px;background:var(--bleu);border-radius:50%;margin-right:6px}.soir h2{font-size:34px;letter-spacing:-.02em}.soir p:not(.repere){font-size:13px;color:var(--secondaire);max-width:58ch;margin-top:8px}.actions{display:flex;gap:10px;margin-top:17px}.bouton{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:49px;padding:13px 22px;background:var(--bleu);color:var(--papier);font-size:12px;font-weight:600;border:1px solid var(--bleu);transition:background .25s,transform .25s}.bouton:hover{background:var(--encre);border-color:var(--encre);transform:translateY(-2px)}.bouton--ligne{background:transparent;color:var(--encre);border-color:var(--trait)}.bouton--ligne:hover{color:var(--papier)}.actions .bouton{flex:1}.planning{border-top:1px solid var(--trait);border-bottom:1px solid var(--trait);padding-top:15px}.planning__titre{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}.planning__titre h3{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--bleu)}.planning__titre>span{font-size:10px;color:var(--secondaire)}#semaine{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}#semaine li{padding:12px 8px;border-top:1px solid var(--trait);font-size:11px}#semaine li[data-aujourdhui=true]{background:var(--leger);box-shadow:inset 0 2px var(--bleu)}#semaine strong{display:block;margin-bottom:7px;font-size:10px;font-weight:500;color:var(--secondaire)}#semaine b{font-weight:600;display:block}#semaine small{font-size:9px;color:var(--secondaire);display:block;margin-top:2px}.identite{padding-top:30px}.identite__chapeau{display:flex;justify-content:space-between;gap:15px;margin-bottom:15px}.identite__chapeau .repere{margin:0}.identite__chapeau>span{font-size:10px;color:var(--secondaire);text-align:right;max-width:140px}.identite h1{margin-bottom:24px}.identite h1 span{color:var(--bleu)}.scene{height:440px;position:relative;overflow:hidden;border-radius:180px 180px 0 0;background:var(--encre)}.scene>img{height:100%;width:100%;object-position:52% center;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.scene:hover>img{transform:scale(1.04)}.scene:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,var(--voile));pointer-events:none}.scene__legende{position:absolute;inset:auto 20px 22px;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:20px;color:var(--papier)}.scene__legende>span{font-family:Georgia,serif;font-style:italic;font-size:25px;max-width:200px;line-height:1.15}.rond{display:grid;place-items:center;flex-shrink:0;width:52px;height:52px;border-radius:50%;border:1px solid var(--papier);font-size:28px;transition:transform .3s}.rond:hover{transform:rotate(45deg)}.sceau{display:none}.identite__bas{display:grid;gap:16px;padding-block:19px;border-bottom:1px solid var(--trait)}.identite__bas>span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--secondaire)}.identite__bas>p{font-size:15px;max-width:510px}.titre-section{display:flex;flex-direction:column;gap:25px;margin-bottom:32px}.titre-section>div>p:not(.repere),.titre-section>p{font-size:14px;color:var(--secondaire)}.lien{display:inline-flex;align-items:center;gap:28px;min-height:44px;border-bottom:1px solid var(--encre);font-size:12px;font-weight:600;margin-top:15px}.lien span{font-size:20px;transition:transform .3s}.lien:hover span{transform:translate(3px,-3px)}.selection{display:grid;gap:35px}.pizza__image{overflow:hidden;background:var(--leger);aspect-ratio:1.14}.pizza__image img{height:100%;width:100%;transition:transform .8s}.pizza:hover img{transform:scale(1.055)}.pizza__titre{display:flex;justify-content:space-between;gap:15px;align-items:baseline;margin-top:17px;margin-bottom:9px}.pizza h3{font-size:21px;font-weight:500;letter-spacing:-.025em}.prix{font-size:13px;white-space:nowrap;color:var(--bleu)}.pizza p{font-size:12px;color:var(--secondaire);max-width:45ch}.allergene{display:block;font-size:10px;color:var(--secondaire);margin-top:8px}.moment{margin-top:40px;border-top:1px solid var(--trait);border-bottom:1px solid var(--trait);padding:22px 0;display:grid;grid-template-columns:90px 1fr;gap:20px;align-items:center}.moment img{width:90px;height:120px;object-fit:cover}.moment .repere{font-size:9px;margin-bottom:7px}.moment h3{font-size:24px;font-weight:500;display:flex;align-items:center;gap:18px}.moment p:not(.repere){font-size:12px;color:var(--secondaire);margin-top:8px}.etapes{list-style:none;padding:0;margin:0;display:grid;gap:25px}.etapes li{border-top:1px solid var(--trait);padding-top:17px}.etapes li>span{font-size:12px;color:var(--bleu);display:block;margin-bottom:24px}.etapes h3{font-size:23px;letter-spacing:-.03em;font-weight:500;margin-bottom:10px}.etapes p{font-size:13px;color:var(--secondaire);max-width:38ch}.savoir{background:var(--papier)}.savoir__grille{display:grid;gap:36px}.savoir__texte>p:not(.repere){font-size:15px;max-width:39ch;margin-top:26px;color:var(--secondaire)}.signature{display:block;font-family:Georgia,serif;font-style:italic;font-size:24px;margin-top:22px}.detail{margin:0}.detail img{width:100%;height:440px;object-position:25%;border-radius:180px 180px 0 0}.detail figcaption{font-size:10px;color:var(--secondaire);margin-top:12px}.avis{max-width:950px;text-align:center}.avis>p:not(.repere){font-size:14px;max-width:49ch;margin:24px auto 0;color:var(--secondaire)}.fete{display:grid;background:var(--papier);margin-bottom:70px}.fete__photo{overflow:hidden}.fete__photo img{width:100%;height:310px;transition:transform 1s}.fete:hover img{transform:scale(1.04)}.fete__texte{padding:30px 22px}.fete__texte h2{font-size:44px}.fete__texte>p:not(.repere){font-size:14px;color:var(--secondaire);margin-block:20px;max-width:36ch}.pied{border-top:1px solid var(--trait);padding-top:30px;padding-bottom:20px}.pied__haut{display:flex;flex-direction:column;gap:25px}.pied__tel{font-size:27px;font-weight:500;letter-spacing:-.05em;display:inline-flex;align-items:center;min-height:44px}.reseaux{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;font-size:11px}.reseaux a{display:inline-flex;align-items:center;min-height:44px}.reseaux>span{color:var(--secondaire)}.pied__signature{font-family:var(--titre);font-weight:900;font-size:clamp(53px,13.6vw,201px);letter-spacing:-.03em;line-height:1.25;margin:23px 0;color:var(--bleu);white-space:nowrap}.pied__bas{border-top:1px solid var(--trait);padding-top:20px;font-size:10px;color:var(--secondaire);display:flex;flex-direction:column;gap:12px}.pied details{max-width:300px}.pied summary{min-height:44px;cursor:pointer}.intro-page{padding-block:45px 35px}.intro-page>p:not(.repere){margin-top:23px;font-size:16px;color:var(--secondaire)}.banniere-carte img{width:100%;height:300px;object-position:center 55%;border-radius:150px 150px 0 0}.categories{display:flex;flex-wrap:wrap;gap:0 22px;border-bottom:1px solid var(--trait);padding:15px 0}.categories a{font-size:12px;min-height:44px;display:inline-flex;align-items:center}.categorie-menu{padding-top:50px}.categorie-menu h2{font-size:40px;margin-bottom:22px}.liste-menu{display:grid;gap:0 45px}.ligne-menu{padding:22px 0;border-top:1px solid var(--trait)}.ligne-menu .pizza__titre{margin-top:0}.ligne-menu h3{font-size:22px;font-weight:500}.ligne-menu p{font-size:13px;color:var(--secondaire);max-width:58ch}.note-menu{padding-block:35px 65px;font-size:12px;color:var(--secondaire);max-width:80ch}.evenement-visuel{display:grid;gap:35px}.evenement-visuel>img{width:100%;height:440px;border-radius:180px 180px 0 0}.evenement-visuel>div>p:not(.repere){margin-block:25px;max-width:44ch;font-size:15px;color:var(--secondaire)}.contact-evenement{padding:40px 0 75px}.contact-evenement h2{margin-bottom:20px}
@media(min-width:750px){.cadre{width:calc(100% - 88px)}.entete{grid-template-columns:1fr auto 1fr;padding-block:16px}.logo{grid-row:1}.logo img{height:65px;width:65px}.entete nav{grid-column:2;gap:35px}.entete nav a{font-size:13px}.telephone{grid-column:3;font-size:13px}.soir{display:flex;justify-content:space-between;align-items:center;gap:30px}.soir h2{font-size:32px}.actions{margin:0;flex-shrink:0}.actions .bouton{min-width:134px}#semaine{grid-template-columns:repeat(6,minmax(0,1fr))}#semaine li{border-top:0;border-right:1px solid var(--trait);padding:12px 14px 16px}#semaine li:last-child{border-right:0}#semaine strong{font-size:10px}#semaine b{font-size:12px}.planning{padding-top:10px}.planning__titre{margin-bottom:4px}.identite{padding-top:35px}.identite__chapeau>span{max-width:none;font-size:11px}.scene{height:570px;border-radius:280px 280px 0 0}.scene__legende{inset:auto 35px 32px}.scene__legende>span{font-size:40px;max-width:none}.sceau{display:block;position:absolute;top:35px;right:30px;background:var(--fond);color:var(--bleu);width:118px;height:118px;border-radius:50%;z-index:1;text-align:center;padding-top:23px;font-size:12px;line-height:1.6;letter-spacing:.1em;transform:rotate(12deg)}.sceau i{font-family:Georgia,serif;letter-spacing:0}.identite__bas{grid-template-columns:1fr 1fr;padding-block:24px}.espace{padding-block:95px}.titre-section{flex-direction:row;justify-content:space-between;align-items:end;margin-bottom:45px}.titre-section>div:last-child:not(:first-child){max-width:270px}.selection{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.pizza h3{font-size:23px}.selection .pizza:nth-child(2){padding-top:60px}.selection .pizza:nth-child(3){padding-top:120px}.moment{grid-template-columns:140px 1fr;gap:30px;margin-top:40px;padding-block:25px}.moment img{width:140px;height:130px}.moment p:not(.repere){max-width:73ch}.etapes{grid-template-columns:repeat(3,1fr);gap:40px}.savoir__grille{grid-template-columns:1fr 1fr;align-items:center;gap:70px}.detail img{height:570px;border-radius:240px 240px 0 0}.fete{grid-template-columns:1fr 1fr;align-items:center}.fete__photo img{height:540px}.fete__texte{padding:40px}.fete__texte h2{font-size:clamp(44px,5vw,73px)}.pied__haut{flex-direction:row;justify-content:space-between;align-items:center}.pied__tel{font-size:36px}.pied__bas{flex-direction:row;justify-content:space-between}.intro-page{padding-block:65px 45px}.banniere-carte img{height:460px;border-radius:250px 250px 0 0}.liste-menu{grid-template-columns:1fr 1fr}.evenement-visuel{grid-template-columns:1fr 1fr;align-items:center;gap:60px}.evenement-visuel>img{height:590px}.evenement-visuel h2{font-size:clamp(44px,5vw,73px)}}
@media(min-width:1100px){.entete .logo img{width:72px;height:72px}.scene{height:650px;border-radius:340px 340px 0 0}.identite h1{font-size:clamp(85px,8.1vw,124px)}.scene__legende>span{font-size:48px}.pratique{padding-top:23px}}
@media(prefers-reduced-motion:no-preference){.revelation.en-attente{opacity:0;transform:translateY(28px)}.revelation{transition:opacity .75s,transform .75s}.revelation.visible{opacity:1;transform:none}@supports(animation-timeline:view()){.scene{animation:ouvrir-cadre linear both;animation-timeline:view();animation-range:entry 5% cover 50%}.scene>img{animation:approcher linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes ouvrir-cadre{from{border-radius:45% 45% 0 0}to{border-radius:3px}}@keyframes approcher{from{scale:1.03}to{scale:1.15}}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.revelation.en-attente{opacity:1;transform:none}}

[hidden]{display:none!important}.bouton{white-space:nowrap}@media(min-width:750px){.sceau{top:auto;bottom:115px;right:36px}}

/* V2 — photographie en ouverture, sections sur toute la largeur. */
:root {
  --gouttiere: clamp(20px, 3.4vw, 88px);
  --hero-ombre: color-mix(in srgb, var(--encre) 76%, transparent);
  --hero-ombre-legere: color-mix(in srgb, var(--encre) 12%, transparent);
}
.cadre { width: 100%; max-width: none; padding-inline: var(--gouttiere); }
.entete { padding-block: 10px; }
.hero { position: relative; isolation: isolate; display: flex; align-items: center; min-height: calc(100svh - 110px); background: var(--encre); color: var(--papier); overflow: hidden; }
.hero__photo { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -2; object-position: 60% center; }
.hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, var(--hero-ombre), var(--hero-ombre-legere)), linear-gradient(0deg, var(--hero-ombre), transparent 65%); }
.hero__contenu { width: 100%; padding: 48px var(--gouttiere) 100px; }
.hero .repere { color: var(--papier); font-size: 10px; margin-bottom: 25px; }
.hero h1 { font-size: clamp(43px, 7.8vw, 160px); line-height: 1; letter-spacing: -.02em; }
.hero h1 span { color: var(--papier); }
.hero__phrase { font: italic 24px/1.3 Georgia, serif; margin-top: 22px; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.hero__actions .bouton { min-height: 58px; flex: 1; font-size: 16px; padding: 16px 24px; }
.bouton--creme { background: var(--fond); border-color: var(--fond); color: var(--encre); }
.bouton--creme:hover { color: var(--papier); }
.hero__suite { position: absolute; bottom: 22px; left: var(--gouttiere); right: var(--gouttiere); display: flex; justify-content: space-between; align-items: center; min-height: 44px; font-size: 12px; border-top: 1px solid color-mix(in srgb, var(--papier) 40%, transparent); padding-top: 12px; }
.hero__suite span { font-size: 22px; }
.pratique { padding-block: 34px; background: var(--papier); }
.soir { padding-bottom: 28px; }
.soir h2 { font-size: clamp(32px, 3.4vw, 66px); }
.soir p:not(.repere) { font-size: 14px; }
.planning { padding-top: 20px; }
#semaine li { padding-block: 16px; }
#semaine b { font-size: 13px; }
#semaine small { font-size: 10px; }
.carte { padding-inline: 0; }
.carte .titre-section { padding-inline: var(--gouttiere); }
.selection { gap: 30px; }
.pizza__titre, .pizza>p, .pizza>.allergene { margin-inline: var(--gouttiere); }
.pizza__image { aspect-ratio: 1.18; }
.pizza p { font-size: 14px; }
.moment { margin-inline: var(--gouttiere); }
.moment .pizza__titre { margin-inline: 0; }
.avis { background: var(--papier); border-top: 1px solid var(--trait); padding-block: 65px; }
.histoire { padding-top: 0; }
.histoire__grille { display: grid; }
.histoire__image { position: relative; margin: 0; }
.histoire__image img { width: 100%; height: 420px; object-position: 30% center; }
.histoire__image figcaption { position: absolute; inset: auto 0 0; padding: 40px var(--gouttiere) 20px; color: var(--papier); background: linear-gradient(transparent, var(--hero-ombre)); font-size: 12px; }
.histoire__texte { padding: 48px var(--gouttiere); }
.histoire__texte h2 { margin-bottom: 28px; }
.histoire__texte>p:not(.repere) { font-size: 16px; line-height: 1.7; max-width: 46ch; color: var(--secondaire); margin-bottom: 17px; }
.histoire__texte .signature { font-size: 24px; max-width: 30ch; }
.histoire__signature { padding: 25px var(--gouttiere) 65px; text-align: center; }
.histoire__signature>p { margin-bottom: 20px; font-size: 14px; color: var(--secondaire); }
.histoire__signature h2 { font-size: clamp(43px, 8.8vw, 180px); }
.histoire__signature .bouton { margin-top: 30px; }
.fete { padding-inline: 0; margin-bottom: 0; }
.fete__texte { padding: 38px var(--gouttiere); }
.pied { padding-block: 35px 20px; }
.pied__signature { font-size: clamp(48px, 13vw, 330px); }
@media(min-width:750px) {
  .hero { min-height: calc(100svh - 94px); }
  .hero__contenu { padding-top: 60px; padding-bottom: 100px; }
  .hero .repere { font-size: 12px; }
  .hero__phrase { font-size: 32px; }
  .hero__actions .bouton { flex: 0 0 200px; min-height: 64px; font-size: 17px; }
  .hero__suite { right: auto; min-width: 300px; gap: 80px; }
  .pratique { padding-block: 44px 30px; }
  .soir .actions .bouton { min-width: 170px; min-height: 56px; font-size: 14px; }
  #semaine li { padding: 20px; }
  #semaine strong { font-size: 12px; }
  #semaine b { font-size: 17px; }
  #semaine small { font-size: 12px; }
  .selection { gap: 20px; }
  .pizza__titre, .pizza>p, .pizza>.allergene { margin-inline: 24px; }
  .selection .pizza:nth-child(2), .selection .pizza:nth-child(3) { padding-top: 0; }
  .pizza__image { aspect-ratio: 1; }
  .avis { padding-block: 80px; }
  .histoire__signature { padding-block: 65px 95px; }
  .fete__photo img { height: 620px; }
}
@media(min-width:900px) {
  .histoire__grille { grid-template-columns: 1fr 1fr; align-items: stretch; }
  .histoire__image img { height: 100%; min-height: 650px; }
  .histoire__texte { padding: 75px var(--gouttiere); align-self: center; }
  .histoire__texte h2 { font-size: clamp(60px, 5.7vw, 120px); }
  .histoire__texte>p:not(.repere) { font-size: clamp(16px, 1.15vw, 22px); }
}
@media(prefers-reduced-motion:no-preference) {
  @supports(animation-timeline:view()) {
    .hero__photo { animation: souffle-hero linear both; animation-timeline: view(); animation-range: exit 0% exit 100%; }
    @keyframes souffle-hero { from { transform: scale(1); } to { transform: scale(1.1) translateY(3%); } }
  }
}

/* V3 — navigation, rendez-vous et sélections éditoriales. */
.entete { grid-template-columns: 58px 1fr auto; gap: 0 8px; }
.entete .logo { grid-column: 1; grid-row: 1; }
.entete>.liens-sociaux { grid-column: 2; grid-row: 1; justify-content: flex-end; }
.liens-sociaux { display: flex; align-items: center; gap: 0; }
.liens-sociaux a { display: grid; place-items: center; width: 44px; height: 44px; color: var(--encre); transition: color .2s, background .2s; }
.liens-sociaux a:hover { color: var(--bleu); background: var(--leger); }
.liens-sociaux svg { width: 19px; height: 19px; fill: currentColor; }
.entete .telephone { grid-column: 3; grid-row: 1; display: inline-flex; justify-content: center; background: var(--bleu); color: var(--papier); min-height: 44px; padding: 10px 12px; font-size: 12px; border-radius: 3px; }
.entete .telephone:hover { background: var(--encre); }
.entete nav { grid-column: 1/-1; grid-row: 2; justify-content: center; gap: 32px; }
.reseaux { gap: 18px; }
.reseaux .liens-sociaux { gap: 8px; }
.hero .repere { font-size: clamp(17px, 1.7vw, 30px); line-height: 1.3; letter-spacing: .07em; font-weight: 700; max-width: 34ch; }
.hero h1 { font-size: clamp(40px, 7vw, 145px); }
.hero__phrase { font: 15px/1.5 var(--corps); max-width: 35ch; }
.pratique { display: grid; gap: 32px; background: var(--fond); padding-block: 64px; border-bottom: 1px solid var(--trait); }
.pratique__intro h2 { font-size: clamp(50px, 5.3vw, 110px); }
.pratique__details { min-width: 0; }
.soir { display: block; border-top: 1px solid var(--trait); padding-block: 25px; }
.soir h2 { font-family: var(--corps); font-size: clamp(24px, 2.1vw, 42px); line-height: 1.12; letter-spacing: -.045em; font-weight: 600; }
.soir p:not(.repere) { max-width: 62ch; }
.soir .actions { margin-top: 24px; }
.soir .actions .bouton { flex: 0 1 auto; min-width: 150px; }
.planning { border-bottom: none; padding-top: 20px; }
.planning__titre { margin-bottom: 12px; }
#semaine { gap: 0 12px; }
#semaine li { border-right: 0; border-top: 1px solid var(--trait); padding: 15px 5px; }
#semaine li[data-aujourdhui=true] { background: transparent; box-shadow: inset 0 3px var(--bleu); }
#semaine li[data-aujourdhui=true] b, #semaine li[data-aujourdhui=true] strong { color: var(--bleu); }
#semaine strong { font-size: 11px; }
#semaine b { font-size: 14px; }
#semaine small { font-size: 10px; }
.carte__cta { min-height: 58px; padding-inline: 25px; font-size: 15px; margin-top: 20px; }
.carte .titre-section>div:last-child { max-width: none; }
.moment { margin: 0 0 42px; padding: 0; border: none; display: grid; grid-template-columns: 1fr; gap: 0; background: var(--papier); }
.moment>img { width: 100%; height: 350px; object-fit: cover; object-position: center 57%; }
.moment__texte { padding: 35px var(--gouttiere); }
.moment .repere { font-size: 12px; margin-bottom: 17px; }
.moment .moment__accroche { font-family: var(--titre); font-size: clamp(40px, 4.7vw, 90px); font-weight: 900; line-height: 1; letter-spacing: -.025em; color: var(--encre); margin: 0 0 25px; }
.moment .pizza__titre { margin: 0 0 16px; }
.moment h3 { font-size: 29px; }
.moment .prix { font-size: 21px; }
.moment p:not(.repere):not(.moment__accroche) { font-size: 15px; line-height: 1.65; max-width: 48ch; }
.avis { text-align: left; background: var(--papier); }
.avis__intro { margin-bottom: 40px; }
.avis__intro h2 { font-size: clamp(42px, 5.8vw, 110px); }
.avis__grille { display: grid; gap: 35px; }
.avis__bilan { border-top: 1px solid var(--trait); padding-top: 25px; }
.avis__plateforme { font-size: 12px; }
.avis__note { font-family: var(--titre); font-size: 100px; line-height: 1; margin-top: 20px; letter-spacing: -.04em; }
.avis__note>span { font: 24px var(--corps); color: var(--secondaire); margin-left: 10px; }
.etoiles { display: block; letter-spacing: .14em; color: var(--bleu); font-size: 20px; }
.avis__nombre { font-size: 16px; margin-top: 12px; }
.avis__source { font-size: 11px; color: var(--secondaire); margin-top: 18px; }
.avis__source a { text-decoration: underline; display: inline-flex; align-items: center; min-height: 44px; }
.avis__extraits { display: grid; gap: 15px; }
.avis__carte { border: 1px solid var(--trait); padding: 25px; background: var(--fond); display: flex; flex-direction: column; min-height: 210px; }
.avis__carte .etoiles { font-size: 13px; }
.avis__carte blockquote { margin: 25px 0; font: italic 24px/1.3 Georgia,serif; max-width: 28ch; }
.avis__carte figcaption { margin-top: auto; font-size: 12px; }
.avis__carte figcaption>span { display: block; margin-top: 5px; color: var(--secondaire); font-size: 11px; }
@media(min-width:750px) {
 .entete { grid-template-columns: 1fr auto auto auto; gap: 22px; }
 .entete nav { grid-column: 2; grid-row: 1; gap: 24px; }
 .entete>.liens-sociaux { grid-column: 3; }
 .entete .telephone { grid-column: 4; padding-inline: 20px; }
 .hero__phrase { font-size: 20px; max-width: none; }
 .pratique { padding-block: 80px; }
 .soir .actions { display: flex; }
 #semaine { grid-template-columns: repeat(3,minmax(0,1fr)); }
 #semaine b { font-size: 16px; }
 .moment { grid-template-columns: 1fr 1fr; align-items: stretch; margin-bottom: 55px; }
 .moment>img { height: 100%; min-height: 550px; max-height: 720px; }
 .moment__texte { align-self: center; padding-block: 45px; }
 .avis__extraits { grid-template-columns: 1fr 1fr; gap: 20px; }
}
@media(min-width:1100px) {
 .pratique { grid-template-columns: .85fr 1.6fr; gap: 6vw; align-items: start; }
 .pratique__intro { position: sticky; top: 35px; }
 .avis__grille { grid-template-columns: .8fr 1.6fr; gap: 6vw; }
 .avis__note { font-size: 130px; }
 .avis__carte { min-height: 250px; padding: 30px; }
}
@media(min-width:1700px) { #semaine { grid-template-columns: repeat(6,minmax(0,1fr)); } }

.moment .pizza__titre h3 { font-family: var(--titre); font-weight: 900; text-transform: uppercase; font-size: clamp(42px, 5.2vw, 100px); letter-spacing: -.025em; line-height: 1; }

.avis__extraits { gap:18px 32px; }
.avis__carte { border:0; border-top:1px solid var(--trait); background:transparent; min-height:0; padding:24px 0; }
.avis__carte .avis__auteur { display:flex; align-items:center; gap:12px; margin:0 0 16px; }
.avis__carte figcaption>span { margin:0; }
.avis__avatar { display:grid!important; place-items:center; width:42px; height:42px; border-radius:50%; flex-shrink:0; background:var(--leger); color:var(--bleu)!important; font-size:17px!important; font-weight:600; }
.avis__identite strong { display:block; color:var(--encre); font-size:14px; }
.avis__identite>span { display:block; margin-top:3px; font-size:12px; color:var(--secondaire); }
.avis .etoiles { color:var(--etoiles-avis); }
.avis__carte .etoiles { font-size:16px; letter-spacing:.04em; }
.avis__carte blockquote { margin:12px 0 16px; font:16px/1.65 var(--corps); max-width:none; }
.avis__extrait { font-size:11px; color:var(--secondaire); margin-top:auto; }
/* Avis : présentation inspirée du visuel avis_google fourni. */
:root { --avis-fond:#f4f4f4; --etoiles-avis:#fbbc04; --google-jaune:#fbbc05; --google-rouge:#ea4335; --google-vert:#34a853; --google-bleu:#4285f4; }
.avis__grille { display:block; }
.avis__bilan { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; padding-block:20px 28px; }
.avis__bilan .avis__note { font-size:48px; margin:0; }
.avis__bilan .avis__plateforme { flex-basis:100%; }
.avis__bilan .avis__nombre,.avis__bilan .lien { margin:0; }
.avis__source { flex-basis:100%; margin:0; }
.avis__extraits { display:grid; grid-auto-flow:column; grid-auto-columns:85%; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; padding-block:8px; }
.avis__carte { border:0; border-radius:18px; background:var(--avis-fond); padding:24px; min-height:245px; scroll-snap-align:start; }
.avis__carte .avis__auteur { gap:10px; align-items:center; margin-bottom:18px; }
.avis__identite { flex:1; min-width:0; }
.avis__identite strong { font-size:15px; overflow-wrap:anywhere; }
.avis__identite>span { font-size:12px; }
.avis__google { width:24px; height:24px; flex-shrink:0; }
.avis__carte .etoiles { font-size:23px; letter-spacing:0; line-height:1.2; }
.avis__carte blockquote { font-size:17px; line-height:1.5; margin-top:14px; }
.avis__commandes { display:flex; justify-content:flex-end; gap:10px; margin-top:14px; }
.avis__commandes button { width:44px; height:44px; border:1px solid var(--trait); border-radius:50%; background:var(--papier); color:var(--encre); cursor:pointer; font-size:22px; }
.avis__commandes button:disabled { opacity:.35; cursor:default; }
.avis__commandes button:focus-visible { outline:3px solid var(--bleu); outline-offset:3px; }
@media(min-width:750px) { .avis__extraits { grid-auto-columns:calc((100% - 20px)/2); } }
@media(min-width:1200px) { .avis__extraits { grid-auto-columns:calc((100% - 60px)/4); } }

/* Demande de privatisation — prototype statique. */
.contact-evenement{display:grid;gap:32px;text-align:left}.contact-intro>p{margin-top:20px;max-width:40ch}.formulaire-evenement{padding:24px;background:var(--papier);border:1px solid var(--trait);border-radius:8px}.cache-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.champs-evenement{display:grid;gap:20px;margin:20px 0}.champs-evenement label{display:grid;gap:8px;font-size:14px}.champs-evenement input,.champs-evenement select,.champs-evenement textarea{width:100%;min-width:0;min-height:48px;border:1px solid var(--trait);border-radius:4px;background:var(--fond);color:var(--encre);padding:12px;font:16px var(--corps)}.champs-evenement textarea{resize:vertical}.champs-evenement :is(input,select,textarea):focus-visible{outline:2px solid var(--bleu);outline-offset:3px}.formulaire-aide{font-size:12px;color:var(--secondaire)}.formulaire-evenement .bouton{margin-top:18px;cursor:pointer}.retour-formulaire{margin-top:14px;font-size:14px}#demande-evenement{scroll-margin-top:30px}@media(min-width:750px){.contact-evenement{grid-template-columns:1fr 1.5fr;align-items:start;gap:5vw}.champs-evenement{grid-template-columns:1fr 1fr}.champ-large{grid-column:1/-1}}

/* Bilan Google et titre partagent la même rangée. */
.avis__entete{display:grid;gap:18px;margin-bottom:24px;align-items:center}.avis__entete .avis__intro{margin:0}.avis__entete .avis__intro h2{font-size:clamp(32px,5vw,80px)}.avis__entete .avis__bilan{border-top:0;padding:0;gap:10px 20px}.avis__entete .avis__intro .repere{margin-bottom:10px}@media(min-width:900px){.avis__entete{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5vw;margin-bottom:32px}.avis__entete .avis__intro{grid-column:1;grid-row:1}.avis__entete .avis__bilan{grid-column:2;grid-row:1}}

/* Touches de rose pâle — essai discret sur la direction A. */
:root { --rose-pale: #f3e3e8; }
.moment .repere { display:inline-block; padding:8px 12px; background:var(--rose-pale); color:var(--bleu); border-radius:3px; }
.fete__texte > .repere, .avis__intro > .repere, .avis__bilan .avis__nombre { display:inline-block; width:fit-content; padding:8px 12px; background:var(--rose-pale); color:var(--bleu); border-radius:3px; }
.rotation { display:grid; gap:16px; margin:28px 0; }
.rotation:empty { display:none; }
.rotation__carte { position:relative; background:var(--rose-pale); border:1px solid color-mix(in srgb, var(--bleu) 28%, transparent); border-radius:10px; padding:24px 22px 20px; overflow:hidden; }
.rotation__carte:before { content:''; position:absolute; inset:0 auto 0 0; width:4px; background:var(--bleu); }
.rotation__carte .repere { display:inline-block; background:var(--bleu); color:var(--papier); padding:5px 10px; border-radius:3px; margin-bottom:12px; }
.rotation__carte .pizza__titre { margin:0 0 8px; }
.rotation__carte h3 { font-size:19px; font-weight:600; }
.rotation__carte p { font-size:13px; color:var(--encre); max-width:52ch; }
@media (min-width:640px) { .rotation { grid-template-columns:1fr 1fr; } }

/* Entrée directe dans la présentation de privatisation. */
.evenement-visuel{padding-top:40px}.evenement-visuel h1{font-size:clamp(44px,5vw,73px);margin-bottom:24px}

/* Carte accessible dès le début de page. */
.entete-carte{padding:24px 0 12px}.entete-carte h1{font-size:clamp(32px,4vw,56px)}.entete-carte + .categories{margin-block:0 20px;padding-block:8px;gap:8px 20px;flex-wrap:wrap}#carte-complete .categorie-menu:first-child{padding-top:0;margin-top:0}#carte-complete .categorie-menu:first-child h2{font-size:clamp(28px,3vw,44px)}

/* Carte de trattoria : une seule feuille, recettes en texte. */
.carte-imprimee{--papier-menu:#fffdf6;--ombre-menu:color-mix(in srgb,var(--encre) 9%,transparent);margin-block:24px 50px;padding:22px 18px;background:var(--papier-menu);border:1px solid var(--bleu);outline:1px solid var(--bleu);outline-offset:-7px;box-shadow:0 12px 35px var(--ombre-menu)}
.carte-imprimee .entete-carte{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 14px;border-bottom:2px solid var(--bleu)}
.carte-imprimee .entete-carte img{width:56px;height:56px;object-fit:contain}.carte-imprimee .entete-carte h1{font-size:clamp(32px,4.5vw,66px);color:var(--bleu);text-align:right}.carte-imprimee .entete-carte p{font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-align:right;color:var(--secondaire);margin-top:5px}
.carte-imprimee .categories{gap:0 16px;padding:4px 0;margin:0 0 16px;border-bottom:1px solid var(--bleu)}.carte-imprimee .categories a{font-size:11px;color:var(--bleu)}
.carte-imprimee #carte-complete{display:grid;gap:28px}.carte-imprimee .categorie-menu{padding:0;min-width:0;scroll-margin-top:24px}.carte-imprimee .categorie-menu>.repere{font-size:10px;letter-spacing:.14em;margin-bottom:6px}.carte-imprimee .categorie-menu h2{font-size:34px;color:var(--bleu);padding-bottom:12px;border-bottom:2px solid var(--bleu);margin:0 0 4px}.carte-imprimee .liste-menu{grid-template-columns:1fr;gap:0}.carte-imprimee .ligne-menu{padding:16px 0;border-top:0;border-bottom:1px solid var(--trait)}.carte-imprimee .ligne-menu:last-child{border-bottom:0}.carte-imprimee .pizza__titre{display:flex;gap:12px;align-items:baseline;margin:0 0 6px}.carte-imprimee .ligne-menu h3{font-size:21px;font-weight:700;letter-spacing:-.02em}.carte-imprimee .prix{font-size:16px;font-weight:700;color:var(--bleu);margin-left:auto;white-space:nowrap}.carte-imprimee .ligne-menu p{font-size:13px;line-height:1.6}.carte-imprimee .allergene{display:block;font-size:11px;margin-top:6px;color:var(--secondaire)}
.carte-imprimee #moment{background:var(--rose-pale);padding:18px!important;border:1px solid color-mix(in srgb,var(--bleu) 22%,transparent);border-radius:3px}.carte-imprimee #moment>.repere{display:none}.carte-imprimee #moment h2{font-size:28px!important;border:0;padding:0;margin-bottom:12px}.carte-imprimee #moment .ligne-menu{padding:0}.carte-imprimee .note-menu{padding:16px 0 0;margin:0;max-width:none;font-size:11px}.carte-imprimee #desserts>.note-menu{padding:8px 0 12px}.carte-imprimee> .note-menu{margin-top:24px;border-top:1px solid var(--bleu)}
@media(min-width:900px){.carte-imprimee{max-width:1120px;padding:36px 44px;margin-block:36px 65px}.carte-imprimee .entete-carte img{width:76px;height:76px}.carte-imprimee #carte-complete{grid-template-columns:1fr 1fr;gap:32px 48px}.carte-imprimee #moment,.carte-imprimee #desserts{grid-column:1/-1}.carte-imprimee #moment{display:grid;grid-template-columns:180px 1fr;gap:30px;align-items:center}.carte-imprimee #moment h2{margin:0}.carte-imprimee #desserts .liste-menu{grid-template-columns:1fr 1fr;gap:0 48px}.carte-imprimee .categories{justify-content:center;gap:30px}}

/* Tournée : rendez-vous du jour et carnet de passages. */
.tournee{padding-block:56px 70px}.tournee__entete{margin-bottom:30px}.tournee__entete h2{font-size:clamp(42px,5.5vw,88px)}.tournee__entete>p:last-child{margin-top:16px;color:var(--secondaire)}.tournee__corps{display:grid;gap:36px}.tournee__aujourdhui{display:grid;gap:20px}.rendezvous{position:relative;padding:24px;border:1px solid var(--bleu);border-top:5px solid var(--bleu);background:var(--papier);border-radius:0 0 12px 12px}.rendezvous__haut{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:28px}.rendezvous__statut{background:var(--rose-pale);color:var(--bleu);padding:7px 10px;font-size:12px;font-weight:700}.rendezvous__date{font-size:12px;color:var(--secondaire)}.rendezvous h3{font-family:var(--titre);font-size:clamp(38px,4.4vw,76px);line-height:1;letter-spacing:-.02em;color:var(--bleu)}.rendezvous__detail{font-size:14px;line-height:1.6;margin-top:16px;max-width:48ch}.rendezvous__lieu{margin-top:24px}.rendezvous__adresse{font-size:15px}.rendezvous__horaire{font-size:clamp(28px,3vw,46px);font-weight:600;letter-spacing:-.04em;margin-top:6px}.rendezvous__horaire span{color:var(--secondaire);font-weight:400}.rendezvous__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.rendezvous__actions .bouton{flex:1;white-space:normal;gap:10px;min-width:115px}.rendezvous__pied{font-size:12px;color:var(--secondaire);border-top:1px dashed var(--trait);padding-top:18px;margin-top:28px}.tournee__semaine-titre{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:baseline;padding-bottom:16px}.tournee__semaine-titre h3{font-size:18px}.tournee__semaine-titre>span{font-size:11px;color:var(--secondaire)}
.tournee #semaine{display:block;border:0;padding:0;margin:0}.tournee #semaine li{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;align-items:start;padding:12px 0;border:0;border-top:1px solid var(--trait);box-shadow:none;background:none}.tournee #semaine li[data-aujourdhui=true]{box-shadow:none;background:none}.tournee #semaine strong{font-size:12px;color:var(--encre);font-weight:600;margin:0}.passage__jour>span{font-size:9px;color:var(--bleu);display:block;margin-top:6px}.passage__lieu{display:grid;gap:2px}.tournee #semaine b{font-size:15px;line-height:1.3;color:var(--encre);margin:0}.tournee #semaine small{font-size:12px;color:var(--secondaire)}.tournee #semaine li[data-aujourdhui=true] b{color:var(--bleu)}.passage__creneau+.passage__creneau{margin-top:6px}.passage__itineraire{display:inline-flex;align-items:baseline;gap:3px;color:var(--bleu)}.tournee #semaine .passage__itineraire{font-size:11px}.tournee #semaine .passage__itineraire small{color:inherit;margin:0}.passage__itineraire:hover{color:var(--encre)}.passage__attente{text-align:center;color:var(--secondaire)}
@media(min-width:900px){.tournee{padding-block:70px 90px}.tournee__entete{display:grid;grid-template-columns:1fr 1fr;align-items:end;column-gap:6vw;margin-bottom:36px}.tournee__entete>.repere{grid-column:1/-1}.tournee__entete h2 br{display:none}.tournee__entete>p:last-child{margin:0 0 8px}.tournee__corps{grid-template-columns:1fr 1fr;gap:6vw;align-items:start}.rendezvous{padding:32px}.tournee #semaine li{grid-template-columns:90px minmax(0,1fr)}}

@media(min-width:900px){.tournee__entete h2 em{margin-left:.16em}}

/* Tournée — alignement avec les détails éditoriaux de A. */
.rendezvous{padding:28px 0 0;border:0;border-top:1px solid var(--bleu);border-radius:0;background:transparent}.rendezvous__statut{background:none;padding:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;gap:9px}.rendezvous__statut:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--bleu)}.rendezvous__haut{justify-content:space-between}.rendezvous h3{text-transform:uppercase}.rendezvous__pied{border-top:1px solid var(--trait)}
.tournee__semaine-titre{padding:0 0 20px;align-items:center}.tournee__semaine-titre h3{font-family:var(--titre);font-size:34px;font-weight:900;line-height:1;letter-spacing:-.025em}.tournee__semaine-titre>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.tournee #semaine li{padding:14px 0;grid-template-columns:88px minmax(0,1fr);gap:16px}.tournee #semaine strong{font-family:var(--titre);font-size:24px;font-weight:900;text-transform:uppercase;letter-spacing:-.02em;color:var(--secondaire)}.tournee #semaine b{font-size:17px;font-weight:500;letter-spacing:-.035em}.tournee #semaine li[data-aujourdhui=true] strong{color:var(--bleu)}.passage__jour>span{font-size:9px;letter-spacing:.02em}.tournee #semaine small{font-size:11px;line-height:1.5}.passage__itineraire{font-size:22px;transition:transform .2s ease}.passage__itineraire:hover{color:var(--bleu);transform:translate(2px,-2px)}.passage__attente{visibility:hidden}
@media(min-width:900px){.rendezvous{padding:28px 0 0}.tournee__corps{gap:7vw}.tournee #semaine li{grid-template-columns:100px minmax(0,1fr)}.tournee #semaine b{font-size:25px}.tournee #semaine strong{font-size:28px}}
@media(prefers-reduced-motion:reduce){.passage__itineraire{transition:none}.passage__itineraire:hover{transform:none}}

.tournee #semaine strong{font-size:21px}@media(min-width:900px){.tournee #semaine li{grid-template-columns:120px minmax(0,1fr) 44px}.tournee #semaine strong{font-size:26px}}

/* Semaine compacte : six passages à hauteur du rendez-vous. */
@media(min-width:900px){
 .tournee__semaine-titre{padding-bottom:12px}
 .tournee__semaine-titre h3{font-size:28px}
 .tournee #semaine li{padding:10px 0;gap:12px;grid-template-columns:112px minmax(0,1fr) 44px}
 .tournee #semaine strong{font-size:23px}
 .tournee #semaine b{font-size:22px}
 .tournee #semaine small,.passage__lieu>span{margin-top:3px}
 .tournee .passage__jour>span{margin-top:3px}
}
@media(min-width:900px){
 .tournee #semaine li{padding:4px 0}
 .tournee .passage__lieu>span{display:none}
 .tournee__semaine-titre>span{display:none}
}

/* Raccord direct entre les emplacements et la carte. */
.tournee{padding-bottom:32px}
.tournee + .carte{padding-top:32px;border-top:1px solid var(--trait)}
@media(min-width:900px){.tournee{padding-bottom:40px}.tournee + .carte{padding-top:40px}}

/* Contraste de la carte imprimée : papier blanc sur rose pâle. */
.page-carte{background:var(--fond)}
.page-carte>.entete,.page-carte>.pied{background:var(--fond)}
.page-carte .carte-imprimee{--papier-menu:var(--papier);border-color:var(--bleu);outline:none;box-shadow:0 16px 44px color-mix(in srgb,var(--encre) 12%,transparent)}
.page-carte .entete-carte{background:var(--bleu);color:var(--papier);margin:-22px -18px 0;padding:22px 18px;border:0}
.page-carte .entete-carte h1,.page-carte .entete-carte p{color:var(--papier)}
.page-carte .categories{padding-block:8px;margin-bottom:22px}
@media(min-width:900px){.page-carte .entete-carte{margin:-36px -44px 0;padding:28px 44px}}

/* Carte — composition éditoriale accordée à l’accueil. */
.page-carte{background:var(--fond)}
.page-carte .carte-imprimee{max-width:1360px;margin-block:24px 56px;padding:24px 22px;border:0;box-shadow:none;outline:none;background:var(--papier)}
.page-carte .entete-carte{margin:-24px -22px 0;padding:24px 22px;background:var(--bleu);align-items:center;gap:24px}
.page-carte .entete-carte img{width:64px;height:64px}
.page-carte .entete-carte h1{font-size:clamp(34px,5.6vw,82px);text-transform:uppercase;line-height:1;letter-spacing:-.03em}
.page-carte .entete-carte p{font-size:9px;letter-spacing:.13em;margin-top:10px}
.page-carte .categories{justify-content:flex-start;gap:0 20px;padding-block:12px;border-bottom:1px solid var(--trait);margin-bottom:24px}
.page-carte .categories a{font-size:11px;font-weight:600;min-height:44px}
.page-carte #carte-complete{gap:32px}
.page-carte #moment{border:0;border-radius:0;padding:22px!important;background:var(--rose-pale)}
.page-carte #moment h2{font-size:26px!important;line-height:1.1}
.page-carte .categorie-menu>.repere{font-size:10px;letter-spacing:.16em;margin-bottom:10px;color:var(--secondaire)}
.page-carte .categorie-menu h2{font-size:clamp(38px,3.8vw,58px);text-transform:uppercase;line-height:1;margin-bottom:8px;padding-bottom:20px;border-bottom:1px solid var(--bleu)}
.page-carte .ligne-menu{padding:20px 0}
.page-carte .ligne-menu h3{font-size:22px;font-weight:600;letter-spacing:-.04em;line-height:1.15}
.page-carte .ligne-menu p{font-size:14px;line-height:1.65;max-width:52ch}
.page-carte .pizza__titre{gap:16px;margin-bottom:8px}
.page-carte .prix{font-size:16px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.page-carte .allergene{font-size:10px;letter-spacing:.02em;margin-top:8px}
.page-carte #desserts{border-top:1px solid var(--trait);padding-top:28px}
.page-carte #desserts>.note-menu{max-width:65ch;padding:8px 0 16px;font-size:12px}
.page-carte>.pied{border-top:0}
@media(min-width:900px){
 .page-carte .carte-imprimee{padding:48px 54px;margin-block:36px 70px}
 .page-carte .entete-carte{margin:-48px -54px 0;padding:32px 54px}
 .page-carte .entete-carte img{width:90px;height:90px}
 .page-carte .entete-carte p{font-size:11px}
 .page-carte .categories{gap:36px;padding-block:14px;margin-bottom:30px}
 .page-carte #carte-complete{gap:44px 8vw}
 .page-carte #moment{grid-template-columns:210px 1fr;padding:24px 30px!important;gap:40px}
 .page-carte #moment h2{font-size:32px!important}
 .page-carte .ligne-menu h3{font-size:26px}
 .page-carte .prix{font-size:18px}
 .page-carte #desserts .liste-menu{gap:0 8vw}
}

/* Transition entre la carte et les coordonnées. */
.page-carte .carte-imprimee{margin-bottom:0}
.carte-rendezvous{display:grid;gap:24px;padding-block:42px;border-bottom:1px solid var(--trait)}
.carte-rendezvous h2{font-size:clamp(28px,3.3vw,50px);line-height:1.06}
.carte-rendezvous .repere{margin-bottom:14px}
.carte-rendezvous__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.carte-rendezvous__actions .lien{margin:0}
@media(min-width:900px){.carte-rendezvous{grid-template-columns:1fr auto;align-items:center;padding-block:54px;gap:40px}.carte-rendezvous__actions{justify-content:flex-end}}
