/* CSS Document */

/* HEADER FIJO */
.header {
	width: 100%;
	background-color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}




/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	font-family: 'Raleway', sans-serif;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;	
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}




.container
{
	max-width: 1080px;
	width: 100%;
	margin: 0 auto;
}
.logo
{
	float:left;
}
.logo h1 a
{
	font-family: 'Raleway', sans-serif;
	text-decoration: none;
	color: #1C97CA;
	font-size: 32px;
	font-weight: 100;
	padding: 20px 0px;
	display: block;
	letter-spacing: 4px;
	text-transform: uppercase;
	
}
.menu
{
	float: right;
}
.menu ul li
{
	display: inline-block;
	padding: 33px 15px;
}
.menu ul li a
{
	float:right;
	font-family: 'Raleway', sans-serif;
	text-decoration: none;
	color: #4e4f4f;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	transition: color 0.3s ease-in;
	-moz-transition: color 0.3s ease-in;
	-o-transition: color 0.3s ease-in;
	-webkit-transition: color 0.3s ease-in;
	-ms-transition: color 0.3s ease-in;
}
.menu ul li a:hover
{
	color: #1C97CA;
}
.banner
{
	background: url(images/picjumbo-bg5.png) no-repeat fixed 0% 0%/cover;
	padding: 150px 0px;
	cursor: default;
}
.header-text
{
	text-align:center;
	color: #fff;
}
.big-text
{
	font-size: 30px;
	line-height: 50px;
	font-family: 'Raleway', sans-serif;
	font-weight: 300;
}
.header-text h2
{
	font-size: 32px;
	font-weight: 600;
	font-family: 'Raleway', sans-serif;
	line-height: 60px;
}
.small-text
{
	width: 65%;
	margin: 0 auto;
	font-size: 18px;
	font-family: 'Raleway', sans-serif;
	font-weight: 400;
	line-height: 40px;
}
.small-text a
{
	color: #fff;
	border-bottom: 1px dotted #fff;
	text-decoration: none;
}
.button-section ul li
{
	display: inline-block;
	margin: 50px 20px;
}
.top-button
{
	
	text-decoration: none;
	border-radius: 5px;
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
}
.green
{	color: #fff;
	padding: 17px 30px;
	background-color: #64AE3C;
}
.white
{
	background-color: #fff;
	padding: 17px 30px;
	color: #4e4f4f;
}
.color-border
{
	background:url(images/color_border.jpg) repeat-x scroll center top;
	width: 100%;
	float: left;
	display: block;
	height: 5px;
}
.acercade
{
	background: url(images/bg.png) repeat;
}
.desc
{
	font-family: 'Raleway', sans-serif;
	text-align: center;
	padding: 80px 0px;
}
.desc h2
{
	color: #1c97ca;

	font-size: 30px;
	font-weight: 600;
	padding: 15px 0px;
}
.desc p
{
	font-size: 18px;
	font-weight: 400;
	line-height: 30px;
	width: 85%;
	margin: 0 auto;
	font-family: 'Open Sans', sans-serif;
	color: #aab1bf;
}
.acercade
{
	padding: 80px 0px;
	background-color: #24436d;
	float: left;
	width: 100%;
}
.acercade-section
{
	text-align: center;
}
h3.text-head
{
	color: #1c97ca;
	font-size: 27px;
	font-weight: 500;
	font-family: 'Raleway', sans-serif;
	text-align: center;
}
p.box-desc
{
	color: #888;
	font-size: 17px;
	font-weight: 500;
	font-family: 'Open Sans', sans-serif;
	line-height: 60px;
	text-align: center;
}
.acercade-section ul
{
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 20px;
	margin: 50px 0px;
	padding: 0;
	list-style: none;
}

.acercade-section ul li
{
	flex: 1 1 0;
	max-width: 260px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	border: 1px solid #e0e0e0;
	box-sizing: border-box;
	padding: 20px;
	border-radius: 4px;
	vertical-align: top;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}


.acercade-section ul li:hover
{
	transform: translateY(-10px);
	box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}

.feature-icon
{
	width: 60px;
	height: 60px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.feature-icon i
{
	font-size: 40px;
	color: #1c97ca;
}

.icon1
{
	background-position: -1px -1px;
}
.icon2
{
	background-position: -68px -1px;
}
.icon3
{
	background-position: -136px -1px;
}
.acercade-section ul li h4
{
	font-size: 17px;
	font-weight: 600;
	color: #fff;
	font-family: 'Raleway', sans-serif;
	line-height: 50px;
	margin-top: 20px;
}
.acercade-section ul li h4.single-line {
	white-space: nowrap;
}
.acercade-section ul li p
{
	color: #aab1bf;
	font-size: 15px;
	line-height: 20px;
	width: 90%;
	margin: 0 auto;
	font-weight: 400;
	font-family: 'Open Sans', sans-serif;
	
}
.servicios
{
	padding: 80px 0px;
	float: left;
	width: 100%;
	background: #f1f1f1;
}
.servicios-section ul
{
	margin: 40px 0px 0px;
	padding: 0;
	list-style: none;
}



.servicios-section ul li
{
	width: 318px;
	margin: 40px 20px 0px;
	border-radius: 5px;
	background-color: #fff;
	float: left;
	transition: all 0.3s ease-in;
	-moz-transition: all 0.3s ease-in;
	-o-transition: all 0.3s ease-in;
	-ms-transition: all 0.3s ease-in;
	-webkit-transition: all 0.3s ease-in;
}



.servicios-section ul li:hover
{
	transform: translateY(-10px);
	box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}

.servicios-section ul li a
{
	text-decoration: none;
}
.story-img img
{
	width: 318px;
	height: 200px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
.story-box
{
	border: 1px solid #ccc;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	border-top: none;
	text-align: center;
	padding: 20px 24px 18px;
	min-height: 200px;
}
.story-box h4
{
	color: #4E4F4F;
	font-size: 16px;
	font-family: 'Raleway', sans-serif;
	font-weight: 600;
	line-height: 50px;
}
.story-box p
{
	color: #888;
	font-family: 'Open Sans', sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 20px;
}
.servicios-section ul li:hover
{
	box-shadow: 0px 0px 6px 0px #ccc;
}
.contactanos
{
	padding: 80px 0px;
	width: 100%;
	float: left;
	font-family: 'Open Sans', sans-serif;
	background-color: #D6D6D6;
}
.contactanos-section
{
	width: 60%;
	margin: 0 auto;
	font-family: 'Open Sans', sans-serif;
}
form input
{
	background: none repeat scroll 0% 0% #F7F6F6;
	padding: 15px;
	width: 100%;
	border-radius: 5px;
	font-size: 16px;
	font-weight: 400;
	margin-top: 30px;
	font-family: 'Open Sans', sans-serif;
	box-shadow: none;
	border: 2px solid #f7f6f6;
	transition: all 0.5s ease-in;
	-moz-transition: all 0.5s ease-in;
	-o-transition: all 0.5s ease-in;
	-ms-transition: all 0.5s ease-in;
	-webkit-transition: all 0.5s ease-in;
	margin-left: -20px;
}
form textarea
{
	width: 100%;
    border-radius: 5px;
    box-shadow: none;
    background: none repeat scroll 0% 0% #F7F6F6;
    padding: 15px;
    font-size: 16px;
    font-weight: 400;
	height: 180px;
	margin-top: 30px;
	font-family: inherit;
	border: 2px solid #f7f6f6;
	font-family: 'Open Sans', sans-serif;
	resize: none;
	transition: all 0.5s ease-in;
	-moz-transition: all 0.5s ease-in;
	-ms-transition: all 0.5s ease-in;
	-o-transition: all 0.5s ease-in;
	-webkit-transition: all 0.5s ease-in;
	margin-left: -20px;
}
button.submit
{
	background: #1C97CA;
border: medium none;
color: #FFF;
padding: 15px 10px;
font-size: 18px;
font-weight: 600;
font-family: "Open Sans",sans-serif;
transition: all 0.3s ease 0s;
-o-transition: all 0.3s ease 0s;
-webkit-transition: all 0.3s ease 0s;
-ms-transition: all 0.3s ease 0s;
-moz-transition: all 0.3s ease 0s;
margin-top: 20px;
transition: background 0.3s ease-in;
cursor: pointer;
display: block;
margin: 30px auto 0px;
border-radius : 5px;
}
button.submit:hover
{
	background:#888;
}
form input:focus
{
	border: 2px solid #888;
	background-color: #fff;
}
form textarea:focus
{
	border: 2px solid #888;
	background-color: #fff;
}
.footer
{
	width: 100%;
	background-color: #373A42;
	float: left;
	padding: 50px 0px;
	text-align: center;
}
.footer p.copyright {
    color: #585C65;
    font-weight: 300;
    font-size: 14px;
}
.footer p.copyright a
{
	color: #585C65;
	text-decoration: none;
	border-bottom: 1px dotted #585c65;
}
ul.socialmedia {
    margin: 0;
    list-style:none;
    margin-top: 25px;
}
ul.socialmedia li {
    display: inline-block;
    margin-left: 15px;
	margin-right: 15px;
    color: #585c65;
    font-size: 26px;
}
ul.socialmedia li a {
    
    color: #585c65;
    font-size: 26px;
}

i.icon-twitter {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
i.icon-twitter:hover {
    height: 100%;
    color: #00acee;
}
i.icon-facebook {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
i.icon-facebook:hover {
    height: 100%;
    color: #3b5998;
}
i.icon-dribbble {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
i.icon-dribbble:hover {
    height: 100%;
    color: #ea4c89;
}
i.icon-linkedin {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
i.icon-linkedin:hover {
    height: 100%;
    color: #0e76a8;
}
i.icon-instagram {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;

}
i.icon-instagram:hover {
    height: 100%;
    color: #3f729b;
}
ul.socialmedia li a {
    text-decoration: none;
}
.responsive-menu-button
{
	float: right;
	padding: 24px 0px;
}
#mobile-header {
display: none;
}


/* === Navbar compacta + sticky === */

.logo-menu{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  padding: 8px 0;
}
.logo-menu .logo h1{
  font-size: clamp(16px, 2vw, 20px);
  margin: 0;
}
.menu ul{
  display:flex;
  gap: clamp(12px, 2vw, 20px);
  margin:0;
  padding:0;
  list-style:none;
  justify-content:flex-end;
  align-items:center;
}
.menu ul li a{
  display:inline-block;
  padding: 8px 10px;
  line-height: 1.2;
  font-size: 14px;
}

/* Sombra y compresión al hacer scroll */
.header.is-scrolled{
  box-shadow: 0 6px 18px rgba(2,6,23,.08);
}
.header.is-scrolled .logo-menu{ padding: 6px 0; }
.header.is-scrolled .menu ul li a{ padding: 6px 8px; }

/* Mobile */
@media (max-width: 768px){
  .logo-menu{ padding: 6px 0; }
  .menu ul li a{ padding: 8px 8px; font-size: 13px; }
}



/* === Ajuste fino: Navbar más pequeña aún === */

.logo-menu{
  padding: 4px 0; /* antes: 8px */
}
.logo-menu .logo,
.logo-menu .menu,
.logo-menu .logo h1,
.logo-menu .logo h1 a,
.menu ul,
.menu ul li{
  margin:0 !important;
  padding:0 !important;
}
.logo-menu .logo h1{ font-size: 18px; line-height: 1; }
.logo-menu .logo h1 a{ line-height: 1; }

.menu ul{ display:flex; gap: 12px; }
.menu ul li a{
  padding: 6px 8px;      /* antes: 8px 10px */
  font-size: 13px;       /* antes: 14px */
  line-height: 1.1;
}

/* Icono menú móvil más chico */
.responsive-menu-button img{
  height: 20px;
  width: auto;
  display: block;
}

/* Estado scrolleado aún más compacto */
.header.is-scrolled .logo-menu{ padding: 3px 0; }
.header.is-scrolled .menu ul li a{ padding: 5px 7px; }

@media (max-width: 768px){
  .logo-menu{ padding: 3px 0; }
  .menu ul li a{ padding: 6px 6px; font-size: 12.5px; }
}



/* === Navbar: tamaño constante en scroll === */
/* Mantener mismo padding y tamaños en todo momento */


/* Tamaños fijos de barra y enlaces */
.logo-menu{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  padding: 6px 0; /* tamaño fijo */
}
.menu ul{ display:flex; gap: 12px; margin:0; padding:0; }
.menu ul li a{
  display:inline-block;
  padding: 6px 8px;   /* tamaño fijo */
  font-size: 13px;
  line-height: 1.1;
}

/* Estado al scrollear: solo agrega sombra, no cambia tamaños */
.header.is-scrolled{
  box-shadow: 0 6px 18px rgba(2,6,23,.08);
}
.header.is-scrolled .logo-menu{ padding: 6px 0; }          /* igual que normal */
.header.is-scrolled .menu ul li a{ padding: 6px 8px; }     /* igual que normal */

/* Evitar saltos por márgenes heredados */
.logo-menu .logo,
.logo-menu .menu,
.logo-menu .logo h1,
.logo-menu .logo h1 a,
.menu ul,
.menu ul li{
  margin:0 !important;
}

/* Opcional: reservar scroll para evitar “salto de ancho” cuando aparece la barra de scroll */
html{ overflow-y: scroll; }



#acercade,
#servicios,
#contactanos {
	scroll-margin-top: 100px;
}


.servicios-section ul li.row2-start
{
	clear: both;
}
