:root{
	--principal: #fff;
}

html{
    scroll-behavior: smooth;
}




a{
    cursor: url(../images/link.cur), default;
}

*::selection{
	background: #f40c48;
	color: #000;
}




/* @media (prefers-color-scheme: dark){
	:root{
		--principal: #000;
	}
} */

.dd{
	border: 2px solid white;
}

body{
	font-family: 'Space Mono', monospace !important;
	cursor: url(../images/pointer.cur), default;
	background: var(--principal);
}

.mq-a{
	color: #00d8ff;
}
.ll-r{
	color: #f40c48;
}
.f-a{
	background: #fff900;
}
.f-r{
	background: #f40c48;
}
.f-az{
	background: #00d8ff;
}

.diagonal{
	margin-left: -10px;
	position: relative;
}


/*  boton suscripcion */

.state-unsubscribed {
	font-family: 'Space Mono', monospace !important;
    background: #00e676 !important;
	padding: 12px 18px !important;
	text-transform: capitalize !important;
    border-radius: 50px !important;
    -webkit-box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6) !important;
    -moz-box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6) !important;
    box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6) !important;
	outline: none !important;
	font-weight: 400 !important;
}

.state-unsubscribed:hover{
	-webkit-box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6) !important;
    -moz-box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6) !important;
    box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6) !important;
	outline: none !important;
	font-weight: 400 !important;
}

.state-subscribed{
	font-family: 'Space Mono', monospace !important;
	background: #f40c48 !important;
	padding: 12px 18px !important;
	text-transform: capitalize !important;
    border-radius: 50px !important;
	-webkit-box-shadow: 0px 15px 51px 1px rgba(244,12,72,0.6) !important;
	-moz-box-shadow: 0px 15px 51px 1px rgba(244,12,72,0.6) !important;
	box-shadow: 0px 15px 51px 1px rgba(244,12,72,0.6) !important;
	outline: none !important;
	font-weight: 400 !important;
}

.state-subscribed:hover{
	-webkit-box-shadow: 0px 15px 51px 1px rgba(244,12,72,0.6) !important;
	-moz-box-shadow: 0px 15px 51px 1px rgba(244,12,72,0.6) !important;
	box-shadow: 0px 15px 51px 1px rgba(244,12,72,0.6) !important;
	outline: none !important;
	font-weight: 400 !important;
}


/* estilos menu */
.navbar{
	background: #000e16;
	
}
.navbar ul li{
	margin-left: 35px;
}
.navbar ul li a{
	color: #fff;
}
.nvabar ul li a:visited{
	color: #fff;
}
.navbar ul li a:hover{
	color: #00d8ff;
	text-decoration: none;
}

.espaciado{
	margin-top: 35px;
}

.logo-mini span{
	color: transparent;
}
.logo-mini-im {
	display: none;
}



/* estilos banner */
.banner{
	width: 100%;
	background: #000e16;
	padding-top: 170px;
	padding-bottom: 120px;
}
.banner h1{
	color: #fff900;
	font-size: 32px;
	margin-bottom: 30px;
}
.banner h2{
	color: #fff;
	font-size: 30px;
	margin-bottom: 40px;
}
.banner p{
	color: #bababa;
	line-height: 30px;
	font-size: 16px;
	margin-left: 20px;
	text-align: left;
}
.banner .logo-pri img{
	
    max-width: 100%;
    height: auto;
}
.logo{
	text-align: center;
}

.banner .f-a{
	color: #000;
	padding: 0px 5px 0px 5px;
}
.banner .f-r{
	color: #fff;
	padding: 0px 5px 0px 5px;
}
.banner .f-az{
	color: #000;
	padding: 0px 5px 0px 5px;
}

.menor-q{
	position: relative;
	margin-left: -20px;
}

.curriculum{
	color: #f40c48;
    position: relative;
	display: inline-block;
    padding: 5px 0px;
	margin-top: 30px;
	text-decoration: none;

}
.curriculum:visited{
	color: #f40c48;
	text-decoration: none;
	text-shadow: 0px 0px 13px #f40c48;
}
.curriculum:hover{
	color: #ffffff;
    text-decoration: none;
    text-shadow: 0px 0px 13px #00d8ff;
}


/* estilos servicios */

.servicios{

	width: 100%;
	padding-top: 130px;
	padding-bottom: 50px;
}
.servicios h3{
	font-size: 24px;
	font-weight: 700;
	color: #292929;
	margin-bottom: 30px;
}
.servicios ul li{
	line-height: 30px;
	color: #292929;
	font-size: 16px;
	position: relative;
}
.servicios ul li a .link{
	cursor: url(../images/sword2.cur), default;
	outline: none;
	text-decoration: none;
	position: absolute;
	top: 20px;
}

.servicios ul li a:hover .link{
	-webkit-animation:1s rebote infinite;
	-moz-animation:1s rebote infinite;
}
@-webkit-keyframes rebote{
	20%, 50%, 80%{
		-webkit-transform:translateY(0px);
		
	}
	40%{
		-webkit-transform:translateY(-15px);
	}
	60%{
		-webkit-transform:translateY(-5px);
	}
}
@-moz-keyframes rebote{
	20%, 50%, 80%{
		-moz-transform:translateY(0px);
	}
	40%{
		-moz-transform:translateY(-15px);
	}
	60%{
		-moz-transform:translateY(-5px);
	}
}





.servicios .f-a{
	color: #000;
	padding: 0px 10px 0px 10px;
}
.servicios .f-r{
	color: #fff;
	padding: 0px 10px 0px 10px;
}
.servicios .f-az{
	color: #000;
	padding: 0px 10px 0px 10px;
}

.img-programador{
	display: none;
}


.links{
	color: #f40c48;
	position: relative;
	border-bottom: 2px solid transparent;
	overflow: hidden;
	display: inline-block;
	padding: 5px 0px;
}
.links:hover{
	text-decoration: none;
	color: #f40c48;
}
.links::before{
	background: #f40c48;
	height: 2px;
	width: 100%;
	content: "";
	position: absolute;
	left: -120px;
	bottom: 0px;
	transition: all .5s;
	z-index: -1;
}
.links:hover::before{
	left: 0;
}
/* seccion trabajos */



.works{
	padding-top: 130px;
	padding-bottom: 50px;
	width: 100%;
}
.works h3{
	font-size: 24px;
	font-weight: 700;
	color: #292929;
	margin-bottom: 30px;
}
.works p{
	font-size: 16px;
	color: #292929;
}
.works ul li{
	
}
.works .sub-title-proyects{
	font-size: 14px;
	color: #999898;
	font-style: italic;

}
.github-img{
	text-align: center;
}

/* seccion redes sociales */

.sociales{
	width: 100%;
	padding-top: 130px;
	padding-bottom: 50px;
}
.sociales h3{
	font-size: 24px;
	font-weight: 700;
	color: #292929;
	margin-bottom: 50px;
}
.sociales ul li a{
	padding:0px 15px 0px 15px;
	font-weight: 700;
	font-size: 16px;
	border: 2px solid transparent;
}
.sociales ul li a:link{
	text-decoration: none;
	outline: none;
	
}
.sociales ul li a:visited{
	text-decoration: none;
	outline: none;
}
.sociales ul li a:hover{
	background: #fff;
}
.sociales .twitter a{
	background: #f40c48;
	color: #fff;
}
.sociales .twitter a:hover{
	
	border: 2px solid #f40c48;
	color: #f40c48;
}
.sociales .facebook a{
	background: #00d8ff;
	color: #000;
}
.sociales .facebook a:hover{
	border: 2px solid #00d8ff;
	color: #00d8ff;
}
.sociales .instagram a{
	background: #fff900;
	color: #000;
}
.sociales .instagram a:hover{
	border: 2px solid #e2aa02;
	color: #e2aa02;
}
.sociales .linkedin a{
	background: #000;
	color: #fff;
}
.sociales .linkedin a:hover{
	border: 2px solid #000;
	color: #000;
}




/* seccion contacto */
.contacto{
	width: 100%;
	background: #000e16;
	padding-top: 70px;
	padding-bottom: 30px;
}
.contacto img{
	margin-top: 70px;
}
.contacto h3, .contacto p {
	font-size: 24px;
	color: #fff;
	font-weight: 700;
}
.contacto ul{
	margin: 30px 0px 30px 0px;
}
.contacto ul li{
	color: #fff900;
	line-height: 30px;
	font-size: 18px;
}
.contacto ul li a:link{
	text-decoration: none;
	outline: none;
	color: #fff900;	
}
.contacto ul li a:hover{
	border-bottom: 2px solid #fff900;
}
.contacto .p-wh{
	color: #fff;
}
.contacto-sec{
	display: none;
}

.contacto .sms{
	justify-content: center;
	display: none;
}
.contacto .sms a:link{
	color: #fff;
	text-decoration: none;
	background: #e7a61a;
	padding: 6px 30px;
	border-radius: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 16px;
	text-shadow: 2px 0px 6px rgba(150, 150, 150, 0.5);
	-webkit-box-shadow: 0px 15px 51px 1px rgba(235,112,5,0.6);
	-moz-box-shadow: 0px 15px 51px 1px rgba(235,112,5,0.6);
	box-shadow: 0px 15px 51px 1px rgba(235,112,5,0.6);
	
}
.contacto .sms a:visited{
	color: #fff;
}

.contacto .whats{
	justify-content: center;
	display: none;
}
.contacto .whats a:link{
	color: #fff;
	text-decoration: none;
	background: #00e676;
	padding: 6px 30px;
	border-radius: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 36px;
	text-shadow: 2px 0px 6px rgba(150, 150, 150, 0.5);
	-webkit-box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6);
	-moz-box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6);
	box-shadow: 0px 15px 51px 1px rgba(0,230,118,0.6);
}



.contacto .whats a:visited{
	color: #fff;
}


.contacto .tele{
	justify-content: center;
	display: none;
}
.contacto .tele a:link{
	color: #fff;
	text-decoration: none;
	background: #179cde;
	padding: 6px 30px;
	border-radius: 20px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 36px;
	text-shadow: 2px 0px 6px rgba(150, 150, 150, 0.5);
	-webkit-box-shadow: 0px 15px 51px 1px rgba(23,156,222,0.6);
	-moz-box-shadow: 0px 15px 51px 1px rgba(23,156,222,0.6);
	box-shadow: 0px 15px 51px 1px rgba(23,156,222,0.6);
}

.contacto .tele a:visited{
	color: #fff;
}


/* seccion footer */
.pie{
	min-height: 100px;
	display: flex;
	align-items: center;
	background: #000e16;
}
.pie p{
	font-size: 16px;
	color: #fff;
	text-align: center;
	margin-bottom: 0px;
}
.pie p span:last-child{
	color: #f40c48;
}




/* -- paginas estilos */
.pages h2{
	font-size: 48px;
	margin-top: 40px;
}
.pages .image{
	text-align: center;
}
.pages .image img{
	width: 250px;
}

/* cuerpo de la pagina webs */
.webs-c{
	width: 100%;
	padding-top: 100px;
	padding-bottom: 50px;
}
.webs-c .card{
	border: none;
	margin-bottom: 150px;
}
.webs-c p:first-child{
	font-size: 14px;
	margin-bottom: 100px;
}
.webs-img{
	width: 440px;
	height: 330px;
	-webkit-box-shadow: 0px 10px 25px 1px rgba(207,207,207,1);
	-moz-box-shadow: 0px 10px 25px 1px rgba(207,207,207,1);
	box-shadow: 0px 10px 25px 1px rgba(207,207,207,1);
	margin-left: auto;
	margin-right: auto;
}
.webs-c .webs-text .card-body{
	padding-left: 125px;
	padding-top: 0;
}
.webs-c .webs-text .card-body h5{
	font-size: 68px;
	color: #cccccc;
}
.webs-c .webs-text .card-body ul li{
	font-size: 16px;
	line-height: 30px;
}
.webs-c .webs-text .card-body a:link{
	display: inline-block;
	margin-top: 25px;
	padding: 5px 50px;
	background: #00d8ff;
	text-decoration: none;
	outline: none;
	font-size: 18px;
	color: #fff;
	-webkit-box-shadow: 0px 10px 25px 1px rgba(0,216,255,0.45);
	-moz-box-shadow: 0px 10px 25px 1px rgba(0,216,255,0.45);
	box-shadow: 0px 10px 25px 1px rgba(0,216,255,0.45);
}
.webs-c .webs-text .card-body a:hover{
	background: #f40c48;
	-webkit-box-shadow: 0px 10px 25px 1px rgba(244,12,72,0.45);
	-moz-box-shadow: 0px 10px 25px 1px rgba(244,12,72,0.45);
	box-shadow: 0px 10px 25px 1px rgba(244,12,72,0.45);
}
.webs-c .webs-text .card-body a:visited{
	color: #fff;
}




/* pagina links */
.page-links{
	width: 100%;
	height: auto;
	padding-top: 50px;
	padding-bottom: 50px;
}
.page-links .cont{
	text-align: center;
}
.page-links .cont img{
	width: 120px;
}

.page-links .cont p{
	font-size: 24px;
	margin: 25px 0px;
}
.page-links .cont a:link{
	text-decoration: none;
	
}
.page-links .cont a:hover .tarjet-link{
	background: #f40c48;
	color: #fff;
	-webkit-box-shadow: 0px 0px 20px 1px rgba(244,12,72,0.5);
	-moz-box-shadow: 0px 0px 20px 1px rgba(244,12,72,0.5);
	box-shadow: 0px 0px 20px 1px rgba(244,12,72,0.5);
}
.page-links .cont .tarjet-link{
	background-color: #fff;
	-webkit-box-shadow: 0px 0px 20px 1px rgba(222,222,222,0.5);
	-moz-box-shadow: 0px 0px 20px 1px rgba(222,222,222,0.5);
	box-shadow: 0px 0px 20px 1px rgba(222,222,222,0.5);
	border-radius: 5px;
	margin-bottom: 35px;
	padding: 20px 15px;
	color: #191919;
}
.page-links .cont .tarjet-link p{
	font-size: 16px;
	margin: 0;
}



/* -------------  diseño responsivo -------------------------*/
.menu-1{
	display: block !important;
}
.menu-2{
	display: none !important;
}


@media screen and (max-width: 1199px){
	.banner h2{
		font-size: 26px;
	}
	
	/* titulo paginas webs, proyects , sobre mi */
	.pages h2{
		font-size: 48px;
	}
	
	
	
}



@media screen and (max-width: 991px){
	.espaciado{
		margin-top: 0px !important;
	}
	.hamburguesa{
		display: none;
	}
	.menu-1{
		display: none !important;
	}
	.menu-2{
		display: block !important;
		text-align: center;
	}
	.logo-mini span{
		color: #fff !important;
	}
	.logo-mini-im{
		display: inline-block !important;
	}
	.banner .perfil{
		display: none;
		
	}
	.banner h1{
		display: none;
	}
	.banner h2{
		font-size: 24px;
	}
	.banner p{
		margin-left: 0px;
	}
	
	/*--- servicios --- */
	.servicios .servicios-tarjetas{
		margin-bottom: 80px;
	}
	.img-programador{
		display: block;
	}
	
	
	/* -- trabajos -- */
	.works{
		padding-top: 0px;
	}
	
	/*-- redes sociales --*/
	.sociales{
		padding-top: 50px;
	}
	
	
	/* pages */
	.pages h2{
		font-size: 48px;
		margin-top: 10px;
	}
	
	/* cuerpo pagina webs */
	.webs-img {
    	width: 300px;
		height: 380px;
	}
	
}


@media screen and (max-width: 767px){
	.banner{
		padding-top: 120px;
		padding-bottom: 100px;
	}
	.banner h2{
		text-align: center;
	}
	.banner p{
		text-align: center;
	}
	.banner .logo-pri img{
		width: 220px;
		margin-top: 50px;

  
	}
	
	/* titulo paginas webs, proyects , sobre mi */
	
	/* pages */
	.pages h2{
		font-size: 36px;
		margin-top: 10px;
	}
	.pages .image img{
		width: 300px;
		margin-top: 40px;
	}
	.webs-c p:first-child {
		text-align: center;
	}
	.webs-c .webs-text .card-body {
		padding-left: 0px;
		
	}
	.webs-c .webs-text .card-body h5 {
		margin-top: 25px;

	}
	.webs-c .webs-text .card-body ul li {
		font-size: 14px;
	}
	.webs-img{
		width: 100%;
		height: 300px;
	}
	.webs-c .card .box{
		margin-left: 0px;
	}
	
	
	/* --- trabajos -- */
	
	.works h3{
		text-align: center;
	}
	.works img{
		margin-bottom: 30px;
	}
	.works ul li{
		text-align: center;
	}
	
	/* --- redes sociales -- */
	.sociales h3{
		text-align: center;
	}
	.sociales ul{
		display: flex;
		justify-content: center;
	}
	
	/* -- contact0 -- */
	.contacto h3{
		display: none;
	}
	.contacto-sec{
		display: block !important;
		text-align: center;
		font-size: 24px;
		color: #fff;
		font-weight: 700;
	}
	.contacto ul li{
		text-align: center;
	}
	.contacto span, .contacto p{
		display: none;
	}
	.contacto .sms,
	.contacto .whats,
	.contacto .tele{
		display: flex;
	}
	
	
	
	/* pagina offline */
	.no-conection span{
		font-size: 160px;
	}
	
	
}

@media screen and (max-width: 575px){
	.servicios .servicios-tarjetas{
		padding-left: 20%;
		padding-right: 20%;
	}
	.pages h2 {
		margin-top: 0px;
	}
	.pages .image img{
		width: 200px;
	}
	.webs-c .card .card-body{
		padding-right: 0px;
	}
	.webs-c .card .p-p{
		padding-left: 10%;
		padding-right: 10%;
	}
	.webs-c .webs-text .card-body a:link{
		padding: 5px 41.5%;
	}
	
	/* pagina offline */
	.no-conection span{
		font-size: 120px;
	}
	
}

@media screen and (max-width: 490px){
	.works strong{
		display: none;
	}
	.webs-c .webs-text .card-body a:link{
		padding: 5px 40.2%;
	}
}

@media screen and (max-width: 479px){
	.sociales ul li{
		margin: 20px 20px 20px 20px;
	}
	.webs-c .webs-text .card-body a:link{
		padding: 5px 40%;
	}
}


@media screen and (max-width: 465px){
	.banner .logo-pri img{
		display: none;
	}
	.servicios{
		padding-left: 10%;
		padding-right: 10%;
		padding-top: 100px;
	}
	.servicios .servicios-tarjetas{
		padding-left: 0;
		padding-right: 0;
	}
	.works .gato{
		width: 150px;
	}
	
	.works .lista{
		padding-left: 5%;
		padding-right: 5%;
		
	}
	.webs-c .webs-text .card-body a:link{
		padding: 5px 39.5%;
	}
	
	
}
@media screen and (max-width: 440px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 39%;
	}
	.webs-img{
		height: 200px;
	}
	
}
@media screen and (max-width: 400px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 38%;
	}

}

@media screen and (max-width: 384px){
	.works h3{
		font-size: 20px;
	}
	.webs-c .webs-text .card-body a:link{
		padding: 5px 37.5%;
	}
}

@media screen and (max-width: 364px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 36.5%;
	}
}
@media screen and (max-width: 344px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 35.5%;
	}
}
@media screen and (max-width: 324px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 34.5%;
	}
}
@media screen and (max-width: 304px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 33.5%;
	}
}
@media screen and (max-width: 284px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 32.5%;
	}
}
@media screen and (max-width: 264px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 31.5%;
	}
}
@media screen and (max-width: 244px){
	.webs-c .webs-text .card-body a:link{
		padding: 5px 30.5%;
	}
}

@media screen and (min-width: 466px){
	br{
		display: none;
		
	}
	
}


