/* El Taller de Teo · hoja única del tema */

:root {
	--tt-base: var(--wp--preset--color--base, #F7F3EE);
	--tt-surface: var(--wp--preset--color--surface, #FFFFFF);
	--tt-arena: var(--wp--preset--color--arena, #ECE3D6);
	--tt-line: var(--wp--preset--color--line, #E2D8CA);
	--tt-rojo: var(--wp--preset--color--rojo, #C63D32);
	--tt-rojo-oscuro: var(--wp--preset--color--rojo-oscuro, #A2302A);
	--tt-azul: var(--wp--preset--color--azul, #2E5C9A);
	--tt-cuero: var(--wp--preset--color--cuero, #4B3A32);
	--tt-muted: var(--wp--preset--color--muted, #6B635D);
	--tt-carbon: var(--wp--preset--color--contrast, #262626);
	--tt-radius: 10px;
	--tt-shadow: 0 1px 2px rgba(38, 38, 38, .06), 0 8px 24px rgba(38, 38, 38, .08);
	--tt-display: var(--wp--preset--font-family--display, "Barlow Condensed", sans-serif);
}

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--tt-rojo); color: #fff; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
.wp-block-post-content > .alignfull:first-child { margin-top: 0; }
.wp-block-post-content > * + .alignfull,
.wp-block-post-content > .alignfull + * { margin-block-start: 0; }

h1, h2, h3, h4 { text-wrap: balance; }
p { text-wrap: pretty; }

/* ---------- Antetítulo ---------- */
.is-style-antetitulo {
	font-family: var(--tt-display);
	font-weight: 700;
	font-size: 0.95rem !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--tt-rojo);
	margin-bottom: -0.5rem !important;
}
.has-contrast-background-color .is-style-antetitulo,
.has-cuero-background-color .is-style-antetitulo { color: #F0A49C; }

/* ---------- Cabecera ---------- */
.tt-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.admin-bar .tt-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .tt-header { top: 46px; } }
.tt-header__row { gap: 1rem; }
.tt-brand { min-width: 0; }
.tt-brand .wp-block-site-logo img { width: 38px; height: auto; background: var(--tt-base); border-radius: 50%; padding: 4px; box-sizing: content-box; }
.tt-footer .tt-brand .wp-block-site-logo img { width: 44px; }
.tt-brand__name { margin: 0; font-family: var(--tt-display); font-weight: 700; font-size: 1.35rem; letter-spacing: 0.06em; text-transform: uppercase; line-height: 1; white-space: nowrap; }
.tt-brand__name a { color: inherit; text-decoration: none; }
.tt-nav a { color: inherit; text-decoration: none; }
.tt-nav .wp-block-navigation-item__content { padding: 0.35rem 0; border-bottom: 2px solid transparent; transition: border-color .15s; }
.tt-nav .wp-block-navigation-item__content:hover,
.tt-nav .current-menu-item > .wp-block-navigation-item__content { border-bottom-color: var(--tt-rojo); }
.tt-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--tt-carbon); color: #fff; padding: 2rem 1.5rem; }
.tt-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-family: var(--tt-display); font-size: 2rem; font-weight: 700; text-transform: uppercase; }
.tt-header__cta { margin: 0; }
.tt-btn-tel .wp-block-button__link { display: inline-flex; align-items: center; gap: 0.5rem; background: transparent; border: 1.5px solid rgba(255, 255, 255, .5); color: #fff; padding: 0.55rem 1rem; white-space: nowrap; }
.tt-btn-tel .wp-block-button__link::before { content: ""; width: 18px; height: 18px; background: currentColor; -webkit-mask: var(--tt-i-tel) center / contain no-repeat; mask: var(--tt-i-tel) center / contain no-repeat; }
.tt-btn-tel .wp-block-button__link:hover { background: var(--tt-rojo); border-color: var(--tt-rojo); color: #fff; }
@media (max-width: 600px) {
	.tt-brand__name { font-size: 1.1rem; }
	.tt-btn-tel .wp-block-button__link { font-size: 0; gap: 0; padding: 0.6rem; }
	.tt-header__actions { gap: 0.75rem !important; }
}

/* ---------- Iconos (máscaras SVG) ---------- */
:root {
	--tt-i-tel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2'/%3E%3C/svg%3E");
	--tt-i-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6-5.4-6-11a6 6 0 0 1 12 0c0 5.6-6 11-6 11z'/%3E%3Ccircle cx='12' cy='10' r='2.2'/%3E%3C/svg%3E");
	--tt-i-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
	--tt-i-zapato: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 16V7h4l1.5 3 5 1.5 5.5 1.5a2.5 2.5 0 0 1 2 2.5V16z'/%3E%3Cpath d='M3 19h18'/%3E%3C/svg%3E");
	--tt-i-montana: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 20l7-12 4 6 2-3 7 9z'/%3E%3Cpath d='M7.5 10.5l1.5 1 1.5-1'/%3E%3C/svg%3E");
	--tt-i-gato: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 17c0-4 2-9 6-10l3 1c3 1 7 4 7 7v2z'/%3E%3Cpath d='M4 17h16v2H4z'/%3E%3Cpath d='M9 10l1 2M12 9.5l.5 2.5'/%3E%3C/svg%3E");
	--tt-i-bolso: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9h16l-1.5 11h-13z'/%3E%3Cpath d='M8.5 9V7a3.5 3.5 0 0 1 7 0v2'/%3E%3C/svg%3E");
	--tt-i-cremallera: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M9.5 5h2.5M12 8h2.5M9.5 11h2.5M12 14h2.5'/%3E%3Crect x='9.5' y='16' width='5' height='5' rx='1'/%3E%3C/svg%3E");
	--tt-i-aguja: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 3L6 16l-2 5 5-2L22 6z'/%3E%3Cpath d='M17 5l2 2'/%3E%3Cpath d='M3 10c3-3 6 0 9-3'/%3E%3C/svg%3E");
	--tt-i-deportiva: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 15V8l4 1 3 3 6 1.5c3 .7 5 1.8 5 3.5v1H3z'/%3E%3Cpath d='M3 19h18M9 11l1.5-1.5M11 12.5l1.5-1.5'/%3E%3C/svg%3E");
	--tt-i-cartera: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='13' rx='2'/%3E%3Cpath d='M15 11h6v4h-6a2 2 0 0 1 0-4z'/%3E%3Cpath d='M3 9h18'/%3E%3C/svg%3E");
	--tt-i-llave: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C63D32' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7.5' cy='12' r='4'/%3E%3Cpath d='M11.5 12H21v3M17 12v2.5'/%3E%3C/svg%3E");
	--tt-i-estrella: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 3l2.7 5.6 6.1.9-4.4 4.3 1 6.1L12 17l-5.4 2.9 1-6.1-4.4-4.3 6.1-.9z'/%3E%3C/svg%3E");
	--tt-i-escudo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E");
}

/* Encabezado con icono: añade la clase tt-ic + tt-ic--nombre al bloque */
.tt-ic { display: flex; flex-direction: column; gap: 0.85rem; }
.tt-ic::before { content: ""; display: block; width: 54px; height: 54px; border-radius: 12px; flex: none; background: var(--tt-arena) var(--tt-i, var(--tt-i-zapato)) center / 30px no-repeat; }
.tt-ic--zapato { --tt-i: var(--tt-i-zapato); }
.tt-ic--montana { --tt-i: var(--tt-i-montana); }
.tt-ic--gato { --tt-i: var(--tt-i-gato); }
.tt-ic--bolso { --tt-i: var(--tt-i-bolso); }
.tt-ic--cremallera { --tt-i: var(--tt-i-cremallera); }
.tt-ic--aguja { --tt-i: var(--tt-i-aguja); }
.tt-ic--deportiva { --tt-i: var(--tt-i-deportiva); }
.tt-ic--cartera { --tt-i: var(--tt-i-cartera); }
.tt-ic--llave { --tt-i: var(--tt-i-llave); }

/* ---------- Tarjeta ---------- */
.wp-block-group.is-style-tarjeta {
	background: var(--tt-surface);
	border-radius: var(--tt-radius);
	box-shadow: var(--tt-shadow);
	padding: clamp(1.25rem, 2.5vw, 1.9rem);
	height: 100%;
	box-sizing: border-box;
}
.wp-block-group.is-style-tarjeta > * { margin-block: 0; }
.wp-block-group.is-style-tarjeta > * + * { margin-block-start: 0.75rem; }
.wp-block-group.is-style-tarjeta h3 { font-size: 1.6rem; }
.wp-block-group.is-style-tarjeta p { color: var(--tt-muted); }
.wp-block-columns.tt-grid { gap: 1.25rem; }
.wp-block-columns.tt-grid > .wp-block-column { display: flex; flex-direction: column; }

/* ---------- Imagen con marco ---------- */
.wp-block-image.is-style-marco img { border-radius: var(--tt-radius); box-shadow: 0 2px 4px rgba(38, 38, 38, .08), 0 18px 40px rgba(38, 38, 38, .14); }
.wp-block-image img { border-radius: var(--tt-radius); }

/* ---------- Lista con marcas ---------- */
.wp-block-list.is-style-check { list-style: none; padding-left: 0; }
.wp-block-list.is-style-check li { position: relative; padding-left: 1.9rem; margin-bottom: 0.5rem; }
.wp-block-list.is-style-check li::before { content: ""; position: absolute; left: 0; top: 0.2em; width: 1.25rem; height: 1.25rem; background: var(--tt-rojo); -webkit-mask: var(--tt-i-check) center / contain no-repeat; mask: var(--tt-i-check) center / contain no-repeat; }

/* ---------- Portada ---------- */
.tt-hero { position: relative; overflow: hidden; }
.tt-hero h1 { font-size: clamp(2.75rem, 6.2vw, 4.9rem); line-height: 0.98; text-transform: uppercase; letter-spacing: 0.01em; }
.tt-hero h1 em { font-style: normal; color: var(--tt-rojo); }
.tt-hero__lead { font-size: 1.2rem; max-width: 34em; color: var(--tt-cuero); }
.tt-hero__media { position: relative; }
.tt-hero__media .wp-block-image img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }
.tt-hero__figura { position: absolute !important; left: -38px; bottom: -30px; width: 140px; height: 140px; margin: 0 !important; background: var(--tt-base); border-radius: 50%; box-shadow: var(--tt-shadow); display: flex; align-items: center; justify-content: center; }
.tt-hero__figura img { width: 92px !important; height: 116px !important; box-shadow: none !important; border-radius: 0 !important; aspect-ratio: auto !important; object-fit: contain !important; }
@media (max-width: 781px) {
	.tt-hero__figura { left: 12px; bottom: -24px; width: 108px; height: 108px; }
	.tt-hero__figura img { width: 70px !important; height: 90px !important; }
	.tt-hero__media .wp-block-image img { aspect-ratio: 4 / 3; }
}

/* Botón de contorno */
.wp-block-button.is-style-outline > .wp-block-button__link { border: 2px solid currentColor; background: transparent; color: inherit; padding: calc(0.85rem - 2px) calc(1.5rem - 2px); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--tt-carbon); border-color: var(--tt-carbon); color: #fff; }
.has-contrast-background-color .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.has-cuero-background-color .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: #fff; border-color: #fff; color: var(--tt-carbon); }

/* ---------- Franja de datos ---------- */
.tt-strip p { margin: 0; line-height: 1.35; }
.tt-strip strong { display: block; font-family: var(--tt-display); font-size: 1.45rem; letter-spacing: 0.02em; color: #fff; }
.tt-strip .wp-block-column { display: flex; gap: 0.9rem; align-items: center; }
.tt-strip .wp-block-column::before { content: ""; flex: none; width: 40px; height: 40px; background: var(--tt-rojo); -webkit-mask: var(--tt-i, var(--tt-i-check)) center / contain no-repeat; mask: var(--tt-i, var(--tt-i-check)) center / contain no-repeat; }
.tt-strip .tt-strip--estrella { --tt-i: var(--tt-i-estrella); }
.tt-strip .tt-strip--escudo { --tt-i: var(--tt-i-escudo); }
.tt-strip .tt-strip--pin { --tt-i: var(--tt-i-pin); }

/* ---------- Antes y después ---------- */
.tt-antes-despues { gap: clamp(1rem, 3vw, 2rem); }
.tt-antes-despues .wp-block-image { position: relative; margin: 0; }
.tt-antes-despues .wp-block-image img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.tt-antes-despues .wp-element-caption { position: absolute; left: 14px; top: 14px; margin: 0; padding: 0.35rem 0.8rem; border-radius: 999px; background: rgba(38, 38, 38, .85); color: #fff; font-family: var(--tt-display); font-weight: 700; font-size: 1rem; letter-spacing: 0.1em; text-transform: uppercase; }
.tt-antes-despues .wp-block-column:last-child .wp-element-caption { background: var(--tt-rojo); }

/* ---------- Galería de trabajos ---------- */
.wp-block-gallery.is-style-trabajos { gap: 12px !important; }
.wp-block-gallery.is-style-trabajos .wp-block-image { overflow: hidden; border-radius: var(--tt-radius); }
.wp-block-gallery.is-style-trabajos .wp-block-image img { aspect-ratio: 1 / 1; object-fit: cover; transition: transform .35s ease; border-radius: 0; }
.wp-block-gallery.is-style-trabajos .wp-block-image:hover img { transform: scale(1.04); }
.wp-block-gallery.is-style-trabajos .wp-element-caption { font-size: 0.85rem; background: linear-gradient(transparent, rgba(0, 0, 0, .7)); }

/* ---------- Bandas oscuras ---------- */
.has-contrast-background-color a:where(:not(.wp-element-button)),
.has-cuero-background-color a:where(:not(.wp-element-button)) { color: inherit; }
.has-contrast-background-color a:where(:not(.wp-element-button)):hover,
.has-cuero-background-color a:where(:not(.wp-element-button)):hover { color: #fff; }

/* ---------- Pie ---------- */
.tt-footer h4 { font-family: var(--tt-display); font-size: 1.15rem; letter-spacing: 0.08em; text-transform: uppercase; color: #fff; margin-bottom: 0.75rem; }
.tt-footer .tt-brand__name { color: #fff; }
.tt-footer__links { list-style: none; padding: 0; }
.tt-footer__links li { margin-bottom: 0.35rem; }
.tt-footer a { text-decoration: none; }
.tt-footer a:hover { text-decoration: underline; }
.tt-footer__bottom { margin-top: var(--wp--preset--spacing--50) !important; padding-top: 1.25rem; border-top: 1px solid rgba(255, 255, 255, .12); gap: 1rem; }
.tt-footer__bottom p { margin: 0; opacity: .85; }
.tt-redes { display: flex; gap: 0.6rem; margin-top: 0.75rem; }
.tt-redes a { display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; border-radius: 50%; border: 1.5px solid rgba(255, 255, 255, .3); color: #fff; }
.tt-redes a:hover { background: var(--tt-rojo); border-color: var(--tt-rojo); }
.tt-redes svg { width: 20px; height: 20px; }
.tt-madeby { display: inline-flex; align-items: center; gap: 0.45rem; font-size: 0.85rem; color: inherit; opacity: .8; text-decoration: none !important; }
.tt-madeby:hover { opacity: 1; }
.tt-madeby img { height: 18px; width: auto; display: block; }

/* ---------- Páginas de texto ---------- */
.tt-page > .wp-block-post-title { margin-bottom: var(--wp--preset--spacing--40); text-transform: uppercase; }
.tt-page h2 { font-size: var(--wp--preset--font-size--x-large); margin-top: 2.25rem; }
.tt-page table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.tt-page th, .tt-page td { text-align: left; padding: 0.6rem 0.75rem; border-bottom: 1px solid var(--tt-line); vertical-align: top; }
.tt-page th { font-weight: 600; background: var(--tt-arena); }
.tt-hueco { background: #FFF1B8; color: #5A4500; padding: 0 0.3em; border-radius: 3px; }

/* ---------- Mapa ---------- */
.tt-mapa { position: relative; border-radius: var(--tt-radius); overflow: hidden; background: var(--tt-arena); min-height: 360px; box-shadow: var(--tt-shadow); }
.tt-mapa iframe { display: block; width: 100%; height: 400px; border: 0; }
.tt-mapa__ph { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.75rem; padding: 1.5rem; text-align: center; color: var(--tt-cuero); }
.tt-mapa__ph p { margin: 0; max-width: 26em; }
.tt-mapa__ph button { font: inherit; font-weight: 600; cursor: pointer; border: 0; border-radius: 8px; padding: 0.7rem 1.2rem; background: var(--tt-rojo); color: #fff; }

/* ---------- Formulario de contacto ---------- */
.tt-form { display: grid; gap: 1rem; }
.tt-form__fila { display: grid; gap: 1rem; grid-template-columns: 1fr 1fr; }
@media (max-width: 600px) { .tt-form__fila { grid-template-columns: 1fr; } }
.tt-form label { display: block; font-weight: 600; font-size: 0.95rem; margin-bottom: 0.35rem; }
.tt-form input[type="text"], .tt-form input[type="email"], .tt-form input[type="tel"], .tt-form textarea {
	width: 100%; box-sizing: border-box; font: inherit; color: inherit; background: var(--tt-surface);
	border: 1.5px solid var(--tt-line); border-radius: 8px; padding: 0.75rem 0.9rem;
}
.tt-form input:focus, .tt-form textarea:focus { outline: 2px solid var(--tt-azul); outline-offset: 1px; border-color: var(--tt-azul); }
.tt-form textarea { min-height: 150px; resize: vertical; }
.tt-form__legal { font-size: 0.9rem; color: var(--tt-muted); display: flex; gap: 0.5rem; align-items: flex-start; }
.tt-form__legal input { margin-top: 0.3rem; }
.tt-form__trampa { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.tt-form button { justify-self: start; font: inherit; font-weight: 600; cursor: pointer; border: 0; border-radius: 8px; padding: 0.85rem 1.6rem; background: var(--tt-rojo); color: #fff; }
.tt-form button:hover { background: var(--tt-rojo-oscuro); }
.tt-aviso { padding: 1rem 1.25rem; border-radius: 8px; margin-bottom: 1.25rem; }
.tt-aviso--ok { background: #E3F1E4; color: #1F5A28; }
.tt-aviso--error { background: #FBE3E0; color: #8A231B; }

/* ---------- Datos de contacto ---------- */
.tt-datos p { margin: 0 0 1rem; }
.tt-datos strong { display: block; font-family: var(--tt-display); text-transform: uppercase; letter-spacing: 0.08em; font-size: 1.05rem; }

/* ---------- Aviso de cookies ---------- */
.tt-cookies { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 100; display: flex; justify-content: center; }
.tt-cookies[hidden] { display: none; }
.tt-cookies__box { max-width: 640px; background: var(--tt-carbon); color: #fff; border-radius: 12px; padding: 1.25rem 1.4rem; box-shadow: 0 18px 40px rgba(0, 0, 0, .3); font-size: 0.95rem; }
.tt-cookies__box p { margin: 0 0 0.75rem; }
.tt-cookies__box a { color: #F0A49C; }
.tt-cookies__title { font-family: var(--tt-display); font-weight: 700; font-size: 1.3rem; text-transform: uppercase; letter-spacing: 0.06em; }
.tt-cookies__actions { display: flex; flex-wrap: wrap; gap: 0.6rem; }
.tt-cookies__btn { font: inherit; font-weight: 600; cursor: pointer; border-radius: 8px; padding: 0.6rem 1.1rem; border: 1.5px solid var(--tt-rojo); background: var(--tt-rojo); color: #fff; }
.tt-cookies__btn--ghost { background: transparent; border-color: rgba(255, 255, 255, .45); }

/* ---------- Barra de demo ---------- */
.tt-demo-bar { background: var(--tt-azul); color: #fff; text-align: center; font-size: 0.875rem; padding: 0.4rem 1rem; }

/* ---------- Ajustes móviles ---------- */
@media (max-width: 781px) {
	.tt-hero .wp-block-columns { gap: 2.5rem; }
	.tt-strip .wp-block-columns { gap: 1.1rem; }
}

/* ---------- Páginas interiores ---------- */
.tt-cabecera h1 { text-transform: uppercase; margin-top: 0.5rem; }
.tt-cabecera .tt-intro { max-width: 40em; color: var(--tt-cuero); margin-left: max(0px, calc((100% - 1200px) / 2)) !important; }
.tt-fila + .tt-fila { margin-top: var(--wp--preset--spacing--70) !important; }
.tt-fila .wp-block-image img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.tt-pendiente { background: #FFF1B8; border-radius: 6px; padding: 0.5rem 0.75rem; font-size: 0.95rem; }
.tt-legal { padding-left: 1.2rem; }
.tt-cta h2 { color: #fff; text-transform: uppercase; }
.tt-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link { background: #fff; color: var(--tt-carbon); }
.tt-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background: var(--tt-rojo); color: #fff; }
.tt-tabla table { font-size: 0.95rem; }
.tt-tabla th, .tt-tabla td { border: 0; border-bottom: 1px solid var(--tt-line); padding: 0.6rem 0.75rem; text-align: left; }
.tt-tabla thead { border-bottom: 0; }
.tt-tabla th { background: var(--tt-arena); }
section, .wp-block-group.alignfull { scroll-margin-top: 80px; }
.tt-datos .tt-hueco { display: inline-block; }
