/* Bootstrap Centered Colunms Fix */
/* centered columns styles */
/*****************************************/
.row-centered {
    text-align: center;
}

.col-centered {
    display: inline-block;
    float: none;
    /* reset the text-align */
    text-align: left;
    /* inline-block space fix */
    margin-right: -4px;
}
.img-responsive {
    margin: 0 auto;
}
/*****************************************/
a, a:focus, a:hover {
    text-decoration: none;
}
/*****************************************/
body{
    background-color: #000;
}
.ag-add{
    width: 100%;
}
.navbar-toggle {
    position: relative;
    float: right;
    padding: 49px 10px;
    margin-top: 18px;
    margin-right: 15px;
    margin-bottom: 8px;
    background-color: transparent;
    background-image: none;
    border: 0px solid transparent;
    border-radius: 0px;
}
.navbar-default .navbar-toggle .icon-bar {
    background-color: #fff;
}
.navbar-default .navbar-toggle {
    border-color: #000;
}
.navbar-toggle {
    position: relative;
    float: right;
    padding: 9px 10px;
    margin-top: 18px;
    margin-right: 15px;
    margin-bottom: 8px;
    background-color: transparent;
    background-image: none;
    border: 0px solid transparent;
    border-radius: 0px;
}
.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover {
    background-color: #191919;
}
.navbar-toggle .icon-bar {
    display: block;
    width: 36px;
    height: 5px;
    border-radius: 1px;
}
.navbar-toggle .icon-bar+.icon-bar {
    margin-top: 8px;
}
.ag-slider{
       padding-bottom: 5%;
}
.ag-pad{
    padding: 0 15px 0 0;
}
/* Carousel Fading slide */
.carousel-fade .carousel-inner { background: #000; }
.carousel-fade .carousel-control { z-index: 2; }  
.carousel-fade .item {
  opacity: 0;
  -webkit-transition-property: opacity;
  -moz-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity;
  }
  .carousel-fade .next.left,
  .carousel-fade .prev.right,
  .carousel-fade .item.active { opacity: 1; }

  .carousel-fade .active.left,
  .carousel-fade .active.right {
    left: 0;
    opacity: 0;
    z-index: 1;
    }
/* Safari Fix */
@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-fade .carousel-inner > .item.next,
    .carousel-fade .carousel-inner > .item.active.right {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.prev,
    .carousel-fade .carousel-inner > .item.active.left {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.next.left,
    .carousel-fade .carousel-inner > .item.prev.right,
    .carousel-fade .carousel-inner > .item.active {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
}
/* Carousel Control custom */
.carousel-control .control-icon {
  font-size: 48px;
  height: 30px;
  margin-top: -15px;
  width: 30px;
  display: inline-block;
  position: absolute;
  top: 50%;
  z-index: 5;
  }
  .carousel-control .prev { margin-left:  -15px;  left: 50%; } /* Prev */
  .carousel-control .next { margin-right: -15px; right: 50%; } /* Next */
/* Removing BS background */
.carousel .control-box { opacity: 0; }
a.carousel-control.left  { left: 0; background: none; border: 0;}
a.carousel-control.right { right: 0; background: none; border: 0;}
/* Animation */
.control-box, a.carousel-control, .carousel-indicators li {
  -webkit-transition: all 250ms ease;
  -moz-transition: all 250ms ease;
  -ms-transition: all 250ms ease;
  -o-transition: all 250ms ease;
  transition: all 250ms ease;   
  /* hardware acceleration causes Bootstrap carousel controlbox margin error in webkit */
  /* Assigning animation to indicator li will make slides flicker */
  }
/* Hover animation */
.carousel:hover .control-box { opacity: 1; }
.carousel:hover a.carousel-control.left { left: 15px; }
.carousel:hover a.carousel-control.right { right: 15px; }  
/* Carouse Indicator */
.carousel-indicators li.active,
.carousel-indicators li { border: 0; }
.carousel-indicators li {
  background: #fff;
  margin: 0 3px;
  width: 21px;
  height: 8px;
  border-radius: 0px;    
  }
.carousel-indicators li.active {
  background: #000;
  margin: 0 3px;
  width: 21px;
  height: 8px;    
  }
.navbar {
    margin-bottom: 0px;
}
.grid {
	position: relative;
	margin: 0 auto;
	padding: 1em 0 2em;
	max-width: 100%;
	list-style: none;
	text-align: center;
}
.grid figure {
	position: relative;
	overflow: hidden;
	margin: 10px 0% 0% 1.3%;
    min-width: 48%;
    max-width: 48%;
	max-height: auto;
	width: 100%;
	background: #242424;
	text-align: center;
	cursor: pointer;
    padding: 0;
}
.grid figure img {
	position: relative;
	display: block;
	min-height: 100%;
	max-width: 100%;
	opacity: 0.8;
}
.grid figure figcaption {
	padding: 2em;
	color: #fff;
	text-transform: uppercase;
	font-size: 1.25em;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.grid figure figcaption::before,
.grid figure figcaption::after {
	pointer-events: none;
}

.grid figure figcaption,
.grid figure figcaption > a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


.grid figure figcaption > a {
	z-index: 1000;
	text-indent: 200%;
	white-space: nowrap;
	font-size: 0;
	opacity: 0;
}

.grid figure h2 {
	word-spacing: -0.15em;
	font-weight: 300;
}

.grid figure h2 span {
	font-weight: 800;
}

.grid figure h2,
.grid figure p {
	margin: 0;
}

.grid figure p {
	letter-spacing: 1px;
	font-size: 68.5%;
}

figure.effect-oscar {
	background: -webkit-rgba(0, 0, 0, 0.81);
	background: rgba(0, 0, 0, 0.81);
}

figure.effect-oscar img {
	opacity: 0.9;
	-webkit-transition: opacity 0.35s;
	transition: opacity 0.35s;
}

figure.effect-oscar figcaption {
	padding: 3em;
	background-color: rgba(58,52,42,0.7);
	-webkit-transition: background-color 0.35s;
	transition: background-color 0.35s;
}

figure.effect-oscar figcaption::before {
	position: absolute;
	top: 30px;
	right: 30px;
	bottom: 30px;
	left: 30px;
	border: 1px solid #fff;
	content: '';
}

figure.effect-oscar h2 {
	margin: 20% 0 10px 0;
	-webkit-transition: -webkit-transform 0.35s;
	transition: transform 0.35s;
	-webkit-transform: translate3d(0,100%,0);
	transform: translate3d(0,100%,0);
}

figure.effect-oscar figcaption::before,
figure.effect-oscar p {
	opacity: 0;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale(0);
	transform: scale(0);
}

figure.effect-oscar:hover h2 {
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

figure.effect-oscar:hover figcaption::before,
figure.effect-oscar:hover p {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}

figure.effect-oscar:hover figcaption {
	background-color: rgba(58,52,42,0);
}

figure.effect-oscar:hover img {
	opacity: 0.4;
}
.ag-imgin{
    width: 100%;
}
.autoplay{
    border: 1px solid #ccc;
}
.ag-title{
    color: #fff;
    font-weight: 600;
}
.ag-text{
    color: #fff;
    font-weight: 200;
    font-size: 12pt;
}
.carousel-caption{
    background-color: rgba(0, 0, 0, 0.5);
    text-align: left;
    padding: 5px 26px;
    margin: 89px 204px 281px -151px;
    line-height: 20%;
    } 
/* Medium Devices, Desktops */
    @media only screen and (max-width : 992px) {
        .ag-pad {
            padding: 0 0px 40px 0;
        }
    }
    @media only screen and (max-width : 800px) {
        .ag-pad {
            padding: 0 0px 40px 0;
        }
    }
    /* Small Devices, Tablets */
    @media only screen and (max-width : 768px) {
       .text-al{
            text-align: center;
        }
        .carousel-caption {
            background-color: rgba(0, 0, 0, 0.5);
            text-align: left;
            padding: 5px 26px;
            margin: 61px 63px 295px -144px;
            line-height: 91%;
        }
        .ag-pad {
            padding: 0px 0px 28px 0px;
            }
    }
    /* Extra Small Devices, Phones */
    @media only screen and (max-width : 480px) {
        .text-al{
            text-align: center;
        }
        .carousel-caption {
            background-color: rgba(0, 0, 0, 0.5);
            text-align: left;
            padding: 5px 26px;
            margin: 61px -17px 165px -68px;
            line-height: 91%;
        }
        .ag-pad {
            padding: 0px 0px 28px 0px;
            }
    }
  
    @media only screen and (max-width : 360px) {
        .text-al{
            text-align: center;
        }
        .carousel-caption {
            background-color: rgba(0, 0, 0, 0.5);
            text-align: left;
            padding: 5px 26px;
            margin: 61px -49px 85px -49px;
            line-height: 91%;
        }
        .ag-pad {
            padding: 0px 0px 28px 0px;
            }
        }
    @media only screen and (max-width : 320px) {
        .text-al{
            text-align: center;
        }
        .carousel-caption {
            background-color: rgba(0, 0, 0, 0.5);
            text-align: left;
            padding: 5px 26px;
            margin: 59px -42px 71px -43px;
            line-height: 91%;
        }
        .ag-pad {
            padding: 0px 0px 28px 0px;
            }
    }

.text-al{
    text-align: right;
}
.black-do{
    background-color: #000;
    padding: 10% 0;
}
.section {
    position: relative;
    background: #fff;
    color: #fff;
    text-align: center;
    padding: 4% 0 4%;
}
.section:before {
    position: absolute;
    content:'';
}
.section.diagonal {
    background: #fff;
}
.diagonal {
    z-index: 1;
    padding: 3em;
}
.diagonal:before {
    -webkit-transform: rotate(-3deg);
    transform: rotate(-3deg);
    -webkit-transform-origin: 3% 0;
    transform-origin: 3% 0;
    top: 0;
    left: -25%;
    z-index: -1;
    width: 150%;
    height: 75%;
    background: inherit;
}
.est-button{
    border: 2px solid #acacac;
    border-radius: 15px;
    color: #acacac;
    padding: 2% 9%;
    font-size: 9pt;
    text-shadow: black;
}
.est-button:hover{
    border: 2px solid #727272;
    border-radius: 15px;
    color: #727272;
    padding: 2% 9%;
    font-size: 9pt;
    text-shadow: black;
    text-decoration: none;
}

.est-button2{
    border: 2px solid #1cabe2;
    border-radius: 15px;
    color: #1cabe2;
    padding: 2% 9%;
    font-size: 12pt;
    text-shadow: black;
}
.asf-button{
    border: 2px solid #07d21f;
    border-radius: 15px;
    color: #59b030;
    padding: 2% 9%;
    font-size: 12pt;
    text-shadow: black;
}
.cons-button{
    border: 2px solid #ffda00;
    border-radius: 15px;
    color: #ffda00;
    padding: 2% 9%;
    font-size: 12pt;
    text-shadow: black;
}
.est-button2:hover{
    border: 2px solid #107ca5;
    border-radius: 15px;
    color: #107ca5;
    padding: 2% 9%;
    font-size: 12pt;
    text-shadow: black;
    text-decoration: none;
}
.asf-button:hover{
    border: 2px solid #3f831f;
    border-radius: 15px;
    color: #3f831f;
    padding: 2% 9%;
    font-size: 12pt;
    text-shadow: black;
    text-decoration: none;
}
.cons-button:hover{
    border: 2px solid #d1b300;
    border-radius: 15px;
    color: #d1b300;
    padding: 2% 9%;
    font-size: 12pt;
    text-shadow: black;
    text-decoration: none;
}
.ag-squere{
    padding: 0;
    margin: 0;
}
.ag-h4{
    padding-bottom: 5%;
}
.contacto{
    background-image: url(img/black-dia-footer.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    padding: 5% 20%;
}
.ag-h3{
    color: #fff;
}
.ag-p{
    font-size: 16pt;
    color: #fff;
}
.black{
    background: #000;
    border-top: 2px solid #acacac;
}
#ag-back{
    padding: 16px 0 14px 0;
}
footer{
    font-size: 10pt;
    color:#fff;
    padding: 20px 0 0 0;
    font-weight: 400;
}
.ag-blanc {
    color:#fff;
}
.ag-blanc:hover {
    color:#fff;
}
/*NORMAS DE LA SCT*/
.section-divider {
    z-index: 999;
    width: 100%;
    display: table;
    max-height: 450px;
    border-bottom: 0px solid #E6EAED;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 80px;
    padding-bottom: 80px;
    margin-top: 0px;
    background-position: center center;
    -webkit-background-size: 100%;
    -moz-background-size: 100%;
    -o-background-size: 100%;
    background-size: 100%;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-attachment: relative;
    text-align: center;
}
.textdivider h2 {
	padding-top: 0px;
	color: white;
	font-size: 40px;
}

.textdivider p {
	color: white;
	font-size: 25px;
}
.divider {
	background-image: url('img/banner-nosotros.png')
}
.normas {
    position: relative;
    background: #fff;
    color: #292929;
    text-align: left;
    padding: 6% 0 3%;
}
.nom{
    padding: 1% 0% 3%;
}
.ag-ul{
    color: #fff;
}
.li-ag{
    font-size: 12pt;
    color: #000000;
    list-style: none;
    padding-bottom: 6px;
}

.li-ag::before {
    content: "• ";
      color: #59b030;
}
.p-ag2{
    font-size: 12pt;
    color:#000;
}
/*SERVICIOS*/
.section-divider {
    z-index: 999;
    width: 100%;
    display: table;
    max-height: 450px;
    border-bottom: 0px solid #E6EAED;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 80px;
    padding-bottom: 80px;
    margin-top: 0px;
    background-position: center center;
    -webkit-background-size: 100%;
    -moz-background-size: 100%;
    -o-background-size: 100%;
    background-size: 100%;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-attachment: relative;
    text-align: center;
}
.textdivider h2 {
	padding-top: 0px;
	color: white;
	font-size: 40px;
}

.textdivider p {
	color: white;
	font-size: 25px;
}
.divider {
	background-image: url('img/banner-nosotros.png')
}
.p-ag2{
    font-size: 12pt;
    color: #000;
    text-align: left;
}
.h3-ag2{
    color: #000;
    text-align: left;
}
.p-ag3{
    font-size: 12pt;
    color: #000;
    
}
.h3-ag3{
    color: #000;
}
.img-back2{
    background-image: url(img/black-servicios-footer.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    padding: 13% 0;
}
.section2{
    position: relative;
    background: #fff;
    color: #000;
    padding: 1% 0 0%;
}
.p-tp{
    color: #fff;
    font-size: 12pt;
}
/*MAQUINARIA*/
.img-back2{
    background-image: url(img/black-maquinaria-footer.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    padding: 13% 0;
}
/*PROYECTOS*/
.thumbnail {margin-bottom:6px;}
.thumbnail {
    display: block;
    padding: 4px;
    margin-bottom: 20px;
    line-height: 1.42857143;
    background-color: #fff;
    border: 0px solid #ddd;
    /* border-radius: 4px; */
    -webkit-transition: border .2s ease-in-out;
    -o-transition: border .2s ease-in-out;
    transition: border .2s ease-in-out;
}
.carousel-control.left,.carousel-control.right{
  background-image:none;
  margin-top:0%;
  width:5%;
}
.thum-ag {
  filter: gray; /* IE6-9 */
  -webkit-filter: grayscale(0); /* Google Chrome, Safari 6+ & Opera 15+ */
    -webkit-box-shadow: 0px 2px 6px 2px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 2px 6px 2px rgba(0,0,0,0.75);
    box-shadow: 0px 2px 6px 2px rgba(0,0,0,0.75);
    margin-bottom:20px;
}

.thum-ag:hover {
  filter: none; /* IE6-9 */
  -webkit-filter: grayscale(1); /* Google Chrome, Safari 6+ & Opera 15+ */
 
}
.ag-h2{
    font-size: 18pt;
    color: #000;
}
.ag-h2:hover{
    font-size: 18pt;
    color: #000;
}
.ag-h2-2{
    font-size: 12pt;
    color: #000;
}
.ag-h2-2:hover{
    font-size: 12pt;
    color: #000;
}
.modal-header {
    padding: 10px;
    border-bottom: 0px solid #e5e5e5;
}
.modal-dialog {
    width: 80%;
    margin: 30px auto;
}
.modal-content {
    position: relative;
    background-color: rgba(0, 0, 0, 0);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 0px solid #999;
    border: 0px solid rgba(0,0,0,.2);
    border-radius: 0px;
    outline: 0;
    -webkit-box-shadow: 0 0px 9px rgba(0,0,0,.5);
    box-shadow: 0 0px 0px rgba(0,0,0,.5);
}
.close {
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=20);
    opacity: .2;
}
/*CONTACTO*/
.btn-skin {
    color: #fff !important;
    background-color: #acacac;
    border-color: #acacac;
    padding: 9px 40px;
    border-radius: 7px;
    font-size: 19px;    
}
.btn-lg,
.btn-group-lg > .btn {
  border-radius: 2px;
}
.row-back{
    background: rgba(255, 255, 255, 0.65);  
}
.home-section {
    padding-top: 44px;
	display:block;
    position:relative;
    z-index:120;
    padding-bottom: 22px;
}
.home-section.nopadd-bot {
    padding-bottom: 0;
}
.color-dark .section-heading h2 {
	color: #111;
}
.color-dark .section-heading p {
	color: #444;
}

.color-dark .divider-short {
	background: #666;
}
.color-dark .divider-header {
	background: #666;
}

.color-light .divider-short {
	background: #666;
}
.color-light .divider-header {
	background: #666;
}

.color-light .section-heading h2 {
	color: #fff;
}
.color-light .section-heading p {
	color: #fefefe;
}

.color-light blockquote,.color-light p {
	color: #fefefe;
}
.bg-white {
	background: rgba(255, 255, 255, 0);
}
marginbot-0{margin-bottom:0 !important;}
.marginbot-10{margin-bottom:10px !important;}
.marginbot-20{margin-bottom:20px !important;}
.marginbot-30{margin-bottom:30px !important;}
.marginbot-40{margin-bottom:40px !important;}
.marginbot-50{margin-bottom:50px !important;}
.marginbot-60{margin-bottom:60px !important;}
.marginbot-70{margin-bottom:70px !important;}
.marginbot-80{margin-bottom:80px !important;}
.marginbot-90{margin-bottom:90px !important;}
.marginbot-100{margin-bottom:100px !important;}

.margintop-0{margin-top:0 !important;}
.margintop-10{margin-top:10px !important;}
.margintop-20{margin-top:20px !important;}
.margintop-30{margin-top:30px !important;}
.margintop-40{margin-top:40px !important;}
.margintop-45{margin-top:45px !important;}
.margintop-50{margin-top:50px !important;}

.form-group {
  margin-bottom: 20px;
}

form#contact-form .form-group label {
	text-align: left !important;
	display: block;
	text-transform: uppercase;
	font-size: 16px;
}
form#contact-form input,form#contact-form select,form#contact-form textarea {
	font-size: 14px;
	line-height: 1.6em;
	border: 1px solid #eee;
  -webkit-box-shadow: none;
          box-shadow:  none;
	border-radius: 2px;
}

.btn-lg,
.btn-group-lg > .btn {
  border-radius: 2px;
}

form#contact-form input:focus,form#contact-form select:focus,form#contact-form textarea:focus {
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}
.input-group-addon {
  background-color: #fefefe;
  border: 1px solid #eee;
}

.widget-contact {
	text-align: left;
}
.li-ag2{
    font-size: 12pt;
    color: #fff;
    list-style: none;
    padding-bottom: 6px;
}

.li-ag2::before {
    content: "• ";
      color: #59b030;
}
.img-back3{
    background-image: url(img/black-prosesos-footer.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    padding: 13% 0;
}
.img-back4{
    background-image: url(img/black-prosesos-footer.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    padding: 13% 0;
}