*{margin:0;padding:0;border:none}

html{position:relative;color:#333;line-height:22px;font-size:1em;font-family:'Arial';background:url(../img/fondo-hormigon.jpg) repeat;
    /*min-width:320px*/}
body{width:100%}

html, body{overflow-x:hidden}

a{color:#333;text-decoration:none;cursor:pointer}

header, footer{width:99%;position:relative;padding:0 .5%}
footer{padding-bottom:15px}

a{text-decoration:none;cursor:pointer}

.a:hover, .a:active, .a:focus{text-decoration:underline}
.a2{text-decoration:underline}
.a2:hover, .a2:active, .a2:focus{text-decoration:none}


.txt-center{text-align:center}
.txt-left{text-align:left}
.txt-right{text-align:right}
.txt-just{text-align:justify}

.txt-bold{font-weight:bold}

.w-0{width:0%}
.w-2-5{width:2.5%}
.w-5{width:5%}
.w-10{width:10%}
.w-15{width:15%}
.w-20{width:20%}
.w-25{width:25%}
.w-30{width:30%}
.w-40{width:40%}
.w-50{width:50%}
.w-60{width:60%}
.w-65{width:65%}
.w-70{width:70%}
.w-75{width:75%}
.w-80{width:80%}
.w-90{width:90%}
.w-100{width:100%}
.w-120{width:120%}

.min-w{min-width:none/*518px*/}

.h-100{height:100%}

.ds-none{display:none}

.mrg-auto{margin:0 auto}

.cr-pointer{cursor:pointer}

.txt-c1{color:#0070e0}
.txt-c2{color:#1c1b6b}
.txt-blanco{color:#fff}
.txt-negro{color:#333}

.bg-1{background-color:#fff}
.bg-2{background-color:#0070e0}
.bg-3{background-color:#eee}
.bg-4{background-color:#333}
.bg-5{background-color:#999}
.bg-6{background-color:#5c8ebf}
.bg-deg{background:linear-gradient(#fff,#ddd);background:-moz-linear-gradient(#fff,#ddd);background:-webkit-linear-gradient(#fff,#ddd);
    background:-o-linear-gradient(#fff,#ddd);background:-ms-linear-gradient(#fff,#ddd)}

.ps-rel{position:relative}
.ps-abs{position:absolute}
.ps-fix{position:fixed}

.fl-izq{float:left}
.fl-drc{float:right}
.fl-clear{clear:both;height:1px;line-height:1px;font-size:1px}

.radius-3{border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;-o-border-radius:3px;-ms-border-radius:3px}
.radius-5{border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-o-border-radius:5px;-ms-border-radius:5px}
.radius-10{border-radius:10px;-moz-border-radius:10px;-webkit-border-radius:10px;-o-border-radius:10px;-ms-border-radius:10px}
.radius-50p{border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;-o-border-radius:50%;-ms-border-radius:50%}

.center{width:94.2%;padding:0 .4%;margin:20px auto 40px;position:relative}
.container{padding-top:20px;padding-bottom:30px}

.ov-flow-hidden{overflow:hidden}

.border-5{border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px}
.radius-50p{border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;-ms-border-radius:50%;-o-border-radius:50%}

body{padding-top:61px}

header{top:0;left:0;z-index:950;box-shadow:0 0 3px #333;-moz-box-shadow:0 0 3px #333;-webkit-box-shadow:0 0 3px #333;
    -ms-box-shadow:0 0 3px #333;-o-box-shadow:0 0 3px #333}
header .btn-menu{top:50%;right:20px;margin-top:-20px;border:2px solid #5c8ebf;padding:5px;cursor:pointer;height:28px;width:28px}
header .btn-menu:hover, header .btn-menu:active{background-color:#ddd}
header .btn-menu img{width:28px}
header nav{top:100%;left:0;background-color:#eee;margin-left:-.5%;border-top:2px solid #ddd;border-bottom:3px solid #ddd}
header nav a{width:50%;padding:10px 0;border-bottom:1px solid #ddd}
header nav a.brd{width:49.8%;border-right:1px solid #ddd}
header nav a:hover, header nav a:active, header nav a:focus{background-color:#5c8ebf;color:#fff}

h1{font-size:1.8em;line-height:1.3em}

.log{padding:8px 0 4px;font-style:italic;border-bottom:3px solid #999}
.log table{margin-left:20px}
.log table img{width:28px;margin-right:15px}

.slide{min-height:280px;overflow:hidden;margin:0}
.slide img{top:0;left:100%;height:100%;transition:left .8s ease-out;-moz-transition:left .8s ease-out;-webkit-transition:left .8s ease-out;
    -ms-transition:left .8s ease-out;-o-transition:left .8s ease-out}
.slide img:last-child{left:-100%}
.slide img.s1{left:0}

.slide a{top:50%;margin-top:-15px;background:rgba(255,255,255,.7);color:#333;font-weight:bold;padding:8px 15px 13px;z-index:999;font-size:2em;
    border:1px solid #666}
.slide a.lf{left:10px}
.slide a.rg{right:10px}


.inicio article, .noticias article, .rse article{margin:5px 2.5% 10px;padding-bottom:10px;border-bottom:1px solid #eee;min-height:120px}
.inicio article img, .noticias article img, .rse article img{max-height:180px}
.inicio article .texto, .noticias article .texto, .rse article .texto{color:#555}
.inicio article .fecha, .noticias article .fecha, .rse article .fecha{bottom:5px;right:5px;color:#999;font-style:italic;font-size:.9em}
.inicio article:last-child, .noticias article:last-child, .rse article:last-child{border-bottom:none}

.proyectos article{margin:8px 2.5%;cursor:pointer}

.galeria article{margin:10px 2.5%;height:100px}

.ver-galeria{top:0;left:0;background-color:rgba(0, 0, 0, .7);z-index:999}
.ver-galeria span{cursor:pointer}
.ver-galeria .cerrar{top:0;right:0;padding:10px 18px 12px;font-weight:bold}
.ver-galeria .ant{left:0;bottom:0;font-size:2.5em;padding:10px 0 15px}
.ver-galeria .sig{right:0;bottom:0;font-size:2.5em;padding:10px 0 15px;border-left:1px solid #000}
.ver-galeria #imagen-actual{margin-top:20px;max-height:450px;max-width:600px;box-shadow:0 0 4px #000;-moz-box-shadow:0 0 4px #000;
    -webkit-box-shadow:0 0 4px #000;-ms-box-shadow:0 0 4px #000;-o-box-shadow:0 0 4px #000}

.galeria-img{padding:5px 10px}
.galeria-img img{margin:0 10px 0 20px}

.contacto input[type=text], .contacto textarea{padding:10px;border:1px solid #666;margin:3px 0}
.contacto input[type=submit]{padding:10px 0;cursor:pointer}


.btn-contacto{border-bottom:1px solid #466d93;margin-bottom:15px;padding:10px 0}
.btn-contacto:first-child{width:49.6%;border-right:1px solid #466d93}
.btn-contacto img{margin:0 15px -3px 0}
.btn-contacto:hover, footer .btn-contacto:active, footer .btn-contacto:focus{background-color:#466d93}


@media screen and (max-width:700px){
    .slide{width:120%;margin-left:-10%}

    .ds-block-r{display:block}
    .ds-none-r{display:none}

    .proyectos article{margin:8px 5%;width:40%}

    .contacto td{text-align:center}
    .contacto input[type=text], .contacto textarea{width:90%}
    .contacto input[type=submit]{width:95%}
}

@media screen and (max-width:600px){
    .slide{width:110%;margin-left:-5%;min-height:170px}
    header nav a, header nav a.brd{width:100%;border-right:none}
}

@media screen and (max-width:400px){
    .slide{width:130%;margin-left:-15%;min-height:150px}
}
