/* Client menu: printed food medallions, painted headings and readable recipes. */
body { background-color: #fffdf8; }
body, body * { letter-spacing: 0 !important; }
.header-mark-space { width:128px; height:48px; flex-shrink:0; }
#site-nav { background:#fffdf8; }
#site-nav .btn { min-height:44px; }
#mobile-menu { overflow-y:auto; padding-bottom:100px; }
.food-pattern { background-image:none; background-color:#faf7ef; }
#accueil { min-height:min(850px, calc(100svh - 32px)); background:#fffdf8; }
#accueil h1 > span:first-child { font-size:128px; }
#accueil h1 > span:nth-child(2) { font-size:100px; }
#accueil > .absolute:first-child > div { background:linear-gradient(90deg,#fffdf8 0%,#fffdf8aa 17%,transparent 55%); }
[aria-labelledby="pizza-photo-title"] figure { max-width:760px; border-radius:8px; }
#carte { position:relative; isolation:isolate; overflow:hidden; background:#fffcf5; background-image:url("../images/paper-grain.svg"); }
#carte > div { position:relative; }
#carte > div > .reveal:first-child { position:relative; z-index:1; min-height:170px; }
.hero-gusto-decoration { position:absolute; z-index:1; top:48px; left:-100px; width:450px; height:auto; pointer-events:none; user-select:none; mask-image:linear-gradient(90deg,#000 58%,transparent 96%),linear-gradient(180deg,#000 62%,transparent 96%); mask-composite:intersect; }
#menu-list { gap:2.5rem 4rem; }
.menu-group { position:relative; margin-bottom:36px; }
.category-title { --paint:#a82429; --depth:#721c21; position:relative; isolation:isolate; display:inline-block; padding:13px 30px 16px; margin:0 0 20px; background:none; clip-path:none; color:#fff9e8 !important; font-family:"Barlow Condensed",sans-serif; font-weight:700; font-size:34px; line-height:1.1; text-transform:uppercase; text-shadow:0 1px 1px #43181266; }
.category-title:before,.category-title:after { content:""; position:absolute; inset:0 -7px; z-index:-1; pointer-events:none; mask:url("../images/brush-mask.svg") center/100% 100% no-repeat; }
.category-title:before { background-color:var(--paint); background-image:url("../images/paint-grain.svg"); }
.category-title:after { z-index:-2; background:var(--depth); transform:translate(2px,3px); }
.brush-title:before,.brush-title.green:before,.brush-title.ochre:before { clip-path:none; mask:url("../images/brush-mask.svg") center/100% 100% no-repeat; background-image:url("../images/paint-grain.svg"); }
.category-creme,.category-boissons { --paint:#235e36; --depth:#153b24; }
.category-desserts,.category-supplements { --paint:#8e242b; --depth:#531820; }
.category-harvest { position:absolute; right:0; top:3px; width:120px; height:56px; object-fit:contain; }
.menu-group-creme .category-harvest { width:76px; right:12px; }
.pizza-row { display:flex; align-items:flex-start; gap:10px; padding:13px 0 16px; }
.pizza-icon { flex:0 0 38px; width:38px; height:38px; object-fit:contain; }
.pizza-content { flex:1; min-width:0; }
.pizza-heading { display:flex; align-items:baseline; min-width:0; gap:7px; padding-top:3px; }
.pizza-name { flex:0 1 auto; font-family:"Barlow Condensed",sans-serif; font-size:23px; font-weight:700; line-height:1.1; color:#2d2721; }
.pizza-dots { flex:1; min-width:10px; border-bottom:2px dotted #786956; transform:translateY(-3px); }
.pizza-price { flex-shrink:0; white-space:nowrap; font-family:"Barlow Condensed",sans-serif; font-size:24px; font-weight:700; line-height:1.1; color:#b02027; }
.pizza-ingredients { margin-top:7px; font-size:16px; line-height:1.55; font-weight:600; color:#352d25; }
.ingredient-green { color:#245c31; font-weight:800; }
.ingredient-signature { color:#84362c; font-weight:800; }
.menu-item { border:0; border-radius:0; padding:0; transition:background-color .2s; }
.menu-item:hover { padding-left:0; background:#f0e9d959; }
#carte aside { position:relative; }
#carte aside:after { content:""; position:absolute; right:48%; top:-54px; width:76px; height:64px; background:url("../images/basilic-menu.svg") center/contain no-repeat; pointer-events:none; }
#carte aside > div:first-child { border-radius:8px; box-shadow:none; padding:24px; }
#carte aside > div:first-child > .absolute { display:none; }
#carte aside > div:last-child { border-radius:8px; }
#carte aside h3 { font-size:32px; padding:12px 18px; margin-bottom:0; }
.supplement-icon { flex:none; width:44px; height:44px; }
#carte aside > div:first-child > div:first-of-type { gap:12px; }
.faq-button { gap:16px; }
.faq-button svg { flex-shrink:0; }
@media(min-width:900px) {
  #menu-list:has(.menu-group-tomate):has(.menu-group-creme) { grid-template-rows:auto auto auto; }
  #menu-list:has(.menu-group-tomate):has(.menu-group-creme) .menu-group-tomate { grid-column:1; grid-row:1 / span 3; }
  #menu-list:has(.menu-group-tomate):has(.menu-group-creme) .menu-group-creme { grid-column:2; grid-row:1; }
  #menu-list:has(.menu-group-tomate):has(.menu-group-creme) .menu-group-desserts { grid-column:2; grid-row:2; }
  #menu-list:has(.menu-group-tomate):has(.menu-group-creme) .menu-group-boissons { grid-column:2; grid-row:3; }
  #menu-list .menu-group { margin-bottom:0; }
  #menu-list:has(.menu-group-creme) .menu-group-tomate { align-self:stretch; }
}
@media(max-width:1100px) and (min-width:900px) {
  #menu-list { column-gap:32px; }
  .category-title { font-size:30px; padding-inline:23px; }
  .category-harvest { width:100px; }
  .pizza-name { font-size:21px; }
}
@media(min-width:768px) and (max-width:1439px) {
  .hero-gusto-decoration { width:320px; top:10px; left:-90px; }
}
@media(min-width:768px) and (max-width:1023px) {
  #accueil > .relative > div { max-width:450px; }
  #accueil > .absolute:first-child > div { background:linear-gradient(90deg,#fffdf8 0%,#fffdf8ee 42%,#fffdf880 66%,transparent 100%); }
}
@media(max-width:767px) {
  .header-mark-space { width:106px; height:39.75px; }
  #site-nav { padding-block:7px; }
  #accueil { min-height:0; display:block; }
  #accueil > .absolute:first-child { top:auto; bottom:0; height:340px; width:100%; }
  #accueil > .absolute:first-child img { object-position:65% center; }
  #accueil > .absolute:first-child > div { background:linear-gradient(180deg,#fffdf8 0%,#fffdf8 23%,#fffdf8aa 38%,transparent 58%); }
  #accueil > .relative { padding:120px 20px 220px; }
  #accueil > .relative > div { padding:0; background:none; box-shadow:none; border-radius:0; backdrop-filter:none; }
  #accueil h1 > span:first-child { font-size:76px; }
  #accueil h1 > span:nth-child(2) { font-size:60px; }
  #accueil .relative > div > img { display:none; }
  #accueil .relative > div > div:nth-of-type(1) > a:last-child { display:none; }
  #accueil .relative > div > div:nth-of-type(2) > span:last-child { display:none; }
  #accueil .relative > div > p:first-child { font-size:12px; margin-bottom:7px; }
  #accueil .relative > div > p:nth-of-type(2) { margin-top:14px; font-size:15px; line-height:1.6; }
  #accueil .relative > div > div:nth-of-type(1) { gap:8px; margin-top:18px; }
  #accueil .btn { padding:10px 14px; font-size:13px; }
  #accueil .btn svg { width:18px; height:18px; }
  #accueil .relative > div > div:nth-of-type(2) { margin-top:15px; gap:6px; font-size:12px; }
  #carte { padding-top:56px; }
  #carte > div > .reveal:first-child { min-height:0; }
  .hero-gusto-decoration { width:160px; top:58px; left:-60px; }
  .category-title { font-size:30px; padding:13px 24px 16px; }
  .category-harvest { width:110px; }
  .pizza-icon { width:34px; height:34px; flex-basis:34px; }
  .pizza-name { font-size:21px; }
  .pizza-price { font-size:22px; }
  .pizza-ingredients { font-size:15px; line-height:1.6; }
  .pizza-row { gap:8px; padding-block:12px 17px; }
  .pizza-heading { gap:5px; }
  #carte aside h3 { font-size:30px; }
  #carte aside > div:first-child { padding:20px 16px; }
  #carte aside:after { right:10px; }
}
@media(max-width:359px) {
  .category-title { font-size:27px; padding-inline:18px; }
  .category-harvest { width:92px; }
  .menu-group-creme .category-harvest { width:64px; right:0; }
  .pizza-name { font-size:20px; }
  .pizza-icon { width:32px; height:32px; flex-basis:32px; }
  #carte aside h3 { font-size:27px; padding-inline:10px; }
  #accueil h1 > span:first-child { font-size:72px; }
}
