/* hw-webs · marco de la web (cabecera, menú lateral, pie), widgets en directo, formularios y legales.
   Todo sale de los tokens de la plantilla (--bg, --ink, --p, --a, --fd, --fb…, HWW_Tema::tokens_css), que se leen
   del Kit de Elementor: si el negocio cambia su color de marca, cambia aquí también. */

body.hww{background:var(--bg);color:var(--ink);font-family:var(--fb);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
.hww *,.hww *::before,.hww *::after{box-sizing:border-box}
.hww .site-main{margin:0;max-width:none;padding:0}
.hww img{max-width:100%}
/* Un contenedor de ancho fijo (maxW del motor, p. ej. el formulario de reserva a 860 px) no se sale en tableta. */
.elementor .e-con.e-con-full{max-width:100%}
/* Banda con foto de fondo: hasta que carga la foto (Elementor la pide en diferido) se ve el color de marca, no el gris del velo. */
.hwx-band{background-color:var(--e-global-color-primary,var(--p,#1f2a30))}
.hww a:not(.hww-btn){color:inherit}
.hww :focus-visible{outline:2px solid var(--a);outline-offset:3px;border-radius:4px}
.hww-wrap{width:min(1320px,100% - 2*var(--g));margin-inline:auto}
.hww-kick{font:600 .78rem/1.3 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--at,var(--a));margin:0 0 14px}
/* «Saltar al contenido» (05/11/2026): neutro y con contraste AA en cualquier paleta (blanco sobre casi negro, 18:1),
   con anillo blanco y contorno oscuro para que se vea igual sobre fondo claro y oscuro. Gana a `.hww a:not(.hww-btn)`. */
.hww-saltar,.hww a.hww-saltar{position:fixed;left:16px;top:-80px;z-index:100000;background:#111216;color:#fff;font:600 15px/1.2 var(--fb,system-ui,sans-serif);padding:12px 18px;border-radius:8px;text-decoration:underline;text-underline-offset:3px;box-shadow:0 0 0 2px #fff,0 8px 24px rgba(0,0,0,.35);transition:top .2s}
.hww-saltar:focus,.hww-saltar:focus-visible,.hww a.hww-saltar:focus-visible{top:12px;outline:2px solid #111216;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.hww-saltar{transition:none}}
.hww-ic{flex:none;vertical-align:-.15em}

/* Botones */
.hww-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 24px;border-radius:var(--rb);font:600 .95rem/1 var(--fb);text-decoration:none;white-space:nowrap;border:1px solid transparent;cursor:pointer;transition:transform .35s var(--ease),background-color .3s,color .3s,box-shadow .35s var(--ease)}
.hww-btn-p{background:var(--p);color:var(--onp)}
.hww-btn-p:hover{transform:translateY(-2px);box-shadow:0 14px 30px -14px color-mix(in srgb,var(--p) 70%,transparent)}
.hww-btn-o{border-color:currentColor;color:inherit;background:transparent}
.hww-btn-o:hover{background:color-mix(in srgb,currentColor 8%,transparent)}

/* ── Cabecera ─────────────────────────────────────────────────────────────── */
.hww-hdr{position:fixed;inset:0 0 auto;z-index:90;height:var(--hdr);color:var(--ink);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);transition:background-color .4s,color .4s,border-color .4s,transform .45s var(--ease)}
.admin-bar .hww-hdr{top:32px}
@media(max-width:782px){.admin-bar .hww-hdr{top:46px}}
.hww-hdr-in{height:100%;width:min(1400px,100% - 2*var(--g));margin-inline:auto;display:flex;align-items:center;gap:28px}
.hww-marca{display:inline-flex;align-items:center;gap:12px;text-decoration:none;min-width:0;flex:0 1 auto}
.hww-marca img{height:44px;width:auto;max-width:170px;object-fit:contain}
.hww-nombre{font:var(--hw) 1.3rem/1.05 var(--fd);letter-spacing:var(--ht);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hww-marca:not(.sin-logo) .hww-nombre{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hww-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.hww-nl{position:relative;padding:10px 14px;font:500 .95rem/1 var(--fb);text-decoration:none;white-space:nowrap;border-radius:999px;transition:background-color .25s}
.hww-nl::after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:1.5px;background:var(--a);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.hww-nl:hover::after,.hww-nl[aria-current]::after{transform:scaleX(1)}
.hww-hdr-act{display:flex;align-items:center;gap:14px}
.hww-tel{display:inline-flex;align-items:center;gap:8px;font:600 .95rem/1 var(--fb);text-decoration:none;white-space:nowrap}
.hww-cta{min-height:42px;padding:0 20px}
.hww-burger{display:none;width:46px;height:46px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;position:relative}
.hww-burger span{position:absolute;left:13px;right:13px;height:1.6px;background:currentColor;transition:transform .3s}
.hww-burger span:first-child{top:18px}.hww-burger span:last-child{top:26px}
/* Transparente sobre la portada, sólida al bajar */
.hww-con-heroe:not(.hww-sc) .hww-hdr{background:transparent;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
.hww-heroe-oscuro:not(.hww-sc) .hww-hdr{color:#fff}
.hww-heroe-oscuro:not(.hww-sc) .hww-hdr::before{content:"";position:absolute;inset:0 0 -56px;background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,.3) 60%,transparent);pointer-events:none;z-index:-1}
/* p50 · N3: sobre un héroe claro la cabecera transparente lleva un velo del color del fondo (tinta sobre fondo, AA de la paleta) para que se lea aunque debajo haya una foto clara o un panel. */
/* hwx-sin-velo en el héroe (→ hww-sin-velo en el body) lo quita; :where() para no subir la especificidad que ya pisan las fichas. */
.hww-heroe-claro:not(.hww-sc):not(.hww-heroe-tono):where(:not(.hww-sin-velo)) .hww-hdr::before{content:"";position:absolute;inset:0 0 -40px;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 94%,transparent),color-mix(in srgb,var(--bg) 70%,transparent) 62%,transparent);pointer-events:none;z-index:-1}
.hww-heroe-claro:not(.hww-sc):not(.hww-heroe-tono) .hww-hdr .hww-nl,.hww-heroe-claro:not(.hww-sc):not(.hww-heroe-tono) .hww-hdr .hww-nombre{text-shadow:0 0 14px color-mix(in srgb,var(--bg) 85%,transparent)}
.hww-heroe-oscuro:not(.hww-sc) .hww-cta{background:#fff;color:#111}
.hww-oculta .hww-hdr{transform:translateY(-110%)}
body.hww:not(.hww-con-heroe) #contenido{height:var(--hdr)}
@media(max-width:1100px){.hww-tel span{display:none}.hww-nl{padding:10px 10px}}
@media(max-width:1023px){
	.hww-nav,.hww-tel{display:none}
	.hww-burger{display:block}
	.hww-hdr-in{gap:12px}.hww-hdr-act{margin-left:auto;gap:8px}
	.hww-marca img{height:36px;max-width:140px}
}
@media(max-width:480px){.hww-cta{display:none}}
/* Rótulos de menú largos (hw-webs.js, ≥1024 px): pasos para que el botón de la cabecera no se corte. h: menos aire. s: el
   subtítulo del logo en dos líneas, con el ancho más estrecho en que cabe entero (--hww-tipo-w, lo mide hw-webs.js; nunca
   menos que el nombre); los puntos suspensivos, solo de reserva. a1: sin el número del teléfono. a2: letra menor, sin teléfono. a3: menú lateral. */
.hww-hdr-h .hww-nl{padding-inline:9px}.hww-hdr-h .hww-hdr-in{gap:18px}
.hww-hdr-s .hww-hdr .hww-marca .hww-tipo{width:var(--hww-tipo-w,auto);min-width:100%;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.3;text-wrap:balance}
.hww-hdr-a1 .hww-tel span{display:none}.hww-hdr-a1 .hww-nl{padding-inline:9px}.hww-hdr-a1 .hww-hdr-in{gap:18px}
.hww-hdr-a2 .hww-nl{padding-inline:7px;font-size:.88rem}.hww-hdr-a2 .hww-tel{display:none}
.hww-hdr-a3 .hww-nav{display:none}.hww-hdr-a3 .hww-burger{display:block}.hww-hdr-a3 .hww-hdr-act{margin-left:auto}

/* Menú móvil en ventana lateral */
.hww-velo{position:fixed;inset:0;z-index:98;background:rgba(10,10,10,.42);opacity:0;transition:opacity .35s}
.hww-menu-on .hww-velo{opacity:1}
.hww-menu{position:fixed;top:0;right:0;bottom:0;z-index:99;width:min(400px,88vw);background:var(--bg);color:var(--ink);display:flex;flex-direction:column;padding:18px 24px 28px;transform:translateX(102%);visibility:hidden;transition:transform .5s var(--ease),visibility 0s .5s;box-shadow:-30px 0 60px -30px rgba(0,0,0,.4);overflow-y:auto;overscroll-behavior:contain}
.hww-menu-on .hww-menu{transform:none;visibility:visible;transition-delay:0s}
.hww-menu-on{overflow:hidden}
.hww-menu-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px}
.hww-cerrar{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer}
.hww-menu nav{display:flex;flex-direction:column;margin:28px 0 auto}
.hww-menu nav a{font:var(--hw) clamp(1.6rem,7vw,2.1rem)/1.15 var(--fd);letter-spacing:var(--ht);text-decoration:none;padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;opacity:0;transform:translateX(18px);transition:opacity .4s,transform .5s var(--ease);transition-delay:calc(var(--i)*45ms + 120ms)}
.hww-menu nav a[aria-current]{color:var(--at,var(--a))}
.hww-menu nav a::after{content:"→";font:400 1.1rem var(--fb);opacity:.4}
.hww-menu-on .hww-menu nav a{opacity:1;transform:none}
.hww-menu-pie{display:flex;flex-direction:column;gap:10px;margin-top:28px}
.hww-menu-pie p{margin:6px 0 0;color:var(--mut);font-size:.9rem}

/* ── Pie ──────────────────────────────────────────────────────────────────── */
.hww-pie{background:var(--ink);color:var(--bg);padding:clamp(64px,9vw,120px) 0 28px;margin-top:0}
.hww-pie a{text-decoration:none}
/* En las plantillas oscuras el pie no se invierte (saldría un bloque claro al final): fondo más hondo y raya de color */
.hww-oscura .hww-pie{background:color-mix(in srgb,var(--bg) 70%,#000);color:var(--ink);border-top:1px solid var(--line)}
.hww-oscura .hww-pie-cta,.hww-oscura .hww-pie-bot{border-color:var(--line)}
.hww-oscura .hww-pie .hww-btn-o{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 40%,transparent)}
.hww-pie-cta{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;padding-bottom:clamp(40px,6vw,72px);border-bottom:1px solid color-mix(in srgb,var(--bg) 18%,transparent)}
.hww-pie-cta h2{font:var(--hw) clamp(2.6rem,7vw,5.6rem)/.95 var(--fd);letter-spacing:var(--ht);margin:0;color:inherit}
.hww-pie-cta .hww-kick{color:var(--pa,var(--a))}
.hww-pie-act{display:flex;gap:12px;flex-wrap:wrap}
.hww-pie .hww-btn-p{background:var(--pa,var(--a));color:var(--onpa,var(--ona))}
.hww-pie-cols{display:grid;grid-template-columns:1.3fr 1.5fr 1fr 1fr;gap:40px;padding:48px 0}
.hww-pie-cols>div{min-width:0}
.hww-pie h3{font:600 .75rem/1 var(--fb);letter-spacing:.18em;text-transform:uppercase;opacity:.55;margin:0 0 18px;color:inherit}
.hww-pie-marca .hww-marca .hww-nombre{font-size:1.6rem;white-space:normal}
.hww-pie-marca img{height:52px;max-width:200px}
.hww-pie-marca p{opacity:.72;margin:16px 0 8px;line-height:1.55}
.hww-pie-lista{display:flex;flex-direction:column;gap:10px}
.hww-pie-lista a{opacity:.8;transition:opacity .2s}.hww-pie-lista a:hover{opacity:1}
.hww-pie-hor{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.92rem}
.hww-pie-hor li{display:flex;justify-content:space-between;gap:16px;opacity:.82}
.hww-pie-bot{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;justify-content:space-between;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--bg) 18%,transparent);font-size:.82rem;opacity:.7}
.hww-pie-bot nav{display:flex;gap:18px;flex-wrap:wrap}
.hww-firma a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.hww-pie-cols{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:560px){.hww-pie-cols{grid-template-columns:1fr}.hww-pie-act .hww-btn{flex:1}}
.hww-wa{position:fixed;right:20px;bottom:20px;z-index:80;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 14px 32px -10px rgba(0,0,0,.45);transition:transform .35s var(--ease)}
.hww-wa:hover{transform:scale(1.07)}

/* ── Carta ────────────────────────────────────────────────────────────────── */
.hwc{--c-ink:currentColor;width:100%}
.hwc ul{list-style:none;margin:0;padding:0}
.hww-vacio{color:var(--mut);font-style:italic}
/* Lista con puntos */
.hwc-lista{display:grid;gap:44px 72px}
.hwc-lista.hwc-cols-2{grid-template-columns:1fr 1fr}
.hwc-tabs{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.hwc-tabs button{font:600 .9rem/1 var(--fb);padding:12px 18px;border-radius:999px;border:1px solid var(--line);background:transparent;color:inherit;cursor:pointer;min-height:44px}
.hwc-tabs button[aria-selected=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.js .hwc-con-tabs .hwc-cat:not(.on){display:none}
.js .hwc-con-tabs.hwc-cols-2 .hwc-cat.on ul:has(li:nth-child(6)){columns:2;column-gap:72px}
.js .hwc-con-tabs .hwc-cat{grid-column:1/-1}
.hwc-cat-t{font:var(--hw) clamp(1.5rem,2.4vw,2rem)/1.1 var(--fd);letter-spacing:var(--ht);margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid var(--ink);color:inherit}
.hwc-lista li,.hwc-carta li{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:0 10px;padding:11px 0;break-inside:avoid}
.hwc-n{font-weight:600}
.hwc-pt{border-bottom:1.5px dotted color-mix(in srgb,currentColor 40%,transparent);transform:translateY(-4px)}
.hwc-pr{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.hwc-d{grid-column:1/-1;color:var(--mut);font-size:.92rem;margin-top:3px}
.hwc-nota{grid-column:1/-1;color:var(--mut);font-size:.88rem;margin:0}
@media(max-width:767px){.hwc-lista.hwc-cols-2{grid-template-columns:1fr}.js .hwc-con-tabs.hwc-cols-2 .hwc-cat.on ul{columns:1}}
/* Carta impresa */
.hwc-carta{max-width:680px;margin-inline:auto;text-align:center;display:grid;gap:48px}
.hwc-carta .hwc-cat-t{border:0;display:flex;align-items:center;gap:18px;justify-content:center;font-style:italic}
.hwc-carta .hwc-cat-t::before,.hwc-carta .hwc-cat-t::after{content:"";flex:1;max-width:120px;height:1px;background:currentColor;opacity:.35}
/* Nombre y precio se encuentran en el centro, en la misma línea; sin la línea de puntos (si ocupa una celda, el precio baja de fila). */
.hwc-carta li{grid-template-columns:1fr 1fr;text-align:left;padding:8px 0}
.hwc-carta .hwc-pt{display:none}
.hwc-carta .hwc-n{text-align:right;font-weight:500;padding-right:14px}.hwc-carta .hwc-pr{color:var(--at,var(--a));padding-left:14px}
.hwc-carta .hwc-d{text-align:center}
@media(max-width:767px){.hwc-carta li{grid-template-columns:minmax(0,1fr) auto}.hwc-carta .hwc-n{text-align:left;padding-right:12px}.hwc-carta .hwc-pr{padding-left:0}.hwc-carta .hwc-d{text-align:left}}
/* En pantalla ancha, las categorías van a dos columnas: en una sola, la carta ocupaba dos pantallas. */
@media(min-width:900px){.hwc-carta{max-width:1040px;grid-template-columns:1fr 1fr;column-gap:72px;align-items:start}}
/* Pizarra */
.hwc-pizarra{--tiza:#f4f1e8}
.hwc-pz-marco{position:relative;padding:18px;border-radius:14px;background:linear-gradient(135deg,#6b4a2b,#3f2a17 45%,#7a5534);box-shadow:0 40px 80px -40px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.08)}
.hwc-pz-in{position:relative;border-radius:6px;padding:clamp(26px,4vw,44px) clamp(22px,4vw,48px);min-height:380px;color:var(--tiza);background:radial-gradient(ellipse at 30% 20%,rgba(255,255,255,.07),transparent 60%),radial-gradient(ellipse at 80% 90%,rgba(255,255,255,.05),transparent 55%),#22302a;overflow:hidden}
.hwc-pz-in::before{content:"";position:absolute;inset:0;opacity:.18;mix-blend-mode:screen;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.hwc-pz-cat{font:400 clamp(2rem,4vw,2.8rem)/1 var(--fx);margin:0 0 22px;text-align:center;transform:rotate(-1.5deg)}
.hwc-pz-in li{display:flex;justify-content:space-between;gap:20px;align-items:baseline;font:400 clamp(1.25rem,2.1vw,1.6rem)/1.25 var(--fx);padding:7px 0;border-bottom:1px dashed rgba(244,241,232,.18)}
.hwc-pz-in li b{font-weight:400;white-space:nowrap;color:#f6d36b}
.js .hwc-pizarra li{clip-path:inset(0 100% 0 0);transition:clip-path 1s steps(18,end);transition-delay:calc(var(--i)*260ms + 200ms)}
.js .hwc-pizarra.is-in li{clip-path:inset(0)}
.hwc-pz-tiza{position:absolute;right:42px;bottom:8px;width:56px;height:12px;border-radius:3px;background:#f6f3ea;box-shadow:0 2px 4px rgba(0,0,0,.4);transform:rotate(-4deg)}
/* Tablero de salidas */
.hwc-tablero{--fl-bg:#141414;--fl-ink:#f5c84c;background:#0b0b0b;border-radius:12px;padding:clamp(14px,2vw,22px);font:600 clamp(.72rem,1.15vw,1rem)/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--fl-ink);box-shadow:0 40px 90px -40px rgba(0,0,0,.7);overflow:hidden}
.hwc-tb-cab,.hwc-tb-fila{display:grid;grid-template-columns:max-content max-content max-content;justify-content:space-between;gap:clamp(8px,1.4vw,18px);align-items:center}
.hwc-tablero{font-size:min(1rem,calc((min(100vw,1320px) - 140px) / (var(--wn,22) + var(--wc,10) + var(--wp,8) + 4) / 1.12))}
.hwc-tb-cab{color:#9a9a9a;font-size:.72em;letter-spacing:.2em;text-transform:uppercase;padding:0 0 12px;border-bottom:1px solid #262626;margin-bottom:8px}
.hwc-tb-fila{padding:5px 0}
.hwc-fl{display:flex;gap:2px;min-width:0;overflow:hidden;white-space:pre}
.hwc-fl .fc{flex:0 0 auto;width:1.05em;height:1.6em;display:grid;place-items:center;background:var(--fl-bg);border-radius:2px;position:relative;text-transform:uppercase;box-shadow:inset 0 -1px 0 rgba(255,255,255,.04)}
.hwc-fl .fc::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#000}
.hwc-fl .fc.flip{animation:hwcFlip .22s ease-in}
.hwc-tb-pr{justify-content:flex-end}
.hwc-tb-cat{color:#e8e8e8}
@keyframes hwcFlip{0%{transform:rotateX(0)}50%{transform:rotateX(90deg)}100%{transform:rotateX(0)}}
@media(max-width:767px){.hwc-tablero{font-size:10px;padding:12px}.hwc-tb-cab,.hwc-tb-fila{gap:10px}.hwc-tb-cab{font-size:12px;letter-spacing:.14em}.hwc-tb-cab,.hwc-tb-fila{grid-template-columns:minmax(0,1fr) auto}.hwc-tb-cat,.hwc-tb-cab span:nth-child(2){display:none!important}}
/* Comanda que se imprime */
.hwc-ticket{display:flex;flex-direction:column;align-items:center;max-width:380px;margin-inline:auto}
.hwc-tk-boca{width:100%;height:22px;border-radius:12px 12px 4px 4px;background:linear-gradient(#2a2a2a,#111);box-shadow:0 10px 20px -8px rgba(0,0,0,.5);position:relative;z-index:2}
.hwc-tk-boca::after{content:"";position:absolute;left:8%;right:8%;bottom:6px;height:3px;border-radius:2px;background:#000}
.hwc-tk-papel{width:88%;margin-top:-8px;background:#fffdf7;color:#1d1d1d;padding:30px 24px 34px;font:500 .92rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;box-shadow:0 30px 50px -30px rgba(0,0,0,.45);-webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 90deg,#0000 91deg) bottom/16px 10px repeat-x;mask:linear-gradient(#000,#000) top/100% calc(100% - 10px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 90deg,#0000 91deg) bottom/16px 10px repeat-x}
.hwc-tk-neg{text-align:center;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px}
.hwc-tk-meta{display:flex;justify-content:space-between;border-bottom:1px dashed #999;padding-bottom:10px;margin:0 0 12px;color:#555}
.hwc-tk-papel li{display:flex;justify-content:space-between;gap:12px;padding:4px 0}
.hwc-tk-papel li b{font-weight:600;white-space:nowrap}
.hwc-tk-gracias{text-align:center;margin:16px 0 0;padding-top:12px;border-top:1px dashed #999;color:#555}
.js .hwc-ticket .hwc-tk-papel{transform:translateY(-102%);clip-path:inset(0 0 0 0)}
.js .hwc-ticket.is-in .hwc-tk-papel{animation:hwcImprime 2.6s steps(26,end) forwards}
@keyframes hwcImprime{to{transform:none}}
.hwc-ticket{overflow:hidden;padding-bottom:40px}
/* Cinta de precios */
.hwc-cinta{overflow:hidden;max-width:100%;-webkit-mask:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.hwc-cinta-pista{display:flex;width:max-content;animation:hwcCinta var(--dur,70s) linear infinite}
.hwc-cinta:hover .hwc-cinta-pista{animation-play-state:paused}
.hwc-cinta-in{display:flex;align-items:center;gap:28px;padding-inline:clamp(16px,4vw,40px) 28px;font:var(--hw) clamp(1.4rem,3vw,2.4rem)/1.2 var(--fd);letter-spacing:var(--ht);white-space:nowrap}
.hwc-cinta-in b{color:var(--a);font-weight:inherit}
.hwc-cinta-in i{font-style:normal;color:var(--a);opacity:.6;font-size:.6em}
@keyframes hwcCinta{to{transform:translateX(-50%)}}

/* ── Tarifas para cualquier sector (plan Motion, fase 3): planes, tabla, desde y slide ─────────────────── */
.hwc-pg{display:inline-flex;align-items:baseline;gap:2px;font:var(--hw,700) clamp(2.6rem,5vw,4rem)/1 var(--fd);letter-spacing:var(--ht,-.02em);font-variant-numeric:tabular-nums;white-space:nowrap}
.hwc-pg-m{font-size:.5em;margin-left:2px}
.hwc-pg-s{font:500 .95rem/1 var(--fb);letter-spacing:0;color:var(--mut);margin-left:6px}
.hwc-desde{display:block;font:600 .78rem/1 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);margin:0 0 6px}
.hwc-mas{grid-column:1/-1;margin:0;color:var(--mut);font-size:.95rem}
.hwc-mas a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;margin-left:6px}
.hwc-pl-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 26px;border-radius:var(--rb,0);border:1px solid currentColor;font:600 .95rem/1 var(--fb);color:inherit;text-decoration:none;transition:background .25s,color .25s,border-color .25s}
.hwc-pl-btn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.hwc-pl-etq{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);background:var(--a);color:var(--ona,#111);font:700 .72rem/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;padding:9px 14px;border-radius:999px;white-space:nowrap}
/* Planes: una tarjeta por tarifa, la destacada más alta y con borde de acento */
.hwc-planes{display:grid;gap:28px}
.hwc-pl-cat{margin:0;font:600 .8rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--at,var(--a))}
.hwc-pl-fila{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:22px;align-items:stretch;padding-top:16px}
.hwc-n2 .hwc-pl-fila{--cols:2;max-width:880px}
.hwc-n1 .hwc-pl-fila{--cols:1;max-width:460px}
.hwc-pl{position:relative;display:flex;flex-direction:column;gap:16px;padding:clamp(28px,3vw,40px);border-radius:var(--r,0);background:var(--surface);border:1px solid var(--line);color:var(--ink)}
.hwc-pl-n{margin:0;font:var(--hw,700) clamp(1.3rem,1.8vw,1.6rem)/1.15 var(--fd);letter-spacing:var(--ht,-.01em);color:inherit}
.hwc-pl-inc{list-style:none;margin:4px 0 0;padding:18px 0 0;border-top:1px solid var(--line);display:grid;gap:10px;flex:1}
.hwc-pl-inc li{position:relative;padding-left:28px;line-height:1.45}
.hwc-pl-inc li::before{content:"";position:absolute;left:0;top:.3em;width:16px;height:16px;border-radius:50%;background:color-mix(in srgb,var(--a) 22%,transparent)}
.hwc-pl-inc li::after{content:"";position:absolute;left:5px;top:calc(.3em + 4px);width:6px;height:4px;border-left:2px solid var(--at,var(--a));border-bottom:2px solid var(--at,var(--a));transform:rotate(-45deg)}
.hwc-pl .hwc-pl-btn{margin-top:auto;align-self:stretch}
.hwc-pl.es-dest{background:var(--ink);color:var(--bg);border-color:var(--a);box-shadow:0 0 0 2px var(--a),0 40px 80px -40px rgba(0,0,0,.45)}
.hwc-pl.es-dest .hwc-pg-s,.hwc-pl.es-dest .hwc-desde{color:color-mix(in srgb,var(--bg) 70%,transparent)}
.hwc-pl.es-dest .hwc-pl-inc{border-color:color-mix(in srgb,var(--bg) 22%,transparent)}
.hwc-pl.es-dest .hwc-pl-inc li::after{border-color:var(--a)}
.hwc-pl.es-dest .hwc-pl-btn{background:var(--a);color:var(--ona,#111);border-color:var(--a)}
@media(min-width:900px){.hwc-n3 .hwc-pl.es-dest{transform:translateY(-14px)}}
@media(max-width:899px){.hwc-pl-fila{--cols:1!important;gap:26px}}
/* Tabla comparativa */
.hwc-tabla{display:grid;gap:22px}
.hwc-tt-scroll{overflow-x:auto;padding-top:16px;-webkit-overflow-scrolling:touch}
.hwc-tabla table{width:100%;min-width:560px;border-collapse:separate;border-spacing:0;color:var(--ink)}
.hwc-tabla caption{text-align:left;font:600 .8rem/1 var(--fb);letter-spacing:.2em;text-transform:uppercase;color:var(--at,var(--a));padding-bottom:18px}
.hwc-tabla th,.hwc-tabla td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}
.hwc-tabla tbody th{text-align:left;font-weight:500}
.hwc-tabla thead th{position:relative;padding:30px 18px 22px;font-weight:600;vertical-align:bottom}
.hwc-tt-n{display:block;font:var(--hw,700) 1.15rem/1.2 var(--fd);margin-bottom:10px}
.hwc-tabla thead .hwc-pg{font-size:clamp(2rem,3.4vw,2.8rem)}
.hwc-tabla th.es-dest,.hwc-tabla td.es-dest{background:color-mix(in srgb,var(--a) 12%,var(--surface))}
.hwc-tabla thead th.es-dest{border-radius:var(--r,0) var(--r,0) 0 0}
.hwc-tt-pie td{border-bottom:0}
.hwc-tt-pie td.es-dest{border-radius:0 0 var(--r,0) var(--r,0)}
.hwc-tt-pie .es-dest .hwc-pl-btn{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.hwc-si{color:var(--at,var(--a));font-weight:700;font-size:1.2rem}.hwc-no{color:var(--mut);opacity:.6}
/* Desde: servicios con foto */
.hwc-desde-g{display:grid;gap:28px}
.hwc-ds-fila{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.hwc-n3 .hwc-ds-fila{grid-template-columns:repeat(3,minmax(0,1fr))}.hwc-n2 .hwc-ds-fila{grid-template-columns:repeat(2,minmax(0,1fr))}
.hwc-ds{display:flex;flex-direction:column;border-radius:var(--r,0);overflow:hidden;background:var(--surface);border:1px solid var(--line);color:var(--ink)}
.hwc-ds-foto{position:relative;aspect-ratio:4/5;overflow:hidden;background:color-mix(in srgb,var(--p) 85%,#000)}
.hwc-ds-foto img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.hwc-ds:hover .hwc-ds-foto img{transform:scale(1.06)}
.hwc-ds-foto span{position:absolute;inset:0;display:grid;place-items:center;font:var(--hw,700) 6rem/1 var(--fd);color:var(--onp,#fff);opacity:.35}
.hwc-ds-txt{padding:22px 22px 26px;display:grid;gap:6px}
.hwc-ds-cat{margin:0;font:600 .72rem/1 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--at,var(--a))}
.hwc-ds-n{margin:0 0 6px;font:var(--hw,700) 1.25rem/1.2 var(--fd);color:inherit}
.hwc-ds-pr{margin:0}.hwc-ds-pr .hwc-desde{display:inline;margin-right:8px}
.hwc-ds-pr .hwc-pg{font-size:clamp(2rem,3vw,2.6rem)}
.hwc-ds-d{margin:4px 0 0;color:var(--mut);font-size:.92rem;line-height:1.5}
@media(max-width:1024px){.hwc-ds-fila{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.hwc-ds-fila{grid-template-columns:1fr!important}.hwc-ds-foto{aspect-ratio:16/10}}
/* Slide: carrusel de tarjetas; la del centro manda */
.hwc-slide{position:relative;display:grid;gap:22px}
.hwc-sl-pista{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:18px 0 26px;scrollbar-width:none;overscroll-behavior-x:contain}
.hwc-slide.al-final .hwc-sl-pista{-webkit-mask:none;mask:none}
.hwc-sl-pista::-webkit-scrollbar{display:none}
.hwc-sl-pista:focus-visible{outline:2px solid var(--a);outline-offset:4px}
.hwc-sl{position:relative;flex:0 0 calc((100% - 40px)/3);min-width:0;scroll-snap-align:start;min-height:400px;display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--r,0);overflow:hidden;background:color-mix(in srgb,var(--p) 40%,#0b0b0b);color:#fff;transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .6s,filter .6s}
/* Fondos oscurecidos y letra blanca: con colores de marca claros (salmón, turquesa) el blanco no llegaba a AA */
.hwc-sl:nth-child(3n+2){background:color-mix(in srgb,var(--p) 18%,#0b0b0b);color:#fff}.hwc-sl:nth-child(3n){background:color-mix(in srgb,var(--a) 34%,#0b0b0b);color:#fff}
.hwc-sl-num{position:relative;z-index:1;padding:26px 30px 0;font:var(--hw,700) clamp(3.4rem,6vw,5rem)/1 var(--fd);letter-spacing:-.03em;opacity:.5}
.hwc-sl img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hwc-sl.con-foto{color:#fff;justify-content:flex-end}.hwc-sl.con-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.78))}
.hwc-sl-txt{position:relative;z-index:1;padding:30px;display:grid;gap:8px;width:100%}
.hwc-sl-cat{margin:0;font:600 .8rem/1.2 var(--fb);letter-spacing:.14em;text-transform:uppercase}
.hwc-sl-n{margin:0;font:var(--hw,700) clamp(1.4rem,2vw,1.8rem)/1.12 var(--fd);color:inherit}
.hwc-sl-d{margin:0;font-size:1rem;line-height:1.45}
.hwc-sl .hwc-pg{margin-top:10px}.hwc-sl .hwc-pg-s{color:inherit;opacity:.75}
/* N1: las laterales se apagan sin bajar la opacidad (el texto blanco quedaba bajo AA sobre el fondo de la página) */
.js .hwc-slide.hwc-sl-listo .hwc-sl{transform:none;opacity:1;filter:saturate(.7) brightness(.92)}
.js .hwc-slide.hwc-sl-listo .hwc-sl.es-centro{filter:none}
.js .hwc-slide.hwc-sl-listo .hwc-sl.es-centro{transform:none;opacity:1}
.hwc-sl-nav{display:flex;gap:10px;justify-content:center}
.hwc-sl-nav button{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:transparent;color:inherit;font-size:1.2rem;cursor:pointer;transition:background .25s,color .25s}
.hwc-sl-nav button:hover{background:var(--ink);color:var(--bg)}
/* N6: tarjetas enteras. 3 a partir de 1025px, 2 en tableta y 1 con un asomo de la siguiente en móvil; con 3 o menos, rejilla sin flechas. */
@media(max-width:1024px){.hwc-sl{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:767px){.hwc-sl{min-height:340px;flex-basis:80%}}
.hwc-slide.hwc-sl-rej .hwc-sl-pista{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;scroll-snap-type:none;padding-bottom:0}
.hwc-slide.hwc-sl-rej .hwc-sl{flex:none}
.hwc-slide.hwc-sl-rej .hwc-sl-nav{display:none}
@media(max-width:1024px){.hwc-slide.hwc-sl-rej .hwc-sl-pista{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.hwc-slide.hwc-sl-rej .hwc-sl-pista{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hwc-sl,.hwc-ds-foto img{transition:none}}
/* Lista en la capa premium: precio en la fuente de titulares y filete fino en lugar de puntitos */
.hww-premium .hwc-lista .hwc-pt{border-bottom:1px solid color-mix(in srgb,currentColor 18%,transparent);transform:translateY(-6px)}
.hww-premium .hwc-lista .hwc-pr{font:var(--hw,700) 1.25rem/1 var(--fd);letter-spacing:var(--ht,-.01em)}
.hww-premium .hwc-lista li{padding:14px 0}
.hww-pausa .hwc-cinta-pista,.hww-pausa .hwx-anim{animation-play-state:paused!important}

/* ── Horario y contacto ───────────────────────────────────────────────────── */
.hww-hor ul{list-style:none;margin:0;padding:0}
.hww-hor li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.hww-hor li span:last-child{font-variant-numeric:tabular-nums;font-weight:600;text-align:right}
.hww-ahora{display:inline-flex;align-items:center;gap:8px;font:600 .85rem/1 var(--fb);margin:0 0 10px;min-height:1em}
.hww-ahora:empty{display:none}
.hww-ahora::before{content:"";width:9px;height:9px;border-radius:50%;background:#e5484d}
.hww-ahora.abierto::before{background:#30a46c;box-shadow:0 0 0 4px rgba(48,164,108,.2);animation:hwwLatido 2s infinite}
@keyframes hwwLatido{50%{box-shadow:0 0 0 8px rgba(48,164,108,0)}}
.hww-cto{display:grid;gap:18px}
.hww-cto-tarjetas{grid-template-columns:repeat(auto-fit,minmax(max(240px,calc(50% - 9px)),1fr))}
/* Como mucho dos columnas; con un número impar de tarjetas, la última ocupa la fila entera en vez de dejar un hueco. */
@media(min-width:520px){.hww-cto-tarjetas .hww-cto-it:last-child:nth-child(odd):not(:only-child){grid-column:1/-1}}
.hww-cto-it{display:flex;gap:16px;align-items:flex-start;padding:26px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}
.hww-cto-lista .hww-cto-it{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:18px 0}
.hww-cto-ic{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--a) 14%,transparent);color:var(--a)}
.hww-cto-it>div{min-width:0;flex:1}
.hww-cto-t{font:600 .75rem/1 var(--fb);letter-spacing:.16em;text-transform:uppercase;color:var(--mut);margin:4px 0 10px}
.hww-cto-v{font:var(--hw) 1.2rem/1.35 var(--fd);letter-spacing:var(--ht);overflow-wrap:anywhere}
.hww-cto-v a{text-decoration:none}
/* aventurexia › escape: Cinzel no tiene minúsculas y el correo salía en mayúsculas */
.hwt-escape .hww-cto-v a[href^="mailto:"]{font-family:var(--fb);letter-spacing:0}
.hww-cto-v .hww-hor{font:400 .95rem/1.4 var(--fb);letter-spacing:0}
.hww-cto-v .hww-hor li{padding:6px 0}
.hww-cto-l{margin:10px 0 0;font-size:.92rem}
.hww-cto-l a{color:var(--at,var(--a));font-weight:600;text-decoration:none;display:inline-flex;gap:6px;align-items:center}

/* ── Formularios ──────────────────────────────────────────────────────────── */
.hwf{display:grid;gap:18px}
.hwf-rej{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hwf-c{display:flex;flex-direction:column;gap:7px;min-width:0}
.hwf-c>span{font:600 .85rem/1.2 var(--fb)}
.hwf-c small{font-weight:400;color:var(--mut);font-size:max(12px,.8em)}
.hwf-ancho{grid-column:1/-1}
.hwf input:not([type=checkbox]),.hwf select,.hwf textarea{width:100%;min-height:50px;padding:12px 15px;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:400 1rem/1.4 var(--fb);transition:border-color .2s,box-shadow .2s}
.hwf textarea{min-height:110px;resize:vertical}
.hwf input:focus,.hwf select:focus,.hwf textarea:focus{outline:0;border-color:var(--a);box-shadow:0 0 0 3px color-mix(in srgb,var(--a) 22%,transparent)}
.hwf [aria-invalid=true]{border-color:#d13c3c!important}
.hwf-ok{display:flex;gap:12px;align-items:flex-start;font-size:.9rem;color:var(--mut);cursor:pointer}
.hwf-ok input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--p);flex:none}
.hwf-ok a{color:var(--ink)}
.hwf-pie{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.hwf-estado{margin:0;font-weight:600}
.hwf-estado.ok{color:#2f8f5b}.hwf-estado.mal{color:#c23b3b}
.hwf-nota{margin:0;font-size:.88rem;color:var(--mut)}
.hwf-trampa{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.hwf.enviado .hwf-rej,.hwf.enviado .hwf-ok{opacity:.45;pointer-events:none}
@media(max-width:600px){.hwf-rej{grid-template-columns:1fr}.hwf-pie .hww-btn{width:100%}}

/* ── Blog ─────────────────────────────────────────────────────────────────── */
.hww-blog{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}
.hww-blog.hww-blog-n1{grid-template-columns:minmax(0,420px)}
.hww-blog.hww-blog-n2{grid-template-columns:repeat(auto-fit,minmax(280px,420px))}
.hww-blog-it{display:flex;flex-direction:column;gap:10px;text-decoration:none}
.hww-blog-img{aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:var(--soft)}
.hww-blog-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.hww-blog-it:hover img{transform:scale(1.04)}
.hww-blog-f{color:var(--mut);font-size:.85rem}
.hww-blog-t{font:var(--hw) 1.35rem/1.2 var(--fd);letter-spacing:var(--ht)}
/* Entradas sueltas (Hello Elementor; la maqueta la pone HWW_Marco::entrada) */
.hww.single-post .site-main,.hww.blog .site-main,.hww.archive .site-main{width:min(1080px,100% - 2*var(--g));margin:0 auto;padding:calc(var(--hdr) + 56px) 0 110px}
.hww.single-post .page-header,.hww.single-post .post-tags{display:none}
.hww-entrada-cab{max-width:760px;margin:0 auto 40px;display:flex;flex-direction:column;gap:16px}
.hww-entrada-cab .hww-kick a{color:inherit;text-decoration:none}
.hww-entrada-cab .hww-kick a:hover{text-decoration:underline}
.hww-entrada-t{margin:0;font:var(--hw) clamp(2.3rem,5.4vw,4rem)/1.04 var(--fd);letter-spacing:var(--ht);color:var(--ink);text-wrap:balance}
.hww-entrada-lead{margin:0;font-size:clamp(1.1rem,1.6vw,1.3rem);line-height:1.55;color:var(--mut);max-width:62ch}
.hww-entrada-foto{margin:0 0 56px;border-radius:var(--r);overflow:hidden;aspect-ratio:16/8;background:var(--soft)}
.hww-entrada-foto img{width:100%;height:100%;object-fit:cover;display:block}
.hww-entrada-txt{max-width:700px;margin:0 auto;font-size:1.12rem;line-height:1.8;color:var(--ink)}
.hww-entrada-txt>*{margin:0 0 1.15em}
.hww-entrada-txt h2,.hww-entrada-txt h3{font-family:var(--fd);font-weight:var(--hw);letter-spacing:var(--ht);line-height:1.15;margin:1.9em 0 .55em;color:var(--ink)}
.hww-entrada-txt h2{font-size:clamp(1.6rem,2.6vw,2.1rem)}
.hww-entrada-txt ul{padding-left:1.2em}
.hww-entrada-txt li{margin:.35em 0}
.hww-entrada-txt li::marker{color:var(--a)}
.hww-entrada-txt a{color:var(--p);text-decoration:underline;text-underline-offset:3px}
.hww-entrada-txt img{border-radius:var(--r)}
.hww-entrada-pie{max-width:700px;margin:56px auto 0;padding-top:32px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
@media (max-width:767px){.hww-entrada-foto{aspect-ratio:4/3;margin-bottom:36px}.hww-entrada-pie .hww-btn{flex:1 1 100%;justify-content:center}}

/* ── Legales ──────────────────────────────────────────────────────────────── */
.hww-legal{padding:calc(var(--hdr) + 56px) 0 100px}
.hww-legal .hww-wrap{max-width:780px}
.hww-legal h1{font:var(--hw) clamp(2.4rem,5vw,3.8rem)/1.02 var(--fd);letter-spacing:var(--ht);margin:0 0 36px}
.hww-legal h2{font:var(--hw) 1.45rem/1.2 var(--fd);letter-spacing:var(--ht);margin:44px 0 14px}
.hww-legal p,.hww-legal li{line-height:1.7;color:color-mix(in srgb,var(--ink) 82%,var(--bg))}
.hww-lg-id{list-style:none;padding:0;margin:18px 0;border-top:1px solid var(--line)}
.hww-lg-id li{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.hww-lg-id span{color:var(--mut);font-size:.9rem}
.hww-lg-tbl{overflow-x:auto;margin:18px 0}
.hww-lg-tbl table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:560px}
.hww-lg-tbl th,.hww-lg-tbl td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid var(--line)}
.hww-lg-tbl th{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.hww-lg-act{color:var(--mut);font-size:.88rem;margin-top:44px}
.hww .page-header{display:none}
body.hww .hww-legal+.page-content{display:none}

/* Menos movimiento si se pide */
@media(prefers-reduced-motion:reduce){
	.hww-menu,.hww-menu nav a,.hww-hdr{transition:none}
	/* Las entradas de Elementor no esconden nada a quien pide menos movimiento. */
	body:not(.elementor-editor-active) .elementor-invisible{visibility:visible!important;opacity:1!important}
	body:not(.elementor-editor-active) .elementor-element.animated{animation:none!important}
	/* Quieta, la cinta se lee como una lista centrada con margen a los lados (sin él se pegaba al borde izquierdo). */
	.hwc-cinta{-webkit-mask:none;mask:none;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
	.hwc-cinta-pista{animation:none;flex-wrap:nowrap;width:max-content;padding-inline:clamp(20px,4vw,40px)}
	.hwc-cinta-in[aria-hidden]{display:none}
	.hwc-cinta-in{white-space:nowrap;padding-right:0}
	.js .hwc-pizarra li{clip-path:none;transition:none}
	.js .hwc-ticket .hwc-tk-papel{transform:none;animation:none}
	.hww-ahora.abierto::before{animation:none}
}
/* Red de seguridad: ningún adorno puede abrir desplazamiento lateral (clip no rompe la cabecera fija) */
html:has(body.hww),body.hww{overflow-x:clip}

/* ── Logo de la demo (símbolo + nombre + tipo de negocio) ───────────────────────────────────────────────────── */
.hww-marca.con-simbolo{gap:12px}
.hww-simbolo{flex:none;display:grid;place-items:center;width:44px;height:44px;color:var(--a)}
.hww-simbolo svg{width:100%;height:100%;display:block}
.hww-marca.con-simbolo .hww-txt{display:flex;flex-direction:column;min-width:0;gap:3px}
.hww-marca.con-simbolo .hww-nombre{position:static;width:auto;height:auto;overflow:hidden;clip:auto;font-size:1.22rem;line-height:1}
.hww-tipo{font:600 .6rem/1.35 var(--fb);padding-top:1px;letter-spacing:.22em;text-transform:uppercase;opacity:.72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hww-heroe-oscuro:not(.hww-sc) .hww-hdr .hww-simbolo{color:#fff}
.hww-pie .hww-simbolo{width:56px;height:56px;color:var(--pa,var(--a))}
.hww-pie .hww-marca.con-simbolo .hww-nombre{font-size:1.5rem}
/* El tipo de negocio no se sale de su columna del pie: se corta con puntos suspensivos. */
.hww-pie .hww-marca.con-simbolo{max-width:100%;min-width:0}
@media (max-width:767px){
	.hww-simbolo{width:36px;height:36px}
	.hww-marca.con-simbolo .hww-nombre{font-size:1.08rem}
	.hww-tipo{font-size:.75rem;letter-spacing:.1em}
}

/* Visor de galerías (assets/hw-webs.js) */
img.hww-lb-foto{cursor:zoom-in}
img.hww-lb-foto:focus-visible{outline:3px solid #fff;outline-offset:-6px}
html.hww-lb-on{overflow:hidden}
.hww-lb{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;background:rgba(10,10,12,.97);opacity:0;transition:opacity .2s ease;-webkit-tap-highlight-color:transparent}
.hww-lb[hidden]{display:none}
.hww-lb.hww-lb-visible{opacity:1}
.hww-lb-fig{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:64px 88px 56px;box-sizing:border-box}
.hww-lb-fig img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:4px;box-shadow:0 20px 60px rgba(0,0,0,.45);transition:opacity .2s ease;user-select:none}
.hww-lb-cargando .hww-lb-fig img{opacity:.35}
.hww-lb button{position:absolute;display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font:300 34px/1 system-ui,sans-serif;cursor:pointer;transition:background .15s ease}
.hww-lb button:hover{background:rgba(255,255,255,.24)}
.hww-lb button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.hww-lb-cerrar{top:14px;right:14px;font-size:30px!important}
.hww-lb-ant{left:18px;top:50%;transform:translateY(-50%)}
.hww-lb-sig{right:18px;top:50%;transform:translateY(-50%)}
.hww-lb-una .hww-lb-ant,.hww-lb-una .hww-lb-sig,.hww-lb-una .hww-lb-cuenta{display:none}
.hww-lb-cuenta{position:absolute;top:28px;left:24px;color:rgba(255,255,255,.75);font:500 .9rem/1 system-ui,sans-serif;letter-spacing:.04em}
@media (max-width:767px){
	.hww-lb-fig{padding:64px 12px 84px}
	.hww-lb-ant,.hww-lb-sig{top:auto;bottom:16px;transform:none;width:48px;height:48px}
	.hww-lb-ant{left:calc(50% - 60px)}
	.hww-lb-sig{right:calc(50% - 60px)}
}
@media (prefers-reduced-motion:reduce){.hww-lb,.hww-lb-fig img{transition:none}}

/* Carta completa con foto fija al lado (hostelería): la foto cambia con la sección que se está leyendo */
.hwc-con-foto{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.hwc-lado{position:sticky;top:calc(var(--hdr,80px) + 24px);margin:0;aspect-ratio:4/5;border-radius:var(--r,0);overflow:hidden;background:var(--soft)}
.hwc-lado img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;scale:1.06;transition:opacity .9s ease,scale 1.6s cubic-bezier(.2,.7,.2,1)}
.hwc-lado img.on{opacity:1;scale:1}
@media(max-width:899px){.hwc-con-foto{grid-template-columns:1fr}.hwc-lado{position:relative;top:auto;aspect-ratio:16/9}}
@media(prefers-reduced-motion:reduce){.hwc-lado img{transition:none}}

/* Tablero en móvil: sin la columna de sección, la letra se ajusta a nombre + precio */
/* p50 · N1: en móvil el tablero de salidas pasa a lista legible (antes encogía la letra a 5-7 px con nombres largos). */
@media(max-width:767px){.hwc-tablero{font-size:15px!important;padding:16px 14px}.hwc-tb-cab{font-size:12px}.hwc-tb-cab,.hwc-tb-fila{grid-template-columns:minmax(0,1fr) max-content!important;align-items:baseline}.hwc-tb-fila{padding:9px 0;border-bottom:1px solid #222}.hwc-tb-fila:last-child{border-bottom:0}.hwc-fl{display:block!important;white-space:normal!important;overflow:visible!important;line-height:1.35}.hwc-tb-pr{text-align:right;white-space:nowrap!important}.hwc-fl .fc{display:inline!important;width:auto!important;height:auto!important;background:none!important;box-shadow:none!important}.hwc-fl .fc::after{display:none}}
/* p50 · N2: tablero estrecho (lo decide hw-webs.js con el ancho real): sin la columna de sección. */
.hwc-tablero.hwc-tb-sin-cat .hwc-tb-cab,.hwc-tablero.hwc-tb-sin-cat .hwc-tb-fila{grid-template-columns:max-content max-content}.hwc-tablero.hwc-tb-sin-cat .hwc-tb-cat,.hwc-tablero.hwc-tb-sin-cat .hwc-tb-cab span:nth-child(2){display:none!important}
/* «Desde» sin foto: tarjeta de texto con el precio grande */
.hwc-ds.sin-foto{justify-content:space-between;min-height:260px;background:var(--surface)}
.hwc-ds.sin-foto .hwc-ds-txt{height:100%;align-content:space-between;padding:30px}
.hwc-ds.sin-foto .hwc-ds-pr .hwc-pg{font-size:clamp(2.6rem,4vw,3.4rem)}

/* Tabla de tarifas en móvil: tarjetas (la tabla se salía por la derecha) */
.hwc-tt-movil{display:none}
@media(max-width:767px){.hwc-tabla .hwc-tt-scroll{display:none}.hwc-tt-movil{display:grid;gap:26px;padding-top:16px}.hwc-tt-movil .hwc-pl{gap:14px}}
/* Carrusel de tarifas en móvil: también con flechas, para que se vea que hay más */
@media(max-width:767px){.hwc-sl-nav{display:flex}.hwc-sl-nav button{width:46px;height:46px}}
/* Pie: el tipo de negocio bajo el logo puede ser largo; que parta línea y no invada la columna de al lado */
.hww-pie-marca .hww-marca{max-width:100%}.hww-pie-marca .hww-tipo{white-space:normal;max-width:30ch}
/* p50 · N2: sello «Precios de ejemplo» de la carta, solo en las demos del modelo (lo pinta HWW_Widgets::carta). */
.hwc-con-sello{width:100%;min-width:0}
.hwc-sello-ej{display:table;margin:0 auto 16px;padding:5px 12px;border:1px solid currentColor;border-radius:999px;font:600 12px/1.2 var(--fb,system-ui);letter-spacing:.12em;text-transform:uppercase;color:inherit}

/* p50 · N5: cabecera móvil. El botón de menú nunca se recorta; la marca y su subtítulo ceden (elipsis) y el subtítulo se oculta por debajo de 420px. */
.hww-burger,.hww-hdr-act{flex:none}
.hww-hdr-in>.hww-marca,.hww-hdr-in>a.hww-marca{min-width:0;flex:0 1 auto;max-width:calc(100% - 140px)}
.hww-marca>span,.hww-txt{min-width:0}.hww-txt{overflow:hidden}
.hww-tipo{display:block;max-width:100%}
@media(max-width:420px){.hww-tipo{display:none}.hww-marca img{max-width:120px}
	/* N6: el nombre largo del negocio baja a dos líneas con letra menor en vez de cortarse contra el botón del menú */
	.hww-hdr .hww-marca .hww-nombre{white-space:normal;font-size:.95rem;line-height:1.08;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
	.hww-hdr-in>.hww-marca,.hww-hdr-in>a.hww-marca{max-width:calc(100% - 64px)}}
