@font-face{font-family:Montserrat RNPC;src:url('/css/fonts/montserrat-latin-v2.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
.rnpc-logo{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;width:230px;color:#082d49;text-decoration:none;font-family:'Montserrat RNPC',sans-serif;font-style:normal;line-height:1}
.rnpc-logo.rnpc-logo--blanco{color:#fff}
.rnpc-logo strong{display:block;font-family:inherit;font-weight:900;font-size:75.93px;line-height:.9;letter-spacing:0}
.rnpc-logo span{display:block;font-family:inherit;font-size:12.026px;font-weight:700;line-height:1.2;letter-spacing:0;margin-top:4px;white-space:nowrap}
@media(max-width:760px){.rnpc-logo{width:165px}.rnpc-logo strong{font-size:54.47px}.rnpc-logo span{font-size:8.628px;margin-top:3px}}
.rnpc-logo strong{width:100%;line-height:0}.rnpc-wordmark{display:block;width:100%;height:auto;fill:currentColor;overflow:visible}.rnpc-logo>span{margin-top:5px}
.rnpc-logo{width:184px}.rnpc-logo>span{font-size:9.621px;margin-top:4px}@media(max-width:760px){.rnpc-logo{width:132px}.rnpc-logo>span{font-size:6.902px;margin-top:3px}}
.rnpc-logo .rnpc-wordmark{color:#FFAA57}

/* Logotipo oficial Red Constructor: encuadre del original sin alterar la imagen. */
.rnpc-logo.red-constructor-logo{position:relative;display:block!important;width:338px!important;flex-basis:338px!important;height:62.4px;overflow:hidden;background:transparent;border-radius:4px}
.rnpc-logo.red-constructor-logo>img{position:absolute;display:block;width:104%!important;max-width:none!important;height:auto!important;left:-2%;top:50%;transform:translateY(-50%);margin:0}
@media(max-width:768px){.rnpc-logo.red-constructor-logo{width:273px!important;flex-basis:273px!important;height:52px}}


/* Identidad pública: marca a izquierda y acceso destacado a derecha. */
@media(min-width:769px){
 #cabecera-compartida:not(.cabecera-con-perfil) .header-container>.red-constructor-logo{order:-1;margin-left:0!important;margin-right:0!important;align-self:center;left:0;right:auto}
 #cabecera-compartida:not(.cabecera-con-perfil) #mainNav{justify-content:center;flex-wrap:wrap}
 #cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.login-button{order:20;margin-left:auto!important}
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida .header-container>.red-constructor-logo{left:0;right:auto}
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida #mainNav a.login-button{order:20}
}
#cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.login-button,
#cabecera-compartida:not(.cabecera-con-perfil) .header-actions a.login-button{background:#f5f8fa!important;color:#103e59!important;border:1px solid #dce6ed!important;border-radius:8px!important}
#cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.login-button::before,
#cabecera-compartida:not(.cabecera-con-perfil) .header-actions a.login-button::before{background:#dce6ed!important;color:#103e59!important}
#cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.login-button:hover,
#cabecera-compartida:not(.cabecera-con-perfil) .header-actions a.login-button:hover{background:#dce6ed!important;color:#103e59!important;border-color:#fff!important}

/* Logo proporcionado por el propietario, sin recolorear. */
.rnpc-logo.red-constructor-logo{height:85px;background:transparent}
.rnpc-logo.red-constructor-logo>img{position:static;width:100%!important;height:100%!important;object-fit:contain;transform:none;margin:0}
.rnpc-logo.red-constructor-logo::after{content:none}
@media(max-width:768px){.rnpc-logo.red-constructor-logo{height:69px}}

/* Cabecera compacta y logo completo, sin desplazamientos del PNG anterior. */
body:not(.sesion-iniciada) #cabecera-compartida .header-container>.red-constructor-logo,
body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida .header-container>.red-constructor-logo{
 left:0!important;width:400px!important;flex-basis:400px!important;max-width:100%;overflow:visible;
}
body:not(.sesion-iniciada) #cabecera-compartida .red-constructor-logo>img,
body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida .red-constructor-logo>img{
 left:0!important;transform:none!important;object-fit:contain;object-position:left center;
}
@media(min-width:769px){
 body:not(.sesion-iniciada) #cabecera-compartida #mainNav>a:not([hidden]),
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida #mainNav>a:not([hidden]){
 height:34px!important;min-height:34px!important;padding:5px 12px!important;line-height:1.2!important;
 }
 body:not(.sesion-iniciada) #cabecera-compartida #mainNav a.login-button::before{height:32px!important;min-height:0!important;align-self:center}
}
@media(min-width:1000px){body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida #mainNav{left:410px!important}}
@media(min-width:769px) and (max-width:1100px){
 body:not(.sesion-iniciada) #cabecera-compartida .header-container>.red-constructor-logo{width:300px!important;flex-basis:300px!important}
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida #mainNav{left:310px!important}
}
@media(max-width:768px){
 body:not(.sesion-iniciada) #cabecera-compartida .header-container>.red-constructor-logo,
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida .header-container>.red-constructor-logo{
 width:100%!important;max-width:320px;min-width:0;flex-basis:auto!important;height:69px;left:0!important;
 }
}
/* Navegación pública adaptable en una sola fila junto a la marca. */
@media(min-width:769px){
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .header-container{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:clamp(8px,1vw,16px)!important}
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .header-container>.red-constructor-logo{position:relative!important;top:auto!important;left:0!important;order:0!important;width:clamp(150px,23vw,350px)!important;flex:0 1 clamp(150px,23vw,350px)!important;min-width:140px;margin:0!important}
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav{position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-end!important;flex:1 1 auto!important;min-width:0;width:auto!important;height:auto!important;padding:0!important;margin:0!important;gap:clamp(4px,.6vw,8px)!important;order:1!important}
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a:not([hidden]){flex:0 0 auto!important;min-width:0!important;width:auto!important;font-size:clamp(11px,1.15vw,16px)!important;padding:5px clamp(6px,.8vw,12px)!important;white-space:nowrap!important}
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a.login-button:not([hidden]){order:20!important;margin-left:0!important;gap:clamp(5px,.7vw,10px)!important}
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a.login-button::after{width:23px;height:23px;flex-basis:23px;background-size:17px}
}

@media(min-width:769px){body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .header-container{height:105px!important;min-height:105px!important}body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .header-container>.red-constructor-logo{height:95px!important}}

@media(min-width:769px){body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a:not(.login-button):not(.registro-button):not([hidden]){color:#103e59!important;background:#fff!important;border:1px solid #8295a1!important;opacity:1!important}}

/* Mantener la navegación sobre el fondo blanco de portada. */
@media(min-width:769px){body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav{position:relative!important;z-index:2;pointer-events:auto}body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida .header-container::before{z-index:0}}

/* Franja superior compacta sin cambiar el tamaño horizontal de la marca. */
@media(min-width:769px){
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .header-container{height:70px!important;min-height:70px!important;padding:0!important}
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .header-container>.red-constructor-logo{height:64px!important}
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida .header-container::before{height:70px!important}
}
@media(min-width:1000px){
 body.inicio-v2:not(.sesion-iniciada) .portada-v2{margin-top:70px!important}
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida{height:calc(var(--portada-altura) + 70px)!important}
}

/* Franja superior compacta sin cambiar el tamaño horizontal de la marca. */
@media(min-width:769px){
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .site-header .header-container{height:70px!important;min-height:70px!important;padding:0!important}
 body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .site-header .header-container>.red-constructor-logo{height:64px!important}
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida .header-container::before{height:70px!important}
}
@media(min-width:1000px){
 body.inicio-v2:not(.sesion-iniciada) .portada-v2{margin-top:70px!important}
 body.inicio-v2:not(.sesion-iniciada) #cabecera-compartida{height:calc(var(--portada-altura) + 70px)!important}
}

/* Inicio conserva contraste al pasar el cursor y al navegar con teclado. */
body #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a[href="/"]:not([hidden]):hover,
body #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a[href="/"]:not([hidden]):focus-visible,
body #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a[href="/"]:not([hidden]):active{background:#e5ebef!important;color:#103e59!important;border-color:#607b8d!important;opacity:1!important;text-decoration:none!important}
body #cabecera-compartida #mainNav>a[href="/"]:hover *{color:inherit!important}

/* Altura y arranque uniformes en las páginas públicas. */
@media(min-width:769px){
body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .site-header .header-container{height:70px!important;min-height:70px!important;padding-block:0!important;box-sizing:border-box}
body:not(.sesion-iniciada):not(.inicio-v2):has(#cabecera-compartida:not(.cabecera-con-perfil))>main{margin-top:0!important;padding-top:0!important}
body:not(.sesion-iniciada):not(.inicio-v2):has(#cabecera-compartida:not(.cabecera-con-perfil))>main>.correos-profesionales:first-child{padding-top:0!important}
body:not(.sesion-iniciada):not(.inicio-v2):has(#cabecera-compartida:not(.cabecera-con-perfil))>main>:first-child{margin-top:0!important}
}

/* Acceso de Tienda con el mismo botón negro y flecha roja de la portada. */
body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.tienda-ingreso-publico:not([hidden]){background:#080808!important;color:#fff!important;border:1px solid #222!important;border-radius:8px!important;padding:0 14px 0 18px!important;gap:14px!important;order:20!important;box-shadow:0 2px 5px #0002}
body #cabecera-compartida #mainNav a.tienda-ingreso-publico::before{content:none!important;display:none!important}
body #cabecera-compartida #mainNav a.tienda-ingreso-publico::after{content:'→';display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:50%;background:#ed171f;color:#fff;font:24px/1 Arial}
body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.tienda-ingreso-publico:hover{background:#282828!important;color:#fff!important}
body #cabecera-compartida #mainNav a.tienda-ingreso-publico:focus-visible{outline:3px solid #ed171f;outline-offset:3px}

/* Acceso de Tienda con el mismo botón negro y flecha roja de la portada. */
body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.tienda-ingreso-publico:not([hidden]){background:#080808!important;color:#fff!important;border:1px solid #222!important;border-radius:8px!important;padding:0 14px 0 18px!important;gap:14px!important;order:20!important;box-shadow:0 2px 5px #0002}
body #cabecera-compartida #mainNav a.tienda-ingreso-publico::before{content:none!important;display:none!important}
body #cabecera-compartida #mainNav a.tienda-ingreso-publico::after{content:'→';display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:50%;background:#ed171f;color:#fff;font:24px/1 Arial}
body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav a.tienda-ingreso-publico:hover{background:#282828!important;color:#fff!important}
body #cabecera-compartida #mainNav a.tienda-ingreso-publico:focus-visible{outline:3px solid #ed171f;outline-offset:3px}

/* Menú público uniforme en todas las secciones. */
@media(min-width:769px){body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a:not(.login-button):not(.registro-button):not([hidden]){height:34px!important;min-height:34px!important;padding:5px clamp(6px,.8vw,12px)!important;border:1px solid #8295a1!important;border-radius:8px!important;background:#fff!important;color:#103e59!important;font-size:clamp(11px,1.15vw,16px)!important;line-height:1.2!important;opacity:1!important}body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) #mainNav>a:not(.login-button):not(.registro-button):not([hidden]):hover{background:#e5ebef!important;color:#103e59!important}}

/* Marca de mayor tamaño dentro de la cabecera compacta. */
body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .site-header .header-container>.red-constructor-logo{overflow:hidden!important}
body:not(.sesion-iniciada) #cabecera-compartida:not(.cabecera-con-perfil) .site-header .header-container>.red-constructor-logo>img{position:absolute!important;top:50%!important;left:0!important;width:100%!important;height:auto!important;max-height:none!important;transform:translateY(-50%)!important;object-fit:contain!important;margin:0!important}
