@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

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

#open_feedback_text{right: -35px;}

#header .logo-ucsc {margin: 20px 20px 0 10px;}
#header .lower-logo{display: none!important;}
#header.navbar-default {background-color: #000d10 !important;}

.color-primary{color: #d12421;}
.color-secondary{color:  #646567;}

.background-primary-transparent{background-color: rgba(209, 36, 33, 0.7) !important;}
.background-secondary-transparent{background-color: rgba(100, 101, 103, 0.7) !important;}
.background-secondary-transparent > *, .background-secondary-transparent > * > *{background-color: rgba(100, 101, 103, 0.7) !important;}
.background-primary-light-transparent{background-color: rgba(214, 9, 44, 0.1) !important;}

.icon-block .item{border-radius:0;}
.icon-block a:hover *{color: #fff;}
.icon-block .item.color-primary{color: #d12421;}
.icon-block a:hover .item.color-primary *{color:  #646567;}

.background-primary > *, .background-primary > * > *{background-color: #d12421 !important;}
.background-secondary, .background-secondary > *, .background-secondary > * > *{background-color:  #646567 !important;}
.background-grey-light > *, .background-grey-light > * > *{background-color: #eaeaea !important;}

.btn-transparent:hover, .btn-transparent:focus, .btn-transparent.focus, .btn-transparent:active, .btn-transparent.active, .show.dropdown-toggle.btn-transparent{color: #fff !important; background-color: #0000004d !important; border-color: #fff !important;}
.heading-block h1 { font-weight: 600 !important;}

/*************************************************************************************
    BUTTONS
**************************************************************************************/
.btn-ucsc{border: 3px solid #000; border-radius: 0; color: #1d1b3f; padding: 14px !important;}
.btn-ucsc:hover{border: 3px solid #000 !important; border-radius: 0 !important; color: #1d1b3f !important; padding: 14px !important; background-color: #fff !important; font-weight: 500; text-decoration: underline;}
.btn-ucsc-secondary{border: 3px solid #d12421; border-radius: 0; color: #1d1b3f !important; padding: 14px !important; background-color: #fff !important;}
.btn-ucsc-secondary:hover{border: 3px solid #d12421 !important; border-radius: 0 !important; color: #1d1b3f !important; padding: 14px !important; background-color: #fff !important; font-weight: 500; text-decoration: underline;}

.btn{border-radius: 0 !important; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-outline-primary, .btn-outline-primary:focus{background-color: #fff; color: #000; border-color: #d12421; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-outline-primary:hover { background-color:  #646567; color: #000; border-color:  #646567; transition: border 0.3s ease, background 0.3s ease; }
.btn-outline-primary:disabled {color: #888 !important; background-color: #ccc; border-color: #ccc;}

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

.btn-secondary{background-color: #000; border-color: #000; color: #fff; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-secondary:hover{filter: brightness(120%); transition: border 0.3s ease, background 0.3s ease; color: #fff;}
.btn-secondary.disabled, .btn-secondary[disabled], fieldset[disabled] .btn-secondary, .btn-secondary.disabled:hover, .btn-secondary[disabled]:hover, fieldset[disabled] .btn-secondary:hover, .btn-secondary.disabled:focus, .btn-secondary[disabled]:focus, fieldset[disabled] .btn-secondary:focus, .btn-secondary.disabled.focus, .btn-secondary[disabled].focus, fieldset[disabled] .btn-secondary.focus, .btn-secondary.disabled:active, .btn-secondary[disabled]:active, fieldset[disabled] .btn-secondary:active, .btn-secondary.disabled.active, .btn-secondary[disabled].active, fieldset[disabled] .btn-secondary.active{filter: brightness(120%);}

.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: #eee !important; background-color: #ffffffab; border-color: #eee; }

.btn-alumni{color: #fff; background-color: #d12421; border-color: #d12421; border-width: 2px; padding: 5px 12px; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-alumni:hover, .btn-alumni:active{color: #d12421 !important; background-color:  #fff; border-color:  #d12421; border-width: 2px;}
.btn-alumni:disabled{color: #888; background-color: #ccc; border-color: #ccc;}

.btn-alumni-secondary{color: #fff; background-color: #000; border-color: #000; border-width: 2px; padding: 5px 12px; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-alumni-secondary:hover, .btn-alumni-secondary:active{filter: brightness(120%); transition: border 0.3s ease, background 0.3s ease; color: #fff;}

.btn-success, .btn-success:focus{border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
#filters .btn-success:hover,
#filters .btn-success:active{ border-width: 2px; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}

.btn-default:hover, .btn-default:focus, .btn-default.focus, .btn-default:active, .btn-default.active{color: #000; background-color:  #d12421; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-primary.disabled, .btn-primary[disabled], fieldset[disabled] .btn-primary, .btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover, .btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus, .btn-primary.disabled.focus, .btn-primary[disabled].focus, fieldset[disabled] .btn-primary.focus, .btn-primary.disabled:active, .btn-primary[disabled]:active, fieldset[disabled] .btn-primary:active, .btn-primary.disabled.active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary.active{color: #888 !important; background-color: #ccc; border-color: #ccc; font-weight: 500;}

#job_offer .btn-success{background-color: #d12421; color: #000; border-color: #d12421; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
#job_offer .btn-success:hover, #job_offer .btn-success:active{background-color:  #fff; color: #d12421 !important; border-color:  #d12421;}

.btn-info{color: #fff; background-color: #d12421; border-color: #d12421; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-info:hover, .btn-info:focus, .btn-info.focus, .btn-info:active, .btn-info.active, .open>.dropdown-toggle.btn-info{background-color:  #d12421; border-color:  #fff; color: #d12421 !important;}
.btn-info:disabled{color: #888; background-color: #ccc; border-color: #ccc;}

.btn-primary-especial{background-color:  #646567; background-image: linear-gradient(to right,  #646567 0%,  #646567 36%, #d12421 66%, #d12421 100%); padding: 15px 15px!important; border-radius: 60px !important; color: #fff; min-width: 220px; transition: border 0.3s ease, background 0.3s ease;}
.btn-primary-especial:hover{background-color:  #646567; background-image: linear-gradient(to right, #d12421 0%, #d12421 36%,  #646567 66%,  #646567 100%); color: #fff; text-decoration: none;}

.job_offer_list .info .apply:hover, .job_offer_list .info .apply:active{color: #fff !important;}

.navbar-default .navbar-nav>li>a.login{border: 3px solid #FFFFFF; border-radius: 50px; color: #FFFFFF; padding: 14px !important; background-color: #000d10;}
.navbar-default .navbar-nav>li>a.login:hover{border: 3px solid #d12421 !important; border-radius: 25px !important; color: #d12421 !important; padding: 14px !important; background-color: #000d10 !important; font-weight: 500; text-decoration: underline;}
.navbar-default .navbar-nav>li>a.portalCompany{border: 3px solid  #FFFFFF; border-radius: 50px; color:  #FFFFFF !important; padding: 14px !important; background-color: #000d10 !important;}
.navbar-default .navbar-nav>li>a.portalCompany:hover{border: 3px solid  #d12421 !important; border-radius: 25px !important; color:  #d12421 !important; padding: 14px !important; background-color:#000d10 !important; font-weight: 500; text-decoration: underline;}

#header .dropdown-toggle .caret{color: #000d10 !important;}
.navbar-default .navbar-nav>li>a{color: #FFFFFF !important; font-weight: 600}
.navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus {color:  #ce060d !important; font-weight: 800; border-bottom: 0px solid #d12421; background-color: #000d10 !important; }
.navbar-default .navbar-nav>.show>a, .navbar-default .navbar-nav>.show>a:hover, .navbar-default .navbar-nav>.show>a:focus{color:  #d12421; font-weight: 500; background-color: #000d10 !important; }

#header.navbar-default .navbar-nav .show .dropdown-menu > li > a{color: #000; background-color: #000d10 !important; }
#header.navbar-default .navbar-nav .show .dropdown-menu > li > a:hover{color: #fff; }
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:focus {border-bottom: 0px solid #d12421; }
#header.navbar-default .navbar-nav .show .dropdown-menu{box-shadow: 2px 2px 4px rgb(0 0 0 / 20%); background-color: #000d10; -webkit-animation: fadeIn 0.7s ease-in-out both; animation: fadeIn 0.7s ease-in-out both;}
@media (max-width: 767px) {
    .navbar-default .navbar-collapse, .navbar-default .navbar-form{padding: 0;}
}

@media (min-width: 992px){
    #header .logo-ucsc{max-width: 250px; margin: 10px 30px 20px 20px;}
}

@media (min-width: 768px) and (max-width: 991px) {
    #header .logo-ucsc{max-width: 221px; margin: 10px;}
}
@media (max-width: 767px) {
    #header .logo-ucsc{max-width: 230px; margin: 10px;}
}
#header a.link, #header a.link:active, #header a.link:visited, #header a .fas, #header a .fab, #header a .far, #header a:active .fas, #header a:active .fab, #header a:active .far, #header a:visited .fas, #header a:visited .fab, #header a:visited .far{color: #d12421; font-size: 14px; font-weight: 600; padding: 0 8px;}
#header a.link:hover, #header a:hover .fas, #header a:hover .fab, #header a:hover .far{color: #646567;}
.header-top{background-color: #000d10;}
.header-top a.link, #header a.link:active, #header a.link:visited, #header a .fas, #header a .fab, #header a .far, #header a:active .fas, #header a:active .fab, #header a:active .far, #header a:visited .fas, #header a:visited .fab, #header a:visited .far {color: #d6092c;font-size: 14px;font-weight: 600;padding: 0 8px;}
@media (min-width: 768px){
    .header-top .right{padding-right: 0;}
}

/*************************************************************************************
    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%); z-index: -2;}
.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:767px) {
    /*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;}
}


@media (max-width:767px) {
    #featuredNewsCarousel .carousel-inner .cuadrotrans{padding: 20px; margin-top: 20px;}
    #featuredNewsCarousel .carousel-inner .cuadrotrans h1{font-size: 20px;}
    #featuredNewsCarousel .carousel-inner .cuadrotrans h2{color: #fff; font-size: 14px;}
}
@media (min-width:768px) and (max-width: 991px){
    #featuredNewsCarousel .carousel-inner .cuadrotrans{padding: 40px; margin-top: 100px;}
}
@media (min-width: 992px){
    #featuredNewsCarousel .carousel-inner .cuadrotrans{padding: 40px; margin-top: 160px;}
}
#featuredNewsCarousel .carousel-inner .cuadrotrans{width: 100%;}
#featuredNewsCarousel .carousel-inner .carousel-item .item-image h1{margin-top:0;}
#featuredNewsCarousel .carousel-inner .cuadrotrans h1{margin-top: 0; color: #fff; text-transform: uppercase; margin-bottom: 10px; font-size: 22px;}
#featuredNewsCarousel .carousel-inner .cuadrotrans h2{color: #fff; font-size: 16px;}

/*************************************************************************************
    FOOTER
**************************************************************************************/
#footer{color: #d12421; background: #fff; position: relative;}
.copyright{background: #000; filter: brightness(100%); }
a.footer_link{color: #d12421;}
a.footer_link:hover{color:  #646567;}

/*************************************************************************************
    MARKET
**************************************************************************************/
.main-content-detail li{font-size: 16px;}
.nice-list .nice-card.nice-card-border .nice-title a{color: #000; font-weight: 500;}

@media (min-width: 768px){
    .icon-block .item .line-left{border-left: 4px solid #fff;}
}

/*************************************************************************************
    SECCION BOTONES DIRECTOS
**************************************************************************************/
@media (min-width:768px) {
    .icon-block .item{min-height: 100px;}
}
.icon-block .item .icon{border-right: 4px solid #fff;}
.icon-block .item{border-radius:0;}
.icon-block a:hover *{color: #fff;}
.background-primary > *, .background-primary > * > *{background-color: #d12421 !important;}
.background-secondary > *, .background-secondary > * > *{background-color: #646567 !important;}

/*************************************************************************************
    HOVER ANIMATIONS
**************************************************************************************/
.hover-child{display: none;}
.hover-parent:hover .hover-child{display: inline; -webkit-animation: fadeIn 0.7s ease-in-out both; animation: fadeIn 0.7s ease-in-out both;}

/*************************************************************************************
    ADDITIONAL BACKGROUND CLASSES
**************************************************************************************/
.background-light { background-color: #f0f0f0 !important; }
.background-grey { background-color: #000d10 !important; }
.background-grey, .background-grey > *, .background-grey > * > * { background-color: #000d10 !important; }

/*************************************************************************************
    UTILITY CLASSES
**************************************************************************************/
.mt10-md { margin-top: 10px; }
.pr0 { padding-right: 0; }
.h-100 { height: 100%; }
a.no-decoration { text-decoration: none; color: inherit; }
.align-center-container { display: flex; align-items: center; justify-content: center; }

/*************************************************************************************
    ICON BLOCK ENHANCEMENTS
**************************************************************************************/
.icon-block .item .title { text-transform: none; margin-bottom: 10px; }
.icon-block.background-grey a:hover * { color: #d12421 !important; }

/*************************************************************************************
    RESPONSIVE ICON BLOCKS
**************************************************************************************/
/* Vertical alignment for all icon blocks */
.icon-block .item .row {
    align-items: center;
    display: flex;
}

.icon-block .item .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0 !important;
}

.icon-block .item .title {
    display: flex;
    align-items: center;
    margin-top: 0 !important;
}

/* Desktop and tablet - maintain current behavior */
@media (min-width: 768px) {
    .icon-block .item .icon {
        font-size: 54px;
    }
    .icon-block .item .title {
        font-size: 18px;
    }
}

/* Mobile optimizations */
@media (max-width: 767px) {
    .icon-block {
        margin-bottom: 10px;
    }

    .icon-block .item {
        padding: 15px 10px;
        min-height: 80px;
    }

    .icon-block .item .icon {
        font-size: 28px;
    }

    .icon-block .item .title {
        font-size: 12px;
        line-height: 1.3;
        margin-bottom: 5px;
    }

    /* Better spacing for mobile grid */
    .icon-block.col-6 {
        padding-left: 5px;
        padding-right: 5px;
    }
}

/* Extra small devices - phones in portrait */
@media (max-width: 575px) {
    .icon-block .item {
        padding: 12px 8px;
        min-height: 50px;
    }

    .icon-block .item .icon {
        font-size: 24px;
    }

    .icon-block .item .title {
        font-size: 11px;
        font-weight: 600;
    }
}

/*************************************************************************************
    ICON CIRCLE
**************************************************************************************/
.icon-circle {
    border:  3px solid #d12421;
    color: #d12421;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: x-large;
}

.vt-slide:hover{
    color: #d12421 !important;
}

/*************************************************************************************
    SLIDES / CAROUSEL
**************************************************************************************/
.slide-companies .slide img { filter: none; }
.slide .slide-container { display: flex; flex-wrap: wrap; justify-content: center; }
.slide .slide-container .slide-content { display: flex; align-items: center; justify-content: center; }

@media (min-width: 1100px) {
    .slide img { margin-left: auto; margin-right: auto; max-width: 160px; max-height: 160px; }
}

@media (max-width: 1099px) {
    .slide img { margin-left: auto; margin-right: auto; max-width: 90px; max-height: 90px; }
}

/*************************************************************************************
    BOX CONTAINER SPLIT
**************************************************************************************/
.box-container-split .box-split .box { padding: 20px; }

/*************************************************************************************
    CARDS AND FEATURE GRAB
**************************************************************************************/
.card.card-alt h5.card-title,
.background-alt .feature-grab h1 a,
.background-alt .feature-grab h2 a,
.background-alt .feature-grab h3 a,
.background-alt .feature-grab h4 a,
.background-alt .feature-grab h5 a,
.background-alt .feature-grab h6 a,
.background-alt .feature-grab h1 a.title-news,
.background-alt .feature-grab h2 a.title-news,
.background-alt .feature-grab h3 a.title-news,
.background-alt .feature-grab h4 a.title-news,
.background-alt .feature-grab h5 a.title-news,
.background-alt .feature-grab h6 a.title-news {
    font-size: 18px !important;
    color: #fff !important;
}

#footer h2,
.card.card-alt h5.card-title {
    font-size: 20px;
}

.feature-grab .date {
    font-size: 13px !important;
    color: #fff !important;
}

/*************************************************************************************
    HERO BANNER
**************************************************************************************/
.hero-banner {
    position: relative;
    color: white;
}

.overlay-box {
    background-color: rgba(0, 0, 0, 0.7);
    padding: 2rem;
    max-width: 700px;
    height: 200px;
}

.logo {
    max-height: 60px;
}