/* ---------- CARTA DIGITAL (fons crema, lletra xocolata, com Regala) ---------- */
.carta-page{background:var(--crema);color:var(--tinta);min-height:100vh}
.carta-page section{padding:44px 0 110px}
.carta-page .page-hero{min-height:56svh}
.carta-page .page-hero .ph-bg{background-position:center 42%;background-size:cover;opacity:.95}
.carta-page .page-hero .ph-grad{background:linear-gradient(180deg,rgba(14,12,10,.35) 0%,rgba(14,12,10,.1) 40%,rgba(14,12,10,.75) 100%)}
.carta-page .page-hero h1{text-shadow:0 2px 16px rgba(0,0,0,.85)}
.carta-page .page-hero .kicker{text-shadow:0 2px 12px rgba(0,0,0,.9)}
@media(max-width:640px){
  .carta-page .page-hero{min-height:52svh}
  .carta-page .page-hero .wrap{padding-top:110px;padding-bottom:26px}
  .carta-page section{padding:18px 0 70px}
  .carta-tabs{margin-top:16px}
}
.carta-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0 8px}
.carta-tab{background:#fff;border:1px solid var(--crema-fosc);color:var(--tinta);font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;padding:11px 20px;cursor:pointer;transition:.25s}
.carta-tab:hover{border-color:var(--xocolata);color:var(--xocolata)}
.carta-tab.actiu{background:var(--xocolata-fosc);color:var(--crema);border-color:var(--xocolata-fosc);font-weight:600}
.carta-nota{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--xocolata);font-weight:500;margin:26px 0 0}
.carta-filtre{margin:34px 0 0;background:#fff;border:1px solid var(--crema-fosc);padding:20px 22px}
.carta-filtre summary{cursor:pointer;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--xocolata);font-weight:600;list-style:none}
.carta-filtre summary::-webkit-details-marker{display:none}
.carta-filtre summary::after{content:'+';float:right;font-size:1rem}
.carta-filtre[open] summary::after{content:'–'}
.filtre-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.filtre-chip{background:none;border:1px solid rgba(43,29,18,.3);color:var(--tinta);font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.08em;padding:7px 14px;cursor:pointer;transition:.2s;border-radius:999px}
.filtre-chip:hover{border-color:var(--xocolata);color:var(--xocolata)}
.filtre-chip.actiu{background:var(--xocolata-fosc);color:var(--crema);border-color:var(--xocolata-fosc)}
.filtre-avis{font-size:.85rem;margin-top:14px}
.carta-subtabs{display:flex;gap:8px;flex-wrap:wrap;margin:34px 0 0}
.carta-subtab{background:none;border:1px solid rgba(90,56,37,.3);color:var(--tinta);font-family:var(--sans);font-weight:500;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:8px 15px;cursor:pointer;border-radius:999px;transition:.2s}
.carta-subtab:hover{border-color:var(--xocolata);color:var(--xocolata)}
.carta-subtab.actiu{background:var(--xocolata);color:var(--crema);border-color:var(--xocolata)}
.carta-seccio{margin-top:44px}
.carta-seccio h2{font-family:var(--sans);font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta);border-bottom:1px solid rgba(90,56,37,.3);padding-bottom:14px;margin-bottom:8px}
.plat{display:flex;gap:18px;align-items:flex-start;padding:22px 0;border-bottom:1px solid rgba(43,29,18,.1)}
.plat.ocult{display:none}
.plat-foto{width:64px;height:64px;object-fit:cover;border-radius:50%;flex-shrink:0;border:1px solid rgba(90,56,37,.3)}
.plat-cos{flex:1;min-width:0}
.plat-nom{font-family:var(--sans);font-size:1.02rem;font-weight:600;letter-spacing:.01em;line-height:1.35;color:var(--tinta)}
.plat-desc{font-size:.92rem;margin-top:6px;max-width:640px;line-height:1.6}
.plat-desc p{margin:0 0 9px}
.plat-desc p:last-of-type{margin-bottom:0}
.desc-extra{display:none}
.plat-desc.obert .desc-extra{display:block}
.desc-toggle{margin-top:6px;background:none;border:0;padding:0;cursor:pointer;font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--xocolata);border-bottom:1px solid rgba(90,56,37,.4)}
.desc-toggle:hover{color:var(--xocolata-fosc)}
.plat-al{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.plat-al span{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(90,56,37,.35);color:var(--xocolata);padding:2px 8px;border-radius:999px;font-weight:500}
.plat-preu{font-family:var(--sans);font-size:1.15rem;font-weight:700;letter-spacing:.01em;color:var(--xocolata);white-space:nowrap;text-align:right}
.plat-preu small{display:block;font-family:var(--sans);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.carta-subtitol{font-family:var(--sans);font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:var(--xocolata);margin:34px 0 4px}
.preu-linia{line-height:1.2;margin-bottom:8px}
.preu-tipus{font-family:var(--sans);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;display:block;opacity:.8}
.carta-buit{padding:60px 0;text-align:center;font-size:.95rem}
@media(max-width:640px){
  .plat{gap:12px}
  .plat-foto{width:48px;height:48px}
  .plat-nom{font-size:.98rem}
  .plat-preu{font-size:1.1rem}
  .carta-tab{padding:9px 14px;font-size:.66rem}
}
/* visor de fotos (sempre fosc) */
.plat-foto{cursor:zoom-in;transition:transform .25s}
.plat-foto:hover{transform:scale(1.08)}
.qv-lightbox{position:fixed;inset:0;z-index:300;background:rgba(14,12,10,.94);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:24px;cursor:zoom-out;opacity:0;pointer-events:none;transition:opacity .25s}
.qv-lightbox.obert{opacity:1;pointer-events:auto}
.qv-lightbox img{max-width:min(92vw,760px);max-height:72vh;object-fit:contain;border:1px solid rgba(243,234,217,.35);box-shadow:0 30px 80px rgba(0,0,0,.6);transition:opacity .2s}
.qv-lightbox img.carregant{opacity:0}
.qv-lightbox figcaption{margin-top:18px;font-family:var(--serif);font-size:1.3rem;color:var(--crema);text-align:center;max-width:640px}
.qv-lightbox .tanca{position:absolute;top:20px;right:26px;background:none;border:1px solid rgba(243,234,217,.5);color:var(--crema);font-size:1.1rem;width:44px;height:44px;cursor:pointer;transition:.25s}
.qv-lightbox .tanca:hover{background:var(--crema);color:var(--negre)}
/* als menús no hi ha filtre d al·lèrgens (14-10-2026) */
.sense-al .carta-filtre,.sense-al .filtre-avis,.sense-al .filtre-chips{display:none}
