@font-face {
    font-family: 'Telegraf';
    src: url('https://reqlut2.s3.sa-east-1.amazonaws.com/reqlut-images/unw/font/Telegraf-Regular.otf') format('opentype');
}

@font-face {
    font-family: 'Telegraf';
    font-weight: bold;
    src: url('https://reqlut2.s3.sa-east-1.amazonaws.com/reqlut-images/unw/font/Telegraf-UltraBold.otf') format('opentype');
}

@font-face {
    font-family: 'Sharp Grotesk';
    src: url('https://reqlut2.s3.sa-east-1.amazonaws.com/reqlut-images/unw/font/SharpGrotesk-Book15.otf') format('opentype');
}

@font-face {
    font-family: 'Sharp Grotesk';
    font-weight: bold;
    src: url('https://reqlut2.s3.sa-east-1.amazonaws.com/reqlut-images/unw/font/SharpGrotesk-SemiBold15.otf') format('opentype');
}

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

#header .logo-unw {margin: 0 0 0 0;}
#header .lower-logo{display: none!important;}

.color-primary{color: #07c8cc !important;}
.color-secondary{color: #222 !important;}
.color-light{color: #f9f7f4 !important;}
.color-red{color: #c53f32 !important;}
.color-yellow{color: #fdd757 !important;}
.color-blue{color: #006ab5 !important;}


.background-primary-transparent{background-color: rgba(7, 200, 204, 0.7) !important;}
.background-secondary-transparent{background-color: rgba(34, 34, 34, 0.7) !important;}
.background-light{background-color: #f9f7f4 !important;}
.background-red{background-color: #c53f32 !important;}
.background-yellow{background-color: #fdd757 !important;}
.background-blue{background-color: #006ab5 !important;}

.background-primary > *, .background-primary > * > *{background-color: #07c8cc !important;}
.background-secondary, .background-secondary > *, .background-secondary > * > *{background-color: #222 !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: #07c8cc !important; border-color: #07c8cc !important;}
.heading-block h1 { font-weight: 600 !important;}
@media(min-width: 768px){
    .line-left-sm{border-left: 1px solid #07c8cc !important;}
}
.nice-list .nice-card{background-color: #fff;}
.icon-block .item{border-radius: 0;}
.icon-block:hover .item .title{text-decoration: underline !important;}

/*************************************************************************************
    BUTTONS
**************************************************************************************/
.btn-unw{border: 3px solid #222; border-radius: 0; color: #222; padding: 14px !important;}
.btn-unw:hover{border: 3px solid #222 !important; border-radius: 0 !important; color: #222 !important; padding: 14px !important; background-color: #fff !important; font-weight: 500; text-decoration: underline;}
.btn-unw-secondary{border: 3px solid #07c8cc; border-radius: 0; color: #222 !important; padding: 14px !important; background-color: #fff !important;}
.btn-unw-secondary:hover{border: 3px solid #07c8cc !important; border-radius: 0 !important; color: #222 !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: #222; border-color: #07c8cc; border-radius: 0; box-shadow:0 4px 8px rgba(0,0,0,0.1); font-weight: 500;}
.btn-outline-primary:hover { background-color: #60cacc; color: #222; border-color: #60cacc; 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: #222; background-color: #07c8cc; border-color: #07c8cc; 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: #222 !important; background-color: #60cacc; border-color: #60cacc; }

.btn-secondary{background-color: #222; border-color: #222; 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: #2220004d; 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; }

.btn-alumni{color: #222; background-color: #07c8cc; border-color: #07c8cc; 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: #222 !important; background-color: #60cacc; border-color: #60cacc; border-width: 2px;}
.btn-alumni:disabled{color: #888; background-color: #ccc; border-color: #ccc;}

.btn-alumni-secondary{color: #fff; background-color: #222; border-color: #222; 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{color: #fff !important; background-color: #222; border-color: #222; 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: #222; background-color: #60cacc; 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: #07c8cc; color: #222; border-color: #07c8cc; 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: #60cacc; color: #222 !important; border-color: #60cacc;}

.btn-info{color: #222; background-color: #07c8cc; border-color: #07c8cc; 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, .show.dropdown-toggle.btn-info{background-color: #60cacc; border-color: #60cacc; color: #222 !important;}
.btn-info:disabled{color: #888; background-color: #ccc; border-color: #ccc;}

.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 #222; border-radius: 0; color: #222; padding: 14px !important;}
.navbar-default .navbar-nav>li>a.login:hover{border: 3px solid #222 !important; border-radius: 0 !important; color: #222 !important; background-color: #07c8cc !important; padding: 14px !important; font-weight: 500; text-decoration: underline !important;}
.navbar-default .navbar-nav>li>a.portalCompany{border: 3px solid #fff; border-radius: 0; color: #fff !important; padding: 14px !important; background-color: transparent !important;}
.navbar-default .navbar-nav>li>a.portalCompany:hover{border: 3px solid #fff !important; border-radius: 0 !important; color: #fff !important; padding: 14px !important; background-color: transparent !important; font-weight: 500; text-decoration: underline !important;}
#header .dropdown-toggle .caret{color: #07c8cc;}
.navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus {color: #222; font-weight: 500; background-color: transparent; border-bottom: 1px solid black; }
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus{color: #222; font-weight: 500; background-color: transparent;}
.navbar-default .navbar-nav>.show>a, .navbar-default .navbar-nav>.show>a:hover, .navbar-default .navbar-nav>.show>a:focus{color: #222; font-weight: 600; background-color: #fff; }
#header.navbar-default .navbar-nav .show.dropdown-menu > li > a{color: #222; background-color: #fff; }
#header.navbar-default .navbar-nav .show.dropdown-menu > li > a:hover{ color: #07c8cc; }
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:focus {border-bottom: 1px solid black; }
@media (min-width: 768px){
    #header{ padding-bottom: 20px;}
}
@media (max-width: 767px) {
    .navbar-default .navbar-collapse, .navbar-default .navbar-form{padding: 0;}
}

@media (min-width: 992px){
    #header .logo-unw{max-width: 230px; margin-top: 20px;}
}

@media (min-width: 768px) and (max-width: 991px) {
    #header .logo-unw{max-width: 221px; margin-top: 10px;}
}
@media (max-width: 767px) {
    #header .logo-unw{max-width: 230px; margin-top: 10px;}
}

/*************************************************************************************
    FOOTER (paleta oscura)
**************************************************************************************/
#footer{color: #fff; background: #222; position: relative;}
.copyright{background: #111; filter: brightness(100%); }
.footer_title{font-size: 16px; color: #07c8cc;}
h2.footer_title{font-size: 14px; margin-bottom: 10px; color: #07c8cc; font-weight: 600; text-transform: uppercase;}
a.footer_link{color: rgba(255,255,255,.85);}
a.footer_link:hover{color: #07c8cc;}
#footer .footer-tagline{color: rgba(255,255,255,.7); font-size: 14px; line-height: 1.6; margin-top: 14px; max-width: 280px;}
@media (max-width: 767px){ #footer .footer-tagline{max-width: 100%;} }

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

/*************************************************************************************
    HEADER (paleta oscura — site-wide)
**************************************************************************************/
#header{background-color: #222 !important;}
.navbar-default .navbar-nav>li>a{color: #fff !important;}
.navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus{color: #07c8cc !important; background-color: transparent; border-bottom: 1px solid #07c8cc !important;}
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus{color: #fff !important; background-color: transparent; border-bottom: 1px solid #07c8cc !important;}
.navbar-default .navbar-nav>.show>a, .navbar-default .navbar-nav>.show>a:hover, .navbar-default .navbar-nav>.show>a:focus{color: #07c8cc !important; background-color: transparent;}
#header .dropdown-toggle .caret{color: #07c8cc;}
/* Dropdowns siguen como overlay blanco con texto oscuro */
#header.navbar-default .navbar-nav .show.dropdown-menu > li > a{color: #222 !important; background-color: #fff;}
#header.navbar-default .navbar-nav .show.dropdown-menu > li > a:hover{color: #07c8cc !important;}
/* Botón "Iniciar sesión / Soy nuevo": contorno cian sobre header oscuro */
.navbar-default .navbar-nav>li>a.login{border: 2px solid #07c8cc; color: #fff !important; padding: 12px 18px !important;}
.navbar-default .navbar-nav>li>a.login:hover{border: 2px solid #07c8cc !important; color: #222 !important; background-color: #07c8cc !important; text-decoration: none !important;}
/* Botón "Acceso empresa": contorno blanco */
.navbar-default .navbar-nav>li>a.portalCompany{border: 2px solid #fff; color: #fff !important; padding: 12px 18px !important;}
.navbar-default .navbar-nav>li>a.portalCompany:hover{border: 2px solid #07c8cc !important; color: #222 !important; background-color: #07c8cc !important; text-decoration: none !important;}
/* Hamburguesa visible sobre fondo oscuro */
#header .navbar-toggler{border-color: rgba(255,255,255,.35);}
#header .navbar-toggler-icon{filter: invert(1) grayscale(1) brightness(2);}

/*************************************************************************************
    HOME (portal 195 — .unw-home)
    La imagen de fondo del hero va inline en el elemento (interpolación Twig).
**************************************************************************************/
.unw-home {
    --unw-primary: #07c8cc;
    --unw-dark: #222;
    --unw-bg: #f5f7f8;
    --unw-border: rgba(0, 0, 0, .08);
    background: var(--unw-bg);
}
/* La marca UNW usa headings en mayúsculas; en el home seguimos la maqueta (case natural) */
.unw-home h1, .unw-home h2, .unw-home h3 { text-transform: none !important; }

/* ===== HERO ===== */
.unw-hero {
    position: relative;
    min-height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.unw-hero__overlay { position: absolute; inset: 0; background: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.72)); }
.unw-hero__content { position: relative; z-index: 2; padding: 64px 15px; }
.unw-hero__title { color: #fff; font-size: 44px; line-height: 1.15; font-weight: 700; margin: 0 auto 16px; max-width: 900px; }
.unw-hero__subtitle { color: rgba(255,255,255,.9); font-size: 18px; max-width: 640px; margin: 0 auto 28px; }
.unw-hero__cta { background: var(--unw-primary); color: #111 !important; border: 0; padding: 15px 42px; font-weight: 700; font-size: 16px; }
.unw-hero__cta:hover { filter: brightness(1.08); color: #111 !important; background: var(--unw-primary); }
.unw-hero__contact { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px 16px; margin-top: 26px; font-size: 14px; }
.unw-hero__contact-label { color: rgba(255,255,255,.9); }
.unw-hero__contact-item { color: rgba(255,255,255,.85); text-decoration: none; }
.unw-hero__contact-item:hover { color: var(--unw-primary); }
.unw-hero__contact-item i { color: #38bdf8; }
.unw-hero__contact-pill { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: #fff; text-decoration: none; transition: background .3s ease; }
.unw-hero__contact-pill:hover { background: rgba(255,255,255,.2); color: #fff; }
.unw-hero__contact-pill i { color: #34d399; }

/* ===== Section titles ===== */
.unw-section-title { margin-bottom: 44px; }
.unw-section-title h2 { font-size: 30px; color: var(--unw-dark); margin: 0 0 14px; }
.unw-section-title__bar { display: block; width: 90px; height: 4px; background: var(--unw-primary); margin: 0 auto; }

/* ===== BENEFITS (bento) ===== */
.unw-benefits { background: #fff; padding: 72px 0; }
.unw-benefits__grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: minmax(232px, auto); gap: 22px; }
.unw-card {
    background: #fff; border: 1px solid var(--unw-border); border-radius: 14px; padding: 30px;
    display: flex; flex-direction: column; justify-content: center;
    text-decoration: none; color: inherit; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.unw-card:hover { transform: translateY(-6px); box-shadow: 0 20px 35px -15px rgba(7,200,204,.2); border-color: rgba(7,200,204,.5); text-decoration: none; }
.unw-card--wide { grid-column: span 2; }
.unw-card--tall { grid-row: span 2; }
.unw-card__icon { width: 52px; height: 52px; border-radius: 14px; background: rgba(7,200,204,.12); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 18px; }
.unw-card__icon i { font-size: 26px; color: var(--unw-primary); }
.unw-card__title { font-size: 20px; font-weight: 700; color: var(--unw-dark); margin: 0 0 10px; }
.unw-card__text { font-size: 14px; color: #5f6b6b; line-height: 1.6; margin: 0; }
.unw-card--accent { background: rgba(7,200,204,.06); border-color: rgba(7,200,204,.25); }

.unw-card--dark {
    background: linear-gradient(150deg, #2a2a2a, #0d0d0d); border: 1px solid rgba(255,255,255,.1); color: #fff;
    justify-content: flex-end; position: relative; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,.25);
}
.unw-card--dark:hover { transform: translateY(-6px); box-shadow: 0 24px 40px -15px rgba(7,200,204,.35); border-color: rgba(7,200,204,.5); }
.unw-card--dark .unw-card__title { color: var(--unw-primary); }
.unw-card--dark .unw-card__text { color: rgba(255,255,255,.8); }
.unw-card__badge { align-self: flex-start; background: var(--unw-primary); color: #111; font-size: 10px; font-weight: 700; letter-spacing: .08em; padding: 5px 12px; border-radius: 999px; margin-bottom: 14px; }
.unw-card__watermark { position: absolute; top: -8px; right: -8px; font-size: 120px; line-height: 1; color: var(--unw-primary); opacity: .12; }

/* ===== EMPLOYERS CTA ===== */
.unw-employers { background: var(--unw-bg); padding: 20px 0 8px; }
.unw-cta { background: linear-gradient(150deg, #2a2a2a, #0d0d0d); border: 1px solid rgba(255,255,255,.1); border-radius: 14px; padding: 34px; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; box-shadow: 0 10px 30px rgba(0,0,0,.2); }
.unw-cta__info { display: flex; align-items: center; gap: 22px; }
.unw-cta__icon { width: 56px; height: 56px; border-radius: 14px; background: rgba(7,200,204,.12); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.unw-cta__icon i { font-size: 30px; color: var(--unw-primary); }
.unw-cta__title { color: var(--unw-primary); font-size: 22px; font-weight: 700; margin: 0 0 6px; }
.unw-cta__text { color: rgba(255,255,255,.8); font-size: 14px; line-height: 1.6; margin: 0; max-width: 640px; }
.unw-cta__btn { background: var(--unw-primary); color: #111 !important; border: 0; padding: 14px 30px; font-weight: 700; white-space: nowrap; }
.unw-cta__btn:hover { filter: brightness(1.08); color: #111 !important; background: var(--unw-primary); }

/* ===== EVENTS ===== */
.unw-events { background: var(--unw-bg); padding: 52px 0 72px; }
.unw-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 28px; }
.unw-section-head h2 { font-size: 26px; color: var(--unw-dark); margin: 0 0 10px; }
.unw-section-head .unw-section-title__bar { margin: 0; }
.unw-events__more { color: var(--unw-primary); font-weight: 700; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.unw-events__more:hover { text-decoration: underline; color: var(--unw-primary); }
.unw-events .events-grid-section { margin: 0; }

/* ===== Responsive ===== */
@media (min-width: 768px) and (max-width: 991px) {
    .unw-benefits__grid { grid-template-columns: repeat(2, 1fr); }
    .unw-card--wide { grid-column: span 2; }
    .unw-card--tall { grid-row: span 1; grid-column: span 2; }
}
@media (max-width: 767px) {
    .unw-hero { min-height: 420px; }
    .unw-hero__title { font-size: 30px; }
    .unw-hero__subtitle { font-size: 16px; }
    .unw-benefits { padding: 48px 0; }
    .unw-benefits__grid { grid-template-columns: 1fr; grid-auto-rows: auto; }
    .unw-card--wide, .unw-card--tall { grid-column: auto; grid-row: auto; }
    .unw-cta { flex-direction: column; align-items: flex-start; }
    .unw-cta__info { align-items: flex-start; }
    .unw-cta__btn { width: 100%; text-align: center; }
}