/* RYR Portal — "Soy Empresa" y "Soy Funcionario" como accesos separados en el menú */

/* Escritorio: dos accesos tipo "chip", separados del resto del menú */
.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item {
	border: 1.5px solid #E6E9F2 !important;
	border-radius: 9px !important;
	padding: 8px 14px !important;
	margin: 0 3px !important;
	background: #fff;
	color: #242F65 !important;
	font-weight: 600 !important;
	white-space: nowrap;
	transition: border-color .2s, color .2s, background-color .2s !important;
}
.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item::after { display: none !important; }
.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item:hover,
.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item.elementor-item-active {
	border-color: #4266F5 !important;
	color: #4266F5 !important;
	background: #F3F5FB;
}
.elementor-nav-menu--main .ryr-menu-empresa {
	margin-left: 10px !important;
	padding-left: 14px !important;
	border-left: 1px solid #E6E9F2;
}
.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item::before {
	content: "";
	display: inline-block;
	width: 14px; height: 14px;
	margin-right: 7px;
	vertical-align: -2px;
	background: currentColor;
	-webkit-mask: var(--ryr-ico) center / contain no-repeat;
	mask: var(--ryr-ico) center / contain no-repeat;
}
/* Íconos: edificio (empresa) y persona con credencial (funcionario) */
.ryr-menu-empresa {
	--ryr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='1'/%3E%3Cpath d='M9 7h1M14 7h1M9 11h1M14 11h1M9 15h1M14 15h1M10 21v-3h4v3'/%3E%3C/svg%3E");
}
.ryr-menu-funcionario {
	--ryr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E");
}

/* Pantallas medianas: compacta el menú para que todo quepa en una línea */
@media (min-width: 1025px) and (max-width: 1366px) {
	.elementor-location-header .elementor-nav-menu--main a.elementor-item { padding-left: 9px !important; padding-right: 9px !important; font-size: 14px !important; }
	.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item { padding: 7px 10px !important; }
	.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item::before { display: none; }
	.elementor-nav-menu--main .ryr-menu-empresa { margin-left: 4px !important; padding-left: 8px !important; }
	.elementor-location-header .elementor-button { padding-left: 12px !important; padding-right: 12px !important; font-size: 13px !important; }
	.elementor-location-header .elementor-button .elementor-button-icon { display: none !important; }
}

/* Menú desplegable (tablet / móvil): bloque "Accesos" separado */
.elementor-nav-menu--dropdown .ryr-menu-empresa {
	border-top: 6px solid #F3F5FB;
}
.elementor-nav-menu--dropdown .ryr-menu-acceso > a {
	font-weight: 600 !important;
	color: #242F65 !important;
}
.elementor-nav-menu--dropdown .ryr-menu-acceso > a::before {
	content: "";
	display: inline-block;
	width: 16px; height: 16px;
	margin-right: 10px;
	background: #4266F5;
	-webkit-mask: var(--ryr-ico) center / contain no-repeat;
	mask: var(--ryr-ico) center / contain no-repeat;
}

/* Escritorio: el logo usa su ancho real y el menú ocupa el espacio disponible (evita que se monte sobre los botones) */
@media (min-width: 1025px) {
	.elementor-location-header .elementor-element-ba5e273 { --width: auto !important; width: auto !important; flex: 0 0 auto !important; }
	.elementor-location-header .elementor-element-47a8520 { --width: auto !important; width: auto !important; flex: 1 1 auto !important; min-width: 0; }
}
/* Escritorio angosto (1025–1279 px): todo más compacto para que quepa en una línea */
@media (min-width: 1025px) and (max-width: 1279px) {
	.elementor-location-header .elementor-button .elementor-button-text { display: inline !important; }
	.elementor-location-header .elementor-button .elementor-button-icon { display: none !important; }
	body .elementor-location-header .elementor-button { padding-left: 12px !important; padding-right: 12px !important; font-size: 13px !important; }
	.elementor-location-header .elementor-nav-menu--main a.elementor-item { padding-left: 7px !important; padding-right: 7px !important; font-size: 13.5px !important; }
	.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item { padding: 7px 9px !important; margin: 0 2px !important; }
	.elementor-nav-menu--main .ryr-menu-empresa { margin-left: 2px !important; padding-left: 6px !important; }
}

/* Botón "Ingresar a Meet" en verde (escritorio y móvil) */
body .elementor-location-header :is(.elementor-element-2046cf4, .elementor-element-e43e0ab) .elementor-button {
	background: #1E8E3E !important;
	color: #fff !important;
	border: 1.5px solid #1E8E3E !important;
}
body .elementor-location-header :is(.elementor-element-2046cf4, .elementor-element-e43e0ab) .elementor-button:hover,
body .elementor-location-header :is(.elementor-element-2046cf4, .elementor-element-e43e0ab) .elementor-button:focus {
	background: #176E30 !important;
	border-color: #176E30 !important;
	color: #fff !important;
}
body .elementor-location-header :is(.elementor-element-2046cf4, .elementor-element-e43e0ab) .elementor-button * { color: #fff !important; fill: #fff !important; }

/* Íconos de los accesos: evita que se monten sobre el texto (conflicto con el subrayado de Elementor) */
@media (min-width: 1367px) {
	.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item::before { position: static !important; display: inline-block !important; opacity: 1 !important; transform: none !important; left: auto !important; top: auto !important; width: 14px !important; height: 14px !important; margin-right: 7px !important; vertical-align: -2px; }
}
@media (max-width: 1366px) {
	.elementor-nav-menu--main .ryr-menu-acceso > a.elementor-item::before { display: none !important; }
}

/* Pie de página: redes sociales centradas bajo el logo */
.elementor-location-footer .elementor-element-1acab1c .elementor-social-icons-wrapper { text-align: center !important; }

/* Pie de página en tablet: logo arriba y tres columnas debajo */
@media (min-width: 768px) and (max-width: 1024px) {
	.elementor-location-footer .elementor-element-001cba4 { flex-wrap: wrap !important; }
	.elementor-location-footer .elementor-element-50e0abf { --width: 100% !important; width: 100% !important; align-items: center; }
	.elementor-location-footer .elementor-element-50e0abf .elementor-element-ae699ff img { max-width: 220px; }
	.elementor-location-footer .elementor-element-8ee9a67 { --width: 100% !important; width: 100% !important; }
}
.elementor-location-footer .elementor-element-df5709f .elementor-icon-list-text { overflow-wrap: anywhere; }

/* ===================== Página principal y pie de página: diseño profesional ===================== */
body.home { --ryr-navy:#1B2559; --ryr-muted:#5B6478; --ryr-blue:#4266F5; --ryr-soft:#F5F7FC; --ryr-line:#E6E9F2; }
body.home .ryr-sec { background:#fff; }
body.home .ryr-sec--soft { background:var(--ryr-soft) !important; }
body.home .ryr-head { gap:0 !important; margin-bottom:44px; max-width:760px; }
body.home .ryr-head--center { align-items:center !important; text-align:center; margin-left:auto; margin-right:auto; }
body.home .ryr-eyebrow .elementor-heading-title { font-family:"Roboto",sans-serif !important; font-size:13px !important; font-weight:700 !important; letter-spacing:.16em !important; text-transform:uppercase !important; color:var(--ryr-blue) !important; display:inline-flex; align-items:center; gap:10px; margin:0 0 14px !important; }
body.home .ryr-eyebrow .elementor-heading-title::before { content:""; width:28px; height:2px; background:currentColor; border-radius:2px; }
body.home .ryr-title .elementor-heading-title { font-family:"Merriweather",serif !important; font-size:clamp(28px,3vw,42px) !important; line-height:1.2 !important; font-weight:700 !important; color:var(--ryr-navy) !important; margin:0 0 16px !important; letter-spacing:-.01em; }
body.home .ryr-lead, body.home .ryr-lead p { font-family:"Roboto",sans-serif !important; font-size:17px !important; line-height:1.75 !important; color:var(--ryr-muted) !important; margin:0 !important; }
body.home .ryr-head--center .ryr-lead { text-align:center; }
body.home .ryr-actions { gap:12px !important; margin-top:32px; flex-wrap:wrap; }
body.home .ryr-actions--center { justify-content:center !important; }
body.home .ryr-btn .elementor-button { font-family:"Roboto",sans-serif !important; font-size:15px !important; font-weight:600 !important; letter-spacing:.01em !important; text-transform:none !important; padding:15px 26px !important; border-radius:10px !important; transition:background-color .2s, color .2s, border-color .2s, transform .2s !important; }
body.home .ryr-btn-primary .elementor-button { background:var(--ryr-blue) !important; color:#fff !important; border:1.5px solid var(--ryr-blue) !important; box-shadow:0 8px 20px -8px rgba(66,102,245,.6) !important; }
body.home .ryr-btn-primary .elementor-button:hover { background:#2F4FD8 !important; border-color:#2F4FD8 !important; transform:translateY(-1px); }
body.home .ryr-btn-ghost .elementor-button { background:transparent !important; color:#fff !important; border:1.5px solid rgba(255,255,255,.55) !important; }
body.home .ryr-btn-ghost .elementor-button:hover { background:rgba(255,255,255,.1) !important; border-color:#fff !important; }
body.home .ryr-btn-outline .elementor-button { background:#fff !important; color:var(--ryr-navy) !important; border:1.5px solid var(--ryr-line) !important; }
body.home .ryr-btn-outline .elementor-button:hover { border-color:var(--ryr-blue) !important; color:var(--ryr-blue) !important; }
body.home .elementor-element-5db5758f::before { background-image:linear-gradient(95deg, rgba(14,21,56,.92) 0%, rgba(14,21,56,.74) 50%, rgba(14,21,56,.25) 100%), url("/wp-content/uploads/2025/05/img_fondoryr.jpg") !important; background-size:cover !important; background-position:center right !important; opacity:1 !important; }
body.home .elementor-element-6affd683 .ekit-heading { display:flex; flex-direction:column; }
body.home .elementor-element-6affd683 .ekit-heading--subtitle { order:-1; font-family:"Roboto",sans-serif !important; font-size:13px !important; font-weight:700 !important; letter-spacing:.16em !important; text-transform:uppercase !important; color:#9DB3FF !important; margin:0 0 16px !important; display:inline-flex; align-items:center; gap:10px; }
body.home .elementor-element-6affd683 .ekit-heading--subtitle::before { content:""; width:28px; height:2px; background:currentColor; }
body.home .elementor-element-6affd683 h1.ekit-heading--title { font-size:clamp(36px,4.4vw,60px) !important; line-height:1.1 !important; color:#fff !important; font-weight:700 !important; max-width:760px; letter-spacing:-.01em; margin-bottom:18px !important; }
body.home .elementor-element-6affd683 .ekit-heading__description p { color:rgba(255,255,255,.86) !important; font-size:18px !important; line-height:1.7 !important; max-width:640px; }
body.home .elementor-element-2a7b7fb8 { gap:12px !important; }
body.home .ryr-hero-stats { gap:0 !important; margin-top:48px !important; padding-top:28px; border-top:1px solid rgba(255,255,255,.18); max-width:720px; }
body.home .ryr-stat { flex:1 1 0 !important; width:auto !important; padding-right:24px; }
body.home .ryr-stat + .ryr-stat { padding-left:24px; border-left:1px solid rgba(255,255,255,.18); }
body.home .ryr-stat-num .elementor-heading-title { font-family:"Merriweather",serif !important; font-size:24px !important; font-weight:700 !important; color:#fff !important; margin:0 0 4px !important; }
body.home .ryr-stat-lbl .elementor-heading-title { font-family:"Roboto",sans-serif !important; font-size:14px !important; color:rgba(255,255,255,.72) !important; margin:0 !important; }
body.home .ryr-sec--logos { padding-top:72px !important; padding-bottom:64px !important; border-bottom:1px solid var(--ryr-line); }
body.home .ryr-sec--logos .ryr-head { margin-bottom:28px; }
body.home .ryr-sec--logos .ryr-title .elementor-heading-title { font-size:clamp(22px,2vw,28px) !important; }
body.home .ryr-sec--logos .swiper-slide img, body.home .ryr-sec--logos .elementor-carousel-image { filter:grayscale(1); opacity:.75; transition:filter .25s, opacity .25s; }
body.home .ryr-sec--logos .swiper-slide:hover img, body.home .ryr-sec--logos .swiper-slide:hover .elementor-carousel-image { filter:none; opacity:1; }
body.home .ryr-sec--logos .swiper-pagination { display:none !important; }
body.home .ryr-split { align-items:center !important; }
body.home .ryr-media img { border-radius:20px !important; box-shadow:0 30px 60px -30px rgba(27,37,89,.45) !important; width:100%; }
body.home .ryr-sec--about .ryr-head { margin-bottom:20px; }
body.home .ryr-checks .elementor-icon-list-item { padding:6px 0 !important; align-items:flex-start !important; }
body.home .ryr-checks .elementor-icon-list-icon { width:22px !important; height:22px; min-width:22px; border-radius:50%; background:rgba(66,102,245,.12); display:inline-flex !important; align-items:center; justify-content:center; margin-right:12px !important; margin-top:2px; }
body.home .ryr-checks .elementor-icon-list-icon i, body.home .ryr-checks .elementor-icon-list-icon svg { font-size:11px !important; width:11px !important; color:var(--ryr-blue) !important; fill:var(--ryr-blue) !important; }
body.home .ryr-checks .elementor-icon-list-text { font-family:"Roboto",sans-serif; font-size:16px !important; color:#2A3352 !important; line-height:1.55; }
body.home .ryr-checks--sm .elementor-icon-list-text { font-size:15px !important; }
body.home .ryr-grid { align-items:stretch !important; }
body.home .ryr-grid > .e-con { flex:1 1 0 !important; }
body.home .ryr-card { background:#fff !important; border:1px solid var(--ryr-line) !important; border-radius:18px !important; padding:34px 30px !important; box-shadow:0 10px 30px -20px rgba(27,37,89,.25) !important; transition:transform .25s, box-shadow .25s, border-color .25s !important; gap:0 !important; }
body.home .ryr-card:hover { transform:translateY(-4px); box-shadow:0 22px 44px -22px rgba(27,37,89,.35) !important; border-color:#D5DBF0 !important; }
body.home .ryr-card-icon .elementor-icon-wrapper { text-align:left !important; }
body.home .ryr-card-icon .elementor-icon { width:54px; height:54px; border-radius:14px; background:linear-gradient(150deg,#1B2559,#4266F5); display:inline-flex !important; align-items:center; justify-content:center; font-size:22px !important; color:#fff !important; margin-bottom:22px; }
body.home .ryr-card-icon .elementor-icon i, body.home .ryr-card-icon .elementor-icon svg { color:#fff !important; fill:#fff !important; width:22px; height:22px; }
body.home .ryr-card-title .elementor-heading-title { font-family:"Roboto",sans-serif !important; font-size:20px !important; font-weight:700 !important; color:var(--ryr-navy) !important; margin:0 0 10px !important; line-height:1.3 !important; }
body.home .ryr-card-text, body.home .ryr-card-text p { font-family:"Roboto",sans-serif !important; font-size:15.5px !important; line-height:1.7 !important; color:var(--ryr-muted) !important; margin:0 0 14px !important; }
body.home .ryr-card .ryr-checks { border-top:1px solid var(--ryr-line); padding-top:14px; }
body.home .ryr-step { background:#fff !important; border:1px solid var(--ryr-line) !important; border-radius:18px !important; padding:30px 26px !important; position:relative; gap:0 !important; }
body.home .ryr-step-num .elementor-heading-title { font-family:"Merriweather",serif !important; font-size:34px !important; font-weight:700 !important; color:transparent !important; -webkit-text-stroke:1.5px var(--ryr-blue); margin:0 0 14px !important; line-height:1 !important; }
body.home .ryr-sec--work .gallery-item img, body.home .ryr-sec--work .e-gallery-image, body.home .ryr-sec--work img { border-radius:14px !important; }
body.home .ryr-sec--work .gallery { gap:14px; }
body.home .elementor-widget-toggle .elementor-toggle-item { background:#fff; border:1px solid var(--ryr-line) !important; border-radius:12px; margin-bottom:12px !important; overflow:hidden; }
body.home .elementor-widget-toggle .elementor-tab-title { border:0 !important; padding:18px 20px !important; }
body.home .elementor-widget-toggle .elementor-tab-title a { color:var(--ryr-navy) !important; font-weight:600 !important; font-family:"Roboto",sans-serif !important; font-size:16px !important; }
body.home .elementor-widget-toggle .elementor-toggle-icon i, body.home .elementor-widget-toggle .elementor-toggle-icon svg { color:var(--ryr-blue) !important; fill:var(--ryr-blue) !important; }
body.home .elementor-widget-toggle .elementor-tab-content { border:0 !important; padding:0 20px 18px !important; color:var(--ryr-muted) !important; line-height:1.7; font-size:15.5px; }
body.home .ryr-sec--contact { background:linear-gradient(180deg,#fff 0%,var(--ryr-soft) 100%) !important; }
body.home .ryr-contact { align-items:flex-start !important; }
body.home .ryr-contact-info .ryr-head { margin-bottom:24px; }
body.home .ryr-contact-list .elementor-icon-list-item { padding:10px 0 !important; border-bottom:1px solid var(--ryr-line); }
body.home .ryr-contact-list .elementor-icon-list-icon { width:38px !important; height:38px; min-width:38px; border-radius:10px; background:rgba(66,102,245,.1); display:inline-flex !important; align-items:center; justify-content:center; margin-right:14px !important; }
body.home .ryr-contact-list .elementor-icon-list-icon i, body.home .ryr-contact-list .elementor-icon-list-icon svg { color:var(--ryr-blue) !important; fill:var(--ryr-blue) !important; font-size:15px !important; width:15px !important; }
body.home .ryr-contact-list .elementor-icon-list-text { font-family:"Roboto",sans-serif; font-size:16px !important; color:#2A3352 !important; }
body.home .ryr-contact-info .elementor-widget-social-icons { margin-top:22px; }
body.home .ryr-contact-info .elementor-social-icon { background:var(--ryr-navy) !important; border-radius:50% !important; }
body.home .ryr-contact-info .elementor-social-icon:hover { background:var(--ryr-blue) !important; }
body.home .ryr-contact-info .elementor-social-icon i, body.home .ryr-contact-info .elementor-social-icon svg { color:#fff !important; fill:#fff !important; }
body.home .ryr-form-card { background:#fff !important; border:1px solid var(--ryr-line) !important; border-radius:20px !important; padding:38px !important; box-shadow:0 24px 60px -32px rgba(27,37,89,.4) !important; }
body.home .ryr-form-card .elementor-field-label { font-family:"Roboto",sans-serif; font-weight:600; color:var(--ryr-navy); font-size:14px; }
body.home .ryr-form-card .elementor-field { border:1px solid var(--ryr-line) !important; border-radius:10px !important; background:#fff !important; padding:13px 14px !important; font-size:15px !important; }
body.home .ryr-form-card .elementor-field:focus { border-color:var(--ryr-blue) !important; box-shadow:0 0 0 3px rgba(66,102,245,.15) !important; outline:none; }
body.home .ryr-form-card .elementor-field-group { margin-bottom:14px; }
body.home .ryr-form-card .elementor-button { background:var(--ryr-blue) !important; border-radius:10px !important; font-weight:600 !important; letter-spacing:.02em !important; padding:15px 28px !important; text-transform:none !important; font-size:15px !important; }
body.home .ryr-form-card .elementor-button:hover { background:#2F4FD8 !important; }
@media (max-width: 1024px) {
	body.home .elementor-element-6affd683 .ekit-heading { align-items:center; text-align:center; }
	body.home .elementor-element-6affd683 h1.ekit-heading--title, body.home .elementor-element-6affd683 .ekit-heading__description p { margin-left:auto; margin-right:auto; }
	body.home .elementor-element-2a7b7fb8 { justify-content:center !important; }
	body.home .ryr-hero-stats { margin-left:auto !important; margin-right:auto !important; }
	body.home .ryr-grid-4 { flex-wrap:wrap !important; }
	body.home .ryr-grid-4 > .e-con { flex:1 1 calc(50% - 20px) !important; }
}
@media (max-width: 767px) {
	body.home .elementor-element-5db5758f { padding-top:56px !important; padding-bottom:56px !important; min-height:0 !important; }
	body.home .elementor-element-6affd683 .ekit-heading--subtitle { font-size:11.5px !important; letter-spacing:.12em !important; }
	body.home .elementor-element-6affd683 .ekit-heading--subtitle::before { display:none; }
	body.home .elementor-element-6affd683 .ekit-heading__description p { font-size:16px !important; }
	body.home .elementor-element-2a7b7fb8 > .elementor-widget { width:100% !important; }
	body.home .ryr-btn .elementor-button { width:100% !important; justify-content:center; }
	body.home .ryr-hero-stats { flex-direction:column !important; gap:14px !important; text-align:center; }
	body.home .ryr-stat, body.home .ryr-stat + .ryr-stat { padding:0 !important; border:0 !important; }
	body.home .ryr-head { margin-bottom:32px; }
	body.home .ryr-grid > .e-con, body.home .ryr-grid-4 > .e-con { flex:1 1 100% !important; }
	body.home .ryr-form-card { padding:26px 20px !important; }
	body.home .ryr-actions .elementor-widget { width:100%; }
}
.elementor-location-footer .elementor-element-aee7b23 { background:#121A44 !important; padding-top:0 !important; }
.elementor-location-footer .elementor-element-aee7b23::before { background:none !important; opacity:0 !important; }
.elementor-location-footer .elementor-element-3b190c6 { display:none !important; }
.elementor-location-footer .elementor-element-001cba4 { padding-top:64px !important; padding-bottom:44px !important; }
.elementor-location-footer .elementor-element-ae699ff img { filter:brightness(0) invert(1); opacity:.95; max-width:210px; }
.elementor-location-footer .elementor-heading-title { color:#fff !important; font-family:"Roboto",sans-serif !important; font-size:15px !important; font-weight:700 !important; letter-spacing:.12em !important; text-transform:uppercase !important; }
.elementor-location-footer .elementor-icon-list-text { color:#B9C2E0 !important; font-size:15px !important; transition:color .2s; }
.elementor-location-footer .elementor-icon-list-item a:hover .elementor-icon-list-text { color:#fff !important; }
.elementor-location-footer .elementor-icon-list-icon i, .elementor-location-footer .elementor-icon-list-icon svg { color:#7F9BFF !important; fill:#7F9BFF !important; }
.elementor-location-footer .elementor-social-icon { background:rgba(255,255,255,.08) !important; border-radius:50% !important; width:38px; height:38px; display:inline-flex !important; align-items:center; justify-content:center; transition:background .2s; }
.elementor-location-footer .elementor-social-icon:hover { background:#4266F5 !important; }
.elementor-location-footer .elementor-social-icon i, .elementor-location-footer .elementor-social-icon svg { color:#fff !important; fill:#fff !important; }
.elementor-location-footer .elementor-element-00760cf { border-top:1px solid rgba(255,255,255,.12) !important; padding:22px 0 26px !important; }
.elementor-location-footer .elementor-element-5406ed7, .elementor-location-footer .elementor-element-5406ed7 p { color:#8E98BD !important; font-size:13.5px !important; margin:0; }
@media (max-width: 767px) { .elementor-location-footer .elementor-element-5406ed7 { text-align:center !important; width:100%; } }

/* Ajustes finos de inicio */
body.home .ryr-form-card .elementor-field-type-submit, body.home .ryr-form-card .e-form__buttons { width:auto !important; flex:0 0 auto !important; max-width:none !important; }
body.home .ryr-form-card .elementor-button { white-space:nowrap !important; min-width:200px; }
body.home .ryr-contact-info .elementor-social-icons-wrapper { text-align:left !important; justify-content:flex-start !important; }
body.home .ryr-hero-stats > .ryr-stat { padding-top:0 !important; padding-bottom:0 !important; }
body.home .ryr-hero-stats > .ryr-stat:first-child { padding-left:0 !important; }
body.home .ryr-stat-num .elementor-heading-title { font-size:22px !important; white-space:nowrap; }
@media (max-width: 767px) { body.home .ryr-hero-stats > .ryr-stat { padding:0 !important; } body.home .ryr-form-card .elementor-field-type-submit, body.home .ryr-form-card .e-form__buttons { width:100% !important; } body.home .ryr-form-card .elementor-button { width:100% !important; } }

/* ===== Inicio comercial: evaluaciones psicolaborales ===== */
body.home .ryr-hero-row { align-items:center !important; gap:56px !important; }
body.home .ryr-hero-row > .elementor-element-28a3c5ad { flex:1 1 56% !important; width:auto !important; margin-top:0 !important; }
body.home .ryr-hero-mock { flex:1 1 44% !important; width:auto !important; max-width:500px; }
body.home .elementor-element-6affd683 h1.ekit-heading--title { font-size:clamp(34px,4vw,56px) !important; }
.ryrm { position:relative; background:#fff; border-radius:18px; box-shadow:0 40px 80px -30px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.15); font-family:"Roboto",sans-serif; color:#1E2540; text-align:left; }
.ryrm-bar { display:flex; align-items:center; gap:6px; padding:12px 16px; border-bottom:1px solid #EEF0F5; }
.ryrm-bar i { width:10px; height:10px; border-radius:50%; background:#E3E6EF; display:block; }
.ryrm-bar span { margin-left:8px; font-size:12px; color:#8A91AB; font-weight:500; }
.ryrm-in { padding:18px; }
.ryrm-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; margin-bottom:14px; }
.ryrm-head small { display:block; font-size:11.5px; color:#8A91AB; }
.ryrm-head b { font-size:16px; color:#1B2559; }
.ryrm-tag { display:inline-block; font-size:11px; font-weight:600; padding:4px 10px; border-radius:999px; background:#EEF1FF; color:#4266F5; white-space:nowrap; }
.ryrm-tag.g { background:#E7F7EE; color:#16804A; } .ryrm-tag.y { background:#FFF5E0; color:#A86400; }
.ryrm-steps { display:flex; gap:4px; margin-bottom:16px; }
.ryrm-steps span { flex:1; font-size:9.5px; text-align:center; padding:7px 2px; border-radius:6px; background:#F1F3F8; color:#8A91AB; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ryrm-steps .ok { background:#E7F7EE; color:#16804A; } .ryrm-steps .on { background:#4266F5; color:#fff; }
.ryrm-list { display:flex; flex-direction:column; gap:8px; }
.ryrm-c { display:flex; align-items:center; gap:10px; padding:10px 12px; border:1px solid #EEF0F5; border-radius:12px; }
.ryrm-c em { width:32px; height:32px; border-radius:50%; color:#fff; font-style:normal; font-size:11px; font-weight:700; display:grid; place-items:center; flex:none; }
.ryrm-c div { flex:1; min-width:0; } .ryrm-c b { display:block; font-size:13.5px; } .ryrm-c small { font-size:11.5px; color:#8A91AB; }
.ryrm-float { position:absolute; left:-28px; bottom:-24px; display:flex; gap:10px; align-items:center; background:#fff; border-radius:14px; padding:12px 16px; box-shadow:0 20px 40px -16px rgba(0,0,0,.45); }
.ryrm-float > span { width:32px; height:32px; border-radius:50%; background:#16A34A; color:#fff; display:grid; place-items:center; font-weight:700; }
.ryrm-float b { display:block; font-size:13px; color:#1B2559; } .ryrm-float small { font-size:11.5px; color:#8A91AB; }
.ryrm--lg { box-shadow:0 40px 80px -30px rgba(0,0,0,.6); }
.ryrm-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ryrm-panel { border:1px solid #EEF0F5; border-radius:12px; padding:14px; }
.ryrm-panel small { display:block; font-size:11.5px; color:#8A91AB; font-weight:600; margin-bottom:8px; text-transform:uppercase; letter-spacing:.06em; }
.ryrm-panel svg { width:100%; display:block; }
.ryrm-b { margin-bottom:9px; } .ryrm-b span { display:block; font-size:12px; margin-bottom:4px; color:#3A4366; }
.ryrm-b i { display:block; height:7px; border-radius:99px; background:#EEF0F5; position:relative; overflow:hidden; }
.ryrm-b i::after { content:""; position:absolute; inset:0 auto 0 0; width:var(--w); background:linear-gradient(90deg,#4266F5,#7F9BFF); border-radius:99px; }
.ryrm-verdict { grid-column:1/-1; background:#E7F7EE; color:#11663A; font-weight:600; font-size:13.5px; border-radius:10px; padding:12px 14px; }
body.home .ryr-timeline { align-items:stretch !important; position:relative; }
body.home .ryr-tl { flex:1 1 0 !important; background:#fff; border:1px solid var(--ryr-line); border-radius:16px; padding:24px 20px !important; gap:0 !important; position:relative; transition:transform .25s, box-shadow .25s; }
body.home .ryr-tl:hover { transform:translateY(-4px); box-shadow:0 18px 40px -22px rgba(27,37,89,.35); }
body.home .ryr-tl-num .elementor-heading-title { width:44px; height:44px; border-radius:12px; display:grid !important; place-items:center; background:linear-gradient(150deg,#1B2559,#4266F5); color:#fff !important; font-family:"Roboto",sans-serif !important; font-weight:700 !important; font-size:15px !important; margin:0 0 16px !important; }
body.home .ryr-tl .ryr-card-title .elementor-heading-title { font-size:17px !important; }
body.home .ryr-tl .ryr-card-text, body.home .ryr-tl .ryr-card-text p { font-size:14.5px !important; margin:0 !important; }
body.home .ryr-plans { align-items:stretch !important; }
body.home .ryr-plan { position:relative; }
body.home .ryr-plan .elementor-widget-button { margin-top:auto !important; padding-top:18px; }
body.home .ryr-plan .ryr-btn .elementor-button { width:100%; justify-content:center; }
body.home .ryr-plan--featured { background:linear-gradient(170deg,#1B2559 0%,#24307A 100%) !important; border-color:#1B2559 !important; transform:translateY(-10px); box-shadow:0 30px 60px -28px rgba(27,37,89,.7) !important; }
body.home .ryr-plan--featured:hover { transform:translateY(-14px); }
body.home .ryr-plan--featured .ryr-card-title .elementor-heading-title { color:#fff !important; }
body.home .ryr-plan--featured .ryr-card-text, body.home .ryr-plan--featured .ryr-card-text p { color:rgba(255,255,255,.78) !important; }
body.home .ryr-plan--featured .ryr-checks { border-top-color:rgba(255,255,255,.15) !important; }
body.home .ryr-plan--featured .ryr-checks .elementor-icon-list-text { color:#fff !important; }
body.home .ryr-plan--featured .ryr-checks .elementor-icon-list-icon { background:rgba(255,255,255,.15) !important; }
body.home .ryr-plan--featured .ryr-checks .elementor-icon-list-icon i, body.home .ryr-plan--featured .ryr-checks .elementor-icon-list-icon svg { color:#fff !important; fill:#fff !important; }
body.home .ryr-plan--featured .ryr-card-icon .elementor-icon { background:#4266F5 !important; }
body.home .ryr-badge { position:absolute !important; top:18px; right:18px; width:auto !important; }
body.home .ryr-badge .elementor-heading-title { background:#4266F5; color:#fff !important; font-family:"Roboto",sans-serif !important; font-size:11.5px !important; font-weight:700 !important; letter-spacing:.06em; text-transform:uppercase; padding:6px 12px; border-radius:999px; margin:0 !important; }
body.home .ryr-test { padding:28px 24px !important; }
body.home .ryr-dots .elementor-icon-list-item { padding:5px 0 !important; }
body.home .ryr-dots .elementor-icon-list-icon i, body.home .ryr-dots .elementor-icon-list-icon svg { font-size:6px !important; width:6px !important; color:var(--ryr-blue) !important; fill:var(--ryr-blue) !important; }
body.home .ryr-dots .elementor-icon-list-text { font-family:"Roboto",sans-serif; font-size:15px !important; color:#2A3352 !important; }
body.home .ryr-sec--platform { background:radial-gradient(1200px 500px at 85% 20%, rgba(66,102,245,.35), transparent 60%), #121A44 !important; }
body.home .ryr-sec--platform .ryr-title .elementor-heading-title { color:#fff !important; }
body.home .ryr-sec--platform .ryr-eyebrow .elementor-heading-title { color:#9DB3FF !important; }
body.home .ryr-sec--platform .ryr-lead, body.home .ryr-sec--platform .ryr-lead p { color:rgba(255,255,255,.78) !important; }
body.home .ryr-sec--platform .ryr-checks .elementor-icon-list-text { color:#fff !important; }
body.home .ryr-sec--platform .ryr-checks .elementor-icon-list-icon { background:rgba(255,255,255,.14) !important; }
body.home .ryr-sec--platform .ryr-checks .elementor-icon-list-icon i, body.home .ryr-sec--platform .ryr-checks .elementor-icon-list-icon svg { color:#fff !important; fill:#fff !important; }
body.home .ryr-why { flex:1 1 calc(50% - 8px) !important; background:var(--ryr-soft); border-radius:14px; padding:20px !important; gap:0 !important; }
body.home .ryr-card-icon--sm .elementor-icon { width:42px !important; height:42px !important; border-radius:11px !important; margin-bottom:14px !important; }
body.home .ryr-card-icon--sm .elementor-icon i, body.home .ryr-card-icon--sm .elementor-icon svg { width:17px !important; height:17px !important; font-size:17px !important; }
body.home .ryr-why .ryr-card-title .elementor-heading-title { font-size:17px !important; margin-bottom:6px !important; }
body.home .ryr-why .ryr-card-text, body.home .ryr-why .ryr-card-text p { font-size:14.5px !important; margin:0 !important; }
@media (max-width: 1024px) {
	body.home .ryr-hero-row { flex-direction:column !important; gap:48px !important; }
	body.home .ryr-hero-mock { max-width:520px; width:100% !important; }
	body.home .ryr-timeline { flex-wrap:wrap !important; }
	body.home .ryr-timeline > .ryr-tl { flex:1 1 calc(33% - 16px) !important; }
	body.home .ryr-plan--featured { transform:none; }
}
@media (max-width: 767px) {
	body.home .ryr-timeline > .ryr-tl { flex:1 1 100% !important; }
	.ryrm-float { left:10px; bottom:-30px; }
	.ryrm-grid { grid-template-columns:1fr; }
	.ryrm-steps span { font-size:8.5px; }
	body.home .ryr-why { flex:1 1 100% !important; }
}

body.home .elementor-element-7ac3aab { --width:100% !important; width:100% !important; max-width:1160px; margin:0 auto; }
.ryrm, .ryrm * { line-height:1.4 !important; }
.ryrm b { font-weight:700; }

/* Inicio RX: ajustes */
body.home .elementor-location-header { position:absolute; left:0; right:0; z-index:50; background:transparent !important; }
body.home .elementor-location-header > .e-con, body.home .elementor-location-header .elementor-element-c03f575 { background:transparent !important; }
body.home .rx-formcard > .elementor-element { position:static !important; }
body.home .rx-formcard .rx-fc-head h3 { font-family:Inter,system-ui,sans-serif !important; }
body.home .rx-formcard .rx-fc-head p { line-height:1.5; }
body.home .rx-formcard .rx-fc-foot span { font-family:Inter,system-ui,sans-serif; }

@media (max-width:1024px){ body.home .rx-hero{padding-top:190px!important} }
@media (max-width:767px){ body.home .rx-hero{padding-top:200px!important} body.home .rx .rx-track img{height:52px!important;max-width:140px} }
body.home .rx-faq .elementor-tab-title a{line-height:1.4!important}
