/* RESET with Valeria — landing de conversión
   Los colores se editan en Apariencia › Personalizar › Landing RESET › Logos, imagen y colores. */

@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 300; font-display: swap; src: url("../fonts/montserrat-latin-300-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/montserrat-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/montserrat-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/montserrat-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/montserrat-latin-700-normal.woff2") format("woff2"); }

:root {
	--rv-dark: #3B453D;
	--rv-sage: #60765F;
	--rv-beige: #CAB89E;
	--rv-white: #FDFDFA;
	--rv-cream: #F4EFE6;
	--rv-mist: #DCE5D8;
	--rv-line: #DDD5C8;
	--rv-soft-line: #EAE2D6;
	--rv-input: #CFC6B8;
	--rv-numeral: #B09E82;
	--rv-no: #8A5E50;
	--rv-error: #8A4B3B;
	--rv-font: "Montserrat", "Helvetica Neue", Helvetica, sans-serif;
	--rv-wrap: 1200px;
	--rv-gutter: 24px;
	--rv-section: clamp(72px, 9vw, 104px);
}

/* Base */
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--rv-white); color: var(--rv-dark); font-family: var(--rv-font); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
.rv, .rv * , .rv *::before, .rv *::after { box-sizing: border-box; }
.rv { overflow-x: clip; }
.rv img { max-width: 100%; height: auto; display: block; }
.rv a { color: inherit; }
.rv a:hover { color: var(--rv-sage); }
.rv :focus-visible { outline: 2px solid var(--rv-beige); outline-offset: 3px; }
.rv p { margin: 0; }
.rv ul, .rv ol { margin: 0; padding: 0; list-style: none; }
.rv h1, .rv h2, .rv h3 { margin: 0; color: inherit; font-family: inherit; }
.rv-icon { flex-shrink: 0; }
.rv-skip { position: absolute; left: -9999px; top: 8px; z-index: 100; background: var(--rv-dark); color: var(--rv-white) !important; padding: 12px 18px; }
.rv-skip:focus { left: 8px; }
[hidden] { display: none !important; }

/* Contenedores */
.rv-wrap { width: 100%; max-width: var(--rv-wrap); margin: 0 auto; padding-left: var(--rv-gutter); padding-right: var(--rv-gutter); }
.rv-wrap--narrow { max-width: 920px; }
.rv-wrap--mid { max-width: 1000px; }
.rv-section { padding: var(--rv-section) 0; }
.rv-bg-cream { background: var(--rv-cream); }
.rv-bg-sage { background: var(--rv-sage); color: var(--rv-white); }
.rv-bg-dark { background: var(--rv-dark); color: var(--rv-white); }
.rv-center { text-align: center; }
.rv-stack { display: flex; flex-direction: column; gap: 20px; }
.rv-stack--lg { gap: 48px; }
.rv-stack--center { align-items: center; }
.rv-measure { max-width: 780px; }
.rv-measure-sm { max-width: 16em; }
.rv-split { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 64px; }
.rv-split--center { align-items: center; }
.rv-grid-2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 20px; }
.rv-headrow { display: flex; flex-wrap: wrap; gap: 24px 64px; align-items: flex-end; justify-content: space-between; }
.rv-headrow__side { max-width: 26em; }

/* Tipografía */
.rv-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--rv-sage); }
.rv-eyebrow--beige { color: var(--rv-beige); }
.rv-eyebrow--light { color: var(--rv-soft-line); }
.rv-h2 { font-weight: 600; font-size: clamp(2rem, 3.6vw, 3rem); line-height: 1.15; letter-spacing: -.015em; }
.rv-h2 strong { font-weight: 700; }
.rv-h2--light { font-weight: 400; font-size: clamp(2rem, 3.8vw, 3.2rem); }
.rv-h3 { font-weight: 600; font-size: 1.35rem; line-height: 1.3; }
.rv-display { font-weight: 400; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.2; }
.rv-display strong { font-weight: 700; }
.rv-lead { font-size: 1.1rem; line-height: 1.75; max-width: 34em; }
.rv-body { font-size: 1.05rem; line-height: 1.75; }
.rv-textlink { align-self: flex-start; font-weight: 600; padding: 12px 0; border-bottom: 2px solid var(--rv-sage); text-decoration: none; }

/* Botones */
.rv-btn { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 56px; padding: 0 32px; background: var(--rv-sage); color: var(--rv-white) !important; font-family: inherit; font-size: 15.5px; font-weight: 700; line-height: 1.2; text-align: center; text-decoration: none; border: 0; border-radius: 0; cursor: pointer; transition: background .2s, color .2s, transform .2s; }
.rv-btn:hover { background: var(--rv-dark); color: var(--rv-white) !important; transform: translateY(-1px); }
.rv-btn--block { display: flex; width: 100%; }
.rv-btn--light { background: var(--rv-white); color: var(--rv-dark) !important; }
.rv-btn--light:hover { background: var(--rv-dark); color: var(--rv-white) !important; }
.rv-bg-dark .rv-btn--light:hover, .rv-bar .rv-btn--light:hover { background: var(--rv-beige); color: var(--rv-dark) !important; }
.rv-btn--sm { min-height: 48px; padding: 0 24px; font-size: 14px; }
.rv-btn[disabled] { opacity: .7; cursor: progress; transform: none; }

/* Barra superior y cabecera */
.rv-topbar { background: var(--rv-dark); color: var(--rv-white); text-align: center; padding: 10px 20px; font-size: 13px; font-weight: 500; }
.rv-topbar strong { color: var(--rv-beige); font-weight: 700; }
.rv-topbar s { color: var(--rv-beige); font-weight: 400; }
.rv-header { background: var(--rv-white); border-bottom: 1px solid var(--rv-soft-line); }
.rv-header__in { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-top: 12px; padding-bottom: 12px; }
.rv-header__logo img { height: 44px; width: auto; }
.rv-lang { display: flex; align-items: center; gap: 2px; font-size: 13px; }
.rv-lang span { color: var(--rv-beige); }
.rv-lang a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; text-decoration: none; font-weight: 400; }
.rv-lang a[aria-current] { font-weight: 700; text-decoration: underline; text-underline-offset: 5px; }

/* Portada */
.rv-header__right { display: flex; align-items: center; gap: 20px; }
.rv-header__cta { min-height: 46px; padding: 0 22px; font-size: 14px; font-weight: 600; }
.rv-hero { position: relative; display: flex; align-items: center; min-height: clamp(620px, 78vh, 760px); background: var(--rv-white); overflow: hidden; }
.rv-hero__media { position: absolute; top: 0; right: 0; bottom: 0; left: 32%; }
.rv-hero__img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; object-position: 55% 25%; }
.rv-hero__fade { position: absolute; inset: 0; background: linear-gradient(to right, var(--rv-white) 0%, rgba(253, 253, 250, .92) 12%, rgba(253, 253, 250, .55) 28%, rgba(253, 253, 250, 0) 46%); pointer-events: none; }
.rv-hero__in { position: relative; z-index: 1; padding-top: 88px; padding-bottom: 88px; }
.rv-hero__copy { max-width: 600px; display: flex; flex-direction: column; gap: 24px; }
.rv-hero__title { font-weight: 600; font-size: clamp(2.8rem, 5.4vw, 4.6rem); line-height: 1.04; letter-spacing: -.02em; }
.rv-hero__lead { font-size: clamp(1.25rem, 1.8vw, 1.55rem); font-weight: 600; line-height: 1.4; max-width: 26em; }
.rv-hero__sub { font-size: 1.1rem; line-height: 1.75; max-width: 30em; }
.rv-hero__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; margin-top: 8px; }
.rv-hero__actions .rv-btn { font-size: 15.5px; padding: 0 38px; }
.rv-hero__micro { font-size: 13px; font-weight: 600; }
.rv-hero .rv-spots { margin-top: 4px; }

/* Franja de beneficios */
.rv-strip { background: var(--rv-sage); color: var(--rv-white); }
.rv .rv-strip__list { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px 40px; margin: 0 auto; padding: 18px var(--rv-gutter); }
.rv-strip__list li { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; }

/* Primer paso: formulario principal */
.rv-lead-section { scroll-margin-top: 0; }
.rv-lead-section .rv-body { max-width: 28em; }
.rv-lead-quote { font-size: 1.2rem; font-weight: 600; line-height: 1.45; color: var(--rv-sage); margin-top: 12px !important; }
.rv-lead-avatar { display: flex; align-items: center; gap: 14px; margin-top: 8px; padding-top: 20px; border-top: 1px solid var(--rv-line); }
.rv-lead-avatar img { width: 64px; height: 64px !important; border-radius: 50%; object-fit: cover; object-position: 50% 25%; border: 2px solid var(--rv-white); box-shadow: 0 0 0 1px var(--rv-beige); flex-shrink: 0; }
.rv-lead-avatar div { display: flex; flex-direction: column; gap: 2px; line-height: 1.35; }
.rv-lead-avatar strong { font-size: 15px; }
.rv-lead-avatar span { font-size: 13px; color: var(--rv-sage); }
.rv-formcard { background: var(--rv-white); color: var(--rv-dark); border: 1px solid var(--rv-line); padding: clamp(24px, 3.5vw, 40px); }

/* Plazas */
.rv-spots { display: flex; flex-direction: column; gap: 10px; padding-top: 18px; border-top: 1px solid var(--rv-soft-line); max-width: 460px; font-size: 14px; font-weight: 600; }
.rv-spots--light { flex-direction: row; align-items: center; gap: 12px; border-top: 0; padding-top: 8px; max-width: none; }
.rv-dots { display: flex; gap: 8px; }
.rv-dot { width: 14px; height: 14px; border-radius: 50%; border: 1px solid var(--rv-sage); background: transparent; }
.rv-dot.is-free { background: var(--rv-sage); }
.rv-dots--light { gap: 6px; }
.rv-dots--light .rv-dot { width: 12px; height: 12px; border-color: var(--rv-white); }
.rv-dots--light .rv-dot.is-free { background: var(--rv-white); }
@keyframes rvPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(96, 118, 95, .45); } 50% { box-shadow: 0 0 0 6px rgba(96, 118, 95, 0); } }
.rv-dot.is-live { animation: rvPulse 2s ease-in-out infinite; }

/* Formulario */
.rv-form { display: flex; flex-direction: column; gap: 18px; }
.rv-form__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 16px; }
.rv-field { display: flex; flex-direction: column; gap: 6px; }
.rv-field label { font-size: 13px; font-weight: 600; }
.rv-field input, .rv-field textarea { width: 100%; font-family: inherit; font-size: 16px; line-height: 1.4; padding: 12px 16px; min-height: 48px; border: 1px solid var(--rv-input); background: var(--rv-white); color: var(--rv-dark); border-radius: 0; box-shadow: none; -webkit-appearance: none; appearance: none; }
.rv-field textarea { resize: vertical; min-height: 96px; }
.rv-field input::placeholder, .rv-field textarea::placeholder { color: #7C857B; opacity: 1; }
.rv-field input:focus, .rv-field textarea:focus { outline: 2px solid var(--rv-sage); outline-offset: 0; border-color: var(--rv-sage); }
.rv-field input[aria-invalid="true"] { border-color: var(--rv-error); }
.rv-consent { display: flex; gap: 10px; align-items: center; font-size: 13px; cursor: pointer; min-height: 44px; }
.rv-consent input { width: 18px; height: 18px; margin: 0; accent-color: var(--rv-sage); flex-shrink: 0; }
.rv-form__error { font-size: 13.5px; color: var(--rv-error); font-weight: 600; }
.rv-form__note { font-size: 12px; margin-top: -4px !important; }
.rv-hp { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.rv-thanks { display: flex; flex-direction: column; gap: 12px; outline: none; }
.rv-thanks__icon { width: 48px; height: 48px; border-radius: 50%; background: var(--rv-mist); display: inline-flex; align-items: center; justify-content: center; }
.rv-thanks__title { font-weight: 600; font-size: 1.5rem; line-height: 1.25; }
.rv-thanks__sign { font-weight: 600; }

/* Dolor */
.rv-pains { display: flex; flex-direction: column; gap: 12px; }
.rv-pains li { display: flex; gap: 16px; align-items: flex-start; background: var(--rv-white); padding: 20px 22px; font-size: 1.05rem; }
.rv-pains .rv-icon, .rv-offer__list .rv-icon--ring { color: var(--rv-numeral); stroke-width: 1.8; margin-top: 1px; }

/* Paneles y listas con icono */
.rv-panel { padding: clamp(28px, 4vw, 44px); display: flex; flex-direction: column; gap: 18px; }
.rv-panel--outline { border: 1px solid var(--rv-line); }
.rv-panel--dark { background: var(--rv-dark); color: var(--rv-white); }
.rv-panel--white { background: var(--rv-white); }
.rv-iconlist { display: flex; flex-direction: column; gap: 16px; }
.rv-iconlist li { display: flex; gap: 14px; align-items: flex-start; }
.rv-iconlist .rv-icon { margin-top: 4px; }
.rv-iconlist .rv-icon--ring { margin-top: 1px; }
.rv-iconlist--no .rv-icon { color: var(--rv-no); }
.rv-iconlist--yes .rv-icon { color: var(--rv-beige); stroke-width: 1.8; }
.rv-iconlist--sage .rv-icon { color: var(--rv-numeral); stroke-width: 1.8; }

/* Conoce a Valeria */
.rv-about__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(40px, 6vw, 88px); align-items: center; }
.rv-about__media { position: relative; margin: 0; display: flex; flex-direction: column; align-items: center; gap: 20px; }
.rv-about__rings { position: absolute; left: 50%; top: 46%; width: 118%; max-width: 560px; aspect-ratio: 1; transform: translate(-50%, -50%); pointer-events: none; }
.rv-about__rings span { position: absolute; inset: 0; border-radius: 50%; border: 1px solid var(--rv-beige); opacity: .4; }
.rv-about__rings span + span { inset: 16px 0 0 20px; border-color: var(--rv-sage); opacity: .7; }
.rv-about__rings i { position: absolute; left: calc(85.36% - 6px); top: calc(85.36% - 6px); width: 12px; height: 12px; border-radius: 50%; background: var(--rv-beige); }
.rv-about__frame { position: relative; width: 100%; max-width: 420px; aspect-ratio: 4 / 5; border-radius: 999px 999px 0 0; overflow: hidden; background: var(--rv-sage); }
.rv-about__frame--square { max-width: 460px; aspect-ratio: 1 / 1.04; }
.rv-about__frame--square img { object-position: 50% 30%; }
.rv-about__frame img { width: 100%; height: 100% !important; object-fit: cover; object-position: 50% 20%; }
.rv-about__frame--empty { display: flex; align-items: center; justify-content: center; }
.rv-about__frame--empty .rv-about__symbol { width: 42%; height: auto !important; object-fit: contain; opacity: .95; }
.rv-about__caption { position: relative; display: flex; flex-direction: column; align-items: center; gap: 2px; text-align: center; }
.rv-about__caption strong { font-size: 1.05rem; }
.rv-about__caption span { font-size: 13px; color: var(--rv-mist); letter-spacing: .04em; }
.rv-about__text { display: flex; flex-direction: column; gap: 20px; }
.rv-about__intro { font-size: 1.2rem; line-height: 1.6; font-weight: 500; }
.rv-about__quote { margin: 4px 0; border-left: 2px solid var(--rv-beige); padding: 4px 0 4px 24px; }
.rv-about__quote p { font-size: clamp(1.2rem, 1.9vw, 1.5rem); font-weight: 300; line-height: 1.45; }
.rv-about__block { display: flex; flex-direction: column; gap: 14px; padding-top: 20px; border-top: 1px solid rgba(202, 184, 158, .35); }
.rv-about__label { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--rv-beige); }
.rv .rv-about__values { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 14px 28px; }
.rv-about__values li { display: flex; gap: 12px; align-items: flex-start; }
.rv-about__values .rv-icon { color: var(--rv-beige); stroke-width: 1.8; }
.rv .rv-about__creds { display: flex; flex-direction: column; gap: 8px; }
.rv-about__creds li { padding-left: 18px; position: relative; }
.rv-about__creds li::before { content: ""; position: absolute; left: 0; top: .65em; width: 8px; height: 1px; background: var(--rv-beige); }
.rv-about__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-top: 8px; }
.rv-about__ig { font-size: 14px; color: var(--rv-white) !important; text-decoration: none; padding: 12px 0; border-bottom: 1px solid var(--rv-beige); }
.rv-about__ig:hover { color: var(--rv-beige) !important; }
@media (max-width: 899px) {
	.rv-about__grid { grid-template-columns: 1fr; }
	.rv-about__media { max-width: 360px; margin: 0 auto; }
}
@media (prefers-reduced-motion: no-preference) {
	.rv-about__rings { animation: rvOrbit 80s linear infinite; }
}

/* Método */
.rv-phases { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 20px; }
.rv-phase { background: var(--rv-white); border-top: 3px solid var(--rv-sage); padding: 32px 32px 40px; display: flex; flex-direction: column; gap: 14px; }
.rv-phase__top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.rv-phase__weeks { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--rv-sage); }
.rv-phase__n { font-size: 2.4rem; font-weight: 500; color: var(--rv-numeral); line-height: 1; }
.rv-phase .rv-h3 { font-size: 1.45rem; }
.rv-phase p { line-height: 1.7; }

/* Oferta */
.rv-offer { display: flex; flex-wrap: wrap; border: 2px solid var(--rv-sage); }
.rv .rv-offer__list { flex: 1.3 1 380px; min-width: 0; padding: clamp(28px, 4vw, 44px); display: flex; flex-direction: column; gap: 4px; }
.rv-offer__list li { display: flex; gap: 16px; align-items: flex-start; padding: 14px 0; border-bottom: 1px solid var(--rv-soft-line); font-weight: 500; }
.rv-offer__price { flex: 1 1 300px; min-width: 0; background: var(--rv-cream); padding: clamp(28px, 4vw, 44px); display: flex; flex-direction: column; gap: 14px; justify-content: center; }
.rv-badge { align-self: flex-start; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; background: var(--rv-dark); color: var(--rv-white); padding: 6px 12px; }
.rv-offer__old { font-size: 1.1rem; color: #6B6457; }
.rv-offer__amount { font-size: clamp(3.4rem, 6vw, 4.4rem); font-weight: 700; line-height: .95; letter-spacing: -.02em; }
.rv-offer__two { font-weight: 600; }
.rv-offer__spots { font-size: 14px; font-weight: 600; color: var(--rv-sage); }
.rv-offer__price .rv-btn { margin-top: 6px; padding: 0 20px; }
.rv-offer__risk { font-size: 13px; text-align: center; }
.rv-why { text-align: center; max-width: 44em; align-self: center; line-height: 1.7; }

/* Carrusel de frases */
.rv-quotes { position: relative; overflow: hidden; padding: clamp(72px, 9vw, 112px) 0; text-align: center; }
.rv-quotes--dark { background: var(--rv-dark); color: var(--rv-white); }
.rv-quotes--sage { background: var(--rv-sage); color: var(--rv-white); }
.rv-quotes--cream { background: var(--rv-cream); color: var(--rv-dark); }
.rv-quotes__rings { position: absolute; left: 50%; top: 50%; width: min(620px, 120vw); aspect-ratio: 1; transform: translate(-50%, -50%); pointer-events: none; }
.rv-quotes__rings span { position: absolute; inset: 0; border-radius: 50%; border: 1px solid var(--rv-beige); opacity: .45; }
.rv-quotes__rings span + span { inset: 18px 0 0 22px; border-color: var(--rv-sage); opacity: .6; }
.rv-quotes--sage .rv-quotes__rings span + span { border-color: var(--rv-white); opacity: .25; }
.rv-quotes__rings i { position: absolute; left: calc(85.36% - 6px); top: calc(85.36% - 6px); width: 12px; height: 12px; border-radius: 50%; background: var(--rv-beige); opacity: .9; }
.rv-quotes--motion .rv-quotes__rings { animation: rvOrbit var(--rv-orbit, 60s) linear infinite; }
.rv-quotes--motion .rv-quotes__rings span + span { animation: rvDrift calc(var(--rv-orbit, 60s) / 3) ease-in-out infinite alternate; }
.rv-quotes.is-paused .rv-quotes__rings, .rv-quotes.is-paused .rv-quotes__rings span + span { animation-play-state: paused; }
@keyframes rvOrbit { from { transform: translate(-50%, -50%) rotate(0deg); } to { transform: translate(-50%, -50%) rotate(360deg); } }
@keyframes rvDrift { from { transform: translate(0, 0); } to { transform: translate(-16px, -12px); } }
.rv-quotes__in { position: relative; display: flex; flex-direction: column; align-items: center; gap: 28px; }
.rv-quotes--dark .rv-quotes__eyebrow, .rv-quotes--sage .rv-quotes__eyebrow { color: var(--rv-beige); }
.rv-quotes__viewport { display: grid; width: 100%; max-width: 900px; touch-action: pan-y; }
.rv-quotes__slide { grid-area: 1 / 1; margin: 0; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity .7s ease, transform .7s ease, visibility .7s; }
.rv-quotes__slide.is-active { opacity: 1; visibility: visible; transform: none; }
.rv-quotes__slide blockquote { margin: 0; }
.rv-quotes__slide p { font-size: clamp(1.7rem, 3.6vw, 2.9rem); font-weight: 300; line-height: 1.3; letter-spacing: -.01em; max-width: 22em; margin: 0 auto; }
.rv-quotes__slide p::before { content: "«"; }
.rv-quotes__slide p::after { content: "»"; }
html[lang^="en"] .rv-quotes__slide p::before { content: "“"; }
html[lang^="en"] .rv-quotes__slide p::after { content: "”"; }
.rv-quotes__controls { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px 14px; }
.rv-quotes__arrow { width: 44px; height: 44px; border-radius: 50%; border: 1px solid currentColor; background: transparent; color: inherit; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; opacity: .8; transition: opacity .2s, background .2s; }
.rv-quotes__arrow:hover { opacity: 1; background: rgba(253, 253, 250, .1); }
.rv-quotes--cream .rv-quotes__arrow:hover { background: rgba(59, 69, 61, .06); }
.rv-quotes__arrow--prev .rv-icon { transform: rotate(90deg); }
.rv-quotes__arrow--next .rv-icon { transform: rotate(-90deg); }
.rv-quotes__dots { display: flex; }
.rv-quotes__dot { width: 28px; height: 44px; padding: 0; border: 0; background: transparent; color: inherit; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.rv-quotes__dot span { width: 8px; height: 8px; border-radius: 50%; border: 1px solid currentColor; opacity: .7; transition: background .2s, transform .2s; }
.rv-quotes__dot[aria-current] span { background: currentColor; opacity: 1; transform: scale(1.25); }
.rv-quotes__pause { min-height: 44px; padding: 0 12px; border: 0; background: transparent; color: inherit; font-family: inherit; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; opacity: .8; text-decoration: underline; text-underline-offset: 4px; }
.rv-quotes__pause:hover { opacity: 1; }
@media (prefers-reduced-motion: reduce) { .rv-quotes__slide { transition: none; transform: none; } .rv-quotes--motion .rv-quotes__rings, .rv-quotes--motion .rv-quotes__rings span + span { animation: none; } }

/* Preguntas frecuentes */
.rv-faq__item { border-bottom: 1px solid var(--rv-line); }
.rv-faq__item summary { list-style: none; cursor: pointer; min-height: 64px; padding: 20px 0; display: flex; justify-content: space-between; align-items: center; gap: 24px; font-size: 1.05rem; font-weight: 600; }
.rv-faq__item summary::-webkit-details-marker { display: none; }
.rv-faq__item summary .rv-icon { transition: transform .2s; }
.rv-faq__item[open] summary .rv-icon { transform: rotate(180deg); }
.rv-faq__item p { padding: 0 40px 24px 0; line-height: 1.7; }

/* Cierre */
.rv-final { padding-bottom: calc(var(--rv-section) + 16px); scroll-margin-top: 0; }

/* Pie */
.rv-footer { background: var(--rv-dark); color: var(--rv-white); font-size: 12.5px; line-height: 1.7; }
.rv-footer__in { display: flex; flex-wrap: wrap; gap: 20px 48px; align-items: center; justify-content: space-between; padding-top: 36px; padding-bottom: 110px; }
.rv-footer img { height: 40px; width: auto; }
.rv-footer__text { max-width: 640px; display: flex; flex-direction: column; gap: 6px; }
.rv-footer a { color: var(--rv-white); }
.rv-credit { font-size: 12px; color: var(--rv-beige); }
.rv-credit a { color: var(--rv-beige) !important; text-decoration: none; border-bottom: 1px solid currentColor; }
.rv-credit a:hover { color: var(--rv-white) !important; }

/* Barra fija */
.rv-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; background: var(--rv-dark); color: var(--rv-white); border-top: 1px solid var(--rv-sage); padding: 12px 0 calc(12px + env(safe-area-inset-bottom, 0px)); transform: translateY(0); transition: transform .25s ease; }
.rv-bar.is-hiding { transform: translateY(110%); }
.rv-bar__in { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.rv-bar__info { display: flex; flex-direction: column; line-height: 1.35; }
.rv-bar__info strong { font-size: 15px; }
.rv-bar__info s { font-weight: 400; color: var(--rv-beige); font-size: 13px; }
.rv-bar__info span { font-size: 12.5px; color: var(--rv-mist); }

/* Barra de administración de WordPress */
.admin-bar .rv-lead-section, .admin-bar .rv-final { scroll-margin-top: 32px; }

/* Portada apilada (tablet y móvil) */
@media (max-width: 899px) {
	.rv-hero { flex-direction: column; align-items: stretch; min-height: 0; }
	.rv-hero__media { position: relative; left: auto; order: 2; height: clamp(320px, 70vw, 480px); }
	.rv-hero__fade { background: linear-gradient(to bottom, var(--rv-white) 0%, rgba(253, 253, 250, 0) 22%); }
	.rv-hero__in { order: 1; padding-top: 48px; padding-bottom: 40px; }
	.rv-header__cta { display: none; }
}

/* Móvil */
@media (max-width: 720px) {
	.rv .rv-strip__list { flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 16px; padding-bottom: 16px; }
	.rv-split { gap: 40px; }
	.rv-bar__in { flex-wrap: nowrap; }
	.rv-bar__info strong { font-size: 14px; }
	.rv-bar__info span { font-size: 11.5px; }
	.rv-bar .rv-btn--sm { padding: 0 16px; font-size: 13px; white-space: nowrap; }
	.rv-faq__item p { padding-right: 0; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.rv-dot.is-live { animation: none; }
	.rv-btn, .rv-bar { transition: none; }
}
