.elementor-kit-266{--e-global-color-primary:#94C11C;--e-global-color-secondary:#E0CFB4;--e-global-color-text:#4E4E4E;--e-global-color-accent:#88540F;--e-global-color-78dfc0e5:#FFFFFF;--e-global-color-06e7425:#000000;--e-global-color-7597f73:#2E2E2E;--e-global-color-7bb4a74:#6E6E6E;--e-global-typography-primary-font-family:"Oswald";--e-global-typography-primary-font-size:60px;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Oswald";--e-global-typography-secondary-font-size:40px;--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Oswald";--e-global-typography-accent-font-size:18px;--e-global-typography-accent-font-weight:600;color:#A1A1A1;font-family:"Poppins";font-size:14px;font-weight:400;line-height:24px;letter-spacing:0px;}.elementor-kit-266 e-page-transition{background-color:#FFBC7D;}.elementor-kit-266 a{color:#000000;font-size:14px;}.elementor-kit-266 a:hover{color:#7E5A4E;}.elementor-kit-266 h1{color:var( --e-global-color-primary );font-family:"Oswald";font-size:72px;}.elementor-kit-266 h2{color:var( --e-global-color-primary );font-family:"Oswald";font-size:36px;}.elementor-kit-266 h3{color:#7E5A4E;font-family:"Oswald";font-size:18px;font-weight:bold;text-transform:uppercase;line-height:1.2em;}.elementor-kit-266 h4{color:var( --e-global-color-primary );font-family:"Oswald";font-size:30px;}.elementor-kit-266 h5{color:#7E5A4E;font-family:"Oswald";font-size:18px;font-weight:bold;text-transform:uppercase;}.elementor-kit-266 h6{color:var( --e-global-color-secondary );font-family:"Italianno";font-size:30px;text-transform:capitalize;line-height:26px;letter-spacing:1.5px;}.elementor-kit-266 label{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family );font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-266 input:not([type="button"]):not([type="submit"]),.elementor-kit-266 textarea,.elementor-kit-266 .elementor-field-textual{color:var( --e-global-color-text );padding:13px 0px 13px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-266 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-266{--e-global-typography-text-font-size:16px;}.elementor-kit-266 h2{font-size:30px;}.elementor-kit-266 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* DASBROT-LEGAL-INICIO */
body.page-id-2271 .site-main, body.page-id-2272 .site-main, body.page-id-2273 .site-main{max-width:760px !important;margin:0 auto !important;padding:170px 20px 72px !important;}body.page-id-2271 .site-main h1, body.page-id-2272 .site-main h1, body.page-id-2273 .site-main h1{font-family:Oswald,sans-serif;color:#88540F;font-size:clamp(38px,6vw,56px) !important;line-height:1.1;}body.page-id-2271 .site-main h2, body.page-id-2272 .site-main h2, body.page-id-2273 .site-main h2{font-family:Oswald,sans-serif;font-size:24px !important;margin-top:36px;}body.page-id-2271 .site-main :is(p,li), body.page-id-2272 .site-main :is(p,li), body.page-id-2273 .site-main :is(p,li){color:#3a3a3a;}body.page-id-2271 .site-main a, body.page-id-2272 .site-main a, body.page-id-2273 .site-main a{color:#88540F;}@media (max-width:767px){body.page-id-2271 .site-main, body.page-id-2272 .site-main, body.page-id-2273 .site-main{padding-top:150px !important;}}
/* DASBROT-LEGAL-FIN */
/* DASBROT-BOTONES-INICIO */
/* Botón único de toda la web (decidido por Manuel el 20 oct 2026): como los suyos (42 px de alto, Oswald 18, esquinas de 5 px),
   con sombra para que «floten». El único distinto es el de la cabecera (.ds-cab-encargar).
   Abarca: botones de Elementor, envío de formularios (Elementor y WPForms), .ds-btn (catálogo, ventana de producto) y «Ver mapa». */
body .elementor-widget-button:not(.ds-cab-encargar) .elementor-button,
body .elementor-widget-form .elementor-button,
body .elementor .ds-btn .elementor-button,
body a.ds-btn,
body .elementor a.ds-btn,
body .wpforms-container .wpforms-submit,
body div.wpforms-container-full .wpforms-form button.wpforms-submit,
body .wpforms-container button[type=submit],
body button.ds-mapa-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	background: #94C11C !important;
	color: #1C2400 !important;
	border: 0 !important;
	border-radius: 5px !important;
	padding: 12px 24px !important;
	font: 600 18px/1 Oswald, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	min-height: 0 !important;
	height: auto !important;
	box-shadow: 0 4px 12px rgba(28, 36, 0, .28), 0 1px 3px rgba(0, 0, 0, .18) !important;
	transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
	cursor: pointer;
}
body .elementor-widget-button:not(.ds-cab-encargar) .elementor-button:hover,
body .elementor-widget-form .elementor-button:hover,
body .elementor .ds-btn .elementor-button:hover,
body a.ds-btn:hover,
body .elementor a.ds-btn:hover,
body .wpforms-container .wpforms-submit:hover,
body button.ds-mapa-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(28, 36, 0, .32), 0 2px 5px rgba(0, 0, 0, .2) !important;
	filter: brightness(1.05);
	color: #1C2400 !important;
}
body .elementor-widget-button:not(.ds-cab-encargar) .elementor-button:active,
body a.ds-btn:active { transform: translateY(0); }
body .elementor-widget-button:not(.ds-cab-encargar) .elementor-button:focus-visible,
body a.ds-btn:focus-visible,
body button.ds-mapa-btn:focus-visible { outline: 3px solid #88540F !important; outline-offset: 3px; }
body .elementor-widget-button:not(.ds-cab-encargar) .elementor-button .elementor-button-text { line-height: 1 !important; }
@media (max-width: 767px) {
	body .elementor-widget-button:not(.ds-cab-encargar) .elementor-button,
	body .elementor-widget-form .elementor-button,
	body .elementor .ds-btn .elementor-button,
	body a.ds-btn,
	body .elementor a.ds-btn,
	body .wpforms-container .wpforms-submit,
	body div.wpforms-container-full .wpforms-form button.wpforms-submit,
	body button.ds-mapa-btn { font-size: 16px !important; padding: 12px 20px !important; }
}
@media (prefers-reduced-motion: reduce) {
	body .elementor-button, body a.ds-btn { transition: none !important; }
	body .elementor-button:hover, body a.ds-btn:hover { transform: none; }
}

/* Formularios redondeados, como el resto de la web (Manuel, 27 oct 2026; el 1 nov pasaron a rectos como LazyKite y volvieron a redondos
   el mismo día: «los bordes redondeados como los tenía antes»): caja del formulario 22 px, campos 12 px. En todos los formularios. */
body .elementor-widget-wrap:has(> .elementor-widget-wpforms),
body .e-con:has(> .elementor-widget-form) { border-radius: 22px !important; }
body .wpforms-container .wpforms-field input:not([type=checkbox]):not([type=radio]),
body .wpforms-container .wpforms-field textarea,
body .wpforms-container .wpforms-field select,
body .elementor-field-group .elementor-field-textual,
body .elementor-field-group select { border-radius: 12px !important; padding-left: 14px !important; }
body .wpforms-container .wpforms-field input[type=checkbox],
body .elementor-field-group input[type=checkbox] { border-radius: 4px !important; }
/* Títulos de opiniones sin Mayúscula En Cada Palabra */
body .ds-sin-mayus .elementor-heading-title { text-transform: none !important; }

/* Sin scroll horizontal: la sección de contacto de Manuel (49d0fc03) mide 280 px de más en ordenador (también en manuelherraiz.com).
   «clip» corta sin crear barra de scroll y no rompe la cabecera fija. */
html, body { overflow-x: clip; }

/* ===== Ritmo vertical y títulos (30 oct 2026; clases puestas por ritmo.php) =====
   Una sola escala: secciones 96/80/64 px, portadas y franjas con el texto a 72/48 px del borde, títulos de sección 48/34 px. */
:root { --ds-sec: 96px; --ds-borde: 72px; }
@media (max-width: 1024px) { :root { --ds-sec: 80px; } }
@media (max-width: 767px) { :root { --ds-sec: 64px; --ds-borde: 48px; } }
body .ds-sec { padding-top: var(--ds-sec) !important; padding-bottom: var(--ds-sec) !important; margin-top: 0 !important; margin-bottom: 0 !important; }
body .ds-sec.ds-junto { padding-top: 0 !important; }
/* Sección con fondo que envuelve a otra caja (p. ej. «Cómo funciona» en Distribución): el espacio lo pone solo la de fuera */
body .ds-sec > .e-con, body .ds-sec > .e-con > .e-con-inner { padding-top: 0 !important; padding-bottom: 0 !important; }
body .ds-hero, body .ds-banda { padding-bottom: var(--ds-borde) !important; margin-top: 0 !important; margin-bottom: 0 !important; }
/* Dentro de cada sección: sin rellenos ni márgenes sueltos en el primer y el último elemento */
body :is(.ds-sec, .ds-hero, .ds-banda) > .elementor-container > .elementor-column > .elementor-widget-wrap,
body :is(.ds-sec, .ds-hero, .ds-banda) > .e-con-inner { padding-top: 0 !important; padding-bottom: 0 !important; }
body :is(.ds-sec, .ds-hero, .ds-banda) .elementor-inner-section:first-child { margin-top: 0 !important; padding-top: 0 !important; }
body :is(.ds-sec, .ds-hero, .ds-banda) .elementor-inner-section:last-child { margin-bottom: 0 !important; padding-bottom: 0 !important; }
body :is(.ds-sec, .ds-hero, .ds-banda) .elementor-inner-section > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-top: 0 !important; padding-bottom: 0 !important; }
body :is(.ds-sec, .ds-hero, .ds-banda) .elementor-widget-wrap > .elementor-element:last-child,
body :is(.ds-sec, .ds-hero, .ds-banda) .e-con > .elementor-element:last-child,
body :is(.ds-sec, .ds-hero, .ds-banda) .e-con-inner > .elementor-element:last-child { margin-bottom: 0 !important; }
body :is(.ds-sec, .ds-hero, .ds-banda) .elementor-widget-text-editor:last-child p:last-child { margin-bottom: 0; }
/* Títulos de sección: un solo tamaño */
body .ds-sec .elementor-widget-heading h2.elementor-heading-title,
body .ds-banda .elementor-widget-heading h2.elementor-heading-title { font-size: 48px !important; line-height: 1.1 !important; }
@media (max-width: 767px) {
	body .ds-sec .elementor-widget-heading h2.elementor-heading-title,
	body .ds-banda .elementor-widget-heading h2.elementor-heading-title { font-size: 34px !important; }
}

/* Cajón del móvil: oculto desde el principio. La hoja del widget Off-Canvas de Elementor se carga al final de la página y,
   hasta entonces, el cajón ocupaba toda la pantalla (CLS 1 en las pruebas del 30 oct). */
body:not(.elementor-editor-active) .elementor-widget-off-canvas { position: absolute; height: 0; overflow: visible; }
body:not(.elementor-editor-active) .elementor-widget-off-canvas .e-off-canvas { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 2147483630; }
body:not(.elementor-editor-active) .elementor-widget-off-canvas .e-off-canvas[aria-hidden="true"] { visibility: hidden; opacity: 0; pointer-events: none; }

/* ===== Retoques de diseño (30 oct 2026; clases puestas por retoques.php) ===== */
/* Títulos en minúscula normal; excepciones: subtítulos en Italianno (Mayúscula En Cada Palabra, estilo de Manuel) y «DAS BROT» de la portada */
body .elementor-widget-heading .elementor-heading-title { text-transform: none !important; }
body .ds-italianno .elementor-heading-title { text-transform: capitalize !important; }
body .ds-portada-inicio h1.elementor-heading-title { text-transform: uppercase !important; }
body .sp-easy-accordion .ea-header a, body .sp-easy-accordion .ea-header { text-transform: none !important; }
/* Opiniones: ocultas mientras Trustindex no muestre reseñas (aparecen solas cuando las haya) */
body .ds-opiniones:not(:has(.ti-review-item)) { display: none !important; }
/* Subtítulos en cursiva (Italianno) en dos líneas: se montaban en móvil (31 oct 2026) */
body .ds-italianno .elementor-heading-title { line-height: 1.05 !important; }
/* Textos largos (historia de Nosotros): columna de lectura alineada a la izquierda (31 oct 2026) */
body .ds-texto-largo { max-width: 760px; margin-left: auto !important; margin-right: auto !important; }
body .ds-texto-largo, body .ds-texto-largo p { text-align: left !important; }
/* Contacto: tarjetas de encargos en tienda (31 oct 2026) */
body .ds-tiendas-titulo { font-family: "Oswald", sans-serif; font-size: 24px; font-weight: 600; color: #2E2E2E; margin: 0 0 14px; }
body .ds-tiendas-contacto { display: grid; grid-template-columns: 1fr; gap: 14px; }   /* una por fila: en dos columnas el correo se partía */
body .ds-tiendas-contacto h3 { font-family: "Oswald", sans-serif; font-size: 20px; font-weight: 600; color: #88540F; margin: 0 0 6px; }
body .ds-tiendas-contacto p { font-size: 15px; line-height: 1.6; }
body .ds-tiendas-contacto a { color: #88540F; font-weight: 600; text-decoration: none; word-break: break-word; }
body .ds-tiendas-titulo, body .ds-tiendas-contacto h3 { text-transform: none !important; letter-spacing: 0 !important; }
/* Formulario de Distribución (Elementor) igual que los de WPForms del resto de la web (31 oct 2026) */
body .ds-form .elementor-field-label { font-family: "Poppins", sans-serif; font-weight: 700 !important; font-size: 16px !important; color: #2E2E2E !important; margin-bottom: 8px; }
body .ds-form .elementor-mark-required .elementor-field-label:after { color: #D63637 !important; }
body .ds-form .elementor-field-textual, body .ds-form select { background-color: #E0CFB4 !important; border: 1px solid #E0CFB4 !important; color: #4E4E4E !important; font-size: 16px !important; box-shadow: none !important; }
body .ds-form .elementor-field-textual:focus, body .ds-form select:focus { border-color: #88540F !important; outline: none; }
body .ds-form .elementor-field-type-acceptance input[type=checkbox] { -webkit-appearance: none; appearance: none; display: inline-block; flex: 0 0 16px; width: 16px !important; min-width: 16px; height: 16px; padding: 0 !important; border: 0 !important; margin: 0 8px 0 0; vertical-align: -2px; background: #E0CFB4 !important; border-radius: 4px; cursor: pointer; }
body .ds-form .elementor-field-type-acceptance input[type=checkbox]:checked { background: #94C11C !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%231C2400' stroke-width='2'/%3E%3C/svg%3E") !important; background-position: center !important; background-size: 12px !important; background-repeat: no-repeat !important; }
body .ds-form .elementor-field-type-acceptance label a, body .ds-ver-productos a { color: #88540F; font-weight: 600; text-decoration: none; }
/* Títulos de portada con sombra suave, como el menú: se leen también sobre fotos con letras (furgoneta de Distribución) (31 oct 2026) */
body .ds-portada .elementor-heading-title, body .ds-hero .elementor-heading-title { text-shadow: 0 2px 18px rgba(0,0,0,.5); }

/* Sin gluten: 5 panes en fila en PC; en móvil el quinto ocupa toda la fila (no queda una tarjeta suelta).
   nth-of-type y no nth-child: el primer hijo de la rejilla es un <style> */
@media (max-width:767px){
	body .ds-rejilla-5 .e-loop-item:last-child:nth-of-type(odd){ grid-column: 1 / -1; }
	body .ds-rejilla-5 .e-loop-item:last-child:nth-of-type(odd) .ds-tarjeta{ aspect-ratio: 5 / 3; }
}

/* Tiendas (31 oct 2026): títulos de bloque más pequeños que los de sección, horario limpio, mapa de alto fijo y enlace a opiniones */
body .ds-sec .ds-titulo-bloque h2.elementor-heading-title { font-size: 28px !important; line-height: 1.15 !important; }
body table.ds-horario { width: 100%; max-width: 440px; border: 0 !important; border-collapse: collapse; margin: 0; }
body table.ds-horario tr, body table.ds-horario td { background: none !important; border: 0 !important; }
body table.ds-horario td { padding: 10px 0 !important; border-bottom: 1px solid #E0CFB4 !important; }
body table.ds-horario tr:first-child td { border-top: 1px solid #E0CFB4 !important; }
body table.ds-horario td:last-child { text-align: right; font-weight: 700; color: #2E2E2E; font-variant-numeric: tabular-nums; }
body .ds-contacto-tienda a, body .ds-resenas a { color: #88540F; font-weight: 600; text-decoration: none; }
body .ds-resenas a { font-weight: 700; }
body .ds-mapa-tienda { width: 100%; }
body .ds-mapa-tienda .elementor-widget-container, body .ds-mapa-tienda .ds-mapa, body .ds-mapa-tienda iframe { height: 460px !important; }
@media (max-width:767px){
	body .ds-mapa-tienda .elementor-widget-container, body .ds-mapa-tienda .ds-mapa, body .ds-mapa-tienda iframe { height: 320px !important; }
}

/* ===== Franja de negocios de inicio igual que la del v3 (1 nov 2026, Manuel) =====
   v3: .seccion{padding:72px 0} · h2 clamp(1.7rem,3.4vw,2.6rem), max 20ch, interlineado 1.15, margen 0 0 .5em · p #F3EADF 16/1.7 */
body .ds-banda.ds-banda-prof, body .ds-banda-prof { padding-top: 72px !important; padding-bottom: 72px !important; }
body .ds-banda-prof .elementor-widget-heading h2.elementor-heading-title { font-size: clamp(27.2px, 3.4vw, 41.6px) !important; line-height: 1.15 !important; max-width: 20ch; text-shadow: none !important; }
body .ds-banda-prof .elementor-widget-heading { margin-bottom: 0 !important; }
body .ds-banda-prof .elementor-widget-heading h2.elementor-heading-title { margin: 0 0 .5em !important; }   /* .5em del título, como en el v3 */
body .ds-banda-prof .elementor-widget-text-editor, body .ds-banda-prof .elementor-widget-text-editor p { color: #F3EADF !important; font-size: 16px !important; line-height: 1.7 !important; }
body .ds-banda-prof .elementor-widget-text-editor p { margin: 0 0 1em !important; }

/* ===== Formulario general montado sobre el pie, como en LazyKite (1 nov 2026, Manuel) =====
   La caja del formulario (plantilla 564) baja 100 px sobre el pie (55 en móvil, como LazyKite; margen en formulario-pie.php). El pie solo deja
   ese hueco arriba en las páginas que llevan el formulario (Contacto y Distribución no lo llevan). */
body:has(.elementor-564) .elementor-556 .elementor-element-ec56ba3 { padding-top: 164px !important; }

/* Fondo detrás de la caja del formulario, copiado de LazyKite: arriba, el color del bloque anterior hasta 100 px dentro de la caja; en medio, banda blanca; abajo, transparente donde monta sobre el pie. En móvil, como LazyKite, la caja va sobre blanco. --ds-antes = color del bloque anterior:
   arena en las páginas que acaban en las preguntas arena (inicio, familias y Puntos de venta), blanco en el resto. */
body { --ds-antes: #FFFFFF; }
body:is(.page-id-12, .page-id-435, .page-id-437, .page-id-439, .page-id-335, .page-id-2238) { --ds-antes: #E0CFB4; }   /* páginas que acaban en las preguntas frecuentes (arena) */
body .elementor-564 .elementor-element-0e12b44 { background: linear-gradient(var(--ds-antes) 0, var(--ds-antes) 260px, #FFFFFF 260px, #FFFFFF calc(100% - 100px), transparent calc(100% - 100px)) !important; }
@media (max-width: 1024px) { body .elementor-564 .elementor-element-0e12b44 { background: linear-gradient(var(--ds-antes) 0, var(--ds-antes) 220px, #FFFFFF 220px, #FFFFFF calc(100% - 100px), transparent calc(100% - 100px)) !important; } }
@media (max-width: 767px) { body .elementor-564 .elementor-element-0e12b44 { background: linear-gradient(var(--ds-antes) 0, var(--ds-antes) 67px, #FFFFFF 67px, #FFFFFF calc(100% - 55px), transparent calc(100% - 55px)) !important; }
	body:has(.elementor-564) .elementor-556 .elementor-element-ec56ba3 { padding-top: 35px !important; } }   /* móvil como LazyKite: el texto del pie, ~20 px debajo de la caja */
/* El último bloque de la página, sin relleno abajo cuando le sigue el formulario: así el hueco hasta la caja es siempre el mismo
   (160 / 120 / 84 px, en formulario-pie.php) y no depende de cada página (antes iba de 150 a 300 px). */
body:has(.elementor-564) .elementor:is([data-elementor-type="wp-page"], [data-elementor-type="single-post"]) > :is(.e-con, .elementor-section):last-child,
body:has(.elementor-564) .elementor:is([data-elementor-type="wp-page"], [data-elementor-type="single-post"]) > :is(.e-con, .elementor-section):last-child > .e-con-inner { padding-bottom: 0 !important; margin-bottom: 0 !important; }
body:has(.elementor-564) .site-main { padding-bottom: 0 !important; }
/* …y lo que va al final por dentro de ese bloque (el botón «Más información» de las preguntas llevaba 100 px de margen abajo; los
   relacionados de la ficha, 136 px de relleno; el mapa de las tiendas, su caja): sin relleno ni margen abajo. */
body:has(.elementor-564) .elementor:is([data-elementor-type="wp-page"], [data-elementor-type="single-post"]) > :last-child :is(.e-con, .e-con-inner, .elementor-container, .elementor-column, .elementor-widget-wrap, .elementor-widget, .elementor-widget-container):last-child { padding-bottom: 0 !important; margin-bottom: 0 !important; }

/* Botón de la franja de negocios igual que el del v3 (Manuel, 1 nov 2026: «el botón no está igual»). Medido en el v3: 251 × 57 px,
   Oswald 600 a 17,28 px, 0,02 em entre letras, interlineado 1,7, relleno 12 × 24 + borde transparente de 2 px, esquinas de 6 px, sin sombra,
   verde #94C11C y texto #1C2400; igual en móvil. Es la única excepción al botón único de la web. */
body .elementor .ds-banda-prof .elementor-widget-button .elementor-button, body .elementor .ds-banda-prof .elementor-widget-button .elementor-button:hover, body .elementor .ds-banda-prof .elementor-widget-button .elementor-button:focus {   /* más fuerte que la regla del botón único */
	height: auto !important; min-height: 0 !important; padding: 12px 24px !important; border: 2px solid transparent !important; border-radius: 6px !important;
	font-family: Oswald, "Arial Narrow", sans-serif !important; font-size: 17.28px !important; font-weight: 600 !important; letter-spacing: .02em !important; line-height: 1.7 !important;
	background-color: #94C11C !important; color: #1C2400 !important; box-shadow: none !important; transform: none !important;
}
body .elementor .ds-banda-prof .elementor-widget-button .elementor-button .elementor-button-text { font-size: inherit !important; line-height: inherit !important; letter-spacing: inherit !important; }

/* Botón «Enviar» a todo el ancho del formulario, como en LazyKite (Manuel, 1 nov 2026), en todos los formularios de la web
   (WPForms: formulario general y Contacto; Elementor: Distribución). Sustituye al «botón de ancho normal» del 31 oct. */
body .wpforms-container .wpforms-submit-container { width: 100% !important; }
body .wpforms-container .wpforms-submit-container button.wpforms-submit, body div.wpforms-container-full .wpforms-form button.wpforms-submit,
body .elementor-widget-form .elementor-field-type-submit, body .elementor-widget-form .elementor-field-type-submit .elementor-button { width: 100% !important; max-width: 100% !important; flex-basis: 100% !important; }

/* Inicio, mitades «Para tu Casa» / «Para tu Negocio» (Manuel, 2 nov 2026).
   1) «el texto ocupa toda la imagen»: en ordenador el texto llega más a la izquierda (relleno 40 px en vez de 56) y, desde tableta, ya no se
      corta a 46 caracteres (paginas.css): ocupa una línea menos. En móvil no cambia: ya va a todo el ancho.
   2) «Para tu» a la misma altura: los textos de Casa y Negocio no tienen las mismas líneas (y cambian con el ancho y el idioma), así que las
      dos mitades comparten filas (rejilla con subgrid): «Para tu», título, texto y botón quedan siempre alineados, con el bloque abajo.
      Fila 1 = el hueco de arriba (1fr); filas 2–5 = «Para tu», título, texto y botón. Solo con las mitades una al lado de otra (≥ 768 px).
      (2 nov se probó «Para tu» en la misma línea que el título y Manuel lo quitó: «queda mal».)
   3) «mucho margen debajo del botón»: 32 px abajo (eran 56 en ordenador y 44 en tableta), el texto baja a la parte oscura del degradado.
   4) Zoom suave de la foto al pasar el ratón: la foto se repite en ::after (hereda la de Elementor, así se sigue cambiando desde allí),
      por debajo del velo y del texto, y crece un 6 %. Solo en pantallas con ratón. */
@media (min-width: 768px) {
  body .elementor-12 .ds-mitad-texto p { max-width: none; }
  body .elementor-12 .elementor-element.elementor-element-e6c00d9 { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr repeat(4, auto); gap: 4px 0; min-height: 560px; }
  body .elementor-12 .elementor-element-e6c00d9 > .elementor-element:is(.elementor-element-e6c00d2, .elementor-element-e6c00d8) { display: grid; grid-row: 1 / -1; grid-template-rows: subgrid; width: auto; min-height: 0; --padding-bottom: 32px; isolation: isolate; overflow: hidden; }
  body .elementor-12 .elementor-element-e6c00d9 > .elementor-element > .elementor-element:nth-child(1) { grid-row: 2; }
  body .elementor-12 .elementor-element-e6c00d9 > .elementor-element > .elementor-element:nth-child(2) { grid-row: 3; }
  body .elementor-12 .elementor-element-e6c00d9 > .elementor-element > .elementor-element:nth-child(3) { grid-row: 4; }
  body .elementor-12 .elementor-element-e6c00d9 > .elementor-element > .elementor-element:nth-child(4) { grid-row: 5; }
  body .elementor-12 .elementor-element:is(.elementor-element-e6c00d2, .elementor-element-e6c00d8)::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
    background-image: inherit; background-size: cover; background-position: inherit; background-repeat: no-repeat; transition: transform .8s cubic-bezier(.2, .6, .2, 1); }
}
@media (min-width: 768px) and (hover: hover) {
  body .elementor-12 .elementor-element:is(.elementor-element-e6c00d2, .elementor-element-e6c00d8):hover::after { transform: scale(1.06); }
}
@media (min-width: 1025px) {
  body .elementor-12 .elementor-element.elementor-element-e6c00d9 { min-height: 640px; }
  body .elementor-12 .elementor-element:is(.elementor-element-e6c00d2, .elementor-element-e6c00d8) { --padding-left: 40px; --padding-right: 40px; }
}
/* Móvil (Manuel, 2 nov 2026): «sacar los textos y los botones debajo de cada foto, como en una sección nueva». La foto queda arriba, limpia,
   a todo el ancho y en 3:2 (66,67vw de alto); el texto va debajo sobre blanco con los colores de la web: «Para tu» en marrón como los títulos
   de las tarjetas, título #2E2E2E como los de sección, texto #4E4E4E. El velo de la foto (::before) pasa a ser el fondo blanco del texto, así
   la foto se sigue cambiando desde Elementor. Negocio sin relleno abajo: el hueco hasta «Cómo hacemos el pan» lo pone esa sección. */
@media (max-width: 767px) {
  body .elementor-12 .elementor-element:is(.elementor-element-e6c00d2, .elementor-element-e6c00d8) {
    background-size: 100% auto !important; background-position: center top !important; background-repeat: no-repeat !important;
    --padding-top: calc(66.67vw + 28px); --padding-bottom: 48px; --padding-left: 20px; --padding-right: 20px;
    min-height: 0 !important; --min-height: 0px; justify-content: flex-start !important;
  }
  body .elementor-12 .elementor-element.elementor-element-e6c00d8 { --padding-bottom: 0px; }
  body .elementor-12 .elementor-element:is(.elementor-element-e6c00d2, .elementor-element-e6c00d8)::before {
    background: #FFFFFF !important; opacity: 1 !important; top: 66.67vw !important; bottom: 0 !important; height: auto !important;
  }
  body .elementor-12 :is(.elementor-element-e6c00d2, .elementor-element-e6c00d8) .elementor-heading-title { color: #2E2E2E !important; text-shadow: none !important; }
  body .elementor-12 :is(.elementor-element-e6c00ce, .elementor-element-e6c00d4) .elementor-heading-title { color: #88540F !important; }
  body .elementor-12 :is(.elementor-element-e6c00d2, .elementor-element-e6c00d8) .ds-mitad-texto p { color: #4E4E4E !important; text-shadow: none !important; }
  body .elementor-12 :is(.elementor-element-e6c00d2, .elementor-element-e6c00d8) .ds-mitad-texto strong { color: #2E2E2E !important; }
}


/* Ficha de producto: hueco entre la ficha y «También te puede gustar» (2 nov 2026). La regla de arriba que quita el relleno de abajo al
   último bloque antes del formulario (ronda 5) también dejaba a 0 el de la fila foto + información, y el título quedaba pegado a la foto. */
body .ds-ficha :is(.e-con, .e-con-inner):has(> .elementor-widget-loop-grid) { padding-top: 56px; }
@media (max-width: 767px) { body .ds-ficha :is(.e-con, .e-con-inner):has(> .elementor-widget-loop-grid) { padding-top: 40px; } }

/* Franjas con foto = la de inicio, también de alto (Manuel, 2 nov 2026: «mismo tamaño»). Las de Panadería, Pastelería, Salados y Nosotros no
   llevan la línea de texto de debajo del título y medían 318 / 270 px; todas miden lo que la de inicio (medido: 409 ordenador, 382 tableta,
   379 móvil) con el contenido centrado. */
body .ds-banda.ds-banda-prof, body .ds-banda-prof { min-height: 409px !important; justify-content: center !important; }
body .ds-banda-prof > .e-con-inner { justify-content: center !important; }
@media (max-width: 1024px) { body .ds-banda.ds-banda-prof, body .ds-banda-prof { min-height: 382px !important; } }
@media (max-width: 767px) { body .ds-banda.ds-banda-prof, body .ds-banda-prof { min-height: 379px !important; } }

/* Botón «Descargar el catálogo» debajo de los productos (3 nov 2026; catalogo-boton.php): el botón único de la web con el icono de descarga,
   y debajo una línea pequeña con lo que es y lo que pesa. */
body .ds-catalogo-pdf { border-top: 1px solid #E0CFB4; padding-top: 32px !important; }
body .ds-btn-catalogo .elementor-button-icon svg { width: 1em; height: 1em; fill: currentColor; }
body .ds-catalogo-nota p { margin: 0; font: 400 14px/1.5 Poppins, sans-serif; color: #6E6E6E; }
/* Portada del catálogo encima del botón (3 nov): un poco girada, con sombra; al pasar el ratón se endereza y sube. */
body .ds-catalogo-portada { margin-bottom: 8px; }
body .ds-catalogo-portada img { width: 170px !important; height: auto !important; border-radius: 8px; box-shadow: 0 10px 24px rgba(46,46,46,.3); transform: rotate(-3deg); transition: transform .3s; }
body .ds-catalogo-portada a:hover img { transform: rotate(0deg) translateY(-4px); }
@media (max-width: 767px) { body .ds-catalogo-portada img { width: 150px !important; } }

/* Botón secundario (3 nov 2026, Manuel: «cuando hay dos botones juntos no se supone que son los dos del mismo color»). Ya existía la clase
   ds-btn-borde («Cómo llegar» en las tiendas, «Llamar» en la ventana de encargar), pero la regla del botón único de arriba lo pintaba verde
   igual que el principal. Ahora: mismo tamaño y letra, fondo blanco, borde verde de 2 px y texto verde oscuro; al pasar, fondo verde claro. */
body .elementor .ds-btn.ds-btn-borde .elementor-button, body .elementor a.ds-btn.ds-btn-borde, body a.ds-btn.ds-btn-borde {
  background: #FFFFFF !important; color: #34460A !important; border: 0 !important;
  /* el borde va por dentro (sombra interior) para que mida lo mismo que el principal; y la misma sombra que él (opción C, 3 nov) */
  box-shadow: inset 0 0 0 2px #94C11C, 0 4px 12px rgba(28, 36, 0, .28), 0 1px 3px rgba(0, 0, 0, .18) !important;
}
body .elementor .ds-btn.ds-btn-borde .elementor-button:hover, body .elementor a.ds-btn.ds-btn-borde:hover, body a.ds-btn.ds-btn-borde:hover {
  background: #EEF5DA !important; color: #1C2400 !important;
  box-shadow: inset 0 0 0 2px #94C11C, 0 8px 20px rgba(28, 36, 0, .32), 0 2px 5px rgba(0, 0, 0, .2) !important;
}

/* SIN SUBRAYADOS EN TODA LA WEB (Manuel, 3 nov 2026: «subrayado prohibido»). Ninguna línea bajo el texto: ni enlaces, ni ajustes de Elementor,
   ni la raya del menú al pasar el ratón. Los enlaces dentro del texto se distinguen con negrita y marrón; en el menú, el texto se pone marrón. */
html body *, html body *::before, html body *::after { text-decoration-line: none !important; }
body .site-main .elementor-widget-text-editor a:not(.elementor-button), body .site-main .elementor-widget-icon-list a .elementor-icon-list-text,
body .ds-fila-valor a, body .ds-catalogo-nota a { color: #88540F !important; font-weight: 600; }
body .site-main .elementor-widget-text-editor a:not(.elementor-button):hover, body .ds-fila-valor a:hover { color: #5E3A08 !important; }
body .elementor-nav-menu--main .elementor-item::before, body .elementor-nav-menu--main .elementor-item::after { display: none !important; }
body .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item:hover { color: #88540F !important; }

/* Contacto, tarjetas de tienda (3 nov 2026): icono verde delante de cada dato, como la lista de arriba; cada dato pulsable. */
body .ds-tiendas-contacto .ds-dato { display: flex; align-items: flex-start; gap: 10px; margin-top: 8px; font: 400 15px/1.5 Poppins, sans-serif; color: #4E4E4E; }
body .ds-tiendas-contacto .ds-dato svg { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 3px; fill: #94C11C; }
body .ds-tiendas-contacto h3 + .ds-dato { margin-top: 10px; }

/* Formulario de Distribución en caja blanca, igual que el de Contacto (Manuel, 3 nov 2026: «¿por qué es diferente al de las otras páginas?»).
   Medido en Contacto: fondo blanco, sombra 0 12px 15px 2px negra al 50 %, esquinas de 22 px, 50 px a los lados (20 en móvil). */
body .e-con:has(> .elementor-widget-form.ds-form) { background: #fff !important; box-shadow: rgba(0,0,0,.5) 0 12px 15px 2px !important; border-radius: 22px !important; padding: 44px 50px !important; }
@media (max-width: 767px) { body .e-con:has(> .elementor-widget-form.ds-form) { padding: 28px 20px !important; } }
/* El desplegable «Tipo de negocio» llevaba un marco gris alrededor (la caja que lo envuelve tenía el borde de los campos de paginas.py) */
body .ds-form .elementor-select-wrapper { border: 0 !important; background: none !important; }

/* Palabras que no llevan mayúscula en los subtítulos con Mayúscula En Cada Palabra («Encargos, Pedidos y Dudas»; Manuel, 4 nov 2026) */
body .ds-min { text-transform: none !important; }

/* Nosotros rehecho (4 nov 2026, maqueta aprobada por Manuel): como su web, con columna de lectura, entrada, cita y equipo con fotos cuadradas */
body .nx-sub .elementor-heading-title { margin-top: 2px; }
body .nx-lead { margin-top: 28px !important; max-width: 34em; }
body .nx-lead p, body .nx-lead { font-size: 18px !important; line-height: 1.75 !important; }
body .nx-lead b, body .nx-lead strong, body .nx-cuento-texto strong { color: #2E2E2E; }
body .nx-polaroid img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; background: #fff; padding: 14px 14px 18px; box-shadow: 0 14px 34px rgba(46,46,46,.22); transform: rotate(1.5deg); border-radius: 0 !important; }
body .nx-entrada { margin-bottom: 40px !important; }
body .nx-entrada .elementor-heading-title { text-wrap: balance; }
body .nx-cuento-texto p { margin: 0 0 22px; }
body .nx-cita { margin: 26px 0 48px !important; padding: 28px 0 !important; border-top: 1px solid #E0CFB4; border-bottom: 1px solid #E0CFB4; }
body .nx-equipo .nx-sub { margin-bottom: 56px !important; }
body .nx-persona-foto, body .nx-persona-foto img { width: 100%; }
body .nx-persona-foto img { display: block; aspect-ratio: 1/1; object-fit: cover; object-position: center 25%; border-radius: 14px; box-shadow: 0 10px 24px rgba(46,46,46,.25); }
body .nx-persona-nombre { margin-top: 20px !important; }
body .nx-persona-nombre .elementor-heading-title { text-transform: none !important; letter-spacing: 0 !important; }
body .nx-persona-que, body .nx-persona-que p { font-size: 15px !important; line-height: 1.5 !important; text-align: center; margin: 4px 0 0; }
@media (max-width: 767px) {
  body .nx-lead { margin-top: 20px !important; }
  body .nx-lead p, body .nx-lead { font-size: 16px !important; }
  body .nx-polaroid img { transform: rotate(1deg); padding: 10px 10px 14px; }
  body .nx-entrada { margin-bottom: 28px !important; }
  body .nx-cuento-texto p { font-size: 16px !important; }
  body .nx-cita { margin: 16px 0 36px !important; padding: 20px 0 !important; }
  body .nx-equipo .nx-sub { margin-bottom: 36px !important; }
  body .nx-persona-nombre { margin-top: 12px !important; }
  body .nx-persona-que, body .nx-persona-que p { font-size: 13px !important; }
}

/* Distribución rehecha (4 nov 2026, maqueta aprobada por Manuel): para quién, por qué con fotos, cómo funciona con la zona de reparto y cifras */
body .dx-h .elementor-heading-title { text-transform: none !important; letter-spacing: 0 !important; }
body .dx-sub { margin-bottom: 56px !important; }
body .dx-sub .elementor-heading-title { text-transform: capitalize !important; letter-spacing: 1.5px !important; }
body .dx-tipos > .dx-tipo { width: calc((100% - 64px) / 3) !important; }
body .dx-tipo-foto, body .dx-tipo-foto img { width: 100%; }
body .dx-tipo-foto img { display: block; aspect-ratio: 4/3; object-fit: cover; border-radius: 14px; box-shadow: 0 10px 24px rgba(46,46,46,.22); }
body .dx-tipo-titulo { margin: 22px 0 8px !important; }
body .dx-tipo-texto p, body .dx-razon-texto p, body .dx-paso-texto p { margin: 0; }
body .dx-razones > .dx-razon { width: calc((100% - 48px) / 2) !important; }
body .dx-razon-foto { flex: none !important; width: 200px !important; max-width: 200px !important; }
body .dx-razon-foto img { display: block; width: 200px; height: 200px; object-fit: cover; border-radius: 14px; box-shadow: 0 10px 24px rgba(46,46,46,.22); }
body .dx-razon-txt { flex: 1 1 0 !important; }
body .dx-razon-titulo { margin: 0 0 8px !important; }
body .dx-enlaces { margin-top: 56px !important; text-align: center; }
body .dx-sub.dx-como-sub, body .dx-como .dx-sub { margin-bottom: 56px !important; }
body .dx-pasos { margin-bottom: 64px; }
body .dx-pasos > .dx-paso { width: calc((100% - 84px) / 4) !important; border-top: 3px solid #94C11C; padding-top: 18px !important; }
body .dx-paso-num .elementor-heading-title { line-height: 1 !important; }
body .dx-paso-titulo { margin: 10px 0 6px !important; }
body .dx-reparto-txt { flex: 1.1 1 0 !important; }
body .dx-reparto-mapa { flex: 1 1 0 !important; }
body .dx-reparto-titulo { margin-bottom: 18px !important; }
body .dx-datos { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 12px; }
body .dx-datos li { display: flex; gap: 12px; align-items: flex-start; line-height: 1.5; }
body .dx-datos svg { flex: none; margin-top: 2px; color: #94C11C; }
body .dx-datos strong { color: #fff; }
body .dx-zonas { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 !important; }
body .dx-zonas span { border: 1.5px solid #E0CFB4; color: #fff; border-radius: 999px; padding: 6px 14px; font-size: 14px; font-weight: 600; line-height: 1.4; }
body .dx-mapa svg { width: 100%; height: auto; display: block; }
body .dx-mapa-w { width: 100%; }
body .dx-contador .elementor-counter-number-wrapper { color: #94C11C; }
body .dx-contador .elementor-counter-title { line-height: 1.3 !important; margin-top: 6px; padding: 0 6px; text-wrap: balance; }
body .dx-contacto { display: flex; gap: 18px; align-items: center; margin-top: 36px; background: #fff; border: 1px solid #EFE6D8; border-radius: 16px; padding: 18px 20px; box-shadow: 0 6px 18px rgba(46,46,46,.08); max-width: 440px; }
body .dx-contacto img { width: 84px !important; height: 84px !important; border-radius: 50%; object-fit: cover; object-position: center 20%; flex: none; }
body .dx-contacto p { margin: 0; font-size: 14px; line-height: 1.5; }
body .dx-contacto .dx-contacto-nombre { font: 700 22px/1.15 Oswald, sans-serif; color: #2E2E2E; margin-bottom: 2px; }
body .dx-zonas-fila > .dx-zona { width: calc((100% - 56px) / 3) !important; border: 1px solid #EFE6D8; box-shadow: 0 6px 18px rgba(46,46,46,.06); }
body .dx-zona-titulo { margin-bottom: 14px !important; }
body .dx-tiendas { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
body .dx-tiendas li { display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px dashed #E7DCCB; padding-bottom: 8px; }
body .dx-tiendas li span:last-child { color: #8A8A8A; font-size: 13.5px; text-align: right; }
@media (max-width: 1024px) {
  body .dx-zonas-fila > .dx-zona { width: calc((100% - 28px) / 2) !important; }
  body .dx-razon-foto { width: 140px !important; max-width: 140px !important; }
  body .dx-razon-foto img { width: 140px; height: 140px; }
  body .dx-mapa { max-width: 560px; margin: 0 auto; }
  body .dx-pasos > .dx-paso { width: calc((100% - 28px) / 2) !important; }
  body .dx-reparto-txt, body .dx-reparto-mapa { flex: none !important; width: 100% !important; }
}
@media (max-width: 767px) {
  body .dx-sub, body .dx-como .dx-sub { margin-bottom: 36px !important; }
  body .dx-tipos > .dx-tipo, body .dx-pasos > .dx-paso, body .dx-zonas-fila > .dx-zona { width: 100% !important; }
  body .dx-razones > .dx-razon { width: 100% !important; }
  body .dx-razon-foto { width: 110px !important; max-width: 110px !important; }
  body .dx-razon-foto img { width: 110px; height: 110px; }
  body .dx-enlaces { margin-top: 36px !important; }
  body .dx-pasos { margin-bottom: 40px; }
  body .dx-contador .elementor-counter-number-wrapper { font-size: 48px !important; line-height: 1.2 !important; }
  body .dx-contador .elementor-counter-title { font-size: 16px !important; }
  body .dx-mapa svg g text { font-size: 19px; }
  body .dx-mapa svg > text { font-size: 16px; }
  body .dx-mapa svg text[text-anchor=end] { font-size: 16px; }
}

/* Tiendas de Conil y Elviria (4 nov 2026): dirección y «Contacto y encargos» con un icono delante de cada dato, como en Contacto */
body .ds-datos-tienda { margin: 0 !important; }
body .ds-datos-tienda .ds-dato { display: flex; align-items: flex-start; gap: 10px; margin-top: 8px; line-height: 1.5; }
body .ds-datos-tienda .ds-dato:first-child { margin-top: 0; }
body .ds-datos-tienda .ds-dato svg { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 4px; fill: #94C11C; }
body .ds-datos-tienda a { color: #88540F; font-weight: 600; text-decoration: none; }
/* Insignia de Google en las tiendas (4 nov 2026, opción A): debajo del mapa en ordenador y tableta, debajo de «Qué encontrarás» en móvil */
body .ds-g-w p { margin: 0; }
body .ds-g-mapa { margin-top: 24px !important; }
body .ds-g-insignia { display: inline-flex; align-items: center; gap: 16px; padding: 16px 22px; background: #fff; border: 1px solid #EFE6D8; border-radius: 14px; box-shadow: 0 6px 18px rgba(46,46,46,.08); text-decoration: none !important; color: #2E2E2E; transition: box-shadow .2s, transform .2s; }
body .ds-g-insignia:hover { box-shadow: 0 10px 24px rgba(46,46,46,.14); transform: translateY(-1px); }
body .ds-g-insignia:focus-visible { outline: 2px solid #88540F; outline-offset: 3px; }
body .ds-g-logo { flex: none; width: 34px; height: 34px; }
body .ds-g-txt { display: flex; flex-direction: column; gap: 2px; }
body .ds-g-fila { display: flex; align-items: center; gap: 8px; }
body .ds-g-nota { font: 700 26px/1 Oswald, sans-serif; color: #2E2E2E; }
body .ds-g-estrellas { display: inline-flex; gap: 1px; }
body .ds-g-estrella { position: relative; display: inline-block; width: 20px; height: 20px; }
body .ds-g-estrella svg { display: block; width: 20px; height: 20px; fill: #E0D6C8; }
body .ds-g-estrella > span { position: absolute; inset: 0 auto 0 0; overflow: hidden; }
body .ds-g-estrella > span svg { fill: #FBBC04; }
body .ds-g-num { font: 400 14px/1.4 Poppins, sans-serif; color: #4E4E4E; }
body .ds-g-num b { color: #88540F; font-weight: 700; }
@media (max-width: 767px) { body .ds-g-w { margin-top: 8px !important; } body .ds-g-insignia { padding: 14px 18px; gap: 14px; } }

/* Puntos de venta rehecha (4 nov 2026, maqueta aprobada por Manuel): tiendas en tarjetas con foto, mercados con día y horario, otras tiendas por zona */
body .pv-sub { margin-bottom: 0 !important; }
body .pv-lead { max-width: 640px; margin: 18px auto 0 !important; text-align: center; }
body .pv-lead p, body .pv-pie-foto p, body .pv-etq-w p { margin: 0; }
body .pv-lead p { max-width: 640px; margin: 0 auto; }
body .pv-chips-w { margin: 26px 0 48px !important; }
body .pv-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0; }
body .pv-chips a { display: inline-flex; align-items: center; gap: 8px; background: #F2ECE3; color: #2E2E2E !important; border-radius: 999px; padding: 9px 18px; font: 600 15px/1 Poppins, sans-serif; text-decoration: none; }
body .pv-chips a::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #88540F; }
body .pv-chips a:hover { background: #E0CFB4; }
body .pv-otras .pv-lead, body .pv-mercados .pv-sub, body .pv-otras .pv-sub { margin-bottom: 0 !important; }
body .pv-otras .pv-lead { margin-bottom: 48px !important; }
body .pv-mercados .pv-sub { margin-bottom: 48px !important; }
body .pv-tiendas > .pv-tienda { width: calc((100% - 64px) / 3) !important; border: 1px solid #EFE6D8; border-radius: 16px; overflow: hidden; box-shadow: 0 10px 24px rgba(46,46,46,.10); }
body .pv-tienda-foto, body .pv-tienda-foto img { width: 100%; }
body .pv-tienda-foto img { display: block; aspect-ratio: 4/3; object-fit: cover; border-radius: 0 !important; }
body .pv-tienda-c { flex: 1 1 auto !important; }
body .pv-etq { display: inline-block; font: 600 12.5px/1 Poppins, sans-serif; letter-spacing: .02em; color: #34460A; background: #EEF5DA; border-radius: 999px; padding: 6px 11px; }
body .pv-etq.gris { color: #5C4A2A; background: #F2ECE3; }
body .pv-datos .ds-dato { font-size: 15px; }
body .pv-nota { margin: 12px 0 0 !important; font-size: 14.5px; line-height: 1.55; color: #6E6E6E; }
body .pv-btns { margin-top: auto !important; padding-top: 8px !important; }
body .pv-merc > .pv-merc-foto { flex: 1.05 1 0 !important; }
body .pv-merc > .pv-merc-agenda { flex: 1 1 0 !important; }
body .pv-merc-img, body .pv-merc-img img { width: 100%; }
body .pv-merc-img img { display: block; aspect-ratio: 4/3; object-fit: cover; border-radius: 16px; box-shadow: 0 14px 30px rgba(46,46,46,.22); }
body .pv-pie-foto { margin-top: 10px !important; text-align: center; }
body .pv-pie-foto p { font-size: 14px !important; color: #6E6E6E; }
body .pv-pie-izq { text-align: left; }
body .pv-agenda { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
body .pv-agenda li { display: grid; grid-template-columns: 132px 1fr; gap: 18px; align-items: center; background: #fff; border-radius: 14px; padding: 16px 18px; box-shadow: 0 6px 16px rgba(46,46,46,.06); }
body .pv-dia { font: 700 15px/1.25 Oswald, sans-serif; color: #fff; background: #88540F; border-radius: 10px; padding: 10px 12px; text-align: center; }
body .pv-agenda b { display: block; font: 700 20px/1.2 Oswald, sans-serif; color: #2E2E2E; }
body .pv-agenda span.l { display: block; font-size: 14.5px; line-height: 1.5; margin-top: 2px; }
body .pv-agenda .cafe { display: inline-block; margin-top: 6px; font-size: 13px; font-weight: 600; line-height: 1.4; color: #34460A; background: #EEF5DA; border-radius: 999px; padding: 4px 10px; }
body .pv-galeria { margin-top: 48px !important; }
body .pv-galeria > .pv-fig { width: calc((100% - 48px) / 3) !important; }
body .pv-fig-foto, body .pv-fig-foto img { width: 100%; }
body .pv-fig-foto img { display: block; aspect-ratio: 4/3; object-fit: cover; border-radius: 14px; box-shadow: 0 8px 20px rgba(46,46,46,.16); }
body .pv-fig-foto.pv-arriba img { object-position: center 30%; }
body .pv-zonas > .pv-zona { width: calc((100% - 28px) / 2) !important; border: 1px solid #EFE6D8; border-radius: 16px; padding: 26px 28px !important; box-shadow: 0 6px 18px rgba(46,46,46,.06); }
body .pv-zona-titulo { margin-bottom: 14px !important; }
body .pv-lista { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
body .pv-lista li { display: flex; justify-content: space-between; gap: 16px; border-bottom: 1px dashed #E7DCCB; padding-bottom: 8px; }
body .pv-lista li span:first-child { font-weight: 600; color: #2E2E2E; white-space: nowrap; }
body .pv-lista li span:last-child { text-align: right; }
@media (max-width: 1024px) {
  body .pv-tiendas > .pv-tienda { width: calc((100% - 32px) / 2) !important; }
  body .pv-tiendas { justify-content: center !important; }
  body .pv-merc-img img { aspect-ratio: 16/9; }
  body .pv-merc > .pv-merc-foto, body .pv-merc > .pv-merc-agenda { flex: none !important; width: 100% !important; }
  body .pv-zonas > .pv-zona { width: 100% !important; }
}
@media (max-width: 767px) {
  body .pv-chips-w { margin: 22px 0 32px !important; }
  body .pv-otras .pv-lead { margin-bottom: 32px !important; }
  body .pv-mercados .pv-sub { margin-bottom: 32px !important; }
  body .pv-tiendas > .pv-tienda { width: 100% !important; }
  body .pv-agenda li { grid-template-columns: 96px 1fr; gap: 14px; padding: 14px; }
  body .pv-dia { font-size: 13.5px; padding: 8px; }
  body .pv-agenda b { font-size: 18px; }
  body .pv-galeria { margin-top: 32px !important; }
  body .pv-galeria > .pv-fig { width: calc((100% - 14px) / 2) !important; }
  body .pv-galeria > .pv-fig:last-child { width: 100% !important; }
  body .pv-zonas > .pv-zona { padding: 22px 20px !important; }
  body .pv-lista li { flex-direction: column; gap: 2px; }
  body .pv-lista li span:last-child { text-align: left; }
}

/* DASBROT-BOTONES-FIN */
/* DASBROT-INICIO */

/* Das Brot: catálogo (tarjeta, ficha, filtros, ventana). Va en el CSS de cada plantilla. */
.ds-tarjeta, .ds-tarjeta *{text-decoration:none !important;color:inherit;}
/* Tarjeta como las grandes tiendas (Manuel, 3 nov 2026; medido en Amazon, IKEA, Zara, H&M, Zalando, El Corte Inglés y Apple): foto con la
   etiqueta («Sin gluten»…) en la esquina, y debajo, A LA IZQUIERDA, el nombre (hasta 2 líneas) y justo debajo una línea de descripción cortada
   con «…» (como Amazon y H&M). Sin botón: toda la tarjeta se pulsa. Todas las tarjetas miden lo mismo. Al pasar el ratón el nombre se
   oscurece (no agranda la foto). Antes (2 nov): nombre centrado y etiquetas debajo. */
.ds-tarjeta{position:relative;justify-content:flex-start !important;gap:0 !important;}
.ds-tarjeta > .ds-tarjeta-foto{position:relative !important;margin:0 !important;width:100% !important;}
.ds-tarjeta .ds-tarjeta-foto .elementor-widget-container{width:100%;}
.ds-tarjeta .ds-tarjeta-foto img{display:block;width:100% !important;height:auto !important;aspect-ratio:1/1;object-fit:cover;border-radius:14px;box-shadow:0 6px 16px rgba(46,46,46,.28);}
.ds-tarjeta .ds-tarjeta-info{position:static !important;padding:16px 2px 0 !important;background:none;align-items:stretch !important;text-align:left;gap:4px !important;}
.ds-tarjeta .ds-tarjeta-nombre .elementor-heading-title{color:#88540F !important;margin:0;text-align:left !important;font-size:22px !important;line-height:1.2 !important;text-shadow:none;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s;}   /* sin hueco fijo: la descripción va justo debajo, como en IKEA y Amazon */
.ds-tarjeta:hover .ds-tarjeta-nombre .elementor-heading-title{color:#5E3A08 !important;}
/* Al pasar el ratón (3 nov, lo propuesto): la foto se aclara un poco y sube 4 px con algo más de sombra; no se agranda */
.ds-tarjeta .ds-tarjeta-foto img{transition:filter .25s ease, transform .25s ease, box-shadow .25s ease;}
@media (hover:hover){.ds-tarjeta:hover .ds-tarjeta-foto img{filter:brightness(1.08);transform:translateY(-4px);box-shadow:0 12px 26px rgba(46,46,46,.32);}}
.ds-tarjeta .ds-tarjeta-texto{display:block !important;}
.elementor-loop-container > .e-loop-item, .ds-tarjeta, .ds-tarjeta-info, .ds-tarjeta .ds-tarjeta-texto, .ds-tarjeta .ds-tarjeta-texto .elementor-widget-container{min-width:0 !important;max-width:100%;}   /* si no, la línea sin cortar ensancha la casilla */
.ds-tarjeta .ds-tarjeta-texto, .ds-tarjeta .ds-tarjeta-texto *{color:#6E6E6E !important;text-shadow:none !important;}
.ds-tarjeta .ds-tarjeta-texto p, .ds-tarjeta .ds-tarjeta-texto .elementor-widget-container{margin:0;font:400 15px/1.5 Poppins,sans-serif !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1.5em;}
.ds-tarjeta .ds-etqs{position:absolute !important;top:12px;left:12px;right:12px;z-index:3;margin:0 !important;}
.ds-tarjeta .ds-etqs .elementor-icon-list-items, .ds-tarjeta .ds-etqs .elementor-post-info__terms-list, .ds-tarjeta .ds-etqs .elementor-icon-list-text{justify-content:flex-start !important;}
.ds-tarjeta .ds-etqs .elementor-post-info__terms-list-item{background:#fff !important;border-color:#fff !important;box-shadow:0 2px 6px rgba(0,0,0,.18);padding:4px 11px 4px 8px;}
/* Ordenador y tableta: si no caben en una fila, las que sobran se ocultan y sale «+N», como en el móvil (Manuel, 4 nov 2026). Lo decide el plugin del catálogo (1.7.4) */
.ds-tarjeta .ds-etqs .ds-etq-oculta{position:absolute !important;width:1px;height:1px;padding:0 !important;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0 !important;box-shadow:none;}
.ds-tarjeta .ds-etqs.ds-recortada .ds-mas{display:inline-flex !important;padding:4px 10px !important;}
@media (max-width:767px){
  .ds-tarjeta .ds-tarjeta-info{padding-top:10px !important;gap:2px !important;}
  .ds-tarjeta .ds-tarjeta-nombre .elementor-heading-title{font-size:17px !important;}
  .ds-tarjeta .ds-tarjeta-texto p, .ds-tarjeta .ds-tarjeta-texto .elementor-widget-container{font-size:13px !important;}
  .ds-tarjeta .ds-etqs{top:8px;left:8px;right:8px;}
  .ds-tarjeta .ds-etqs .elementor-post-info__terms-list-item{font-size:11px !important;padding:2px 8px 2px 6px !important;gap:4px !important;}
  .ds-tarjeta .ds-etqs .ds-etq-ico{width:13px;height:13px;}
  /* Móvil: solo la etiqueta más importante y «+N» (Manuel, 3 nov 2026: opción M3). Las demás, ocultas a la vista pero no al lector de pantalla */
  .ds-tarjeta .ds-etqs .elementor-post-info__terms-list-item:nth-child(n+2):not(.ds-mas){position:absolute !important;width:1px;height:1px;padding:0 !important;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0 !important;box-shadow:none;}
  .ds-tarjeta .ds-etqs .ds-mas{display:inline-flex !important;padding:2px 8px !important;}
}
.ds-etqs .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:6px;}
.ds-etqs .elementor-post-info__terms-list{display:flex !important;flex-wrap:wrap;gap:6px;font-size:0;}
.ds-etqs .elementor-icon-list-text{display:flex;flex-wrap:wrap;gap:6px;}
.ds-etqs .elementor-post-info__terms-list-item{display:inline-flex !important;align-items:center;gap:5px;white-space:nowrap;font:700 12.5px/1.6 Poppins,sans-serif;color:#34460A;background:#EEF5DA;border:1px solid #C9DE93;border-radius:999px;padding:2px 10px;}
/* Etiqueta = icono + texto (Manuel, 3 nov 2026: opción T3). El icono lo pone el plugin (1.7.2); «sin levadura» no tiene icono estándar */
.ds-etqs .ds-etq-ico{flex:none;color:#5E7D0F;}
.ds-etqs .ds-mas{display:none !important;}
.ds-etqs .elementor-icon-list-item::after{display:none !important;}
.ds-etqs-ficha .elementor-post-info__terms-list-item{font-size:14px;padding:5px 14px;}
.ds-ficha-foto{width:100%;aspect-ratio:4/5;}
.ds-ficha-foto .elementor-widget-container, .ds-ficha-foto a{display:block;width:100%;height:100%;}
.ds-ficha-foto img{width:100%;aspect-ratio:4/5;height:100% !important;object-fit:cover;border-radius:18px;box-shadow:0 10px 26px rgba(46,46,46,.2);}
.ds-migas{font:400 15px Poppins,sans-serif;color:#6E6E6E;}
.ds-migas a{color:#88540F;font-weight:600;text-decoration:none;}
.ds-descripcion p{margin:0;}
.ds-datos{border-top:1px solid #E0CFB4;border-bottom:1px solid #E0CFB4;padding:6px 0;}
.ds-fila{padding:12px 0;}
.ds-fila + .ds-fila{border-top:1px dashed #E0CFB4;}
.ds-fila-etiqueta{flex:0 0 150px;}
.ds-campo p, .ds-fila-valor p{margin:0;}
.ds-nota p, p.ds-nota{margin:0;color:#6E6E6E;}
p.ds-nota{font:400 13px/1.5 Poppins,sans-serif;}
.ds-fila-valor a, .ds-enc-pie a{color:#88540F;}
.elementor .ds-btn .elementor-button, .elementor a.ds-btn, a.ds-btn{display:inline-flex;align-items:center;background:#94C11C !important;color:#1C2400 !important;border:2px solid #94C11C !important;border-radius:6px !important;padding:12px 24px !important;font:600 18px Oswald,sans-serif !important;text-decoration:none !important;}
.elementor .ds-btn-borde .elementor-button, .elementor a.ds-btn-borde, a.ds-btn-borde{background:transparent !important;color:#2E2E2E !important;border-color:#2E2E2E !important;}
.ds-btn .elementor-button:hover, a.ds-btn:hover{filter:brightness(1.07);}
/* Filtro como IKEA (Manuel, 3 nov 2026: opción F2): pastillas grises sin borde, icono y número de productos; la elegida en oscuro.
   Baymard: que se vea qué filtro está puesto y cuántos productos quedan. Icono y número los pone el plugin (1.7.2). */
.elementor .ds-filtro .e-filter{gap:10px !important;flex-wrap:wrap;justify-content:flex-start !important;}
.elementor .ds-filtro .e-filter .e-filter-item{display:inline-flex !important;align-items:center;gap:8px;font:500 15px/1.3 Poppins,sans-serif !important;color:#2E2E2E !important;background:#F2ECE3 !important;border:0 !important;border-radius:999px !important;padding:10px 18px !important;transition:background-color .15s;}
.elementor .ds-filtro .e-filter .e-filter-item:hover{background:#E8DFD2 !important;}
.elementor .ds-filtro .e-filter .e-filter-item[aria-pressed="true"]{background:#2E2E2E !important;color:#fff !important;}
.elementor .ds-filtro .e-filter .e-filter-item:focus-visible{outline:3px solid #88540F;outline-offset:2px;}
.elementor .ds-filtro .e-filter .e-filter-item .ds-etq-ico{flex:none;}
.elementor .ds-filtro .ds-cuenta{opacity:.6;font-weight:400;}
@media (max-width:767px){.elementor .ds-filtro .e-filter{gap:8px !important;} .elementor .ds-filtro .e-filter .e-filter-item{font-size:14px !important;padding:8px 14px !important;gap:6px;}}
.ds-rejilla .elementor-loop-container{gap:48px 40px;}
@media (max-width:767px){.ds-rejilla .elementor-loop-container{gap:26px 14px;} .ds-fila-etiqueta{flex-basis:auto;}}
.ds-enc-fila{padding:14px 0;border-bottom:1px solid #E0CFB4;}
.ds-enc-fila p{margin:0;}
.ds-pend{display:inline-block;background:#FFF7C2;color:#5A4600;border:1.5px dashed #C9A400;border-radius:6px;padding:2px 8px;font-size:13px;}
.ds-enc-pie{margin-top:12px;}

/* DASBROT-FIN */





/* DASBROT-PAGINAS-INICIO */

/* Das Brot: páginas (portadas, sin gluten, distribución, tiendas). Va en el kit. */
.ds-portada .elementor-heading-title{max-width:16ch;text-wrap:balance;}
.ds-portada-sub p{max-width:56ch;margin:0;}
.ds-migas-portada a{color:#fff;font-weight:600;text-decoration:none;}
.ds-migas-portada p{margin:0;}
.ds-puertas{border-top:1px solid rgba(255,255,255,.3);}
.ds-puerta{padding:24px 24px 6px 0;}
.ds-puerta + .ds-puerta{border-left:1px solid rgba(255,255,255,.3);padding-left:24px;}
.ds-puerta p{margin:0;max-width:44ch;}
.ds-cab-familia-texto p{max-width:60ch;margin:0 auto;text-shadow:0 1px 8px rgba(0,0,0,.55);}
.ds-persona-foto{aspect-ratio:1/1;border-radius:18px;overflow:hidden;box-shadow:0 8px 20px rgba(46,46,46,.2);}
.ds-persona-nombre .elementor-heading-title{margin-top:8px;}
.ds-persona p{margin:0;}
.ds-foto-redonda{border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(46,46,46,.2);}
.ds-datos-pan{display:grid;grid-template-columns:150px 1fr;margin:14px 0 0;padding:0;border:0;border-top:1px solid #E0CFB4 !important;border-bottom:0 !important;}
.ds-datos-pan dt, .ds-datos-pan dd{margin:0;padding:14px 0;border-bottom:1px solid #E0CFB4;}
.ds-datos-pan dt{font:600 18px Oswald,sans-serif;color:#2E2E2E;}
@media (max-width:767px){.ds-datos-pan{grid-template-columns:1fr;}.ds-datos-pan dt{border-bottom:0;padding-bottom:0;}.ds-datos-pan dd{padding-top:4px;}}
.ds-polaroid img{background:#fff;padding:14px;border-radius:6px;box-shadow:0 14px 34px rgba(46,46,46,.22);transform:rotate(-2deg);}
.ds-pie-foto p{margin:10px 0 0;color:#6b6b6b;}
.ds-mitad-texto p{max-width:46ch;margin:0;text-shadow:0 1px 6px rgba(0,0,0,.5);}
.ds-mitad-texto strong{color:#fff;}
.ds-portada-inicio .ds-puertas{width:100%;max-width:920px;}
.ds-portada-inicio .ds-puerta{align-items:center;text-align:center;padding:24px 24px 6px;}
.ds-portada-inicio .ds-puerta p{margin:0 auto;}
@media (max-width:767px){.ds-puerta + .ds-puerta{border-left:0;border-top:1px solid rgba(255,255,255,.3);padding-left:0;}}
@media (max-width:767px){.ds-portada-inicio .ds-puerta{padding:20px 0 4px;}}
.elementor .ds-btn-claro .elementor-button{background:#fff !important;border-color:#fff !important;color:#2E2E2E !important;}
.ds-aviso{background:#FFF4E5;border-left:5px solid #88540F;border-radius:8px;padding:16px 20px;}
.ds-aviso p{margin:0;}
.ds-faq details{border-bottom:1px solid #E0CFB4;padding:16px 0;}
.ds-faq summary{cursor:pointer;font:600 19px Oswald,sans-serif;color:#2E2E2E;list-style:none;display:flex;justify-content:space-between;gap:16px;}
.ds-faq summary::after{content:"+";font-size:24px;line-height:1;}
.ds-faq details[open] summary::after{content:"–";}
.ds-faq details p{margin:10px 0 0;}
.ds-redondo{border-radius:14px;}
.ds-redondo p{margin:0;}
.ds-razones p, .ds-paso p{margin:0;}
.ds-paso{border-top:3px solid #94C11C;padding-top:14px;}
.ds-zonas{display:flex;flex-wrap:wrap;gap:10px;}
.ds-zonas span{border:1.5px solid rgba(255,255,255,.5);border-radius:999px;padding:7px 16px;font-weight:600;}
.ds-form .elementor-field-group .elementor-field{border-radius:10px;border:1.5px solid #CFC4B4;background:#fff;}
.ds-form .elementor-button{background:#94C11C !important;color:#1C2400 !important;border-radius:6px !important;font:600 18px Oswald,sans-serif !important;}
.ds-horario{width:100%;border-collapse:collapse;}
.ds-horario td{padding:6px 0;border-bottom:1px dashed #E0CFB4;}
.ds-horario td:last-child{text-align:right;font-variant-numeric:tabular-nums;}
.ds-nota-p{margin:6px 0 0;font-size:14px;color:#6E6E6E;}
.ds-mapa iframe{border-radius:14px;}
.ds-mini{background:#fff;border:1px solid #E0CFB4;border-radius:14px;padding:22px;text-decoration:none !important;}
.ds-encontrar .ds-mini{background:#F7F1E8;border-color:#F7F1E8;}
@media (min-width:768px){.ds-encontrar > .ds-mini{flex:1 1 0 !important;width:auto !important;}}   /* las tres tarjetas, a lo ancho de la franja oscura de debajo */
.ds-mini:hover{border-color:#88540F;}
.ds-mini p{margin:0;}
.ds-mini-gris{background:#F7F1E8;}
.ds-mas-sitios{border-radius:14px;}
.ds-fam-tarjeta{text-decoration:none !important;color:inherit;}
.ds-fam-foto, .ds-fam-foto .elementor-widget-container{width:100%;}
.ds-fam-foto img{width:100% !important;aspect-ratio:1/1;object-fit:cover;border-radius:14px;box-shadow:0 6px 16px rgba(46,46,46,.28);}
.ds-fam-tarjeta-texto p{margin:0 auto;max-width:30ch;}
@media (max-width:767px){.ds-fam-foto img{max-width:340px;margin:0 auto;display:block;}}
.ds-texto-estrecho{max-width:760px !important;width:100% !important;align-self:center !important;margin:0 auto !important;}
.ds-texto-estrecho p{margin:0 0 1.1em;}
.ds-sello{border-radius:18px;box-shadow:0 10px 26px rgba(46,46,46,.14);}
.ds-sello-img img{height:250px !important;width:auto !important;max-width:100%;object-fit:contain;}
.ds-sello p{margin:0;color:#6b6b6b;}
@media (max-width:767px){.ds-sellos-fila{flex-direction:row !important;flex-wrap:nowrap !important;}.ds-sello-img img{height:96px !important;}.ds-sello p{font-size:12.5px;}}
.ds-mas-sitios p{margin:0;}
.ds-mas-sitios strong{font:600 20px/1.3 Oswald,sans-serif;color:#fff;}
.ds-subtitulo-corto .elementor-heading-title{max-width:900px;margin:0 auto;}
.ds-presentacion-texto p{max-width:760px;margin:0 auto;}
.ds-mas{color:#88540F;font-weight:600;}
.ds-zona{list-style:none;margin:0;padding:0;}
.ds-zona li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #E0CFB4;}
.ds-zona li span:first-child{font-weight:600;color:#2E2E2E;}
.ds-zona li span:last-child{text-align:right;}

/* DASBROT-PAGINAS-FIN *//* End custom CSS */