.elementor-188 .elementor-element.elementor-element-b99f606{--display:flex;}.elementor-188 .elementor-element.elementor-element-d7df963{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:2px;}.elementor-188 .elementor-element.elementor-element-d7df963 .elementor-divider-separator{width:100%;}.elementor-188 .elementor-element.elementor-element-d7df963 .elementor-divider{padding-block-start:5px;padding-block-end:5px;}.elementor-188 .elementor-element.elementor-element-d7df963 .elementor-divider__text{color:var( --e-global-color-text );font-family:var( --e-global-typography-6171b05-font-family ), Sans-serif;font-size:var( --e-global-typography-6171b05-font-size );font-weight:var( --e-global-typography-6171b05-font-weight );}.elementor-188 .elementor-element.elementor-element-0f2fd2d .jet-listing-dynamic-repeater__items{flex-direction:flex-start;justify-content:flex-start;}.elementor-188 .elementor-element.elementor-element-0f2fd2d .jet-listing-dynamic-repeater__item > *{justify-content:flex-start;}@media(max-width:1366px){.elementor-188 .elementor-element.elementor-element-d7df963 .elementor-divider__text{font-size:var( --e-global-typography-6171b05-font-size );}}@media(max-width:1024px){.elementor-188 .elementor-element.elementor-element-d7df963 .elementor-divider__text{font-size:var( --e-global-typography-6171b05-font-size );}}@media(max-width:767px){.elementor-188 .elementor-element.elementor-element-d7df963 .elementor-divider__text{font-size:var( --e-global-typography-6171b05-font-size );}}/* Start custom CSS for jet-listing-dynamic-repeater, class: .elementor-element-0f2fd2d *//* --- CONTENEDOR PRINCIPAL --- */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .menu {
    width: 100% !important;
    display: grid;
    grid-template-columns: 1fr; /* 1 columna (lista vertical) */
    gap: 0;
    background: #fff; /* Fondo blanco limpio */
    border-radius: 8px; /* Bordes ligeramente redondeados */
    /* Sombra suave para darle profundidad */
    box-shadow: 0 4px 15px rgba(0,0,0,0.03); 
    overflow: hidden; /* Para que el radius funcione bien */
    border: 1px solid #f0f0f0; /* Borde exterior muy sutil */
}

/* --- ITEM INDIVIDUAL (PLATO) --- */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .menu_item_carta {
    padding: 20px 25px; /* Más aire interior para que respire */
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    border-bottom: 1px solid #eee; /* Línea sólida muy suave */
    width: 100%;
    transition: background 0.3s ease; /* Transición suave al pasar el ratón */
}

/* Efecto Hover: cambio sutil al pasar el ratón */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .menu_item_carta:hover {
    background-color: #fafafa;
}

/* Quitamos borde al último elemento */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .menu_item_carta:last-child {
    border-bottom: none;
}

/* --- ESTRUCTURA INTERNA --- */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .carta_row_1, 
.elementor-188 .elementor-element.elementor-element-0f2fd2d .carta_row_2, 
.elementor-188 .elementor-element.elementor-element-0f2fd2d .carta_row_3 {
    width: 100%;
}

.elementor-188 .elementor-element.elementor-element-0f2fd2d .carta_row_1 {
    margin-bottom: 6px; /* Espacio entre título y descripción */
}

.elementor-188 .elementor-element.elementor-element-0f2fd2d .carta_row_2 {
    margin-bottom: 12px; /* Espacio entre descripción y footer */
}

/* --- TIPOGRAFÍA --- */

/* Título del Plato */
.elementor-188 .elementor-element.elementor-element-0f2fd2d h3 {
    font-family: "Montserrat", sans-serif; /* O tu fuente principal */
    font-size: 1.15rem;
    margin: 0;
    color: #222; /* Negro casi puro */
    font-weight: 700;
    letter-spacing: -0.3px;
}

/* Descripción */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .carta_row_2 p {
    margin: 0;
    font-family: "Open Sans", sans-serif; /* O tu fuente secundaria */
    font-size: 0.95rem;
    color: #666; /* Gris medio para lectura cómoda */
    line-height: 1.5;
}

/* --- FILA INFERIOR (ALÉRGENOS + PRECIO) --- */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .carta_row_3 {
    display: flex;
    justify-content: space-between;
    align-items: center; /* Centrados verticalmente */
    padding-top: 10px;
    border-top: 1px dashed #e5e5e5; /* Línea punteada separadora */
    margin-top: 5px;
}

/* Columna Izquierda (Alérgenos) */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .col-1 {
    flex: 1;
    padding-right: 15px;
}

/* Columna Derecha (Precio) */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .col-2 {
    text-align: right;
    white-space: nowrap; /* Que el precio no se rompa */
}

/* --- ESTILOS ESPECÍFICOS --- */

/* Alérgenos */
.alergenos-box {
    margin: 0;
    font-size: 0.85rem;
    color: #9364A9; /* Morado corporativo */
    font-weight: 500;
    letter-spacing: 0.3px;
}

/* Pseudo-elemento para el título "Alérgenos:" */
.alergenos-box::before {
    content: "ALÉRGENOS: ";
    font-weight: 800;
    color: #333;
    font-size: 0.75rem;
    text-transform: uppercase;
    margin-right: 4px;
    opacity: 0.7;
}

/* Ocultar si vacío */
.alergenos-box:empty {
    display: none;
}

/* Precio */
.elementor-188 .elementor-element.elementor-element-0f2fd2d .precio {
    color: #E30613; /* Rojo corporativo */
    font-size: 1.25rem; /* Un poco más grande para destacar */
    font-weight: 800;
    margin: 0;
    line-height: 1;
}

/* --- MEDIA QUERY (MÓVIL) --- */
@media(max-width: 767px){
    .elementor-188 .elementor-element.elementor-element-0f2fd2d .menu_item_carta {
        padding: 15px; /* Menos padding en móvil */
    }
    
    .elementor-188 .elementor-element.elementor-element-0f2fd2d h3 {
        font-size: 1.1rem;
    }
    
    .elementor-188 .elementor-element.elementor-element-0f2fd2d .precio {
        font-size: 1.15rem;
    }
}/* End custom CSS */