/* Pavigym · Pie de página 1.1.0
 * El mismo lenguaje que el megamenú, las landings nuevas y el blog: azul marino #15263a (el de las tarjetas), azul
 * Pavigym #05a3de, letra Outfit, títulos pequeños en mayúsculas con la raya azul corta, iconos monocromos y el botón
 * en píldora del CONTACT de la cabecera.
 * Las filas llevan las clases que les pone el plugin según lo que contienen: pf-fila-enlaces, pf-fila-redes y
 * pf-fila-legal. Los fondos de fila llevan !important en el tema (vc_custom_…): por eso aquí también.
 * Las filas van a sangre y el relleno lateral lo pone el tema: aquí nunca se usa «padding» abreviado en una fila. */

#footer.main-footer {
	--pf-marino: #15263a;
	--pf-tinta: #0f1c2c;
	--pf-azul: #05a3de;
	--pf-azul-hover: #0491c5;
	--pf-texto: rgba(255, 255, 255, .72);
	--pf-suave: rgba(255, 255, 255, .5);
	--pf-linea: rgba(255, 255, 255, .1);
	--pf-fuente: Outfit, Helvetica, Arial, sans-serif;
	background: var(--pf-marino);
	font-family: var(--pf-fuente);
	color: var(--pf-texto);
}
#footer.main-footer .vc_row.bottom-footer { background: transparent !important; }
#footer.main-footer :is(.pf-fila-enlaces, .pf-fila-redes, .pf-fila-legal)::before,
#footer.main-footer :is(.pf-fila-enlaces, .pf-fila-redes, .pf-fila-legal)::after { display: none; }

/* ------------------------------------------------------------ columnas de enlaces */
#footer.main-footer .pf-fila-enlaces { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 40px; padding-top: 72px !important; padding-bottom: 56px !important; }
#footer.main-footer .pf-fila-enlaces.pf-con-marca { grid-template-columns: minmax(0, 1.35fr); }
#footer.main-footer .pf-fila-enlaces > .wpb_column { width: auto; float: none; min-height: 0; padding: 0; }
#footer.main-footer .pf-fila-enlaces .vc_column-inner { padding: 0 !important; }
/* títulos de columna: como los del megamenú y la barra lateral del blog */
#footer.main-footer .titulomenusfooter h5 { margin: 0 0 20px; font-family: var(--pf-fuente); font-size: 12px; font-weight: 800; line-height: 1.3; letter-spacing: .16em; text-transform: uppercase; color: #fff; }
#footer.main-footer .titulomenusfooter h5::after { content: ''; display: block; width: 24px; height: 2px; margin-top: 12px; background: var(--pf-azul); }
/* enlaces */
#footer.main-footer .titulomenusfooter ul { margin: 0; padding: 0; list-style: none; }
#footer.main-footer .titulomenusfooter ul li { margin: 0; padding: 0; border: 0; }
#footer.main-footer .titulomenusfooter ul li::before { display: none; }
#footer.main-footer .titulomenusfooter ul li a { display: inline-block; padding: 6px 0; font-family: var(--pf-fuente); font-size: 12.5px; font-weight: 500; line-height: 1.45; letter-spacing: .05em; text-transform: uppercase; color: var(--pf-texto); transition: color .15s, transform .15s; }
#footer.main-footer .titulomenusfooter ul li a span { color: inherit; }
#footer.main-footer .titulomenusfooter ul li a:hover { color: #fff; transform: translateX(3px); }

/* ------------------------------------------------------------ columna de marca */
#footer.main-footer .pf-marca { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
#footer.main-footer .pf-marca .pf-logo img { display: block; width: auto; height: 30px; }
#footer.main-footer .pf-marca .pf-lema { margin: 0; max-width: 260px; font-size: 14px; line-height: 1.55; color: var(--pf-texto); }
#footer.main-footer .pf-marca .pf-boton { display: inline-flex; align-items: center; gap: 10px; margin-top: 4px; padding: 12px 22px; border-radius: 999px; background: var(--pf-azul); font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #fff; transition: background .15s; }
#footer.main-footer .pf-marca .pf-boton::after { content: '\2192'; font-size: 14px; }
#footer.main-footer .pf-marca .pf-boton:hover { background: var(--pf-azul-hover); color: #fff; }

/* ------------------------------------------------------------ redes: iconos monocromos, azules al pasar */
#footer.main-footer .social-icon { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
#footer.main-footer .social-icon li { margin: 0; padding: 0; }
#footer.main-footer .social-icon li a { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 1px solid rgba(255, 255, 255, .22); border-radius: 50%; background: transparent !important; font-size: 15px; color: #fff !important; transition: background .15s, border-color .15s; }
/* el color de cada red lo pone el tema en el propio icono («.branded i.fa-facebook»…), no en el enlace */
#footer.main-footer .social-icon li a i { background: transparent !important; color: inherit !important; }
#footer.main-footer .social-icon li a:hover { border-color: var(--pf-azul); background: var(--pf-azul) !important; }
/* fila propia de las redes: solo se ve si la columna de marca está desactivada */
#footer.main-footer .pf-fila-redes { display: flex; align-items: center; justify-content: space-between; padding-top: 0 !important; padding-bottom: 36px !important; }
#footer.main-footer .pf-fila-redes > .wpb_column { width: auto; float: none; }
#footer.main-footer .pf-fila-redes .vc_column-inner { padding: 0 !important; }

/* ------------------------------------------------------------ franja legal */
#footer.main-footer .pf-fila-legal { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 32px; margin-top: 0; padding-top: 22px !important; padding-bottom: 22px !important; border-top: 1px solid var(--pf-linea); background: var(--pf-tinta) !important; }
#footer.main-footer .pf-fila-legal > .wpb_column { width: auto; float: none; }
#footer.main-footer .pf-fila-legal .vc_column-inner,
#footer.main-footer .pf-fila-legal .wpb_text_column,
#footer.main-footer .pf-fila-legal .container,
#footer.main-footer .pf-fila-legal .wpb_text_column .bottom-footer { margin: 0 !important; padding: 0 !important; width: auto; } /* el texto repite dentro la clase bottom-footer, que en el tema lleva 45 px de relleno abajo */
#footer.main-footer .pf-fila-legal .copyright { display: inline; margin: 0; }
#footer.main-footer .pf-fila-legal .copyright + .copyright::before { content: '\00b7'; margin: 0 10px; color: var(--pf-suave); }
#footer.main-footer .pf-fila-legal .bottom-copyright { font-family: var(--pf-fuente); font-size: 12.5px; letter-spacing: .02em; color: var(--pf-suave) !important; }
#footer.main-footer .pf-fila-legal ul.widget_nav_menu { display: flex; flex-wrap: wrap; gap: 6px 22px; margin: 0; padding: 0; list-style: none; }
#footer.main-footer .pf-fila-legal ul.widget_nav_menu li { margin: 0; padding: 0; border: 0; }
#footer.main-footer .pf-fila-legal ul.widget_nav_menu li::before { display: none; }
#footer.main-footer .pf-fila-legal ul.widget_nav_menu li a { font-family: var(--pf-fuente); font-size: 11.5px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--pf-suave); transition: color .15s; }
#footer.main-footer .pf-fila-legal ul.widget_nav_menu li a:hover { color: #fff; }

/* ------------------------------------------------------------ botón flotante «Request a quote»
 * Se oculta mientras el pie está a la vista (clase que pone el plugin en <body>): tapaba los enlaces del pie, y el pie
 * ya lleva su botón de contacto. */
body.pf-pie-a-la-vista .pvg-cta { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; transform: translateY(12px) !important; transition: opacity .2s ease, transform .2s ease, visibility .2s !important; } /* la transición solo al ocultarse: la de aparecer es la del propio botón */

/* ------------------------------------------------------------ tableta y móvil */
@media (max-width: 991px) {
	#footer.main-footer .pf-fila-enlaces,
	#footer.main-footer .pf-fila-enlaces.pf-con-marca { grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 28px; padding-top: 56px !important; }
	#footer.main-footer .pf-fila-enlaces > .pf-col-marca { grid-column: 1 / -1; }
}
@media (max-width: 575px) {
	#footer.main-footer .vc_row.bottom-footer { padding-left: 20px !important; padding-right: 20px !important; } /* el tema deja 8 px a cada lado */
	#footer.main-footer .pf-fila-enlaces,
	#footer.main-footer .pf-fila-enlaces.pf-con-marca { gap: 32px 20px; padding-top: 48px !important; padding-bottom: 40px !important; } /* dos columnas también: a una sola el pie mide 1.500 px */
	#footer.main-footer .titulomenusfooter ul li a { font-size: 12px; letter-spacing: .03em; }
	#footer.main-footer .pf-fila-redes { justify-content: flex-start; }
	#footer.main-footer .pf-fila-legal { flex-direction: column; align-items: flex-start; }
	#footer.main-footer .pf-fila-legal .copyright { display: block; }
	#footer.main-footer .pf-fila-legal .copyright + .copyright::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	#footer.main-footer .titulomenusfooter ul li a { transition: none; }
	#footer.main-footer .titulomenusfooter ul li a:hover { transform: none; }
}
