/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/


.cmplz-cookiebanner .cmplz-buttons {
	flex-direction: row-reverse;
}

.grecaptcha-badge {
	visibility: hidden;
}
.muted-text{
	opacity: 0.82;
}
.slow-animated-img{
	animation: piper-float 8s ease-in-out infinite;
}
.w-toplink{
	border: 1px solid #ffcd00;
	border-radius: 50% !important;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
}
#wa-btn-row .wa-img{
	transition: .3s ease;
}
#wa-btn-row .wa-img:hover{
	transform: scale(1.1);
}
/* ============================================================
PIPER'S — CSS GENERAL del sitio
Destino: Impreza → Theme Options → Custom Code → Custom CSS
------------------------------------------------------------
ÍNDICE DE CLASES / REGLAS
- .l-header .l-subheader ............ blur del header transparente
- .l-header border-bottom ........... borde fino que se intensifica al scroll
- ::selection ....................... selección de texto amarillo/negro
- ::-webkit-scrollbar ............... scrollbar oscura con thumb dorado al hover
============================================================ */

/* HEADER — efecto glass: blur fuerte + saturación tras el fondo translúcido.
Ningún ajuste nativo (Design Options / Theme Options) cubre backdrop-filter;
los colores translúcidos (rgba(10,10,10,0.4/0.45)) sí vienen de
Theme Options → Colors → Header. */
.l-header .l-subheader {
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
}

/* HEADER — logo sticker con contorno crema (receta .pipers-logo.outline de la maqueta):
8 drop-shadows de 1px = contorno continuo alrededor de la silueta */
.l-header .w-image img {
	filter: drop-shadow(1px 0 0 #f1ead6) drop-shadow(-1px 0 0 #f1ead6)
		drop-shadow(0 1px 0 #f1ead6) drop-shadow(0 -1px 0 #f1ead6)
		drop-shadow(1px 1px 0 #f1ead6) drop-shadow(-1px -1px 0 #f1ead6)
		drop-shadow(1px -1px 0 #f1ead6) drop-shadow(-1px 1px 0 #f1ead6);
}

.l-header .l-subheader-h{
	max-width: 1760px !important;
}

/* HEADER — borde inferior fino; se intensifica con el header sticky
activo (la maqueta lo hace a partir de 20px de scroll). */
.l-header .l-subheader.at_middle {
	border-bottom: 1px solid rgba(241, 234, 214, 0.08);
	transition: border-color 0.25s ease;
}
.l-header.sticky .l-subheader.at_middle {
	border-bottom-color: rgba(241, 234, 214, 0.28);
}

/* HEADER — menú como la maqueta: Inter Tight 13.5px/500, tracking ligero,
28px entre items. El hover dorado ya viene de Theme Options → Colors → Header. */
.l-header .w-nav-anchor.level_1 { font-size: 13.5px; font-weight: 500; letter-spacing: 0.02em; }
.l-header .w-nav-list.level_1 { gap: 28px; }

/* HEADER — el logo sticker (90px) sobresale de la barra de 84px a propósito;
evitar que el header lo recorte. */
.l-header .l-subheader, .l-header .w-image { overflow: visible; }

/* SELECCIÓN — ningún ajuste de Theme Options la cubre. */
::selection {
	background: var(--color-content-primary, #ffcd00);
	color: #050505;
}

/* SCROLLBAR — ningún ajuste de Theme Options la cubre. */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--color-content-bg, #0a0a0a); }
::-webkit-scrollbar-thumb { background: #2a2a25; }
::-webkit-scrollbar-thumb:hover { background: #d6a800; }

/* ============================================================
PIPER'S — HOME · CSS residual de página
Destino: Custom CSS de la página Home (Page Settings → Custom CSS)
o Theme Options si se prefiere centralizar.
Solo lo que Design Options NO cubre: scaffolds sticky de scroll,
polaroids, marquee, hovers compuestos, posicionado de stickers.
Colores via var(--color-content-*) de Theme Options.
============================================================ */

/* ── Utilidades compartidas de la home ── */
/* Acentos de titulares: us_text FILTRA los  dentro del attr text (verificado en
producción; los  sí sobreviven) → los acentos van con : amarillo en recto por
defecto, itálica añadiendo la clase piper-rich-it al us_text */
.piper-rich em, .piper-rich i { color: var(--color-content-primary, #ffcd00) !important; font-style: normal; }
.piper-rich-it i { font-style: italic; }
/* Hero: el segundo  (MARCÓ.) va crema e itálica */
.piper-rich.piper-hero-title i:last-of-type { color: var(--color-content-heading, #f1ead6) !important; font-style: italic; }
.piper-mono { font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--color-content-faded, #6b6a63); }
.piper-gold { color: var(--color-content-primary, #ffcd00) !important; }
.piper-faded { color: var(--color-content-faded, #6b6a63); font-size: 14px; }
.piper-eyebrow { font-size: 11px; letter-spacing: 0.32em; color: var(--color-content-primary, #ffcd00); text-transform: uppercase; }

/* Listas numeradas 01·02·03 */
.piper-numlist ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.piper-numlist li { display: flex; gap: 25px; font-size: 14px; opacity: 0.82; }
.piper-numlist li span { color: var(--color-content-primary, #ffcd00); font-weight: 600; }
.piper-numlist-lines li { padding-bottom: 12px; border-bottom: 1px solid rgba(241, 234, 214, 0.18); }

/* Stickers flotantes (imagen absoluta + vaivén) */
.piper-sticker { position: absolute; z-index: 4; pointer-events: none; animation: piper-float 8s ease-in-out infinite; }
.piper-sticker img { filter: drop-shadow(0 8px 16px rgba(0,0,0,0.4)); }
@keyframes piper-float { 0%,100% { transform: rotate(var(--stk-rot,0deg)) translateY(0); } 50% { transform: rotate(calc(var(--stk-rot,0deg) + 0.6deg)) translateY(-6px); } }
.piper-stk-vinilo   { --stk-rot:-12deg; width:200px; top:260px; right: 4%; }
.piper-stk-vinilo.royal   { --stk-rot:-12deg; width:200px; top:0px; right: 40px; }

.piper-stk-bola     { --stk-rot:8deg;   width:220px; top:40px;  right:40px; }
.piper-stk-bola.royal { --stk-rot:8deg;   width:220px; bottom:40px;  left:40px; top: unset; right: unset;}

.piper-stk-gente    { --stk-rot:-6deg;  width:220px; bottom:-40px; left:-10px; }
.piper-stk-gente.royal    { --stk-rot:-6deg;  width:220px; top:0; bottom:unset; left:0px; }

.piper-stk-disco     { --stk-rot:-10deg; width:200px; top:0px;  right:40px; }
.piper-stk-disco.royal     { --stk-rot:-10deg; width:200px; top:0px;  right:40px; }

.piper-stk-bottom   { --stk-rot:-6deg;  width:220px; bottom:0px; left:0px; }


.piper-stk-carnet   { --stk-rot:-7deg;  width:220px; top:0px;  right:0px; }
.piper-stk-tarjeta  { --stk-rot:9deg;   width:170px; bottom:0px; right:0px; }
.piper-stk-arquimbau{ --stk-rot:-8deg;  width:180px; bottom:80px; right:48px; z-index:6; }
.piper-stk-gorra    { --stk-rot:9deg;   width:180px; top:-6rem;  right:40px; }
.piper-stk-pista    { --stk-rot:-8deg;  width:160px; top:-40px; left:-28px; } /* sobre el 1er producto Heritage */
.piper-stk-entrada  { --stk-rot:-9deg;  width:210px; top:0px;  right:48px; }
.piper-stk-avioneta { --stk-rot:-8deg;  width:220px; top:80px;  left:48px; }
.piper-stk-extra    { --stk-rot:6deg;   width:200px; bottom:60px; right:48px; }
.piper-stk-coche    { --stk-rot:-6deg;  width:240px; bottom:80px; left:56px; }
@media (max-width: 900px) { .piper-sticker { display: none; } }

/* Las secciones con stickers necesitan contexto y recorte */
.piper-paths, .piper-manifiesto, .piper-formats, .piper-socio,
.piper-heritage, .piper-eventos, .piper-cierre { position: relative; overflow: hidden; }

/* ── 01 HERO · scaffold sticky 400vh (vídeo scrub lo inyecta home.js) ── */
.piper-hero { height: 400vh !important; }
.piper-hero > .l-section-h, .piper-hero .l-section-h { position: sticky; top: 0; height: 100vh; max-width: none; display: flex; align-items: stretch; justify-content: center;}
.piper-hero .piper-scrub-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; z-index: 0; }
/*.piper-hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 1;
background: linear-gradient(180deg, rgba(5,5,5,0.5) 0%, rgba(5,5,5,0) 22%, rgba(5,5,5,0) 55%, rgba(5,5,5,0.88) 100%); }*/
/* La columna ocupa TODO el stage (100vh) y empuja su contenido al fondo: así la meta strip
(top:96px) y los ticks (top:12px) absolutos se anclan al viewport, no al bloque inferior */
/* .g-cols es flex item del stage → sin width encoge al contenido (bloque a media página) */
.piper-hero .g-cols { width: 100%; }
/* SOLO la columna exterior (.vc_col-sm-12) — las interiores 7/12 y 5/12 (.vc_col-sm-7/-5)
también llevan .wpb_column y no deben heredar ancho/padding/flex (se apilaban) */
.piper-hero .wpb_column.vc_col-sm-12 { position: relative; z-index: 2; padding: 0 0 24px; width: 100%;
	display: flex; flex-direction: column; justify-content: flex-end; background: linear-gradient(rgba(5, 5, 5, 0.5) 0%, rgba(5, 5, 5, 0) 22%, rgba(5, 5, 5, 0) 55%, rgba(5, 5, 5, 0.88) 100%);}
.piper-hero .wpb_column.vc_col-sm-12 .wpb_wrapper{
	max-width: var(--site-content-width);
	margin: 0 auto;
	width: 100%;
}
.piper-hero .wpb_column.vc_col-sm-12 > .vc_column-inner { width: 100%; }
.piper-hero-title { white-space: nowrap; text-shadow: 0 6px 40px rgba(0,0,0,0.6); margin-bottom: 0;
	letter-spacing: -0.04em; line-height: 0.95; /* la maqueta abre más el tracking que el h1 global (-0.01em) */ }
/* Botones nunca cortados: sin margen residual bajo la fila interior del hero */
.piper-hero .vc_inner, .piper-hero .wpb_wrapper > *:last-child { margin-bottom: 0; }
/* Sub y CTAs en la misma línea base (maqueta: texto izq + botones der, alineados abajo) */
.piper-hero .vc_inner .g-cols { align-items: flex-end; }
.piper-hero-sub, .piper-hero-sub p, .piper-hero .w-hwrapper { margin-bottom: 0; }
.piper-hero-sub { font-size: 17px; max-width: 520px; text-shadow: 0 2px 12px rgba(0,0,0,0.7); }
.piper-hero-sub em { color: var(--color-content-primary, #ffcd00); font-weight: 700; }
.piper-hero-meta { position: absolute; top: 96px; left: 0; right: 0; text-align: center; padding: 0 80px 16px;
	border-bottom: 1px solid rgba(241,234,214,0.18); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; z-index: 3; }
.piper-hero-tick { position: absolute; top: 12px; font-size: 10px; letter-spacing: 0.18em; opacity: 0.6; z-index: 4; }
.piper-hero-tick-l { left: 32px; } .piper-hero-tick-r { right: 32px; }
.piper-hero-ghost { background: rgba(0,0,0,0.35) !important; backdrop-filter: blur(6px); }
.piper-hero-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: rgba(241,234,214,0.12); z-index: 5; }
.piper-hero-progress > i { position: absolute; inset: 0; background: var(--color-content-primary, #ffcd00); transform-origin: left; transform: scaleX(0); }
@media (max-width: 1024px) { .piper-hero-title { white-space: normal; } }
/* ≤900: sin scrub — el scroll-scrubbing falla en táctil (scroll throttled durante el
momentum + restricciones de autoplay/seek); las secciones de vídeo pasan a una
pantalla estática con el vídeo en loop (lo gestiona home.js) */
@media (max-width: 900px) {
	.piper-hero { height: 100vh !important; height: 100svh !important; }
	.piper-hero .l-section-h { position: relative; height: 100%; }
	.piper-hero-meta { display: none; }
}

/* ── 02 MEMORIAL · scaffold sticky 300vh ── */
.piper-memorial { height: 300vh !important; }
.piper-memorial .l-section-h { position: sticky; top: 0; height: 100vh; display: block; }
/* Anclaje: las piezas absolutas de los escenarios sticky (título Memorial, polaroids,
tarjetas WYS, hint de Rolling) se posicionan contra el stage (.l-section-h), nunca
contra los contenedores intermedios de WPBakery — neutralizar su position */
.piper-memorial .g-cols, .piper-memorial .wpb_column, .piper-memorial .vc_column-inner, .piper-memorial .wpb_wrapper,
.piper-wys .g-cols, .piper-wys .wpb_column, .piper-wys .vc_column-inner, .piper-wys .wpb_wrapper,
.piper-rolling .g-cols, .piper-rolling .wpb_column, .piper-rolling .vc_column-inner, .piper-rolling .wpb_wrapper,
.piper-sky .g-cols, .piper-sky .wpb_column, .piper-sky .vc_column-inner, .piper-sky .wpb_wrapper { position: static !important; }
.piper-memorial::after { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
	background: radial-gradient(ellipse at center,rgba(0,0,0,0) 0%,rgba(0,0,0,0.55) 80%,rgba(0,0,0,0.95) 100%); }
.piper-mem-wm { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; pointer-events: none; z-index: 0; }
.piper-js .piper-mem-wm { opacity: 0; }
.piper-mem-wm img { width: min(60vw, 720px); height: auto; opacity: 0.10; filter: drop-shadow(0 0 40px rgba(216,177,58,0.15)); }
.piper-pola { position: absolute; z-index: 1; width: min(320px, 36vw); background: #f6efd8; padding: 10px 10px 28px;
	box-shadow: 0 18px 40px rgba(0,0,0,0.6), 0 4px 12px rgba(0,0,0,0.4); will-change: transform, opacity; }
/* Estados iniciales ocultos SOLO cuando el JS está activo (clase .piper-js en );
sin home.js la sección queda visible y estática, nunca en negro */
.piper-js .piper-pola { opacity: 0; transform: translate3d(0,60px,0); }
.piper-pola img { width: 100%; aspect-ratio: 1/1.1; object-fit: cover; background: #1a1814; height: 160px;}
.piper-pola-label { margin: 8px 0 0; font-size: 9px; letter-spacing: 0.2em; color: #6b5d36; text-align: center; text-transform: uppercase; }
.piper-pola-1 { left:10%; top:18%; --rot:-7deg; } .piper-pola-2 { left:36%; top:14%; --rot:4deg; }
.piper-pola-3 { left:64%; top:20%; --rot:-3deg; } .piper-pola-4 { left:12%; top:54%; --rot:5deg; }
.piper-pola-5 { left:40%; top:58%; --rot:-5deg; } .piper-pola-6 { left:66%; top:54%; --rot:6deg; }
.piper-mem-title { position: absolute; inset: 0; z-index: 3; display: flex; flex-direction: column; align-items: center; justify-content: center;
	text-align: center; padding: 0 24px; will-change: opacity, transform; }
.piper-js .piper-mem-title { opacity: 0; }
.piper-mem-h { font-size: clamp(56px, 11vw, 180px) !important; line-height: 0.92; }
@media (max-width: 900px) {
	.piper-memorial { height: auto !important; } .piper-memorial .l-section-h { position: relative; height: auto; padding: 80px 0; }
	.piper-mem-title { position: relative; opacity: 1 !important; }
	.piper-pola { position: relative; left: auto !important; top: auto !important; opacity: 1 !important; transform: none !important; width: 100%; margin: 16px auto; max-width: 360px; }
}

/* ── 03 MARQUEE ── */
.piper-marquee { border-top: 1px solid var(--color-content-border, rgba(241,234,214,0.12)); border-bottom: 1px solid var(--color-content-border, rgba(241,234,214,0.12)); background: #131311; overflow: hidden; }
.piper-marquee .l-section-h { max-width: none; padding: 0; }
.piper-marquee-track { display: flex; gap: 64px; padding: 16px 0; white-space: nowrap; animation: piper-marq 38s linear infinite;
	font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 800; font-size: 22px; text-transform: uppercase; }
.piper-marquee-track .star { color: var(--color-content-primary, #ffcd00); margin: 0 12px; }
@keyframes piper-marq { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ── 04 DOS CAMINOS ── */
.piper-sec-head {
	border-bottom: 1px solid rgba(241, 234, 214, 0.12);
	padding-bottom: 2.8rem;
}
.piper-sec-intro { font-size: clamp(15px, 1.2vw, 17px); opacity: 0.82; max-width: 380px; }
.piper-sec-intro em { color: var(--color-content-primary, #ffcd00); font-weight: 800; }
.piper-paths .ways-inner-row{
	gap: 24px;
	flex-wrap: nowrap;
}
.piper-path-card { background: #131311; border: 1px solid var(--color-content-border, rgba(241,234,214,0.12)); transition: border-color 0.3s ease; overflow: hidden; }

.piper-path-card:hover { border-color: var(--color-content-primary, #ffcd00); }
.piper-path-card .wpb_wrapper:first-of-type{
	display: flex;
	flex-direction: column;
	height: 100%;
}
.piper-path-card .piper-path-body{
	flex: 1;
}
.piper-path-card .piper-path-body>.w-btn-wrapper{
	margin-top: auto;
}
.piper-path-img { aspect-ratio: 16/10; overflow: hidden; position: relative; }
.piper-path-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s cubic-bezier(0.22,1,0.36,1); }
.piper-path-card:hover .piper-path-img img { transform: scale(1.06); }
.piper-path-img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(0,0,0,0.55) 100%); }
.piper-path-body { padding: 32px; gap: 18px; }
/* CTA de la card como en maqueta: fila inferior separada por borde, texto izq + flecha der */
.piper-path-body .w-btn { margin-top: auto; width: 100%; display: flex; justify-content: space-between;
	border-top: 1px solid var(--color-content-border, rgba(241,234,214,0.12)); padding-top: 16px; }

/* ── 05 MANIFIESTO ── */
.piper-manifiesto .years-inner-row{
	padding-bottom: 8rem;
}
.piper-manif-lead { font-size: clamp(20px, 2.4vw, 28px); line-height: 1.4; max-width: 580px; }
.piper-years { width: 100%; align-items: stretch; }
.piper-year { flex: 1; position: relative; padding-top: 18px; cursor: pointer; }
.piper-year::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: rgba(20,17,10,0.18); }
.piper-year::after { content: ""; position: absolute; top: 0; left: 0; height: 2px; width: 0; background: var(--color-content-primary, #ffcd00); transition: width 0.55s cubic-bezier(0.22,1,0.36,1); }
.piper-year.is-active::after { width: 100%; }
.piper-year-num { font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 800; font-size: 38px; line-height: 1; transition: color 0.35s ease; margin-bottom: 0; }
.piper-year.is-active .piper-year-num { color: var(--color-content-primary, #ffcd00); }
.piper-year-tag { font-size: 10px; letter-spacing: 0.2em; text-transform: uppercase; margin: 6px 0 0; }
.piper-year-desc { font-size: 13px; opacity: 0.75; margin: 8px 0 0; }
.piper-manif-collage { position: relative; min-height: 540px; }
.piper-manif-slot { position: absolute; background: #f4ede0; box-shadow: 0 30px 60px rgba(0,0,0,0.25), 0 8px 16px rgba(0,0,0,0.15); padding: 14px; }
.piper-slot-v { top: 0; right: 0; width: 62%; transform: rotate(2deg); }
.piper-slot-h { bottom: 20px; left: 0; width: 56%; transform: rotate(-4deg); }
.piper-slot-t { bottom: 320px; left: -8%; width: 220px; transform: rotate(-6deg); z-index: 3; background: #f6efd8; padding: 8px; }
.piper-slot-v img { aspect-ratio: 3/4; object-fit: cover; }
.piper-slot-h img { aspect-ratio: 4/3; object-fit: cover; }
.piper-manif-slot img { width: 100%; filter: saturate(0.85) contrast(1.05); }
.piper-manif-slot .us_img, .piper-manif-slot .w-image { display: none; }
.piper-manif-slot .w-image.is-active { display: block; animation: piper-fadeswap 0.6s ease; }
.piper-manif-cap { display: none; font-size: 10px; letter-spacing: 0.18em; color: #2a1f10; margin: 12px 0 0; text-transform: uppercase; }
.piper-manif-cap.is-active { display: block; }
@keyframes piper-fadeswap { 0% { opacity: 0.2; transform: scale(1.02); } 100% { opacity: 1; transform: scale(1); } }
@media (max-width: 900px) { .piper-manif-collage { min-height: 420px; margin-top: 40px; } .piper-slot-t { bottom: 220px; left: 0; } }

/* ── 06/08 SCRUB STAGES (Rolling Logo · Sky) ── */
.piper-rolling, .piper-sky { height: 260vh !important; }
.piper-sky { height: 400vh !important; }
.piper-rolling .l-section-h, .piper-sky .l-section-h { position: sticky; top: 0; height: 100vh; max-width: none; }
.piper-rolling .piper-scrub-video, .piper-sky .piper-scrub-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.piper-rolling::after { content: ""; position: absolute; inset: 0; pointer-events: none;
	background: linear-gradient(180deg, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0) 25%, rgba(0,0,0,0) 70%, rgba(0,0,0,0.55) 100%); }
.piper-rolling-hint { position: absolute; bottom: 28px; right: 32px; opacity: 0.7; letter-spacing: 0.22em; z-index: 2;
	color: var(--color-content-text, #f1ead6); /* cream como maqueta; el gris faded de .piper-mono se pierde sobre #0a0a0a */ }
@media (max-width: 900px) {
	.piper-rolling { height: 100vh !important; height: 100svh !important; }
	.piper-sky { height: 60vh !important; height: 60svh !important; }
	.piper-rolling .l-section-h, .piper-sky .l-section-h { position: relative; height: 100%; }
	.piper-sky .piper-scrub-video{
		object-fit: contain;
	}
	.piper-sky{
		min-height: unset !important;
	}
	
}

/* ── 07 FORMATOS ── */
#vip .royal-events-inner-row{
	gap: 16px;
	flex-wrap: nowrap;
}
.piper-fmt-card .wpb_wrapper:first-of-type{
	height: 100% !important;
	display: flex;
	flex-direction: column;
}

.piper-fmt-card { min-height: 520px; border: 1px solid var(--color-content-border, rgba(241,234,214,0.12)); position: relative; overflow: hidden;
	background-size: cover; background-position: center; transition: border-color 0.35s ease; }
.piper-fmt-card:hover { border-color: var(--color-content-primary, #ffcd00); }
.piper-fmt-card::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; opacity: 0; transition: opacity 0.45s ease;
	background: linear-gradient(180deg, rgba(10,10,10,0.55) 0%, rgba(10,10,10,0.85) 60%, rgba(10,10,10,0.95) 100%); }
.piper-fmt-card:hover::after { opacity: 1; }
.piper-fmt-card .vc_column-inner { position: relative; z-index: 2; padding: 32px; display: flex; flex-direction: column; height: 100%; }
.piper-fmt-code { font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 800; font-size: 120px; color: var(--color-content-primary, #ffcd00);
	line-height: 0.9; letter-spacing: -0.04em; text-shadow: 0 4px 24px rgba(0,0,0,0.55); margin-bottom: 0; }
.piper-fmt-text { opacity: 0; pointer-events: none; transition: opacity 0.35s ease; margin-top: 12px;flex: 1; }
.piper-fmt-card .piper-fmt-text>.w-btn-wrapper{
	margin-top: auto;
}
.piper-fmt-card:hover .piper-fmt-text { opacity: 1; pointer-events: auto; }
/* La maqueta usa "Abril Fatface" (display-it) para el nombre del formato; cargarla en
Theme Options → Typography (Google Font) o el fallback serif hará de sustituto */
.piper-fmt-name { font-style: italic; font-family: "Abril Fatface", Georgia, serif; font-weight: 400;
	font-size: 28px; text-transform: none; }
.piper-bespoke { background: linear-gradient(135deg, #0d0d0d 0%, #161310 55%, #1a1410 100%); border: 1px solid rgba(212,175,90,0.32); padding: 56px; position: relative; overflow: hidden; }
.piper-bespoke::before { content: "P"; position: absolute; right: -40px; top: -60px; font-family: "Abril Fatface", Georgia, serif; font-weight: 400;
	font-size: 360px; line-height: 1; color: var(--color-content-primary, #ffcd00); opacity: 0.07; letter-spacing: -0.06em; pointer-events: none; }
/* 4 esquinas doradas (hairline ticks de maqueta) en un solo pseudo-elemento */
.piper-bespoke::after { content: ""; position: absolute; inset: 14px; pointer-events: none; opacity: 0.7;
	background:
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) top left / 18px 1px,
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) top left / 1px 18px,
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) top right / 18px 1px,
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) top right / 1px 18px,
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) bottom left / 18px 1px,
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) bottom left / 1px 18px,
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) bottom right / 18px 1px,
		linear-gradient(var(--color-content-primary, #ffcd00), var(--color-content-primary, #ffcd00)) bottom right / 1px 18px;
	background-repeat: no-repeat; }
.piper-bespoke-btn { padding: 20px 28px !important; letter-spacing: 0.18em;
	box-shadow: 0 8px 28px -10px rgba(212,175,90,0.55); transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease; }
.piper-bespoke-btn:hover { transform: translateY(-2px); box-shadow: 0 14px 32px -8px rgba(212,175,90,0.7); }
.piper-bespoke-h { font-size: clamp(35px, 5vw, 72px) !important; line-height: 0.95; margin-bottom: 0; }
.piper-bespoke-it { font-family: var(--h1-font-family, "Abrade", sans-serif); font-style: italic; font-weight: 700; font-size: clamp(24px, 3vw, 40px);
	color: var(--color-content-primary, #ffcd00); line-height: 1.05; margin: 6px 0 0; }
.piper-bespoke-p { font-size: 14px; opacity: 0.7; max-width: 520px; margin-top: 22px; }
@media (max-width: 720px) { .piper-bespoke { padding: 40px 28px; } }

/* ── 09 SOCIO FUNDADOR ── */
.piper-socio-lead { font-size: clamp(20px, 2vw, 26px); line-height: 1.4; }
.piper-socio-lead strong { color: var(--color-content-primary, #ffcd00); }
.piper-price-row { border-bottom: 1px solid rgba(241,234,214,0.28); padding-bottom: 24px; }
.piper-price { font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 800; font-size: clamp(70px, 11vw, 140px);
	color: var(--color-content-primary, #ffcd00); line-height: 0.9; letter-spacing: -0.03em; margin-bottom: 0; }
.piper-socio-cards { position: relative; min-height: 560px; }
.piper-socio-cards::before { content: ""; position: absolute; left: 62%; top: 62%; transform: translate(-50%,-50%); width: 460px; height: 260px;
	background: radial-gradient(ellipse at center, rgba(216,177,58,0.45) 0%, rgba(216,177,58,0.18) 35%, transparent 70%); filter: blur(28px); pointer-events: none; }
.piper-scard { position: absolute; will-change: transform; width: min(320px, 30vw); }
.piper-scard-1 { left: 22%; top: 10%;  }
.piper-scard-2 { right: -6%; top: 26%;  }
.piper-scard-3 { left: 34%; bottom: 14%;  z-index: 2; }

@media screen and (width<=600px){
	.piper-scard-1 {
		left: 1%;
		top: 7%;
	}
	.piper-scard-2 {
		right: 1%;
		top: 26%;
	}
	.piper-scard.piper-scard-3 {
		position: static;
		max-width: 20rem !important;
		margin: 3rem auto 0;
		width: auto;
		/*left: 15%;
		bottom: -10%;
		z-index: 2;*/
	}
}


.piper-scard .number-wrapper{
	justify-content: space-between;
}

@media (max-width: 900px) { .piper-socio-cards { min-height: 420px; margin-top: 40px; } .piper-scard { /*width: 56vw;*/ max-width: 280px; } }

/* ── 10 WITH YOU SINCE · scaffold sticky 700vh ── */
/* Fallback explícito: si la var no resuelve, sin él el fondo queda transparente (body oscuro)
y los textos tinta #050505 desaparecen sobre él */
.piper-wys { height: 700vh !important; background: var(--color-alt-content-bg, #efe6cc); }
.piper-wys .l-section-h { background: var(--color-alt-content-bg, #efe6cc); }
.piper-wys .l-section-h { position: sticky; top: var(--header-height); height: 100vh; display: block; overflow: hidden; }
.piper-wys .l-section-h::before { content: ""; position: absolute; inset: 0; pointer-events: none;
	background: radial-gradient(ellipse at 50% 30%, rgba(212,175,90,0.12) 0%, transparent 60%); }
.piper-wys-head { position: absolute; top: 0; left: 0; right: 0; will-change: opacity, transform; z-index: 4; }
.piper-js .piper-wys-head { opacity: 0; }
.piper-wys-intro { font-style: italic; font-size: 16px; opacity: 0.85; text-align: right; }
.piper-wys-card { position: absolute; z-index: 2; padding: 10px; background: #f6efd8; border: 1px solid rgba(0,0,0,0.12);
	box-shadow: 0 24px 60px -20px rgba(60,40,20,0.45), 0 4px 12px rgba(60,40,20,0.22);
	will-change: transform, opacity; }
.piper-js .piper-wys-card { opacity: 0; transform: translate3d(130vw,0,0); }
.piper-wys-card img { width: 100%; object-fit: cover; filter: sepia(0.45) saturate(0.85) contrast(1.05) brightness(0.92); }
.piper-wys-card:not(.not-top) img {object-position: top;}
/* 6 posiciones compartidas por era (x/y relativos a la franja central 34%–78%) */
.piper-wp-1 { left: 10vw; top: 20vh; width: min(220px,15vw); --rot:-4.5deg; } .piper-wp-1 img { aspect-ratio: 3/4; }
.piper-wp-2 { left: 34vw; top: 22vh; width: min(270px,20vw); --rot:2.5deg; }  .piper-wp-2 img { aspect-ratio: 4/3; }
.piper-wp-3 { left: 66vw; top: 21vh; width: min(215px,15vw); --rot:-2deg; }   .piper-wp-3 img { aspect-ratio: 3/4; }
.piper-wp-4 { left: 10vw; top: 45vh; width: min(265px,20vw); --rot:3.5deg; }  .piper-wp-4 img { aspect-ratio: 4/3; }
.piper-wp-5 { left: 39vw; top: 47vh; width: min(220px,15vw); --rot:-3deg; }   .piper-wp-5 img { aspect-ratio: 3/4; }
.piper-wp-6 { left: 67vw; top: 45vh; width: min(225px,15vw); --rot:4deg; }    .piper-wp-6 img { aspect-ratio: 3/4; }
.piper-wys-meta { display: flex; justify-content: space-between; font-size: 9px; letter-spacing: 0.18em; color: #6b5d36; text-transform: uppercase; margin-top: 10px; }
.piper-wys-meta span:last-child { color: #050505; }
.piper-wys-quote { margin-top: 8px; font-style: italic; font-size: 11px; line-height: 1.4; color: #050505; opacity: 0.85; }
.piper-wys-closing { position: absolute; left: 50%; top: 62%; transform: translate(-50%,-50%); z-index: 3; pointer-events: none;
	white-space: nowrap; font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 700; font-size: clamp(32px, 5vw, 72px); color: #050505; margin-bottom: 0; }
.piper-js .piper-wys-closing { opacity: 0; }
.piper-wys-timeline { position: absolute; left: 0; right: 0; bottom: 17.5vh; padding: 0 6vw; z-index: 5; }
.piper-wys-rail { position: relative; height: 1px; background: rgba(0,0,0,0.18); }
.piper-wys-fill { position: absolute; top: 0; left: 0; height: 1px; width: 0; background: var(--color-content-primary, #ffcd00); box-shadow: 0 0 8px rgba(212,175,90,0.6); }
.piper-wys-playhead { position: absolute; top: -6px; left: 0; width: 13px; height: 13px; border-radius: 50%; background: var(--color-content-primary, #ffcd00);
	box-shadow: 0 0 0 4px rgba(212,175,90,0.22); transform: translateX(-50%); }
.piper-wys-yearlabel { position: absolute; top: -28px; left: 50%; transform: translateX(-50%); font-size: 12px; color: var(--color-content-primary, #ffcd00); white-space: nowrap; font-weight: 500; }
.piper-wys-tick { position: absolute; top: -3px; width: 1px; height: 7px; background: rgba(0,0,0,0.35); transform: translateX(-50%); }
.piper-wys-years { position: relative; margin-top: 12px; height: 14px; }
.piper-wys-years span { position: absolute; transform: translateX(-50%); font-size: 12px; opacity: 0.85; color: #050505; }
.piper-wys-years span.is-edge { color: var(--color-content-primary, #ffcd00); }
.piper-wys-eralabel { position: absolute; top: 26vh; left: 6vw; z-index: 4; font-size: 11px; letter-spacing: 0.28em; text-transform: uppercase; color: #6b5d36; }
@media (max-width: 900px) {
	.piper-wys { height: auto !important; } .piper-wys .l-section-h { position: relative; height: auto; padding: 0 0 80px; overflow: visible; }
	.piper-wys-head { position: relative; opacity: 1 !important; padding-top: 0; }
	.piper-wys-card { 
		position: relative;
		left: auto !important;
		top: auto !important;
		width: 100% !important;
		opacity: 1 !important;
		transform: none !important;
		margin: 2rem 0;
		flex: 0 0 82%;
		scroll-snap-align: center;
		box-shadow: 0 15px 25px -20px rgba(60, 40, 20, 0.45), 0 4px 12px rgba(60, 40, 20, 0.22);
	}
	/*.piper-wys>.l-section-h.i-cf>.g-cols>.wpb_column > .vc_column-inner > .wpb_wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }*/
	.piper-wys .piper-wys-head{
		grid-column: 1 / 3;
	}
	.piper-wys-closing { position: relative; left: auto; top: auto; transform: none; opacity: 1 !important; white-space: normal; grid-column: 1 / 3;transform: unset !important;text-align: center;margin: 2rem 0 0.5rem; }
	.piper-wys .piper-wys-card .w-image{flex: 1;}


	/* el wrapper apila en vertical: cabecera arriba, carril debajo */
	.piper-wys > .l-section-h.i-cf > .g-cols > .wpb_column > .vc_column-inner > .wpb_wrapper {
		display: flex;
		flex-direction: column;
		gap: 24px;
	}

	/* la cabecera ocupa el ancho completo, no entra en el carril */
	.piper-wys > .l-section-h.i-cf > .g-cols > .wpb_column > .vc_column-inner > .wpb_wrapper > .piper-wys-head {
		width: 100%;
	}

	/* la envoltura de tarjetas pasa a carril horizontal deslizable */
	.piper-wys .piper-wys-track {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		gap: 16px;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 16px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;            /* Firefox */
		align-items: stretch;
	}
	.piper-wys .piper-wys-track::-webkit-scrollbar {
		display: none;                    /* Chrome/Safari: oculta la barra */
	}


}


@media (max-width: 600px) { 
	.piper-wys>.l-section-h.i-cf>.g-cols>.wpb_column > .vc_column-inner > .wpb_wrapper { grid-template-columns: 1fr; } 
	.piper-wys .piper-wys-head, .piper-wys-closing{
		grid-column: auto;
	}
}

/* ── 11 HERITAGE ── */
/*.piper-heritage-title { text-align: center; font-size: 9.2vw !important; white-space: nowrap; line-height: 0.92; }*/
.piper-heritage-lifestyle img { width: 100%; height: auto; }
.piper-prod-card { position: relative; }
.piper-prod-card .piper-prod-base, .piper-prod-card .piper-prod-hover { aspect-ratio: 4/5; overflow: hidden; }
.piper-prod-card .piper-prod-base img, .piper-prod-card .piper-prod-hover img { width: 100%; height: 100%; object-fit: cover; transition: opacity 0.5s ease; }
.piper-prod-hover { position: absolute; top: 0; left: 0; right: 0; opacity: 0; transition: opacity 0.5s ease; }
.piper-prod-card:hover .piper-prod-hover { opacity: 1; }
.piper-prod-card:hover .piper-prod-base img { opacity: 0; }
.piper-prod-meta { margin-top: 16px; }
/* Fondos placeholder por producto (la maqueta los pinta tras los PNG transparentes) */
.piper-prod-1 .piper-prod-base, .piper-prod-1 .piper-prod-hover { background: #c9c8c2; }
.piper-prod-2 .piper-prod-base, .piper-prod-2 .piper-prod-hover { background: #e7dcc7; }
.piper-prod-3 .piper-prod-base, .piper-prod-3 .piper-prod-hover { background: #efeae0; }
.piper-prod-4 .piper-prod-base, .piper-prod-4 .piper-prod-hover { background: #cfcfce; }
.piper-prod-meta p { font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 600; font-size: 16px; margin-bottom: 0; text-transform: none; }



/* ── 12 EVENTOS — el diseño de tarjeta vive en el Grid Layout (grid-eventos) ── */
.events-carousel .event-content-wrapper{
	aspect-ratio: 1 / 1;
}
.events-carousel .event-content-wrapper .overlay{
	position: absolute;
	inset: -1px;
	width: auto;
	height: auto;
	background: linear-gradient(rgba(10, 10, 10, 0.6) 0%, rgba(10, 10, 10, 0.7) 55%, rgba(10, 10, 10, 1) 100%);
	z-index: -1;
}


#eventos .events-carousel, 
#eventos .events-carousel{
	overflow: hidden;
	position: relative;
	pointer-events: none;
}
#eventos .events-carousel::after,
#eventos .events-carousel::after {
	content: "";
	position: absolute;
	inset: 0;
	background: #4f4f4f4a;
	z-index: 5;
	pointer-events: none; 
}
#eventos .events-carousel::before,
#eventos .events-carousel::before {
	content: "PRÓXIMAMENTE";
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #e8b024;
	color: #1a1400;
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 5px;
	text-transform: uppercase;
	padding: 14px 0;
	z-index: 6;
	box-shadow: 0 0 24px rgba(0, 0, 0, .6);
}





/* ── 13 CIERRE · fondo multicapa (fachada + glow) — receta multicapa por clase ── */
.piper-cierre { position: relative; border-top: 1px solid var(--color-content-border, rgba(241,234,214,0.12)); }
.piper-cierre::before { content: ""; position: absolute; inset: 0; z-index: 0; opacity: 0.2; pointer-events: none;
	background: url('/wp-content/uploads/2026/06/pipers-facade.webp') center / cover no-repeat; /* ← REEMPLAZAR URL del medio (pipers-facade) desde Biblioteca WP */ }
.piper-cierre::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
	background: radial-gradient(ellipse at 50% 80%, rgba(216,177,58,0.18), transparent 60%); }
.piper-cierre .l-section-h { position: relative; z-index: 2; }
.piper-cierre-h { text-align: center; font-size: clamp(45px, 10vw, 180px) !important; line-height: 1.1; }
.piper-cierre-p { text-align: center; max-width: 640px; margin: 0 auto; font-size: 18px; opacity: 0.85; }




/* ============================================================
PIPER'S — FOOTER · CSS residual
Destino: Impreza → Theme Options → Custom Code → Custom CSS
(el footer sale en todas las páginas; fichero propio por
organización, se pega a continuación de global.css)
------------------------------------------------------------
Los paddings/fondos van por clase (no en vc_custom_) para no
depender de la regeneración de CSS del Footer Builder.
============================================================ */

/* Fila principal */
.piper-footer { background: #0a0a0a; border-top: 1px solid rgba(241,234,214,0.28);
	padding-top: 72px; padding-bottom: 48px; }
.piper-ft-logo img { max-height: 110px; width: auto;
	filter: drop-shadow(1px 0 0 #f1ead6) drop-shadow(-1px 0 0 #f1ead6)
		drop-shadow(0 1px 0 #f1ead6) drop-shadow(0 -1px 0 #f1ead6)
		drop-shadow(1px 1px 0 #f1ead6) drop-shadow(-1px -1px 0 #f1ead6)
		drop-shadow(1px -1px 0 #f1ead6) drop-shadow(-1px 1px 0 #f1ead6); }
.piper-ft-claim { font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 500; font-size: 26px;
	line-height: 1.25; color: #ffffff; letter-spacing: -0.01em; max-width: 360px; text-transform: none; margin: 0; }
.piper-ft-sub { font-size: 13px; color: var(--color-content-faded, #6b6a63); max-width: 340px; line-height: 1.55; margin: 0; }
.piper-ft-head { font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 500; font-size: 14px;
	color: #ffffff; letter-spacing: 0.04em; text-transform: none; margin: 0; }

/* Menús de columnas: compactos — los anchors de Impreza traen padding propio */
.piper-ft-menu .w-nav-anchor, .piper-ft-menu a { font-size: 13px; opacity: 0.78; padding: 0; line-height: 1.4; }
.piper-ft-menu .w-nav-item, .piper-ft-menu .menu-item, .piper-ft-menu li { margin: 0 0 10px; }
.piper-ft-menu a:hover, .piper-ft-menu .w-nav-anchor:hover { opacity: 1; color: var(--color-content-primary, #ffcd00); }
.piper-ft-contact p { font-size: 13px; opacity: 0.78; margin: 0 0 0.7rem; }

/* Socials: cuadrados, monocromos crema (sin brand colors), hover dorado */
.piper-ft-socials .w-socials-item-link { border: 1px solid rgba(241,234,214,0.28); border-radius: 0;
	color: #f1ead6 !important; background: transparent !important; }
.piper-ft-socials .w-socials-item-link i, .piper-ft-socials .w-socials-item-link svg { color: inherit !important; fill: currentColor; }
.piper-ft-socials .w-socials-item-link:hover { border-color: var(--color-content-primary, #ffcd00);
	color: var(--color-content-primary, #ffcd00) !important; }

/* Barra final: zona del wordmark gigante + línea divisoria sobre el copyright.
Wordmark decorativo generado por CSS (pieza no editorial). */
.piper-ft-bottom { position: relative; overflow: hidden; background: #0a0a0a;display: flex;align-items: flex-end;}
/*.piper-ft-bottom::before { content: "PIPER'S"; position: absolute; left: 0; right: 0; bottom: -0.12em; text-align: center;
font-family: var(--h1-font-family, "Abrade", sans-serif); font-weight: 800; font-size: clamp(180px, 28vw, 460px);
line-height: 0.85; letter-spacing: -0.04em; color: transparent;
-webkit-text-stroke: 1px rgba(216,177,58,0.35); pointer-events: none; }*/
.piper-ft-bottom .wpb_column { position: relative; z-index: 2; }
/*.piper-ft-bottom .l-section-h.i-cf>.g-cols { border-top: 1px solid rgba(241,234,214,0.12); padding-top: 24px; }*/
.piper-ft-bar, .piper-ft-legal a { font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--color-content-faded, #6b6a63); }
.piper-ft-bar { margin: 0; }
.piper-ft-legal .w-nav-list, .piper-ft-legal ul { display: flex; justify-content: flex-end; gap: 0px; list-style: none; margin: 0; }
.piper-ft-legal .w-nav-item, .piper-ft-legal li { margin: 0; }
.piper-ft-legal ul>li+li::before{
	display: inline-block;
	position: relative;
	content: "•";
	margin: 0 0.5em;
	color: #6b6a63;
	vertical-align: top;
}
footer .big-text{
	-webkit-text-stroke: 1px rgba(216, 177, 58, 0.35);
	pointer-events: none;
}
@media (max-width: 900px) {
	.piper-footer .wpb_column { margin-bottom: 32px; }
	.piper-ft-legal .w-nav-list, .piper-ft-legal ul { justify-content: flex-start; }
}



/*TEST*/

/* ============================================================
PIPER'S — HOME · RESPONSIVE (correcciones tablet/móvil)
Breakpoints alineados con Impreza: tablets ≤1024 · móviles ≤600
============================================================ */

/* ── TABLET y abajo (≤1024) ── */
@media (max-width: 1024px) {

	/* 04 FORMATOS: las 3 tarjetas en nowrap se aplastan → apilar a 1 col.
	Además en táctil no hay hover, así que el texto debe verse siempre. */
	#vip .royal-events-inner-row { flex-wrap: wrap !important; }
	#vip .royal-events-inner-row > .piper-fmt-card { width: 100%; }
	.piper-fmt-card { min-height: 0; }
	.piper-fmt-text { opacity: 1 !important; pointer-events: auto !important; margin-top: 16px; }
	.piper-fmt-card::after { opacity: 1; }      /* overlay siempre, para leer el texto */
	.piper-fmt-code { font-size: 88px; }

	/* 11 HERITAGE: 4 columnas (sm-3) son diminutas → 2 por fila */
	.piper-prod-grid > .piper-prod-card { width: 50%; margin-bottom: 1.5rem; }
	/* En táctil tampoco hay hover: mostramos la imagen "base" fija */
	.piper-prod-card:hover .piper-prod-hover { opacity: 0; }
}

/* ── MÓVIL (≤600) ── */
@media (max-width: 600px) {

	/* 04 DOS CAMINOS: las 2 cards en nowrap no apilaban → liberar el wrap */
	.piper-paths .ways-inner-row { flex-wrap: wrap !important; }
	.piper-paths .ways-inner-row > .piper-path-card { width: 100%; }

	/* 05 MANIFIESTO: la fila de años (w-hwrapper) se queda comprimida → apilar */
	.piper-years { flex-wrap: wrap; gap: 28px; }
	.piper-years > .piper-year { flex: 1 1 100%; }
	.piper-year-num { font-size: 44px; }

	/* 11 HERITAGE: en móvil, 1 producto por fila (Impreza ya lo hace, reforzamos) */
	.piper-prod-grid > .piper-prod-card { width: 100%; }

	/* 01 HERO: botones a ancho completo y sin alinear a la derecha */
	.piper-hero .w-hwrapper.align_right { --hwrapper-gap: 0.7rem; }
	.piper-hero-sub { font-size: 15px; }

	/* Acentos de display un punto más pequeños para que no desborden */
	.piper-bespoke { padding: 32px 22px; }
}



/*TEST*/





.secondary-header>.l-section-img{
	opacity: 0.3;
	mask-image: linear-gradient(black 80%, transparent);
}


/* NUESTRA HISTORIA */
@media (min-width: 600px) {
	#nh_counters-row > .l-section-h.i-cf {
		position: sticky;
		top: 0;
		height: 100vh;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

#nh_counters-row .w-counter .w-counter-title{
	color: #7b7568;
}
#nh_counters-row .yellow-text{
	color: var(--color-content-primary, #ffcd00);
}

#nh_counters-row .counters-wrapper{
	gap: 1rem;
}

#track>.l-section-h.i-cf{
	position: sticky;
	top: var(--header-height) !important;
	height: 80vh;
	padding-top: 1rem;
}
#track .track-wrapper{
	display: grid;
	gap: 2rem;
}
#track .track-wrapper:nth-child(odd){
	grid-template-columns: 0.6fr 1fr;
}
#track .track-wrapper:nth-child(even){
	grid-template-columns: 1fr 0.6fr;
}

#track .act-text .wrapper{
	display: flex;
	align-items: center;
	gap: 0.8rem;
}
#track .act-text .roman {
	color: var(--color-content-primary) !important;
	font-size: 64px !important;
	font-family: auto !important;
	font-style: italic !important;
}
#track .act-text .muted-text{
	color: var(--color-content-primary) !important;
	font-size: 22px !important;
}

@media screen and (width<=1024px){
	#track .title-inner-row{
		flex-direction: column;
		gap: 1rem;
	}
	#track .title-inner-row>.wpb_column{
		width: 100%;
		text-align: center;
	}
}
@media screen and (width<=600px){

	#track .track-wrapper:nth-child(odd) {
		display: flex;
		flex-direction: column-reverse;
	}
	#track .track-wrapper:nth-child(odd):not(:last-child){
		margin-bottom: 2rem;
	}
	#track .track-wrapper:nth-child(even){
		display: flex;
		flex-direction: column;
		margin-bottom: 2rem;
	}
	#track>.l-section-h.i-cf{
		height: auto;
		position: static;
	}
	#nh_reviews-row #reviews-wrapper{
		grid-template-columns: 1fr !important;
	}
}


#nh_reviews-row #reviews-wrapper{
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
	gap: 1rem;
	align-items: stretch;
	margin: 0 auto;
}

/******** VIP CLUB ********/
#vip_advantages .advantages-wrapper{
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 1rem;
	align-items: stretch;
}
#vip_advantages .advantages-wrapper>.w-vwrapper, #vip_advantages .advantages-wrapper>.w-vwrapper>*{
	transition: .3s ease;
}
#vip_advantages .advantages-wrapper>.w-vwrapper:hover{
	background-color: var(--color-content-primary, #ffcd00) !important;
}
#vip_advantages .advantages-wrapper>.w-vwrapper:hover>*{
	color: black !important;
}
.vip-club-form .highlighted{
	color: #ffcd00;
}

.vip-club-form {
	max-width: 760px;
	margin: 0 auto;
	padding: 40px;
	background: #f3e9da;
	border: 1px solid rgb(205 205 205);
	text-align: center;
}

.vip-eyebrow {
	color: #c39a3e;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	margin: 0 0 8px;
}

.vip-title {
	font-size: 40px;
	font-weight: 800;
	color: #111;
	margin: 0 0 12px;
}

.vip-subtitle {
	color: #555;
	font-size: 16px;
	margin: 0 0 28px;
}

/* Dos columnas para nombre + email */
.vip-row {
	display: flex;
	gap: 20px;
}
.vip-row .vip-field {
	flex: 1;
}

.vip-field {
	text-align: left;
	margin-bottom: 20px;
}

.vip-field label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #555;
	margin-bottom: 8px;
}

.vip-club-form input[type="text"],
.vip-club-form input[type="email"],
.vip-club-form input[type="tel"] {
	width: 100%;
	padding: 14px 16px;
	border: 1.5px solid #1a1a1a;
	border-radius: 6px;
	background: #fff;
	font-size: 15px;
	box-sizing: border-box;
	min-height: 3rem;
	height: auto;
	line-height: 1;
	color: black;
}

.vip-accept {
	text-align: left;
	font-size: 14px;
	color: #555;
	margin: 4px 0 24px;
}

.vip-club-form input[type="submit"] {
	width: 100%;
	padding: 18px;
	background: #c39a3e;
	color: #111;
	font-size: 17px;
	font-weight: 700;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background .2s;
}
.vip-club-form input[type="submit"]:hover {
	background: #b08930;
}
.vip-club-form .wpcf7-not-valid-tip{
	font-size: 14px;
	text-transform: none;
}
.vip-club-form input[type="checkbox"]{
	color: black;
	border: 1px solid black;
	width: 1rem;
	height: 1rem;
	font-size: 12px;
}

/* En móvil, una sola columna */
@media (max-width: 600px) {
	.vip-row { flex-direction: column; gap: 0; }
}

/* SOCIO FUNDADOR */
#founder_advantages .advantages-wrapper{
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
	align-items: stretch;
	gap: 1rem;
	margin-bottom: 1rem;
}
.piper-stage{display:flex;justify-content:center;padding:2.5rem 1rem;border-radius:16px;font-family:'Inter','Helvetica Neue',Arial,sans-serif}
.piper-card{position:relative;width:100%;max-width:340px;aspect-ratio:340/415;border-radius:18px;overflow:hidden;background:linear-gradient(165deg,#1b1813 0%,#100e0a 55%,#0a0907 100%);border:1px solid rgba(214,176,84,.38);box-shadow:0 0 0 1px rgba(0,0,0,.4),0 18px 50px -12px rgba(212,170,70,.45),0 0 70px -10px rgba(212,170,70,.25)}
.piper-glow{position:absolute;top:-30%;left:50%;transform:translateX(-50%);width:80%;height:55%;background:radial-gradient(ellipse at center,rgba(232,196,110,.16),transparent 70%);pointer-events:none}
.piper-watermark{position:absolute;right:-4%;bottom:14%;font-size:150px;font-weight:800;line-height:1;letter-spacing:-4px;color:rgba(224,190,110,.055);user-select:none;pointer-events:none}
.piper-content{position:relative;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:26px 26px 22px}
.piper-top{display:flex;justify-content:space-between;align-items:flex-start}
.piper-brand{font-size:22px;font-weight:800;letter-spacing:1.5px;color:#e3bd57}
.piper-since{font-size:9.5px;font-weight:500;letter-spacing:3px;color:#9a9488;margin-top:4px}
.piper-label{margin:0 0 14px;font-size:10.5px;font-weight:500;letter-spacing:2.6px;color:#8a857a}
.piper-number{display:flex;align-items:flex-end;gap:14px}
.piper-no{font-size:52px;font-weight:800;line-height:.9;color:#f3efe6}
.piper-blank{display:inline-block;width:78px;height:3px;background:#f3efe6;margin-bottom:10px;border-radius:2px}
.piper-count{margin:12px 0 18px;font-size:15px;font-weight:600;color:#d6b054}
.piper-role{margin:0;font-size:11.5px;font-weight:500;letter-spacing:2.6px;color:#8a857a}
.piper-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid rgba(214,176,84,.18)}
.piper-foot-label{font-size:9.5px;font-weight:500;letter-spacing:2px;color:#827d72}
/*.piper-price{font-size:13px;font-weight:700;letter-spacing:.5px;color:#d6b054}*/

#founder-img-1{
	--stk-rot: 5deg;
}
#founder-img-2{
	--stk-rot: -7deg;
}

@media screen and (width<=1024px){
	#founder_advantages .founder-advantajes-inner-row{
		flex-direction: column;
		gap: 1rem;
	}
	#founder_advantages .founder-advantajes-inner-row>.wpb_column{
		width: 100%;
		text-align: center;
	}
	#founder_advantages .founder-advantajes-inner-row .piper-sec-intro{
		max-width: unset;
	}
	#founder_card-row .g-cols>.wpb_column.vc_column_container{
		width: 100% !important;
	}
}

@media screen and (width<=900px){
	#founder_form .l-section-h.i-cf .g-cols>.wpb_column.vc_column_container{
		width: 100% !important;
	}
}


@media screen and (width<=600px){
	#founder_advantages .advantages-wrapper{
		grid-template-columns: 1fr;
	}
	.vip-club-form{
		padding: 40px 20px 20px;
	}
	.vip-field{
		margin-bottom: 10px !important;
	}

}


/* WITH YOU SINCE 1967 */
#wy_history .wpb_text_column .highlighted{
	display: inline-block;
	font-size: clamp(22px, 3vw, 30px);
	color: var(--color-content-primary, #ffcd00) !important;
	font-weight: 600;
	border-left: 2px solid;
	padding-left: 1rem;
}

#wy_history .vintage-wrapper .img-title{
	justify-content: space-between;
	align-items: center;
}
#wy_what .elements-wrapper{
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	align-items: stretch;
	gap: 1rem;
	margin-bottom: 1rem;
}
#wy_what .elements-wrapper>.w-vwrapper>.w-image .w-image-h{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 37px !important;
	padding: 0.5rem !important;
	background: #19191c !important;
	border: 1px solid #292722 !important;
}

#wy_form .memory-form form{
	margin: 0 auto;
	padding: 40px;
	background: #f3e9da;
	border: 1px solid rgb(205 205 205);
}

#wy_form .memory-form form label{
	display: block;
	font-size: 12px;
	letter-spacing: 1.5px;
	color: #555;
}
#wy_form .memory-form form label:not(:has(.wpcf7-list-item-label)){
	font-weight: 700;
	text-transform: uppercase;
}
#wy_form .memory-form form label:not(:has(+.wpcf7-form-control-wrap)){
	margin-bottom: 0.8rem;
}
#wy_form .memory-form form input[type="text"], #wy_form .memory-form form input[type="email"], #wy_form .memory-form form input[type="tel"],
#wy_form .memory-form form textarea{
	width: 100%;
	padding: 14px 16px;
	border: 1.5px solid #1a1a1a;
	border-radius: 6px;
	background: #fff;
	font-size: 15px;
	box-sizing: border-box;
	min-height: 3rem;
	height: auto;
	line-height: 1;
	color: black;
}

#wy_form .memory-form form input[type="file"]{
	background-color: #f5efe4;
	border: 1.5px solid #1a1a1a;
}
#wy_form .memory-form form .wpcf7-list-item>label{
	display: flex;
	align-items: flex-start;
}
#wy_form .memory-form form input[type="checkbox"]{
	border: 1.5px solid #1a1a1a;
	width: 16px;
	height: 16px;
	font-size: 12px;
}
#wy_form .memory-form form input[type="submit"]{
	width: 100%;
}
#wy_form .memory-form .cf7-hint{
	font-size: 14px;
}
#wy_form .memory-form form .wpcf7-not-valid-tip{
	font-size: 11px !important;
	margin-top: .3rem;
}
@media screen and (width<=900px){
	#wy_form .l-section-h.i-cf .g-cols>.wpb_column.vc_column_container{
		width: 100% !important;
	}
}



/*HERITAGE COLLECTION Y TIENDA*/
body.single.single-product .single-product-main-row .l-section-h.i-cf>.g-cols>.wpb_column:last-of-type .wpb_wrapper{
	height: 100%;
	display: flex;
	flex-direction: column;
}
.w-grid-item.product .img-wrapper{
	aspect-ratio: 4 / 5;
}

.w-grid-item.product .img-wrapper img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	max-width: unset;
}
.w-grid-item.product .product-info-wrapper{
	justify-content: space-between;
}
.w-btn-wrapper.woocommerce.usg_add_to_cart_1 .g-preloader{
	color: var(--color-content-primary);
}
.w-btn-wrapper.woocommerce.usg_add_to_cart_1 > a{
	position: relative;
	border-radius: 50%;
	padding: 0.7rem;
	display: flex;
	width: fit-content;
	height: fit-content;
	border: 1px solid #ffcd00;
	background-color: transparent;
}
.w-btn-wrapper.woocommerce.usg_add_to_cart_1 > a::before{
	content: '\f217';
	font-family: 'fontawesome';
	position: static;
	font-size: 1rem;
	width: 1rem;
	height: 1rem;
	color: #ffcd00;
	border: none;
	font-weight: 300;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	transition: 0.3s ease;
}
.w-btn-wrapper.woocommerce.usg_add_to_cart_1 > a:hover::before{
	color: black;
}
.w-btn-wrapper.woocommerce.usg_add_to_cart_1 > a.loading::before{
	opacity: 0;
}
#hc_products .w-filter .w-filter-list>.w-filter-item{
	width: 100%;
	margin-bottom: 2rem;
}
#hc_products .w-filter .w-filter-item-title{
	font-size: clamp(20px, 3vw, 30px);
}
#hc_products .w-filter .w-filter-item-content{
	background-color: #121214;
	width: 100%;
	padding: 1rem 0.5rem;
}
#hc_products .w-filter .w-filter-item-values{
	justify-content: space-around;
}
#hc_products .w-filter .w-filter-item-value.us-btn-style_3{
	transition: .3s ease;
	padding: 0.5rem;
	border-radius: 1rem;
}
#hc_products .w-filter .w-filter-item-value.us-btn-style_3:has(input:checked){
	background-color: #ffd840;
	color: black !important;
	font-weight: 600;
}
#hc_products .w-filter .w-filter-item-reset{
	vertical-align: middle;
	font-size: 16px;
	line-height: 2.8;
}
#hc_faqs .faqs-accordion .w-tabs-section-title{
	font-weight: 600;
}

#hc_faqs .faqs-accordion .w-tabs-section-control{
	color: var(--color-content-primary);
}

.woocommerce-cart label, .woocommerce-checkout label{
	color: #ffcd00 !important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__quantity{
	background: #ffcd00 !important;
}
.woocommerce-checkout .wc-block-components-order-summary-item__quantity>span{
	color: black !important;
}

.woocommerce-checkout .wp-element-button, .woocommerce-cart .wc-block-cart__submit-container .wp-element-button{
	background-color: black;
	border: 1px solid #ffcd00;
	border-radius: 4px;
	font-size: 1rem;
}

.woocommerce-checkout .wc-block-components-shipping-rates-control__package input.wc-block-components-radio-control__input{
	    background: white !important;
}

.woocommerce-page .variations_form select>option{
	background-color: black;
}

.product.product_tag-proximamente .w-btn-wrapper.woocommerce.usg_add_to_cart_1{
	display: none;
}


.product.product_tag-proximamente,
.vc_grid-item.product_tag-proximamente {
	position: relative;
	overflow: hidden;
}

.product.product_tag-proximamente>.w-grid-item-h, 
.vc_grid-item.product_tag-proximamente>.w-grid-item-h{
	overflow: hidden;
	position: relative;
	pointer-events: none;
}

.product.product_tag-proximamente>.w-grid-item-h::after,
.vc_grid-item.product_tag-proximamente>.w-grid-item-h::after {
	content: "";
	position: absolute;
	inset: 0;
	background: #c2c2c257;
	z-index: 10;
	pointer-events: none;
}
.product.product_tag-proximamente>.w-grid-item-h::before,
.vc_grid-item.product_tag-proximamente>.w-grid-item-h::before {
	content: "PRÓXIMAMENTE";
	position: absolute;
	top: 10%;
	right: -31%;
	width: 100%;
	background: #c9a45c;
	color: #111;
	text-align: center;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1px;
	padding: 8px 0;
	transform: rotate(45deg);
	z-index: 20;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}

@media screen and (width<=600px){
	#hc_merch-info .merch-info-wrapper{
		flex-direction: column-reverse;
		gap: 1rem;
	}
	#hc_merch-info .merch-info-wrapper>.w-vwrapper:first-child{
		margin: 0 3rem;
	}
}



/*ROLLING LOGO*/
#rl_1929 .advantajes-wrapper>.w-vwrapper{
	flex: 1;
}
#rl_1929 .advantajes-wrapper>.w-vwrapper .upper-line::before, #rl_gallery .reasons-wrapper>.w-vwrapper .upper-line::before{
	content: "";
	position: absolute;
	top:0;
	bottom: 0;
	left: 0;
	width: 0%;
	height: 100%;
	background-color: #ffcd00;
	transition: .3s ease;
}
#rl_1929 .advantajes-wrapper>.w-vwrapper:hover .upper-line::before, #rl_gallery .reasons-wrapper>.w-vwrapper:hover .upper-line::before{
	width: 100%;
}
#rl_gallery .car-carousel .w-image{
	transition: .3s ease;
}
#rl_gallery .car-carousel .w-image:hover{
	border-color: #ffcd00 !important;
}

#rl_gallery .reasons-wrapper{
	justify-content: space-between;
}
#rl_gallery .reasons-wrapper>.w-vwrapper{
	flex: 1;
}
#rl_services .uses-wrapper{
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
	align-items: stretch;
	gap: 1rem;
	margin-bottom: 1rem;
}
#rl_services .uses-wrapper>.w-vwrapper>.w-image .w-image-h{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 37px !important;
	padding: 0.5rem !important;
	background: #19191c !important;
	border: 1px solid #292722 !important;
}

#rl_big-img .w-image img{
	width: 100% !important;
}

#rl_carreq .l-section-h.i-cf>.g-cols>.wpb_column:first-of-type>.vc_column-inner>.wpb_wrapper{
	height: 100%;
}

#rl_carreq .car-img img{
	object-position: 10% 50%;
}

@media screen and (width<=1024px){

}


@media screen and (width<=600px){
	#rl_1929 .advantajes-wrapper{
		flex-direction: column;
		gap: 2rem;
	}
	#rl_1929 .advantajes-wrapper>.w-vwrapper{
		margin: 0 !important;
		width: 100%;
	}

	#rl_gallery .piper-sec-intro{
		max-width: unset !important;
	}
	#rl_gallery .reasons-wrapper{
		flex-direction: column;
		gap: 2rem;
	}
	#rl_gallery .reasons-wrapper>.w-vwrapper{
		margin: 0 !important;
		width: 100%;
		text-align: center;
	}
	#rl_gallery .reasons-wrapper>.w-vwrapper .upper-line{
		margin-left: auto;
		margin-right: auto;
	}

	#rl_services .uses-wrapper{
		grid-template-columns:  1fr;
	}

}

/*ROYAL EVENTS*/

#re_intro .included-wrapper{
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	align-items: stretch;
	gap: 1rem;
	margin-bottom: 1rem;
}

#re_intro .included-wrapper>.w-vwrapper>.w-image .w-image-h{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 37px !important;
	padding: 0.5rem !important;
	background: #19191c !important;
	border: 1px solid #292722 !important;
}
#re_intro .with-line .line{
	color: #ffcd00;
	font-size: 30px;
	line-height: 1;
	font-weight: 300;
	vertical-align: bottom;
}

.event-row .included-text ul{
	list-style-type: none;
	margin: 0;
}
.event-row .included-text ul .fa-check{
	font-weight: 400;
	margin-right: 0.5rem;
	color: #ffcd00;
}

#row_45_event>.l-section-h.i-cf{
	border: 1px solid #ffcd00;
	padding: 2rem;
}

@media screen and (width<=1440px){
	.piper-sticker.royal{
		display:none;
	}
}

@media screen and (width<=900px){
	#re_form .l-section-h.i-cf .g-cols>.wpb_column.vc_column_container{
		width: 100% !important;
	}
	.event-row .l-section-h.i-cf .g-cols>.wpb_column.vc_column_container{
		width: 100% !important;
	}
	#row_45_event.event-row .l-section-h.i-cf .g-cols{
		flex-direction: column-reverse;
	}
	.event-row{
		text-align: center !important;
	}
	.event-row .l-section-h.i-cf .g-cols{
		gap: 1.5rem;
	}
	.event-row .w-text{
		text-align: center !important;
	}
	.event-row .w-image{
		max-width: 30rem;
		margin: 1rem auto 0;
	}



}

@media screen and (width<=600px){
	#re_intro .included-wrapper{
		grid-template-columns: 1fr;
	}

}


.sp-form .highlighted{
	color: #ffcd00;
}

.sp-form {
	max-width: 760px;
	margin: 0 auto;
	padding: 40px;
	background: #f3e9da;
	border: 1px solid rgb(205 205 205);
	text-align: center;
}

.sp-eyebrow {
	color: #c39a3e;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	margin: 0 0 8px;
}

.sp-title {
	font-size: 40px;
	font-weight: 800;
	color: #111;
	margin: 0 0 12px;
}

.sp-subtitle {
	color: #555;
	font-size: 16px;
	margin: 0 0 28px;
}

/* Dos columnas para nombre + email */
.sp-row {
	display: flex;
	gap: 20px;
}
.sp-row .sp-field {
	flex: 1;
}

.sp-field {
	text-align: left;
	margin-bottom: 20px;
}

.sp-field label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #555;
	margin-bottom: 8px;
}

.sp-form input[type="text"],
.sp-form input[type="email"],
.sp-form input[type="tel"],
.sp-form select,
.sp-form textarea{
	width: 100%;
	padding: 14px 16px;
	border: 1.5px solid #1a1a1a;
	border-radius: 6px;
	background: #fff;
	font-size: 15px;
	box-sizing: border-box;
	min-height: 3rem;
	height: auto;
	line-height: 1;
	color: black;
}

.sp-accept {
	text-align: left;
	font-size: 14px;
	color: #555;
	margin: 4px 0 24px;
}

.sp-form input[type="submit"] {
	width: 100%;
	padding: 18px;
	background: #c39a3e;
	color: #111;
	font-size: 17px;
	font-weight: 700;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background .2s;
}
.sp-form input[type="submit"]:hover {
	background: #b08930;
}
.sp-form .wpcf7-not-valid-tip{
	font-size: 14px;
	text-transform: none;
}
.sp-form input[type="checkbox"]{
	color: black;
	border: 1px solid black;
	width: 1rem;
	height: 1rem;
	font-size: 12px;
}


/*CONTACTO*/

.contacto-form .highlighted{
	color: #ffcd00;
}

.contacto-form {
	max-width: 760px;
	margin: 0 auto;
	padding: 40px;
	background: #f3e9da;
	border: 1px solid rgb(205 205 205);
	text-align: center;
}

.contacto-title {
	font-size: 40px;
	font-weight: 800;
	color: #111;
	margin: 0 0 12px;
}

.contacto-subtitle {
	color: #555;
	font-size: 16px;
	margin: 0 0 28px;
}

/* Dos columnas para nombre + email */
.contacto-row {
	display: flex;
	gap: 20px;
}
.contacto-row .contacto-field {
	flex: 1;
}

.contacto-field {
	text-align: left;
	margin-bottom: 20px;
}

.contacto-field label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #555;
	margin-bottom: 8px;
}

.contacto-form input[type="text"],
.contacto-form input[type="email"],
.contacto-form input[type="tel"],
.contacto-form textarea,
.contacto-form select{
	width: 100%;
	padding: 14px 16px;
	border: 1.5px solid #1a1a1a;
	border-radius: 6px;
	background: #fff;
	font-size: 15px;
	box-sizing: border-box;
	min-height: 3rem;
	height: auto;
	line-height: 1;
	color: black;
}

.contacto-accept {
	text-align: left;
	font-size: 14px;
	color: #555;
	margin: 4px 0 24px;
}

.contacto-form input[type="submit"] {
	width: 100%;
	padding: 18px;
	background: #c39a3e;
	color: #111;
	font-size: 17px;
	font-weight: 700;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background .2s;
}
.contacto-form input[type="submit"]:hover {
	background: #b08930;
}
.contacto-form .wpcf7-not-valid-tip{
	font-size: 14px;
	text-transform: none;
}
.contacto-form input[type="checkbox"]{
	color: black;
	border: 1px solid black;
	width: 1rem;
	height: 1rem;
	font-size: 12px;
}

/* En móvil, una sola columna */
@media (max-width: 600px) {
	.contacto-form { flex-direction: column; gap: 0; }
	.contacto-form .contacto-row{
		flex-direction: column;
		gap:0;
	}
	.contacto-form .contacto-field{
		margin-bottom: 10px;
	}
}

#contact_form .text-info .fas, #contact_form .text-info .fab, #contact_form .text-info .far{
	color: #ffcd00;
	border-radius: 50%;
	background-color: #19191c;
	padding: 0.4rem 0.7rem;
	border: 1px solid #292722;
}
#contact_form .text-info>.w-text-h{
	display: flex;
	align-items: center;
}

@media screen and (width<=900px){
	#contact_form .l-section-h.i-cf .g-cols>.wpb_column.vc_column_container{
		width: 100% !important;
	}
}

/* FOOTER */
footer .piper-footer .g-cols{
	display: grid !important;
	grid-template-columns: 30% 23% 23% 24%;
}
footer .piper-footer .g-cols>.wpb_column{
	width: 100% !important;
}

@media screen and (width<=800px){
	footer .piper-footer .g-cols{
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}
}
@media screen and (width<=330px){
	footer .piper-footer .g-cols{
		grid-template-columns: 1fr;
		gap: 2rem;
	}
}
/*LEGAL*/
.legal-page-row h1{
	font-size: clamp(35px, 5vw, 70px) !important;
}
.legal-page-row h2{
	font-size: clamp(20px, 5vw, 40px) !important;
}