@import url('https://fonts.googleapis.com/css2?family=Montserrat: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');
input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
   color: #adb5bd !important;
  font-size: 1.1rem !important;
  font-weight:600 !important;
}

input::-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #adb5bd !important;
  font-size: 1.1rem !important;
  font-weight:600 !important;
}

input::-ms-input-placeholder { /* Microsoft Edge */
   color: #adb5bd !important;
  font-size: 1.1rem !important;
  font-weight:600 !important;
}
textarea::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
   color: #adb5bd !important;
  font-size: 1.1rem !important;
  font-weight:600 !important;
}

textarea::-ms-input-placeholder { /* Internet Explorer 10-11 */
   color: #adb5bd;
  font-size: 1.1rem;
  font-weight:600;
}

textarea::-ms-input-placeholder { /* Microsoft Edge */
   color: #adb5bd;
  font-size: 1.1rem;
  font-weight:600;
}
:root {
    --cassiopeia-color-primary: #1a408d;
    --cassiopeia-color-link: #224faa;
    --cassiopeia-color-hover: #1a408d;
    --body-font-family:Montserrat;
    --cassiopeia-font-family-headings: Montserrat;
    --template-top-button-a-color: #0d3067d;
    --titles-bg-color:#ffcf1e;
    --modules-bg-grey:#e5e5e5;
    --body-color: #22262acc;
    --numeros-color:#3b943e;
    --type-1-color:#ea16f1;
    --type-2-color:#3b943e;
    --type-3-color:#f18923;
    --type-4-color:#8a2ff1;
}
@supports (display: grid) {
  .site-grid {
    display: grid;
    grid-template-areas: ". banner banner banner banner ." ". top-a top-a top-a top-a ." ". top-b top-b top-b top-b ." ". top-c top-c top-c top-c ." ". comp comp comp comp ." ". side-r side-r side-r side-r ." ". side-l side-l side-l side-l ." ". bot-a bot-a bot-a bot-a ." ". bot-b bot-b bot-b bot-b ." ". bot-c bot-c bot-c bot-c ." ". bot-d bot-d bot-d bot-d .";
    grid-template-columns: [full-start] minmax(0, 1fr) [main-start] repeat(4, minmax(0, 19.875rem)) [main-end] minmax(0, 1fr) [full-end];
    grid-gap: 0 1em;
  }
  .site-grid > [class^=container-],
.site-grid > [class*=" container-"] {
    width: 100%;
    max-width: none;
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
  }
  .site-grid > .full-width {
    grid-column: full-start/full-end;
  }
  .container-top-c {
  grid-area: top-c;
  background-color: var(--modules-bg-grey);
}
.container-bottom-c {
  grid-area: bot-c;
}
.container-bottom-d {
  grid-area: bot-d;
}
.container-header {
    background-color: var(--cassiopeia-color-primary);
  	background-image: none;
    box-shadow: inset 0 5px 5px rgb(0 0 0 / 3%);
    position: relative;
    z-index: 10;
}
.container-header .mod-menu {
    color: #fff;
    flex: 1 0 100%;
    list-style: none;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
    font-weight: 600;
}
.navbar {
	display:contents;
}
.navbar-collapse {
	padding-left:5em;
}
.top-button-a{
	    border: 4px solid white;
    border-radius: 28px;
    padding: 10px 26px;
    margin-top: 1rem;
    color: white;
    font-family: Montserrat;
    text-transform: uppercase;
    background-color: var(--template-top-button-a-color);

}
.top-button-a:hover{
	color: var(--template-top-button-a-color);
	background-color: white;

}
.top-button-b:hover{


    color: white;
    background-color: var(--template-top-button-a-color);

}
.top-button-b{
	text-transform: uppercase;
		border: 4px solid white;
	  border-radius: 28px;
	  padding: 10px 26px;
	  margin-top: 1rem;
		color: var(--template-top-button-a-color);
		background-color: white;

		font-family: Montserrat;
}

h2.banner-title{
    color: var(--cassiopeia-color-primary);
    background-color: var(--titles-bg-color);
    text-transform: uppercase;
    padding: 0.2em;
}
p.banner-p {
		font-size: x-large;
    margin: 2em;
}
.banner-button{
		border: 4px solid white;
    border-radius: 38px;
    padding: 10px 26px;
    margin-top: 1rem;
    color: white;
    font-family: Montserrat;
    font-weight:bold;
    text-transform: uppercase;
    background-color: var(--cassiopeia-color-primary);
    padding:15px;
}
.banner-button:hover{
	color: var(--cassiopeia-color-primary);
	background-color: white;
	border: 4px solid var(--cassiopeia-color-primary);
}

.container-banner {

    margin: 0;
}

.two-cols-top-a{
	padding:0px;
	margin:0px;
}
div.only-bg{
	padding:0px;
	margin:0px;
}
div.bg-grey{
	background-color: var(--modules-bg-grey);
	padding: 5%;
	/*height: 100%;*/

}
.main-button{

		border: 4px solid white;
    border-radius: 38px;
    padding: 10px 26px;
    margin-top: 1rem;
    color: white;
    font-family: Montserrat;
    font-weight:bold;
    text-transform: uppercase;
    background-color: var(--cassiopeia-color-primary);
    padding:10px 30px;
}
.main-button:hover{
	color: var(--cassiopeia-color-primary);
	background-color: white;
}
.h-titles {
		color: var(--cassiopeia-color-primary);
    background-color: var(--titles-bg-color);
    text-transform: uppercase;
    padding: 0.2em;
    margin: 0 10% 5% 10%;
    font-size: 1 em;
    text-align:center;
}

.two-cols-top-b{
		display: flex;

}
.project-wall-item{
	  padding: 10%;
    max-width: 500px;
    max-height: 500px;
    margin: 2em auto;
}

.main-button-white{

		border: 4px solid white;
    border-radius: 38px;
    padding: 10px 26px;
    margin-top: 1rem;
    color: white;
    font-family: Montserrat;
    font-weight:bold;
    text-transform: uppercase;

    padding:10px 30px;
}
.main-button-white:hover{
	color: var(--cassiopeia-color-primary);
	background-color: white;
	color: var(--cassiopeia-color-primary);
}

.h3-titles {
    color: var(--cassiopeia-color-primary);
    background-color: var(--titles-bg-color);
    text-transform: uppercase;
    padding: 0.2em;
    margin: 0 10% 5% 10%;
    font-size: 1em;
    text-align:center;
}
div.eval-home-item{
	background-color: var(--cassiopeia-color-primary);
	text-align:center;
    padding: 50px 10px;
    margin: 30px auto;
    max-width: 300px;
    border-radius: 30px;
    transition: ease all .2s;
}
div.eval-home-item:hover{
	background-color:var(--cassiopeia-color-link);
	box-shadow: 3px 3px 10px;
}
div.eval-home-item img{
	width:100%;
	max-width: 100px;
}
div.display-contents{
	display:contents;
}
.bg-numeros{
	background:url(/images/template_tec/bg/back-numeros.webp)no-repeat;
	background-size:cover;
}
p.numeros{
	color:var(--numeros-color);
	    font-size: -webkit-xxx-large;
    font-weight: bold;
}
div.bg-puzzle{
		background:url(/images/template_tec/bg/back-premiacio.webp)no-repeat;
	background-size:cover;
}
div.bg-contact{
		background:url(/images/template_tec/bg/back_contacto.webp)no-repeat;
	background-size:cover;
}
img.bullet{
	  max-width: 25px;
    margin-right: 10px;
}
.no-card .newsflash-horiz li {
	border: unset;
    border-bottom-left-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    box-shadow: 1px 1px 4px rgb(0 0 0 / 10%);
    padding:0;
    background-color: var(--modules-bg-grey);
}
.icon-cont{
	max-width:40px;
}

.text-justify{
	text-align: justify !important;
}

.footer {
	background:unset;
	background-color:white;
	color: var(--body-font-family);
}
hr.hr_footer{
	  height: 4px;
    background-color: var(--cassiopeia-color-primary);
    border-radius: 5px;
    opacity: 1;
}
h4.footer_title{
	font-family: Montserrat;
    font-weight: 500;
    font-size: 2em;
    color: var(--body-color);
}
img.ico_footer{
max-width: 40px;
    max-height: 40px;
    margin: 0px 21px;

    }

#com_pm.projects .control-label,
#com_pm.project .control-label {
 	text-align:center;
 }
 .control-label label {
 	font-weight: 500;
  font-size: 1.2em;
 }

 label.required span.star{
 	color:red;
 }
 .form-control.input-xxlarge {
    max-width: 100%;
}
.form-control {
    background-color: #fff;
    max-width: 100%;
    border: 2px solid #22262a70;
    border-radius: 15px;
}
#com_pm.projects .form-control,
#com_pm.project .form-control {
	height: 64px;
}
#jform_description, #jform_beneficios{
	    height: 150px;
}
.form-control:focus {
    background-color: #fff;
    border-color: #353b41;
    box-shadow: 0 0 0 0.25rem rgba(var(--cassiopeia-color-primary),.25);
    color: #22262a;
    outline: 0;
}
div.projects-item{
	    border: 1px solid var(--gray-300);
    transition: all ease .5s;
    height: 100%;
    display: flex;
    flex-direction: column;
}
div.projects-item:hover{
	box-shadow: 5px 5px 10px var(--gray-400);
}
p.types{
		color: white;
    padding: 0.25rem 1rem;
    border-radius: 5px;
    font-weight: 500;
    max-width: 250px;
    margin: 1rem auto;
    width: 100%;
}
.type-tag-1{
	background: var( --type-1-color);
	color:white;
}
.type-tag-2{
	background: var( --type-2-color);
	color:white;
}
.type-tag-3{
	background: var( --type-3-color);
	color:white;
}
.type-tag-4{
	background: var( --type-4-color);
	color:white;
}

.item-titles{
		color: var(--cassiopeia-color-primary);
    background-color: var(--titles-bg-color);
    text-transform: uppercase;
    padding: 0.2em;
    margin: auto 0px;
    font-size: 1 em;
    text-align: center;
}
.item-button{
    border-radius: 38px;
    padding: 10px 26px;
    margin-top: 1rem;
    color: white;
    font-family: Montserrat;
    font-weight: bold;
    text-transform: uppercase;
    background-color: var(--cassiopeia-color-primary);
    border: 4px solid var(--cassiopeia-color-primary);
    padding: 10px 30px;
    transition: all ease .5s;
}
.item-button:hover{
	color: var(--cassiopeia-color-primary);
    background: white;
	box-shadow: 5px 5px 5px var(--gray-500);
}
p.item-icons span {
	margin-right:1em;
}
p.item-icons img{
	width:30px;
	margin-right:.25em;
}
.item-pic{
	position:relative;
}
.item-description{
		display: -webkit-box;
    max-height: 150px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.breadcrumb{
	    font-weight: 400;
	    background-color:white;
}
.btn-primary {
    background-color: white;
    border: 4px solid var(--cassiopeia-color-primary);
    color: var(--cassiopeia-color-primary);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 25px;
}
.btn-evalua_1 {
		background-color: var(--type-1-color);
    border: 4px solid var(--type-1-color);
    color: white;
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 25px;
}
.btn-evalua_2 {
		background-color: var(--type-2-color);
    border: 4px solid var(--type-2-color);
    color: white;
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 25px;
}
.btn-evalua_3 {
		background-color: var(--type-3-color);
    border: 4px solid var(--type-3-color);
    color: white;
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 25px;
}
.btn-evalua_4 {
		background-color: var(--type-4-color);
    border: 4px solid var(--type-4-color);
    color: white;
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 25px;
}
img.projects_ico_tipo{
	position:absolute;
	top:5px;
	right:5px;
	max-width:100px;
}
section.project-benefits{
		background:url(/images/template_tec/bg/back_proyecto.webp)no-repeat;
		background-size:cover;
}

ul.solucions-list{
	font-weight: 600;
	list-style:none;
}
img.list-icon{
	max-width:20px;
}
.bg_tipo_1{
	background:var(--type-1-color);
}
.bg_tipo_2{
	background:var(--type-2-color);
}
.bg_tipo_3{
	background:var(--type-3-color);
}
.bg_tipo_4{
	background:var(--type-4-color);
}

.info_general_h_1{
		color: var(--type-1-color);
    background-color: white;
    text-transform: uppercase;
    padding: 0.2em;
    margin: 0 10% 5% 10%;
    font-size: 1 em;
    text-align:center;
}
.info_general_h_2{
		color: var(--type-2-color);
    background-color: white;
    text-transform: uppercase;
    padding: 0.2em;
    margin: 0 10% 5% 10%;
    font-size: 1 em;
    text-align:center;
}
.info_general_h_3{
		color: var(--type-3-color);
    background-color: white;
    text-transform: uppercase;
    padding: 0.2em;
    margin: 0 10% 5% 10%;
    font-size: 1 em;
    text-align:center;
}
.info_general_h_4{
		color: var(--type-4-color);
    background-color: white;
    text-transform: uppercase;
    padding: 0.2em;
    margin: 0 10% 5% 10%;
    font-size: 1 em;
    text-align:center;
}
div.project-evaluation{
		background:url(/images/template_tec/bg/img_evaluacion.webp)no-repeat;
		background-size:cover;
		background-position:top center;
}
div.form-evaluation{
		background:url(/images/template_tec/bg/back_proyecto.webp)no-repeat;
		background-size:cover;
}

.form-select, .custom-select {
    font-family: 'Montserrat';
    background-color: #fff;
    max-width: 100%;
    border: 2px solid #22262a70;
    border-radius: 15px;
    font-size: 1.2rem;
    font-weight: 600;
}
#com_pm.project .form-select,
#com_pm.project .custom-select {
		text-align: center;
}

#com_pm.projects .form-select, #com_pm.projects .custom-select,
#com_pm.project .form-select, #com_pm.project .custom-select {
	height: 64px;
}
.mas_solucion, .mas_integrante, .mas_galeria{
	border: 2px solid black;
    border-radius: 50%;
    padding: 1px;
}
.hide_this{
	border: 2px solid black;
    border-radius: 50%;
    padding: 0px 2px;
}

#evaluacion{
	margin: 5%;
}
.form-evaluation p{
	font-size: large;
    margin: 5%;

}

.text_color_tipo1{
	color: var(--type-1-color);
}
.text_color_tipo2{
	color: var(--type-2-color);
}

.text_color_tipo3{
	color: var(--type-3-color);
}

.text_color_tipo4{
	color: var(--type-4-color);
}
/*
.evaluation-form-tipo1 input, .evaluation-form-tipo1 select, .evaluation-form-tipo1 textarea{
	border-color: var(--type-1-color);
}
.evaluation-form-tipo2 input, .evaluation-form-tipo2 select, .evaluation-form-tipo2 textarea{
	border-color: var(--type-2-color);
}

.evaluation-form-tipo3 input, .evaluation-form-tipo3 select, .evaluation-form-tipo3 textarea{
	border-color: var(--type-3-color);
}

.evaluation-form-tipo4 input, .evaluation-form-tipo4 select, .evaluation-form-tipo4 textarea{
	border-color: var(--type-4-color);
}
*/
#jform_eval7{
	height: 200px;
}
a.more_comments{
	    text-decoration: none;
    color: #484f568a;
    font-size: larger;
    cursor:pointer;
}
a.more_comments:hover{
	color: var(--dark);
}
div.comentario{
	border: 2px solid #22262a70;
    border-radius: 15px;
    transition: all ease .3s;
}
div.comentario:hover{
	    box-shadow: 3px 0px 10px var(--gray-500);
}

.form-check-label{
	text-transform:uppercase;
	font-size: small;
}
.pass_forgot{
	color: #484f568a;
    font-size: larger;
    cursor:pointer;
}
.pass_forgot:hover{
	color: var(--dark);
}
.top-buttons-align{
	display:flex;
	align-items: center;
}
.container-header .grid-child {
    padding: 0px;
}
#logged-user{
	background-color:#0D306D;
	color: white;
	position:relative;
}

#logged-name{
	padding: 30px;
}

#logged-options{

    display:none;
   height:0px;
    animation: all ease 1s;
    opacity: 0;
    position: absolute;
    top: 115px;
    left: 0px;
    background: #0D306D;
    right: 0px;
    transition: all ease .3s;


}
#logged-options a{
	text-decoration: none;
}
#logged-options a:hover{
	text-decoration: underline;
}
#logged-options:hover{

	height:auto;
	opacity:1;
	display:block;
}

#logged-name:hover + #logged-options{

	height:auto;
	opacity:1;
	display:block;
}
.logged-user-avatar-letter{
	background: var(--titles-bg-color);
    color: var(--cassiopeia-color-primary);
    border: 3px solid white;
    border-radius: 62%;
    padding: 10px 14px;
    margin-right: 10px;
    text-transform: uppercase;
    font-weight: 600;
}
#logged-user #roll {
	font-size: 10pt;
   text-transform: capitalize;
}
joomla-hidden-mail a{
	color:white !important;
}

#contact-page joomla-hidden-mail a{
	color:var(--body-color) !important;
}

.contact-submit-button, .registration-submit-button, .login-submit-button{
	border: 4px solid white;
    border-radius: 38px;
    /*padding: 10px 26px;*/
    margin-top: 1rem;
    color: white;
    font-family: Montserrat;
    font-weight: bold;
    text-transform: uppercase;
    background-color: var(--cassiopeia-color-primary);
    /*padding: 15px;*/
    width:90%;
    height:80px;
    transition: all ease .3s;
}
.contact-submit-button:hover,  .registration-submit-button:hover, .login-submit-button:hover {
	color: var(--cassiopeia-color-primary);
    background: white;
    border: 4px solid var(--cassiopeia-color-primary);
}
#jform_contact_message{
	height: 200px;
}
#soluciones input{
	margin-bottom:10px;
}

.register-prof-bg{
	background:url(/images/template_tec/bg/img_CuentaProfesores.webp) no-repeat;
	background-size:cover;
	background-position:top center;
}
.register-eval-bg{
	background:url(/images/template_tec/bg/img_CuentaEvaluadores.webp) no-repeat;
	background-size:cover;
	background-position:top center;
}

.register-gral-bg{
	background:url(/images/template_tec/bg/img_CrearCuenta.webp) no-repeat;
	background-size:cover;
	background-position:top center;

}

main {
	margin-top: 0px !important;
}

.container-title{
	margin-top: 10px
}
#retros{
	max-height: 500px;
    overflow-y: scroll;
}
.campo_foto .userimage{
	position:relative;
}
.campo_foto .userimage .icon-cancel-circle{
	position: absolute;
	top: -5px;
    left: -7px;
}

.nav.nav-tabs .nav-link.active {
	background-color:unset !important;
}
/*correct tooltip width*/
[role=tooltip]:not(.show) {
	max-width: unset ;
}
p.banner-p {

    max-width: 1024px;
  }

  .subhead {
  	z-index: 0;
  }
  #system-message-container{
  	margin-top: 15px;
  	margin-bottom:15px;
  }
  .anchor-scroll { scroll-margin-top: 120px; }
  .container-header .metismenu>li.level-1>ul {
    min-width: 18rem;
}
.mod-menu__separator{
    color: var(--cassiopeia-color-link) !important;
    text-transform: uppercase;
    text-decoration:none !important;
    font-weight: 600;
}