﻿/*
 * Descripción: CUSTOM
 * Copyright (c) 2024
*/

/*===================================
			Google Fonts 
=====================================*/

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,300&display=swap');

/*
	font-family: 'Roboto', sans-serif;
*/

/*===================================
       Colores light / dark
=====================================*/


:root {
  --body-font-size: 1em;
  --body-font-weight: 400;
  --body-line-height: 1.5;
  --fuente-principal:'Roboto', sans-serif, Arial, Helvetica;
    
  --colordest: #c1107e;
  --colordest-hover: #c1107e;
  --colordest-active: #c1107e;
  --colordest-txt:#fff;
  --colordest-fill: #c1107e;
  --filter-colordest: brightness(0) saturate(100%) invert(17%) sepia(51%) saturate(7364%) hue-rotate(312deg) brightness(79%) contrast(95%);

  --filter-blanco: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7475%) hue-rotate(236deg) brightness(112%) contrast(100%);
  --filter-rojo: brightness(0) saturate(100%) invert(22%) sepia(89%) saturate(5878%) hue-rotate(9deg) brightness(88%) contrast(121%);
  
  --color-principal:#4b596d;
  --color-principal-hover:#4b596d;
  --color-principal-focus:#4b596d;
  
  --color-title:#4b596d;
  --color-title-a:#4b596d;
  --color-title-hover:#4b596d;
  --color-title-focus:#4b596d;

  --fondoweb:#ebf0f8/*eff2f7*/;
  --fondoheader:#ffffff;
  --fondofooter:#c1107e;
  --fondocard:#ffffff;

  --animate-duration: 1s;
  --animate-delay: 1s;
  --animate-repeat: 1;

  --titaba:#fff;
  --titaba-a:#fff;
  --titaba-hover:#fff;
  --titaba-focus:#fff;
  
  --txtaba:#4b596d;
  --txtaba-a: var(--colordest);
  --txtaba-hover:var(--colordest);
  --txtaba-focus:var(--colordest);

  --borde-tabla:#c7ccd9;
  --fondo-th-tabla:#e7e8ec;
  
  --borde-header:#eeeeee;
  --borde-colder:#dbdfea;
  --borde-colizq:#dbdfea;
  --borde-colder-claro:rgba(255,255,255,0.16);
  --fondo-colder:#f4f4f8;
   
  --color-borde:#e5e9f2;
  
  --form-borde: #d5dbea;

}

.dark {
    --fondoweb: #141414;
    --fondoheader: #110b0f;
    --borde-header:#302b2e;

    --fondofooter:#000;
    --fondomodal:#20252a;
    --fondocard:#0f0f0f;

    --color-principal:#a2a2a2;
    --color-principal-hover:#a2a2a2;
    --color-principal-focus:#a2a2a2;

    --color-title:#fff;
    --color-title-a:#fff;
    --color-title-hover:#fff;
    --color-title-focus:#fff;

    --color-tit-card:#fff;
    
    --linea: rgba(255,255,255,0.16);

    --borde-tabla:#393939;
    --fondo-th-tabla:#1e1e1e;

    --form-txt:#fff;
    --form-color: rgba(255,255,255,.7);
    --form-fondo:#20252a;
    --form-borde: rgba(255,255,255,.24);
    --form-borde-hover:#8D8D8D;
    --form-borde-active:#fff;
    --form-txt-active:#fff;
    --form-disabled:#c2c2c2;   
}


/*=========================
        Generales
=========================*/

/*scrollbar
::-webkit-scrollbar {width:6px; height:4px;}
::-webkit-scrollbar-track {background: transparent; border-radius:3px; margin-top:4px; margin-bottom:4px;}
::-webkit-scrollbar-thumb {background-color:rgba(47, 47, 47, 1); border-radius:3px;}
::-webkit-scrollbar-thumb:hover {background-color:rgba(47, 47, 47, 1);}
* {scrollbar-width: thin; scrollbar-color: rgba(47, 47, 47, 1) transparent;}*/

/*scrollbar
.dark::-webkit-scrollbar {width:6px; height:4px;}
.dark::-webkit-scrollbar-track {background: #161823; border-radius:3px; margin-top:4px; margin-bottom:4px;}
.dark::-webkit-scrollbar-thumb {background-color:rgba(49, 55, 60, 1); border-radius:3px;}
.dark::-webkit-scrollbar-thumb:hover {background-color:rgba(49, 55, 60, 1);}
.dark * {scrollbar-width: thin; scrollbar-color: rgba(49, 55, 60, 1) #31373c;}*/


svg {max-width: inherit;}

.enlinea, .d-inline-block, .contenidos-enlinea{display:inline-block !important;}
.enbloque, .d-block{display:block !important}

.extrabold{font-weight: 900}
strong, b{font-weight:700;}
.semibold{font-weight:600;}
.medium{font-weight:500;}
.normal{font-weight:400;}
.thin{font-weight:300;}

.mr-s-size{margin-right:.45rem !important}
.ml-s-size{margin-left:.45rem !important}
.mt-s-size{margin-top:.45rem !important}
.mb-s-size{margin-bottom:.45rem !important}
.mtb-s-size{margin:.45rem 0px !important}

a{color:inherit; text-decoration:inherit;}
a:hover{color:inherit; text-decoration:inherit;}

a{color: var(--color-principal);}
a:hover {color: var(--color-principal-hover);}
a:focus {color: var(--color-principal-focus);}

a.underline, .underline {
    border-bottom: 0px solid transparent;
    border-bottom-color: initial;
    display: inline;
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

#dimensions {background-color:rgba(0, 0, 0, 0.8); color: #fff;}

::selection { background:var(--colordest);  color:var(--colordest-txt);}
::-moz-selection { background:var(--colordest); color:var(--colordest-txt);}

.scrolltop {
    width: 40px;
    height: 40px;
    line-height: 38px;
    position: fixed;
    padding:0px;
    bottom: 20px;
    right: 25px;
    z-index: 99;
    text-align: center;
    color: #fff;
    cursor: pointer;
    border-radius: 50%;
    background: var(--colordest);
    transition: all 0.3s ease-in-out;
}
.scrolltop:after {
    position: absolute;
    z-index: -1;
    content: "";
    top: 100%;
    left: 5%;
    height: 10px;
    width: 90%;
    opacity: 1;
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
}

blockquote {
	color: var(--color-principal);
    background-color: rgba(151,151,192,0.1);
    border-left: 3px solid var(--colordest);
    border-radius:inherit;
}

.sombra {
    -webkit-box-shadow: 0px 2px 4px 2px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 2px 4px 2px rgba(0,0,0,0.1);
    box-shadow: 0px 2px 4px 2px rgba(0,0,0,0.1);
}


/*=========================
          CUSTOM
=========================*/

body {min-height: 100vh; display: flex; flex-direction: column;}
body {min-height: 100%; height: 100%;}

body{background:var(--fondoweb);}

body:after {
    content: '';
    width: 100%;
    height: 100%;
    background-position: inherit;
    background-image: inherit;
    background-size: inherit;
    background-attachment: inherit;
    background-repeat: inherit;
    position: fixed;
    top: 0;
    z-index: -1;
}/*para hacer que fondo sea fixed en Safari*/

body:has(.header-fixed){
    height: auto;
}/*sin esto no se queda fixed*/


footer {margin-top: auto;}/*para que se posicione abajo*/

footer{
    background: var(--fondofooter);
    padding: 160px 0px 40px 0px;
    color: var(--blanco);
    /*clip-path: polygon(100% 26%, 0% 0%, 0% 100%, 100% 100%);*/
    clip-path: polygon(100% 0%, 0% 26%, 0% 100%, 100% 100%);
    /*background-image: url(../images/world-points.png) !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;*/
}
footer a, footer a:hover, footer a:focus{
    color: var(--blanco);
}

.txt-truncate, .elipsis{right:5px}

.contenedor-fluid, .contenedor-full{width:100%;}

a span{line-height:1.3;}
.sombra-texto {text-shadow: 2px 1px 1px rgba(0,0,0,0.8);}

.clear::before, .clear::after {content: " "; display: table;}

.hover-trans:hover{opacity:0.7; transition: all .3s;}

.spinner-border {border: .15em solid #575757; border-right-color: transparent}

.contenedor.max-width, .contenedor-fluid.max-width{width: 100%; margin:0 auto;	max-width:1600px;}
.contenedor.max-width.s-size, .contenedor-fluid.max-width.s-size{max-width:1400px;}
.contenedor.max-width.xs-size, .contenedor-fluid.max-width.xs-size{max-width:1200px;}
.contenedor.max-width.xxs-size, .contenedor-fluid.max-width.xxs-size{max-width:1000px;}

.contenido-maxwidth{max-width:1500px; margin:0 auto;}
.contenido-maxwidth.xl-size{max-width:1800px;}
.contenido-maxwidth.l-size{max-width:1600px;}
.contenido-maxwidth.s-size{max-width:1200px;}
.contenido-maxwidth.xs-size{max-width:1024px;}
.contenido-maxwidth.xxs-size{max-width:600px;}

p.s-size{font-size:0.9375em;}
p.xs-size{font-size:0.875em;}
p.xxs-size{font-size:0.8125em;}

.gap-4{gap:4px !important;}
.gap-8{gap:8px !important;}
.gap-10{gap:10px !important;}
.gap-15{gap:15px !important;}

ul li::before, ul li::marker {color:var(--colordest);}

.linea.footer {background:rgba(255,255,255,0.1);}
.dark .linea.footer{}

html{height:100%;}

.full-height{height:100%; flex: 1 1 auto;}
.borde-texto{ -webkit-text-stroke: 1px rgba(0,0,0,0.2); /*text-stroke: 1px rgba(0,0,0,0.2);*/}

.logotipo {
    max-width: 330px;
    position: relative;
}
.logotipo.s-size, .logotipo.footer{width:100px}

.img-info{
    max-width: 430px;
}

.img-dia{display:block;}
.img-noche{display:none;}

.dark .img-dia{display:none;}
.dark .img-noche{display:block;}

.dark img.dianoche {filter: var(--filter-blanco);}

.responsive-iframe {position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%;}
.center-iframe{display:block; margin:0 auto;}


.linea {background:var(--form-borde);}
.borde-colder{border-left:1px solid var(--borde-colder);}
.borde-colizq{border-right:1px solid var(--borde-colizq);}
.borde-colder.claro{border-left:1px solid var(--borde-colder-claro);}
.fondo-colder{background:var(--fondo-colder); padding:10px 0;}

.redondo{border-radius:8px !important}

/*mensajes admin*/
.zona-mensajes{position: fixed; z-index: 100000; top: 15px; height: auto; line-height: 150%;}
.zona-mensajes{font-size:0.875em; font-family:inherit; max-width: 100%; width:100%;}
.mensajes-admin{display: flex; flex-direction: column; position:relative; margin: 0 auto;}
.mensaje, .aviso, .error, .cargando, .informacion{box-shadow: 0px 3px 6px #00000029; display:flex; justify-content:center}
.mensaje {background-color:#53bf5a; background:#53bf5a url("../images/mensaje-correcto.svg") center left 10px no-repeat; background-size: 26px 26px;}
.informacion {background-color:#6b7275; background:#6b7275 url("../images/mensaje-aviso.svg") center left 10px no-repeat; background-size: 26px 26px; padding:15px 15px 15px 45px;  display:flex; align-items: center; justify-content: left; color:white; margin-bottom:15px; margin-left:15px; min-width:320px;}
.informacion span, .informacion p{color:white !important;}
.informacion.sinicono{background:#6b7275; padding-left:15px;}

@media (max-width: 991px) {
	.informacion {width:auto; min-width:250px}
}
@media (max-width: 480px){
}

/*posiciones*/
.position-top-right{top:8px; right:8px;}
.position-top, .position-top-left, .position-top-right,.position-bottom,.position-bottom-left,.position-bottom-right,.position-middle,.position-middle-left, .position-middle-right{display: flex; gap: 2px;}
.position-middle{z-index:12;}
.position-bottom{position: absolute; bottom: 5px; left: 50%; transform: translate(-50%, 0%); text-align: center; z-index: 2;}

.dark img.dianoche, .dark .dianoche{filter: var(--filter-blanco);}

/*zonas*/
.zona-contenidos-flex{display: flex; align-items: center; gap:8px}
.zona-contenidos-flex-between{display: flex; justify-content: space-between; align-items: center; gap:24px;}
.zona-contenidos-wrap{display: flex; gap: 4px; flex-wrap:wrap;}


/*modal*/
.cerrar-modal {
    top: 0px;
}
.header-modal img{
    max-width: 250px;
}

.modal-centrada{
    height: 100%;
}

.contenido-modal {
    margin: 15px;
    height: 90%;
}

/*filtros svg colores*/
.svg-colordest{filter:var(--filter-colordest);}
.svg-blanco{filter:var(--filter-blanco);}
.svg-rojo {filter: var(--filter-rojo);}
.svg-sombra{filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}


/*CONTENIDO*/
.contenedor-full-height{
    display: flex;
    justify-content: center;
    flex-direction: column;
    /*height: 100vh;*/
    min-height: 100%;
    background: transparent;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow:auto;
    /*background-attachment: fixed;*/
}
.contenidos-centrados{
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center!important;
    align-items: center;
    overflow: auto;
    flex-flow: row wrap;
    min-width: 0;
}

.card{
    background: var(--fondocard);
    padding:15px;
    border-radius:8px;
    margin:20px 15px;
    width: 1200px;
    /*box-shadow: 0 .1875rem .75rem 0 rgba(47,43,61,.1);*/
}
.card-full-height{
    display: block;
    height: 100%;
}
.card-flex-height{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
.card-flex-height.footer{
    padding: 20px;
    background: var(--colordest);
    color:white;
    border-radius:8px;
    background: var(--colordest) url(../images/isotipo-transparente.svg) no-repeat center center;
    background-size: cover;
}
.card-inside-center{
    padding:20px 0;
}
.card-inside-form{
    display: flex;
    justify-content:center;
    flex-direction: column;
    align-items: center;
}
.zona-form{
    width: 480px;
}
.zona-form.full{
    width: 100%;
}
.formulario.redondo{
    border-radius: 8px!important;
    padding:15px;
}

.iconos-top{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap:10px;
    line-height: 1;
    /*opacity: 0.5;*/
}

.dark .badge.palido, .dark .badge.light {
    color: #bfbfbf !important;
    background-color: #171b1e;
}

@media (max-width: 991px) {
    .card-flex-height.footer{
        min-height: 400px;
    }
    .card-inside-center{
        padding:0px;
    }
    .separa-abajo-movil{
        margin: 40px 0;
    }
    .zona-form {
        width:100%;
    }
}

/*==============================
             Tablas
==============================*/

.table-responsive{
    overflow-y:hidden;
}

.table-responsive.topbar{
     transform: rotateX(180deg);

     & table.simpletabla{
         transform: rotateX(180deg);
     }
}

table.simpletabla { width: 100%; border-collapse: collapse; padding: 8px; font-size: 0.9em}
/*table.simpletabla {border: 1px solid var(--borde-tabla)}*/
table.simpletabla th {border: 1px solid var(--borde-tabla); background-color:var(--fondo-th-tabla); padding: 10px; text-align: left}
table.simpletabla tr {border: 1px solid var(--borde-tabla); padding: 10px;}
table.simpletabla td {border: 1px solid var(--borde-tabla); padding: 10px;}

/*==============================
             Botones
==============================*/

.boton.max-width{max-width: 352px}

.boton.colordest {background: var(--colordest); font-size:1em; color: var(--colordest-txt)!important;font-weight:400; border-radius:127px; width:95%;margin:0 auto;display: block;}
.boton.colordest:hover, .boton.colordest.active{background-color:var(--colordest); color: var(--colordest-txt)!important;}
.boton.colordest.bordered, .boton.colordest.bordered:hover, .boton.colordest.bordered.active {border:1px solid var(--colordest); color: var(--colordest); background:transparent}

/*==============================
			Textos
==============================*/

.title{font-size:1.85em; line-height: 1; font-weight:700; color:var(--color-title); margin-bottom:20px; position: relative;}
.title a {text-decoration:none; color:var(--color-title)}
.title a:hover, .title a:focus {text-decoration:none; color:var(--color-title)}

.title.s-size{
    font-size: 1.5em;
}

.titulo{
    font-size: 1.5em;
    font-weight: 600;
    line-height: 1.2;
}

.txtmin.l-size{font-size: 0.875em;}
.txtmin{font-size: 0.8125em; text-decoration: none;line-height:1.231em;}
.txtmin.s-size{font-size:0.75em;}
.txtmin.xs-size{font-size:0.6875em;}
.txtmin.active{color:var(--colordest);}

.txtbig{font-size:1.25em; line-height: 1}
.txtbig.l-size{font-size:1.5em;}
.txtbig.xl-size{font-size:2.5em;}

.color-principal {color:var(--color-principal) !important;}

.abajo{font-size: 0.875em; color: var(--txtaba); text-decoration: none;}
.abajo a, .abajo a:focus{color: var(--txtaba); text-decoration: none; /*text-decoration: underline wavy var(--colordest);*/}
.abajo a:hover, .abajo a:focus{color: var(--txtaba); text-decoration: none;}

/*==============================
			Msg-form
==============================*/

.msg-form {padding-left: 1rem;border-width: 1px 1px 1px 5px;color: var(--light); background-color: var(--fondolight); border-color: var(--color-borde);}
.msg-form a{box-shadow: 0 1px 0 currentColor;}
.msg-form .close {top: -12px; right: -5px;}
.msg-form.borde{border-color: #526484;}
.dark .msg-form.borde {background: transparent !important; box-shadow: 0 4px 15px 0 rgba(255, 255, 255, 0.1);}
.msg-form.con-fondo{background: rgba(0,0,0,0.03)}
.dark .msg-form.con-fondo{background: rgba(255,255,255,0.04)}

.msg-form.colordest {color: var(--colordest)!important; background-color: transparent; border-color: var(--colordest);}
.msg-form.colordest a {color: var(--colordest)!important;}
.msg-form.borde.colordest{border-color: var(--colordest); color:var(--colordest) !important;}
.msg-form.borde.colordest a{color: var(--colordest)!important;}
.msg-form.con-fondo.colordest {color: var(--colordest-txt)!important; background-color: var(--colordest)}
.msg-form.con-fondo.colordest a{color: var(--colordest-txt)!important;}

.msg-form.verde {color: #19bc90!important; background-color: #e4fbf5; border-color: #aef4e1;}
.msg-form.verde a {color: #19bc90;}
.msg-form.con-fondo.verde {color: #fff!important; background: #19be92;}
.msg-form.con-fondo.verde a{color: #fff!important;}
.msg-form.borde.verde {border-color: #19be92;}

.msg-form.amarillo {color: #cd9f0c!important; background-color: #fef7e2; border-color: #fbe7a8;}
.msg-form.amarillo a {color:#9d7a09;}
.msg-form.con-fondo.amarillo {color: #fff!important; background: #ffae11;}
.msg-form.con-fondo.amarillo a{color: #fff!important;}
.msg-form.borde.amarillo {border-color: #ffae11;}

.msg-form.rojo {color: #c3463c!important; background-color: #fceae9; border-color: #f7c1bd;}
.msg-form.rojo a {color: #9c3830;}
.msg-form.con-fondo.rojo {color: #fff!important; background: #e85347;}
.msg-form.con-fondo.rojo a{color: #fff!important;}
.msg-form.borde.rojo {border-color: #e85347;}

.msg-form.gris {color: #6c7a8c !important; background-color: #f0f2f4; border-color: #d1d7df;}
.msg-form.gris a {color: #56616f;}
.msg-form.con-fondo.gris {color: #fff!important; background: #8091a7;}
.msg-form.con-fondo.gris a{color: #fff!important;}
.msg-form.borde.gris {border-color: #8091a7;}

.dark .msg-form.verde {background:transparent; border-color:#19bc90;}
.dark .msg-form.con-fondo.verde {background: #19bc90; color: #ffffff !important;}

.dark .msg-form.amarillo {background:transparent; border-color:#ffae11; color:#ffae11!important}
.dark .msg-form.con-fondo.amarillo {background:#ffae11!important;color: #ffffff !important;}
.dark .msg-form.amarillo a {color: #ffae11;}

.dark .msg-form.rojo {background:transparent; border-color:#e5352f; color:#e5352f!important}
.dark .msg-form.con-fondo.rojo {background:#e5352f!important;color: #ffffff !important;}
.dark .msg-form.rojo a {color: #e5352f;}

.dark .msg-form.gris {background:transparent; border-color: #6b7275; color:#6b7275!important}
.dark .msg-form.con-fondo.gris {background:#6b7275!important;color: #ffffff !important;}
.dark .msg-form.gris a {color: #6b7275;}