@charset "utf-8";
:root {
  --mainColor: #b1309e;
  --secondColor: #f33ed8;
  --titleColor: #FF383B;
  --whiteColor: #FFFFFF;
  --grayColor: #F1F1F1;
  --blackColor: #000;
  --widthSize: 1300px
}
@font-face {
  font-family: "Montserrat Light";
  src: url("/assets/fonts/Montserrat-Light.ttf");
  src: url('/assets/fonts/Montserrat-Light.ttf') format('truetype');
  font-weight: 400;
  font-style: normal
}
@font-face {
  font-family: "Montserrat Regular";
  src: url("/assets/fonts/Montserrat-Regular.ttf");
  src: url('/assets/fonts/Montserrat-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal
}
@font-face {
  font-family: "Montserrat Bold";
  src: url("/assets/fonts/Montserrat-Bold.ttf");
  src: url('/assets/fonts/Montserrat-Bold.ttf') format('truetype');
  font-weight: 400;
  font-style: normal
}
@font-face {
  font-family: "Montserrat Black";
  src: url("/assets/fonts/Montserrat-Black.ttf");
  src: url('/assets/fonts/Montserrat-Black.ttf') format('truetype');
  font-weight: 400;
  font-style: normal
}
@font-face {
  font-family: "Above the Beyond Script";
  src: url("/assets/fonts/AbovetheBeyond-Script.ttf");
  src: url('/assets/fonts/AbovetheBeyond-Script.ttf') format('truetype');
  font-weight: 400;
  font-style: normal
}
html {
  font-size: 18px
}
* {
  margin: 0;
  padding: 0;
  font-family: "Montserrat Light";
  font-size: 1rem
}
body,
html {
  width: 100%
}
.mask {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: #00000092;
	z-index: 9999;
	display: none;
}
.ms-5 {
  margin-left: 5rem!important
}
.cecTopBar {
  padding: .8rem 0;
  background: linear-gradient(to right,var(--mainColor),var(--secondColor),var(--mainColor));
}
.cecTopBarContent {
  width: 100%;
  margin: 0 auto;
  text-align: right
}
.cecTopBarContent ul {
  list-style: none;
  margin: 0
}
.cecTopBarContent ul li {
  display: inline;
  color: var(--whiteColor)
}
.cecTopBarContent ul li a {
  color: var(--whiteColor);
  text-decoration: none;
  font-size: .8rem;
  margin: 0 1rem
}
.btnLanguages {
  background-color: var(--whiteColor);
  color: var(--mainColor)!important;
  border-radius: 50%;
  padding: .5rem
}
.btnLanguagesM {
  background-color: var(--whiteColor);
  color: var(--mainColor) !important;
  border-radius: 50%;
  padding: .45rem .5rem;
  font-size: .7rem;
  margin: 0;
  position: absolute;
  top: -.2rem;
  right: 1rem;
}
.cecTopMenuHam {
	height: 1.5rem;
	display: none;
}

.cecTopMenuHam svg {
	height: 1.5rem;
  margin-right: 2.5rem;
}

.cecTopMenuHam svg path {
	fill: var(--whiteColor);
}

.closeMenu {
	padding: .5rem 1rem;
  background-color: var(--whiteColor);
  color: var(--mainColor);
  position: absolute;
  left: -1.2rem;
  top: 2rem;
  border-radius: 50%;
  display: none;
}
.closeMenu p {
	margin: 0;
}
.cecFestivalVideo-wrapper {
  width: 100%;
  font-size: 0;
  position: fixed;
  top: 0;
  z-index: -1
}
.cecFestivalVideo-wrapper video {
  width: 100%
}
.cecFestivalmask {
  background-color: #161516c4;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 999
}
.cecFestivalInv {
  position: absolute;
  z-index: 9999;
  top: 6rem;
  left: 10rem;
  max-width: 80%;
  width: 40%;
}
.vEs {
  width: 60% !important;
}
.cecFestivalInv h1 {
  font-size: 3rem;
  line-height: 3.5rem;
  color: var(--secondColor);
  font-family: "Montserrat Black";
  width: 80%;
}
.cecFestivalInv h1 span {
  display: block;
  font-size: 2rem;
  line-height: 2.5rem;
  margin-top: .5rem;
}
.cecFestivalInv p {
  line-height: 1rem;
  color: #fff;
  margin: 0
}
.cecFestivalInv h2 {
  font-size: 2rem;
  line-height: 2.5rem;
  color: #fff;
  margin: 1rem 0
}
.cecFestivalInv h2 span {
  font-size: 2rem;
  line-height: 2.5rem;
  color: #fff;
  display: block;
}
.cecFestivalFecha {
  margin: 3rem 0 1rem
}
.cecFestivalFecha-info {
  font-size: 1.5rem;
  font-family: 'Montserrat Black';
  margin-bottom: .8rem!important
}
.cecFestivalFecha-lugar {
  line-height: 1.4rem !important;
}
.cecFestivalLogos img {
  width: 300px;
}
.cecFestival {
  background: #fff url(/images/cec/Edificio.png) left top no-repeat;
  background-size: auto 100%;
  margin-top: 700px;
  padding: 5rem 0
}
.cecFestivalInvt  {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 90%;
}
.cecFestivalInvt-text {
  padding: 4rem 0;
  width: 45%;
}
.cecCintillaImage img {
  width: 100%
}
.cecFestivalPart {
  background: var(--whiteColor) url(/images/cec/bg-festival-star.png)
}
.cecFestivalPart-content {
  padding: 7rem 0
}
.cecFestivalPart-item {
  margin: 4rem 0
}
.cecFestivalPart-title {
  background-color: var(--mainColor);
  padding: 1.5em 5rem;
  border-radius: 1rem;
  display: inline-block;
  margin-bottom: 3rem
}
.cecFestivalPart-title p {
  font-size: 1.2rem;
  font-family: "Montserrat Black";
  letter-spacing: .1rem;
  margin: 0;
  color: var(--whiteColor)
}
.cecFestivalPart-info h3 {
  font-size: 1.2rem;
  color: var(--mainColor)
}
.cecFestivalPart-info h3 span {
  font-size: 1.5rem;
  background-color: var(--mainColor);
  padding: .5rem 1rem;
  color: var(--whiteColor);
  border-radius: .5rem
}
.cecFestivalPart-info p {
  font-size: .7rem;
  margin: 1rem 0 0 3.4rem
}
.cecFestivalPart-info p i {
  font-size: .7rem;
}
.cecFestivalInvitacion {
  padding: 7rem 0;
  background: linear-gradient(to right,var(--mainColor),var(--secondColor),var(--mainColor));
  text-align: center
}
.cecFestivalInvitacion h3 {
  font-size: 3rem;
  color: var(--whiteColor);
  font-family: "Montserrat Black";
  margin-bottom: 2rem
}
.cecFestivalInvitacion p {
  color: var(--whiteColor);
  margin: 0
}
.cecFestivalFechaBanner {
  position: absolute;
  left: 18rem;
  width: 9rem;
  bottom: 0;
}
.cecFestivalFechaBanner img {
  width: 9rem;
}

.banner-login {
  padding: 5rem 0;
  background-color: var(--mainColor);
  text-align: center;
}

.banner-login a.btn-primary {
  background-color: var(--whiteColor);
  padding: 1rem 3rem;
  margin-bottom: 2rem;
  border: none;
  color: var(--mainColor);
}

.cecFestivalInvitacion a {
  display: block;
  color: var(--mainColor);
  font-weight: bold;
}

@media screen and (max-width: 1440px){
  .cecTopBar ul li a {
		margin: 0 .5rem;
	}
	.cecFestival {
		margin-top: 660px;
	}
  .cecFestivalInv {
      top: 6rem;
      width: 52%;
  }
}

@media screen and (max-width: 1290px){
  .cecFestival {
    margin-top: 720px;
  }
  .cecFestivalVideo-wrapper video {
    width: 110%;
  }
}

@media screen and (max-width: 1200px){
  .cecFestivalVideo-wrapper video {
    width: 100%;
  }
  .cecFestivalInv {
    width: 80% !important;
  }
  .cecFestivalInv h2 {
    font-size: 1rem;
    line-height: 1.5rem;
  }
  .cecFestivalInv h2 span {
    font-size: 1rem;
    line-height: 1.5rem;
  }
  .cecFestival {
    margin-top: 560px;
    background: #FFF;
  }
	.cecTopMenuMain {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 99999;
		background: linear-gradient(to right,var(--mainColor),var(--secondColor),var(--mainColor));
		width: 50%;
		height: 100vh;
		padding: 2rem;
		display: none;
	}
	.cecTopMenuHam {
		display: block;
	}
	.cecTopMenuMain ul li {
		display: block;
	}
	.cecTopMenuMain ul li a {
		font-size: 1rem;
		margin: 1rem 0;
		text-align: right;
		display: block;
	}
	.cecTopMenuMain ul li.separator, .cecTopMenuMain ul li a.btnLanguages {
		display: none;
	}
  .cecFestivalInv {
      width: 90%;
      max-width: 90%;
      left: 5%;
  }
	.cecFestivalInv h1 {
		font-size: 2rem;
    line-height: 2.5rem;
    width: 60%;
	}
	.cecFestivalInv h1 span {
    font-size: 1rem;
    line-height: 1.5rem;
  }
	.cecFestivalVideo-wrapper video {
		width: 120%;
	}
  .cecFestivalFecha {
    margin: 2rem 0 1rem;
  }
  .cecFestivalFecha-info {
    font-size: 1.2rem;
  }
  .cecFestivalLogos img {
    width: 250px;
  }
  .cecFestivalPart-content {
    text-align: center;
  }
  .cecFestivalInvt {
      display: flex;
      align-items: center;
      justify-content: center;
  }
  .cecFestivalInvt-text {
    padding: 4rem 0;
    width: 80% !important;
    max-width: 80% !important;
    flex: auto;
  }
  .cecFestivalPart-item {
    display: block !important;
    width: 80%;
    margin: 0 auto;
  }
  .cecFestivalPart-cLeft {
    width: 100% !important;
    max-width: 100%;
    margin: 2rem 0;
  }
  .cecFestivalPart-cRight {
    width: 100% !important;
    max-width: 100%;
    margin: 2rem 0;
  }
  .ms-5 {
    margin: 0 !important;
  }
  .cecFestivalPart-info {
    text-align: left;
  }
  .cecFestivalInvitacion {
    padding: 7rem 3rem;
  }
}

@media screen and (max-width: 932px) {
  .cecFestivalVideo-wrapper video {
    width: 180%;
  }
  .cecFestival {
    margin-top: 490px;
  }
  .cecFestivalInv h1 {
    width: 100%;
  }
  .cecFestivalInv h1 span {
    margin-top: 0;
  }
  .cecFestivalInv h2 {
    font-size: .8rem;
    line-height: 1.2rem;
    margin: 0;
  }
  .cecFestivalInv h2 span {
    font-size: .8rem;
    line-height: 1.2rem;
  }
  .cecFestivalFecha {
    margin: 2rem 0 .5rem;
  }
  .cecFestivalFecha-lugar {
    width: 100%;
    font-size: .8rem;
  }
}

@media screen and (max-width: 820px) {
  .cecFestival {
    background-size: cover;
  }
}
@media screen and (max-width: 640px) {
  .cecFestivalVideo-wrapper video {
    width: 200%;
  }
  .cecFestival {
    margin-top: 500px;
  }
  .cecFestivalInv {
    max-width: 95%;
    left: 2.5%;
  }
  .cecFestivalInv p {
    margin: 0 !important;
  }
  .cecFestivalInv h1 {
    font-size: 1.8rem;
    line-height: 2rem;
    width: 60%;
  }
  .cecFestivalInvitacion h3 {
    font-size: 2rem;
  }
  .vEs {
    width: 100% !important;
  }
  .cecTopMenuMain {
    width: 70%;
  }
}

@media screen and (max-width: 540px) {
  .cecFestivalInv {
    top: 5rem;
  }
  .cecFestivalInv h1 {
    width: 70%;
  }
  .cecFestivalPart-info {
    text-align: center;
  }
  .cecFestivalPart-info h3 span {
    display: block;
    width: 2.7rem;
    text-align: center;
    margin: 0 auto .5rem;
  }
  .cecFestivalPart-info p {
    margin: 1rem 0 0;
  }
  .cecFestivalFechaBanner {
    left: 15rem;
  }
}

@media screen and (max-width: 500px) {
  .cecFestivalVideo-wrapper video {
    width: 250%;
  }
  .cecFestivalInv h1 {
    width: 100%;
  }
  .cecFestivalPart-item {
    width: 90%;
  }
  .cecFestivalPart-title {
    padding: 1.5em 4rem;
  }
  .cecFestivalPart-title p {
    font-size: 1rem;
  }
}

@media screen and (max-width: 450px) {
  .cecFestivalFechaBanner {
    left: 12rem;
    bottom: -5rem;
  }
}

@media screen and (max-width: 400px) {
  .cecFestivalInvitacion h3 {
    font-size: 1.5rem;
  }
  .cecFestival {
    margin-top: 550px;
  }
  .cecFestivalVideo-wrapper video {
    width: 270%;
  }
  .cecFestivalFechaBanner {
    left: 10rem;
  }
}