.elementor-7172 .elementor-element.elementor-element-0066808{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7172 .elementor-element.elementor-element-0066808:not(.elementor-motion-effects-element-type-background), .elementor-7172 .elementor-element.elementor-element-0066808 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://esmaior.com/wp-content/uploads/2026/11/alimentos.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-7172 .elementor-element.elementor-element-fbbc592{--display:flex;--padding-top:100px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-7172 .elementor-element.elementor-element-fbbc592.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:1025px){.elementor-7172 .elementor-element.elementor-element-0066808:not(.elementor-motion-effects-element-type-background), .elementor-7172 .elementor-element.elementor-element-0066808 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}/* Start custom CSS for container, class: .elementor-element-fbbc592 *//* ===== Ementas — estilo sóbrio sobre fundo camel com fruta ===== */
:root {
  --ementa-ink: #3a2a1b;            /* texto principal (castanho escuro) */
  --ementa-ink-soft: #7a6350;       /* texto secundário */
  --ementa-card: rgba(255, 250, 240, .90);
  --ementa-card-dia: rgba(238, 222, 196, .95);
  --ementa-head: #4a3623;           /* cabeçalho */
  --ementa-head-ink: #f6ead4;
  --ementa-line: rgba(90, 65, 40, .18);
  --ementa-carne: #8c3b2e;
  --ementa-peixe: #2f5f73;
  --ementa-veget: #4f6b2f;
}



main { max-width: 1000px; margin: 0 auto;
 color: var(--ementa-ink);
  font: 15px/1.4 "Segoe UI", "Helvetica Neue", Arial, sans-serif;}

/* ---------- Tabela ---------- */
table.ementa {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  margin: 0 0 26px;
  background: var(--ementa-card);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 6px 22px rgba(50, 30, 10, .28);
  backdrop-filter: blur(2px);
}

.ementa td {
  padding: 6px 8px;
  vertical-align: middle;
  border-bottom: 1px solid var(--ementa-line);
  font-weight: bold;
}

/* larguras */
.ementa .dia-semana { width: 4%; }
.ementa .dia-mes  { width: 4%; }
.ementa .col-dia { width: 8%; }
.ementa .col-desc { width: 12%; }
.ementa .dia-semana, .ementa .dia-mes  {
  padding: 3px;
  writing-mode: vertical-lr;
  transform: rotate(180deg);
  text-align: center;
  letter-spacing: 1px;
}

/* ---------- Cabeçalho ---------- */
.ementa-head td {
  background: var(--ementa-head);
  color: var(--ementa-head-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: .9rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-align: center;
  padding: 11px 12px;
  border-bottom: 0;
}
.ementa-head .col-carne  { box-shadow: inset 0 -3px 0 var(--ementa-carne); }
.ementa-head .col-peixe  { box-shadow: inset 0 -3px 0 var(--ementa-peixe); }
.ementa-head .col-veget  { box-shadow: inset 0 -3px 0 var(--ementa-veget); }

/* ---------- Dia ---------- */
.ementa-dia { height: 0; }
.ementa-dia td { padding: 0 8px; border-bottom: 0; }

.dia-semana, .dia-mes {
  background: var(--ementa-card-dia);
  text-align: center;
  border-right: 1px solid var(--ementa-line);
}
.dia-semana {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.1rem;
  font-weight: bold;
  text-transform: capitalize;
  color: var(--ementa-head);
}
.dia-mes {
  font-size: 1.8rem;
  color: var(--ementa-ink-soft);
  letter-spacing: .04em;
  white-space: nowrap;
}

/* ---------- Linhas ---------- */
.ementa td.col-desc {
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--ementa-ink-soft);
  border-right: 1px solid var(--ementa-line);
}

.ementa td.col-carne,
.ementa td.col-peixe,
.ementa td.col-veget {
  text-align: left;
  border-left: 1px solid var(--ementa-line);
 
}

/* Última linha (Alergénicos) sem separador */
.ementa tr:last-child td {   text-align: center; border-bottom: 0; }

/* V. Calórico e Alergénicos: informação secundária */
.ementa tr:nth-last-child(-n+2) td:not(.col-empty) {
  text-align: center;
  font-size: .7rem;
  color: var(--ementa-ink-soft);
}

/* ---------- Coluna sem opção ---------- */
.ementa td.col-empty {
  background:
          repeating-linear-gradient(135deg,
          rgba(120, 90, 55, .10) 0 6px,
          rgba(120, 90, 55, .03) 6px 12px);
  border-bottom: 0;
}

/* ---------- Pequenos ecrãs ---------- */
@media (max-width: 720px) {
  body { padding: 16px 8px 32px; font-size: 13px; }
  .ementa td { padding: 6px 6px; }
  .ementa .col-dia, .ementa .dia-semana { width: 14%; }
  .ementa .dia-mes   { width: 11%; }
  .ementa .col-desc  { width: 15%; }
  .ementa td.col-desc { font-size: .66rem; letter-spacing: .02em; }
  .ementa-head td { font-size: .72rem; letter-spacing: .04em; }
  .dia-semana { font-size: .85rem; }
  .dia-mes { font-size: .75rem; white-space: normal; }
}

/* ---------- Impressão ---------- */
@media print {
  body { background: #fff; padding: 0; }
  table.ementa { box-shadow: none; border: 1px solid #999; break-inside: avoid; }
}

/* ========================================== */
/* ===== Calendário + seletor de idioma ===== */
.topo { display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between; margin-bottom:18px; }
.topo h1 { 
    margin-bottom:1.2em;
font-weight: bold;
  font-size: 2.4rem;
color:#fff8ea; text-shadow:0 1px 8px rgba(40,25,10,.6); }
.idiomas { display:flex; gap:6px; }
.idiomas button {
  font-weight: bold;
  font-size: 1rem;
  letter-spacing:.06em; padding:8px 12px; border-radius:20px; cursor:pointer;
  border:1px solid rgba(255,248,234,.55); background:rgba(74,54,35,.55); color:var(--ementa-head-ink);
}
.idiomas button[aria-pressed="true"] { background:var(--ementa-head-ink); color:var(--ementa-head); border-color:var(--ementa-head-ink); }

.calendario {
  max-width:500px; margin:0 auto 22px; padding:14px 16px 16px;
  background:var(--ementa-card); border-radius:10px; box-shadow:0 6px 22px rgba(50,30,10,.28);
}
.cal-nav { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.cal-nav strong { font:bold 1.05rem Georgia,"Times New Roman",serif; color:var(--ementa-head); }
.cal-nav button {
  width:34px; height:34px;
  font-size: 1.3rem;
  font-weight: bold;
  border:0;
  background:transparent; color:var(--ementa-head);
  cursor:pointer;
}
.cal-nav button:disabled { opacity:.25; cursor:default; }
.cal-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:1px; }
.cal-grid .wd { text-align:center; font-size:.7rem; letter-spacing:.06em; text-transform:uppercase; color:var(--ementa-ink-soft); padding:4px 0; }
.cal-grid button {
  aspect-ratio:1; border:0; border-radius:8px; background:transparent; color:var(--ementa-ink);
  font:inherit; position:relative; cursor:pointer;
  padding:0;
}
.cal-grid button, .cal-grid span {
  width: auto;
  height: auto;
}
.cal-grid button:disabled { opacity:.3; cursor:default; }
.cal-grid button.tem { background:rgba(238,222,196,.8); font-weight:600; }
.cal-grid button.tem:hover { background:rgba(220,196,150,.95); }
.cal-grid button.hoje { outline:2px solid var(--ementa-carne); outline-offset:-2px; }
.cal-grid button.sel { background:var(--ementa-head); color:var(--ementa-head-ink); }
.sem { text-align:center; padding:24px; background:var(--ementa-card); border-radius:10px; color:var(--ementa-ink-soft); }/* End custom CSS */