/* =========================================================
   13 SLASHERS — EDITORIAL BRAND PAGE
   Fully scoped.
   ========================================================= */

.ru-s13-page{
	background:#050505;
	color:#f6efe2;
}

.ru-s13-page .ru-button-group{
	display:flex;
	flex-wrap:wrap;
	gap:.8rem;
}

.ru-s13-page .ru-button--secondary{
	border-color:rgb(246 239 226 / .45);
	color:#f6efe2;
}

.ru-s13-page .ru-eyebrow{
	color:#c72d2d;
	letter-spacing:.14em;
}


/* =========================================================
   HERO
   ========================================================= */

.ru-s13-hero{
	position:relative;
	display:flex;
	align-items:flex-end;
	min-height:min(52rem,88vh);
	overflow:hidden;
	background:#050505;
}

.ru-s13-hero__media{
	position:absolute;
	inset:0;
}

.ru-s13-hero__media::after{
	content:"";
	position:absolute;
	inset:0;
	background:
		linear-gradient(
			90deg,
			rgb(0 0 0 / .97) 0%,
			rgb(0 0 0 / .84) 39%,
			rgb(0 0 0 / .25) 70%,
			rgb(0 0 0 / .38) 100%
		),
		linear-gradient(
			180deg,
			transparent 54%,
			#050505 100%
		);
}

.ru-s13-hero__media img{
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center 42%;
	filter:saturate(.82) contrast(1.08);
}

.ru-s13-hero__inner{
	position:relative;
	z-index:1;
	display:grid;
	gap:2rem;
	align-items:end;
	padding-top:clamp(7rem,14vw,11rem);
	padding-bottom:clamp(4rem,8vw,7rem);
}

.ru-s13-hero__copy{
	display:grid;
	gap:1rem;
	max-width:58rem;
	min-width:0;
}

.ru-s13-hero h1{
	max-width:9ch;
	margin:.35rem 0 .25rem;
	color:#f6efe2;
	font-size:clamp(4.4rem,11vw,9.5rem);
	line-height:.82;
	letter-spacing:-.05em;
}

.ru-s13-hero__lead{
	max-width:42rem;
	margin:0;
	color:#ded1bd;
	font-size:clamp(1.05rem,1.7vw,1.3rem);
	line-height:1.65;
}

.ru-s13-hero__case{
	display:grid;
	gap:.25rem;
	align-self:end;
	justify-self:start;
	max-width:23rem;
	padding:1.25rem 1.4rem;
	border:1px solid rgb(246 239 226 / .18);
	border-left:3px solid #b82121;
	background:rgb(0 0 0 / .63);
	backdrop-filter:blur(12px);
	text-transform:uppercase;
}

.ru-s13-hero__case span,
.ru-s13-hero__case small{
	color:#cfc1ad;
	font-size:.74rem;
	font-weight:850;
	letter-spacing:.1em;
}

.ru-s13-hero__case strong{
	color:#f6efe2;
	font-family:var(--ru-font-display);
	font-size:clamp(2.2rem,4vw,3.7rem);
	line-height:.88;
}


/* =========================================================
   MANIFIESTO
   ========================================================= */

.ru-s13-manifesto{
	padding:clamp(4.5rem,8vw,8rem) 0;
	background:linear-gradient(135deg,#070707,#180606 73%);
}

.ru-s13-manifesto__grid{
	display:grid;
	gap:2.75rem;
	align-items:start;
}

.ru-s13-manifesto__grid > *{
	min-width:0;
}

.ru-s13-manifesto h2{
	max-width:11ch;
	margin:.35rem 0 0;
	color:#f6efe2;
	font-size:clamp(3.2rem,6vw,5.7rem);
	line-height:.9;
}

.ru-s13-manifesto__copy{
	display:grid;
	gap:1.1rem;
	width:100%;
	max-width:48rem;
	min-width:0;
	color:#ded1bd;
	font-size:clamp(1.05rem,1.45vw,1.2rem);
	line-height:1.8;
}

.ru-s13-manifesto__copy p{
	margin:0;
}

.ru-s13-manifesto blockquote{
	width:100%;
	max-width:100%;
	margin:.75rem 0 0;
	padding:1.35rem 0 1.35rem 1.4rem;
	box-sizing:border-box;
	border-left:4px solid #b82121;
	color:#f6efe2;
	font-family:var(--ru-font-display);
	font-size:clamp(2rem,3.2vw,3.35rem);
	line-height:.95;
	text-transform:uppercase;
}


/* =========================================================
   ARCHIVO DE MARCA / EDITORIAL
   ========================================================= */

.ru-s13-editorial{
	padding:clamp(4.5rem,8vw,8rem) 0;
	background:
		radial-gradient(
			circle at 18% 20%,
			rgb(145 17 17 / .18),
			transparent 28%
		),
		#050505;
}

.ru-s13-editorial__grid{
	display:grid;
	gap:1.25rem;
	align-items:stretch;
}

.ru-s13-editorial__grid > *{
	min-width:0;
}

.ru-s13-editorial__image{
	overflow:hidden;
	border:1px solid rgb(246 239 226 / .12);
	border-radius:var(--ru-radius-md);
	background:#111;
}

.ru-s13-editorial__image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

.ru-s13-editorial__image--models{
	min-height:30rem;
}

.ru-s13-editorial__image--models img{
	object-position:center 33%;
}

.ru-s13-editorial__image--detail{
	min-height:20rem;
}

.ru-s13-editorial__content{
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	min-width:0;
	padding:clamp(1.5rem,3vw,2.6rem);
	border:1px solid rgb(246 239 226 / .12);
	border-radius:var(--ru-radius-md);
	background:
		linear-gradient(
			145deg,
			rgb(25 4 4 / .82),
			rgb(0 0 0 / .72)
		);
}

.ru-s13-editorial__content h2{
	width:100%;
	max-width:10ch;
	margin:.35rem 0 1rem;
	color:#f6efe2;
	font-size:clamp(2.65rem,4vw,4.35rem);
	line-height:.9;
	letter-spacing:-.03em;
}

.ru-s13-editorial__content > p:not(.ru-eyebrow){
	width:100%;
	max-width:57ch;
	margin:0;
	color:#d8ccb9;
	line-height:1.75;
}


/* Valores 01 / 02 / 03
   Se apilan para evitar compresión dentro de la columna central. */

.ru-s13-values{
	display:grid;
	grid-template-columns:1fr;
	gap:.9rem;
	margin-top:2rem;
	padding-top:.4rem;
}

.ru-s13-values article{
	display:grid;
	grid-template-columns:auto minmax(0,1fr);
	grid-template-areas:
		"number title"
		"number text";
	column-gap:1rem;
	row-gap:.25rem;
	align-items:start;
	min-width:0;
	padding:1rem 0;
	border-top:1px solid rgb(246 239 226 / .15);
}

.ru-s13-values span{
	grid-area:number;
	display:inline-grid;
	place-items:center;
	width:2rem;
	height:2rem;
	margin-top:.1rem;
	border-radius:50%;
	background:#b82121;
	color:#fff;
	font-size:.72rem;
	font-weight:900;
}

.ru-s13-values h3{
	grid-area:title;
	width:100%;
	max-width:none;
	margin:0;
	color:#f6efe2;
	font-size:clamp(1.15rem,1.35vw,1.5rem);
	line-height:1.1;
	letter-spacing:-.02em;
}

.ru-s13-values p{
	grid-area:text;
	width:100%;
	margin:0;
	color:#bfb19d;
	font-size:.95rem;
	line-height:1.5;
}


/* =========================================================
   CINTA RECUPERADA / VÍDEO
   ========================================================= */

.ru-s13-tape{
	padding:clamp(4rem,7vw,7rem) 0;
	border-block:1px solid rgb(246 239 226 / .11);
	background:
		repeating-linear-gradient(
			0deg,
			rgb(255 255 255 / .018) 0 1px,
			transparent 1px 5px
		),
		linear-gradient(
			110deg,
			#080808,
			#180505 55%,
			#060606
		);
}

.ru-s13-tape__inner{
	display:grid;
	grid-template-columns:1fr;
	gap:2rem;
	align-items:center;
}

.ru-s13-tape__inner > *{
	min-width:0;
}

.ru-s13-tape__copy{
	display:grid;
	align-content:center;
	gap:1.15rem;
	width:100%;
	min-width:0;
}

.ru-s13-tape h2{
	width:100%;
	max-width:11ch;
	margin:.1rem 0 0;
	color:#f6efe2;
	font-size:clamp(2.7rem,4vw,4rem);
	line-height:.9;
	letter-spacing:-.025em;
	white-space:normal;
}

.ru-s13-tape__copy > p:not(.ru-eyebrow){
	width:100%;
	max-width:39rem;
	margin:0;
	color:#bfb19d;
	line-height:1.7;
}

.ru-s13-tape__facts{
	display:flex;
	flex-wrap:wrap;
	gap:.65rem;
	margin-top:.35rem;
}

.ru-s13-tape__facts span{
	padding:.7rem .85rem;
	border:1px solid rgb(246 239 226 / .18);
	border-radius:999px;
	color:#d8ccb9;
	font-size:.72rem;
	font-weight:900;
	letter-spacing:.08em;
	text-transform:uppercase;
}


/* Vídeo */

.ru-s13-tape__video{
	position:relative;
	width:100%;
	min-width:0;
	margin:0;
	overflow:hidden;
	aspect-ratio:16/9;
	border:1px solid rgb(246 239 226 / .15);
	border-radius:var(--ru-radius-md);
	background:#050505;
	box-shadow:0 2rem 5rem rgb(0 0 0 / .46);
}

.ru-s13-tape__video iframe{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	border:0;
}

.ru-s13-tape__video img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	filter:saturate(.9) contrast(1.08);
}

.ru-s13-tape__video::after{
	content:"";
	position:absolute;
	inset:0;
	background:
		linear-gradient(
			180deg,
			rgb(0 0 0 / .02),
			rgb(0 0 0 / .38) 70%,
			rgb(0 0 0 / .72)
		);
	pointer-events:none;
}

.ru-s13-tape__video:has(iframe)::after{
	display:none;
}

.ru-s13-tape__video figcaption{
	position:absolute;
	z-index:2;
	inset:auto 1.2rem 1.2rem;
	display:grid;
	grid-template-columns:auto 1fr;
	grid-template-rows:auto auto;
	column-gap:.9rem;
	align-items:center;
	padding:1rem 1.05rem;
	border:1px solid rgb(246 239 226 / .16);
	background:rgb(0 0 0 / .64);
	backdrop-filter:blur(10px);
	text-transform:uppercase;
}

.ru-s13-tape__play{
	grid-row:1/3;
	display:grid;
	place-items:center;
	width:2.8rem;
	height:2.8rem;
	border-radius:50%;
	background:#b82121;
}

.ru-s13-tape__play::before{
	content:"";
	margin-left:.18rem;
	border-block:.45rem solid transparent;
	border-left:.72rem solid #fff;
}

.ru-s13-tape__video small{
	color:#cfc1ad;
	font-size:.68rem;
	font-weight:850;
	letter-spacing:.1em;
}

.ru-s13-tape__video strong{
	color:#f6efe2;
	font-family:var(--ru-font-display);
	font-size:clamp(1.5rem,3vw,2.4rem);
	line-height:.9;
}


/* =========================================================
   PRODUCTOS
   ========================================================= */

.ru-s13-products{
	padding:clamp(4.5rem,8vw,8rem) 0;
	background:#050505;
}

.ru-s13-products .ru-section-heading{
	margin-bottom:2rem;
}

.ru-s13-products .ru-section-heading--split > p{
	max-width:34rem;
	color:#a99b88;
}

.ru-s13-products__catalog .products{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:1.35rem;
	max-width:1180px;
	margin:0 auto;
	align-items:stretch;
}

.ru-s13-products__catalog .products > li{
	width:auto!important;
	margin:0!important;
	float:none!important;
}

.ru-s13-products__catalog .ru-product-card__title{
	min-height:3.25em;
}

.ru-s13-products__catalog .ru-product-card__meta{
	margin-top:auto;
	padding-top:.75rem;
}

.ru-s13-products__more{
	display:flex;
	justify-content:center;
	margin-top:2rem;
}

.ru-s13-products__empty{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:1.4rem;
	padding:1.6rem;
	border:1px solid rgb(246 239 226 / .14);
	border-radius:var(--ru-radius-md);
	background:linear-gradient(135deg,#171010,#080808);
}

.ru-s13-products__empty h3{
	margin:.2rem 0 .35rem;
	color:#f6efe2;
	font-size:clamp(2rem,4vw,3.3rem);
}

.ru-s13-products__empty p:not(.ru-eyebrow){
	margin:0;
	color:#bfb19d;
}


/* =========================================================
   CTA
   ========================================================= */

.ru-s13-cta{
	padding:clamp(4rem,7vw,6.5rem) 0;
	background:linear-gradient(90deg,#8e1111,#c72d2d);
}

.ru-s13-cta__inner{
	display:grid;
	grid-template-columns:minmax(0,1.15fr) auto;
	align-items:end;
	gap:2rem;
}

.ru-s13-cta .ru-eyebrow{
	color:#1b0000;
}

.ru-s13-cta h2{
	max-width:12ch;
	margin:.25rem 0 0;
	color:#fff;
	font-size:clamp(3rem,6vw,5.8rem);
	line-height:.9;
}

.ru-s13-cta .ru-button-group{
	justify-self:end;
}

.ru-s13-cta .ru-button--primary{
	background:#f6efe2;
	color:#080808;
}

.ru-s13-cta .ru-button--secondary{
	border-color:#f6efe2;
	color:#fff;
}


/* =========================================================
   TABLET / DESKTOP
   ========================================================= */

@media (min-width:48rem){

	.ru-s13-hero__inner{
		grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr);
	}

	.ru-s13-hero__case{
		justify-self:end;
	}

	.ru-s13-manifesto__grid{
		grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
	}

	.ru-s13-editorial__grid{
		grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
	}

	.ru-s13-editorial__image--models{
		grid-row:span 2;
		min-height:48rem;
	}

	/*
	 * IMPORTANTE:
	 * El texto necesita MÁS espacio que el vídeo.
	 * No volver a sobrescribir esta relación con .85 / 1.15.
	 */
	.ru-s13-tape__inner{
		grid-template-columns:minmax(0,1.12fr) minmax(22rem,.88fr);
		gap:clamp(2rem,4vw,4rem);
	}
}


/* =========================================================
   DESKTOP GRANDE
   ========================================================= */

@media (min-width:75rem){

	.ru-s13-editorial__grid{
		grid-template-columns:
			minmax(0,.85fr)
			minmax(0,1.2fr)
			minmax(18rem,.55fr);
	}

	.ru-s13-editorial__image--models{
		grid-row:auto;
		min-height:44rem;
	}

	.ru-s13-editorial__image--detail{
		min-height:44rem;
	}

	.ru-s13-editorial__content h2{
		font-size:clamp(2.8rem,3.6vw,4.1rem);
	}

	.ru-s13-tape h2{
		font-size:clamp(2.8rem,3.45vw,3.8rem);
	}
}


/* =========================================================
   CATÁLOGO RESPONSIVE
   ========================================================= */

@media (max-width:79.99rem){

	.ru-s13-products__catalog .products{
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
}

@media (max-width:63.99rem){

	.ru-s13-products__catalog .products{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}


/* =========================================================
   MÓVIL
   ========================================================= */

@media (max-width:47.99rem){

	.ru-s13-hero{
		min-height:46rem;
	}

	.ru-s13-hero__media::after{
		background:
			linear-gradient(
				180deg,
				rgb(0 0 0 / .18),
				rgb(0 0 0 / .76) 46%,
				#050505 100%
			);
	}

	.ru-s13-hero__media img{
		object-position:center 38%;
	}

	.ru-s13-hero h1{
		font-size:clamp(3.8rem,18vw,6.4rem);
	}

	.ru-s13-manifesto__grid{
		grid-template-columns:1fr;
	}

	.ru-s13-manifesto h2{
		font-size:clamp(3rem,13vw,4.8rem);
	}

	.ru-s13-manifesto blockquote{
		font-size:clamp(2rem,9vw,3.1rem);
	}

	.ru-s13-editorial__grid{
		grid-template-columns:1fr;
	}

	.ru-s13-editorial__content h2{
		max-width:10ch;
		font-size:clamp(2.7rem,12vw,4rem);
	}

	.ru-s13-values{
		grid-template-columns:1fr;
	}

	.ru-s13-tape{
		padding:4rem 0;
	}

	.ru-s13-tape__inner{
		grid-template-columns:1fr;
		gap:2rem;
	}

	.ru-s13-tape h2{
		max-width:11ch;
		font-size:clamp(2.6rem,11vw,4rem);
	}

	.ru-s13-tape__copy > p:not(.ru-eyebrow){
		max-width:none;
	}

	.ru-s13-tape__video{
		width:100%;
	}

	.ru-s13-tape__video figcaption{
		inset:auto .75rem .75rem;
		padding:.85rem;
	}

	.ru-s13-cta__inner{
		grid-template-columns:1fr;
		align-items:start;
	}

	.ru-s13-cta .ru-button-group{
		justify-self:start;
	}

	.ru-s13-products__catalog .products{
		grid-template-columns:1fr;
	}
}