/* Pie de página y páginas institucionales. Verde #02753C / rojo #D1322B. */

/* El contenedor del tema ya tiene fondo verde (footer-bar-bg); lo oscurecemos con degradado. */
.footer-container {
	background: radial-gradient(circle at 85% 0%, rgba(255,255,255,.06) 0 220px, transparent 221px), linear-gradient(160deg, #015A2E 0%, #02753C 100%) !important;
}
.footer-container .main-footer { padding-top: 0; padding-bottom: 0; }
.footer-container .main-footer > .container,
.footer-container .footer-column { padding-top: 0; padding-bottom: 0; }

.vr-foot { color: rgba(255,255,255,.82); font-size: 14px; }
.vr-foot .vr-ico { display: inline-flex; width: 18px; height: 18px; flex: none; }
.vr-foot .vr-ico svg { width: 100%; height: 100%; fill: currentColor; }
.vr-foot a { color: rgba(255,255,255,.85); transition: color .2s; }
.vr-foot a:hover { color: #fff; }

.vr-foot-grid {
	display: grid; grid-template-columns: 1.35fr 1fr 1fr 1.3fr; gap: 40px;
	padding: 56px 0 40px;
}
.vr-foot-logo {
	display: inline-flex; padding: 12px 18px; margin-bottom: 18px;
	background: #fff; border-radius: 14px; box-shadow: 0 8px 24px rgba(0,0,0,.15);
}
.vr-foot-logo img { display: block; width: 210px; height: auto; }
.vr-foot-brand p { max-width: 320px; margin: 0 0 18px; line-height: 1.6; }
.vr-foot-social { display: flex; gap: 10px; }
.vr-foot-social a {
	display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%;
	background: rgba(255,255,255,.12); color: #fff;
}
.vr-foot-social a:hover { background: #D1322B; }

.vr-foot-col h4 {
	position: relative; margin: 0 0 18px; padding-bottom: 10px;
	color: #fff; font-size: 16px; font-weight: 700; text-transform: none;
}
.vr-foot-col h4::after { content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 3px; border-radius: 2px; background: #D1322B; }
.vr-foot-col ul { margin: 0; padding: 0; list-style: none; }
.vr-foot-col li { margin: 0 0 9px; }
.vr-foot-col li a { display: inline-block; }
.vr-foot-col li a:hover { transform: translateX(3px); }

.vr-foot-contact li { display: flex; gap: 10px; align-items: flex-start; line-height: 1.5; }
.vr-foot-contact li .vr-ico { margin-top: 2px; color: #9FD5B4; }
.vr-foot-news {
	display: flex; flex-direction: column; gap: 6px; margin-top: 18px; padding: 16px;
	border-radius: 14px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12);
}
.vr-foot-news strong { color: #fff; font-size: 15px; }
.vr-foot-news .vr-btn { align-self: flex-start; margin-top: 6px; padding: 10px 16px; font-size: 14px; }

.vr-foot-trust {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px;
	padding: 18px 0; border-top: 1px solid rgba(255,255,255,.14);
}
.vr-foot-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.vr-foot-badges img { height: 40px; width: auto; padding: 5px 10px; border-radius: 8px; background: #fff; }
.vr-foot-dc { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; }

.vr-foot-bottom {
	display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px;
	padding: 16px 0 22px; border-top: 1px solid rgba(255,255,255,.14);
	font-size: 13px; color: rgba(255,255,255,.65);
}

@media (max-width: 1024px) {
	.vr-foot-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 640px) {
	.vr-foot-grid { grid-template-columns: 1fr; padding-top: 40px; }
	.vr-foot-trust, .vr-foot-bottom { flex-direction: column; align-items: flex-start; }
}

/* ---------- Páginas institucionales ---------- */
.vr-page { max-width: 1100px; margin: 0 auto 60px; }
.vr-page h1 { margin: 0 0 12px; font-size: clamp(30px, 3.4vw, 44px); line-height: 1.1; }
.vr-page-head { margin: 10px 0 30px; }
.vr-page-head p { max-width: 760px; font-size: 16px; line-height: 1.6; color: #5f6368; }
.vr-page-hero {
	padding: 56px 52px; margin-bottom: 24px; border-radius: 16px; color: #fff;
	background: linear-gradient(90deg, rgba(1,58,30,.95), rgba(2,117,60,.82) 55%, rgba(2,117,60,.35)), var(--vr-bg) center/cover no-repeat, #02753C;
}
.vr-page-hero h1 { color: #fff; }
.vr-page-hero .vr-kicker { color: #fff; background: #D1322B; padding: 6px 12px; border-radius: 999px; }
.vr-page-hero p { max-width: 620px; margin: 0; font-size: 17px; line-height: 1.6; color: rgba(255,255,255,.92); }
.vr-page-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 24px; }
.vr-page-stats div { padding: 22px; border-radius: 16px; background: #fff; border: 1px solid #E6EAE7; }
.vr-page-stats strong { display: block; font-size: 32px; line-height: 1; color: #02753C; }
.vr-page-stats span { display: block; margin-top: 6px; font-size: 14px; color: #5f6368; }
.vr-page-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 30px; }
.vr-page-cols > div { padding: 26px; border-radius: 16px; background: #fff; border: 1px solid #E6EAE7; }
.vr-page-cols h3 { margin: 14px 0 8px; font-size: 19px; }
.vr-page-cols p { margin: 0; color: #5f6368; line-height: 1.55; }

.vr-faq details { margin-bottom: 10px; border-radius: 12px; background: #fff; border: 1px solid #E6EAE7; overflow: hidden; }
.vr-faq summary { position: relative; padding: 18px 54px 18px 22px; cursor: pointer; font-weight: 700; font-size: 16px; color: #231F20; list-style: none; }
.vr-faq summary::-webkit-details-marker { display: none; }
.vr-faq summary::after { content: "+"; position: absolute; right: 22px; top: 50%; transform: translateY(-50%); font-size: 24px; font-weight: 400; color: #02753C; }
.vr-faq details[open] summary { color: #02753C; }
.vr-faq details[open] summary::after { content: "−"; }
.vr-faq details p { margin: 0; padding: 0 22px 20px; color: #5f6368; line-height: 1.6; }
.vr-faq-more { margin-top: 20px; color: #5f6368; }

.vr-page-form { max-width: 760px; padding: 30px; border-radius: 16px; background: #fff; border: 1px solid #E6EAE7; }
.vr-page-form input[type=submit] { background: #D1322B; color: #fff; border-radius: 999px; padding: 12px 26px; }

@media (max-width: 768px) {
	.vr-page-hero { padding: 34px 22px; }
	.vr-page-stats { grid-template-columns: 1fr 1fr; }
	.vr-page-cols { grid-template-columns: 1fr; }
}

/* Botones dentro del pie (home.css no se carga en todas las páginas). */
.vr-foot .vr-btn {
	display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 999px;
	font-weight: 700; font-size: 14px; line-height: 1;
}
.vr-foot .vr-btn-white { background: #fff; color: #02753C; }
.vr-foot .vr-btn-white:hover { background: #EAF4EE; color: #015A2E; }

/* ---------- Nosotros ---------- */
.vr-nos .vr-page-stats strong { font-size: 28px; }
.vr-nos-historia { display: grid; grid-template-columns: 1.4fr 1fr; gap: 28px; margin-bottom: 24px; padding: 34px; border-radius: 16px; background: #fff; border: 1px solid #E6EAE7; }
.vr-nos-historia h2 { margin: 0 0 12px; font-size: clamp(22px, 2.2vw, 30px); }
.vr-nos-historia p { color: #5f6368; line-height: 1.65; }
.vr-nos-linea { position: relative; margin: 0; padding: 0 0 0 26px; list-style: none; border-left: 3px solid #EAF4EE; align-self: center; }
.vr-nos-linea li { position: relative; margin: 0 0 22px; }
.vr-nos-linea li::before { content: ""; position: absolute; left: -35px; top: 3px; width: 15px; height: 15px; border-radius: 50%; background: #D1322B; box-shadow: 0 0 0 4px #fff; }
.vr-nos-linea strong { display: block; font-size: 22px; color: #02753C; }
.vr-nos-linea span { color: #5f6368; font-size: 14px; }
.vr-nos-dos { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 24px; }
.vr-nos-box { padding: 28px; border-radius: 16px; background: #fff; border: 1px solid #E6EAE7; }
.vr-nos-box h3 { margin: 0 0 14px; }
.vr-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.vr-chips li { margin: 0; padding: 7px 13px; border-radius: 999px; background: #EAF4EE; color: #015A2E; font-size: 13px; font-weight: 600; }
.vr-chips-alt li { background: #FBEDEC; color: #9E241F; }
.vr-nos-mv { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 30px; }
.vr-nos-mv > div { padding: 30px; border-radius: 16px; color: #fff; background: linear-gradient(135deg, #015A2E, #02753C); }
.vr-nos-mv > div:last-child { background: linear-gradient(135deg, #B02822, #D1322B); }
.vr-nos-mv .vr-kicker { color: #fff; font-size: 14px; }
.vr-nos-mv p { margin: 0; line-height: 1.65; color: rgba(255,255,255,.93); }
.vr-ofertas-vacio { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.vr-legal { max-width: 900px; }
.vr-legal h2 { margin: 28px 0 8px; font-size: 20px; color: #02753C; }
.vr-legal p, .vr-legal li { color: #444; line-height: 1.65; }
@media (max-width: 768px) {
	.vr-nos-historia, .vr-nos-dos, .vr-nos-mv { grid-template-columns: 1fr; }
	.vr-nos-historia { padding: 24px 20px; }
}

/* ---------- Header: barra de categorías + accesos rápidos (fila inferior en escritorio) ---------- */
@media (min-width: 1025px) {
	.whb-header-bottom { background: #fff !important; border-top: 1px solid #E6EAE7; border-bottom: 1px solid #E6EAE7; }
	.whb-header-bottom .whb-column11 { flex: 1 1 100%; max-width: none; }
	.whb-header-bottom .wd-header-cats { flex: none; margin-right: 14px; align-self: stretch; }
	.whb-header-bottom .wd-header-cats .menu-opener { height: 100%; min-height: 56px; border-radius: 0; }
	.whb-header-bottom .wd-header-nav { flex: 1 1 auto; }
	.whb-header-bottom .wd-header-nav .wd-nav { display: flex; flex-wrap: nowrap; justify-content: flex-start; width: 100%; gap: 0; }
	.whb-header-bottom .wd-header-nav .wd-nav > li { flex: none; }
	.whb-header-bottom .wd-header-nav .wd-nav > li > a {
		padding: 0 11px; white-space: nowrap; text-transform: none;
		font-size: 14px; font-weight: 600; color: #2b2b2b;
	}
	.whb-header-bottom .wd-header-nav .wd-nav > li > a:hover { color: #02753C; }
	.whb-header-bottom .wd-nav > li.vr-menu-ofertas > a { color: #D1322B; }
	.whb-header-bottom .wd-nav > li.vr-menu-wa { margin-left: auto; }
	.whb-header-bottom .wd-nav > li.vr-menu-wa > a { color: #02753C; }
}
@media (min-width: 1025px) and (max-width: 1280px) {
	.whb-header-bottom .wd-header-nav .wd-nav > li > a { padding: 0 7px; font-size: 13px; }
	.whb-header-bottom .wd-nav > li.vr-menu-wa { display: none; }
}

/* ---------- Página Marcas ---------- */
.vr-marcas-buscar { max-width: 360px; margin-top: 8px; border-radius: 999px; padding: 0 18px; height: 46px; }
.vr-marcas-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 14px; }
.vr-marcas-grid a {
	display: grid; place-items: center; aspect-ratio: 1 / 1; padding: 14px;
	background: #fff; border: 1px solid #E6EAE7; border-radius: 14px; transition: .2s ease;
}
.vr-marcas-grid a:hover { border-color: #02753C; box-shadow: 0 10px 22px rgba(2,117,60,.10); transform: translateY(-2px); }
.vr-marcas-grid img { width: 100%; height: auto; max-width: 120px; }
