/* Frequently asked questions page. */
.ru-faq-page{background:var(--ru-paper);color:var(--ru-black)}
.ru-faq-hero{position:relative;isolation:isolate;min-height:clamp(36rem,72vh,49rem);overflow:hidden;background:#050505;color:var(--ru-white)}
.ru-faq-hero__media{position:absolute;inset:0;z-index:-2;background-position:center 42%;background-size:cover;transform:scale(1.02)}
.ru-faq-hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.87) 39%,rgba(0,0,0,.48) 67%,rgba(0,0,0,.72) 100%),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.65))}
.ru-faq-hero__inner{display:grid;align-items:center;gap:clamp(2rem,6vw,6rem);min-height:inherit;padding-block:clamp(4rem,8vw,7rem)}
.ru-faq-hero__copy{max-width:53rem;padding-left:clamp(1rem,2.5vw,1.6rem);border-left:4px solid var(--ru-red)}
.ru-faq-hero h1{max-width:9ch;margin:.35rem 0 1.25rem;color:var(--ru-white);font-size:clamp(4rem,8vw,7.7rem);line-height:.86}
.ru-faq-hero__copy>p:not(.ru-eyebrow){max-width:42rem;color:var(--ru-grey-100);font-size:clamp(1.05rem,1.8vw,1.3rem)}
.ru-faq-hero__summary{display:flex;flex-direction:column;justify-content:flex-end;min-height:20rem;padding:clamp(1.35rem,3vw,2rem);border:1px solid rgb(255 255 255 / .24);border-radius:var(--ru-radius-lg);background:linear-gradient(145deg,rgba(14,14,14,.9),rgba(51,0,14,.88));box-shadow:0 1.25rem 3rem rgb(0 0 0 / .28);backdrop-filter:blur(10px)}
.ru-faq-hero__summary span{color:var(--ru-red);font-size:.72rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.ru-faq-hero__summary strong{font-family:var(--ru-font-display);font-size:clamp(4rem,8vw,7rem);line-height:.86}
.ru-faq-hero__summary a{margin-top:.15rem;color:var(--ru-white);font-family:var(--ru-font-display);font-size:clamp(1.65rem,3vw,2.6rem);line-height:1;text-decoration:none}
.ru-faq-hero__summary small{margin-top:.4rem;color:var(--ru-grey-300)}
.ru-faq-hero__summary hr{width:100%;margin:1.35rem 0;border:0;border-top:1px solid rgb(255 255 255 / .16)}

.ru-faq-directory{padding-block:clamp(4rem,8vw,7rem)}
.ru-faq-heading{display:grid;gap:1rem;margin-bottom:clamp(2rem,5vw,3.5rem)}
.ru-faq-heading h2{max-width:11ch;margin:0}
.ru-faq-heading>p{max-width:42rem;margin:0;color:var(--ru-grey-700)}
.ru-faq-heading--light{color:var(--ru-white)}
.ru-faq-heading--light>p{color:var(--ru-grey-300)}

.ru-faq-toolbar{position:relative;z-index:2;margin-bottom:clamp(3rem,6vw,5rem);padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--ru-grey-300);border-radius:var(--ru-radius-lg);background:var(--ru-white);box-shadow:0 1rem 3rem rgb(0 0 0 / .08)}
.ru-faq-search label{display:block;margin-bottom:.6rem;font-size:.75rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.ru-faq-search__field{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.25rem .35rem .25rem 1rem;border:2px solid var(--ru-black);border-radius:999px;background:var(--ru-white)}
.ru-faq-search__field:focus-within{outline:3px solid rgb(255 0 48 / .2);border-color:var(--ru-red)}
.ru-faq-search__field .ru-icon{width:1.25rem;height:1.25rem}
.ru-faq-search__field input{min-width:0;padding:.8rem 0;border:0;background:transparent;color:var(--ru-black);font-size:1rem;outline:0}
.ru-faq-search__field button{padding:.7rem 1rem;border:0;border-radius:999px;background:var(--ru-black);color:var(--ru-white);font-size:.72rem;font-weight:950;text-transform:uppercase;cursor:pointer}
.ru-faq-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.ru-faq-filters button{padding:.65rem .9rem;border:1px solid var(--ru-grey-300);border-radius:999px;background:var(--ru-paper);color:var(--ru-black);font-size:.72rem;font-weight:900;text-transform:uppercase;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease}
.ru-faq-filters button:hover{transform:translateY(-1px);border-color:var(--ru-black)}
.ru-faq-filters button.is-active{border-color:var(--ru-red);background:var(--ru-red);color:var(--ru-white)}
.ru-faq-result-count{margin:1rem 0 0;color:var(--ru-grey-700);font-size:.9rem}
.ru-faq-result-count strong{color:var(--ru-red);font-size:1.1rem}

.ru-faq-groups{display:grid;gap:clamp(4rem,8vw,7rem)}
.ru-faq-group[hidden],.ru-faq-item[hidden]{display:none!important}
.ru-faq-group__header{display:grid;gap:1rem;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:2px solid var(--ru-black)}
.ru-faq-group__header h3{margin:0;font-size:clamp(2.7rem,5vw,4.8rem)}
.ru-faq-group__header>p{max-width:38rem;margin:0;color:var(--ru-grey-700)}
.ru-faq-list{display:grid;gap:.75rem}
.ru-faq-item details{overflow:hidden;border:1px solid var(--ru-grey-300);border-radius:var(--ru-radius-md);background:var(--ru-white);box-shadow:0 .4rem 1.25rem rgb(0 0 0 / .035);transition:border-color .2s ease,box-shadow .2s ease}
.ru-faq-item details:hover{border-color:var(--ru-black)}
.ru-faq-item details[open]{border-color:var(--ru-red);box-shadow:0 .8rem 2rem rgb(0 0 0 / .08)}
.ru-faq-item summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1.05rem 1.1rem;cursor:pointer;list-style:none}
.ru-faq-item summary::-webkit-details-marker{display:none}
.ru-faq-item__number{display:grid;place-items:center;width:2.3rem;height:2.3rem;border-radius:999px;background:var(--ru-black);color:var(--ru-white);font-size:.66rem;font-weight:950}
.ru-faq-item details[open] .ru-faq-item__number{background:var(--ru-red)}
.ru-faq-item__question{font-weight:900;line-height:1.25}
.ru-faq-item__toggle{position:relative;width:1.3rem;height:1.3rem}
.ru-faq-item__toggle::before,.ru-faq-item__toggle::after{content:"";position:absolute;left:50%;top:50%;width:1rem;height:2px;background:var(--ru-red);transform:translate(-50%,-50%);transition:transform .2s ease}
.ru-faq-item__toggle::after{transform:translate(-50%,-50%) rotate(90deg)}
.ru-faq-item details[open] .ru-faq-item__toggle::after{transform:translate(-50%,-50%) rotate(0)}
.ru-faq-item__answer{padding:0 clamp(1.1rem,4vw,4.4rem) 1.35rem;color:var(--ru-grey-700)}
.ru-faq-item__answer p{max-width:70rem;margin:.15rem 0 0}
.ru-faq-item__answer a{color:var(--ru-red-dark);font-weight:850;text-decoration:underline;text-underline-offset:.16em}
.ru-faq-empty{padding:clamp(2rem,5vw,4rem);border:2px dashed var(--ru-grey-300);border-radius:var(--ru-radius-lg);text-align:center}
.ru-faq-empty>span{display:grid;place-items:center;width:4rem;height:4rem;margin:0 auto 1rem;border-radius:999px;background:var(--ru-black);color:var(--ru-white);font-family:var(--ru-font-display);font-size:2.7rem}
.ru-faq-empty h3{margin-bottom:.5rem}
.ru-faq-empty p{margin:0 0 1.3rem;color:var(--ru-grey-700)}

.ru-faq-shortcuts{
	padding-block:clamp(4rem,8vw,7rem);
	background:linear-gradient(135deg,#060606,#150007);
	color:var(--ru-white);
}

.ru-faq-shortcut-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:1rem;
}

.ru-faq-shortcut-grid a{
	display:grid;
	grid-template-columns:auto minmax(0,1fr);
	grid-template-areas:
		"number title"
		"number copy";
	column-gap:1rem;
	row-gap:.35rem;
	align-items:center;
	min-width:0;
	padding:1.35rem;
	border:1px solid rgb(255 255 255 / .16);
	border-radius:var(--ru-radius-lg);
	background:rgb(255 255 255 / .035);
	color:var(--ru-white);
	text-decoration:none;
		transition:
		border-color .2s ease,
		background .2s ease,
		transform .2s ease;
}

.ru-faq-shortcut-grid a:hover{
	transform:translateY(-3px);
	border-color:var(--ru-red);
	background:rgb(255 255 255 / .07);
}

.ru-faq-shortcut-grid span{
	grid-area:number;
	display:grid;
	place-items:center;
	width:2.6rem;
	height:2.6rem;
	min-width:2.6rem;
	border-radius:999px;
	background:var(--ru-red);
	font-size:.7rem;
	font-weight:950;
}

.ru-faq-shortcut-grid strong{
	grid-area:title;
	display:block;
	width:100%;
	min-width:0;
	max-width:100%;
	font-family:var(--ru-font-display);
	font-size:clamp(1.1rem,1.25vw,1.45rem);
	line-height:1.02;
	text-transform:uppercase;
	white-space:normal;
	word-break:normal;
	overflow-wrap:break-word;
}

.ru-faq-shortcut-grid small{
	grid-area:copy;
	display:block;
	min-width:0;
	max-width:100%;
	margin-top:.2rem;
	color:var(--ru-grey-300);
	line-height:1.35;
	white-space:normal;
}


/* TABLET */
@media (min-width:48rem){
	.ru-faq-shortcut-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}


/* ESCRITORIO */
@media (min-width:64rem){
	.ru-faq-shortcut-grid{
		grid-template-columns:repeat(4,minmax(0,1fr));
	}

	.ru-faq-shortcut-grid a{
		padding:1.2rem 1rem;
	}
}


/* ESCRITORIO GRANDE */
@media (min-width:80rem){
	.ru-faq-shortcut-grid a{
		padding:1.35rem 1.2rem;
	}
}

.ru-faq-cta{padding-block:clamp(3rem,6vw,5rem);background:linear-gradient(135deg,#bf001f,#ff0031);color:var(--ru-white)}
.ru-faq-cta__inner{display:flex;flex-direction:column;gap:1.5rem}
.ru-faq-cta h2{max-width:14ch;margin:.2rem 0 .6rem;color:var(--ru-white)}
.ru-faq-cta p:not(.ru-eyebrow){max-width:46rem;margin:0;color:rgb(255 255 255 / .88)}
.ru-faq-cta .ru-eyebrow{color:var(--ru-white);opacity:.82}
.ru-faq-cta__actions{display:flex;flex-wrap:wrap;gap:.75rem}
.ru-button--light{border-color:var(--ru-white);background:var(--ru-white);color:var(--ru-black)}
.ru-button--light:hover{border-color:var(--ru-black);background:var(--ru-black);color:var(--ru-white)}

@media (min-width:48rem){
  .ru-faq-heading,.ru-faq-group__header{grid-template-columns:1.05fr .95fr;align-items:end;gap:2rem}
  .ru-faq-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ru-faq-cta__inner{flex-direction:row;align-items:center;justify-content:space-between}
  .ru-faq-cta__actions{justify-content:flex-end}
}

@media (min-width:64rem){
  .ru-faq-hero__inner{grid-template-columns:minmax(0,1.35fr) minmax(19rem,.65fr)}
  .ru-faq-toolbar{position:sticky;top:6.5rem}
  .ru-faq-shortcut-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media (min-width:64rem) and (prefers-reduced-motion:no-preference){
  .ru-faq-hero__media{background-attachment:fixed}
}

@media (max-width:47.99rem){
  .ru-faq-hero{min-height:auto}
  .ru-faq-hero__inner{padding-block:3rem}
  .ru-faq-hero h1{font-size:clamp(3.7rem,18vw,5.6rem)}
  .ru-faq-hero__summary{min-height:0}
  .ru-faq-hero__media{background-position:60% center}
  .ru-faq-hero__media::after{background:linear-gradient(90deg,rgba(0,0,0,.95),rgba(0,0,0,.76)),linear-gradient(180deg,rgba(0,0,0,.22),rgba(0,0,0,.76))}
  .ru-faq-search__field{border-radius:var(--ru-radius-md)}
  .ru-faq-search__field button{padding-inline:.75rem}
  .ru-faq-filters{display:grid;grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;padding-bottom:.35rem;scrollbar-width:thin}
  .ru-faq-item summary{grid-template-columns:auto 1fr auto;gap:.75rem;padding:.95rem}
  .ru-faq-item__answer{padding-inline:1rem}
  .ru-faq-cta__actions,.ru-faq-cta__actions .ru-button{width:100%}
}

@media (prefers-reduced-motion:reduce){
  .ru-faq-hero__media{background-attachment:scroll!important}
  .ru-faq-filters button,.ru-faq-item details,.ru-faq-item__toggle::after,.ru-faq-shortcut-grid a{transition:none}
}
/* ==========================================================
   FAQ — FIX HERO DESKTOP
   Evita que "RESOLVEMOS TUS DUDAS" quede bajo la tarjeta
   ========================================================== */

@media (min-width:64rem){

	.ru-faq-hero__inner{
		grid-template-columns:minmax(0,1fr) minmax(18rem,21rem);
		gap:clamp(2rem,4vw,4rem);
	}

	.ru-faq-hero__copy{
		width:100%;
		max-width:none;
		min-width:0;
	}

	.ru-faq-hero h1{
		width:100%;
		max-width:8.5ch;
		font-size:clamp(4.8rem,6vw,7rem);
		line-height:.86;
		overflow-wrap:normal;
		word-break:normal;
	}

	.ru-faq-hero__summary{
		width:100%;
		min-width:0;
		max-width:21rem;
		justify-self:end;
	}
}

/* Desktop de tamaño medio */
@media (min-width:64rem) and (max-width:79.99rem){

	.ru-faq-hero h1{
		font-size:clamp(4.5rem,5.8vw,6rem);
	}

	.ru-faq-hero__inner{
		grid-template-columns:minmax(0,1fr) minmax(17rem,19rem);
		gap:2rem;
	}
}

/* Desktop grande */
@media (min-width:80rem){

	.ru-faq-hero__inner{
		grid-template-columns:minmax(0,1fr) 21rem;
		gap:clamp(3rem,4vw,5rem);
	}

	.ru-faq-hero h1{
		font-size:clamp(5.5rem,5.7vw,7rem);
		max-width:9ch;
	}
}
/* =========================================================
   FAQ HERO — FIX DEFINITIVO DESKTOP
   ========================================================= */

@media (min-width:64rem){

	.ru-faq-hero__inner{
		grid-template-columns:minmax(0,1fr) 18.5rem !important;
		gap:4.5rem !important;
	}

	.ru-faq-hero__copy{
		width:100% !important;
		max-width:100% !important;
		min-width:0 !important;
	}

	.ru-faq-hero h1{
		width:100% !important;
		max-width:none !important;
		margin-right:0 !important;
		font-size:clamp(4.5rem,5.1vw,6.2rem) !important;
		line-height:.86 !important;
		letter-spacing:-.035em !important;
		white-space:normal !important;
	}

	.ru-faq-hero__summary{
		width:18.5rem !important;
		max-width:18.5rem !important;
		min-width:0 !important;
		justify-self:end !important;
	}
}