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;
}
/* 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;
}

/* END RESET */


/* FONT STYLES*/
body{
	background-color: #b8d6b9;
	font-family: Helvetica, Arial, sans-serif;
	font-size: 13px;
}

/* FONT STYLES*/
h3{
	font-size: 24px;
	font-family: Helvetica, Arial, sans-serif;
	color: #333333;
	margin-bottom: 25px;
}
h4{
	margin-bottom: 25px;
	font-size: 18px;
	font-family: Helvetica, Arial, sans-serif;
}
h5{
	font-size: 14px;
	font-family: Helvetica, Arial, sans-serif;
}
p{
	font-size: 13px;
	color: #555555;
	line-height: 18px;
}
a, a:link, a:visited{
	text-decoration: none;
	outline: none;
}
.green{
	color: #509743;
}

.white{
	color: #fff;
}

strong, .negrita{
	font-weight: bold;
}
/* END FONTS STYLES */

/* HEADER */
#header-wrap{
	border-top: 10px solid #4d9543;
	padding-top: 30px;	
}
header{
	width: 960px;
	margin: 0 auto;
	padding: 0;
}
header h2 a{
	display: block;	
	background: url(images/logo.jpg) no-repeat;
	width: 214px;
	height: 97px;
	float: left;
	margin-bottom: 20px;
}

#call{
	float: right;
	border-right: 1px solid #c8c8c8;
	padding-right: 25px;
	margin-top: 60px;
}
#call h3{
	margin: 0;
}
#call h4{
	text-align: right;
	margin: 0;
}

#idiomas{
	margin-top: 25px;
	text-align: right;
}

#idiomas img{
	margin-left:5px;
}

#idiomas .active{
	border: 2px solid #3b7c33;
}

nav{
	clear: both;
	width: 960px;
	height: 50px;
	margin-top: 15px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
	background-color: #3b7c33; /* Fallback */
	border-radius: 30px;
	/* Safari 4+, Chrome 1-9 */
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#5fae53), to(#3b7c33));
	/* Safari 5.1+, Mobile Safari, Chrome 10+ */
	background-image: -webkit-linear-gradient(top, #5fae53, #3b7c33); 
	/* Firefox 3.6+ */
	background-image: -moz-linear-gradient(top, #5fae53, #3b7c33);
	/* IE 10+ */
	background-image: -ms-linear-gradient(top, #5fae53, #3b7c33);
	/* Opera 11.10+ */
	background-image: -o-linear-gradient(top, #5fae53, #3b7c33);
	border: 1px solid #336c2b;
}

nav ul li{
	float: left;
	border-right: 1px solid #336c2b;
	border-left: 1px solid #78c368;
}
nav ul li.home{
	border-left: none;
	text-indent: -9999px;
	background: url(images/home.png) no-repeat 50% 50%;
}

nav ul li.last{
	border-left: none;
	border-right: none;
	float: right;
	margin-right: 20px;
}
nav ul li a{
	display: block;
	padding: 0 30px;
	height: 50px;
	line-height: 50px;
	font-size: 15px;
	color: #fff;
	text-shadow: 0 1px 0 #387031;
}
nav ul li a:hover{
	background: #5fae53;
}

nav ul li.home a:hover{
	-webkit-border-top-left-radius: 30px;
	-webkit-border-bottom-left-radius: 30px;
	border-top-left-radius: 30px;
	border-bottom-left-radius: 30px;
	background: #5fae53 url(images/home.png) no-repeat 50% 50%;
}

nav ul li.on a{
	text-decoration: underline;
}

nav ul li div input[type=text]{
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	background: #4b9241;
	border-left: none;
	border-right: none;
	border-bottom: 1px solid #5ead52;
	border-top: 1px solid #346d2c;
	color: #fff;
	text-shadow: 0 1px 0 #387031;
	padding: 5px 0 5px 20px;
	width: 200px;
}
nav ul li div input[type=text]:focus{
	outline: none;
}

/* TO STYLE PLACE HOLDER */
::-webkit-input-placeholder {
   color: #fff;
}
:-moz-placeholder {  
   color: #fff;   
}

nav ul li div input[type=submit]{
	background: url(images/search.png) no-repeat 50% 50%;
	border: none;
	text-indent: -999999px;
	margin-left: 15px;
	height: 50px;
	width: 16px;
}

/* END HEADER */

.row{
	clear:left;	
	margin-top: 20px;
}

#container{
	width: 960px;
	margin: 0 auto;
}

#contact{
	margin-top:20px;
	margin-bottom:60px;
}

.formContacto{
	margin-left:650px;
	width:320px;
}

.inputContacto{
	background-color: #F2AD2E;
    border: 2px solid #FFFFFF;
	border-radius:2px 2px 2px 2px;
        -moz-border-radius: 2px; /* Firefox */
        -webkit-border-radius: 2px; /* Safari, Chrome */
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.6);
    color: #FFFFFF;
    font: 16px/1.2em "Open Sans","sans-serif";
    margin: 0 0 5px;
    padding: 5px;
    width: 310px;
}

.formContacto textarea{
	background-color: #F2AD2E;
    border: 2px solid #FFFFFF;
	border-radius:2px 2px 2px 2px;
        -moz-border-radius: 2px; /* Firefox */
        -webkit-border-radius: 2px; /* Safari, Chrome */
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.6);
    color: #FFFFFF;
    font: 16px/1.2em "Open Sans","sans-serif";
    height: 200px;
    margin: 0 0 5px;
    padding: 5px;
    resize: none;
    width: 310px;
}

.formContacto button{
	background-color: #3b7c33;
    border: medium none;
	border-radius:2px 2px 2px 2px;
        -moz-border-radius: 2px; /* Firefox */
        -webkit-border-radius: 2px; /* Safari, Chrome */
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.6);
    color: #FFFFFF;
    cursor: pointer;
    float: right;
    font: 18px/1.2em "Open Sans","sans-serif";
    margin: 10px 0 0 10px;
    padding: 5px;
}

::-webkit-input-placeholder  { color:#FFFFFF; }

#errorContacto{
	font-family: Arial,Helvetica,sans-serif;
    font-size: 12px;
	color: #8B0000;
	padding-top:15px;
	width:225px;
	float:left;
}


#mask {
	display: none;
	background: #000; 
	position: fixed; left: 0; top: 0; 
	z-index: 10;
	width: 100%; height: 100%;
	opacity: 0.8;
	z-index: 999;
}

.lopd-popup{
	display:none;
	background: #333;
	padding: 10px; 	
	border: 2px solid #ddd;
	float: left;
	font-size: 1.2em;
	position: fixed;
	top: 50%; left: 50%;
	z-index: 99999;
	box-shadow: 0px 0px 20px #999; /* CSS3 */
        -moz-box-shadow: 0px 0px 20px #999; /* Firefox */
        -webkit-box-shadow: 0px 0px 20px #999; /* Safari, Chrome */
	border-radius:3px 3px 3px 3px;
        -moz-border-radius: 3px; /* Firefox */
        -webkit-border-radius: 3px; /* Safari, Chrome */
	width:510px;
}

.tituloLOPD{
	color:#FFFFFF;
	font-size:22px;
	text-align:center;
	margin-bottom:15px;
}

.detalleLOPD{
	color:#FFFFFF;
	text-align:justify;
}

.detalleLOPD a{
	color:#FFFFFF;
}

img.btn_close { 
	float: right; 
	margin: -28px -28px 0 0;
}

#map_canvas{
	width:640px;
	height:400px;
	margin-bottom:20px;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.5);
	float:left;
}

/* SLIDES */
.slides_container{
	float:left;
}

#slider img{
	width: 700px;
}

#slides{
	position: relative;
	margin-top: 40px;
	margin-bottom:40px;
	height: 480px;
}

.noticias{
	margin-left:700px;	
	padding-left:20px;	
}

.noticias h2{
	font-size: 20px;
	margin-bottom: 10px;
}

.noticias li{
	text-align: justify;
	font-size:14px;
	line-height:18px;
	margin-bottom: 5px;
}


.noticias img{
	width: 238px;
}

.readmore{
	font-style: italic;
	text-decoration: none;
	color: #509743;
	padding-left: 15px;
	background: url(images/more.png) no-repeat 0 50%;
}
.readmore:hover{
	color: #c8c8c8;
	
}
.pagination{
	position: absolute;
	bottom: 25px;
	left: 25px;
	z-index: 99;
}

ul.pagination li{
	float: left;
	margin-right: 10px;
	background: url(images/pagination.png) no-repeat;
	background-position: top;
	width: 14px;
	height: 15px;
}
ul.pagination li.current{
	background-position: bottom;
}
ul.pagination li a{
	display: block;
	text-indent: -999999px;
}

a.next{
	position: absolute;
	right: 25px;
	bottom: 30px;
	display: block;
	width: 7px;
	height: 13px;
	background: transparent url(images/prev-next.png) no-repeat;
	background-position: top right;
	text-indent: -9999px;
}
a.prev{
	position: absolute;
	right: 50px;
	bottom: 30px;
	display: block;
	width: 7px;
	height: 13px;
	background: transparent url(images/prev-next.png) no-repeat;
	background-position: top left;
	text-indent: -9999px;
}
a.next:hover{
	background-position: bottom right;
}
a.prev:hover{
	background-position: bottom left;
}
/* END SLIDES*/

/* SERVICE */
#service{
	margin: 40px auto;
	height: 253px;
	padding-top: 30px;
	background: url(images/service-bg.jpg) no-repeat;
}

#productos{	
	margin: 0 auto;	
	padding-top: 20px;
}

#productos h3, #productos p{
	margin-bottom:20px;
}

.producto{
	float: left;
	width: 290px;
	padding-left: 30px;
	margin-bottom: 30px;
}
.producto p{
	width: 180px;
	margin-bottom: 20px;
}
.producto img{	
	margin-right: 50px;
}

#empresa{
	margin-top:20px;
}

#empresa .datos{
	float: left;
	width: 100%;	
}

#empresa .datos p{
	width: 100%;
	margin-bottom: 20px;
}

#empresa .datos .left{
	width: 610px;	
	float: left;
}

#empresa .datos .left img{
	width: 550px;
	margin-bottom: 15px;
}

#empresa .datos .right{
	margin-left: 610px;	
	width: 350px;	
}

#empresa .datos .right img{
	margin-left:30px;
	width: 300px;	
	margin-top: 25px;
}

#web{
	float: left;
	width: 450px;
	padding-left: 30px;
}
#web p{
	width: 260px;
	margin-bottom: 20px;
}
#web img{
	float: right;
	margin-right: 50px;
}
#vector{
	float: right;
	padding-left: 30px;
	width: 450px;
}

#vector p{
	width: 260px;
	margin-bottom: 20px;
}
#vector img{
	float: right;
	margin-right: 50px;
}    
/* END SERIVCE*/

/* MEDIA  */

#media{
	margin: 0 auto;
}

#video{
	width: 302px;
	padding-top: 20px;
	float: left;
	margin-right: 58px;
	background: transparent url(images/video-bg.png) no-repeat;
	height: 225px;
}
#video h4{
	margin: 0;
}
#video h4, #video h5{
	text-align: center;
	color: #fff;
	text-shadow: 0 1px 0 #387031;;
}

#video .play{
	float: right;
	margin-top: 5px;
}

#twitter{
	width: 285px;
	height: 180px;
	float: left;
	margin-right: 30px;
	background: transparent url(images/twitter-bg.png) no-repeat;
	background-position: bottom;
	padding: 0 0 20px 0;
}
#twitter p{
	padding: 0 20px;
}
#twitter .time{
	font-size: 11px;
	font-style: italic;
	color: #999999;
	margin-top: 15px;
}

a.t-link{ color: #6767c9; text-decoration: none; }
a.t-link:hover{ text-decoration: underline; }

#facebook{ 
width: 285px;
float: right;
}

/* END MEDIA*/

/* CLEAR FIX */
.group:after {
  content: "";
  display: table;
  clear: both;
}
/* END FIX */

/* WIDGET */
#widget-wrap{
	padding: 50px 0;
	background: #333333 url(images/widget-bg.jpg);
}
#widget{
	width: 960px;
	margin: 0 auto;
}
h4.footer-header{
	background: transparent url(images/footer-header.png) no-repeat;
	line-height: 58px;
	text-indent: 30px;
}
#links{
	width: 225px;
	float: left;
	margin-right: 75px;
}
#links ul{
	list-style-image: url(images/links.png);
	margin-left: 15px;
	color: #509743;
}
#links ul li a{
	color: #cccccc;
	font-size: 13px;
	padding: 8px 0;
	display: block;
}
#links ul li a:hover{
	color: #fff;
}

#blog{
	position: relative;
	width: 290px;
	float: left;
	margin-right: 75px;
}
#blog img{
	position: absolute; 
	top: 50px;
	left: -18px;
}
#blog p.title{
	color: #fff;
	margin-left: 110px;
	margin-bottom: 15px;
}
#blog p.date{
	margin-left: 110px;
	color: #cccccc;
	font-style: italic;
	font-size: 11px;
	margin-bottom: 15px;
}

#blog a.readmore{
	margin-left: 110px;
}
#location{
	position: relative;
	width: 290px;
	float: right;
}
#location img{
	position: absolute; 
	top: 45px;
	left: 22px;
}
#location p.address{
	margin-top: 115px;
	border-right: 1px solid #484848;
	padding-right: 20px;
	text-align: right;
	color: #cccccc;
}
/* END WIDGET */

/* CLIENT */
#client-wrap{
	background: #fff url(images/client-bg.jpg) repeat-x;
	padding: 40px 0;
	border-bottom: 1px solid #c8c8c8;
}	

#client{
	width: 960px;
	margin: 0 auto;
}

#client ul li{
	width: 20%;
	float: left;
	text-align: center;
}

#client img{
	border: 1px solid black;
	width: 150px;
	box-shadow: 7px 7px 5px #888888;
}

/* END CLIENT */

/* FOOTER */
footer{
	width: 960px;
	margin: 0 auto;
	padding: 30px 0 60px 0;
	position: relative;
}

#footer-left{
	float: left;
	width: 50%;
}
#footer-left p{
	font-size: 12px;
	color: #666666;
}
#footer-left a:hover{
	color: #3b7c33;
}
#footer-right{
	float: right;
	width: 50%;
}
#footer-right ul{
	float: right;
}
#footer-right ul li{
	float: left;
	margin-right: 30px;
}

#footer-right ul li:last-child{
	margin-right: 0;
}
#footer-right ul li a{
	color: #666666;
	display: block;
	padding-bottom: 10px;
	font-size: 12px;
}
#footer-right ul li a:hover{
	border-bottom: 2px solid #c8c8c8;
}

.back-top{
	position: absolute;
	bottom: 30px;
	right: 50%;
	
}
/* END FOOTER */

/* VIEWPORT < 960px */
 
@media only screen and (max-width: 960px){
    header, nav, #slides, #service, #widget, #media, #client, footer, #container{ width: 768px; }
    .slide-right{
        left: 0;
    }
    .slide-heading{
        width: auto;
        height: auto;
        padding: 0;
        margin: 0 0 20px 0;
        background-image: none;
        color: #333;
    }
    .slides_container div img{
        display: none;
    }
    .slide-right .info{
        width: 768px;
        margin-bottom: 20px;
        margin-left: 0;
    }
    .slide-right .readmore{
        margin-left: 0;
    }
    .slides_container{
        height: 200px;
    }
    a.next{
        right: 0px;
    }
    a.prev{
        right: 25px;
    }
    .pagination{
        left: 0;
    }
    #service{
        background: none;
        height: auto;
    }
    #vector{
        padding-left: 0;
        width: 369px;
    }
    #vector img{
        margin-right: 0;
    }
	
	.producto{
    padding-left: 0;
    width: 369px;
    }
    
	.producto img{
        margin-right: 0;
    }
	
    #web{
    padding-left: 0;
    width: 369px;
    }
    #web img{
        margin-right: 0;
    }
    #facebook{
        display: none;
    }
    #twitter{
        margin-left: 18px;
    }
	#contacto{
        clear: both;
    }
    #blog{
        clear: both;
    }
    #links{
        width: auto;
        margin-bottom: 30px;
    }
 
    #links ul li{
        float: left;
        margin-right: 30px;
    }
}

/* VIEWPORT < 768px */
@media only screen and (max-width: 768px){
    header, nav, #slides, #service, #widget, #media, #client, footer, #container{
    width: 524px;
    }
    nav ul li.last{
    display: none;
    }
    .slides_container{
        height: 250px;
    }
    .slide-right .info{
        width: 524px;
    }
	.producto{
        width: 100%;
        margin-bottom: 30px;
    }
    .producto img{
        padding-left: 20px;
    }
    #web{
        width: 100%;
        margin-bottom: 30px;
    }
    #web img{
        padding-left: 20px;
    }
    #vector{
        width: 100%;
    }
    #vector img{
        padding-left: 20px;
    }
    #service{
        height: auto;
    }
    #video{
        margin: 0 auto 30px auto;
        float: none;
    }
    #twitter, #facebook{
    float: none;
    margin: 0 auto;
    margin-bottom: 30px;
    }
    #facebook{
        display: block;
    }
    #links{
        width: 285px;
        float: none;
        margin: 0 auto;
    }
    #links ul li{
        width: 285px		
    }
	#contacto{
        float: none;
        margin: 30px auto;
    }
    #blog{
        float: none;
        margin: 30px auto;
    }
    #location{
        float: none;
        margin: 0 auto;
    }
    #client ul li{
        width: 100%;
        float: none;
        margin: 30px 0;
    }
    #footer-left{
        width: 100%;
        margin-bottom: 30px;
 
    }
    #footer-left p{
        text-align: center;
    }
    #footer-right{
        float: none;
        width: 100%;
        margin-bottom: 30px;
    }
    #footer-right ul{
        float: none;
        width: 75%;
        margin: 0 auto;
    }
}

/* VIEWPORT < 524px */
@media only screen and (max-width: 524px){
    header, nav, #slides, #service, #widget, #media, #client, footer, #container{
    width: 300px;
    }
    header h2 a{
        width: 100%;
        background-position: center top;
    }
    nav{
        height: auto;
    }
    nav ul li{
        float: none;
        border: none;
        border-bottom: 1px solid #336c2b;
        border-top: 1px solid #78c368;
    }
    nav ul li.home{
        border-top: none;
    }
    nav ul li.last{
        display: block;
        border-bottom: none;
        width: 100%;
        margin: 0;
    }
    nav ul li.last div{
        margin-left: 15px;
    }
    nav ul li a{
        text-align: center;
    }
    nav ul li.home a:hover{
    -webkit-border-top-left-radius: 30px;
    -webkit-border-top-right-radius: 30px;
    -webkit-border-bottom-left-radius: 0;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    border-bottom-left-radius: 0;
    background: #5fae53 url(images/home.png) no-repeat 50% 50%;
    }
    #call{
        display: none;
    }
    .slides_container{
        height: 270px;
    }
    .slide-heading{
        width: 300px;
    }
    .slide-right .info{
        width: 300px;
    }
	.producto img{
        width: 64px;
        height: 72px;
    }
    #web img{
        width: 64px;
        height: 72px;
    }
    #vector img{
        width: 76px;
        height: 69px;
    }
    #service{
        height: auto;
    }
    #footer-right ul{
        float: none;
        width: 285px;
        margin: 0 auto;
    }
    #footer-right ul li{
        float: none;
        margin: 0;
    }
    #footer-right ul li a{
        padding: 8px 0;
    }
}
