/* =====================================================================
   Danny's Garage: capa de diseño (v2)
   Los colores salen de theme.json (--wp--preset--color--*).
   Aquí solo se añaden degradados y sombras derivados de esos colores.
   ===================================================================== */
:root {
	--dg-g2: #1B2433;            /* grafito más claro para tarjetas oscuras */
	--dg-profundo: #0B0F19;      /* fondo más profundo del hero */
	--dg-borde-osc: #2A3548;
	--dg-glow: 0 24px 70px -20px rgba(249, 115, 22, .45);
	--dg-radio-xl: 22px;
	--dg-cabecera: 84px;
}

/* ---------- Cabecera: fija, transparente sobre el hero y sólida al bajar ---------- */
.site-header { position: sticky; top: 0; z-index: 100; box-shadow: 0 1px 0 rgba(255, 255, 255, .06); }
body.admin-bar .site-header { top: 32px; }
.inside-header { align-items: center; }
.site-logo img { height: 60px; width: auto; max-height: none; }
.main-navigation .main-nav ul li a { font-size: .98rem; letter-spacing: .01em; }
.main-navigation .main-nav ul ul { border-radius: 0 0 var(--dg-radio) var(--dg-radio); box-shadow: 0 18px 40px rgba(0, 0, 0, .35); border-top: 3px solid var(--wp--preset--color--naranja); }

body.home .site-header {
	position: fixed; left: 0; right: 0; top: 0; width: 100%;
	background: linear-gradient(to bottom, rgba(11, 15, 25, .82), rgba(11, 15, 25, 0));
	box-shadow: none; transition: background-color .25s, box-shadow .25s;
}
body.home.admin-bar .site-header { top: 32px; }
body.home .site-header .main-navigation,
body.home .site-header .main-navigation ul { background: transparent; }
body.home .site-header.dg-solida { background: rgba(17, 24, 39, .96); box-shadow: 0 8px 30px rgba(0, 0, 0, .3); backdrop-filter: blur(8px); }
body.home .site-header .main-navigation .main-nav ul ul { background: var(--wp--preset--color--grafito); }
@media (max-width: 768px) {
	.site-logo img { height: 48px; }
	body.home .site-header .main-navigation.toggled .main-nav > ul { background: rgba(17, 24, 39, .98); border-radius: var(--dg-radio); padding: .5rem; }
}

/* ---------- Portada: sin huecos alrededor del contenido ---------- */
body.home .site-content, body.home .inside-article, body.home .site-main, body.home .entry-content { padding: 0; margin: 0; }
body.home .content-area { width: 100%; }
body.home .site-content { display: block; }

/* ---------- Hero con vídeo de fondo ---------- */
.dg-hero-video {
	position: relative; isolation: isolate; overflow: hidden;
	min-height: 100svh; display: grid; align-items: center;
	background: var(--dg-profundo); color: var(--wp--preset--color--texto-claro-secundario);
}
.dg-hero-video__fondo { position: absolute; inset: 0; z-index: -3; }
.dg-hero-video__fondo img, .dg-hero-video__fondo video {
	position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 0;
}
.dg-hero-video__fondo video { opacity: 0; transition: opacity 1s ease; }
.dg-hero-video__fondo video.is-playing { opacity: 1; }
.dg-hero-video__velo {
	position: absolute; inset: 0; z-index: -2;
	background:
		radial-gradient(60rem 30rem at 10% 110%, rgba(194, 65, 12, .38), transparent 60%),
		linear-gradient(180deg, rgba(11, 15, 25, .2) 0%, rgba(11, 15, 25, .42) 38%, rgba(11, 15, 25, .86) 100%);
}
/* Escritorio: el vídeo ya trae a Dani nítido a la derecha; el velo solo oscurece el lado del texto */
@media (min-width: 900px) {
	.dg-hero-video__fondo img, .dg-hero-video__fondo video { object-position: 75% center; filter: brightness(1.15) contrast(1.06) saturate(1.08); }
	.dg-hero-video__velo {
		background:
			linear-gradient(90deg, rgba(11, 15, 25, .86) 0%, rgba(11, 15, 25, .62) 38%, rgba(11, 15, 25, .05) 70%, rgba(11, 15, 25, 0) 100%),
			linear-gradient(180deg, rgba(11, 15, 25, .45) 0%, rgba(11, 15, 25, 0) 22%, rgba(11, 15, 25, 0) 70%, rgba(11, 15, 25, .6) 100%),
			radial-gradient(60rem 34rem at 6% 110%, rgba(194, 65, 12, .3), transparent 62%);
	}
}
@media (max-width: 899px) { .dg-hero-video__fondo img, .dg-hero-video__fondo video { object-position: 55% 25%; filter: brightness(1.12) contrast(1.05); } }.dg-hero-video::after { /* grano muy sutil para dar textura */
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: .07; mix-blend-mode: overlay;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
}
.dg-hero-video__contenido {
	display: grid; gap: 2.5rem; align-items: center;
	max-width: 1240px; margin: 0 auto; width: 100%;
	padding: calc(var(--dg-cabecera) + 2.5rem) 1.25rem 5rem;
}
.dg-hero-video__texto { max-width: 46rem; }

.dg-kicker {
	display: inline-flex; align-items: center; gap: .6rem; margin: 0 0 1.1rem;
	padding: .4rem .95rem; border-radius: 999px;
	background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16); backdrop-filter: blur(6px);
	color: var(--wp--preset--color--texto-claro); font-size: .85rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
}
.dg-kicker::before {
	content: ""; width: .55rem; height: .55rem; border-radius: 50%; background: var(--wp--preset--color--naranja-acento);
	box-shadow: 0 0 0 0 rgba(249, 115, 22, .7); animation: dg-pulso 2s infinite;
}
@keyframes dg-pulso { 70% { box-shadow: 0 0 0 .7rem rgba(249, 115, 22, 0); } 100% { box-shadow: 0 0 0 0 rgba(249, 115, 22, 0); } }

/* H1 pequeño (etiqueta) + H2 enorme (la promesa) + texto mediano */
.dg-hero-video h1.dg-kicker { font-family: var(--wp--preset--font-family--inter); font-size: .85rem; line-height: 1.2; letter-spacing: .08em; }
.dg-hero-video .dg-titular {
	font-size: clamp(2.7rem, 6.4vw, 5.3rem); line-height: .97; letter-spacing: -.02em; margin: 0 0 1.4rem;
	color: var(--wp--preset--color--texto-claro); text-wrap: balance; font-weight: 700;
}
.dg-resalte {
	background: linear-gradient(100deg, #FDBA74, var(--wp--preset--color--naranja-acento) 55%, #EA580C);
	-webkit-background-clip: text; background-clip: text; color: transparent;
}
.dg-hero-video .dg-lead { font-size: clamp(1.15rem, 2.3vw, 1.45rem); line-height: 1.5; max-width: 38rem; color: var(--wp--preset--color--texto-claro-secundario); margin: 0 0 1.75rem; }
.dg-hero-video .dg-botones { margin: 0 0 1.75rem; }

.dg-chips { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .6rem; }
.dg-chips li {
	margin: 0; padding: .45rem .95rem; border-radius: 999px; font-size: .95rem; font-weight: 500;
	background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .14); color: var(--wp--preset--color--texto-claro);
}
.dg-chips { margin: 1.25rem 0 1.5rem; }
.dg-oscura a:not(.dg-btn):not(.wp-block-button__link) { color: var(--wp--preset--color--naranja-acento); }
.dg-oscura a:not(.dg-btn):hover { color: #fff; }
.dg-chips--claro li { background: rgba(255, 255, 255, .06); }

/* Marco de vídeo (solo escritorio) */
.dg-hero-video__dispositivo { display: none; }
@media (min-width: 900px) {
	.dg-hero-video__dispositivo { display: block; justify-self: center; animation: dg-flota 7s ease-in-out infinite; }
	.dg-hero-video__marco {
		width: min(300px, 26vw); aspect-ratio: 9 / 16; border-radius: 28px; overflow: hidden; position: relative;
		border: 1px solid rgba(255, 255, 255, .22); box-shadow: var(--dg-glow), 0 30px 60px rgba(0, 0, 0, .5);
		transform: rotate(2.5deg); background: #000;
	}
	.dg-hero-video__marco video { width: 100%; height: 100%; object-fit: cover; border-radius: 0; display: block; }
	.dg-hero-video__pie { margin: 1rem 0 0; text-align: center; font-size: .9rem; color: var(--wp--preset--color--texto-claro-secundario); letter-spacing: .06em; text-transform: uppercase; }
}
@keyframes dg-flota { 50% { transform: translateY(-10px); } }

/* indicador de scroll */
.dg-hero-video__flecha {
	position: absolute; left: 50%; bottom: 1.4rem; width: 1.6rem; height: 2.6rem; margin-left: -.8rem;
	border: 2px solid rgba(255, 255, 255, .55); border-radius: 1rem; opacity: .8;
}
.dg-hero-video__flecha::after { content: ""; position: absolute; left: 50%; top: .45rem; width: .3rem; height: .5rem; margin-left: -.15rem; border-radius: 2px; background: #fff; animation: dg-rueda 1.6s infinite; }
@keyframes dg-rueda { 0% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; transform: translateY(.9rem); } }
@media (max-width: 899px) { .dg-hero-video__flecha { display: none; } }

/* ---------- Franja de datos que solapa el hero ---------- */
.dg-franja { position: relative; z-index: 5; margin-top: -3.2rem; padding: 0 1.25rem; }
.dg-franja__rejilla {
	max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 0;
	background: #fff; border-radius: var(--dg-radio-xl); box-shadow: 0 24px 60px -18px rgba(17, 24, 39, .35); overflow: hidden;
}
.dg-franja__dato { padding: 1.4rem 1.5rem; border-left: 1px solid #E7E5E4; }
.dg-franja__dato:first-child { border-left: 0; }
.dg-franja__num { display: block; font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 2.1rem; line-height: 1; color: var(--wp--preset--color--naranja); }
.dg-franja__txt { display: block; margin-top: .35rem; font-size: .95rem; color: var(--wp--preset--color--texto-secundario); }
@media (max-width: 600px) { .dg-franja__dato { border-left: 0; border-top: 1px solid #E7E5E4; } .dg-franja__dato:first-child { border-top: 0; } }

/* ---------- Secciones y títulos ---------- */
.dg-seccion { position: relative; }
.dg-eyebrow { margin: 0 0 .5rem; font-family: var(--wp--preset--font-family--barlow); font-weight: 600; font-size: 1rem; letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--naranja); }
.has-grafito-background-color .dg-eyebrow, .dg-oscura .dg-eyebrow { color: var(--wp--preset--color--naranja-acento); }
.dg-seccion h2 { position: relative; margin-top: 0; }
.dg-seccion > h2::after, .dg-seccion > .wp-block-heading + .dg-subtitulo { }
.dg-oscura { background: linear-gradient(135deg, var(--wp--preset--color--grafito) 0%, var(--dg-g2) 100%); color: var(--wp--preset--color--texto-claro-secundario); }
.dg-oscura h2, .dg-oscura h3 { color: var(--wp--preset--color--texto-claro); }
.dg-oscura p { color: var(--wp--preset--color--texto-claro-secundario); }
.dg-oscura::before { content: ""; position: absolute; right: -10%; top: -30%; width: 40rem; height: 40rem; pointer-events: none; background: radial-gradient(closest-side, rgba(249, 115, 22, .16), transparent); }
.dg-fondo-blanco { background: #fff; }

/* ---------- Tarjetas ---------- */
.dg-rejilla { gap: 1.4rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }
.dg-tarjeta {
	position: relative; overflow: hidden; border: 1px solid #E7E5E4; border-radius: var(--dg-radio-xl);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.dg-tarjeta::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: linear-gradient(90deg, var(--wp--preset--color--naranja), #F59E0B); transform: scaleX(0); transform-origin: left; transition: transform .35s ease; }
.dg-tarjeta:hover { transform: translateY(-6px); box-shadow: 0 26px 50px -22px rgba(17, 24, 39, .4); border-color: #D6D3D1; }
.dg-tarjeta:hover::after { transform: scaleX(1); }
.dg-tarjeta h3 { font-size: 1.45rem; }
.dg-tarjeta a { font-weight: 600; text-decoration: none; }
.dg-tarjeta a::after { content: " →"; transition: margin .2s; }
.dg-tarjeta a:hover::after { margin-left: .3rem; }
/* numeración automática */
.dg-servicios, .dg-pasos { counter-reset: dg-n; }
.dg-servicios .dg-tarjeta::before, .dg-pasos .dg-tarjeta::before {
	counter-increment: dg-n; content: counter(dg-n, decimal-leading-zero);
	position: absolute; right: 1rem; top: .2rem; font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 4.2rem; line-height: 1; color: rgba(17, 24, 39, .06);
}
.dg-oscura .dg-tarjeta, .dg-oscura .dg-tarjeta.dg-tarjeta--osc { background: var(--dg-g2); border-color: var(--dg-borde-osc); box-shadow: none; }
.dg-oscura .dg-tarjeta p { color: var(--wp--preset--color--texto-claro-secundario); }
.dg-oscura .dg-tarjeta a { color: var(--wp--preset--color--naranja-acento); }
.dg-oscura .dg-pasos .dg-tarjeta::before { color: rgba(255, 255, 255, .07); }

/* ---------- Opiniones ---------- */
.dg-resenas { display: grid; gap: 1.4rem; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); margin-top: 1.5rem; }
.dg-resenas .wp-block-quote { margin: 0; position: relative; padding: 2.6rem 1.5rem 1.4rem; border: 1px solid #E7E5E4; border-left: 1px solid #E7E5E4; }
.dg-resenas .wp-block-quote::before { content: "“"; position: absolute; left: 1.2rem; top: .2rem; font-family: var(--wp--preset--font-family--barlow); font-size: 4.5rem; line-height: 1; color: var(--wp--preset--color--naranja); }
.dg-resenas .wp-block-quote::after { content: "★★★★★"; position: absolute; right: 1.2rem; top: 1rem; letter-spacing: .15em; font-size: .9rem; color: #B45309; }

/* ---------- Imágenes con marco ---------- */
.dg-img-marco figure, .dg-img-marco img { border-radius: var(--dg-radio-xl); }
.dg-img-marco .wp-block-image { position: relative; margin: 0; }
.dg-img-marco .wp-block-image::before { content: ""; position: absolute; inset: 1rem -1rem -1rem 1rem; border: 3px solid var(--wp--preset--color--naranja); border-radius: var(--dg-radio-xl); z-index: 0; }
.dg-img-marco .wp-block-image img { position: relative; z-index: 1; width: 100%; box-shadow: 0 24px 50px -20px rgba(17, 24, 39, .5); }

/* ---------- Banda final y mapa ---------- */
.dg-mapa iframe { border-radius: var(--dg-radio-xl); box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .5); }
.dg-cta-final { text-align: center; }
.dg-cta-final .dg-botones { justify-content: center; }
.dg-cta-final h2 { font-size: clamp(2rem, 5vw, 3.4rem); }

/* ---------- Botón principal: un solo estilo, con más presencia ---------- */
.wp-block-button__link, .dg-btn, button[type="submit"], input[type="submit"], .button,
.woocommerce a.button, .woocommerce button.button, .wpcf7 input[type="submit"] {
	background: linear-gradient(180deg, #D4490F, var(--wp--preset--color--naranja));
	box-shadow: 0 10px 24px -10px rgba(194, 65, 12, .8), inset 0 1px 0 rgba(255, 255, 255, .22);
	font-size: 1.2rem; padding: .85em 1.6em;
	transition: transform .15s ease, box-shadow .15s ease, background-color .15s;
}
.wp-block-button__link:hover, .dg-btn:hover, button[type="submit"]:hover, input[type="submit"]:hover, .wpcf7 input[type="submit"]:hover {
	background: linear-gradient(180deg, #C2410C, #9A3412); transform: translateY(-2px); box-shadow: 0 16px 30px -12px rgba(194, 65, 12, .9);
}

/* ---------- Cabecera de páginas interiores ---------- */
.dg-cabecera-pagina {
	position: relative; overflow: hidden; color: var(--wp--preset--color--texto-claro-secundario);
	background: radial-gradient(40rem 20rem at 85% -20%, rgba(249, 115, 22, .25), transparent 60%), linear-gradient(135deg, var(--dg-profundo), var(--wp--preset--color--grafito));
	padding: 3.2rem 1.25rem 3rem; margin: 0 calc(50% - 50vw); width: 100vw; max-width: 100vw;
}
.dg-cabecera-pagina__interior { max-width: 1100px; margin: 0 auto; }
.dg-cabecera-pagina h1 { margin: .4rem 0 0; color: var(--wp--preset--color--texto-claro); font-size: clamp(2rem, 5.4vw, 3.6rem); text-wrap: balance; }
.dg-cabecera-pagina .rank-math-breadcrumb, .dg-cabecera-pagina .rank-math-breadcrumb a { color: var(--wp--preset--color--texto-claro-secundario); margin: 0; }
.dg-cabecera-pagina .rank-math-breadcrumb a:hover { color: var(--wp--preset--color--naranja-acento); }
.dg-cabecera-pagina::after { content: ""; position: absolute; left: 0; bottom: 0; height: 4px; width: 100%; background: linear-gradient(90deg, var(--wp--preset--color--naranja), #F59E0B 40%, transparent 80%); }
body:not(.home) .inside-article { padding-top: 2.5rem; }

/* ---------- Pie ---------- */
.dg-pie { position: relative; background: linear-gradient(180deg, var(--dg-g2), var(--dg-profundo)); padding-top: 3.5rem; }
.dg-pie::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: linear-gradient(90deg, var(--wp--preset--color--naranja), #F59E0B, var(--wp--preset--color--naranja)); }
.dg-pie__logo { display: block; width: 92px; height: 92px; margin: 0 0 1rem; border-radius: 0; }
.site-info { background: var(--dg-profundo); }

/* ---------- Aparición suave al hacer scroll ---------- */
.dg-js .dg-reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s ease; }
.dg-js .dg-reveal.dg-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	.dg-js .dg-reveal { opacity: 1; transform: none; transition: none; }
	.dg-kicker::before, .dg-hero-video__dispositivo, .dg-hero-video__flecha::after { animation: none; }
}

/* Móvil: texto legible sobre la foto y sin hueco claro bajo el pie (la barra fija ocupa ese espacio) */
@media (max-width: 899px) {
	.dg-hero-video__texto { text-shadow: 0 2px 14px rgba(0, 0, 0, .7), 0 0 2px rgba(0, 0, 0, .4); }
	.dg-hero-video .dg-resalte { background: none; -webkit-text-fill-color: var(--wp--preset--color--naranja-acento); color: var(--wp--preset--color--naranja-acento); }
	.dg-hero-video__fondo img { object-position: 60% 20%; }
}
@media (max-width: 600px) {
	.dg-botones { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }
	.dg-botones .dg-btn { text-align: center; padding-left: .6em; padding-right: .6em; }
}
/* ---------- Tienda: listado y ficha de producto ---------- */
.woocommerce ul.products li.product { background: #fff; border: 1px solid #E7E5E4; border-radius: var(--dg-radio-xl); box-shadow: var(--dg-sombra); padding: 1rem; transition: transform .25s ease, box-shadow .25s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: 0 26px 50px -22px rgba(17, 24, 39, .4); }
.woocommerce ul.products li.product img { border-radius: var(--dg-radio); margin-bottom: .75rem; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 1.35rem; color: var(--wp--preset--color--grafito); }
.woocommerce .price, .woocommerce div.product p.price, .woocommerce ul.products li.product .price { color: var(--wp--preset--color--naranja); font-family: var(--wp--preset--font-family--barlow); font-weight: 700; }
.woocommerce div.product p.price { font-size: 2.3rem; margin: .5rem 0 1rem; }
.woocommerce div.product .product_title { font-size: clamp(1.9rem, 4.4vw, 2.8rem); margin-bottom: .5rem; }
.woocommerce div.product div.images img, .woocommerce div.product div.images .flex-control-thumbs img { border-radius: var(--dg-radio); }
.woocommerce div.product div.images .flex-control-thumbs li { padding: 0 .35rem .7rem; }
.woocommerce div.product .woocommerce-product-details__short-description { font-size: 1.1rem; color: var(--wp--preset--color--texto); }
.woocommerce div.product form.cart .single_add_to_cart_button { font-size: 1.25rem; padding: .9em 1.8em; }
.woocommerce div.product form.cart .quantity .qty { border-radius: var(--dg-radio); min-height: 52px; }
.dg-producto-garantias { list-style: none; margin: 1.25rem 0 0; padding: 1rem 1.2rem; background: #fff; border: 1px solid #E7E5E4; border-left: 5px solid var(--wp--preset--color--verde); border-radius: var(--dg-radio); }
.dg-producto-garantias li { margin: 0 0 .35rem; font-weight: 500; }
.dg-producto-garantias li::before { content: "✓ "; color: var(--wp--preset--color--verde); font-weight: 700; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 1.15rem; }
.woocommerce div.product .woocommerce-tabs .panel { background: #fff; border-radius: var(--dg-radio-xl); padding: 1.5rem 1.75rem; box-shadow: var(--dg-sombra); }
.woocommerce div.product .woocommerce-tabs .panel h2 { font-size: 1.6rem; margin-top: 1.6rem; }
.woocommerce div.product .woocommerce-tabs .panel h2:first-child { margin-top: 0; }
.woocommerce-message, .woocommerce-info { border-top-color: var(--wp--preset--color--naranja); }

/* ---------- Black Friday: barra superior, sección de portada y etiquetas de oferta ---------- */
:root { --dg-aviso: 0px; }
body.dg-con-aviso { --dg-aviso: 44px; padding-top: var(--dg-aviso); }
body.dg-con-aviso.home { padding-top: 0; }
.dg-aviso {
	position: fixed; top: 0; left: 0; right: 0; height: var(--dg-aviso); z-index: 10001;
	display: flex; align-items: center; justify-content: center; gap: 1rem; padding: 0 1rem;
	background: linear-gradient(90deg, #7C2D12, #C2410C 50%, #9A3412); color: #fff; text-decoration: none;
	font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 1.05rem; letter-spacing: .01em;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .3);
}
.dg-aviso:hover, .dg-aviso:focus { color: #fff; }
.dg-aviso strong { background: #fff; color: #7C2D12; padding: .1em .6em; border-radius: 999px; margin-right: .5rem; letter-spacing: .06em; }
.dg-aviso__corto { display: none; }
.dg-aviso__cta { border: 2px solid #fff; border-radius: 999px; padding: .05em .9em; }
.dg-aviso:hover .dg-aviso__cta { background: #fff; color: #7C2D12; }
.dg-aviso del { opacity: .85; }
body.admin-bar .dg-aviso { top: 32px; }
body.dg-con-aviso .site-header { top: var(--dg-aviso); }
body.dg-con-aviso.admin-bar .site-header { top: calc(var(--dg-aviso) + 32px); }
body.dg-con-aviso.home .site-header { top: var(--dg-aviso); }
body.dg-con-aviso.home.admin-bar .site-header { top: calc(var(--dg-aviso) + 32px); }
.dg-hero-video__contenido { padding-top: calc(var(--dg-cabecera) + var(--dg-aviso) + 2.5rem); }
@media (max-width: 760px) {
	body.dg-con-aviso { --dg-aviso: 40px; }
	.dg-aviso { font-size: .95rem; padding: 0 .6rem; }
	.dg-aviso__largo, .dg-aviso__cta { display: none; }
	.dg-aviso__corto { display: inline; }
	.dg-aviso__txt { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}

/* ===== Black Friday: sección grande ===== */
.dg-bf { position: relative; overflow: hidden; isolation: isolate; color: #F9FAFB; padding: 0 0 clamp(3rem, 7vw, 6rem);
	background: radial-gradient(60rem 34rem at 78% 55%, rgba(249, 115, 22, .55), transparent 62%), radial-gradient(40rem 24rem at 0% 100%, rgba(250, 204, 21, .16), transparent 60%), #05070D; }
.dg-bf::before { content: ""; position: absolute; inset: -60%; z-index: -2; pointer-events: none;
	background: repeating-conic-gradient(from 0deg at 72% 55%, rgba(249, 115, 22, .13) 0 5deg, transparent 5deg 15deg); animation: dg-rayos 90s linear infinite; }
.dg-bf::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: .5;
	background: linear-gradient(180deg, rgba(5, 7, 13, .1), rgba(5, 7, 13, .85) 92%), repeating-linear-gradient(90deg, rgba(255, 255, 255, .025) 0 1px, transparent 1px 90px); }
@keyframes dg-rayos { to { transform: rotate(360deg); } }
.dg-bf__cinta { overflow: hidden; background: linear-gradient(90deg, #FACC15, #F59E0B); color: #111827; border-top: 3px solid #111827; border-bottom: 3px solid #111827; }
.dg-bf__cinta-in { display: flex; width: max-content; animation: dg-cinta 40s linear infinite; }
.dg-bf__cinta-in span { flex: none; padding: .55rem 1.6rem; font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 1.15rem; letter-spacing: .12em; text-transform: uppercase; }
.dg-bf__cinta-in span::after { content: "★"; margin-left: 3rem; }
@keyframes dg-cinta { to { transform: translateX(-50%); } }
.dg-bf__in { max-width: 1240px; margin: 0 auto; padding: clamp(2.5rem, 6vw, 5rem) 1.25rem 0; display: grid; gap: 3rem; align-items: center; }
@media (min-width: 900px) { .dg-bf__in { grid-template-columns: 1.05fr .95fr; } }
.dg-bf__sello { display: inline-block; margin: 0 0 1rem; padding: .4rem 1rem; border-radius: 999px; background: #FACC15; color: #111827; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; font-size: .9rem; animation: dg-latido 1.8s ease-in-out infinite; }
@keyframes dg-latido { 50% { transform: scale(1.05); } }
.dg-bf__titulo { margin: 0; font-size: clamp(4rem, 14vw, 10rem); line-height: .86; letter-spacing: -.02em; text-transform: uppercase; color: #fff; }
.dg-bf__titulo span { display: block; }
.dg-bf__titulo-2 { background: linear-gradient(100deg, #FDE047, #F97316 60%, #EA580C); -webkit-background-clip: text; background-clip: text; color: transparent; filter: drop-shadow(0 0 28px rgba(249, 115, 22, .45)); }
.dg-bf__producto { margin: 1.25rem 0 .5rem; font-family: var(--wp--preset--font-family--barlow); font-size: clamp(1.3rem, 3vw, 1.9rem); font-weight: 700; color: #E5E7EB; }
.dg-bf__precio { display: flex; flex-wrap: wrap; align-items: baseline; gap: 1.2rem; margin: 0 0 1.25rem; font-family: var(--wp--preset--font-family--barlow); }
.dg-bf__precio del { font-size: clamp(1.8rem, 4vw, 2.6rem); color: #9CA3AF; text-decoration-thickness: 4px; text-decoration-color: #EF4444; }
.dg-bf__precio ins { text-decoration: none; font-size: clamp(5rem, 15vw, 9.5rem); line-height: .9; font-weight: 700; color: #FDE047; text-shadow: 0 0 40px rgba(250, 204, 21, .4); }
.dg-bf__precio ins .woocommerce-Price-currencySymbol { font-size: .55em; margin-left: .05em; }
.dg-bf__cuenta { display: inline-grid; grid-auto-flow: column; gap: .7rem; margin: 0 0 1.5rem; }
.dg-bf__cuenta div { min-width: 4.6rem; text-align: center; padding: .6rem .5rem .45rem; border-radius: 14px; background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .18); backdrop-filter: blur(6px); }
.dg-bf__cuenta b { display: block; font-family: var(--wp--preset--font-family--barlow); font-size: 2.6rem; line-height: 1; color: #FDE047; font-variant-numeric: tabular-nums; }
.dg-bf__cuenta small { display: block; margin-top: .2rem; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: #D1D5DB; }
.dg-bf__lista { list-style: none; margin: 0 0 1.75rem; padding: 0; }
.dg-bf__lista li { margin: 0 0 .4rem; font-size: 1.1rem; color: #E5E7EB; }
.dg-bf__lista li::before { content: "✓ "; color: #FDE047; font-weight: 700; }
.dg-bf__cta { font-size: clamp(1.3rem, 3.2vw, 1.8rem); padding: .85em 1.6em; animation: dg-pulso-cta 2.2s infinite; }
@keyframes dg-pulso-cta { 0% { box-shadow: 0 10px 24px -10px rgba(194, 65, 12, .8), 0 0 0 0 rgba(249, 115, 22, .6); } 70% { box-shadow: 0 10px 24px -10px rgba(194, 65, 12, .8), 0 0 0 20px rgba(249, 115, 22, 0); } 100% { box-shadow: 0 10px 24px -10px rgba(194, 65, 12, .8), 0 0 0 0 rgba(249, 115, 22, 0); } }
.dg-bf__foto { position: relative; display: block; }
.dg-bf__img { display: block; width: 100%; height: auto; border-radius: 28px; transform: rotate(2.5deg); border: 3px solid rgba(255, 255, 255, .85);
	box-shadow: 0 40px 90px -20px rgba(0, 0, 0, .85), 0 0 0 10px rgba(250, 204, 21, .12), 0 0 90px rgba(249, 115, 22, .45); transition: transform .35s ease; }
.dg-bf__foto:hover .dg-bf__img { transform: rotate(0) scale(1.03); }
.dg-bf__estrella { position: absolute; z-index: 2; top: -1.5rem; right: -.5rem; width: clamp(8rem, 22vw, 12.5rem); aspect-ratio: 1; display: grid; place-content: center; text-align: center; color: #111827;
	background: linear-gradient(135deg, #FDE047, #F59E0B); clip-path: polygon(50.0% 0.0%, 56.4% 9.5%, 65.5% 2.4%, 68.6% 13.5%, 79.4% 9.5%, 79.0% 21.0%, 90.5% 20.6%, 86.5% 31.4%, 97.6% 34.5%, 90.5% 43.6%, 100.0% 50.0%, 90.5% 56.4%, 97.6% 65.5%, 86.5% 68.6%, 90.5% 79.4%, 79.0% 79.0%, 79.4% 90.5%, 68.6% 86.5%, 65.5% 97.6%, 56.4% 90.5%, 50.0% 100.0%, 43.6% 90.5%, 34.5% 97.6%, 31.4% 86.5%, 20.6% 90.5%, 21.0% 79.0%, 9.5% 79.4%, 13.5% 68.6%, 2.4% 65.5%, 9.5% 56.4%, 0.0% 50.0%, 9.5% 43.6%, 2.4% 34.5%, 13.5% 31.4%, 9.5% 20.6%, 21.0% 21.0%, 20.6% 9.5%, 31.4% 13.5%, 34.5% 2.4%, 43.6% 9.5%); animation: dg-latido 2.4s ease-in-out infinite; filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .5)); }
.dg-bf__estrella b { font-family: var(--wp--preset--font-family--barlow); font-size: clamp(2.6rem, 7vw, 4.4rem); line-height: .9; }
.dg-bf__estrella small { font-weight: 800; letter-spacing: .2em; text-transform: uppercase; font-size: .8rem; }
@keyframes dg-gira { to { transform: rotate(360deg); } }
@keyframes dg-gira-inversa { to { transform: rotate(-360deg); } }
@media (max-width: 760px) { .dg-bf__cuenta div { min-width: 3.7rem; } .dg-bf__cuenta b { font-size: 2rem; } .dg-bf__estrella { right: 0; top: -1rem; } }

/* Banner con cuenta atrás en la ficha del producto */
.dg-bf-mini { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin: 0 0 1.5rem; padding: 1rem 1.4rem; border-radius: var(--dg-radio-xl);
	background: linear-gradient(100deg, #05070D, #1B2433 60%, #7C2D12); color: #fff; border: 2px solid #FACC15; box-shadow: 0 18px 40px -18px rgba(0, 0, 0, .6); }
.dg-bf-mini__txt { font-family: var(--wp--preset--font-family--barlow); font-size: 1.5rem; }
.dg-bf-mini__txt strong { background: #FACC15; color: #111827; padding: .05em .6em; border-radius: 999px; margin-right: .5rem; letter-spacing: .06em; }
.dg-bf-mini .dg-bf__cuenta { margin: 0; }
.dg-bf-mini .dg-bf__cuenta div { min-width: 3.6rem; }
.dg-bf-mini .dg-bf__cuenta b { font-size: 1.8rem; }

/* Pastilla de oferta en el hero */
.dg-hero-oferta { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .6rem .8rem; margin: 0 0 1.25rem; padding: .5rem .5rem .5rem .55rem; border-radius: 999px; text-decoration: none; color: #fff;
	background: rgba(17, 24, 39, .72); border: 1px solid rgba(250, 204, 21, .6); backdrop-filter: blur(6px); box-shadow: 0 0 30px rgba(250, 204, 21, .25); }
.dg-hero-oferta__sello { background: #FACC15; color: #111827; font-weight: 800; letter-spacing: .08em; font-size: .85rem; padding: .3em .85em; border-radius: 999px; }
.dg-hero-oferta__txt { font-weight: 600; }
.dg-hero-oferta__txt strong { color: #FDE047; font-size: 1.15em; }
.dg-hero-oferta__txt del { opacity: .65; margin-left: .3rem; }
.dg-hero-oferta__flecha { padding-right: .6rem; font-weight: 700; color: #FDE047; transition: transform .2s; }
.dg-hero-oferta:hover .dg-hero-oferta__flecha { transform: translateX(4px); }
.dg-hero-video .dg-hero-oferta { color: #fff; }

/* Franja: dato de clientes con enlace a las reseñas */
a.dg-franja__dato { text-decoration: none; color: inherit; transition: background-color .2s; }
a.dg-franja__dato:hover { background: #FFF7ED; }
.dg-estrellas { color: #B45309; letter-spacing: .08em; }

/* Casos de éxito */
.dg-casos { display: grid; gap: 1.4rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); margin: 2rem 0 1.5rem; }
.dg-caso { display: flex; flex-direction: column; background: #fff; border: 1px solid #E7E5E4; border-radius: var(--dg-radio-xl); box-shadow: var(--dg-sombra); padding: 1.5rem; }
.dg-caso__cab { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; margin: 0 0 .75rem; }
.dg-caso__quien { font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 1.3rem; color: var(--wp--preset--color--grafito); }
.dg-caso__vehiculo { display: inline-block; background: #FFF7ED; color: #9A3412; border-radius: 999px; padding: .1em .8em; font-size: .85rem; font-weight: 600; }
.dg-caso__estrellas { color: #B45309; letter-spacing: .1em; }
.dg-caso p { margin: 0 0 .6rem; font-size: 1rem; }
.dg-caso__etq { display: block; font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--naranja); margin-bottom: .15rem; }
.dg-caso blockquote { margin: auto 0 0; padding: .9rem 1rem; background: #F5F5F4; border-left: 4px solid var(--wp--preset--color--naranja); border-radius: 10px; font-style: italic; box-shadow: none; }
.dg-casos-resumen { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2rem; margin: 1rem 0 0; }
.dg-casos-resumen strong { font-family: var(--wp--preset--font-family--barlow); font-size: 3rem; line-height: 1; color: var(--wp--preset--color--naranja); }.woocommerce span.onsale { background: var(--wp--preset--color--naranja); color: #fff; border-radius: 999px; min-height: 0; min-width: 0; line-height: 1; padding: .55em 1em; font-family: var(--wp--preset--font-family--barlow); font-weight: 700; font-size: 1rem; top: .8rem; left: .8rem; right: auto; }
.woocommerce div.product p.price del, .woocommerce ul.products li.product .price del { color: #6B7280; font-weight: 500; font-size: .7em; }
.woocommerce div.product p.price ins, .woocommerce ul.products li.product .price ins { text-decoration: none; }

/* Listado del blog: título visible, extracto y botón "Leer artículo" */
.blog .site-main article, .archive:not(.woocommerce) .site-main article { margin-bottom: 2rem; }
.blog .inside-article, .archive:not(.woocommerce) .inside-article { border: 1px solid #E7E5E4; border-radius: var(--dg-radio-xl); box-shadow: var(--dg-sombra); padding: 1.5rem; background: #fff; }
.blog .entry-title, .archive:not(.woocommerce) .entry-title { font-family: var(--wp--preset--font-family--barlow); font-size: clamp(1.35rem, 3.4vw, 1.9rem); line-height: 1.2; margin: .2rem 0 .8rem; }
.blog .entry-title a, .archive:not(.woocommerce) .entry-title a { color: var(--wp--preset--color--grafito); text-decoration: none; }
.blog .entry-title a:hover, .archive:not(.woocommerce) .entry-title a:hover { color: var(--wp--preset--color--naranja); }
.blog .post-image, .archive:not(.woocommerce) .post-image { margin: 0 0 1rem; }
.blog .post-image img, .archive:not(.woocommerce) .post-image img { width: 100%; height: auto; border-radius: 12px; }
.dg-leer-mas-wrap { margin: 1rem 0 0; }
.dg-leer-mas { display: inline-block; background: var(--wp--preset--color--naranja); color: #fff !important; font-weight: 700; padding: .7em 1.4em; border-radius: 999px; text-decoration: none !important; min-height: 44px; line-height: 1.6; transition: background-color .2s, transform .2s; }
.dg-leer-mas:hover, .dg-leer-mas:focus-visible { background: #C2410C; transform: translateY(-1px); }

@media (prefers-reduced-motion: reduce) { .dg-bf::before, .dg-bf__cinta-in, .dg-bf__sello, .dg-bf__cta, .dg-bf__estrella, .dg-bf__estrella b, .dg-bf__estrella small { animation: none; } }
