.elementor-261 .elementor-element.elementor-element-252375b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-261 .elementor-element.elementor-element-252375b:not(.elementor-motion-effects-element-type-background), .elementor-261 .elementor-element.elementor-element-252375b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0C0C0C;}.elementor-261 .elementor-element.elementor-element-7f5226e{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-261 .elementor-element.elementor-element-7f5226e{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-261 .elementor-element.elementor-element-7f5226e{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for html, class: .elementor-element-d0e953a *//* ==========================================================
   Chef Express — HEADER + FOOTER (QA Final, responsive)
   - Tokens globales
   - Header (PC/Mobile, dropdown con <details>, panel móvil CSS-only)
   - Footer oscuro responsive
   - Accesibilidad: focus visible, contrastes, motion reduce
========================================================== */

/* ---------- TOKENS ---------- */
:root{
  /* Marca y neutrales */
  --brand:#7A0E12;
  --brand-700:#5A0B0E;
  --accent:#C9A227;
  --ink:#0E1116;
  --muted:#5A6272;
  --white:#FFFFFF;
  --surface:#0F0F10;
  --line:#E6E8EE;

  /* Layout / efectos */
  --radius:16px;
  --ring:0 0 0 3px rgba(122,14,18,.2);
  --shadow-md:0 10px 30px rgba(0,0,0,.10);
  --shadow-lg:0 16px 44px rgba(0,0,0,.14);
  --container:1100px;
  --header-h:72px;
}

/* Contenedor global reutilizable */
.ce-wrap{ width:min(var(--container),92vw); margin-inline:auto; }

/* ==========================================================
   HEADER (sticky, blur, dropdown con <details>, mobile CSS-only)
========================================================== */
.ce-header{
  position:sticky; top:0; z-index:1000;
  backdrop-filter:saturate(1.1) blur(10px);
  background:rgba(255,255,255,.86);
  border-bottom:1px solid var(--line);
}
.ce-header__inner{
  height:var(--header-h);
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  width:min(var(--container),92vw); margin-inline:auto;
}

/* Logo */
.ce-logo img{
  height:48px; width:auto; display:block;
  image-rendering:-webkit-optimize-contrast;
}

/* Toggle + Burger (CSS-only) */
.ce-toggle{ display:none; }
.ce-burger{
  display:none; width:44px; height:44px; border-radius:12px;
  border:1px solid var(--line); background:#fff; cursor:pointer;
  align-items:center; justify-content:center; gap:4px;
  transition:.18s ease;
}
.ce-burger span{ width:20px; height:2px; background:#0E1116; border-radius:2px; display:block; }

/* Menú base (desktop) */
.ce-nav{ display:block; }
.ce-menu{
  list-style:none; margin:0; padding:0;
  display:flex; align-items:center; gap:18px;
}
.ce-link{
  appearance:none; border:1px solid transparent; background:transparent;
  color:var(--ink); font-weight:700; letter-spacing:.2px;
  padding:10px 12px; border-radius:10px; cursor:pointer; transition:.18s ease;
}
.ce-link:hover{ background:#F2F4F7; }
.ce-link:focus-visible{ outline:none; box-shadow:var(--ring); }

/* CTA */
.ce-btn{
  display:inline-flex; align-items:center; justify-content:center;
  height:44px; padding:0 18px; border-radius:999px;
  border:1px solid transparent; font-weight:800; letter-spacing:.2px; cursor:pointer;
  transition:.18s ease;
}
.ce-btn--primary{ background:var(--brand); color:#fff; box-shadow:0 12px 24px rgba(122,14,18,.18); }
.ce-btn--primary:hover{ background:var(--brand-700); transform:translateY(-1px); }
.ce-btn:focus-visible{ outline:none; box-shadow:var(--ring); }

/* Dropdown (desktop con <details>) */
.has-dd details{ position:relative; }
.has-dd summary{ list-style:none; }
.has-dd summary::-webkit-details-marker{ display:none; }
.has-dd summary.ce-link{ padding-right:28px; position:relative; }
.has-dd summary.ce-link::after{
  content:""; position:absolute; right:10px; top:50%; width:8px; height:8px;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform:translateY(-50%) rotate(45deg); opacity:.7; transition:.16s ease;
}
.has-dd details[open] summary.ce-link::after{ transform:translateY(-50%) rotate(-135deg); }

.ce-dropdown{
  position:absolute; top:calc(100% + 8px); left:0; min-width:240px;
  background:#fff; border:1px solid var(--line); border-radius:12px;
  box-shadow:var(--shadow-lg);
  padding:8px; display:grid; gap:4px;
  opacity:0; visibility:hidden; transform:translateY(6px);
  transition:.16s ease; pointer-events:none; z-index:1001;
}
.has-dd details[open] > .ce-dropdown{
  opacity:1; visibility:visible; transform:none; pointer-events:auto;
}
.ce-ddlink{
  appearance:none; width:100%; text-align:left; cursor:pointer;
  background:transparent; border:1px solid transparent; border-radius:10px;
  color:var(--ink); padding:10px 12px; font-weight:600; letter-spacing:.2px;
  transition:.16s ease;
}
.ce-ddlink:hover{ background:#F7F8FB; }
.ce-ddlink:focus-visible{ outline:none; box-shadow:var(--ring); }

/* CTA dentro del menú (visible solo en mobile) */
.ce-menu__cta{ display:none; }

/* ---------- Mobile ---------- */
@media (max-width: 960px){
  .ce-actions{ display:none; }            /* oculta CTA desktop */
  .ce-burger{ display:inline-flex; }      /* muestra burger */

  /* Panel móvil (overlay) */
  .ce-nav{
    position:fixed; inset:var(--header-h) 0 0 0; z-index:999;
    background:rgba(255,255,255,.96); backdrop-filter:blur(8px);
    border-top:1px solid var(--line);
    transform:translateY(-2%); opacity:0; pointer-events:none;
    transition:.2s ease;
  }
  /* abre panel cuando el toggle está activo */
  .ce-toggle:checked ~ .ce-burger{ border-color:var(--brand); }
  .ce-toggle:checked ~ .ce-nav{
    transform:none; opacity:1; pointer-events:auto;
  }

  .ce-menu{
    flex-direction:column; align-items:stretch; gap:8px;
    width:min(var(--container),92vw); margin:12px auto; padding-bottom:16px;
  }
  .ce-link{
    width:100%; text-align:left; padding:12px 14px;
    border:1px solid var(--line); border-radius:12px; background:#fff;
  }

  .has-dd details{ width:100%; }
  .has-dd summary.ce-link{ padding-right:34px; }
  .has-dd summary.ce-link::after{ right:14px; }

  /* Dropdown en columna (sin absolute) */
  .ce-dropdown{
    position:static; box-shadow:none; border:1px dashed #E9ECF2;
    border-radius:12px; padding:8px; margin-top:6px;
    opacity:1; visibility:visible; transform:none; pointer-events:auto;
  }

  .ce-menu__cta{ display:block; margin-top:6px; }
}

/* ==========================================================
   FOOTER (oscuro, alto contraste, responsive)
========================================================== */
.ce-footer{
  background: var(--surface);
  color: #EDEFF3;
  padding: clamp(36px,6vw,56px) 0;
}
.ce-footer .ce-wrap{ width:min(var(--container),92vw); }

/* Top */
.ce-footer__top{
  display:grid; gap: clamp(18px,2vw,28px);
  grid-template-columns: 1.2fr 2.8fr;
  align-items:start;
}
@media (max-width: 900px){
  .ce-footer__top{ grid-template-columns: 1fr; }
}

/* Brand */
.ce-footer__logo img{
  height:60px; width:auto; display:block;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.3));
}
.ce-footer__tag{
  margin:10px 0 14px; color:#F1F3F8; opacity:.9;
}

/* Social */
.ce-social{ display:flex; gap:10px; }
.ce-social__btn{
  width:40px; height:40px; border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  display:inline-grid; place-items:center; cursor:pointer; transition:.18s ease;
}
.ce-social__btn:hover{ background: rgba(255,255,255,.14); transform: translateY(-1px); }
.ce-social__btn:focus-visible{ outline:none; box-shadow: var(--ring); }
.ce-social__btn svg{ width:18px; height:18px; fill:#fff; }

/* Columns */
.ce-footer__cols{
  display:grid; gap: clamp(16px,2vw,24px);
  grid-template-columns: repeat(4,1fr);
}
@media (max-width: 900px){
  .ce-footer__cols{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .ce-footer__cols{ grid-template-columns: 1fr; }
}

.ce-footnav__title{
  font-weight:800; letter-spacing:.2px;
  font-size: clamp(1rem,2vw,1.05rem);
  margin: 6px 0 10px; color:#fff;
}

.ce-footnav__list{ list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.ce-f-link{
  width:100%; text-align:left; appearance:none; cursor:pointer;
  background:transparent; border:1px solid transparent; border-radius:10px;
  color:#DDE2EA; padding:8px 10px; font-weight:600; letter-spacing:.2px;
  transition:.16s ease;
}
.ce-f-link:hover{ background: rgba(255,255,255,.06); }
.ce-f-link:focus-visible{ outline:none; box-shadow: var(--ring); }

/* Contacto */
.ce-contact__list{ list-style:none; margin:0 0 10px; padding:0; display:grid; gap:6px; }
.ce-contact__list li{ display:flex; gap:10px; align-items:center; color:#E6EAF0; }
.ce-icon{ width:20px; display:inline-grid; place-items:center; opacity:.9; }
.ce-foot-cta .ce-btn{
  height:42px; padding:0 16px; border-radius:999px;
  background: var(--brand); color:#fff; border:1px solid transparent;
  font-weight:800; letter-spacing:.2px; transition:.18s ease;
}
.ce-foot-cta .ce-btn:hover{ background: var(--brand-700); transform: translateY(-1px); }
.ce-foot-cta .ce-btn:focus-visible{ outline:none; box-shadow: var(--ring); }

/* Rule */
.ce-footrule{
  height:1px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
  margin: clamp(18px,3vw,26px) 0;
}

/* Bottom */
.ce-footer__bottom{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  flex-wrap:wrap; color:#C9CFDB;
  font-size:.95rem;
}
.ce-copy{ margin:0; }
.ce-legal{ display:flex; gap:10px; flex-wrap:wrap; }
.ce-legal__link{
  appearance:none; cursor:pointer; background:transparent;
  border:1px solid rgba(255,255,255,.18);
  color:#EDEFF3; border-radius:999px; padding:6px 10px; font-weight:600; letter-spacing:.2px;
  transition:.16s ease;
}
.ce-legal__link:hover{ background: rgba(255,255,255,.10); }
.ce-legal__link:focus-visible{ outline:none; box-shadow: var(--ring); }

/* ==========================================================
   A11y / Motion
========================================================== */
@media (prefers-reduced-motion: reduce){
  *{ transition:none !important; animation:none !important; }
}/* End custom CSS */