/* =================================================================== */
/*
/*  01. =webfonts and iconfonts
/*  02. =preloader
/*  03. =theme common styles
/*  04. =header styles
/*  05. =hero section
/*  06. =portfolio styles
/*  07. =services
/*  08. =footer
/*	09. =misionvision
/* =================================================================== */

/** 
/* 01. =webfonts and iconfonts
/* =================================================================== */

@import url("fonts.css");
@import url("font-awesome/css/font-awesome.min.css");

/* Body 
---------------------------------------------------------------------- */
html,
body {
	height: 100%;
}

body {
	background: #0F1215;
	font: 16px/30px "merriweather-regular", serif;
	font-weight: normal;
	color: #575859;
}

/* links 
---------------------------------------------------------------------- */
a,
a:visited {
	outline: none;
	color: white;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

a:hover,
a:focus {
	color: #fdc501;
}

/* Typography
--------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "raleway-heavy", sans-serif;
	color: #FFFFFF;
	font-style: normal;
	text-rendering: optimizeLegibility;
	margin: 18px 0 15px;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
	font-weight: inherit;
}

h1 {
	font-size: 30px;
	line-height: 36px;
	margin-top: 0;
	letter-spacing: -1px;
}

h2 {
	font-size: 24px;
	line-height: 30px;
}

h3 {
	font-size: 20px;
	line-height: 30px;
}

h4 {
	font-size: 17px;
	line-height: 30px;
}

h5 {
	font-size: 14px;
	line-height: 30px;
	margin-top: 15px;
	text-transform: uppercase;
	letter-spacing: 1px;
}

h6 {
	font-size: 13px;
	line-height: 30px;
	margin-top: 15px;
	text-transform: uppercase;
	letter-spacing: 1px;
}

p {
	margin: 15px 0 15px 0;
}

p img {
	margin: 0;
}

p.lead {
	font: 20px/36px, Helvetica;
	color: #707273;
}

em {
	font: 16px/30px "merriweather-italic", serif;
	font-style: normal;
}

strong,
b {
	font: 16px/30px "merriweather-bold", serif;
	font-weight: normal;
}

small {
	font-size: 11px;
	line-height: inherit;
}

blockquote {
	margin: 18px 0px;
	padding-left: 40px;
	position: relative;
}

blockquote:before {
	content: "\201C";
	opacity: 0.45;
	font-size: 80px;
	line-height: 0px;
	margin: 0;
	font-family: Helvetica;
	position: absolute;
	top: 30px;
	left: 0;
}

blockquote p {
	font-family: georgia, serif;
	font-style: italic;
	padding: 0;
	font-size: 18px;
	line-height: 30px;
}

blockquote cite {
	display: block;
	font-size: 12px;
	font-style: normal;
	line-height: 18px;
}

blockquote cite:before {
	content: "\2014 \0020";
}

blockquote cite a,
blockquote cite a:visited {
	color: #707273;
	border: none;
}

abbr {
	font-family: "merriweather-bold", serif;
	font-variant: small-caps;
	text-transform: lowercase;
	letter-spacing: .5px;
	color: #707273;
}

pre,
code {
	font-family: Consolas, "Andale Mono", Courier, "Courier New", monospace;
}

pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

code {
	padding: 3px;
	background: #ECF0F1;
	color: #707273;
	border-radius: 3px;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

mark {
	background: #FFF49B;
	color: #000;
}

hr {
	border: solid #707273;
	border-width: 1px 0 0;
	clear: both;
	margin: 23px 0 12px;
	height: 0;
}

/* Lists  
--------------------------------------------------------------------- */
ul,
ol {
	margin-top: 15px;
	margin-bottom: 15px;
}

ul {
	list-style: disc;
	margin-left: 17px;
}

dl {
	margin: 0 0 15px 0;
}

dt {
	margin: 0;
	color: #fdc501;
}

dd {
	margin: 0 0 0 20px;
}

/* Floated image  
--------------------------------------------------------------------- */
img.pull-right {
	margin: 12px 0px 0px 18px;
}

img.pull-left {
	margin: 12px 18px 0px 0px;
}

/* Style Placeholder Text  
--------------------------------------------------------------------- */
::-webkit-input-placeholder {
	color: #12151B;
}

:-moz-placeholder {

	/* Firefox 18- */
	color: #12151B;
}

::-moz-placeholder {

	/* Firefox 19+ */
	color: #12151B;
}

:-ms-input-placeholder {
	color: #12151B;
}

.placeholder {
	color: #12151B !important;
}

/* block grids default paddings 
--------------------------------------------------------------------- */
.bgrid {
	padding: 0 20px;
}

@media only screen and (max-width:1024px) {
	.bgrid {
		padding: 0 18px;
	}

}

@media only screen and (max-width:768px) {
	.bgrid {
		padding: 0 15px;
	}

}

@media only screen and (max-width:600px) {
	.bgrid {
		padding: 0 10px;
	}

}

@media only screen and (max-width:400px) {
	.bgrid {
		padding: 0;
	}

}


/* 
/* 02. =Preloader
/* =================================================================== */

#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #0F1215;
	z-index: 9999999;
	height: 100%;
	width: 100%;
}

.no-js #preloader,
.oldie #preloader {
	display: none;
}

#loader {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 50px;
	height: 50px;
	margin-left: -25px;
	margin-top: -25px;
	background-color: #fdc501;
	-webkit-animation: sk-rotateplane 1.2s infinite ease-in-out;
	animation: sk-rotateplane 1.2s infinite ease-in-out;
}

@-webkit-keyframes sk-rotateplane {
	0% {
		-webkit-transform: perspective(120px);
	}

	50% {
		-webkit-transform: perspective(120px) rotateY(180deg);
	}

	100% {
		-webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg);
	}

}

@keyframes sk-rotateplane {
	0% {
		-webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
		transform: perspective(120px) rotateX(0deg) rotateY(0deg);
	}

	50% {
		-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
		transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
	}

	100% {
		-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
		transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
	}

}

/** 
/* 03. =theme common styles
/* =================================================================== */

/* hr */
hr {
	border: solid #283436;
	border-width: 3px 0 0;
	width: 100px;
	margin: 11px 0 30px;
	height: 0;
	clear: both;
	text-align: left;
	-moz-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

/* for css animations */
.show {
	filter: alpha(opacity=100);
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	opacity: 1;
	zoom: 1;
}

/* sections */
.section-head h1 {
	font: 15px/30px "raleway-heavy", sans-serif;
	text-transform: uppercase;
	letter-spacing: 2.5px;
	color: #FFFFFF;
	margin-bottom: 30px;
	margin-top: 18px;
}

.section-head h1 span {
	color: #fdc501;
	position: relative;
	left: 3px;
}

.section-head p {
	font: 20px/36px, Helvetica;
	width: 95%;
}

.section-head:hover h1 + hr {
	border-color: #fdc501;
	width: 120px;
	text-align: left;
}

@media only screen and (max-width:768px) {
	.section-head {
		text-align: center;
	}

	.section-head p {
		font: 18px/36px Helvetica;
		width: auto;
	}

	.section-head h1 + hr {
		margin-left: auto;
		margin-right: auto;
	}

}

@media only screen and (max-width:600px) {
	.section-head p {
		font: 17px/33px, Helvetica;
		width: auto;
	}

}

@media only screen and (max-width:400px) {
	.section-head [class*="column"] {
		padding: 0;
	}

}


/** 
/* 04. =header styles
/* =================================================================== */

header {
	height: 66px;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 600;
	-moz-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;  

	
}
header.opaque {
	background: black;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* header logo */


/* header social */
header .header-social {
	font-size: 20px;
	font-weight: normal;
	line-height: 66px;
	margin-top: 0;
	margin-left: 30px;
	padding-left: 36px;
	border-left: 1px solid rgba(150, 150, 150, 0.2);
	float: left;
	position: relative;
	top: -1px;
}

header .header-social li {
	display: inline-block;
	margin-right: 15px;
}

header .header-social li a {
	color: #FFFFFF;
}

header .header-social li a:hover {
	color: #fdc501;
}

/* media queries:  
/* header/header components */
@media only screen and (max-width:880px) {
	header .header-social {
		display: none;
	}

}

@media only screen and (max-width:768px) {
	header {
		background: black;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}

	header .row {
		width: 100%;
	}

	header .logo {
		margin-left: -30px;
	}

}

/* primary navigation
--------------------------------------------------------------------- */
#nav-wrap,
#nav-wrap ul,
#nav-wrap li,
#nav-wrap a {
	margin: 0;
	padding: 0;
}

/* nav-wrap */
#nav-wrap {
	font: 13px "raleway-heavy", sans-serif;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	float: left;  
}

/* hide toggle button */
#nav-wrap > a {
	display: none;
}

ul#nav {
	min-height: 66px;
	display: inline-block;
	width: auto;  

	/* left align the menu */
	text-align: left;
}

ul#nav li {
	position: relative;
	list-style: none;
	display: inline-block;
	height: 66px;    
}

/* Links */
ul#nav li a {

	/* 14px padding top + 14px padding bottom + 38px line-height = 66px */
	display: block;
	padding: 14px 12px;
	line-height: 38px;
	text-decoration: none;
	text-align: left;
	color: #FFFFFF;
	position: relative;
	-moz-transition: color 0.2s ease-in-out;
	-o-transition: color 0.2s ease-in-out;
	-webkit-transition: color 0.2s ease-in-out;
	-ms-transition: color 0.2s ease-in-out;
	transition: color 0.2s ease-in-out;
}

ul#nav li a:hover {
	color: #fdc501;
}

ul#nav li a:active {
	background-color: transparent !important;
}

ul#nav li.current a {
	color: #fdc501;
}

ul#nav li.current a:after {
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 40px;
	height: 2px;
	margin-left: -23px;
	background-color: white;
	content: '\0020';
	display: block;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

/* mobile navigation 
--------------------------------------------------------------------- */
@media only screen and (max-width:768px) {
	#nav-wrap {
		z-index: 700;
		display: block;
		width: 100%;
		float: none;
		position: absolute;
		top: 0;
		right: 0;
	}

	/* mobile-btn and toggle-btn */
	#nav-wrap > a {
		border: none;
		color: #FFFFFF;
		height: 40px;
		min-width: 40px;
		font-size: 12px;
		text-align: left;
		float: right;
		display: block;
		padding: 0;
		position: relative;
		top: 13px;
		right: 20px;
	}

	#nav-wrap > a:hover .menu-icon {
		background: #FFFFFF;
	}

	#nav-wrap .menu-icon {
		display: inline-block;
		width: 24px;
		height: 3px;
		margin-top: -3px;
		position: absolute;
		right: 8px;
		top: 50%;
		bottom: auto;
		left: auto;
		background: #fdc501;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		-webkit-transition: all 0.3s ease-in-out;
		-ms-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
		font: 0/0 a;
		text-shadow: none;
		color: transparent;
	}

	#nav-wrap .menu-icon:before,
	#nav-wrap .menu-icon:after {
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		background-color: inherit;
		left: 0;
	}

	#nav-wrap .menu-icon:before {
		bottom: 8px;
	}

	#nav-wrap .menu-icon:after {
		top: 8px;
	}

	/* dropdown nav */
	#nav-wrap ul#nav {
		background: #1c212a;
		padding: 54px 45px 60px 45px;
		margin: 0;
		height: auto;
		display: none;
		clear: both;
		width: 100%;
		float: none;
		position: absolute;
		top: 66px;
		right: 0;
	}

	#nav-wrap ul#nav > li {
		display: block;
		float: none;
		height: auto;
		text-align: left;
		border-bottom: 1px dotted rgba(200, 200, 200, 0.1);
		padding: 6px 0;
	}

	#nav-wrap ul#nav > li:first-child {
		border-top: 1px dotted rgba(200, 200, 200, 0.1);
	}

	#nav-wrap ul#nav li a {
		display: block;
		width: auto;
		padding: 0;
		color: #cacbcb;
		padding: 12px 0;
		line-height: 16px;
		border: none;
	}

	#nav-wrap ul#nav li a:hover {
		color: #FFFFFF;
	}

	#nav-wrap ul#nav li.current > a {
		background: none;
		color: #fdc501;
	}

	#nav-wrap ul#nav li.current > a:after {
		display: none;
	}

	#nav-wrap a.mobile-btn {
		display: none;
	}

	.js #nav-wrap a#toggle-btn {
		display: block;
	}

	/* if js is disabled */
	.no-js #nav-wrap:not(:target) > a:first-of-type,
	.no-js #nav-wrap:target > a:last-of-type {
		display: block;
	}

	.no-js #nav-wrap:target ul#nav {
		display: block;
	}

}

/* make sure the menu is visible on larger screens
--------------------------------------------------------------------- */
@media only screen and (min-width:769px) {
	#nav-wrap ul#nav {
		display: block !important;
	}

}


/* 
/* 05. =hero section
/* =================================================================== */

#inicio {
    position: relative;
    min-height: 630px;
    width: 100%;
    text-align: center;
    border-bottom: 1px solid #15191d;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.inicio-image-pc, .hero-image-movil {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: -1;
    animation: shine 2s infinite; /* Aplicar animación a ambas imágenes */
}

.hero-image-movil {
    display: none; /* Ocultar imagen para móvil por defecto */
}

.hero-content {
    z-index: 1;
    padding: 0 20px;
}

.hero-content h1 {
    font-size: 3em;
    color: white;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
    margin-bottom: 20px;
}

#back-to-top {
    display: inline-block;
    margin-top: 20px;
    padding: 10px 20px;
    background-color: #e64e04;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    transition: background-color 0.3s ease;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999;
}

#back-to-top:hover {
    background-color: #fdc501;
}

#back-to-top:active {
    background-color: #d9531e;
}

@keyframes shine {
    0% {
        filter: brightness(0.5) contrast(1);
    }
    50% {
        filter: brightness(1.2) contrast(1.2);
    }
    100% {
        filter: brightness(0.5) contrast(1);
    }
}

/* Responsivo para tabletas y pantallas más pequeñas */
@media (max-width: 768px) {
    .hero-content h1 {
        font-size: 2em;
    }

    #back-to-top {
        padding: 8px 16px;
    }
}

/* Estilo para pantallas pequeñas (móviles) */
@media (max-width: 480px) {
    .hero-image-pc {
        display: none; /* Ocultar imagen para PC en móviles */
    }

    .hero-image-movil {
        display: block; /* Mostrar imagen para móvil */
    }

    .hero-content h1 {
        font-size: 1.5em;
    }

    #back-to-top {
        padding: 6px 12px;
        bottom: 10px;
        right: 10px;
    }
}



/** 
/* 06. =portfolio styles
/* =================================================================== */

#conocemos {
	background: #111417;
	padding-top: 120px;
	border-bottom: 1px solid #15191d;  
}

#conocemos .row.items {
	max-width: 1260px;
	margin-top: 24px;
}

/* Media Queries - Portfolio */
@media only screen and (max-width:1300px) {
	#conocemos .row.items {
		width: 100%;
		padding: 0;
	}

	#portfolio .row.items .columns {
		padding: 0;
	}
}

#portfolio-wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px; /* Espacio entre las imágenes */
	justify-content: center;
	margin-top: 36px;
}

/* Media Queries para ajustes responsivos */
@media only screen and (max-width: 900px) {
	#portfolio-wrapper {
		grid-template-columns: repeat(2, 1fr); /* 2 columnas en pantallas más pequeñas */
	}
}

@media only screen and (max-width: 600px) {
	#portfolio-wrapper {
		grid-template-columns: 1fr; /* 1 columna en pantallas más pequeñas */
	}
}

.folio-item {
	position: relative;
	overflow: hidden;
}

.folio-item .item-wrap img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.5s ease-in-out;
}

.folio-item:hover .item-wrap img {
	transform: scale(1.1);
}

.folio-item .item-wrap {
	background: #11141700;
	overflow: hidden;
	position: relative;
}

.folio-item .item-wrap a {
	display: block;
	cursor: pointer;
	position: relative;
}

/* Overlay */
.folio-item .item-wrap .overlay {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.85);
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
}

.folio-item .item-wrap .link-icon {
	display: block;
	height: 30px;
	width: 30px;
	margin-left: -15px;
	margin-top: -15px;
	font-size: 14px;
	line-height: 30px;
	text-align: center;
	color: #FFFFFF;
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transition: opacity 0.5s ease-in-out;
}

.folio-item .portfolio-item-meta {
	width: 100%;
	text-align: center;
	position: absolute;
	top: 20%;
	left: -100px;
	opacity: 0;
	transition: all 0.5s ease-in-out;
}

.folio-item .portfolio-item-meta h5 {
	font: 14px/21px, Helvetica;
	letter-spacing: 2px;
	color: white;
	margin: 0;
}

.folio-item .portfolio-item-meta p {
	font: 14px/18px, Helvetica;
	color: #8A8A8A;
	margin: 0;
}

/* Hover effects */
.folio-item:hover .overlay,
.folio-item:hover .link-icon,
.folio-item:hover .portfolio-item-meta {
	opacity: 1;
}

.folio-item:hover .portfolio-item-meta {
	left: 0;
}

/* Media Queries - .portfolio-item-meta */
@media only screen and (max-width:500px) {
	.folio-item .portfolio-item-meta {
		top: 16%;
	}

	.folio-item .portfolio-item-meta h5 {
		font: 13px/21px, Helvetica;
		letter-spacing: 1px;
	}

	.folio-item .portfolio-item-meta p {
		font: 13px/18px, Helvetica;
	}
}

@media only screen and (max-width:400px) {
	.folio-item .portfolio-item-meta {
		top: 12%;
	}

	.folio-item .portfolio-item-meta h5 {
		font: 11px/18px, Helvetica;
		letter-spacing: 1px;
	}

	.folio-item .portfolio-item-meta p {
		font: 11px/16px, Helvetica;
	}
}

/* Popup Modal */
.popup-modal {
	max-width: 550px;
	background: #FFFFFF;
	position: relative;
	margin: 0 auto;  	
}

.popup-modal .media {
	position: relative;
}

.popup-modal img {
	vertical-align: bottom;
}

/* Description */
.popup-modal .description-box {
	padding: 6px 36px 30px;
}

.popup-modal .description-box h4 {
	font: 15px/24px, Helvetica;
	color: #000000;
}

.popup-modal .description-box p {
	font: 14px/24px, Helvetica;
	color: #000000;
	margin-bottom: 12px;
}

/* Categories */
.popup-modal .categories {
	font: 50px/10px, Helvetica;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-align: left;
	color: #000000;
}

/* Link box */
.popup-modal .link-box {
	width: 100%;
	overflow: hidden;
	background: #000000;
}

.popup-modal .link-box a {
	font: 12px/60px "raleway-heavy", sans-serif;
	color: #fff6f6;
	text-transform: uppercase;
	letter-spacing: 2px;
	cursor: pointer;
	display: block;
	text-align: center;
	width: 50%;
	transition: all 0.3s ease-in-out;
}

.popup-modal .link-box a:first-child {
	border-right: 1px solid rgba(200, 200, 200, 0.1);
}

.popup-modal .link-box a:hover {
	background: #fdc501;
	color: #000000;
	border: none;
}

/* Modal Transition Effects */
.mfp-fade.mfp-bg {
	opacity: 0;
	transition: all 0.3s ease-in-out;
}

.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.8;
}

.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	transform: translateY(-100%);
	transition: all 0.3s ease-in-out;
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
	transform: translateY(0);
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0;
	transform: translateY(-100%);
}

  /* Media Queries para ajustes responsivos */
  @media only screen and (max-width: 900px) {
	#portfolio-wrapper {
	  grid-template-columns: repeat(2, 1fr); /* 2 columnas en pantallas más pequeñas */
	}
  }
  
  @media only screen and (max-width: 600px) {
	#portfolio-wrapper {
	  grid-template-columns: 1fr; /* 1 columna en pantallas aún más pequeñas */
	}
  }
  
/* 
/* 07. =services
/* =================================================================== */

#Servicios {
	background: #12151B;
	padding-top: 120px;
	padding-bottom: 120px;
	border-bottom: 1px solid #15191d;
}

.service-list {
	margin: 18px -2px 0;
}

.service-list .bgrid {
	padding: 0 22px 6px;
}

.service-list .bgrid {
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	border-radius: 5px;
}

.service-list .bgrid:hover {
	background: rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width:600px) {
	.service-list .bgrid:hover {
		background: inherit;
	}

}

#Servicios .service-list h3 {
	font: 18px/36px, Helvetica;
	color: #fdc501;
	padding: 0;
	text-transform: none;
	text-align: left;
	margin-bottom: 6px;
}

/* media queries:  
/* #services / .service-list */

@media only screen and (max-width:1024px) {
	.service-list {
		margin: 18px 0 0;
	}

	.service-list .bgrid {
		padding: 0 18px 6px;
	}

}

@media only screen and (max-width:768px) {
	.service-list .bgrid {
		padding: 0 15px 6px;
	}

}

@media only screen and (max-width:600px) {
	.service-list .bgrid {
		padding: 0 10px 6px;
	}

}

@media only screen and (max-width:400px) {
	.service-list .bgrid {
		padding: 0 0 6px;
	}

}



/* loader animation 
------------------------------------------- */
.s-loader {
	margin: 12px auto 30px;
	width: 70px;
	text-align: center;
	-moz-transform: translateX(2.5px);
	-o-transform: translateX(2.5px);
	-webkit-transform: translateX(2.5px);
	-ms-transform: translateX(2.5px);
	transform: translateX(2.5px);
}

.s-loader > div {
	width: 12px;
	height: 12px;
	background-color: #FFFFFF;
	border-radius: 100%;
	display: inline-block;
	margin-right: 5px;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.s-loader .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.s-loader .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
	0%,
	80%,
	100% {
		-moz-transform: scale(0);
		-o-transform: scale(0);
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
	}

	40% {
		-moz-transform: scale(1);
		-o-transform: scale(1);
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
	}

}

@keyframes sk-bouncedelay {
	0%,
	80%,
	100% {
		-moz-transform: scale(0);
		-o-transform: scale(0);
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
	}

	40% {
		-moz-transform: scale(1);
		-o-transform: scale(1);
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
	}

}


/** 
/* 08. =footer
/* =================================================================== */

footer {
	padding-top: 60px;
	padding-bottom: 24px;
	position: relative;
	color: rgba(255, 255, 255, 0.15);
}

footer .content {
	margin-bottom: 12px;
}

footer a,
footer a:visited {
	color: #a3a4a6;
}

footer a:hover,
footer a:focus {
	color: #fdc501;
}

footer hr {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	max-width: 400px;
	width: 80%;
	border-top: 1px solid rgba(150, 150, 150, 0.1);
}

footer .info {
	width: 90%;
	max-width: 600px;
	margin: 42px auto 36px;
	text-align: center;
	clear: both;
}

footer .footer-logo {
	width: 100px;
	height: 23px;
	background: url("../images/logoW@2x.png") no-repeat center;
	background-size: 100px 23px;
	margin: 0 auto 21px;
	display: block;
	filter: alpha(opacity=10);
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
	opacity: 0.1;
	zoom: 1;
}

/* copyright */
footer .copyright {
	clear: both;
	margin: 15px 0;
	padding: 24px 18px 6px 18px;
	font: 14px/24px, Helvetica;
	letter-spacing: .5px;
	text-align: center;
}

footer .copyright li {
	display: inline-block;
	padding: 0 5px;
}

/* social links */
footer .social-links {
	margin: 30px auto 42px auto;
	padding: 0;
	font-size: 38px;
	text-align: center;
}

footer .social-links li {
	display: inline-block;
	margin: 0;
	padding: 0;
	margin-left: 32px;
}

footer .social-links li a {
	color: rgba(255, 255, 255, 0.1);
}

footer .social-links li a:hover {
	color: white;
}

footer .social-links li:first-child {
	margin-left: 0;
}

/* media queries - .social-links */

@media only screen and (max-width:600px) {
	footer .social-links {
		font-size: 32px;
	}

	footer .social-links li {
		margin-left: 18px;
	}

}

@media only screen and (max-width:450px) {
	footer .social-links {
		font-size: 28px;
	}

	footer .social-links li {
		margin-left: 14px;
	}

}

@media only screen and (max-width:400px) {
	footer .social-links {
		font-size: 25px;
	}

	footer .social-links li {
		margin-left: 12px;
	}

}

@media only screen and (max-width:350px) {
	footer .social-links {
		font-size: 22px;
	}

	footer .social-links li {
		margin-left: 10px;
	}

}

/* go to top button 
------------------------------------------------------------------ */
#go-top {
	position: absolute;
	top: -21px;
	left: 50%;
	z-index: 600;
}

#go-top a {
	text-decoration: none;
	border: 0 none;
	display: block;
	height: 54px;
	width: 200px;
	margin-left: -100px;
	background: #e64e04;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
	color: #FFFFFF;
	text-align: center;
	border-radius: 3px;
	font: 12px/54px "raleway-heavy", sans-serif;
	text-transform: uppercase;
	letter-spacing: 2px;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

#go-top a:hover {
	background: #fdc501;
	color: #000000;
}

#go-top a i {
	margin-left: 6px;
	position: relative;
	right: -5px;
}
#back-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background-color: orange;
    color: white;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: transform 0.3s ease-in-out;
}

#back-to-top:hover {
    background-color: darkorange;
}

#back-to-top {
    animation: floating 3s infinite ease-in-out;
}

@keyframes floating {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
    100% {
        transform: translateY(0);
    }
}

/* 09. mision-vision */
.mision-vision {
    display: flex;
    justify-content: space-around;
    align-items: stretch;
    padding: 50px 0;
    background-color: #0F1215;
    flex-wrap: wrap; /* Permite que los elementos se ajusten en una columna en móviles */
}

.cuadro {
    background-color: #0F1215;
    color: #ffffff;
    padding: 20px;
    border-radius: 20px;
    width: 45%;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cuadro h2 {
    color: #fdc501;
    margin-bottom: 15px;
    font-size: 24px;
    font: 18px/36px, Helvetica;
}

.cuadro p {
    font-size: 16px;
    line-height: 1.5;
    margin: 0;
    flex-grow: 1;
    font: 14px/24px, Helvetica;
}

.cuadro:hover {
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

.list li {
    font: 14px/24px, Helvetica;
    color: #000000;
}

.p {
    color: #ffffff;
}

.p_modal p {
    color: #000000;
}

.p_modal li {
    color: #000000;
}

/* Media query para móviles */
@media screen and (max-width: 768px) {
    .mision-vision {
        flex-direction: column;
        align-items: center;
    }

    .cuadro {
        width: 80%; /* Asegura que el cuadro ocupe un buen espacio en la pantalla */
        margin-bottom: 20px; /* Añade espacio entre los cuadros */
    }
}


#hero {
	position: relative;
	width: 100%;
	height: 100vh; /* La sección ocupará la altura total de la pantalla */
	overflow: hidden;
}

.hero-background {
	width: 100%;
	height: 100%;
	object-fit: cover; /* La imagen cubrirá toda la sección sin distorsionarse */
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1; /* Coloca la imagen detrás del contenido */
}

.hero-content {
	position: relative;
	z-index: 1; /* Asegura que el contenido esté por encima de la imagen */
	text-align: center;
	color: rgb(255, 249, 249); /* Ajusta según el contraste necesario */
}
.services-table {
    width: 100%;
    max-width: 6000px; /* Más compacto y adecuado para dos columnas */
    margin: 10px auto;
    border-collapse: collapse;
    background-color: transparent;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.services-table th, .services-table td {
    padding: 8px; /* Más compacto */
    text-align: left;
}

.services-table .centered-header {
    text-align: center;
    background-color: #d4af37; /* Color dorado */
    color: black;
    font-size: 1em; /* Un poco más pequeño */
}

.services-table tr {
    background-color: #00000000; /* Fondo transparente */
}

.services-table td {
    color: white; /* Letras de color blanco */
    font-size: 1.2em; /* Tamaño de texto más pequeño */
}

.contact-section {
	background-color: #f4f4f400;
	padding: 20px;
	border-radius: 8px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.contact-info {
	display: flex;
	align-items: center;
	flex-wrap: wrap; /* Permite que los elementos se ajusten en pantallas pequeñas */
}

.contact-logo {
	width: 100%; /* Ocupa todo el ancho disponible */
	max-width: 300px; /* El tamaño máximo será de 300x300 px */
	height: auto; /* Mantiene la proporción de la imagen */
	margin-right: 20px;
}

.contact-details {
	flex-grow: 1; /* Permite que los detalles de contacto ocupen el espacio restante */
}

.contact-details p {
	margin: 0;
	font-size: 1.2em;
	color: #ffffff;
	

    line-height: 1.5;
    margin: 0;
    flex-grow: 1;
    font: 14px/24px, Helvetica;

}

/* Ajustes para pantallas pequeñas */
@media (max-width: 600px) {
	.contact-info {
		flex-direction: column; /* Cambia a una columna en pantallas pequeñas */
		align-items: center;
		text-align: center;
	}

	.contact-logo {
		margin-right: 0;
		margin-bottom: 10px;
	}
}
