:root{
  --papièr:#F3EFE7;
  --tinta:#1D2230;
  --gris:#5B5F68;
  --ocra:#B0492C;
  --tamawalt:#9A4E2A;
  --tamawalt-fons:#FBF6EC;
  --oksitanyia:#1F3326;
  --oksitanyia-crema:#EADFC8;
  --sadu-roge:#A8322D;
  --sadu-aur:#C9973F;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--papièr);color:var(--tinta);
  font-family:"Alegreya Sans","Gill Sans",system-ui,sans-serif;
  font-size:1.125rem;line-height:1.6;
}
a{color:inherit}
.barra{
  display:flex;justify-content:space-between;align-items:center;gap:1rem;
  max-width:1080px;margin:0 auto;padding:1.25rem 1.25rem;
}
.marca{font-family:"Fraunces",Georgia,serif;font-weight:600;text-decoration:none;letter-spacing:.01em}
.barra nav{display:flex;gap:1.25rem;font-size:1rem}
.barra nav a{text-decoration:none;color:var(--gris)}
.barra nav a:hover{color:var(--ocra)}

main{max-width:1080px;margin:0 auto;padding:0 1.25rem}

.cap{text-align:center;padding:2.5rem 0 3.5rem}
.fials{width:min(640px,100%);height:auto;display:block;margin:0 auto 1.5rem}
.fials path{fill:none;stroke-width:2.2;stroke-linecap:round}
.fials circle{fill:var(--ocra)}
.cap h1{
  font-family:"Fraunces",Georgia,serif;font-weight:400;
  font-size:clamp(2.8rem,9vw,5.6rem);line-height:1;margin:0;letter-spacing:-.01em;
}
.devisa{font-family:"Fraunces",Georgia,serif;font-style:italic;font-size:clamp(1.15rem,2.6vw,1.45rem);color:var(--gris);margin:.9rem 0 0}

h2{font-family:"Fraunces",Georgia,serif;font-weight:600;font-size:1.7rem;margin:0 0 .5rem}
.chapeu{color:var(--gris);max-width:42rem;margin:0 0 2rem}

.cambras{padding:1rem 0 3rem;border-top:1px solid #D9D2C4;padding-top:2.5rem}
.grilha{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}

.carta{
  position:relative;display:flex;flex-direction:column;gap:.35rem;
  padding:2rem 1.75rem 1.75rem;border-radius:4px;text-decoration:none;min-height:360px;
  transition:transform .25s ease, box-shadow .25s ease;
}
a.carta:hover{transform:translateY(-4px);box-shadow:0 14px 30px -18px rgba(0,0,0,.45)}
.carta .lengas{font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;opacity:.75}
.carta .nom{font-size:2.2rem;line-height:1.1}
.carta .desc{margin-top:.75rem;flex:1}
.carta .dintrar{font-weight:700;margin-top:1rem}

.carta-tamawalt{background:var(--tamawalt-fons);color:#1C1A17;border:1px solid #E2D3BC}
.carta-tamawalt .nom{font-family:"Gentium Book Plus",Georgia,serif;font-weight:400}
.carta-tamawalt .tifinagh{font-family:"Noto Sans Tifinagh",sans-serif;color:var(--tamawalt);letter-spacing:.15em}
.carta-tamawalt .yaz{width:44px;height:44px;margin-bottom:.75rem}
.carta-tamawalt .yaz path{fill:none;stroke:var(--tamawalt);stroke-width:7;stroke-linecap:round}
.carta-tamawalt .lengas{font-variant:small-caps;text-transform:none;letter-spacing:.08em;font-size:1rem;color:var(--tamawalt);opacity:1}
.carta-tamawalt .dintrar{color:var(--tamawalt)}

.carta-oksitanyia{background:var(--oksitanyia);color:var(--oksitanyia-crema);overflow:hidden;padding-top:2.75rem}
.carta-oksitanyia .sadu{
  position:absolute;inset:0 0 auto 0;height:18px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='18'%3E%3Crect width='24' height='18' fill='%23A8322D'/%3E%3Crect y='3' width='24' height='12' fill='%23EADFC8'/%3E%3Cpath d='M0 15 6 3 12 15 18 3 24 15Z' fill='%231B1B18'/%3E%3Cpath d='M6 15 9 9 12 15ZM18 15 21 9 24 15Z' fill='%23C9973F'/%3E%3C/svg%3E") repeat-x;
}
.carta-oksitanyia .nom-ar{font-family:"Reem Kufi","Noto Naskh Arabic",sans-serif;font-weight:700;font-size:2.6rem;line-height:1.3;color:#fff;margin-top:.25rem}
.carta-oksitanyia .nom{font-size:1.5rem;color:var(--oksitanyia-crema)}
.carta-oksitanyia .dintrar{color:var(--sadu-aur)}

.carta-venir{border:1.5px dashed #BDB4A3;color:var(--gris);justify-content:center;text-align:center;min-height:240px}
.carta-venir .nom{font-family:"Fraunces",Georgia,serif;font-size:1.6rem}

.ostal{padding:3rem 0 4rem;border-top:1px solid #D9D2C4;max-width:44rem}
.ostal p{margin:.5rem 0 1rem}

.pe{
  max-width:1080px;margin:0 auto;padding:2rem 1.25rem 3rem;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;
  font-size:.95rem;color:var(--gris);border-top:1px solid #D9D2C4;
}

/* Mencions legalas */
.legal{max-width:44rem;padding:1rem 0 4rem}
.legal h1{font-family:"Fraunces",Georgia,serif;font-weight:400;font-size:2.4rem;margin:.5rem 0 1.5rem}
.legal h2{font-size:1.25rem;margin-top:2rem}
.legal .a-completar{background:#F6E2C6;padding:0 .25rem}
