@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

body *{font-family: 'Poppins', sans-serif;}
h1, h2, h3, h4, h5, h6{font-family: 'Poppins', sans-serif; !important;}

/*************************************************************************************
    HELPERS
**************************************************************************************/
body{font-family: "Helvetica Neue", Helvetica, Arial, Verdana , sans-serif;}
.background-primary-transparent{background-color: rgba(218, 41, 28, 0.7) !important;}
.background-secondary-transparent{background-color: rgba(61, 57, 53, 0.7) !important;}
.background-grey-transparent{background-color: rgba(72, 72, 72, 0.7) !important;}
.background-grey-light{background-color: #bcc2c6 !important;}

.icon-block .item{border-radius:0;}
.icon-block a:hover *{color: #fff;}
.background-primary > *, .background-primary > * > *{background-color: #da291c !important;}
.background-secondary > *, .background-secondary > * > *{background-color: #ededed !important;}
.background-secondary-transparent > *, .background-secondary-transparent > * > *{background-color: rgba(61, 57, 53, 0.7) !important;}
/*.background-grey-light-transparent > *, .background-grey-light-transparent > * > *{background-color: rgba(188, 194, 198, 0.7) !important;}*/
.background-grey-light > *, .background-grey-light > * > * {background-color: #bcc2c6 !important;}

/*************************************************************************************
    HEADER
**************************************************************************************/
.top-bar{background-color: #020241ff }
.navbar-default{border-bottom: none;}
#header{background-color: #FFFFFF; text-transform: inherit !important;}
#header .logo-auto{max-width: 180px; margin: 0 0 0 0;}
.lower-logo{margin-left:-5px;}

@media (min-width: 768px){
    #header .logo-auto{margin: 0 0 0 0;}
}

@media (max-width: 767px) {
    #header .logo-auto{margin: 0 0 0 0;}
}

.navbar-default .navbar-nav>li>a{font-weight: 600; color: #020241ff; border-bottom: 2px solid #fa7367dd !important; padding-right: 4px; padding-left: 4px;}

.navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus{color: #E1251B; border-bottom: 2px solid #E1251B; background-color: transparent;}
.navbar-default .navbar-nav>.show>a, .navbar-default .navbar-nav>.show>a:hover, .navbar-default .navbar-nav>.show>a:focus{color: #3d3935; background-color: #fff;}
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus{color: #3d3935;}
.navbar-default .navbar-collapse, .navbar-default .navbar-form{border: none;}
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus{background-color: #fff;}

.navbar-default .navbar-nav>li .dropdown-menu{background-color: #fff;}
.navbar-default .navbar-nav>li .dropdown-menu > li > a {color: #3d3935;}
.navbar-default .navbar-nav .show.dropdown-menu>li>a:hover{color: #E1251B;}

@media (max-width: 767px){
    .navbar-default .navbar-nav .show.dropdown-menu>li>a {color: #3d3935;}
    .navbar-default .navbar-nav .show.dropdown-menu>li>a:hover {color: #E1251B;}
}
.navbar-default .navbar-nav>li .dropdown-menu>li>a:hover, .navbar-default .navbar-nav>li  .dropdown-menu>li>a:focus{color: #3d3935; background-color: transparent;}

.navbar-default .navbar-nav>li>a.login{border: 1px solid #FA7367DD; border-radius: 30px; color: #FA7367DD !important; padding: 5px !important; background-color: transparent;}
.navbar-default .navbar-nav>li>a.login:hover{border: 1px solid #E1251B !important; border-radius: 30px !important; color: #E1251B !important; padding: 5px !important;  background-color: transparent !important; text-decoration: underline;}
.navbar-default .navbar-nav>li>a.portalCompany{border: 1px solid #FA7367DD; border-radius: 30px; color: #FA7367DD !important; padding: 5px !important; background-color: transparent;}
.navbar-default .navbar-nav>li>a.portalCompany:hover{border: 1px solid #E1251B !important; border-radius: 30px !important; color: #E1251B !important; padding: 5px !important;  background-color: transparent !important; text-decoration: underline;}

@media (min-width: 768px) and (max-width: 1199px){
    .nav>li>a{padding-left: 7px; padding-right: 7px;}
}

/* Bootstrap */
/*@media (min-width: 768px){
    .nav>li.loginButton>a{padding-left: 25px !important; padding-right: 25px !important; padding-top: 37px; padding-bottom: 37px; color: #fff;}
    .nav>li.loginButton>a:hover{color: #fff; text-decoration: underline #fff !important; border-bottom: none;}
    .nav>li.portalButton>a{padding-left: 25px !important; padding-right: 25px !important; padding-top: 37px; padding-bottom: 37px; color: #fff;}
    .nav>li.portalButton>a:hover{color: #fff; text-decoration: underline #fff !important; border-bottom: none;}

    .navbar-nav>li>a {padding-top: 23px; padding-bottom: 23px;}

}*/
/* Bootstrap */

/*************************************************************************************
    ICONS
**************************************************************************************/

.icon-block-new .icon-image{height: 250px; width: 70%;}
.icon-block-new .icon-text{position: absolute; background-color: #d3d3d3; width: 50%; padding: 30px; font-size: 16px; left: 30%; font-weight: 600;}
.icon-block-new .icon-text.mini{width: 70%; padding: 20px; font-size: 18px;}
@media(max-width: 768px){
    .icon-block-new .icon-text{position: absolute; background-color: #d3d3d3; width: 50%; padding: 15px; font-size: 14px; left: 30%; font-weight: 600;}
}

.icon-block-new.vertical .icon-image{height: 300px; width: 100%;}
.icon-block-new.vertical .icon-text{position: relative; width: 100%; left: inherit; background-color: #E1251B; text-align: left; }
@media(max-width: 768px){
    .icon-block-new.vertical .icon-image{height: 300px; width: 100%;}
    .icon-block-new.vertical .icon-text{position: relative; width: 100%; left: inherit;  background-color: #E1251B; text-align: left;}
}

.icon-block-new.vertical.mini .icon-image{height: 250px; width: 100%;}
.icon-block-new.vertical.mini .icon-text{position: relative; width: 100%; padding: 15px; font-size: 16px;}
@media(max-width: 768px){
    .icon-block-new.vertical.mini .icon-image{height: 140px; width: 100%;}
    .icon-block-new.vertical.mini .icon-text{position: relative; width: 100%;}
}
/*@media(max-width: 991px){
    .icon-block-new {
        width: 300px !important;
        max-width: 100%;
    }
}
@media(min-width: 992px) and (max-width: 1199px){
    .icon-block-new {
        width: 420px !important;
        max-width: 100%;
    }
}
@media(min-width: 1200px) and (max-width: 1554px){
    .icon-block-new {
        width: 380px !important;
        max-width: 100%;
    }
}
@media(min-width: 1555px) {
    .icon-block-new {
        width: 500px !important;
        max-width: 100%;
    }
}*/



/*************************************************************************************
    HOME
**************************************************************************************/
.border-rounded{border: 1px solid black; border-radius: 10px; padding: 20px; }

.nice-list .nice-card{position: relative !important; border-radius: 21px; background-color: #020241ff;color: white !important;}
.nice-list .nice-card .date{color: #0db4d8 !important;}
.nice-list .nice-card .title-news{color: white !important;}
.thumbnail{    line-height: 0.428571;}

.slide-companies{/*background-color: #eaeaea;*/}
.slide-companies h2.title{text-transform: uppercase; color: #E1251B; font-size: 24px;}
.slide-companies .slide img{filter:grayscale(100%);}
.slick-prev, .slick-next {top: 70%;}
@media (min-width: 1100px) {
    .slide img{margin-left: auto; margin-right: auto; max-width: 185px; max-height: 80px;}
}
@media (max-width: 1099px) {
    .slide img {margin-left: auto; margin-right: auto; max-width: 90px; max-height: 50px;}
}
.slick-slider{margin-bottom: 0;}

.hero{min-height: 350px;}
.box-container-split .box-split .box{padding: 20px;}
@media(max-width: 991px){
    .box-container-split .box-split h3{font-size: 26px;}
    .box-container-split{display: block;}
}
@media(min-width: 992px){
    .hero h2{font-size: 44px;}
    .box-container-split .box-split h3{font-size: 26px;}
}
.community .box .icon .fas, .community .box .icon .fab, .community .box .icon .far{color: #3d3935; font-size: 45px; border: none !important;}
.community .box .titulo{color: #3d3935;}

.banner-title-home{position: absolute;}
.banner-btn-10{ right: 10%; top: 20%;}
@media(max-width: 765px){
    .banner-btn-10{right: 0; top:40%;}
    .banner-title-home{position: unset; margin-top: 25px;}
}
.bg-btn-row {background-color: #eae9e9;}

.btn-title a{color:#FFFFFF; font-size: 30px; font-weight: 300 !important;;}

.btn-custom {color: #FFFFFF;display: flex; flex-direction: column; align-items: center; justify-content: center; width: 200px; height: 250px; border-radius: 20px; padding: 10px; transition: all 0.3s ease; background: radial-gradient(circle at top left, rgba(0,0,0,0.3), transparent 70%), radial-gradient(circle at bottom right, rgba(0,0,0,0.3), transparent 70%), linear-gradient(135deg, #a50020, #7a0016);}
.btn-custom a {font-size: 10px; color: #FFFFFF;}
.btn-custom img { width: 100px; height: 100px;}

.btn-custom:hover {background: linear-gradient(to bottom,  #a50020, #7a0016); border-color: transparent; transform: translateY(-5px); box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2);}
.btn-custom:hover a{color: #fff;}

.btn-red {display: flex; flex-direction: column; align-items: center; justify-content: center; width: 200px; height: 250px; background-color: #fff; border: 1px solid #010101; border-radius: 20px; padding: 10px; transition: all 0.3s ease;}
.btn-red a {font-size: 10px; color: #616160;}
.btn-red img { width: 100px; height: 100px;}

.btn-transparent, .btn-transparent:focus{color: #fff; background-color: #0000004d; border-color: #fff; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-transparent:hover, .btn-transparent:focus, .btn-transparent.focus, .btn-transparent:active, .btn-transparent.active, .show.dropdown-toggle.btn-transparent {color: #444 !important; background-color: #ffffffab; border-color: #ffffffab; }

.icon-custom {
    background: radial-gradient(circle at center, #a50020 60%, #7a0016 100%);
    border-radius: 16px;
    padding: 20px;
    color: white;
    font-weight: bold;
}

.icon-circle {display: inline-flex;align-items: center;justify-content: center;width: 70px;height: 70px;border-radius: 50%;background: rgba(255, 255, 255, 0.15);margin-bottom: 10px;}

.icon-circle i {font-size: 24px; color: white;}

@media (min-width: 1000px) {
    .display-6 {
        font-size: 3.5rem;
    }
}
/*************************************************************************************
    FOOTER
**************************************************************************************/
#footer{color: #fff; background: #020241ff; position: relative; }
.copyright{background: #000; filter: brightness(80%); }
.footer_title{color: #fff; font-size: 1rem; font-weight: 700; line-height: 1.2; margin-bottom: 16px !important;}
.footer-row {border-top: 1px solid #b1b0ae; display: flex; gap: 24px; margin-bottom: 32px; padding: 32px 1px 32px 1px; }
a.footer_link{color: #fff; font-size: 1rem; font-weight: 250; line-height: 120%; display: inline-block; margin-bottom: 8px !important;}
a.footer_link:hover{color: #FFFFFF !important; transition: color 0.3s ease;}
.footer_link i {font-size: 2rem; margin-right: 8px;}

/* ======== Base del footer ======== */
.footer-ce{
    position: relative;
    background: #020241ff;              /* azul muy oscuro */
    color: #fff;
    overflow: hidden;
}

/* Aro decorativo grande al lado derecho */
.footer-ce::after{
    content:"";
    position:absolute;
    right:-160px;
    top:-80px;
    width:520px; height:520px;
    border-radius:50%;
    background:
            radial-gradient(closest-side, rgba(255,255,255,.06) 98%, transparent 100%) ,
            radial-gradient(closest-side, rgba(255,255,255,.08) 98%, transparent 100%);
    background-size: 420px 420px, 520px 520px;
    background-position: center center, center center;
    background-repeat: no-repeat;
    pointer-events:none;
}

.brand-row{ min-height: 88px; }
.logo-circle{
    width:68px; height:68px; border-radius:50%;
    background:#020241ff; display:flex; align-items:center; justify-content:center;
    box-shadow: inset 0 0 0 6px rgba(255,255,255,.08);
}
.logo-circle i{ font-size: 30px; color:#fff; opacity:.9; }

.vr-light{
    width:2px; min-height:64px; background: rgba(255,255,255,.34);
    opacity:1;
}

.brand-title{
    font-weight: 800;
    line-height: 1.05;
    font-size: 28px;
    letter-spacing:.4px;
}
.brand-sub{
    margin-top:6px; font-weight:600; font-size: 14px; letter-spacing:.2px;
    opacity:.9;
}
.brand-sub span{ margin-right: 6px; }
.brand-sub .slash{ margin: 0 4px; opacity:.6; }

.social-row{ margin-top: 12px; }
.social-btn{
    width:42px; height:42px; border-radius:50%;
    display:inline-flex; align-items:center; justify-content:center;
    background:#0db4d8; color:#020241ff; text-decoration:none;
    transition: transform .15s ease, filter .15s ease;
}
.social-btn i{ font-size:18px; }
.social-btn:hover{color: #FFFFFF!important;transform: translateY(-2px); filter: brightness(1.05); }

.info-card{
    height: 410px;
    position: relative;
    border: 2px solid rgba(255,255,255,.75);
    border-radius: 18px;
    background: rgba(6,16,71,.35);
    backdrop-filter: blur(1px);
    overflow: hidden;
}

.info-card h3{
    font-weight: 600; font-size: 28px; margin-bottom: 18px;
}

.info-card .city{
    font-size: 16px;font-weight: 800; letter-spacing:.3px; margin-bottom: 6px; color: #0db4d8;
}

/* Marca de agua: sobre para "Contactos" */
.mail-mark::after{
    content: "\f0e0"; /* fa-envelope */
    font-family: "Font Awesome 6 Free"; font-weight: 500;
    position:absolute; right: 14px; bottom: -38px;
    font-size: 140px; color:#fff; opacity:.05; pointer-events:none;
}

/* Asegura que el footer pueda posicionar el pseudo-elemento */
#footer {
    position: relative;
    overflow: hidden; /* por si la imagen sobresale un poco */
}

/* Coloca la imagen al final (abajo-derecha) como background decorativo */
#footer::after {
    content: "";
    position: absolute;
    right: min(3vw, 40px);
    bottom: 0;
    /* tamaño responsivo: ajusta estos valores a tu gusto */
    width: clamp(140px, 26vw, 420px);
    aspect-ratio: 381 / 513; /* proporción aproximada de tu PNG */
    /*background-image: url("https://reqlut2.s3.amazonaws.com/reqlut-images/unitechonduras/home/ceuc.png"); !* ruta a tu PNG *!*/
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: contain;
    opacity: 0.15;              /* transparencia suave */
    pointer-events: none;       /* evita clics */
    z-index: 0;
}

/* Mantén el contenido por encima de la imagen */
#footer .container-fluid {
    position: relative;
    z-index: 1;
}

/* (Opcional) Ocultar la marca en pantallas pequeñas */
@media (max-width: 575.98px) {
    #footer::after { display: none; }
}

/* ======== Responsivo ======== */
@media (max-width: 991.98px){
    .brand-title{ font-size:24px; }
    .info-card h3{ font-size:24px; }
    .mail-mark::after{ font-size: 130px; right: 6px; }
    .ring-mark::after{ width:300px; height:300px; right:-70px; }
}
@media (max-width: 575.98px){
    .vr-light{ display:none !important; }
    .brand-row{ min-height: auto; }
    .logo-circle{ width:56px; height:56px; }
    .brand-title{ font-size:22px; }
}

#footer {
    position: relative;
    overflow: hidden; /* evita que la imagen sobresalga */
}

#footer .footer-mark {
    position: absolute;
    right: 24px;     /* distancia desde la derecha */
    bottom: -8px;    /* un poquito hacia abajo */
    width: clamp(160px, 26vw, 350px); /* tamaño adaptable */
    opacity: 0.25;   /* transparencia */
    pointer-events: none; /* no interfiere con clics */
    z-index: 0;      /* queda detrás */
}

/* asegúrate que el contenido esté por encima */
#footer .container-fluid {
    position: relative;
    z-index: 1;
}

/* opcional: esconder en móviles chicos */
@media (max-width: 1200px) {
    #footer .footer-mark { display: none; }
}

/*************************************************************************************
    CAROUSEL
**************************************************************************************/
.hero { position: relative; width: 100%; margin-bottom: 50px;}

.hero__media {width: 100%; height: 100%; position: absolute; top: 0; left: 0; overflow: hidden; z-index: -2;}
.hero__media-image, .hero__media-image--mobile {position: absolute; display: block; min-width: 100%; height: auto; min-height: 100%; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}

.hero__media-image--mobile {position: absolute; display: block; min-width: 100%; height: auto; min-height: 100%; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
.hero__media--align-bottom .hero__media-image, .hero__media--align-bottom .hero__media-image--mobile {top: auto; bottom: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%);}

.hero__media--align-top .hero__media-image,
.hero__media--align-top .hero__media-image--mobile {
    top: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media (max-width:767.98px) {
    video.hero__media-image {
        display: none
    }
}

@media (min-width:768px) {
    .hero__media-image--mobile {
        display: none
    }
}

.hero__content {
    position: absolute;
    bottom: 0;
    left: 25px;
    right: 25px;
    padding-bottom: 1rem;
    color: #fff;
    z-index: 10
}

@media (min-width:992px) {
    .hero__content {
        padding-bottom: 2rem
    }
}

.hero--fullwidth .hero__content {
    padding-bottom: 2.5rem
}

@media (min-width:992px) {
    .hero--fullwidth .hero__content {
        padding-bottom: 3.5rem
    }
}

.carousel-video-item .video-container {
    position: relative;
    width: 100%;
}

.carousel-video-item .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    z-index: 1;
}

.carousel-video-item video {
    width: 100%;
    height: auto;
    display: block;
}

@media (min-width: 768px) {
    .carousel-video-item .video-container {
        height: 500px;
        overflow: hidden;
    }

    .carousel-video-item video {
        height: 500px;
        object-fit: cover;
    }
}

@media (min-width: 992px) {
    .carousel-video-item .video-container {
        height: 600px;
    }

    .carousel-video-item video {
        height: 600px;
    }
}

@media (max-width: 767px) {
    .carousel-video-item .video-container {
        height: 300px;
    }

    .carousel-video-item video {
        height: 300px;
    }
}

.icon-block a:hover * {
    color: white !important;
    text-decoration: none;
}

#featuredNewsCarousel .carousel-inner h1{margin-top: 0; color: #fff; text-transform: none !important; margin-bottom: 10px; font-size: 22px; font-weight: bolder !important;}
#featuredNewsCarousel .carousel-inner h2, #featuredNewsCarousel .carousel-inner h3, #featuredNewsCarousel .carousel-inner a{color: #fff; font-size: 24px; text-shadow: 1px 1px #444;}
@media (min-width: 992px){
    #featuredNewsCarousel .carousel-caption{text-align: left; bottom: 100px; width: inherit; left: 0; height: 125px; background: none; font-size: 14px;}
    #featuredNewsCarousel .carousel-inner .carousel-item .item-image{height: 600px;}
}
@media (min-width:768px) and (max-width: 991px){
    #featuredNewsCarousel .carousel-caption{text-align: left; bottom: 100px; width: inherit; left: 0; height: 125px; background: none; font-size: 14px;}
    #featuredNewsCarousel .carousel-inner .carousel-item .item-image{height: 500px;}
    .carousel-indicators{bottom: 0;}
}
@media (max-width: 767px){
    #featuredNewsCarousel .carousel-caption{text-align: left; bottom: 100px; top: inherit; width: inherit; left: 0; height: 125px; background: none;}
    #featuredNewsCarousel .carousel-inner .carousel-item .item-image{height: 300px;}
}

.form-select, .form-control, .btn, .selectize-input{border-radius: 1rem !important;}

.container-fluid .align-center-container.row.text-center.py-3 {
    margin-top: -5px !important;
}
.image-banner-market{height: 450px; width: 450px; position: relative; bottom: 83px;}
@media(max-width:1055px){
    .image-banner-market{height: 350px; width: 350px;}
}