:root {
      --crown-bg: #342a35;
      --crown-bg-soft: #342a35;
      --crown-bg-deep: #211922;
      --crown-gold: #d8b183;
      --crown-gold-soft: #cfb79d;
      --crown-cream: #efe8e1;
      --crown-muted: rgba(239,232,225,.72);
      --crown-line: rgba(216,177,131,.24);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      font-family: 'Inter Tight', Arial, sans-serif;
      font-weight: 300;
      background: #f2ece2;
      color: var(--crown-cream);
      overflow-x: hidden;
    }
    a { color: inherit; text-decoration: none; }

 .menu-hero {
  position: relative;
  min-height: 520px !important;
  height: 520px !important;
  display: flex;
  align-items: center !important;
  justify-content: center;
  text-align: center;
  padding: 120px 22px 86px !important;
  overflow: hidden;
  background: var(--crown-bg-deep);
}
    .menu-hero img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center center;
      z-index: 1;
    }
    .menu-hero::after {
      content: '';
      position: absolute;
      inset: 0;
      z-index: 2;
      background: linear-gradient(to bottom, rgba(20,8,24,.72), rgba(20,8,24,.42) 42%, rgba(36,24,38,.96));
    }
    .menu-hero-content {
      position: relative;
      z-index: 3;
      max-width: 880px;
    }
    .crown-kicker {
      margin: 0 0 18px;
      color: var(--crown-gold);
      letter-spacing: .22em;
      text-transform: uppercase;
      font-size: .82rem;
      font-weight: 400;
    }
    h1 {
      font-family: 'Rosario', serif;
      font-size: clamp(2.8rem, 6.2vw, 5.8rem);
      line-height: .92;
      letter-spacing: -.04em;
      font-weight: 300;
      margin: 0;
    }
    .menu-hero-text {
      max-width: 680px;
      margin: 26px auto 0;
      color: rgba(239,232,225,.82);
      font-size: clamp(1.05rem, 1.7vw, 1.25rem);
      line-height: 1.55;
    }

    .menu-intro {
      background: #342a35;
      padding: 58px 22px 38px;
      text-align: center;
    }
    .menu-intro-inner { max-width: 820px; margin: 0 auto; }
    .menu-intro h2 {
      font-family: 'Rosario', serif;
      font-weight: 300;
      font-size: clamp(2.1rem, 5vw, 4rem);
      line-height: 1;
      letter-spacing: -.025em;
      color: var(--crown-gold-soft);
      margin: 0 0 18px;
    }
    .menu-intro p {
      margin: 0 auto;
      max-width: 700px;
      color: rgba(239,232,225,.78);
      line-height: 1.62;
      font-size: 1.02rem;
    }

    .menu-nav-wrap {
      position: sticky;
      top: 78px;
      z-index: 50;
      background: #342a35;
      padding: 24px 22px 18px;
      border: 0;
    }
    .menu-nav-shell {
      max-width: 920px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: 34px minmax(0, 1fr) 34px;
      align-items: center;
      gap: 10px;
      padding: 10px;
      background: rgba(33,25,34,.58);
      border: 1px solid rgba(216,177,131,.20);
      box-shadow: 0 18px 60px rgba(0,0,0,.14);
    }
    .menu-nav {
      display: flex;
      gap: 10px;
      overflow-x: auto;
      padding: 2px 2px 4px;
      scrollbar-width: none;
      scroll-behavior: smooth;
    }
    .menu-nav::-webkit-scrollbar { display: none; }
    .menu-nav-arrow {
      width: 34px;
      height: 34px;
      border: 1px solid rgba(216,177,131,.32);
      background: rgba(239,232,225,.035);
      color: var(--crown-gold);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      font-size: 1.2rem;
      line-height: 1;
    }
    .menu-nav a {
      flex: 0 0 auto;
      border: 1px solid rgba(216,177,131,.24);
      color: rgba(239,232,225,.84);
      padding: 9px 14px;
      border-radius: 0;
      font-size: .72rem;
      letter-spacing: .11em;
      text-transform: uppercase;
      white-space: nowrap;
      background: rgba(239,232,225,.035);
    }
    .menu-nav a:hover { color: var(--crown-gold); border-color: rgba(216,177,131,.5); }


    .menu-prelude {
      background: #342a35;
      padding: 42px 22px 16px;
      text-align: center;
    }
    .menu-prelude p {
      max-width: 760px;
      margin: 0 auto;
      color: rgba(239,232,225,.76);
      line-height: 1.62;
      font-size: 1.02rem;
    }

    .menu-content {
      background: #503752;
      color: #503752;
      padding: 34px 22px 76px;
    }
    .crown-menu-list {
      max-width: 980px;
      margin: 0 auto;
      padding: clamp(30px, 5vw, 56px) clamp(22px, 5vw, 58px);
      line-height: 1.5;
      background: #efe8e1;
      border: 1px solid rgba(216,177,131,.22);
      box-shadow: 0 22px 80px rgba(0,0,0,.18);
    }
    .crown-menu-list > p:first-of-type {
      max-width: 700px;
      margin: 0 auto 32px;
      text-align: center;
      color: rgba(45,32,48,.68);
    }
    .crown-menu-section-title {
      font-family: 'Rosario', serif;
      font-size: clamp(1.7rem, 3.5vw, 3rem);
      line-height: 1;
      letter-spacing: -.035em;
      font-weight: 300;
      text-align: center;
      color: #4c2550;
      margin: 62px 0 22px;
      padding-top: 20px;
      border: 0 !important;
    }
    
    .crown-menu-subtitle {
      font-family: 'Rosario', serif;
      color: #7c5b47;
      font-size: 1.32rem;
      font-weight: 300;
      margin: 34px 0 12px;
    }
    .items { width: 100%; border-collapse: collapse; margin: 0 0 16px; }
    .items tr { border: 0; }
    .name, .price {
      padding-top: 16px;
      vertical-align: baseline;
      font-size: 1.05rem;
      color: #2d2030;
    }
    .name { font-weight: 500; padding-right: 20px; }
    .price { text-align: right; white-space: nowrap; color: #7c5b47; font-weight: 500; }
    .desc {
      padding: 4px 0 0;
      color: rgba(45,32,48,.68);
      font-size: .96rem;
      line-height: 1.45;
    }
    .allg {
      padding: 5px 0 14px;
     color:#7a616f;
      font-size: .78rem;
      border-bottom: 1px solid rgba(76,37,80,.12);
    }
    .allg small { font-size: inherit; }
    .dash{
    height:1px;
    background:rgba(70,45,74,.12);
    margin:38px 0;
}
    .crown-menu-list strong { font-weight: 500; color: #4c2550; }

    .menu-cta {
      background: #342a35;
      text-align: center;
      padding: 72px 22px;
    }
    .menu-cta h2 {
      font-family: 'Rosario', serif;
      font-size: clamp(2.2rem, 5vw, 4.2rem);
      line-height: 1;
      font-weight: 300;
      letter-spacing: -.03em;
      margin: 0 0 16px;
      color: var(--crown-gold-soft);
    }
    .menu-cta p { margin: 0 auto 28px; max-width: 620px; color: rgba(239,232,225,.78); line-height: 1.6; }
    .crown-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 48px;
      padding: 0 28px;
      border: 1px solid rgba(216,177,131,.65);
      color: var(--crown-gold);
      letter-spacing: .14em;
      text-transform: uppercase;
      font-size: .76rem;
    }
    .crown-footer {
      background: #1b111d;
      padding: 38px 22px;
      color: rgba(239,232,225,.68);
      text-align: center;
      font-size: .92rem;
    }
    .crown-footer a { color: var(--crown-gold-soft); margin: 0 10px; }

    @media (max-width: 991px) {

    .menu-hero { min-height: 62vh; padding: 126px 22px 64px; }
      .menu-hero img { object-position: center center; }
      .menu-hero::after { background: linear-gradient(to bottom, rgba(20,8,24,.72), rgba(20,8,24,.48) 45%, rgba(36,24,38,.98)); }
      .menu-nav-wrap { top: 70px; padding: 18px 14px 12px; }
      .menu-nav-shell { max-width: 100%; grid-template-columns: 30px minmax(0, 1fr) 30px; gap: 8px; padding: 8px; }
      .menu-nav-arrow { width: 30px; height: 30px; }
      .menu-nav { padding: 2px 2px 4px; }
      .menu-content { padding: 22px 14px 56px; }
      .crown-menu-list { padding: 28px 20px 38px; }
      .crown-menu-section-title { margin-top: 54px; }
      .name, .price { font-size: 1rem; }
      .desc { font-size: .92rem; }
    }
  


/* ===== Ajuste carta: contenedor completo en crema Crown ===== */
.menu-content {
  background: #503752 !important;
}

.crown-menu-list {
  background: #efe8e1 !important;
  box-shadow:
    0 22px 80px rgba(0,0,0,.12),
    inset 0 0 0 1px rgba(76,37,80,.06) !important;
}


/* ===== AJUSTES LIMPIOS CARTA ===== */

/* La foto del salón dorado se quita desde el HTML. No tocar navbar. */

/* El hero de la carta empieza debajo del navbar fijo */
.menu-hero {
  padding-top: 138px !important;
}

/* Texto previo eliminado */
.menu-prelude {
  display: none !important;
}

/* Barra de navegación de la carta más cerca de la carta */
.menu-nav-wrap {
  padding-top: 14px !important;
  padding-bottom: 10px !important;
  margin: 0 !important;
  background: #342a35 !important;
}

.menu-nav-shell {
  max-width: 920px !important;
  margin: 0 auto !important;
}

.menu-content {
  padding-top: 24px !important;
}

.crown-menu-section-title {
  scroll-margin-top: 165px;
}

@media (max-width: 991px) {
  .menu-hero {
    padding-top: 116px !important;
  }

  .menu-nav-wrap {
    padding-top: 10px !important;
    padding-bottom: 8px !important;
  }

  .menu-content {
    padding-top: 18px !important;
  }

  .crown-menu-section-title {
    scroll-margin-top: 140px;
  }
}


/* =========================================================
   FIX FINAL PEDIDO
   1. Logo/idiomas visibles al cargar
   2. Navbar principal aparece de inmediato al hacer scroll
   3. La página baja normal y luego la carta usa su nav propio fijo
   ========================================================= */

/* No bloquear el scroll de la página completa */
html,
body {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

/* El main vuelve al flujo normal */
main {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  display: block !important;
  padding-top: 0 !important;
}

/* Mantener oculto solo el hero del salón dorado, no el navbar */
#custom-html-5b .crown-hero,
#custom-html-5b .crown-hero-content {
  display: none !important;
}

/* Navbar principal siempre por encima y visible */
#custom-html-5b {
  position: relative !important;
  z-index: 999999 !important;
}

/*#custom-html-5b .crown-floating-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 999999 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: rgba(46, 23, 50, 0.96) !important;
  border-bottom: 1px solid rgba(216, 177, 131, .12) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  
}*/
#custom-html-5b .crown-floating-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 999999 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;

  background: transparent !important;
  border-bottom: 0 !important;

  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
/* Fuerza logo e idiomas visibles desde el primer segundo */
#custom-html-5b .crown-logo,
#custom-html-5b .crown-logo img,
#custom-html-5b .crown-language-switcher,
#custom-html-5b .crown-language-switcher a,
#custom-html-5b .crown-language-switcher span {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Menú principal visible en escritorio */
@media (min-width: 992px) {
  #custom-html-5b .crown-menu {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* Hero de carta: espacio suficiente bajo navbar fijo */
.menu-hero {
  margin-top: 0 !important;
  padding-top: 138px !important;
}

/* Borrar/ocultar el texto que estaba por encima de la barra de navegación de carta */
.menu-prelude {
  display: none !important;
}

/* Barra de categorías: flujo normal hasta llegar arriba; luego se queda fija */
.menu-nav-wrap {
  position: sticky !important;
  top: 92px !important;
  z-index: 900 !important;
  background: #342a35 !important;
  padding: 12px 22px 10px !important;
  margin: 0 !important;
  border-top: 1px solid rgba(216,177,131,.08) !important;
  border-bottom: 1px solid rgba(216,177,131,.08) !important;
}

.menu-nav-shell {
  max-width: 920px !important;
  margin: 0 auto !important;
}

/* La carta NO tiene scroll propio; baja con la página */
.menu-content {
  overflow: visible !important;
  height: auto !important;
  min-height: 0 !important;
  padding-top: 24px !important;
}

/* Evita que los títulos queden escondidos al clicar categorías */
.crown-menu-section-title {
  scroll-margin-top: 170px !important;
}

@media (max-width: 991px) {
  #custom-html-5b .crown-floating-header {
    background: rgba(46, 23, 50, 0.96) !important;
  }

  .menu-hero {
    padding-top: 112px !important;
  }

  .menu-nav-wrap {
    top: 72px !important;
    padding: 10px 12px 8px !important;
  }

  .crown-menu-section-title {
    scroll-margin-top: 145px !important;
  }
}


/* =========================================================
   FIX: quitar línea rara superior + nav carta fija
   ========================================================= */

/* Quita la línea/banda horizontal que aparece sobre el hero */
#custom-html-5b .crown-floating-header {
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Evita cualquier línea heredada del bloque Mobirise vacío */
.menu.menu1,
#amenu1-52,
.navbar.navbar-dropdown {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

/* Barra de navegación de la carta fija al llegar arriba */
.menu-nav-wrap {
  position: sticky !important;
  top: 92px !important;
  z-index: 99990 !important;
  background: #342a35 !important;
  padding: 12px 22px 10px !important;
  margin: 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(216,177,131,.12) !important;
}

/* Un poco más compacta para que no coma tanta pantalla */
.menu-nav-shell {
  max-width: 920px !important;
  margin: 0 auto !important;
}

/* Cuando haces click en categorías, que no se tape el título */
.crown-menu-section-title {
  scroll-margin-top: 175px !important;
}

@media (max-width: 991px) {
  .menu-nav-wrap {
    top: 72px !important;
    padding: 10px 12px 8px !important;
  }

  .crown-menu-section-title {
    scroll-margin-top: 150px !important;
  }
}



/* =========================================================
   FIX REAL · selector de carta siempre visible al hacer scroll
   ========================================================= */

/* La barra de navegación principal queda arriba */
#custom-html-5b .crown-floating-header {
  z-index: 999999 !important;
}

/* El selector de carta queda fijo debajo del navbar principal */
.menu-nav-wrap {
  position: fixed !important;
  top: 92px !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 999998 !important;
  background: rgba(52,42,53,.98) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  padding: 12px 22px 10px !important;
  margin: 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(216,177,131,.16) !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.16) !important;
}

.menu-nav-shell {
  max-width: 920px !important;
  margin: 0 auto !important;
}

/* Reservamos espacio para que la carta no quede tapada por el selector fijo */
.menu-content {
  padding-top: 112px !important;
}

/* También damos aire al hero para que el selector no parezca montado encima del título */
.menu-hero {
  padding-bottom: 112px !important;
}

/* Al clicar categorías, que el título no quede escondido */
.crown-menu-section-title {
  scroll-margin-top: 190px !important;
}

@media (max-width: 991px) {
  .menu-nav-wrap {
    top: 72px !important;
    padding: 10px 12px 8px !important;
  }

  .menu-content {
    padding-top: 96px !important;
  }

  .menu-hero {
    padding-bottom: 96px !important;
  }

  .crown-menu-section-title {
    scroll-margin-top: 160px !important;
  }
}






/* =========================================================
   COMBINADA FINAL
   - Navbar principal visible al abrir
   - Selector de carta oculto al abrir
   - Al llegar a la carta: navbar se oculta y selector aparece fijo arriba
   ========================================================= */

/* Navbar principal: visible al inicio */
#custom-html-5b .crown-floating-header {
  transform: translateY(0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transition: transform .35s ease, opacity .25s ease, background .35s ease !important;
  z-index: 999999 !important;
}

/* Navbar principal oculto cuando estamos dentro de la carta */
#custom-html-5b .crown-floating-header.carta-hidden {
  transform: translateY(-110%) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Selector de carta: existe, pero NO aparece al abrir */
.menu-nav-wrap {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 999998 !important;
  background: rgba(52,42,53,.98) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  padding: 12px 22px 10px !important;
  margin: 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(216,177,131,.16) !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.16) !important;

  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-105%) !important;
  pointer-events: none !important;
  transition: transform .35s ease, opacity .25s ease, visibility .25s ease !important;
}

/* Selector de carta visible cuando la carta empieza */
body.carta-nav-active .menu-nav-wrap {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

/* El espacio de la carta solo se compensa cuando el selector ya está activo */
.menu-content {
  padding-top: 28px !important;
}

body.carta-nav-active .menu-content {
  padding-top: 112px !important;
}

/* El hero mantiene su composición limpia */
.menu-hero {
  padding-bottom: 36px !important;
}

/* Al clicar categorías, que los títulos no queden escondidos */
.crown-menu-section-title {
  scroll-margin-top: 126px !important;
}

@media (max-width:991px) {
  .menu-nav-wrap {
    padding: 10px 12px 8px !important;
  }

  body.carta-nav-active .menu-content {
    padding-top: 96px !important;
  }

  .crown-menu-section-title {
    scroll-margin-top: 108px !important;
  }
}


/* =========================================================
   REFINADO SUAVE · colores navegador carta
   ========================================================= */

.menu-nav-wrap{
  background: rgba(45,34,47,.94) !important;
}

.menu-nav-shell{
  background: rgba(33,25,34,.62) !important;
  border: 1px solid rgba(216,177,131,.16) !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.12) !important;
}

.menu-nav a{
  background: rgba(239,232,225,.03) !important;
  border: 1px solid rgba(216,177,131,.16) !important;
  color: rgba(239,232,225,.80) !important;
}

.menu-nav a:hover{
  background: rgba(216,177,131,.06) !important;
  border-color: rgba(216,177,131,.28) !important;
  color: #d8b183 !important;
}

.menu-nav-arrow{
  background: rgba(239,232,225,.03) !important;
  border: 1px solid rgba(216,177,131,.18) !important;
}



/* =========================================================
   AJUSTE FINAL · nav visible al abrir, sticky/fixed al scrollear
   ========================================================= */

/* Estado inicial: el navegador de la carta se ve en su sitio natural sobre la carta */
body:not(.carta-nav-active) .menu-nav-wrap {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
  z-index: 50 !important;
  background: rgba(45,34,47,.94) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* En estado inicial, no empujar la carta como si el nav estuviera fixed */
body:not(.carta-nav-active) .menu-content {
  padding-top: 24px !important;
}

/* Al abrir, el navbar principal queda visible y normal */
body:not(.carta-nav-active) #custom-html-5b .crown-floating-header {
  transform: translateY(0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Al activarse, se mantiene el comportamiento que ya funcionaba */
body.carta-nav-active .menu-nav-wrap {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
  z-index: 999998 !important;
  background: rgba(45,34,47,.96) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

body.carta-nav-active .menu-content {
  padding-top: 112px !important;
}

@media (max-width:991px) {
  body:not(.carta-nav-active) .menu-content {
    padding-top: 18px !important;
  }

  body.carta-nav-active .menu-content {
    padding-top: 96px !important;
  }
}
.crown-allergy-note{
    max-width: 920px;
    margin: 0 auto 34px;
    padding: 14px 26px;
    border: 1px solid rgba(92,62,95,.16);
    background: transparent;
    color: #7d6b73;
    text-align: center;
    font-size: .84rem;
    letter-spacing: .08em;
    line-height: 1.5;
    text-transform: uppercase;
    position: relative;
}

.crown-allergy-note::before,
.crown-allergy-note::after{
    content:'';
    position:absolute;
    top:50%;
    width:22px;
    height:1px;
    background:rgba(92,62,95,.30);
}

.crown-allergy-note::before{
    left:14px;
}

.crown-allergy-note::after{
    right:14px;
}
.items{
    border-collapse: collapse;
}

.items tr{
    border-bottom:none;
}

.items .desc{
    padding-bottom:8px;
}

.items .allg{
    border-bottom:1px solid rgba(70,45,74,.10);
    padding-bottom:18px;
}

/* =========================================================
   AJUSTE LEGIBILIDAD · platos, descripciones y alérgenos
   ========================================================= */

.name,
.name span,
.items .name,
.items .name span{
    color:#3f2d43 !important;
    font-weight:500 !important;
}

.price,
.items .price{
    color:#7c5b47 !important;
    font-weight:500 !important;
}

.desc,
.items .desc{
    color:#6f5a67 !important;
    font-size:.97rem !important;
    line-height:1.48 !important;
    padding-bottom:8px !important;
}

.allg,
.items .allg,
.allg small,
.items .allg small{
    color:#7a616f !important;
}

.items .allg{
    border-bottom:1px solid rgba(70,45,74,.10) !important;
    padding-bottom:18px !important;
}

/* Si el alérgeno está vacío, no ocupa espacio ni crea línea extra */
.allg:has(small:empty){
    display:none !important;
}
.desc,
.items .desc{
    color:#5f4d59 !important;
}
.crown-menu-subtitle{
    margin-bottom:18px !important;
}
/* Ajuste hero carta */
.menu-hero{
  min-height: 520px !important;
  height: 520px !important;
  padding-top: 120px !important;
  padding-bottom: 86px !important;
  align-items: center !important;
}

.menu-hero-content{
  transform: translateY(-28px) !important;
}

.menu-hero h1{
  font-size: clamp(2.7rem, 5.2vw, 5.1rem) !important;
}

@media (max-width: 991px){
  .menu-hero{
    min-height: 430px !important;
    height: 430px !important;
    padding-top: 105px !important;
    padding-bottom: 70px !important;
  }

  .menu-hero-content{
    transform: translateY(8px) !important;
  }
}
.menu-hero-content{
    position: relative;
    top: 68px;
}
.menu-nav-wrap,
body:not(.carta-nav-active) .menu-nav-wrap,
body.carta-nav-active .menu-nav-wrap{
  background: rgba(73, 48, 76, .96) !important;
}

.menu-nav-shell{
  background: rgba(54, 38, 58, .58) !important;
  border-color: rgba(216,177,131,.18) !important;
}

.menu-nav a,
.menu-nav-arrow{
  background: rgba(239,232,225,.035) !important;
  border-color: rgba(216,177,131,.18) !important;
}

.menu-nav-shell{
    max-width:980px !important;
    width:100% !important;
    margin:0 auto !important;
}
/* Integra el navegador con el final del hero */
.menu-nav-wrap{
  background: linear-gradient(
    to bottom,
    rgba(52,42,53,0) 0%,
    rgba(73,48,76,.92) 38%,
    rgba(73,48,76,.96) 100%
  ) !important;
  padding-top: 22px !important;
  padding-bottom: 18px !important;
  margin-top: -42px !important;
}

/* El rectángulo interior se mantiene elegante y alineado */
.menu-nav-shell{
  max-width: 980px !important;
  width: 100% !important;
  margin: 0 auto !important;
  background: rgba(54,38,58,.50) !important;
  border: 1px solid rgba(216,177,131,.16) !important;
  box-shadow: none !important;
}

/* Da un poco más de aire entre navegador y carta */
.menu-content{
  padding-top: 42px !important;
}
/* =========================================================
   PALETA CROWN · NAVEGADOR CARTA
   ========================================================= */

.menu-nav-wrap{
    background:
    linear-gradient(
        to bottom,
        rgba(54,36,58,.72) 0%,
        rgba(68,45,73,.92) 100%
    ) !important;

    border-top:1px solid rgba(216,177,131,.08);
    border-bottom:1px solid rgba(216,177,131,.08);
}

/* Contenedor interior */
.menu-nav-shell{
    max-width:980px !important;
    width:100% !important;
    margin:0 auto !important;

    background:rgba(63,41,67,.34) !important;

    border:1px solid rgba(216,177,131,.14) !important;

    box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 10px 24px rgba(0,0,0,.10);
}

/* Botones */
.menu-nav a,
.menu-nav-arrow{
    background:rgba(255,255,255,.018) !important;

    border:1px solid rgba(216,177,131,.14) !important;

    color:#e5d6c7 !important;
}

/* Hover */
.menu-nav a:hover,
.menu-nav-arrow:hover{
    background:rgba(216,177,131,.06) !important;
}
body.carta-nav-active .menu-nav-wrap{
    top: 25px !important;
}
.menu-hero::after{
  background:
    linear-gradient(
      to bottom,
      rgba(28,18,30,.62) 0%,
      rgba(34,22,36,.46) 45%,
      rgba(52,42,53,.92) 100%
    ) !important;
}
/* =========================================================
   CTA ESTILO HOME CROWN
   ========================================================= */

.menu-cta{
  background:#342a35 !important;
  padding:72px 22px 78px !important;
  border-top:1px solid rgba(216,177,131,.08);
  text-align:center;
}

.menu-cta .crown-kicker{
  margin-bottom:18px !important;
}

.menu-cta h2{
  font-family:'Rosario', serif;
  font-size:clamp(2rem,4.2vw,3.4rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.035em;
  font-weight:300;
  color:#f2ebe3 !important;
  max-width:760px;
  margin:0 auto 18px !important;
}

.menu-cta p{
  max-width:640px;
  margin:0 auto 30px !important;
  color:rgba(239,232,225,.72) !important;
  font-size:1rem;
  line-height:1.65;
}

/* BOTÓN MÁS HOME CROWN */
.menu-cta .crown-btn{
  min-height:46px;
  padding:0 26px !important;
  background:rgba(216,177,131,.12) !important;
  border:1px solid rgba(216,177,131,.34) !important;
  color:#efe8e1 !important;
  font-size:.72rem !important;
  letter-spacing:.16em;
  transition:all .28s ease;
}

.menu-cta .crown-btn:hover{
  background:rgba(216,177,131,.18) !important;
  border-color:rgba(216,177,131,.54) !important;
  transform:translateY(-1px);
}
#custom-html-5b .crown-floating-header{
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  border-bottom: 0 !important;
}
#custom-html-5b .crown-floating-header.scrolled{
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  border-bottom: 0 !important;
}

/* ==========================================================
   CROWN CARTA V4 INTEGRADA · HERO + CARDS EDITORIALES
   Mantiene la estructura actual y refina la lectura.
========================================================== */

.menu-hero {
  display: flex !important;
  min-height: 430px !important;
  height: 430px !important;
  padding: 118px 22px 76px !important;
  align-items: center !important;
  justify-content: center !important;
}

.menu-hero img {
  filter: saturate(.94) contrast(1.04) brightness(.88);
}

.menu-hero::after {
  background: linear-gradient(
    to bottom,
    rgba(20,8,24,.58),
    rgba(20,8,24,.32) 42%,
    rgba(36,24,38,.94)
  ) !important;
}

.menu-hero-content {
  max-width: 760px;
}

.menu-hero-text {
  max-width: 620px;
  margin: 18px auto 0;
  color: rgba(239,232,225,.82);
  font-size: clamp(1rem, 1.3vw, 1.15rem);
  line-height: 1.55;
}

.menu-nav-wrap {
  top: 78px;
  padding: 18px 22px 14px !important;
  background: #342a35 !important;
}

.menu-nav-shell {
  max-width: 980px !important;
 /* background: rgba(33,25,34,.72) !important;*/
  backdrop-filter: blur(12px);
}

.menu-nav a {
  font-size: .68rem !important;
  padding: 10px 15px !important;
  letter-spacing: .13em !important;
}

.crown-menu-intro-card,
.crown-menu-feature-cards {
  background: #342a35;
  color: var(--crown-cream);
}

.crown-menu-intro-card {
  max-width: 1100px;
  margin: 0 auto;
  padding: 58px 22px 18px;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: center;
}

.crown-menu-intro-copy h2,
.crown-category-card-copy h2,
.crown-feature-card h3 {
  font-family: 'Rosario', serif;
  font-weight: 300;
  letter-spacing: -.035em;
}

.crown-menu-intro-copy h2 {
  font-size: clamp(2.4rem, 5vw, 4.5rem);
  line-height: .96;
  color: var(--crown-gold-soft);
  margin: 0 0 20px;
}

.crown-menu-intro-copy p:not(.crown-section-kicker) {
  color: rgba(239,232,225,.76);
  line-height: 1.68;
  font-size: 1.02rem;
  max-width: 560px;
}

.crown-section-kicker {
  display: block;
  margin: 0 0 16px;
  color: var(--crown-gold);
  letter-spacing: .2em;
  text-transform: uppercase;
  font-size: .72rem;
  font-weight: 400;
}

.crown-menu-intro-image {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(216,177,131,.18);
  box-shadow: 0 24px 70px rgba(0,0,0,.24);
}

.crown-menu-intro-image img {
  width: 100%;
  height: 390px;
  object-fit: cover;
  display: block;
  filter: saturate(.9) contrast(1.04) brightness(.92);
}

.crown-menu-feature-cards {
  max-width: 1100px;
  margin: 0 auto;
  padding: 28px 22px 54px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.crown-feature-card {
  display: block;
  padding: clamp(28px, 4vw, 44px);
  background: rgba(239,232,225,.055);
  border: 1px solid rgba(216,177,131,.18);
  color: var(--crown-cream);
  min-height: 210px;
  transition: border-color .35s ease, background .35s ease, transform .35s ease;
}

.crown-feature-card:hover {
  background: rgba(239,232,225,.082);
  border-color: rgba(216,177,131,.38);
  transform: translateY(-2px);
}

.crown-feature-card h3 {
  color: var(--crown-gold-soft);
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  line-height: 1;
  margin: 0 0 18px;
}

.crown-feature-card p {
  color: rgba(239,232,225,.72);
  line-height: 1.62;
  margin: 0;
}

.menu-content {
  padding-top: 22px !important;
}

.crown-menu-list {
  max-width: 1040px !important;
  padding: clamp(40px, 5vw, 74px) clamp(24px, 6vw, 72px) !important;
}

.crown-category-card {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: clamp(26px, 4vw, 54px);
  align-items: center;
  margin: 72px 0 42px;
  padding: clamp(22px, 3vw, 34px);
  background: rgba(76,37,80,.045);
  border: 1px solid rgba(76,37,80,.09);
}

.crown-category-card-media img {
  width: 100%;
  height: 235px;
  object-fit: cover;
  display: block;
  filter: saturate(.92) contrast(1.03) brightness(.96);
}

.crown-category-card-copy h2 {
  color: #4c2550;
  font-size: clamp(2.1rem, 4vw, 3.8rem);
  line-height: .96;
  margin: 0 0 18px;
}

.crown-category-card-copy p:not(.crown-section-kicker) {
  color: rgba(45,32,48,.68);
  line-height: 1.62;
  max-width: 540px;
  margin: 0;
}

.crown-menu-section-title {
  margin-top: 72px !important;
  margin-bottom: 28px !important;
}

.crown-menu-subtitle {
  margin-top: 42px !important;
  margin-bottom: 16px !important;
}

.name,
.price {
  padding-top: 20px !important;
}

.allg {
  padding-bottom: 18px !important;
  border-bottom: 1px solid rgba(76,37,80,.075) !important;
}

.dash {
  background: rgba(70,45,74,.075) !important;
  margin: 46px 0 !important;
}

@media (max-width: 900px) {
  .menu-hero {
    min-height: 380px !important;
    height: 380px !important;
    padding: 108px 20px 58px !important;
  }

  .crown-menu-intro-card,
  .crown-menu-feature-cards,
  .crown-category-card {
    grid-template-columns: 1fr;
  }

  .crown-menu-intro-image img,
  .crown-category-card-media img {
    height: 260px;
  }

  .crown-menu-feature-cards {
    gap: 16px;
  }

  .crown-category-card {
    margin: 54px 0 32px;
  }
}

@media (max-width: 620px) {
  .menu-nav-wrap {
    top: 68px;
  }

  .menu-nav-shell {
    grid-template-columns: 30px minmax(0,1fr) 30px;
    padding: 8px !important;
  }

  .crown-menu-intro-card {
    padding-top: 44px;
  }

  .crown-menu-list {
    padding: 34px 22px !important;
  }

  .crown-feature-card,
  .crown-category-card {
    padding: 24px;
  }
}


/* ===== EDITORIAL BOTTOM ===== */

.crown-editorial-intro{
  background:#342a35;
  padding:34px 22px 22px;
}

.crown-editorial-image{
  max-width:1180px;
  margin:0 auto;
  height:470px;
  overflow:hidden;
}

.crown-editorial-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.crown-editorial-copy{
  max-width:760px;
  margin:44px auto 0;
  text-align:center;
}

.crown-editorial-copy h2{
  font-family:'Rosario',serif;
  font-size:clamp(2.5rem,5vw,4.8rem);
  line-height:.95;
  font-weight:300;
  color:#d8b183;
  margin:0 0 20px;
}

.crown-editorial-copy p{
  color:rgba(239,232,225,.78);
  line-height:1.7;
}

.crown-editorial-cards{
  background:#342a35;
  max-width:1180px;
  margin:0 auto;
  padding:48px 22px 74px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.crown-editorial-card{
  position:relative;
  display:block;
  height:390px;
  overflow:hidden;
}

.crown-editorial-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s ease;
}

.crown-editorial-card:hover img{
  transform:scale(1.04);
}

.crown-editorial-card::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(18,12,18,.84), rgba(18,12,18,.12));
}

.crown-editorial-card-content{
  position:absolute;
  left:30px;
  right:30px;
  bottom:30px;
  z-index:3;
}

.crown-editorial-card-content span{
  color:#d8b183;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
}

.crown-editorial-card-content h3{
  margin:14px 0 0;
  color:#fff;
  font-family:'Rosario',serif;
  font-size:2rem;
  line-height:1.05;
  font-weight:300;
}

/* PDFs */

.crown-pdf-section{
  background:#342a35;
  padding:80px 22px 110px;
  text-align:center;
}

.crown-pdf-section h2{
  font-family:'Rosario',serif;
  font-size:clamp(2.3rem,5vw,4.2rem);
  color:#d8b183;
  font-weight:300;
  margin:14px 0 40px;
}

.crown-pdf-grid{
  max-width:980px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.crown-pdf-card{
  border:1px solid rgba(216,177,131,.18);
  padding:34px;
  background:rgba(239,232,225,.03);
}

.crown-pdf-card span{
  display:block;
  color:#d8b183;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.7rem;
  margin-bottom:16px;
}

.crown-pdf-card strong{
  color:#fff;
  font-family:'Rosario',serif;
  font-size:2rem;
  font-weight:300;
  line-height:1.05;
}

@media(max-width:991px){

  .crown-editorial-image{
    height:320px;
  }

  .crown-editorial-cards,
  .crown-pdf-grid{
    grid-template-columns:1fr;
  }

  .crown-editorial-card{
    height:300px;
  }

}


/* =========================================================
   CROWN · CARDS TIPO AR + FONDO CREMA + MENÚ DEBAJO
   ========================================================= */

/* bloque crema tipo index */
.crown-editorial-intro--ar{
  background:#f5efe5 !important;
  color:#2f1734 !important;
  padding:72px 22px 38px !important;
}

.crown-editorial-inner{
  max-width:1120px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;
  gap:clamp(38px,7vw,88px) !important;
  align-items:start !important;
}

.crown-editorial-left{
  text-align:left !important;
}

.crown-editorial-left .crown-section-kicker{
  color:#b98953 !important;
  font-size:.72rem !important;
  letter-spacing:.22em !important;
  margin:0 0 18px !important;
}

.crown-editorial-left h2{
  font-family:'Rosario',serif !important;
  color:#4c2550 !important;
  font-weight:300 !important;
  font-size:clamp(1rem,2.5vw,4.05rem) !important;
  line-height:.96 !important;
  letter-spacing:-.04em !important;
  margin:0 !important;
  max-width:500px !important;
}

.crown-editorial-right{
  padding-top:34px !important;
}

.crown-editorial-right p{
  color:#5f4d59 !important;
  font-size:.98rem !important;
  line-height:1.72 !important;
  max-width:640px !important;
  margin:0 0 16px !important;
}

/* cards en fila estilo referencia */
.crown-ar-cards{
  background:#f5efe5 !important;
  max-width:1320px !important;
  margin:0 auto !important;
  padding:32px 22px 74px !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}

.crown-ar-card{
  position:relative !important;
  min-height:480px !important;
  max-width:360px !important;
  display:flex !important;
  align-items:flex-end !important;
  overflow:hidden !important;
  text-decoration:none !important;
  color:#fff !important;
  background:#211922 !important;
  box-shadow:0 22px 60px rgba(46,23,50,.08) !important;
}

.crown-ar-card img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  transform:scale(1.01) !important;
  transition:transform .7s ease, filter .7s ease !important;
  filter:brightness(.82) saturate(.92) contrast(.98) !important;
}

.crown-ar-card::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(to top, rgba(24,10,28,.86), rgba(24,10,28,.28) 48%, rgba(24,10,28,.08)) !important;
  z-index:1 !important;
}

.crown-ar-card:hover img{
  transform:scale(1.045) !important;
  filter:brightness(.88) saturate(.96) contrast(1) !important;
}

.crown-ar-card-kicker{
  position:absolute !important;
  left:32px !important;
  right:32px !important;
  bottom:92px !important;
  z-index:2 !important;
  color:#d8b183 !important;
  font-size:.72rem !important;
  line-height:1.0 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  font-weight:400 !important;
}

.crown-ar-card strong{
  position:absolute !important;
  left:32px !important;
  right:32px !important;
  bottom:32px !important;
  z-index:2 !important;
  font-family:'Rosario',serif !important;
  font-size:clamp(2.25rem,2.2vw,3.35rem) !important;
  line-height:.96 !important;
  font-weight:300 !important;
  color:#fff !important;
  letter-spacing:-.035em !important;
}

/* esconder restos de cards anteriores si quedaran */
.crown-editorial-cards:not(.crown-ar-cards),
.crown-editorial-card:not(.crown-ar-card){
  display:none !important;
}

/* títulos de carta a la izquierda */
.crown-menu-section-title,
.crown-menu-subtitle{
  text-align:left !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* bloque menús al final */
.crown-menus-final-intro{
  margin:92px 0 42px !important;
  padding:58px 28px !important;
  background:#342a35 !important;
  color:#efe8e1 !important;
  text-align:center !important;
  border:1px solid rgba(216,177,131,.18) !important;
}

.crown-menus-final-intro h2{
  font-family:'Rosario',serif !important;
  color:#d8b183 !important;
  font-weight:300 !important;
  font-size:clamp(2.2rem,4.4vw,4rem) !important;
  line-height:.96 !important;
  margin:8px 0 18px !important;
}

.crown-menus-final-intro p:last-child{
  max-width:620px !important;
  margin:0 auto !important;
  color:rgba(239,232,225,.76) !important;
  line-height:1.6 !important;
}

/* respiro entre cards y nav */
.menu-nav-wrap{
  margin-top:0 !important;
}

@media(max-width:991px){
  .crown-editorial-inner{
    grid-template-columns:1fr !important;
    gap:26px !important;
  }

  .crown-editorial-right{
    padding-top:0 !important;
  }

  .crown-editorial-left h2{
    font-size:clamp(2.35rem,10vw,3.35rem) !important;
  }

  .crown-ar-cards{
    grid-template-columns:1fr !important;
    padding:24px 22px 54px !important;
  }

  .crown-ar-card{
    min-height:390px !important;
  }

  .crown-ar-card-kicker{
    left:26px !important;
    right:26px !important;
    bottom:82px !important;
  }

  .crown-ar-card strong{
    left:26px !important;
    right:26px !important;
    bottom:26px !important;
  }
}


/* =========================================================
   AJUSTE QUIPO · filete dorado elegante en cards
   Mantiene tamaños, colores y proporciones actuales
   ========================================================= */

.crown-ar-card{
  position:relative !important;
  border:1px solid rgba(216,177,131,.52) !important;
  box-shadow:
    0 18px 48px rgba(46,23,50,.07),
    inset 0 0 0 1px rgba(216,177,131,.12) !important;
}

.crown-ar-card::before{
  content:"" !important;
  position:absolute !important;
  inset:10px !important;
  border:1px solid rgba(216,177,131,.30) !important;
  z-index:3 !important;
  pointer-events:none !important;
}

/* Esquinas finas tipo marco editorial */
.crown-ar-card .crown-card-corner,
.crown-ar-card::marker{
  display:none !important;
}

.crown-ar-card > span,
.crown-ar-card > strong{
  z-index:4 !important;
}

/* Evita que overlays anteriores tapen el filete */
.crown-ar-card::after{
  z-index:1 !important;
}

.crown-ar-card img{
  z-index:0 !important;
}

@media(max-width:991px){
  .crown-ar-card::before{
    inset:8px !important;
  }
}


/* =========================================================
   AJUSTE · MENÚS ANTES DE POSTRES
   ========================================================= */

/* Mantener slider visible */
.menu-nav-wrap,
body:not(.carta-nav-active) .menu-nav-wrap,
body.carta-nav-active .menu-nav-wrap{
  display:block !important;
}

.menu-nav-shell,
.menu-nav,
.menu-nav-arrow{
  display:flex !important;
}

.menu-nav-shell{
  display:grid !important;
}

/* Ocultar contacto/footer inferior si queda de Mobirise 
section[id*="contact" i],
section[class*="contact" i],
section[id*="contacto" i],
section[class*="contacto" i],
section[id*="footer" i],
section[class*="footer" i],
footer,
.footer,
.crown-footer,
.menu-cta{
  display:none !important;
}*/

/* Ocultar posible foto grande inferior suelta */
.crown-final-photo,
.crown-full-photo,
.crown-big-photo,
.crown-editorial-photo,
.crown-image-break,
.crown-photo-break{
  display:none !important;
}

/* =========================================================
   BLOQUE EDITORIAL + CARDS CROWN · integrado desde cards-crown
   ========================================================= */
.crown-editorial-intro {
  background: var(--crown-cream);
  padding: 72px 42px 54px;
}

.crown-editorial-inner {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
  align-items: start;
}

.crown-section-kicker {
  margin: 0 0 18px;
  color: #c68653;
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: .28em;
  text-transform: uppercase;
  font-weight: 400;
}

.crown-editorial-left h2 {
  margin: 0;
  font-family: 'Rosario', serif;
  font-weight: 300;
  color: var(--crown-purple);
  font-size: clamp(2.45rem, 4vw, 4.1rem);
  line-height: .96;
  letter-spacing: -.04em;
  max-width: 470px;
}

.crown-editorial-right {
  padding-top: 38px;
}

.crown-editorial-right p {
  margin: 0 0 24px;
  color: #71556d;
  font-size: 17px;
  line-height: 1.65;
}

.crown-ar-cards {
  background: var(--crown-cream);
  padding: 34px 42px 72px;
  max-width: 1260px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 70px;
}

.crown-ar-card {
  position: relative;
  display: block;
  min-height: 480px;
  overflow: hidden;
  background: #211922;
  color: #fff;
  border: 12px solid #3c263d;
  box-shadow: 0 24px 70px rgba(47, 31, 48, .12);
}

.crown-ar-card::before {
  content: '';
  position: absolute;
  inset: 10px;
  z-index: 3;
  border: 1px solid rgba(216, 177, 131, .82);
  pointer-events: none;
}

.crown-ar-card::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(
    to bottom,
    rgba(24, 15, 25, .18) 0%,
    rgba(24, 15, 25, .18) 34%,
    rgba(24, 15, 25, .82) 100%
  );
}

.crown-ar-card img {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s ease;
}

.crown-ar-card:hover img {
  transform: scale(1.04);
}

.crown-ar-card-kicker,
.crown-ar-card strong {
  position: absolute;
  z-index: 4;
  left: 34px;
  right: 34px;
}

.crown-ar-card-kicker {
  bottom: 88px;
  color: var(--crown-gold);
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 500;
}

.crown-ar-card strong {
  bottom: 38px;
  font-family: 'Rosario', serif;
  font-size: clamp(2.3rem, 3.5vw, 3.6rem);
  line-height: .95;
  font-weight: 300;
  letter-spacing: -.04em;
  color: #fff;
}

@media (max-width: 991px) {
  .crown-editorial-intro {
    padding: 58px 24px 34px;
  }

  .crown-editorial-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .crown-editorial-right {
    padding-top: 0;
  }

  .crown-ar-cards {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 28px 24px 56px;
  }

  .crown-ar-card {
    min-height: 420px;
  }
}
/* Ajuste final para que el bloque quede igual que el archivo de cards */
.crown-editorial-intro,
.crown-ar-cards{
  background:#efe8e1 !important;
}
.crown-ar-cards img{
  max-width:none !important;
}
body,
main {
  background: #eee7e0 !important;
}

.crown-cards-section,
.crown-menu-cards,
.cards-section,
.menu-cards-wrapper {
  background: #eee7e0 !important;
}

.crown-cards-section::before,
.crown-cards-section::after,
.crown-menu-cards::before,
.crown-menu-cards::after {
  display: none !important;
}
/* MENU VIOLETA FIJO SIN QUE SE VEA EL CREMA DETRAS */

body.carta-nav-active .menu-nav-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 105px !important;

    background: #49304c !important;
    opacity: 1 !important;
    z-index: 999999 !important;

    padding: 25px 18px 18px !important;
    margin: 0 !important;

    transform: none !important;
    visibility: visible !important;
    pointer-events: auto !important;

    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* tapa definitiva detrás del menú */
body.carta-nav-active .menu-nav-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #49304c !important;
    z-index: -1;
}

/* baja el contenido para que no quede debajo */
body.carta-nav-active main {
    padding-top: 115px !important;
}
/* ESTILO CARTA EDITORIAL DELICADA */

.menu-nav-wrap {
    display: none !important;
}

/* Contenedor general */
.menu-content {
    background: #f4eee6 !important;
}

.crown-menu-list {
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 55px 24px !important;
}

/* Títulos de sección más delicados */
.crown-menu-section-title {
    font-family: 'Rosario', serif !important;
    text-align: center !important;
    font-size: clamp(2.1rem, 2vw, 3.4rem) !important;
    font-weight: 300 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #49304c !important;
    margin: 70px auto 28px !important;
    padding-bottom: 18px !important;
    position: relative !important;
}

.crown-menu-section-title::after {
    content: "◇";
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%);
    color: #c59a5c;
    font-size: 16px;
    background: #efe8e1;
    padding: 0 14px;
}

.crown-menu-section-title::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 80px;
    height: 1px;
    transform: translateX(-50%);
    background: #c59a5c;
}

/* Nota alergias */
.crown-allergy-note {
    text-align: center !important;
    color: #8b7b78 !important;
    font-size: 0.9rem !important;
    margin: 0 auto 42px !important;
}

/* Tablas convertidas en carta elegante */
table.items {
    width: 100% !important;
    max-width: 780px !important;
    margin: 0 auto 58px !important;
    border-collapse: collapse !important;
}

/* Nombre + precio */
table.items tr:has(.name) {
    border-top: 1px solid rgba(73, 48, 76, 0.13) !important;
}

table.items td.name {
    padding: 22px 12px 6px 0 !important;
    font-size: 1.03rem !important;
    font-weight: 400 !important;
    color: #393a3b !important;
}

table.items td.price {
    padding: 22px 0 6px 12px !important;
    text-align: right !important;
    white-space: nowrap !important;
    font-size: 1rem !important;
    font-weight: 350 !important;
    color: #353839 !important;
}

/* Descripción */
table.items td.desc {
    padding: 0 0 7px 0 !important;
    color: #353839 !important;
    line-height: 1.55 !important;
    font-size: 0.97rem !important;
}

/* Alérgenos */
table.items td.allg {
    padding: 0 0 18px 0 !important;
    color: #3f2d43 !important;
    font-size: 0.90rem !important;
}

/* Subtítulos tipo Panes Tandoor / Arroces */
.crown-menu-subtitle {
    max-width: 780px !important;
    margin: 42px auto 16px !important;
    font-family: 'Rosario', serif !important;
    font-size: 1.55rem !important;
    font-weight: 300 !important;
    color: #49304c !important;
    letter-spacing: 0.04em !important;
}

/* Mobile */
@media (max-width: 768px) {
    .crown-menu-list {
        padding: 42px 20px !important;
    }

    .crown-menu-section-title {
        font-size: 1.7rem !important;
        letter-spacing: 0.06em !important;
        margin-top: 52px !important;
    }

    table.items td.name {
        font-size: 1rem !important;
        padding-top: 20px !important;
    }

    table.items td.price {
        font-size: 0.96rem !important;
    }

    table.items td.desc {
        font-size: 0.9rem !important;
    }
}
/* FOTOS EDITORIALES CROWN */

.crown-editorial-photo{
    max-width: 820px;
    margin: 80px auto;
    position: relative;
    padding: 10px;
}

.crown-editorial-photo img{
    width: 100%;
    display: block;
    border-radius: 2px;
}

/* marco ornamental */

.crown-editorial-photo::before,
.crown-editorial-photo::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
}

.crown-editorial-photo::before{
    border:1px solid rgba(216,177,131,.55);
}

.crown-editorial-photo::after{
    inset:-8px;
    border:1px solid rgba(216,177,131,.25);
}

/* esquinas */

.crown-editorial-photo span{
    position:absolute;
    width:28px;
    height:28px;
    border-color:#d8b183;
    opacity:.8;
}

.crown-editorial-photo .tl{
    top:-2px;
    left:-2px;
    border-top:1px solid;
    border-left:1px solid;
}

.crown-editorial-photo .tr{
    top:-2px;
    right:-2px;
    border-top:1px solid;
    border-right:1px solid;
}

.crown-editorial-photo .bl{
    bottom:-2px;
    left:-2px;
    border-bottom:1px solid;
    border-left:1px solid;
}

.crown-editorial-photo .br{
    bottom:-2px;
    right:-2px;
    border-bottom:1px solid;
    border-right:1px solid;
}

@media(max-width:768px){

    .crown-editorial-photo{
        margin:50px 20px;
    }

    .crown-editorial-photo span{
        width:20px;
        height:20px;
    }
}
.crown-menu-photo-frame {
    display: block !important;
    max-width: 820px !important;
    margin: 80px auto !important;
    position: relative !important;
    padding: 10px !important;
}

.crown-menu-photo-frame img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
}
/* FOTO EDITORIAL CON TEXTO Y MARCO */

.crown-menu-photo-frame {
    max-width: 820px !important;
    margin: 70px auto 48px !important;
    text-align: center !important;
    position: relative !important;
}

.crown-photo-kicker {
    margin: 0 0 8px !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #a56f3b !important;
}

.crown-menu-photo-frame h3 {
    font-family: 'Rosario', serif !important;
    font-size: clamp(1.45rem, 3vw, 2.15rem) !important;
    font-weight: 300 !important;
    color: #49304c !important;
    margin: 0 0 26px !important;
}

.crown-photo-box {
    position: relative !important;
    padding: 12px !important;
}

.crown-photo-box img {
    width: 100% !important;
    display: block !important;
    border-radius: 2px !important;
}

/* doble marco */
.crown-photo-box::before,
.crown-photo-box::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.crown-photo-box::before {
    inset: 0;
    border: 1px solid rgba(216,177,131,.62);
}

.crown-photo-box::after {
    inset: -8px;
    border: 1px solid rgba(216,177,131,.24);
}

/* esquinas decorativas */
.crown-photo-box span {
    position: absolute;
    width: 34px;
    height: 34px;
    border-color: #d8b183;
    opacity: .95;
    z-index: 3;
}

.crown-photo-box .tl {
    top: 2px;
    left: 2px;
    border-top: 1px solid;
    border-left: 1px solid;
}

.crown-photo-box .tr {
    top: 2px;
    right: 2px;
    border-top: 1px solid;
    border-right: 1px solid;
}

.crown-photo-box .bl {
    bottom: 2px;
    left: 2px;
    border-bottom: 1px solid;
    border-left: 1px solid;
}

.crown-photo-box .br {
    bottom: 2px;
    right: 2px;
    border-bottom: 1px solid;
    border-right: 1px solid;
}

@media (max-width: 768px) {
    .crown-menu-photo-frame {
        margin: 52px 20px 38px !important;
    }

    .crown-photo-box {
        padding: 8px !important;
    }

    .crown-photo-box span {
        width: 22px;
        height: 22px;
    }
}
/* FOTO EDITORIAL CON TEXTO Y MARCO */

.crown-menu-photo-frame {
    max-width: 820px !important;
    margin: 70px auto 48px !important;
    text-align: center !important;
    position: relative !important;
}

.crown-photo-kicker {
    margin: 0 0 8px !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #a56f3b !important;
}

.crown-menu-photo-frame h3 {
    font-family: 'Rosario', serif !important;
    font-size: clamp(1.45rem, 3vw, 2.15rem) !important;
    font-weight: 300 !important;
    color: #49304c !important;
    margin: 0 0 26px !important;
}

.crown-photo-box {
    position: relative !important;
    padding: 12px !important;
}

.crown-photo-box img {
    width: 100% !important;
    display: block !important;
    border-radius: 2px !important;
}

/* doble marco */
.crown-photo-box::before,
.crown-photo-box::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.crown-photo-box::before {
    inset: 0;
    border: 1px solid rgba(216,177,131,.62);
}

.crown-photo-box::after {
    inset: -8px;
    border: 1px solid rgba(216,177,131,.24);
}

/* esquinas decorativas */
.crown-photo-box span {
    position: absolute;
    width: 34px;
    height: 34px;
    border-color: #d8b183;
    opacity: .95;
    z-index: 3;
}

.crown-photo-box .tl {
    top: 2px;
    left: 2px;
    border-top: 1px solid;
    border-left: 1px solid;
}

.crown-photo-box .tr {
    top: 2px;
    right: 2px;
    border-top: 1px solid;
    border-right: 1px solid;
}

.crown-photo-box .bl {
    bottom: 2px;
    left: 2px;
    border-bottom: 1px solid;
    border-left: 1px solid;
}

.crown-photo-box .br {
    bottom: 2px;
    right: 2px;
    border-bottom: 1px solid;
    border-right: 1px solid;
}

@media (max-width: 768px) {
    .crown-menu-photo-frame {
        margin: 52px 20px 38px !important;
    }

    .crown-photo-box {
        padding: 8px !important;
    }

    .crown-photo-box span {
        width: 22px;
        height: 22px;
    }
}
/* =====================================
   MARCO EDITORIAL INDIA REFINADA
   ===================================== */

.crown-editorial-photo{
    max-width:820px;
    margin:80px auto;
    padding:14px;
    position:relative;
}

.crown-editorial-photo img{
    width:100%;
    display:block;
    border-radius:2px;
    border:1px solid rgba(216,177,131,.35);
}

.crown-editorial-photo::before{
    content:"";
    position:absolute;
    inset:0;
    border:1px solid rgba(216,177,131,.55);
    pointer-events:none;
}

.crown-editorial-photo::after{
    content:"";
    position:absolute;
    inset:8px;
    border:1px solid rgba(216,177,131,.22);
    pointer-events:none;
}

/* ESQUINAS ORNAMENTALES */

.crown-editorial-photo .tl,
.crown-editorial-photo .tr,
.crown-editorial-photo .bl,
.crown-editorial-photo .br{
    position:absolute;
    width:34px;
    height:34px;
    color:#d8b183;
    font-size:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:5;
}

.crown-editorial-photo .tl{
    top:-10px;
    left:-10px;
}

.crown-editorial-photo .tr{
    top:-10px;
    right:-10px;
}

.crown-editorial-photo .bl{
    bottom:-10px;
    left:-10px;
}

.crown-editorial-photo .br{
    bottom:-10px;
    right:-10px;
}

.crown-editorial-photo .tl::before,
.crown-editorial-photo .tr::before,
.crown-editorial-photo .bl::before,
.crown-editorial-photo .br::before{
    content:"❈";
    text-shadow:
        0 0 6px rgba(216,177,131,.35);
}

/* DETALLE CENTRAL SUPERIOR E INFERIOR */

.crown-editorial-photo .orn-top,
.crown-editorial-photo .orn-bottom{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    color:#d8b183;
    font-size:18px;
    letter-spacing:8px;
    z-index:5;
}

.crown-editorial-photo .orn-top{
    top:-12px;
}

.crown-editorial-photo .orn-bottom{
    bottom:-12px;
}

.crown-editorial-photo .orn-top::before,
.crown-editorial-photo .orn-bottom::before{
    content:"❈ ◇ ❈";
}

@media (max-width:768px){

    .crown-editorial-photo{
        margin:50px 20px;
        padding:10px;
    }

    .crown-editorial-photo .tl,
    .crown-editorial-photo .tr,
    .crown-editorial-photo .bl,
    .crown-editorial-photo .br{
        font-size:14px;
    }

    .crown-editorial-photo .orn-top,
    .crown-editorial-photo .orn-bottom{
        font-size:14px;
    }
}
/* DEVOLVER TEXTO DE LOS PLATOS A LA IZQUIERDA */

table.items,
table.items tbody,
table.items tr,
table.items td {
    text-align: left !important;
}

table.items td.price {
    text-align: right !important;
}

.crown-photo-kicker,
.crown-menu-photo-frame h3 {
    text-align: center !important;
}
.crown-menu-photo-frame h3 {
    font-family: 'Rosario', serif !important;
    font-size: clamp(1.45rem, 1vw, 2.15rem) !important;
    font-weight: 300 !important;
    color: #49304c !important;
    margin: 0 0 26px !important;
}
#footer02-5a,
#footer02-5a .copyright,
#footer02-5a .row-links {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
#footer02-5a {
  background: #352238 !important;
  padding: 58px 0 42px !important;
}

#footer02-5a .container {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

#footer02-5a .row {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 40px !important;
}

#footer02-5a .col-12:first-child {
  flex: 0 0 auto !important;
  width: auto !important;
  text-align: left !important;
}

#footer02-5a .col-12:last-child {
  flex: 0 0 auto !important;
  width: auto !important;
  margin-left: auto !important;
  text-align: right !important;
}

#footer02-5a .copyright {
  margin: 0 !important;
  color: #efe8e1 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

#footer02-5a .row-links-soc {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#footer02-5a .row-links-soc a {
  color: #d8b183 !important;
  font-size: 16px !important;
  text-decoration: none !important;
}

@media (max-width: 768px) {
  #footer02-5a .row {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }

  #footer02-5a .col-12:first-child,
  #footer02-5a .col-12:last-child {
    width: 100% !important;
    text-align: center !important;
  }

  #footer02-5a .row-links-soc {
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
  }
}
#footer02-5a,
section.footer2,
section[class*="footer2"] {
  display: block !important;
}

section[class*="contacts"],
section[id*="contacts"],
section[class*="contact"],
section[id*="contact"],
section[class*="contacto"],
section[id*="contacto"] {
  display: block !important;
}

#contacts01-59 {
  background: #2b112f !important;
  padding: 95px 22px 125px !important;
}

#contacts01-59 .container {
  max-width: 980px !important;
  margin: 0 auto !important;
}

#contacts01-59 .mbr-section-title {
  color: #d8b183 !important;
  font-size: 26px !important;
  font-weight: 300 !important;
  margin: 0 0 4px !important;
}

#contacts01-59 .mbr-section-subtitle {
  color: #fff !important;
  font-size: 24px !important;
  font-weight: 300 !important;
  margin: 0 0 52px !important;
}

#contacts01-59 .card-wrap {
  border: 1px solid rgba(216,177,131,.42) !important;
  padding: 20px !important;
  max-width: 840px !important;
  margin: 0 auto !important;
}

#contacts01-59 .contact-items {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 10px !important;
}

#contacts01-59 .contact-item {
  border: 1px solid rgba(216,177,131,.14) !important;
  min-height: 84px !important;
  padding: 22px 24px !important;
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

#contacts01-59 .cards-icon {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border: 1px solid rgba(216,177,131,.55) !important;
  border-radius: 50% !important;
  color: #d8b183 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

#contacts01-59 p {
  margin: 0 !important;
  color: #efe8e1 !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
}

@media (max-width: 991px) {
  #contacts01-59 .contact-items {
    grid-template-columns: 1fr !important;
  }
}
#contacts01-59 {
  padding-top: 95px !important;
  padding-bottom: 150px !important;
}

#contacts01-59 .container {
  max-width: 1030px !important;
}

#contacts01-59 .card-wrap {
  max-width: 840px !important;
  margin: 48px auto 0 !important;
  padding: 20px !important;
}

#contacts01-59 .contact-items {
  gap: 10px !important;
}

#contacts01-59 .contact-item {
  min-height: 92px !important;
  padding: 22px 28px !important;
  gap: 22px !important;
}

#contacts01-59 .cards-icon {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
}

#contacts01-59 p {
  font-size: 16px !important;
  line-height: 1.45 !important;
}

#contacts01-59 .mbr-section-title,
#contacts01-59 .mbr-section-subtitle {
  max-width: 1030px !important;
}

#contacts01-59 .mbr-section-title {
  margin-bottom: 4px !important;
}

#contacts01-59 .mbr-section-subtitle {
  margin-bottom: 0 !important;
}
/* ===== CONTACTO CROWN ===== */

#contacts01-59 {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
    background-image: url("../../images/flores-grabadas-crownofindia-1353x1163.jpg") !important;
}

#contacts01-59 .title-wrapper {
    margin-bottom: 40px;
}

#contacts01-59 .mbr-section-title {
    color: #cfb79d;
}

#contacts01-59 .mbr-section-subtitle {
    color: #dccebe;
}

#contacts01-59 .card-wrap {
    border: 1px solid #a47f7f;
    padding: 18px;
    max-width: 840px;
    margin: 0 auto;
}

#contacts01-59 .items-wrapper {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
}

#contacts01-59 .item {
    flex: 1;
}

#contacts01-59 .item-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px;
    border: 1px solid #a47f7f;
    min-height: 100px;
}

#contacts01-59 .iconfont-wrapper {
    flex-shrink: 0;
}

#contacts01-59 .mbr-iconfont {
    width: 48px;
    height: 48px;
    min-width: 48px;
    background-color: #3e2c3f;
    border: 1px solid #a47f7f;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #cfb79d;
}

#contacts01-59 .item-title {
    margin: 0;
    color: #dccebe;
    font-size: 1.1rem;
    line-height: 1.5;
}

@media (max-width: 991px) {

    #contacts01-59 .items-wrapper {
        flex-direction: column;
    }

    #contacts01-59 .card-wrap {
        max-width: 100%;
    }
}
/* ===== AJUSTE FINAL CONTACTO CARTA ===== */

#contacts01-59 {
  padding-top: 95px !important;
  padding-bottom: 115px !important;
  background-color: #2b112f !important;
  background-image: none !important;
}

#contacts01-59 .container {
  max-width: 1030px !important;
  margin: 0 auto !important;
}

#contacts01-59 .title-wrapper {
  max-width: 920px !important;
  margin: 0 auto 52px !important;
}

#contacts01-59 .mbr-section-title {
  color: #cfb79d !important;
  font-size: 26px !important;
  line-height: 1.2 !important;
  margin: 0 0 6px !important;
  text-align: left !important;
}

#contacts01-59 .mbr-section-subtitle {
  color: #ffffff !important;
  font-size: 23px !important;
  line-height: 1.2 !important;
  margin: 0 !important;
  text-align: left !important;
}

#contacts01-59 .card-wrap {
  max-width: 840px !important;
  margin: 0 auto !important;
  padding: 20px !important;
  border: 1px solid rgba(164,127,127,.85) !important;
}

#contacts01-59 .items-wrapper {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  margin: 0 !important;
}

#contacts01-59 .item {
  flex: 1 1 0 !important;
  width: 33.333% !important;
  max-width: 33.333% !important;
  padding: 0 !important;
  margin: 0 !important;
}

#contacts01-59 .item-wrapper {
  min-height: 104px !important;
  padding: 24px 22px !important;
  border: 1px solid rgba(164,127,127,.45) !important;
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  background: transparent !important;
}

#contacts01-59 .iconfont-wrapper {
  width: 48px !important;
  min-width: 48px !important;
  height: 48px !important;
  margin: 0 !important;
}

#contacts01-59 .mbr-iconfont {
  width: 48px !important;
  min-width: 48px !important;
  height: 48px !important;
  border: 1px solid rgba(164,127,127,.9) !important;
  border-radius: 50% !important;
  background-color: #3e2c3f !important;
  color: #cfb79d !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
}

#contacts01-59 .item-title {
  color: #dccebe !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  font-weight: 500 !important;
}

@media (max-width: 991px) {
  #contacts01-59 .items-wrapper {
    flex-direction: column !important;
  }

  #contacts01-59 .item {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* AJUSTE FINAL DEFINITIVO */

#contacts01-59 .card-wrap{
    max-width: 1050px !important;
    width: 100% !important;
}

#contacts01-59 .items-wrapper{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:0 !important;
}

#contacts01-59 .item{
    flex:1 1 33.333% !important;
    max-width:33.333% !important;
    padding:0 6px !important;
}

#contacts01-59 .item-wrapper{
    min-height:110px !important;
    padding:24px 28px !important;
}

#contacts01-59 .item-title{
    font-size:16px !important;
    line-height:1.4 !important;
}

/* ICONOS */
#contacts01-59 .cards-icon{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border-radius:50% !important;
    border:1px solid rgba(207,183,157,.7) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#cfb79d !important;
    font-size:20px !important;
}

#contacts01-59 .cards-icon{
    color:#cfb79d !important;
    font-size:20px !important;
}

#contacts01-59 .iconfont-wrapper{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border:1px solid #a47f7f !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:transparent !important;
}

#contacts01-59 .mbr-iconfont{
    border:none !important;
    background:none !important;
    width:auto !important;
    height:auto !important;
    min-width:auto !important;
    line-height:1 !important;
}
/* CONTACTO · FIX ONLINE */

#contacts01-59 .card-wrap {
  width: 100% !important;
  max-width: 1050px !important;
  margin: 0 auto !important;
}

#contacts01-59 .items-wrapper {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  margin: 0 !important;
}

#contacts01-59 .item {
  flex: 1 1 33.333% !important;
  max-width: 33.333% !important;
  width: 33.333% !important;
  padding: 0 !important;
}

#contacts01-59 .item-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
}

@media (max-width: 991px) {
  #contacts01-59 .items-wrapper {
    flex-direction: column !important;
  }

  #contacts01-59 .item {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }

  #contacts01-59 .item-wrapper {
    width: 100% !important;
  }

  #contacts01-59 .item-title {
    white-space: normal !important;
    word-break: normal !important;
  }
}
/* FOTOS A PANTALLA COMPLETA EN MÓVIL */

@media (max-width: 768px) {

  .crown-ar-card,
  .crown-ar-card img {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  .crown-ar-card {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  .crown-ar-card img {
    display: block !important;
    height: auto !important;
    object-fit: cover !important;
  }

}
/* CONTACTO · MOBILE FIX */

@media (max-width: 768px) {

  #contacts01-59 {
    padding: 70px 20px 90px !important;
  }

  #contacts01-59 .card-wrap {
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px !important;
  }

  #contacts01-59 .items-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  #contacts01-59 .item {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding: 0 !important;
  }

  #contacts01-59 .item-wrapper {
    width: 100% !important;
    min-height: 96px !important;
    padding: 24px 26px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 20px !important;
  }

  #contacts01-59 .iconfont-wrapper {
    width: 48px !important;
    min-width: 48px !important;
  }

  #contacts01-59 .item-title {
    width: auto !important;
    max-width: none !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    font-size: 17px !important;
    line-height: 1.4 !important;
  }
}
/* HERO: overlay elegante, no tan oscuro */
.menu-hero::before{
    display:block !important;
    opacity:1 !important;
    background: linear-gradient(
        90deg,
        rgba(47,31,48,.55) 0%,
        rgba(47,31,48,.28) 45%,
        rgba(47,31,48,.50) 100%
    ) !important;
}

.menu-hero img{
    filter: saturate(.96) contrast(1.03) brightness(.92) !important;
}


/* CARDS: overlay suave pero con lectura */
.crown-ar-card::before{
    background: linear-gradient(
        180deg,
        rgba(47,31,48,.05) 0%,
        rgba(47,31,48,.18) 48%,
        rgba(25,18,30,.62) 100%
    ) !important;
}

.crown-ar-card::after{
    opacity:.55 !important;
}

.crown-ar-card img{
    filter: brightness(1) contrast(1.02) saturate(.98) !important;
}
/* FOTO ENTRE SECCIONES DEL MENÚ */

.crown-menu-photo-frame,
.crown-menu-photo-frame *{
    box-shadow:none !important;
    outline:none !important;
}

.crown-menu-photo-frame{
    border:none !important;
    padding:0 !important;
    margin:60px auto !important;
}

.crown-menu-photo-frame img{
    border:1px solid rgba(191,151,104,.55) !important;
    padding:0 !important;
    box-shadow:none !important;
    outline:none !important;
    display:block !important;
    width:100% !important;
    height:auto !important;
}


/* MÓVIL: FOTO A TODO EL ANCHO */
@media (max-width: 768px){

    .crown-menu-photo-frame img{
        width:100vw !important;
        max-width:100vw !important;
        margin-left:calc(50% - 50vw) !important;
        margin-right:calc(50% - 50vw) !important;
        padding:0 !important;
        border:none !important;
    }

    .crown-menu-photo-frame img{
        width:100vw !important;
        max-width:100vw !important;
        border-left:none !important;
        border-right:none !important;
    }
}
/* FOTO ENTRE SECCIONES DEL MENÚ: UN SOLO BORDE */

.crown-menu-photo-frame{
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
    padding:0 !important;
}

.crown-menu-photo-box{
    border:1px solid rgba(191,151,104,.55) !important;
    outline:none !important;
    box-shadow:none !important;
    padding:0 !important;
}

.crown-menu-photo-box img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
}


/* MÓVIL: FOTO A TODO EL ANCHO */
@media (max-width:768px){

    .crown-menu-photo-frame{
        width:100vw !important;
        max-width:100vw !important;
        margin-left:calc(50% - 50vw) !important;
        margin-right:calc(50% - 50vw) !important;
        padding:0 !important;
        border:none !important;
    }

    .crown-menu-photo-box{
        width:100vw !important;
        max-width:100vw !important;
        border-left:none !important;
        border-right:none !important;
        padding:0 !important;
    }

    .crown-menu-photo-box img{
        width:100vw !important;
        max-width:100vw !important;
    }
}
/* QUITAR DEFINITIVAMENTE LA LÍNEA EXTERIOR */

.crown-menu-photo-frame{
    border:0 !important;
    padding:0 !important;
    outline:0 !important;
    box-shadow:none !important;
}

.crown-menu-photo-frame img{
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
}

.crown-menu-photo-frame::before,
.crown-menu-photo-frame::after,

.crown-menu-photo-box::after{
    display:none !important;
    content:none !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
}

/* deja solo la línea buena */
.crown-menu-photo-box{
    border:1px solid rgba(191,151,104,.55) !important;
    padding:8px !important;
}
/* quitar TODOS los marcos del bloque foto */
.crown-menu-photo-frame,
.crown-menu-photo-box,
.crown-menu-photo-frame *,
.crown-menu-photo-box *{
    outline:none !important;
    box-shadow:none !important;
}

.crown-menu-photo-frame,
.crown-menu-photo-frame img{
    border:none !important;
    background:none !important;
}

/* este suele ser el marco fantasma */
.crown-menu-photo-frame::before,
.crown-menu-photo-frame::after,
.crown-menu-photo-box::before,
.crown-menu-photo-box::after{
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
    background:none !important;
    display:none !important;
}

/* dejar SOLO un borde limpio en el box */
.crown-menu-photo-box{
    border:1px solid rgba(191,151,104,.55) !important;
    padding:8px !important;
    background:transparent !important;
}

.crown-menu-photo-box img{
    border:none !important;
    padding:0 !important;
    display:block !important;
}
/* QUITAR LÍNEA EXTERIOR FANTASMA */

.crown-menu-photo-frame::before,
.crown-menu-photo-frame::after,
.crown-menu-photo-box::before,
.crown-menu-photo-box::after{
    content:none !important;
    display:none !important;
    border:0 !important;
    background:none !important;
    box-shadow:none !important;
}

/* quitar marco del contenedor */
.crown-menu-photo-frame,
.crown-menu-photo-box{
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}

/* dejar SOLO un borde en la imagen */
.crown-menu-photo-box img{
    border:1px solid rgba(191,151,104,.55) !important;
    padding:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    display:block !important;
}
.crown-ar-card::before,
.crown-ar-card::after {
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0.00),
    rgba(0,0,0,0.28)
  ) !important;
}

.crown-ar-card img {
  filter: brightness(1.08) contrast(1.03) saturate(1.08);
}
/* ===========================
   AJUSTES MÓVIL CARTA CROWN
   =========================== */

@media (max-width: 768px) {

  /* Fotos */

  .crown-menu-photo-frame {
    width: calc(100% - 28px);
    margin: 28px auto 46px;
    padding: 0;
    border: 1px solid rgba(180,135,85,0.25);
    overflow: hidden;
  }

  .crown-menu-photo-box {
    width: 100%;
    overflow: hidden;
  }

  .crown-menu-photo-box img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
  }

  /* Textos sobre las fotos */

  .crown-photo-kicker,
  .crown-menu-photo-frame p,
  .crown-menu-photo-frame h3 {
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    line-height: 1.25;
    overflow-wrap: break-word;
    word-break: normal;
  }

  .crown-menu-photo-frame h3 {
    font-size: 24px;
  }

  /* Títulos de categorías */

  .crown-menu-section-title {
    font-size: 34px;
    line-height: 1.05;
    letter-spacing: 0.08em;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
    overflow-wrap: break-word;
  }

  /* Descripciones de platos */

  td.desc,
  .desc,
  .crown-menu-list td {
    overflow-wrap: break-word;
    word-break: normal;
  }
}

/* Móviles pequeños */

@media (max-width: 480px) {

  .crown-menu-photo-frame h3 {
    font-size: 22px;
    line-height: 1.2;
  }

  .crown-menu-section-title {
    font-size: 28px;
    line-height: 1.1;
  }

  .crown-photo-kicker {
    font-size: 12px;
    letter-spacing: 0.12em;
  }
}
@media (max-width: 768px) {

  .crown-menu-photo-frame h3,
  .crown-menu-photo-frame .crown-photo-title {
    width: 100%;
    max-width: 92%;
    margin: 8px auto 20px;
    padding: 0 12px;
    box-sizing: border-box;
    font-size: 24px;
    line-height: 1.15;
    text-align: center;
    white-space: normal !important;
    overflow-wrap: normal;
    word-break: normal;
  }

}

@media (max-width: 480px) {

  .crown-menu-photo-frame h3,
  .crown-menu-photo-frame .crown-photo-title {
    font-size: 19px;
    line-height: 1.18;
    max-width: 88%;
  }

}
@media (max-width: 768px) {

  .crown-menu-photo-frame {
    width: 100% !important;
    max-width: 100% !important;
    margin: 34px auto 0 !important;
    padding: 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .crown-menu-photo-frame .crown-photo-kicker {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 10px !important;
    padding: 0 18px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    font-size: 12px !important;
    letter-spacing: 0.16em !important;
  }

  .crown-menu-photo-frame h3 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 22px !important;
    padding: 0 28px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    font-size: 24px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  .crown-photo-box,
  .crown-photo-box img {
    width: 100% !important;
    max-width: 100% !important;
  }

  .crown-photo-box img {
    display: block !important;
    height: auto !important;
    object-fit: cover !important;
  }
}
@media (max-width:768px){

  .crown-menu-photo-frame{
    border:none !important;
    background:transparent !important;
    padding:0 !important;
    margin:34px 0 42px !important;
    width:100% !important;
    max-width:100% !important;
  }

  .crown-photo-box{
    border:none !important;
    background:transparent !important;
    padding:0 !important;
    margin:18px 0 0 !important;
    width:100% !important;
    max-width:100% !important;
  }

  .crown-photo-box img{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    border:none !important;
  }
}

/* =========================================================
   FILTRO FINAL POR FAMILIAS · Crown carta
   Mantiene el diseño visual y solo cambia la lógica.
   ========================================================= */

.menu-family-block,
.menu-subsection {
  display: block;
}

body.menu-filter-active .menu-family-block {
  display: none !important;
}

body.menu-filter-active .menu-family-block.is-active {
  display: block !important;
  animation: crownFamilyFade .24s ease both;
}

body.menu-filter-active .crown-menu-list > *:not(.menu-family-block):not(.crown-allergy-note):not(div:first-child) {
  display: none !important;
}

body.menu-filter-active .menu-family-block.is-active .menu-subsection:first-child .crown-menu-section-title {
  margin-top: 0 !important;
}

.menu-nav a.is-active,
.crown-ar-card.is-active {
  background: rgba(216,177,131,.14) !important;
  border-color: rgba(216,177,131,.52) !important;
  color: #d8b183 !important;
}

body.menu-filter-active .crown-menu-list {
  min-height: calc(100vh - 190px);
}

@keyframes crownFamilyFade {
  from { opacity: 0; transform: translateY(7px); }
  to { opacity: 1; transform: translateY(0); }
}

/* =========================================================
   AJUSTE FINAL DE SECCIONES
   - Aviso de alergias visible en todas las familias
   - Tés e infusiones independiente de Menús
   - Sin cambios en el diseño visual original
   ========================================================= */

.crown-allergy-source {
  display: none !important;
}

.menu-family-block > .crown-allergy-note--family {
  display: block !important;
  margin-top: 0 !important;
  margin-bottom: 34px !important;
}

body.menu-filter-active .menu-family-block {
  display: none !important;
}

body.menu-filter-active .menu-family-block.is-active {
  display: block !important;
}

body.menu-filter-active .menu-family-block.is-active > .menu-subsection:first-of-type .crown-menu-section-title {
  margin-top: 0 !important;
}

.menu-family-block > .crown-allergy-note--family + .menu-subsection .crown-menu-section-title {
  margin-top: 0 !important;
}

/* =========================================================
   CORRECCIÓN DE TÍTULOS + ENTRANTES COMO VISTA INICIAL
   ========================================================= */

.menu-family-block.is-active .crown-menu-section-title {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}

.menu-family-block.is-active > .crown-allergy-note--family {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Evita que el título quede pegado o escondido bajo la barra fija. */
.menu-family-block.is-active .menu-subsection:first-of-type .crown-menu-section-title {
  margin-top: 18px !important;
  padding-top: 8px !important;
  scroll-margin-top: 150px !important;
}

@media (max-width: 991px) {
  .menu-family-block.is-active .menu-subsection:first-of-type .crown-menu-section-title {
    scroll-margin-top: 125px !important;
  }
}


/* =========================================================
   POSICIÓN ORIGINAL DE LA BOTONERA AL CARGAR
   Se fija únicamente cuando el scroll alcanza la carta.
   ========================================================= */
body:not(.carta-nav-active) .menu-nav-wrap {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  margin-top: -42px !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
  z-index: 50 !important;
}

body:not(.carta-nav-active) .menu-content {
  padding-top: 42px !important;
}
