.elementor-kit-2246{--e-global-color-primary:#2E2E2E;--e-global-color-secondary:#262626;--e-global-color-text:#404040;--e-global-color-accent:#555555;--e-global-color-m_acc:#2E2E2E;--e-global-color-m_acc_ink:#1A1A1A;--e-global-color-m_ink:#262626;--e-global-color-m_ink2:#1A1A1A;--e-global-color-m_text:#404040;--e-global-color-m_text2:#4A4A4A;--e-global-color-m_muted:#616161;--e-global-color-m_deco:#8C8C8C;--e-global-color-m_line:#E2E2E2;--e-global-color-m_alt:#EEEEEE;--e-global-color-m_bg:#F7F7F7;--e-global-color-m_soft:#EDEDED;--e-global-color-m_white:#FFFFFF;--e-global-color-m_footer:#EAEAEA;--e-global-color-m_dark:#262626;--e-global-color-m_dark2:#333333;--e-global-color-m_ondark:#D6D6D6;--e-global-color-m_wa:#555555;--e-global-color-m_wa_hover:#3D3D3D;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-size:46px;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.08em;--e-global-typography-primary-letter-spacing:-0.9px;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-secondary-letter-spacing:-0.2px;--e-global-typography-text-font-family:"Atkinson Hyperlegible";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Archivo";--e-global-typography-accent-font-size:18px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:1.15em;--e-global-typography-m_hero-font-family:"Archivo";--e-global-typography-m_hero-font-size:66px;--e-global-typography-m_hero-font-weight:800;--e-global-typography-m_hero-line-height:1.02em;--e-global-typography-m_hero-letter-spacing:-2px;--e-global-typography-m_h1-font-family:"Archivo";--e-global-typography-m_h1-font-size:58px;--e-global-typography-m_h1-font-weight:800;--e-global-typography-m_h1-line-height:1.04em;--e-global-typography-m_h1-letter-spacing:-1.7px;--e-global-typography-m_h2xl-font-family:"Archivo";--e-global-typography-m_h2xl-font-size:56px;--e-global-typography-m_h2xl-font-weight:800;--e-global-typography-m_h2xl-line-height:1.04em;--e-global-typography-m_h2xl-letter-spacing:-1.6px;--e-global-typography-m_h2-font-family:"Archivo";--e-global-typography-m_h2-font-size:46px;--e-global-typography-m_h2-font-weight:800;--e-global-typography-m_h2-line-height:1.08em;--e-global-typography-m_h2-letter-spacing:-0.9px;--e-global-typography-m_h2sm-font-family:"Archivo";--e-global-typography-m_h2sm-font-size:34px;--e-global-typography-m_h2sm-font-weight:800;--e-global-typography-m_h2sm-line-height:1.12em;--e-global-typography-m_h2sm-letter-spacing:-0.7px;--e-global-typography-m_h3-font-family:"Archivo";--e-global-typography-m_h3-font-size:22px;--e-global-typography-m_h3-font-weight:700;--e-global-typography-m_h3-line-height:1.2em;--e-global-typography-m_h3-letter-spacing:-0.2px;--e-global-typography-m_stat-font-family:"Archivo";--e-global-typography-m_stat-font-size:34px;--e-global-typography-m_stat-font-weight:800;--e-global-typography-m_stat-line-height:1.15em;--e-global-typography-m_stat-letter-spacing:-0.7px;--e-global-typography-m_phone-font-family:"Archivo";--e-global-typography-m_phone-font-size:34px;--e-global-typography-m_phone-font-weight:800;--e-global-typography-m_phone-line-height:1.2em;--e-global-typography-m_phone-letter-spacing:-0.3px;--e-global-typography-m_step-font-family:"Archivo";--e-global-typography-m_step-font-size:44px;--e-global-typography-m_step-font-weight:800;--e-global-typography-m_step-line-height:1em;--e-global-typography-m_step-letter-spacing:0px;--e-global-typography-m_eyebrow-font-family:"Atkinson Hyperlegible";--e-global-typography-m_eyebrow-font-size:14px;--e-global-typography-m_eyebrow-font-weight:700;--e-global-typography-m_eyebrow-text-transform:uppercase;--e-global-typography-m_eyebrow-line-height:1.3em;--e-global-typography-m_eyebrow-letter-spacing:1.4px;--e-global-typography-m_lead-font-family:"Atkinson Hyperlegible";--e-global-typography-m_lead-font-size:20px;--e-global-typography-m_lead-font-weight:400;--e-global-typography-m_lead-line-height:1.55em;--e-global-typography-m_sub-font-family:"Atkinson Hyperlegible";--e-global-typography-m_sub-font-size:19px;--e-global-typography-m_sub-font-weight:400;--e-global-typography-m_sub-line-height:1.55em;--e-global-typography-m_body-font-family:"Atkinson Hyperlegible";--e-global-typography-m_body-font-size:17px;--e-global-typography-m_body-font-weight:400;--e-global-typography-m_body-line-height:1.5em;--e-global-typography-m_body18-font-family:"Atkinson Hyperlegible";--e-global-typography-m_body18-font-size:18px;--e-global-typography-m_body18-font-weight:400;--e-global-typography-m_body18-line-height:1.6em;--e-global-typography-m_small-font-family:"Atkinson Hyperlegible";--e-global-typography-m_small-font-size:15px;--e-global-typography-m_small-font-weight:400;--e-global-typography-m_small-line-height:1.45em;--e-global-typography-m_btn-font-family:"Archivo";--e-global-typography-m_btn-font-size:18px;--e-global-typography-m_btn-font-weight:700;--e-global-typography-m_btn-line-height:1.15em;--e-global-typography-m_nav-font-family:"Atkinson Hyperlegible";--e-global-typography-m_nav-font-size:15px;--e-global-typography-m_nav-font-weight:700;--e-global-typography-m_nav-line-height:1.2em;background-color:#F7F7F7;color:#404040;font-family:"Atkinson Hyperlegible", Sans-serif;font-size:17px;}.elementor-kit-2246 button,.elementor-kit-2246 input[type="button"],.elementor-kit-2246 input[type="submit"],.elementor-kit-2246 .elementor-button{background-color:#DD2828;color:#FFFFFF;}.elementor-kit-2246 e-page-transition{background-color:#FFBC7D;}.elementor-kit-2246 a{color:#1A1A1A;}.elementor-kit-2246 a:hover{color:#262626;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.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{padding-right:0px;padding-left:0px;}@media(max-width:1399px){.elementor-kit-2246{--e-global-typography-primary-font-size:38px;--e-global-typography-secondary-font-size:21px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:18px;--e-global-typography-m_hero-font-size:52px;--e-global-typography-m_h1-font-size:46px;--e-global-typography-m_h2xl-font-size:44px;--e-global-typography-m_h2-font-size:38px;--e-global-typography-m_h2sm-font-size:30px;--e-global-typography-m_h3-font-size:21px;--e-global-typography-m_stat-font-size:30px;--e-global-typography-m_phone-font-size:30px;--e-global-typography-m_step-font-size:44px;--e-global-typography-m_eyebrow-font-size:14px;--e-global-typography-m_lead-font-size:19px;--e-global-typography-m_sub-font-size:18px;--e-global-typography-m_body-font-size:17px;--e-global-typography-m_body18-font-size:18px;--e-global-typography-m_small-font-size:15px;--e-global-typography-m_btn-font-size:18px;--e-global-typography-m_nav-font-size:22px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:859px){.elementor-kit-2246{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:20px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:17px;--e-global-typography-m_hero-font-size:38px;--e-global-typography-m_h1-font-size:36px;--e-global-typography-m_h2xl-font-size:34px;--e-global-typography-m_h2-font-size:30px;--e-global-typography-m_h2sm-font-size:26px;--e-global-typography-m_h3-font-size:20px;--e-global-typography-m_stat-font-size:26px;--e-global-typography-m_phone-font-size:26px;--e-global-typography-m_step-font-size:40px;--e-global-typography-m_eyebrow-font-size:13px;--e-global-typography-m_lead-font-size:18px;--e-global-typography-m_sub-font-size:17px;--e-global-typography-m_body-font-size:17px;--e-global-typography-m_body18-font-size:17px;--e-global-typography-m_small-font-size:14px;--e-global-typography-m_btn-font-size:17px;--e-global-typography-m_nav-font-size:22px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Munné 2026 · detalles del diseño (Claude Design) que no cubren los controles de Elementor.
   Colores y tipografías: Ajustes del sitio › Colores / Tipografía globales (ids m_*). */

html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { -webkit-font-smoothing: antialiased; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Iconos Lucide (SVG de trazo) */
svg[stroke="currentColor"] { fill: none !important; stroke: currentColor !important; }
.elementor-button .elementor-button-icon svg { width: 20px; height: 20px; }
.elementor-button-content-wrapper { align-items: center; }

/* ---------- Rejillas y columnas ---------- */
.m-grid > .e-con, .m-grid > .elementor-widget { flex: 0 0 auto; }
.m-g2 > * { width: calc((100% - var(--mg, 20px)) / 2); }
.m-g3 > * { width: calc((100% - 2 * var(--mg, 20px)) / 3); }
.m-g4 > * { width: calc((100% - 3 * var(--mg, 20px)) / 4); }
.m-split > * { width: calc((100% - var(--mg, 64px)) / 2); }
@media (max-width: 1399px) {
	.m-g3 > *, .m-g4 > * { width: calc((100% - var(--mg, 20px)) / 2); }
}
@media (max-width: 859px) {
	.m-g2 > *, .m-g3 > *, .m-g4 > *, .m-split > * { width: 100%; }
	.m-g4.m-g4-2m > * { width: calc((100% - var(--mg, 20px)) / 2); }
	.m-split--rev > *:first-child { order: 2; }
}

/* ---------- Piezas ---------- */
.m-eyebrow .elementor-heading-title { margin-bottom: 14px; }
.m-tile .elementor-icon { width: 56px; height: 56px; border-radius: 14px; background: #EDEDED; color: #1A1A1A; display: flex; align-items: center; justify-content: center; }
.m-tile--lg .elementor-icon { width: 64px; height: 64px; border-radius: 16px; }
.m-tile--sm .elementor-icon { width: 48px; height: 48px; border-radius: 12px; }
.m-tile--round .elementor-icon { width: 44px; height: 44px; border-radius: 50%; }
.m-tile--white .elementor-icon { background: #fff; color: #262626; }
.m-ring .elementor-icon { width: 48px; height: 48px; border-radius: 50%; border: 1.5px solid #D4D4D4; color: #262626; display: flex; align-items: center; justify-content: center; }
.m-pill { align-self: flex-start; }
.m-pill .elementor-icon-list-items { display: inline-flex !important; padding: 7px 14px 7px 10px !important; border-radius: 999px; background: #fff !important; border: 1px solid #E2E2E2 !important; }
.m-pill .elementor-icon-list-icon { color: #2E2E2E; }
.m-pill .elementor-icon-list-icon svg { width: 18px; height: 18px; }
.m-btn .elementor-button { min-height: 58px; padding: 0 26px; display: inline-flex; align-items: center; justify-content: center; line-height: 1.15; }
.m-btn--md .elementor-button, .m-btn.m-md .elementor-button { min-height: 56px; }
.m-btn--outline .elementor-button { padding: 0 24px; }
.m-grow { flex: 1 1 240px !important; }
.m-grow .elementor-button { width: 100%; }
.m-btn--block .elementor-button { width: 100%; }
.m-more .elementor-heading-title { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; }
.m-chip .elementor-button { min-height: 38px; padding: 0 14px; border-radius: 999px !important; background: #fff !important; border: 1px solid #DADADA !important; color: #262626 !important; font-family: 'Atkinson Hyperlegible', sans-serif !important; font-weight: 400 !important; font-size: 16px !important; }
.m-chip .elementor-button:hover { border-color: #262626 !important; }
.m-chip--lg .elementor-button { min-height: 40px; }
.m-chip--static .elementor-button { cursor: default; }
.m-chip--static .elementor-button:hover { border-color: #DADADA !important; }

/* Imágenes con altura fija y esquinas del diseño */
.m-img img { width: 100%; object-fit: cover; display: block; }
.m-img--hero img { height: clamp(300px, 46vw, 600px); border-radius: 18px; }
.m-img--page img { height: clamp(280px, 40vw, 520px); border-radius: 18px; }
.m-img--srv img { height: clamp(300px, 44vw, 580px); border-radius: 18px; }
.m-img--mat img { height: clamp(280px, 36vw, 460px); border-radius: 18px; }
.m-img--wide img { height: clamp(260px, 42vw, 560px); border-radius: 18px; }
.m-img--43 img { aspect-ratio: 4 / 3; height: auto; border-radius: 14px; }
.m-img--43r img { aspect-ratio: 4 / 3; height: auto; border-radius: 18px; }
.m-img--sq img { aspect-ratio: 1; height: auto; border-radius: 14px; }
.m-img--prod img { height: 220px; border-radius: 0; }
.m-imgwrap { position: relative; }
.m-tag { position: absolute !important; top: 16px; left: 16px; width: auto !important; z-index: 2; pointer-events: none; }
.m-tag--bl { top: auto; bottom: 16px; }
.m-tag .elementor-heading-title { padding: 8px 12px; border-radius: 8px; background: #fff; font-size: 14px; font-weight: 700; color: #262626; }
.elementor-widget-theme-post-featured-image.m-img--page img { height: clamp(280px, 40vw, 520px); border-radius: 18px; object-fit: cover; width: 100%; }

/* Tarjetas */
.m-card { background: #F7F7F7; border: 1px solid #E2E2E2; border-radius: 16px; padding: 28px !important; transition: border-color .2s, transform .2s; }
.m-card:hover { border-color: #2E2E2E; transform: translateY(-2px); }
.m-card .elementor-widget-text-editor { flex: 1 1 auto; }
.m-card--white { background: #fff; }
.m-card--plain { background: #fff; border-color: transparent; }
.m-card--plain:hover { transform: none; border-color: transparent; }
.m-card--line { background: #F7F7F7; }
.m-card--line:hover, .m-card--static:hover { transform: none; border-color: #E2E2E2; }
.m-linkrow { display: flex; background: #F7F7F7; border: 1px solid #E2E2E2; border-radius: 14px; padding: 20px !important; }
.m-linkrow:hover { border-color: #262626; }
.m-linkrow--white { background: #fff; }
.m-linkrow .m-grow-1 { flex: 1 1 auto !important; }
.m-panel { background: #fff; border: 1px solid #E2E2E2; border-radius: 18px; padding: clamp(22px, 3vw, 40px) !important; }
.m-mini { background: #fff; border: 1px solid #E2E2E2; border-radius: 14px; padding: 20px !important; }
.m-prod { background: #fff; border: 1px solid #E2E2E2; border-radius: 16px; overflow: hidden; }
.m-prod__body { padding: 24px !important; flex: 1 1 auto; }
.m-step { border-top: 3px solid #262626; padding-top: 24px !important; }
.m-step--first { border-top-color: #2E2E2E; }
.m-aid { background: #333; border: 1px solid #474747; border-radius: 18px; padding: clamp(28px, 3vw, 40px) !important; }
.m-trust { border-top: 1px solid #E2E2E2; border-bottom: 1px solid #E2E2E2; }
.m-trust .m-stat-item { padding: 28px 24px 28px 0 !important; }
.m-bt { border-top: 1px solid #E2E2E2; }
.m-facts { border-top: 1px solid #E2E2E2; padding-top: 24px !important; margin-top: 36px; }
.m-facts > * { flex: 1 1 150px !important; }

/* Barras de ahorro */
.m-bar-row .elementor-progress-wrapper { border-radius: 7px; height: 14px; }
.m-bar-row .elementor-progress-bar { border-radius: 7px; height: 14px; line-height: 14px; }

/* FAQ (Toggle) */
.m-faq .elementor-toggle-item { border-bottom: 1px solid #E2E2E2; }
.m-faq .elementor-toggle { border-top: 1px solid #E2E2E2; }
.m-faq .elementor-tab-title { padding: 22px 0 !important; border: 0 !important; display: flex; justify-content: space-between; align-items: center; }
.m-faq .elementor-tab-title .elementor-toggle-icon { order: 2; }
.m-faq .elementor-tab-content { padding: 0 0 24px !important; border: 0 !important; max-width: 680px; }

/* Mapa */
.m-map { position: relative; border-radius: 18px; overflow: hidden; border: 1px solid #DADADA; }
.m-map iframe { filter: grayscale(1) contrast(1.05) brightness(1.03); display: block; }
/* Radio de servicio: el mapa va bloqueado (no se puede arrastrar ni hacer zoom) para que el círculo
   siga siempre centrado en la tienda. 170 px = 40 km de radio con zoom 8 a la latitud de Valencia
   (156543 * cos(39,47°) / 2^8 = 472 m por píxel). Si se cambia el zoom hay que recalcular el diámetro. */
.m-map--ring iframe { pointer-events: none; }
.m-map--ring::after { content: ''; position: absolute; left: 50%; top: 50%; width: 170px; max-width: 88%; aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; border: 2px dashed #2E2E2E; background: rgba(46, 46, 46, .1); pointer-events: none; }

/* ---------- Contenido de cada URL (widget Contenido de la entrada) ---------- */
.m-body .elementor-widget-container { display: grid; gap: 16px; }
.m-body p, .m-body ul, .m-body ol { margin: 0; }
.m-body h2, .m-body h3 { margin: 12px 0 0; font-family: 'Archivo', sans-serif; font-weight: 700; font-size: 22px; line-height: 1.25; color: #262626; text-wrap: balance; }
.m-body h2:first-child, .m-body h3:first-child { margin-top: 0; }
.m-body ul { list-style: none; padding: 0; display: grid; gap: 12px; font-size: 17px; }
.m-body ul li { position: relative; padding-left: 32px; }
.m-body ul li::before { content: ''; position: absolute; left: 0; top: 3px; width: 20px; height: 20px; background: no-repeat center / 20px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23262626' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
.m-body a { color: #262626; font-weight: 700; }
.m-body strong { color: #262626; }
.m-body .m-listbox { padding: 28px; border-radius: 16px; background: #F7F7F7; border: 1px solid #E2E2E2; }
.m-body .m-listbox h2 { margin: 0 0 18px; }
.m-body .m-listbox ul { grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 12px 24px; }
.m-body .m-facts-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 20px; margin: 0; padding: 20px 0 4px; border-bottom: 1px solid #E2E2E2; }
.m-body .m-facts-list dt { font-size: 14px; color: #616161; }
.m-body .m-facts-list dd { margin: 4px 0 0; font-family: 'Archivo', sans-serif; font-weight: 700; font-size: 19px; color: #262626; }

/* Migas de pan (AIOSEO) */
.m-crumbs { font-size: 15px; color: #616161; }
.m-crumbs a { color: #616161; text-decoration: underline; }
.m-crumbs .aioseo-breadcrumb-separator { margin: 0 6px; color: #8C8C8C; }
.m-crumbs .aioseo-breadcrumb:last-child { color: #262626; font-weight: 700; }

/* ---------- Formulario (widget Formulario de Elementor Pro) ---------- */
.m-form .elementor-field-group { margin-bottom: 18px; }
.m-form .elementor-field-label { font-size: 15px; font-weight: 700; color: #262626; margin-bottom: 8px; }
.m-form .elementor-field-textual, .m-form select.elementor-field { min-height: 54px; border: 1.5px solid #D4D4D4 !important; border-radius: 10px !important; background: #fff !important; font-size: 17px !important; color: #262626; padding: 0 16px !important; }
.m-form textarea.elementor-field-textual { min-height: 104px; padding: 14px 16px !important; line-height: 1.45; }
.m-form .elementor-field-textual:focus { border-color: #2E2E2E !important; box-shadow: 0 0 0 3px #EDEDED; }
.m-form .elementor-select-wrapper::before { color: #262626; }
.m-form .elementor-field-type-upload .elementor-field { width: 100%; padding: 14px 16px; border: 1.5px dashed #C4C4C4; border-radius: 10px; background: #F7F7F7; font-size: 15px; }
.m-form .elementor-field-type-acceptance label { font-size: 15px; line-height: 1.45; color: #404040; }
.m-form .elementor-field-type-acceptance input { width: 20px; height: 20px; accent-color: #2E2E2E; }
.m-form .elementor-button { min-height: 58px; border-radius: 10px; font-family: 'Archivo', sans-serif; font-weight: 700; font-size: 18px; }
.m-form .elementor-message { font-size: 17px; }

/* ---------- Cabecera ---------- */
.elementor-location-header { position: fixed; top: 0; left: 0; right: 0; z-index: 100; }
.admin-bar .elementor-location-header { top: 32px; }
body { padding-top: 80px; }
.m-hdr { border-bottom: 1px solid #E2E2E2; }
.m-logo, .m-logo .elementor-widget-container { width: 204px; height: 32.7px; overflow: hidden; flex: none; }
.m-logo img { width: 204px !important; max-width: none !important; height: auto !important; }
.m-flogo .elementor-widget-container { box-sizing: border-box; width: 264px; height: 56.5px; padding: 9px 12px; background: #fff; border-radius: 10px; overflow: hidden; }
.m-flogo img { width: 240px !important; max-width: none !important; height: auto !important; }
.m-hdr-ico .elementor-icon { width: 48px; height: 48px; border-radius: 10px; background: #EDEDED; color: #1A1A1A; display: flex; align-items: center; justify-content: center; }
.m-hdr-wa .elementor-icon { width: 48px; height: 48px; border-radius: 10px; border: 1.5px solid #262626; color: #262626; display: flex; align-items: center; justify-content: center; }
.m-hdr-wa .elementor-icon:hover { background: #EDEDED; }
.m-hdr-cta .elementor-button { min-height: 48px; padding: 0 22px; font-size: 17px; white-space: nowrap; }
.m-hdr .m-push { margin-left: auto !important; }
.m-nav .elementor-nav-menu--main .elementor-item { height: 40px; padding: 0 7px !important; border-radius: 8px; }
.m-nav .elementor-nav-menu--main .elementor-item:hover, .m-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { background: #EEEEEE; }
.m-nav .elementor-nav-menu--main > .elementor-nav-menu > li { padding: 20px 0; }
.m-nav .elementor-nav-menu--main .sub-menu { min-width: 320px !important; padding: 10px !important; border: 1px solid #E2E2E2; border-radius: 12px; background: #fff; }
.m-nav .elementor-nav-menu--main .sub-menu a { padding: 10px 12px !important; border-radius: 8px; font-weight: 400 !important; font-size: 15.5px !important; color: #262626 !important; border: 0 !important; }
.m-nav .elementor-nav-menu--main .sub-menu a:hover { background: #EEEEEE !important; }
.m-nav .elementor-nav-menu--dropdown { background: #F7F7F7; padding: 12px 20px 32px; max-height: calc(100vh - 80px); overflow: auto; }
.m-nav .elementor-nav-menu--dropdown .elementor-item { font-family: 'Archivo', sans-serif; font-weight: 700; font-size: 22px; min-height: 60px; border-bottom: 1px solid #E2E2E2; color: #262626 !important; background: transparent !important; }
.m-nav .elementor-nav-menu--dropdown .sub-menu a { font-family: 'Atkinson Hyperlegible', sans-serif; font-weight: 400; font-size: 18px; min-height: 46px; border: 0; color: #404040 !important; background: transparent !important; }
.m-nav .elementor-menu-toggle { width: 48px; height: 48px; border-radius: 10px; border: 1.5px solid #D4D4D4; background: #fff; color: #262626; }
@media (max-width: 1399px) {
	.m-nav { order: 20; }
}
@media (max-width: 859px) {
	body { padding-top: 64px; padding-bottom: 74px; }
	.m-logo, .m-logo .elementor-widget-container { width: 180px; height: 28.8px; }
	.m-logo img { width: 180px !important; }
	.m-nav .elementor-menu-toggle { width: 44px; height: 44px; }
	.m-nav .elementor-nav-menu--dropdown { max-height: calc(100vh - 64px); }
}
@media (max-width: 782px) { .admin-bar .elementor-location-header { top: 46px; } }

/* Barra fija inferior en móvil */
.m-mbar { position: fixed !important; left: 0; right: 0; bottom: 0; z-index: 100; background: #fff; border-top: 1px solid #E2E2E2; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important; }
.m-mbar > * { flex: 1 1 0 !important; min-width: 0 !important; }
.m-mbar .elementor-button { width: 100%; min-height: 52px; font-size: 14px !important; padding-left: 6px; padding-right: 6px; white-space: nowrap; }
.m-mbar .elementor-button-content-wrapper { gap: 6px; }
.m-mbar .elementor-button-icon { margin: 0 !important; flex: 0 0 auto; }
.m-mbar .elementor-button-icon svg, .m-mbar .elementor-button-icon i { width: 16px !important; height: 16px !important; font-size: 16px !important; }
@media (max-width: 374px) { .m-mbar .elementor-button { font-size: 13px !important; } }

/* ---------- Pie ---------- */
.m-ftr a { text-decoration: none; }
.m-ftr .m-flinks a { color: #404040; display: block; padding: 2px 0; }
.m-ftr .m-flinks a:hover { color: #000; }
.m-ftr .m-flinks a.m-strong { color: #262626; font-weight: 700; }
.m-ftr .m-tel .elementor-heading-title a { color: #262626; }
.m-fbottom { border-top: 1px solid #D4D4D4; }
.m-fbottom a { color: #616161; }

.m-narrow { max-width: 900px; }
.m-lead { max-width: 600px; }
.m-postgrid .elementor-post { background: #fff; border: 1px solid #E2E2E2; border-radius: 16px; padding: 28px; }
.m-postgrid .elementor-post__title { font-family: Archivo, sans-serif; font-weight: 700; font-size: 21px; line-height: 1.25; }
.m-postgrid .elementor-post__title a { color: #262626; }

/* Hueco de rejilla (lo fija el contenedor padre con la clase m-gap-N) */
.m-gap-0{--mg:0px}.m-gap-6{--mg:6px}.m-gap-8{--mg:8px}.m-gap-10{--mg:10px}.m-gap-12{--mg:12px}.m-gap-14{--mg:14px}.m-gap-16{--mg:16px}.m-gap-18{--mg:18px}.m-gap-20{--mg:20px}.m-gap-22{--mg:22px}.m-gap-24{--mg:24px}.m-gap-28{--mg:28px}.m-gap-32{--mg:32px}.m-gap-40{--mg:40px}.m-gap-44{--mg:44px}.m-gap-48{--mg:48px}.m-gap-56{--mg:56px}.m-gap-64{--mg:64px}.m-gap-72{--mg:72px}.m-gap-80{--mg:80px}

/* Composición de páginas */
.m-h2w { max-width: 760px; }
.m-sub { max-width: 640px; }
.m-faqwrap > .m-faq-intro { width: calc((100% - 72px) / 3); }
.m-faqwrap > .m-faq-list { width: calc((100% - 72px) * 2 / 3); }
@media (max-width: 859px) { .m-faqwrap > .m-faq-intro, .m-faqwrap > .m-faq-list { width: 100%; } }
.m-narrow-sec > .e-con-inner { max-width: 880px !important; }
.m-formtpl, .m-formtpl > .e-con-inner { padding: 0 !important; background: transparent !important; }
.m-tagchip .elementor-button { min-height: 0 !important; padding: 5px 10px !important; border-radius: 6px !important; background: #EEEEEE !important; border: 0 !important; font-size: 15px !important; text-decoration: underline; text-decoration-color: #BABABA; text-underline-offset: 3px; }
.m-tagchip.m-chip--static .elementor-button { text-decoration: none; }
.m-tagchip .elementor-button:hover { background: #E2E2E2 !important; }
.m-prod .m-chips-row, .m-prod__body .e-con { gap: 6px !important; }
.m-checks .elementor-icon-list-text { font-size: 17px; }
.m-info { padding: 24px !important; }
.m-more a, .m-more .elementor-heading-title a { color: #1A1A1A; }

/* H1 de producción con forma de pastilla (portada) */
.m-pill-h1 { align-self: flex-start; }
.m-pill-h1 .elementor-heading-title { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px 7px 10px; border-radius: 999px; background: #fff; border: 1px solid #E2E2E2; }
.m-pill-h1 .elementor-heading-title::before { content: ''; width: 18px; height: 18px; flex: none; background: no-repeat center / 18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232E2E2E' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }

/* Página de zonas: listas de servicios por localidad */
.m-zonelinks ul { gap: 6px !important; font-size: 16px; }
.m-zonelinks ul li { padding-left: 0; }
.m-zonelinks ul li::before { display: none; }
.m-zonelinks a { font-weight: 400; text-decoration: underline; text-decoration-color: #BABABA; text-underline-offset: 3px; }

/* Blog: aviso «próximamente» solo mientras la categoría no tiene entradas publicadas */
.m-catblock:has(.elementor-post) .m-soon { display: none; }

/* Empresa: fotos de la fachada renovada y de Juan Munné */
.m-img--fachada img { object-position: 50% 40%; }
.m-img--port img { aspect-ratio: 4 / 5; height: auto; border-radius: 18px; object-position: 50% 55%; }
.m-img--sqtop img { aspect-ratio: 1; height: auto; border-radius: 18px; object-position: 50% 22%; }
.m-img--full img { height: auto; aspect-ratio: auto; object-fit: contain; border-radius: 18px; }


/* Creatividades rotuladas: enteras, sin recorte */
.m-img--page img[src*="ventanas-para-salas-de-rayos-x-vidrio-plomado"],
.m-img--page img[src*="ventanas-para-salas-de-rayos-x-envio-a-toda-espana"],
.m-img--page img[src*="vidrios-plomados-para-salas-de-rayos-x"],
.m-img--page img[src*="venta-de-vidrios-plomados-para-proteccion-radiologica"],
.m-img--page img[src*="venta-de-carton-pluma-medidas-y-grosores"] { height: auto !important; aspect-ratio: auto !important; object-fit: contain !important; }/* End custom CSS */