/* Vista previa: emula lo mínimo del CSS de WordPress. El diseño real está en wordpress/alebrije/style.css */
@font-face{font-family:"Belvare";font-style:normal;font-weight:300;font-display:swap;src:url(/assets/fonts/Belvare-Light.woff) format("woff")}
@font-face{font-family:"Belvare";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/Belvare-Regular.woff) format("woff")}
@font-face{font-family:"Belvare";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/Belvare-Bold.woff) format("woff")}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:400 900;font-display:swap;src:url(/assets/fonts/PlayfairDisplay-var.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:normal;font-weight:300;font-display:swap;src:url(/assets/fonts/HKGrotesk-Light.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/HKGrotesk-Regular.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/HKGrotesk-Medium.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/HKGrotesk-SemiBold.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/HKGrotesk-Bold.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/HKGrotesk-ExtraBold.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:normal;font-weight:900;font-display:swap;src:url(/assets/fonts/HKGrotesk-Black.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:italic;font-weight:400 500;font-display:swap;src:url(/assets/fonts/HKGrotesk-Italic.woff) format("woff")}
@font-face{font-family:"HK Grotesk";font-style:italic;font-weight:600 700;font-display:swap;src:url(/assets/fonts/HKGrotesk-BoldItalic.woff) format("woff")}
:root{
--wp--preset--color--marigold:#FFA900;
--wp--preset--color--marigold-dark:#C38600;
--wp--preset--color--marigold-light:#FFCB66;
--wp--preset--color--marigold-pale:#FFEECC;
--wp--preset--color--terracotta:#C54B48;
--wp--preset--color--granate:#8B0021;
--wp--preset--color--rosa-pale:#FCE3E0;
--wp--preset--color--talavera:#197C99;
--wp--preset--color--talavera-dark:#104C61;
--wp--preset--color--talavera-night:#082631;
--wp--preset--color--talavera-pale:#EFF7F9;
--wp--preset--color--hibiscus:#E34166;
--wp--preset--color--orange:#D05522;
--wp--preset--color--green:#848830;
--wp--preset--color--ink:#23201F;
--wp--preset--color--stone:#6B605B;
--wp--preset--color--sand:#DBD6CF;
--wp--preset--color--cream:#F4F3F0;
--wp--preset--color--white:#FFFFFF;
--wp--preset--gradient--amanecer:linear-gradient(180deg, #FFEECC 0%, #FFCB66 55%, #FFA900 100%);
--wp--preset--gradient--tira-alebrije:linear-gradient(90deg, #197C99 0%, #FFA900 38%, #C54B48 70%, #E34166 100%);
--wp--preset--gradient--alebrije:radial-gradient(circle at 0% 100%, #197C99 0%, rgba(25,124,153,0) 55%), radial-gradient(circle at 25% 0%, #FFA900 0%, rgba(255,169,0,0) 50%), radial-gradient(circle at 100% 30%, #E34166 0%, rgba(227,65,102,0) 55%), #8B0021;
--wp--preset--font-family--display:'Belvare', 'Playfair Display', Georgia, serif;
--wp--preset--font-family--heading:'Playfair Display', Georgia, 'Times New Roman', serif;
--wp--preset--font-family--body:'HK Grotesk', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
--wp--preset--font-size--small:0.875rem;
--wp--preset--font-size--medium:1.0625rem;
--wp--preset--font-size--large:clamp(1.125rem,1rem + 1.1vw,1.4rem);
--wp--preset--font-size--x-large:clamp(1.6rem,1rem + 1.1vw,2.25rem);
--wp--preset--font-size--xx-large:clamp(2.25rem,1rem + 1.1vw,3.5rem);
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--wp--preset--color--cream);color:var(--wp--preset--color--ink);font-family:var(--wp--preset--font-family--body);font-size:var(--wp--preset--font-size--medium);line-height:1.65}
h1,h2,h3,h4{font-family:var(--wp--preset--font-family--heading);font-weight:700;line-height:1.15;color:var(--wp--preset--color--talavera-dark)}
h1,h2{font-family:var(--wp--preset--font-family--display)}
h1{font-size:var(--wp--preset--font-size--xx-large)}h2{font-size:var(--wp--preset--font-size--x-large)}h3{font-size:var(--wp--preset--font-size--large)}
a{color:var(--wp--preset--color--talavera-dark)}a:hover{color:var(--wp--preset--color--granate)}
.wp-site-blocks>*{margin-block-start:0;margin-block-end:0}
:where(.is-layout-constrained)>*,:where(.is-layout-flow)>*{margin-block-start:0;margin-block-end:0}
:where(.is-layout-constrained)>*+*,:where(.is-layout-flow)>*+*{margin-block-start:1.25rem}
.is-layout-constrained>:where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width:40rem;margin-left:auto !important;margin-right:auto !important}
.is-layout-flex{display:flex;flex-wrap:wrap;gap:.5em;align-items:center}
.is-nowrap{flex-wrap:nowrap}
.is-content-justification-center{justify-content:center}
.is-content-justification-space-between{justify-content:space-between}
.is-content-justification-right{justify-content:flex-end}
.wp-block-columns{display:flex;gap:2em;flex-wrap:nowrap;align-items:normal}
.wp-block-column{flex-basis:0;flex-grow:1;min-width:0}
@media(max-width:781px){.wp-block-columns{flex-wrap:wrap;flex-direction:column}.wp-block-column{flex-basis:100%}}
.wp-block-image img{display:block}
.wp-block-list{margin-block:0}
.wp-block-details summary{cursor:pointer}
.wp-block-button__link{display:inline-block;cursor:pointer}
header.preview-header{position:sticky;top:0;z-index:50}
.pv-nav ul{display:flex;gap:1rem;list-style:none;margin:0;padding:0;font-weight:600}
.pv-nav a{text-decoration:none;padding:.35rem .2rem}
.pv-burger{display:none;background:none;border:0;font-size:1.9rem;line-height:1;cursor:pointer;color:var(--wp--preset--color--talavera-dark);padding:.2rem .5rem}
@media(max-width:600px){.pv-nav ul{display:none;position:absolute;left:0;right:0;top:100%;background:var(--wp--preset--color--talavera-dark);flex-direction:column;padding:1.2rem 1.25rem 1.6rem;gap:.4rem}.pv-nav ul.open{display:flex}.pv-nav a{color:#fff;font-family:var(--wp--preset--font-family--heading);font-size:1.6rem;font-weight:700}.pv-burger{display:block}}

/*
Theme Name: Alebrije Cafè Surrealista
Theme URI: https://alebrije.cafe
Author: Alebrije Cafè Surrealista
Description: Tema de bloques gratuito, ligero y pensado para móvil (diseño vertical) con la identidad de marca de Alebrije Cafè Surrealista (Barcelona): paleta, tipografías, logotipos, SEO local y datos estructurados. Sin plugins de maquetación: todo se edita desde el editor de WordPress.
Requires at least: 6.6
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alebrije
*/

/* ==========================================================================
   Base
   ========================================================================== */
html { scroll-behavior: smooth; scroll-padding-top: 5rem; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; animation: none !important; } }

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: hidden; }
img, svg { max-width: 100%; height: auto; }
a { text-underline-offset: .2em; text-decoration-thickness: 1px; }
a:focus-visible, button:focus-visible, summary:focus-visible, .wp-block-button__link:focus-visible {
	outline: 3px solid var(--wp--preset--color--hibiscus);
	outline-offset: 3px;
	border-radius: .25rem;
}
h1, h2, h3, h4 { text-wrap: balance; }
p { text-wrap: pretty; }
strong { font-weight: 700; }

/* ==========================================================================
   Cabecera (pegajosa, limpia, móvil primero)
   ========================================================================== */
header.wp-block-template-part { position: sticky; top: 0; z-index: 50; }
.admin-bar header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) { .admin-bar header.wp-block-template-part { top: 46px; } }
.alebrije-header-wrap { background: var(--wp--preset--color--white); border-bottom: 1px solid var(--wp--preset--color--sand); }
.alebrije-header-wrap::after { content: ""; display: block; height: 5px; background: var(--wp--preset--gradient--tira-alebrije); }
.alebrije-header { padding: .6rem 1.25rem; max-width: 64rem; margin-inline: auto; align-items: center; gap: 1rem; }
.alebrije-header .alebrije-logo { margin: 0; line-height: 0; flex: 0 0 auto; }
.alebrije-header .alebrije-logo img { display: block; width: 132px; height: auto; }
.alebrije-header .wp-block-navigation { font-weight: 600; font-size: var(--wp--preset--font-size--medium); }
.alebrije-header .wp-block-navigation a { text-decoration: none; padding: .35rem .2rem; }
.alebrije-header .wp-block-navigation a:hover { color: var(--wp--preset--color--granate); text-decoration: underline; }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--talavera-dark) !important; color: var(--wp--preset--color--white) !important; }
.wp-block-navigation__responsive-container.is-menu-open a { font-family: var(--wp--preset--font-family--heading); font-size: 1.75rem; font-weight: 700; }

/* ==========================================================================
   Secciones (diseño vertical)
   ========================================================================== */
.alebrije-main { margin: 0; padding: 0; }
.alebrije-main--page { padding: 2.25rem 1.25rem 4rem; }
.alebrije-main--page > .wp-block-post-title { margin-bottom: 1.25rem; }

.alebrije-section { padding: clamp(2.5rem, 8vw, 4.5rem) 1.25rem; text-align: center; }
.alebrije-section > * { margin-block-start: 0; }
.alebrije-section > * + * { margin-block-start: 1.1rem; }
.alebrije-section > h2 + * { margin-block-start: .9rem; }

.alebrije-bg-cream { background: var(--wp--preset--color--cream); }
.alebrije-bg-white { background: var(--wp--preset--color--white); }
.alebrije-bg-marigold-pale { background: var(--wp--preset--color--marigold-pale); }
.alebrije-bg-rosa { background: var(--wp--preset--color--rosa-pale); }
.alebrije-bg-marigold { background: var(--wp--preset--color--marigold); color: var(--wp--preset--color--talavera-night); }
.alebrije-bg-marigold h2, .alebrije-bg-marigold h3 { color: var(--wp--preset--color--talavera-night); }
.alebrije-bg-teal { background: var(--wp--preset--color--talavera-dark); color: var(--wp--preset--color--white); }
.alebrije-bg-teal h2, .alebrije-bg-teal h3 { color: var(--wp--preset--color--marigold); }
.alebrije-bg-teal a:not(.wp-block-button__link) { color: var(--wp--preset--color--marigold-light); }

/* Héroe: amanecer marigold con titular grande */
.alebrije-hero { background: var(--wp--preset--gradient--amanecer); color: var(--wp--preset--color--talavera-night); padding-top: clamp(3rem, 10vw, 6rem); padding-bottom: clamp(3rem, 10vw, 6rem); }
.alebrije-hero h1 { font-size: clamp(2.25rem, 9vw, 4rem); line-height: 1.05; color: var(--wp--preset--color--talavera-dark); margin-block: .6rem 0; }
.alebrije-lead { font-size: var(--wp--preset--font-size--large); line-height: 1.5; }
.alebrije-eyebrow { font-size: var(--wp--preset--font-size--small); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--granate); margin-block-end: 0; }
.alebrije-bg-teal .alebrije-eyebrow { color: var(--wp--preset--color--marigold-light); }
.alebrije-hours { font-size: var(--wp--preset--font-size--small); font-weight: 600; }

/* Puntos decorativos del logotipo */
.alebrije-dots { display: flex; justify-content: center; gap: .55rem; margin: 1.4rem auto 0; }
.alebrije-dots span { width: .7rem; height: .7rem; border-radius: 50%; background: var(--wp--preset--color--terracotta); }
.alebrije-dots span:nth-child(1) { background: var(--wp--preset--color--talavera); }
.alebrije-dots span:nth-child(2) { background: var(--wp--preset--color--marigold); }
.alebrije-dots span:nth-child(3) { background: var(--wp--preset--color--terracotta); }
.alebrije-dots span:nth-child(4) { background: var(--wp--preset--color--hibiscus); }
.alebrije-dots span:nth-child(5) { background: var(--wp--preset--color--green); }
.alebrije-hero .alebrije-dots span:nth-child(2) { background: var(--wp--preset--color--granate); }
.alebrije-hero .alebrije-dots span:nth-child(3) { background: var(--wp--preset--color--hibiscus); }
.alebrije-hero .alebrije-dots span:nth-child(4) { background: var(--wp--preset--color--talavera-dark); }
.alebrije-hero--small { padding-top: clamp(2.25rem, 7vw, 4rem); padding-bottom: clamp(2.25rem, 7vw, 4rem); }
.alebrije-hero--small h1 { font-size: clamp(2rem, 7.5vw, 3.25rem); }

/* ==========================================================================
   Tarjetas
   ========================================================================== */
.alebrije-section > .alebrije-cards { max-width: 64rem; gap: 1rem; margin-top: 1.75rem; text-align: left; }
.alebrije-cards .wp-block-column { display: flex; }
.alebrije-card { background: var(--wp--preset--color--white); border: 1px solid var(--wp--preset--color--sand); border-top: .45rem solid var(--wp--preset--color--marigold); border-radius: 1.1rem; padding: 1.4rem 1.35rem 1.5rem; width: 100%; box-shadow: 0 1px 0 rgba(35,32,31,.04); }
.alebrije-cards .wp-block-column:nth-child(2) .alebrije-card { border-top-color: var(--wp--preset--color--terracotta); }
.alebrije-cards .wp-block-column:nth-child(3) .alebrije-card { border-top-color: var(--wp--preset--color--talavera); }
.alebrije-card h3 { font-size: var(--wp--preset--font-size--large); margin: 0 0 .5rem; }
.alebrije-card p { margin: 0 0 .75rem; }
.alebrije-card p:last-child { margin-bottom: 0; }
.alebrije-card a { font-weight: 700; }
.alebrije-card .alebrije-meta { font-size: var(--wp--preset--font-size--small); font-weight: 700; color: var(--wp--preset--color--granate); text-transform: uppercase; letter-spacing: .08em; }

.alebrije-quote { font-family: var(--wp--preset--font-family--heading); font-size: clamp(1.3rem, 4.6vw, 1.75rem); line-height: 1.35; font-weight: 600; }

/* Lista de pasos */
.alebrije-steps { text-align: left; padding-left: 1.4rem; display: grid; gap: .7rem; }
.alebrije-steps li::marker { font-weight: 800; color: var(--wp--preset--color--granate); }

/* Datos de contacto */
.alebrije-info { list-style: none; padding: 0; margin: 0; display: grid; gap: .9rem; text-align: left; }
.alebrije-info li { background: var(--wp--preset--color--white); border: 1px solid var(--wp--preset--color--sand); border-radius: 1rem; padding: 1rem 1.2rem; }
.alebrije-info strong { display: block; font-size: var(--wp--preset--font-size--small); letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--granate); margin-bottom: .15rem; }

/* ==========================================================================
   Botones
   ========================================================================== */
.wp-block-buttons { gap: .75rem; }
.wp-block-button__link, .wp-element-button {
	background: var(--wp--preset--color--talavera-dark);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--body);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.2;
	text-decoration: none;
	border: 2px solid var(--wp--preset--color--talavera-dark);
	border-radius: 999px;
	padding: .85rem 1.6rem;
	min-height: 3rem;
	display: inline-flex; align-items: center; justify-content: center;
	transition: background-color .15s ease, color .15s ease, transform .15s ease;
}
.wp-block-button__link:hover, .wp-element-button:hover { background: var(--wp--preset--color--talavera-night); border-color: var(--wp--preset--color--talavera-night); color: var(--wp--preset--color--white); transform: translateY(-1px); }
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--wp--preset--color--talavera-dark); border-color: var(--wp--preset--color--talavera-dark); }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--wp--preset--color--talavera-dark); color: var(--wp--preset--color--white); }
/* Botones sobre fondo oscuro */
.alebrije-bg-teal .wp-block-button__link { background: var(--wp--preset--color--marigold); border-color: var(--wp--preset--color--marigold); color: var(--wp--preset--color--talavera-night); }
.alebrije-bg-teal .wp-block-button__link:hover { background: var(--wp--preset--color--marigold-light); border-color: var(--wp--preset--color--marigold-light); color: var(--wp--preset--color--talavera-night); }
.alebrije-bg-teal .wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--wp--preset--color--white); border-color: var(--wp--preset--color--white); }
.alebrije-bg-teal .wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--wp--preset--color--white); color: var(--wp--preset--color--talavera-dark); }
/* Botones sobre marigold */
.alebrije-bg-marigold .wp-block-button.is-style-outline .wp-block-button__link { color: var(--wp--preset--color--talavera-night); border-color: var(--wp--preset--color--talavera-night); }
.alebrije-bg-marigold .wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--wp--preset--color--talavera-night); color: var(--wp--preset--color--white); }

/* ==========================================================================
   Preguntas frecuentes (bloque Detalles)
   ========================================================================== */
.alebrije-section > .alebrije-faq { max-width: 40rem; text-align: left; display: grid; gap: .75rem; }
.wp-block-details { background: var(--wp--preset--color--white); border: 1px solid var(--wp--preset--color--sand); border-radius: 1rem; padding: 0; overflow: hidden; margin: 0 0 .75rem; text-align: left; }
.wp-block-details summary { cursor: pointer; font-weight: 700; padding: 1rem 1.2rem; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; min-height: 3.25rem; }
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after { content: "+"; font-size: 1.6rem; line-height: 1; font-weight: 400; color: var(--wp--preset--color--terracotta); flex: 0 0 auto; }
.wp-block-details[open] summary::after { content: "–"; }
.wp-block-details > :not(summary) { padding: 0 1.2rem; margin: 0 0 1rem; }
.wp-block-details[open] { border-color: var(--wp--preset--color--marigold); }

/* ==========================================================================
   Páginas de texto (legales, carta...)
   ========================================================================== */
.alebrije-main--page h2 { margin-top: 2rem; font-size: var(--wp--preset--font-size--large); }
.alebrije-main--page ul, .alebrije-main--page ol { padding-left: 1.4rem; }
.alebrije-main--page li { margin-block: .35rem; }
.alebrije-updated { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--stone); }

/* ==========================================================================
   Pie de página
   ========================================================================== */
.alebrije-footer { background: var(--wp--preset--color--talavera-dark); color: var(--wp--preset--color--white); padding: 3rem 1.25rem 2rem; margin-top: 0; }
.alebrije-footer-inner { max-width: 64rem; margin-inline: auto; }
.alebrije-footer a { color: var(--wp--preset--color--marigold-light); text-decoration: underline; }
.alebrije-footer a:hover { color: var(--wp--preset--color--white); }
.alebrije-footer h2 { font-family: var(--wp--preset--font-family--body); font-size: var(--wp--preset--font-size--small); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--marigold); margin: 0 0 .6rem; }
.alebrije-footer p { margin: 0 0 .6rem; }
.alebrije-footer .alebrije-footer-logo { margin: 0 0 1rem; line-height: 0; }
.alebrije-footer .alebrije-footer-logo img { width: 210px; height: auto; }
.alebrije-footer .alebrije-links { list-style: none; padding: 0; margin: 0; display: grid; gap: .1rem; }
.alebrije-footer .alebrije-links li { margin: 0; }
.alebrije-footer .alebrije-links a { display: inline-block; padding: .4rem 0; text-decoration: none; }
.alebrije-footer .alebrije-links a:hover { text-decoration: underline; }
.alebrije-footer .wp-block-columns { gap: 2rem; margin-top: 1.75rem; }
.alebrije-footer .alebrije-fineprint { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--talavera-pale); border-top: 1px solid rgba(255,255,255,.2); padding-top: 1.25rem; margin-top: 1.75rem; }
.alebrije-footer .alebrije-fineprint p { margin: 0 0 .4rem; }

/* ==========================================================================
   Pantallas grandes: mantener el diseño vertical, solo un poco más amplio
   ========================================================================== */
@media (min-width: 782px) {
	.alebrije-header .alebrije-logo img { width: 158px; }
	.alebrije-section > .alebrije-cards { gap: 1.25rem; }
}

/* Carta */
.alebrije-menu-grid { display: grid; gap: 1.1rem; grid-template-columns: 1fr; text-align: left; margin-top: 1rem; }
.alebrije-menu-grid .alebrije-card { margin: 0; }
.alebrije-menu { list-style: none; margin: 0 0 .8rem; padding: 0; display: grid; gap: .55rem; }
.alebrije-menu li { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding-bottom: .45rem; border-bottom: 1px dotted var(--wp--preset--color--sand); }
.alebrije-menu li:last-child { border-bottom: 0; padding-bottom: 0; }
.alebrije-menu .alebrije-name { font-weight: 600; }
.alebrije-menu .alebrije-name em { font-weight: 400; font-style: italic; color: var(--wp--preset--color--stone); }
.alebrije-menu .alebrije-name small { display: block; font-weight: 400; font-style: italic; color: var(--wp--preset--color--stone); margin-top: .1rem; }
.alebrije-menu .alebrije-price { font-weight: 800; white-space: nowrap; color: var(--wp--preset--color--talavera-dark); }
.alebrije-section > .alebrije-faq .wp-block-details > .alebrije-menu-grid { margin-bottom: 1rem; }
@media (min-width: 782px) { .alebrije-menu-grid { grid-template-columns: 1fr 1fr; align-items: start; } }

.site-header{position:sticky;top:0;z-index:50}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#104C61;padding:.6rem 1rem;z-index:100}.skip:focus{left:.5rem;top:.5rem}
.pv-burger:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #197C99;outline-offset:2px}
[hidden]{display:none!important}
