/* Tonos oscuros de Beauty in Black (agente de color).
 *
 * Se carga después de style.css, hero.css y photos.css. Todo el sitio pasa a negro:
 * varios negros/carbones cálidos para que cada sección se distinga de la siguiente,
 * texto blanco hueso, dorado para rótulos, números y detalles; botones dorados.
 * Solo colores y fondos: no cambia forma, radio ni relleno de los botones (nav.css).
 *
 * Paleta
 *   --bib-tone-0  #070707  pie de página
 *   --bib-tone-1  #0A0A0A  ónix: secciones "negro" (y el fondo de la página)
 *   --bib-tone-2  #131211  carbón con grano fino: secciones que eran blancas
 *   --bib-tone-3  #1A1713  espresso con brillo dorado arriba: secciones que eran crema
 *   --bib-tone-4  #221E19  superficies: paneles, tarjetas, menús
 *   --bib-field   #0F0E0C  campos de formulario (hundidos sobre el panel)
 */

:root {
	--bib-tone-0: #070707;
	--bib-tone-1: #0A0A0A;
	--bib-tone-2: #131211;
	--bib-tone-3: #1A1713;
	--bib-tone-4: #221E19;
	--bib-field: #0F0E0C;
	--bib-text: #E3DDD2;          /* 14.6:1 sobre ónix, 12.9:1 sobre superficie */
	--bib-text-strong: #F7F2EA;
	--bib-text-soft: #B5AD9F;     /* 8.1:1 sobre espresso */
	--bib-hair: rgba(212, 169, 96, .16);
	--bib-hair-strong: rgba(212, 169, 96, .38);
	--bib-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 .07 0 0 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");

	/* Variables de style.css / photos.css pensadas para fondo claro, ahora para fondo oscuro. */
	--bib-muted: var(--bib-text-soft);
	--bib-rule: rgba(255, 255, 255, .12);
	--bib-on-dark: var(--bib-text);
	--bib-on-dark-muted: var(--bib-text-soft);
	--bib-ph-hair-light: rgba(255, 255, 255, .4);
	--bib-ph-shadow-light: 0 0 0 1px rgba(212, 169, 96, .22), 0 24px 60px -28px rgba(0, 0, 0, .9), 0 0 48px -22px rgba(212, 169, 96, .16);
	color-scheme: dark;
}

/* ---------- Base ---------- */
html body { background-color: var(--bib-tone-1); color: var(--bib-text); }
body :where(h1, h2, h3, h4, h5, h6) { color: var(--bib-text-strong); }
body a:where(:not(.wp-element-button)):hover { color: var(--bib-gold-light); }
::selection { background: var(--bib-gold); color: var(--bib-black); }
body .wp-element-caption, body figcaption { color: var(--bib-text-soft); }
body hr.wp-block-separator { border-color: var(--bib-hair-strong); }

/* ---------- Tonos de sección ---------- */
body .has-negro-background-color { background-color: var(--bib-tone-1) !important; }
body .has-blanco-background-color {
	background-color: var(--bib-tone-2) !important;
	background-image: var(--bib-grain);
	background-size: 180px 180px;
}
body .has-crema-background-color {
	background-color: var(--bib-tone-3) !important;
	background-image: radial-gradient(90% 60% at 50% 0%, rgba(212, 169, 96, .075) 0%, rgba(212, 169, 96, 0) 70%);
	background-repeat: no-repeat;
}
body .has-tinta-background-color { background-color: var(--bib-tone-3) !important; }

/* Todas las secciones se leen como oscuras (lo que antes hacía solo .bib-dark). */
.bib-main :where(.bib-section, .bib-section--tight, .bib-service-block) { color: var(--bib-text); }
.bib-main :where(.bib-section, .bib-section--tight, .bib-service-block) a:where(:not(.wp-element-button)) { color: var(--bib-gold-light); }
.bib-main :where(.bib-section, .bib-section--tight, .bib-service-block) a:where(:not(.wp-element-button)):hover { color: #fff; }
.bib-main .bib-link-arrow a, .bib-main a.bib-link-arrow { color: var(--bib-text-strong); }
.bib-main .bib-link-arrow a:hover, .bib-main a.bib-link-arrow:hover { color: var(--bib-gold); }

/* Un filete dorado muy fino marca el paso de una sección a la siguiente
   (los arcos de animations.js solo aparecen entre claro y oscuro: ya no hay claro). */
.bib-main > .alignfull.bib-section + .alignfull,
.bib-main > .alignfull.bib-section--tight + .alignfull,
.bib-main > .alignfull + .alignfull.bib-section,
.bib-main > .wp-block-post-content > .alignfull + .alignfull.bib-section,
.bib-main > .wp-block-post-content > .alignfull + .alignfull.bib-section--tight { box-shadow: inset 0 1px 0 var(--bib-hair); }
.bib-divider { display: none !important; }

/* ---------- Texto ---------- */
.bib-eyebrow, .bib-dark .bib-eyebrow { color: var(--bib-gold); }
.bib-page-hero .bib-eyebrow { color: var(--bib-gold-light); }
.bib-section-head > p, .bib-muted, .bib-dark .bib-muted { color: var(--bib-text-soft); }
.bib-gold-text { color: var(--bib-gold-light); }
.bib-statement { color: var(--bib-text-strong); }
.bib-lead { color: var(--bib-text); }

/* ---------- Botones (solo color) ---------- */
/* Lleno: dorado con letra negra (8.9:1). Contorno: dorado sobre negro (8.6:1 en ónix, 7.6:1 en superficie). */
.wp-block-button.is-style-outline > .wp-block-button__link { color: var(--bib-gold); border-color: var(--bib-gold); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover,
.wp-block-button.is-style-outline > .wp-block-button__link:focus-visible { background: var(--bib-gold); border-color: var(--bib-gold); color: var(--bib-black); }
.wp-block-button.is-style-light > .wp-block-button__link:hover,
.wp-block-button.is-style-light > .wp-block-button__link:focus-visible { background: var(--bib-gold-light); border-color: var(--bib-gold-light); color: var(--bib-black); }
:where(.wp-element-button, .wp-block-button__link):focus-visible { outline: 2px solid var(--bib-gold-light); outline-offset: 3px; }

/* ---------- Tarjetas y listas ---------- */
.bib-card > .wp-block-image { background: var(--bib-tone-4); }
.bib-card .bib-link-arrow a { color: var(--bib-text-soft); }
.bib-card:hover .bib-link-arrow a { color: var(--bib-gold); }
.bib-card__body h3 { color: var(--bib-text-strong); }

.bib-line-card { border-top-color: rgba(212, 169, 96, .55); }
.bib-line-card .bib-tag { color: var(--bib-gold); }
.bib-line-card h3 a:hover { color: var(--bib-gold); }
.bib-step { border-top-color: var(--bib-hair-strong); }
.bib-step__num { color: var(--bib-gold); }
.bib-policy { border-top-color: var(--bib-hair); }

.bib-lines, .bib-lines a { border-color: var(--bib-rule); }
.bib-lines a { color: var(--bib-text); }
.bib-lines a:hover { color: var(--bib-gold); }
.bib-check li::before { background: var(--bib-gold); box-shadow: 0 0 0 3px rgba(212, 169, 96, .15); }
.bib-service-list li { border-bottom-color: var(--bib-rule); }
.bib-service-list li span:first-child { color: var(--bib-text-strong); }
.bib-service-list li span:last-child { color: var(--bib-gold-light); }
.bib-chips li { border-color: var(--bib-hair-strong); background: rgba(212, 169, 96, .05); color: var(--bib-text); }
.bib-info-list strong { color: var(--bib-gold); }
.bib-ba figcaption { color: var(--bib-text-strong); }

/* Paneles: superficie cálida con filete dorado, para que se despeguen del fondo. */
.bib-panel {
	background: var(--bib-tone-4);
	color: var(--bib-text);
	box-shadow: inset 0 0 0 1px var(--bib-hair), 0 30px 60px -40px rgba(0, 0, 0, .9);
}
.bib-notice, .bib-dark .bib-notice { background: rgba(255, 255, 255, .05); color: var(--bib-text); }
.bib-notice--error { border-color: #F2766B; }
.bib-placeholder { outline-color: var(--bib-hair-strong); }

/* Servicios: el panel negro de cada bloque va en superficie para separarse del fondo. */
.bib-split__panel { background: var(--bib-tone-4); color: var(--bib-text); }
.bib-split.bib-split { box-shadow: var(--bib-ph-shadow-light); }

/* Equipo */
.bib-member__role, .bib-dark .bib-member__role { color: var(--bib-gold); }
.bib-member h3 { color: var(--bib-text-strong); }
.bib-member__bio { color: var(--bib-text-soft); }
.bib-member__photo { background: radial-gradient(120% 90% at 50% 10%, #2B261E 0%, var(--bib-tone-1) 72%); }
.bib-team-card { background: var(--bib-tone-4); }

/* Fotos con paspartú: en vez de blanco, marco oscuro con filete dorado. */
.bib-ba-grid > .bib-ba img,
.bib-gallery .wp-block-image img { background: #15130F; }

/* ---------- Formularios ---------- */
.bib-form label { color: var(--bib-text-strong); }
.bib-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.bib-form select,
.bib-form textarea {
	background: var(--bib-field);
	color: var(--bib-text-strong);
	border-color: rgba(255, 255, 255, .18);
}
.bib-form input::placeholder, .bib-form textarea::placeholder { color: #8F887B; opacity: 1; }
.bib-form input:focus, .bib-form select:focus, .bib-form textarea:focus { border-color: var(--bib-gold); box-shadow: 0 0 0 3px rgba(212, 169, 96, .22); }
.bib-form select option { background: var(--bib-tone-4); color: var(--bib-text-strong); }
.bib-form small, .bib-form__intro, .bib-form__note { color: var(--bib-text-soft); }
.bib-form input[type="checkbox"], .bib-form input[type="radio"] { accent-color: var(--bib-gold); }
.bib-form .bib-file input[type="file"] { background: var(--bib-field); color: var(--bib-text-soft); border-color: var(--bib-hair-strong); }
.bib-form .bib-file input[type="file"]:hover::file-selector-button { background: var(--bib-gold-light); }
.bib-form input:-webkit-autofill {
	-webkit-text-fill-color: var(--bib-text-strong);
	-webkit-box-shadow: 0 0 0 100px var(--bib-field) inset;
	caret-color: var(--bib-text-strong);
}

/* ---------- Mapa ---------- */
/* El mapa de Google se pasa a tonos oscuros para no ser un rectángulo blanco. */
.bib-map { background: var(--bib-tone-4); box-shadow: 0 0 0 1px var(--bib-hair-strong); border-radius: var(--bib-ph-radius, 8px); overflow: hidden; }
.bib-map.alignfull { border-radius: 0; box-shadow: inset 0 1px 0 var(--bib-hair-strong); }
.bib-map iframe { filter: invert(.9) hue-rotate(180deg) grayscale(.75) sepia(.25) contrast(.92) brightness(.95); }

/* ---------- Pie de página ---------- */
.bib-footer {
	background: var(--bib-tone-0);
	background-image: radial-gradient(70% 120% at 50% 0%, rgba(212, 169, 96, .06) 0%, rgba(212, 169, 96, 0) 60%);
	box-shadow: inset 0 1px 0 var(--bib-hair-strong);
	color: var(--bib-text-soft);
}
.bib-footer h2, .bib-footer h3 { color: var(--bib-gold); }
.bib-footer__bottom { border-top-color: var(--bib-hair); }

/* ---------- Banner de páginas internas ---------- */
.bib-page-hero::after {
	background:
		linear-gradient(90deg, var(--bib-tone-1) 0%, var(--bib-tone-1) max(52%, calc(100% - 720px)), rgba(10, 10, 10, .55) calc(max(52%, calc(100% - 720px)) + 10%), rgba(10, 10, 10, .08) 100%),
		linear-gradient(0deg, rgba(10, 10, 10, .55) 0%, rgba(10, 10, 10, 0) 35%);
}
@media (max-width: 781px) {
	.bib-page-hero::after { background: linear-gradient(180deg, rgba(10, 10, 10, .15) 0%, rgba(10, 10, 10, .2) 35%, rgba(10, 10, 10, .78) 68%, rgba(10, 10, 10, .96) 100%); }
}

/* ---------- WooCommerce ---------- */
/* shop.css se carga después de este archivo: "html body" sube la especificidad. */
html body .bib-shop,
html body ul.products:has(.bib-pcard) {
	--es-bg: var(--bib-tone-1);
	--es-surface: var(--bib-tone-2);
	--es-surface-2: var(--bib-tone-3);
	--es-border: #2A251F;
	--es-border-strong: #3A342B;
	--es-text: #F5F1EA;
	--es-muted: #ADA595;
	--es-cream: var(--bib-tone-4);
}
/* Banner "Precios profesionales": era crema; ahora negro con brillo dorado. */
html body .bib-shop-banner {
	background: radial-gradient(120% 140% at 85% 50%, #3A3022 0%, #1F1B16 45%, #121110 100%);
	color: var(--bib-text);
	box-shadow: inset 0 0 0 1px var(--bib-hair-strong);
}
html body .bib-shop-banner__kicker { color: var(--bib-gold); }
html body .bib-shop .bib-shop-banner__title { color: var(--bib-text-strong); }
html body .bib-shop-banner p { color: var(--bib-text-soft); }
html body .bib-shop .bib-shop-banner__cta:hover { background: var(--bib-gold-light); color: var(--bib-black); }
html body .bib-shop-banner__products img { filter: drop-shadow(0 18px 22px rgba(0, 0, 0, .55)); }

/* Botones de WooCommerce: dorados (antes negros, invisibles sobre negro). */
html body .woocommerce a.button, html body .woocommerce button.button, html body .woocommerce input.button,
html body .wc-block-components-button:not(.is-link) { background: var(--bib-gold); color: var(--bib-black); }
html body .woocommerce a.button:hover, html body .woocommerce button.button:hover, html body .woocommerce input.button:hover,
html body .wc-block-components-button:not(.is-link):hover { background: var(--bib-gold-light); color: var(--bib-black); }
html body .wc-block-components-button:not(.is-link) .wc-block-components-button__text { color: inherit; }
html body .wc-block-components-button.is-link, html body .wc-block-components-totals-coupon-link { color: var(--bib-gold-light); }
html body .bib-pro-only { color: var(--bib-gold); }
html body .bib-pro-notice { background: rgba(212, 169, 96, .07); color: var(--bib-text); }
html body .bib-pro-notice a { color: var(--bib-gold-light); }

/* Carrito, pago y cuenta (bloques y shortcodes de Woo). */
body .wc-block-components-text-input input,
body .wc-block-components-text-input textarea,
body .wc-blocks-components-select .wc-blocks-components-select__select,
body .wc-block-components-combobox .wc-block-components-combobox-control input,
body .wc-block-components-textarea,
body .wc-block-components-form .wc-block-components-text-input input,
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select,
.woocommerce-page form .form-row .input-text,
.woocommerce .select2-container .select2-selection {
	background-color: var(--bib-field) !important;
	color: var(--bib-text-strong) !important;
	border-color: rgba(255, 255, 255, .2) !important;
}
body .wc-block-components-text-input label,
body .wc-blocks-components-select__label,
body .wc-block-components-combobox .wc-block-components-combobox-control label { color: var(--bib-text-soft) !important; }
body .wc-block-components-text-input input:focus,
body .wc-blocks-components-select__select:focus { border-color: var(--bib-gold) !important; box-shadow: 0 0 0 1px var(--bib-gold) !important; }
body .wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"],
body .wc-block-components-radio-control__input {
	background-color: var(--bib-field);
	border-color: rgba(255, 255, 255, .35);
}
body .wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: var(--bib-gold); }
body .wc-block-components-radio-control__input:checked::before { background: var(--bib-gold); }
body .wc-block-components-radio-control-accordion-option,
body .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
body .wc-block-checkout__payment-method .wc-block-components-radio-control__option { box-shadow: inset 0 0 0 1px var(--bib-hair-strong); }
body .wc-block-components-panel, body .wc-block-components-totals-wrapper,
body .wc-block-cart-items, body .wc-block-cart-items td, body .wc-block-cart-items th,
body .wc-block-components-order-summary-item, body .wp-block-woocommerce-checkout-order-summary-block,
body .wc-block-components-sidebar-layout .wc-block-components-main { border-color: rgba(255, 255, 255, .12) !important; }
body .wp-block-woocommerce-checkout-order-summary-block,
body .wc-block-components-sidebar .wc-block-components-panel { background: transparent; }
body .wc-block-components-order-summary-item__quantity { background: var(--bib-tone-4); color: var(--bib-text-strong); border-color: var(--bib-gold); box-shadow: none; }
body .wc-block-components-quantity-selector { border-color: rgba(255, 255, 255, .25); }
body .wc-block-components-quantity-selector input,
body .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button { color: var(--bib-text-strong); background: transparent; }
body .wc-block-components-product-metadata, body .wc-block-components-product-details,
body .wc-block-components-formatted-money-amount + .wc-block-components-product-price__regular { color: var(--bib-text-soft); }
body .wc-block-components-notice-banner { background: var(--bib-tone-4); color: var(--bib-text); }
body .wc-block-components-notice-banner a { color: var(--bib-gold-light); }
body .wc-block-cart__empty-cart__title, body .with-empty-cart-icon::before { color: var(--bib-text-strong); }
body .wc-block-components-skeleton__element { background: var(--bib-tone-4); }
body .wc-block-components-address-card, body .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content { border-color: var(--bib-hair-strong) !important; }
.woocommerce table.shop_table, .woocommerce table.shop_table td, .woocommerce table.shop_table th { border-color: rgba(255, 255, 255, .12); color: var(--bib-text); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { color: var(--bib-text); text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { color: var(--bib-gold); }
.woocommerce form.login, .woocommerce form.register, .woocommerce form.checkout_coupon, .woocommerce form.lost_reset_password {
	border-color: var(--bib-hair-strong);
	background: var(--bib-tone-4);
	color: var(--bib-text);
}
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	background: var(--bib-tone-4);
	color: var(--bib-text);
	border-top-color: var(--bib-gold);
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--bib-gold); }
.woocommerce-error { border-top-color: #F2766B; }
.woocommerce-error::before { color: #F2766B; }
.woocommerce-LostPassword a, .woocommerce-privacy-policy-text a { color: var(--bib-gold-light); }

/* ======================================================================
   Portada: Antes y después (patterns/highlight.php)
   ====================================================================== */
.bib-highlight {
	position: relative;
	isolation: isolate;
	background-color: var(--bib-tone-3);
	background-image:
		radial-gradient(60% 70% at 12% 40%, rgba(212, 169, 96, .09) 0%, rgba(212, 169, 96, 0) 70%),
		var(--bib-grain);
	background-size: auto, 180px 180px;
	color: var(--bib-text);
}

/* Foto grande con marco dorado desplazado (no ocupa espacio). */
.bib-highlight__photo { position: relative; margin: 0; isolation: isolate; max-width: 600px; margin-inline: auto; }
.bib-highlight__photo img {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 640 / 670;
	object-fit: cover;
	border-radius: var(--bib-ph-radius, 8px);
	box-shadow: 0 0 0 1px rgba(212, 169, 96, .3), 0 40px 80px -40px rgba(0, 0, 0, .95);
}
.bib-highlight__photo::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	border: 1px solid rgba(212, 169, 96, .6);
	border-radius: var(--bib-ph-radius, 8px);
	transform: translate(calc(var(--bib-ph-offset, 18px) * -1), var(--bib-ph-offset, 18px));
	pointer-events: none;
}

.bib-highlight h2 { margin-top: .4rem; margin-bottom: 1rem; }
.bib-highlight__lead { color: var(--bib-text); max-width: 34rem; }

/* Tres pasos numerados en dorado. */
.bib-highlight__steps {
	list-style: none;
	counter-reset: bib-step;
	margin: 2rem 0 0;
	padding: 0;
	border-top: 1px solid var(--bib-hair);
	max-width: 34rem;
}
.bib-highlight__steps li {
	counter-increment: bib-step;
	display: grid;
	grid-template-columns: 3.25rem 1fr;
	column-gap: 1rem;
	align-items: baseline;
	margin: 0;
	padding: 1rem 0;
	border-bottom: 1px solid var(--bib-hair);
	color: var(--bib-text-soft);
	font-size: .9688rem;
	line-height: 1.55;
}
.bib-highlight__steps li::before {
	content: counter(bib-step, decimal-leading-zero);
	grid-row: 1 / span 2;
	font-family: var(--bib-serif);
	font-size: 1.875rem;
	line-height: 1;
	color: var(--bib-gold);
}
.bib-highlight__steps strong {
	display: block;
	grid-column: 2;
	font-family: var(--bib-serif);
	font-size: 1.1875rem;
	font-weight: 500;
	line-height: 1.3;
	color: var(--bib-text-strong);
}

.bib-highlight__actions { gap: 1rem 2rem; margin-top: 2rem; }
.bib-highlight__actions .wp-block-buttons, .bib-highlight__actions .bib-link-arrow { margin: 0; }

/* Fila de otros looks: 4 fotos chicas con pie, sin carrusel. */
.bib-highlight__more { margin-top: clamp(3.5rem, 7vw, 5.5rem) !important; }
.bib-highlight__label {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	margin: 0 0 1.5rem;
	font-family: var(--bib-sans);
	font-size: .8125rem;
	font-weight: 500;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--bib-gold);
}
.bib-highlight__label::after { content: ""; flex: 1; height: 1px; background: var(--bib-hair-strong); }
.bib-highlight__looks {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(.75rem, 2vw, 1.5rem);
}
.bib-highlight__looks > * { margin: 0 !important; }
.bib-highlight__look { position: relative; margin: 0; }
.bib-highlight__look img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: center 30%;
	border-radius: var(--bib-ph-radius, 8px);
	box-shadow: 0 0 0 1px rgba(212, 169, 96, .22);
	filter: saturate(.92);
	transition: filter .5s var(--bib-ease), box-shadow .5s var(--bib-ease);
}
.bib-highlight__look figcaption {
	margin: .8rem 0 0;
	font-family: var(--bib-serif);
	font-size: 1.0625rem;
	line-height: 1.3;
	text-align: left;
	color: var(--bib-text-strong);
}
@media (hover: hover) and (pointer: fine) {
	.bib-highlight__look:hover img { filter: saturate(1.05); box-shadow: 0 0 0 1px rgba(212, 169, 96, .8); }
	.bib-highlight__look:hover figcaption { color: var(--bib-gold-light); }
}
@media (max-width: 781px) {
	.bib-highlight__photo::before { transform: translate(calc(var(--bib-ph-offset, 9px) * -1), var(--bib-ph-offset, 9px)); }
	.bib-highlight__photo { margin-inline: var(--bib-ph-offset, 9px) 0; }
	.bib-highlight__looks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem .75rem; }
	.bib-highlight__look figcaption { font-size: .9375rem; }
	.bib-highlight__steps li { grid-template-columns: 2.75rem 1fr; }
	.bib-highlight__steps li::before { font-size: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
	.bib-highlight__look img { transition: none; }
}

/* ---------- Instagram: tarjetas con foto y enlace a cada reel ---------- */
.bib-reels--cards { margin: 0; padding: 0; list-style: none; }
.bib-reels--cards .bib-reels__item { border-radius: 1.25rem; background: #151310; border: 1px solid rgba(212, 169, 96, .22); }
.bib-reels__card { position: absolute; inset: 0; display: block; color: #F7F2EA; text-decoration: none; overflow: hidden; border-radius: inherit; }
.bib-reels__img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; transition: transform .7s cubic-bezier(.2, .7, .2, 1), filter .4s ease; filter: brightness(.78); }
.bib-reels__card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(7, 7, 7, .85) 0%, rgba(7, 7, 7, 0) 45%); }
.bib-reels__play {
	position: absolute; z-index: 1; top: 50%; left: 50%;
	display: grid; place-items: center; width: 3.75rem; height: 3.75rem;
	border-radius: 50%; background: rgba(10, 10, 10, .55); border: 1px solid var(--bib-gold); color: var(--bib-gold);
	transform: translate(-50%, -50%); backdrop-filter: blur(6px);
	transition: background-color .3s ease, color .3s ease, transform .3s ease;
}
.bib-reels__meta { position: absolute; z-index: 1; left: 1.1rem; right: 1.1rem; bottom: 1rem; display: flex; align-items: center; gap: .55rem; font-size: .875rem; }
.bib-reels__meta svg { flex: none; color: var(--bib-gold); }
.bib-reels__card:hover .bib-reels__img, .bib-reels__card:focus-visible .bib-reels__img { transform: scale(1.06); filter: brightness(.9); }
.bib-reels__card:hover .bib-reels__play, .bib-reels__card:focus-visible .bib-reels__play { background: var(--bib-gold); color: #0A0A0A; transform: translate(-50%, -50%) scale(1.08); }
.bib-reels__card:focus-visible { outline: 2px solid var(--bib-gold); outline-offset: 3px; }

/* ---------- Antes y después: comparador deslizable ---------- */
.bib-compare {
	position: relative;
	aspect-ratio: 4 / 5;
	max-height: 78svh;
	margin: 0 auto;
	overflow: hidden;
	border-radius: 999px 999px 1.25rem 1.25rem;
	background: #151310;
	box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .9);
	user-select: none;
	-webkit-user-select: none;
	touch-action: pan-y;
}
.bib-compare::after {
	content: "";
	position: absolute;
	inset: .75rem;
	border: 1px solid rgba(212, 169, 96, .55);
	border-radius: 999px 999px .75rem .75rem;
	pointer-events: none;
}
.bib-compare__img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center 38%; pointer-events: none; }
.bib-compare__before { position: absolute; inset: 0; clip-path: inset(0 calc(100% - var(--bib-pos)) 0 0); }
.bib-compare__line {
	position: absolute; top: 0; bottom: 0; left: var(--bib-pos); width: 2px;
	background: var(--bib-gold); transform: translateX(-1px); pointer-events: none;
	box-shadow: 0 0 18px rgba(212, 169, 96, .6);
}
.bib-compare__knob {
	position: absolute; top: 55%; left: 50%;
	display: grid; place-items: center; width: 3.25rem; height: 3.25rem;
	border-radius: 50%; background: var(--bib-gold); color: #0A0A0A;
	transform: translate(-50%, -50%); box-shadow: 0 8px 24px -8px rgba(0, 0, 0, .8);
}
.bib-compare__tag {
	position: absolute; bottom: 1.6rem; z-index: 1;
	padding: .35rem .9rem; border-radius: 999px;
	font-size: .75rem; letter-spacing: .18em; text-transform: uppercase;
	background: rgba(10, 10, 10, .65); color: #F7F2EA; backdrop-filter: blur(6px); pointer-events: none;
}
.bib-compare__tag--before { left: 1.6rem; }
.bib-compare__tag--after { right: 1.6rem; color: var(--bib-gold); }
.bib-compare__range {
	position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; margin: 0;
	opacity: 0; cursor: ew-resize; -webkit-appearance: none; appearance: none;
}
.bib-compare:has(.bib-compare__range:focus-visible) .bib-compare__knob { outline: 2px solid #F7F2EA; outline-offset: 3px; }
.bib-compare__hint { margin: 1rem 0 0; text-align: center; font-size: .75rem; letter-spacing: .2em; text-transform: uppercase; color: rgba(247, 242, 234, .55); }
.bib-highlight .wp-block-column:has(> .bib-compare) { max-width: 30rem; margin-inline: auto; }

/* ---------- Reservas (Amelia): colores del sitio ---------- */
.amelia-v2-booking .am-fs__wrapper,
.amelia-v2-booking [class*="am-fs"][style*="--am-c-primary"],
.am-dialog-popup, [class*="am-select-popper"], .el-popper.am-select-popper {
	--am-c-primary: #D4A960 !important;
	--am-c-main-bgr: #131211 !important;
	--am-c-main-heading-text: #F7F2EA !important;
	--am-c-main-text: #E3DDD2 !important;
	--am-c-sb-bgr: #0A0A0A !important;
	--am-c-sb-text: #F7F2EA !important;
	--am-c-inp-bgr: #0F0E0C !important;
	--am-c-inp-border: rgba(212, 169, 96, .35) !important;
	--am-c-inp-text: #F7F2EA !important;
	--am-c-inp-placeholder: #9C948A !important;
	--am-c-drop-bgr: #1A1713 !important;
	--am-c-drop-text: #F7F2EA !important;
	--am-c-btn-prim: #D4A960 !important;
	--am-c-btn-prim-text: #0A0A0A !important;
	--am-c-btn-sec: #221E19 !important;
	--am-c-btn-sec-text: #F7F2EA !important;
	--am-c-skeleton-op20: rgba(247, 242, 234, .08) !important;
	--am-c-skeleton-op60: rgba(247, 242, 234, .2) !important;
	--am-font-family: var(--bib-sans, "Outfit", sans-serif) !important;
	--am-brad-main: 0 1.25rem 1.25rem 0 !important;
}
.amelia-v2-booking .am-fs__wrapper {
	border: 1px solid rgba(212, 169, 96, .3);
	border-radius: 1.25rem;
	box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .9);
	overflow: hidden;
}
.amelia-v2-booking .am-fs-sb { border-right: 1px solid rgba(212, 169, 96, .2); }
.amelia-v2-booking .am-fs__main-heading { border-bottom-color: rgba(212, 169, 96, .2) !important; }
.amelia-v2-booking h1, .amelia-v2-booking h2, .amelia-v2-booking .am-fs__main-heading-inner { font-family: var(--bib-serif) !important; letter-spacing: .02em; }
.amelia-v2-booking :is(.el-select__wrapper, .el-input__wrapper, .el-textarea__inner, .am-select-wrapper .el-input__wrapper) {
	background-color: #0F0E0C !important;
	box-shadow: 0 0 0 1px rgba(212, 169, 96, .35) inset !important;
	color: #F7F2EA !important;
}
.amelia-v2-booking :is(.el-select__placeholder, .el-input__inner, .el-select__selected-item) { color: #F7F2EA !important; }
.amelia-v2-booking .el-select__placeholder.is-transparent { color: #9C948A !important; }
:is(.el-select-dropdown, .el-popper.is-light):has(.am-select-option, [class*="am-"]) { background: #1A1713 !important; border-color: rgba(212, 169, 96, .35) !important; }
.el-select-dropdown__item { color: #F7F2EA !important; }
.el-select-dropdown__item.is-hovering, .el-select-dropdown__item:hover { background: rgba(212, 169, 96, .14) !important; }
.el-select-dropdown__item.is-selected { color: #D4A960 !important; }
/* Calendario y botones de Amelia: dorado en vez de azul (las variables se repiten en cada bloque). */
.amelia-v2-booking [style*="--am-c"] {
	--am-c-primary: #D4A960 !important;
	--am-c-btn-prim: #D4A960 !important;
	--am-c-btn-prim-text: #0A0A0A !important;
	--am-c-btn-first: #D4A960 !important;
	--am-c-btn-first-op80: rgba(212, 169, 96, .8) !important;
	--am-c-btn-first-op30: rgba(212, 169, 96, .3) !important;
	--am-c-btn-first-op20: rgba(212, 169, 96, .2) !important;
	--am-c-btn-second: #0A0A0A !important;
	--am-c-cal-indicator: #D4A960 !important;
	--am-c-cal-low: #D4A960 !important;
	--am-c-cal-low-text: #F2DA95 !important;
	--am-c-cal-low-op10: rgba(212, 169, 96, .1) !important;
	--am-c-cal-low-op20: rgba(212, 169, 96, .2) !important;
	--am-c-cal-low-op30: rgba(212, 169, 96, .3) !important;
	--am-c-cal-low-op60: rgba(212, 169, 96, .6) !important;
	--am-c-cal-low-op80: rgba(212, 169, 96, .8) !important;
	--am-c-cal-high: #F2DA95 !important;
	--am-c-cal-high-text: #0A0A0A !important;
	--am-c-cal-high-op10: rgba(242, 218, 149, .1) !important;
	--am-c-main-bgr: #131211 !important;
	--am-c-main-text: #E3DDD2 !important;
	--am-c-main-heading-text: #F7F2EA !important;
}
.amelia-v2-booking [style*="--am-c"], .amelia-v2-booking #amelia-container .am-advsc__wrapper {
	--am-c-cal-init: #D4A960 !important;
	--am-c-cal-init-text: #F2DA95 !important;
	--am-c-cal-init-op10: rgba(212, 169, 96, .1) !important;
	--am-c-cal-init-op20: rgba(212, 169, 96, .2) !important;
	--am-c-cal-init-op30: rgba(212, 169, 96, .3) !important;
	--am-c-cal-init-op40: rgba(212, 169, 96, .4) !important;
	--am-c-cal-init-op60: rgba(212, 169, 96, .6) !important;
	--am-c-cal-init-op80: rgba(212, 169, 96, .8) !important;
	--am-c-cal-selected: #D4A960 !important;
	--am-c-cal-selected-text: #0A0A0A !important;
	--am-c-cal-disabled-text: rgba(247, 242, 234, .25) !important;
}
/* Confirmación de la cita: texto legible sobre negro. */
.amelia-v2-booking [class*="congrat"] { color: #E3DDD2 !important; }
.amelia-v2-booking [class*="congrat"] :is(p, span, div, td, th, li) { color: #E3DDD2 !important; opacity: 1 !important; }
.amelia-v2-booking [class*="congrat"] :is(h1, h2, h3, [class*="heading"], [class*="title"]) { color: #D4A960 !important; }
.amelia-v2-booking [class*="congrat"] [class*="label"] { color: #9C948A !important; }
