*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
body{
	background: #0e0e0e;
}
img{
	width: 100%;
	display: block;
}
.clear{
	clear: both;
}
.center{
	margin: 0 auto;
	text-align: center;
}
.linetop{
	background: #000;
	padding: 7px 0;
}
/*** Textos ***/
h1, h2, h3, h4{
    font-family: 'DM Serif Display', serif;
    font-weight: 400 !important;
    margin-bottom: 20px !important;
}
p{
    font-family: 'Montserrat', sans-serif;
    font-weight: 400 !important;
    color: #fff;
    font-size: 1em;
    line-height: 24px;
    margin-bottom: 0 !important;
}
strong{
	font-weight: 600;
}
.t1{
	font-size: 48px;
}
.t2{
	font-weight: 700;
	font-size: 2.5em;
	padding-bottom:0;
	margin-bottom: 0;
	line-height: 1em;
	margin-bottom: 0 !important;
}
.t3{
	font-size:2em;
	font-style: italic;
}
.t4{
	font-size: 1.6em;
	font-style: italic;
	line-height: 110%;
	margin-bottom: 0 !important;
}
.t5{
	font-size:24px;
	line-height: 32px;
	text-align: center;
}
.pf{
	color: #fff;
	padding-left: 40px;
}
.white{
	color: #fff;
}
.black{
	color: #000;
}
.list1{
    font-family: 'Montserrat', sans-serif;
    font-weight: 400 !important;
    color: #fff;
    font-size: 1em;
    line-height: 24px;
    margin-left: 10px;
}
.list2{
    font-family: 'Montserrat', sans-serif;
    font-weight: 500 !important;
    color: #222;
    font-size: 1em;
    line-height: 24px;
    margin-left: 30px;
}
.parr1{
	padding-bottom: 15px;
}
/*** Contenedores ***/
.contenedor{
	position: relative;
	max-width: 1280px;
	margin: 0 auto;
}
.box1{
	width: 50%;
	position: relative;
}
.box2{
	width: 50%;
	position: relative;
}
.box3{
	width: 75%;
	margin: 0 auto;
	text-align: center;
}
.box4{
	width: 75%;
	margin: 0 auto;
	text-align: center;
	padding: 100px 0;
}
/*** Seccion 1 ***/
.cont_flex{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.cont_logo{
	width: 50%;
}
.nosotros{
	width: 85%;
	margin: 0 auto;
}
.box_servicio{
	width: 85%;
	margin: 0 auto;
}
.top_servicio{
	display: flex;
	/*flex-wrap: wrap;*/
	padding-bottom: 30px;
	align-items: center;
}
.top_servicio img{
	width: 60px;
	padding-right: 10px;
}
.head_servicios{
	padding:0;
	margin-bottom: 10px;
}
.cont_form, .cont_dire{
	width: 85%;
	margin: 0 auto;
}
/*** BGS ***/
.bg-g{
	background-image: url(../img/bg-g.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}
.bg-g2{
	background-image: url(../img/bg-g2.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}
.bg1{
	background-image: url(../img/bg1.jpg);
	padding: 300px 0 200px 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	background-attachment: fixed;
}
.cont_bg2{
	position: relative;
	padding: 150px 0;
}
.bg2::before{
	content: '';
	background: #fff;
	position: relative;
	width: 50%;
	height: 100%;
	display: block;
}
.bg2::after{
	content: '';
	background-image: url(../img/img1.jpg);
	position: absolute;
	right: 0;
	top: 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 50%;
	height: 100%;
	display: block;
}
.bg3{
	padding: 200px 0 120px 0;
}
.bg4{
	background-image: url(../img/bg2.jpg);
	background-size: cover;
	background-attachment: fixed;
	background-position: right 0;
	padding: 150px 0;
}
.bg5{
	background:#f3f3f3;
	padding: 100px 0;
	width: 100%;
	text-align: center;
}
.bg5-2{
	background:#eee;
	padding: 5px 0;
}
.bg6-1{
	padding: 100px 0;
}
.bg6{
	padding: 250px 0 150px 0;
}
.bg7{
	padding: 200px 0 50px 0;
}
.bg_t_serv{
	padding: 200px 0 10px 0;
}
.bg_servicios{
	padding: 0 0 50px 0;
}
/*** Btn Whats ***/
.cont_whats{
	top: 0;
	right: 0;
	height: 100vh;
	padding: 50px 0 50px 30px;
	position: fixed;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 2;
}
.cont_whats a{
	background: #1bd741;
	width: 50px;
	height: 50px;
	display: block;
	transition: all .4s ease;
	padding: 5px;
}
.cont_whats a:hover{
	background: #000;
}
/*** Botones ***/
.btn1, .btn2{
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: .9em;
	text-decoration: none;
	letter-spacing: 0.5px;
	color: #fff;
	display: block;
	width: 200px;
	border-radius: 30px;
	text-align: center;
	text-transform: uppercase;
	transition-property: all;
	transition-duration: 0.4s;
	padding: 15px 0;
}
.btn1{
	background: #6d107a;
	border: 3px solid #ff00ff;
}
.btn1:hover{
	background: #3E67AA;
	color: #fff;
}
.btn2{
	border: 3px solid #fff;
}
.btn2:hover{
	background: #3E67AA;
	border: 3px solid #ff00ff;
	color: #fff;
}
.btn3{
	color: #ff00ff;
}
/*** Form ***/
input[type=text]{
	background: #f3f3f3;
	font-size: .9em;
	padding: 1.5em 1em;
	border: none;
	outline:0 none;
	width: 100%;
	margin-bottom: 20px;
	border-radius: 6px;
	border: 1px solid #c90ee4;
}
/*input[type=text]:focus, input[type=mail]:focus{
	border: 1px solid red;
}*/
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active  {
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}
textarea{
	color: #c5c4c4;
	width: 100%;
	background: #404040;
	margin: 10px;
	padding: 1em;
	border: none;
	border-radius: 3px;
	height: 150px;
	outline:0 none;
}
::placeholder {
	color: #c5c4c4;
	text-transform: uppercase;
}
::-webkit-input-placeholder {
	color: #c5c4c4;
	text-transform: uppercase;
}
input[type=submit]{
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: .9em;
	text-decoration: none;
	letter-spacing: 0.5px;
	color: #fff;
	display: block;
	width: 200px;
	background: #6d107a;
	border: 3px solid #ff00ff;
	border-radius: 30px;
	text-align: center;
	text-transform: uppercase;
	transition-property: all;
	transition-duration: 0.4s;
	padding: 15px 0;
	cursor: pointer;
	-webkit-appearance: none;
	-webkit-appearance: none;
	appearance: auto;
}
input[type=submit]:hover{
	background: #000;
}
/*** Footer ***/
footer{
	width: 100%;
	background: #350542;
	padding: 100px 0;
}
.sub_footer{
	padding: 15px 0;
	background: #000;
	color: #dcdcdc;
	text-align: center;
	font-size: 12px;
}
.cont_footer{
	width: 100%;
	margin: 0 auto;
	display: flex;
	align-items: flex-start;
}
.cont_footer img{
	width: 10%;

}
.cont_footer div{
	width: 45%;
	padding:0 25px;
}
/*** Otros ***/
.pluma{
	margin: 0 auto 40px auto;
	width: 200px;
}
.hr1{
	margin: 0 auto 25px auto;
    width: 100%;
    border: 0;
    border-top: 1px solid #d059e7;
}
.border_b{
	padding-bottom: 35px;
	padding-top: 35px;
	border-bottom: 1px dashed #a282a7;
}
.cv{
	width: 300px;
	margin: 0 auto;
}
.display_img{
	display: none;
}
.img_s{
	padding-bottom: 30px;
}
.link{
	color: #fff;
	text-decoration: none;
}
.link:hover{
	color: #ff00ff;
}
/*** INICIO ***/
.bg_inicio{
	background-image: url(../img/bg_inicio.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}
.cont_logos{
	position: absolute;
	left: 50%;
	margin-left: -200px;
	top: 40%;
	margin-top: -100px;
	width: 400px;
	display: flex;
	flex-wrap: wrap;
}
.cont_logos a{
	width: 50%;
	padding: 10px;
	box-sizing: border-box;
	transition-property: all;
	transition-duration: 0.4s;
}
.cont_logos a:hover{
	opacity: 0.6;
}
.cont_logos div{
	text-align: center;
	font-size: 24px;
	width: 100%;
	padding-top: 50px;
	color: #513168;
	text-transform: uppercase;
	letter-spacing: 15px;
}

/*** Cursos ***/
.bg_cursos{
	background: #fff;
}
.bg_cursos:nth-of-type(odd){
	background: #f2f2f2;
}
.bg_cursos:nth-of-type(even){
	background: #fff;
}
.cont_curso{
	max-width: 1280px;
	padding: 50px 0;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
.box_img_curso{
	width: 40%;
	padding: 0 32px;
}
.info_curso{
	width: 60%;
	padding: 0 32px;
	border-left: 1px solid #ccc;
}
.tabla_info{
	font-family: 'Montserrat', sans-serif;
	font-size: .9em;
	margin-bottom: 30px;
}
.tabla_info td{
	padding: 2px 10px;
}
.pc1{
	font-size: .9em;
	color: #404040;
	padding-bottom: 24px;
}
.tc1{
	font-family: 'Montserrat', sans-serif;
	color: #6c21a1;
	font-weight: 700 !important;
	font-size: 1.6em;
}
.tc2{
	font-family: 'Montserrat', sans-serif;
	color: #6c21a1;
	font-weight: 700 !important;
	font-size: 1.2em;
}
.social{
	width: 80px;
	margin-left: 40px;
}
.social img{
	width: 25px;
}
.box_flex_imgs{
	display: flex;
	flex-wrap: wrap;
}
.box_flex_imgs div{
	width: 33.3333%;
	padding: 1px;
}
.colorm{
	color: #d059e7;
}

/*** Galeria ***/
.bg_gal{
	width: 100%;
	padding: 30px 10px 50px 10px;
}
.cont_gal_flex{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	gap: 5px;
}
.box_gal_box{
	flex: 1 0 21%; /* Ajusta el tamaño del contenedor de la imagen */
	max-width: 24%; /* Mantiene un margen y espacio entre las imágenes */
}
.box_gal_box img {
    width: 100%;
    height: 200px; /* Altura fija para todas las imágenes */
    object-fit: cover; /* Hace que la imagen cubra todo el contenedor */
    display: block; /* Elimina el espacio blanco debajo de las imágenes */
}
a.btn_gal{
	opacity: 1;
	transition-property: all;
	transition-duration: 0.4s;
}
a.btn_gal:hover{
	opacity: 0.8;
}


/*** Menu Serv ***/
.menu_serv li{
	padding: 3px;
}
.menu_serv li a{
	color: #fff !important;
	background: #6d107a;
	border-radius: 7px;
	padding: 4px 15px;
	font-size: .7em;
	text-transform: uppercase;
	transition-property: all;
	transition-duration: 0.4s;
}
.menu_serv li a:hover{
	background: #ff00ff;
}


	.menu_sub_mov{
		display: none;
		position: fixed;
	}