body,
html {
  width: 100%;
  height: 100%;
}

body {
  font-family: 'Rajdhani', sans-serif;
}

hr {
  text-align: left;
  max-width: 150px;
  border-width: 3px;
  border-color: #40bab3;
}

hr.light {
  border-color: #fff;
}

a {
  color: #40bab3;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

a:hover {
  color: #40bab3;
}

p {
  font-size: 2em !important;
  text-align: left;
}

.text-left {
  text-align: left;
  font-size: 1em;
  font-weight: bold;
}

.green_text {
  color: #40bab3;
}

.white_text {
	color: #fff !important;
}

.ejecu_bg {
	background-image:url("../img/ejec.png")}
.ger_bg {
	background-image:url("../img/ger.png")}
.equip_bg {
	background-image:url("../img/equi.png")}
.cons_bg {
	background-image:url("../img/cons.png")}
.about_bg {
	background: linear-gradient(to right bottom, #ffffff 60%, #525659 40%);
}

.full-height {
  min-height: auto;
}

.tabtitle {
	text-decoration: underline;
}

.wider {  
  padding-left: 10px; 
  padding-right: 10px;
}

#myTab {
  border-bottom: 0px;
}

.dark-link {
  font-size: 0.8em;
  color: #525659;
}

.paginas {
  height: 86.5%;
	position: absolute;
  left: 50px;  
  overflow: hidden;
  text-align: right;
  padding-right: 0;
  margin-right: 10px;
}

.light-theme {
  color: white;
  border-right: 1px solid white;
}

.dark-theme {
  color: #525659;
  border-right: 1px solid #525659;
}

.pagina_item {
  width: 100%;
  margin-right: 0;
  font-family: 'Rajdhani', sans-serif;	
  font-size: 0.8em;
  text-align: right;
  padding-right: 20px;
  margin-bottom: 70px;  
}

.resaltado {
  color: #40bab3;
  font-size: 2em;
  font-weight: bold;
  border-right: 5px solid #40bab3;
}

.nav-tabs>li>a.active, .nav-tabs>li>a.active:focus, .nav-tabs>li>a.active:hover 
.nav-tabs>li>a, .nav-tabs>li>a:focus, .nav-tabs>li>a:hover{
	border: 0;
	background-color: transparent !important;
}

.nav-tabs>li>a.active.white, .nav-tabs>li>a.active.white:focus, nav-tabs>li>a.active.white:hover 
.nav-tabs>li>a.white, .nav-tabs>li>a.white:focus, .nav-tabs>li>a.white:hover{
	color: #fff !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Rajdhani', sans-serif;  
}

.bolder-text {
  font-weight: 900;
}

.bigger-text {
  font-size: 4em;  
  padding: 0;
  margin: 0;
  line-height:90%;
}

.bg-primary {
  background-color: #40bab3 !important;
}

.bg-dark {
  background-color: #5f666f !important;
}

.text-faded {
  color: rgba(255, 255, 255, 0.7);
}

section {
  padding: 8rem 0 ;
}

.section-heading {
  font-weight: bolder;
  color: #40bab3;
  text-align: left;
  margin-top: 0;
  margin-bottom: 40px;
}

::-moz-selection {
  color: #fff;
  background: #212529;
  text-shadow: none;
}

::selection {
  color: #fff;
  background: #212529;
  text-shadow: none;
}

.section-image {
  margin-top: 30px;
  width: 90%;
  height: 90%;  
}

img::selection {
  color: #fff;
  background: transparent;
}

img::-moz-selection {
  color: #fff;
  background: transparent;
}

#mainNav {
  border-bottom: 1px solid rgba(33, 37, 41, 0.1);
  background-color: #fff;
  font-family: 'Rajdhani';
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

#mainNav .navbar-brand {
  font-weight: 700;
  text-transform: uppercase;
  color: #40bab3;
  font-family: 'Rajdhani';
}

#mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
  color: #40bab3;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
  font-size: .9rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #212529;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
  color: #40bab3;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link.active,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active {
  color: #40bab3 !important;
  background-color: transparent;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active:hover {
  background-color: transparent;
}

@media (min-width: 992px) {
  #mainNav {
    border-color: transparent;
    background-color: transparent;
  }
  #mainNav .navbar-brand {
    color: rgba(255, 255, 255, 0.7);
  }
  #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
    color: #40bab3;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link {
    padding: 0.5rem 1rem;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link,
  #mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
    color: rgba(255, 255, 255, 0.7);
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
  #mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
    color: #40bab3;
  }
  #mainNav.navbar-shrink {
    border-bottom: 1px solid rgba(33, 37, 41, 0.1);
    background-color: #fff;
  }
  #mainNav.navbar-shrink .navbar-brand {
    color: #40bab3;
  }
  #mainNav.navbar-shrink .navbar-brand:focus, #mainNav.navbar-shrink .navbar-brand:hover {
    color: #40bab3;
  }
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link,
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus {
    color: #212529;
  }
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:hover,
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus:hover {
    color: #40bab3;
  }
}

header.masthead {
  padding-top: 10rem;
  padding-bottom: calc(10rem - 56px);
  background-image: url("../img/1.jpg");
  background-position: center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

header.masthead hr {
  margin-top: 30px;
  margin-bottom: 30px;
}

header.masthead h1 {
  font-size: 2rem;
}

header.masthead p {
  font-weight: 300;
}

@media (min-width: 768px) {
  header.masthead p {
    font-size: 1.15rem;
  }
}

@media (min-width: 992px) {
  header.masthead {
    height: auto;
    min-height: 650px;
    padding-top: 0;
    padding-bottom: 0;
  }
  header.masthead h1 {
    font-size: 3rem;
  }
  #servicios {
   padding: 0;
    min-height: 650px;  
    overflow: hidden;  
  }
  #nosotros {
    height: auto;
    min-height: 650px;    
    overflow: hidden;
  }
  #portfolio {
    height: auto;
    min-height: 650px;
    overflow: hidden;
  }
  #contact {
    height: auto;
    min-height: 650px;
    overflow: hidden;
  }
}

@media (min-width: 1200px) {
  header.masthead h1 {
    font-size: 4rem;
  }
}

#servicios {
  background-image: url("../img/serv_bg_01.png");
  background-position: center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.sub-section-header {
  width: 50%;
  color: #40bab3;
  font-size: 1.3em;
  font-variant: small-caps;
  letter-spacing: 0.1em;  
  border-bottom: 1px solid #5f666f;
  margin-bottom: 20px;
}

.service-box {
  max-width: 400px;
}

.portfolio-box {
  position: relative;
  display: block;
  max-width: 650px;
  margin: 0 auto;
}

.portfolio-box .portfolio-box-caption {
  position: absolute;
  bottom: 0;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
  color: #fff;
  background: rgba(0, 188, 180, 0.9);
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content {
  position: absolute;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
  text-align: center;
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category,
.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
  padding: 0 15px;
  font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
}

.portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
  font-size: 18px;
}

.portfolio-box:hover .portfolio-box-caption {
  opacity: 1;
}

.portfolio-box:focus {
  outline: none;
}

@media (min-width: 768px) {
  .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
    font-size: 16px;
  }
  .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
    font-size: 22px;
  }
}

.text-primary {
  color: #40bab3 !important;
}

.btn {
  font-weight: 700;
  text-transform: uppercase;
  border: none;
  border-radius: 300px;
  font-family: 'Open Sans', 'Helvetica Neue', Arial, sans-serif;
}

.btn-xl {
  padding: 1rem 2rem;
}

.btn-primary {
  background-color: #40bab3;
  border-color: #40bab3;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  color: #fff;
  background-color: #40bab3 !important;
}

.btn-primary:active, .btn-primary:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 188, 180, 0.5) !important;
}

.hexagon1 {
  position: relative;
  width: 300px; 
  height: 173.21px;
  margin: 86.60px 0;
  background-image: url("../img/3.jpg");
  background-size: auto 346.4102px;
  background-position: center;
}

.hexagon2 {
  position: relative;
  width: 300px; 
  height: 173.21px;
  margin: 86.60px 0;
  background-image: url("../img/4.jpg");
  background-size: auto 346.4102px;
  background-position: center;
}

.hexagon3 {
  position: relative;
  width: 300px; 
  height: 173.21px;
  margin: 86.60px 0;
  background-image: url("../img/5.jpg");
  background-size: auto 346.4102px;
  background-position: center;
}

.hexTop,
.hexBottom {
  position: absolute;
  z-index: 1;
  width: 212.13px;
  height: 212.13px;
  overflow: hidden;
  -webkit-transform: scaleY(0.5774) rotate(-45deg);
  -ms-transform: scaleY(0.5774) rotate(-45deg);
  transform: scaleY(0.5774) rotate(-45deg);
  background: inherit;
  left: 43.93px;
}

/*counter transform the bg image on the caps*/
.hexTop:after,
.hexBottom:after {
  content: "";
  position: absolute;
  width: 300.0000px;
  height: 173.20508075688775px;
  -webkit-transform:  rotate(45deg) scaleY(1.7321) translateY(-86.6025px);
  -ms-transform:      rotate(45deg) scaleY(1.7321) translateY(-86.6025px);
  transform:          rotate(45deg) scaleY(1.7321) translateY(-86.6025px);
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  background: inherit;
}

.hexTop {
  top: -106.0660px;
}

.hexTop:after {
  background-position: center top;
}

.hexBottom {
  bottom: -106.0660px;
}

.hexBottom:after {
  background-position: center bottom;
}


.hexagon:after {
  content: "";
  position: absolute;
  top: 0.0000px;
  left: 0;
  width: 300.0000px;
  height: 173.2051px;
  z-index: 2;
  background: inherit;
}

.texto_hex {
  color: #40bab3;
  font-size: 1.3em;
  font-variant: small-caps;
  font-weight: bolder;
  letter-spacing: 0.1em; 
}

.forma_hex {
  position: relative;
  width: 50px; 
  height: 28.87px;
  line-height: 28.87px;
  text-align: center;
  background-color: #ffffff00;
  margin: 14.43px 0;    
  border-left: solid 5px #00bcb4;
  border-right: solid 5px #00bcb4;
}

.forma_hex:before,
.forma_hex:after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 35.36px;
  height: 35.36px;
  -webkit-transform: scaleY(0.5774) rotate(-45deg);
  -ms-transform: scaleY(0.5774) rotate(-45deg);
  transform: scaleY(0.5774) rotate(-45deg);
  background-color: inherit;
  left: 2.3223px;
}

.forma_hex:before {
  top: -17.6777px;
  border-top: solid 7.0711px #00bcb4;
  border-right: solid 7.0711px #00bcb4;
}

.forma_hex:after {
  bottom: -17.6777px;
  border-bottom: solid 7.0711px #00bcb4;
  border-left: solid 7.0711px #00bcb4;
}


#portfolio {  
  background-image: url("../img/bgtest.jpg");
  background-position: center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.hex_align {
  display: inline-block;
  float: left;
  margin-top: -15px;  
}

.push-left {
  margin-left: 40px;
}

.squared-control {
  border-radius: 0% !important;
  background: transparent;
}

.squared-control-green {
  border: 1px solid #00bcb4 !important;
  border-radius: 0% !important;
  background: transparent;
  color: #00bcb4 !important;
  text-transform: none !important;
  font-size: 0.8em;
  font-weight: normal;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: white !important;
  opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: white !important;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: white !important;
}

.test {
  border: 1px solid black;
}

.port_intro_container {  
  float: left;
  width: 35%;
  height: 100%;
  margin-left: 100px;
  padding-left: 60px;
  color: white;  
}

.port-subtitle {
  margin-top: 50px;
  padding-left: 20px;
  font-size: x-large;
  font-weight: bold;
}

.port-intro-text {
  margin-top: 50px;
  padding-left: 20px;
  font-size: large;  
}

.galeria {
  width: 100%;
  float: left;
  height: 100%;
  margin-top: 100px;
  padding-top: 20px;
  margin-left: 20px;  
  vertical-align: middle;
  border-top: 3px solid white;
}

.galeria-item {
  float: left;
  width: 30%;
  margin-left: 10px;
  margin-right: 10px;
  height: 90%;  
}

.galeria-thumb {
  width: 150px;
  height: 150px;
}

footer {
  height: 200px;
  background-color: #00bcb4;
  color: white;
  vertical-align: middle;
}

#footer_container {
  width: 70%;
  margin: 0 auto;
  padding-top: 10px;
}

#footer_logo {
  float: left;
  width: 30%;
  height: 80px;  
  padding: 10px;
}

#footer_menu {
  float: left;
  width: 70%;
  height: 80px;
  text-align: right;
  padding-top: 10px;
  padding-right: 50px;
}

#footer_menu div {
  display: inline-block;
  width: 100px;
  text-transform: uppercase;  
  font-size: large;
}

#footer_contacto {
  float: left;
  width: 30%;
  height: 80px;
  line-height: 90%;
  vertical-align: bottom;
  padding-bottom: 10px;
}

#footer_copy {  
  float: left;
  width: 70%;
  height: 80px;
  text-align: right;
  vertical-align: baseline;
  padding-right: 50px;
}

/* new hexagon */
.hex_agon {
    overflow: hidden;
    visibility: hidden;
    -webkit-transform: rotate(120deg);
       -moz-transform: rotate(120deg);
        -ms-transform: rotate(120deg);
         -o-transform: rotate(120deg);
            transform: rotate(120deg);
    cursor: pointer;	  
	  
    }
.hexagon-in1 {
    overflow: hidden;
    width: 100%;
    height: 100%;	
    -webkit-transform: rotate(-60deg);
       -moz-transform: rotate(-60deg);
        -ms-transform: rotate(-60deg);
         -o-transform: rotate(-60deg);
            transform: rotate(-60deg);	  
    }
.hexagon-in2 {
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50%;    
    visibility: visible;	  	  
    -webkit-transform: rotate(-60deg);
       -moz-transform: rotate(-60deg);
        -ms-transform: rotate(-60deg);
         -o-transform: rotate(-60deg);
            transform: rotate(-60deg);	  
    }
.hexagon-in2:hover {
    background-color: #DE453B;
    }

.hexagon-in2-2 {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50%;  
  visibility: visible;	  	  
  -webkit-transform: rotate(-60deg);
      -moz-transform: rotate(-60deg);
      -ms-transform: rotate(-60deg);
        -o-transform: rotate(-60deg);
          transform: rotate(-60deg);	  
  }   
.hexagon-in2-2:hover {
  background-color: #40BAB3;
  }

.hexagon-in2-3 {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50%;  
  visibility: visible;	  	  
  -webkit-transform: rotate(-60deg);
      -moz-transform: rotate(-60deg);
      -ms-transform: rotate(-60deg);
        -o-transform: rotate(-60deg);
          transform: rotate(-60deg);	  
  }
  .hexagon-in2-3:hover {
    background-color: #DCA817;
    }
	.hexagon-in2-4	{
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50%;  
  visibility: visible;	  	  
  -webkit-transform: rotate(-60deg);
      -moz-transform: rotate(-60deg);
      -ms-transform: rotate(-60deg);
        -o-transform: rotate(-60deg);
          transform: rotate(-60deg);
	
	  }
	.hexagon-in2-4:hover {
   
	background-color: #5C6670;
	;
    }

.hexagon1 {
    width: 390px;
    height: 190px;
    margin: 0 0 0 -80px;	  
    }

.hex1_placement {
	margin-top: 114px;
	margin-left:168px;
}

.hex2_placement {
	margin-top: -8px;
	margin-left:488px;
}

.hex3_placement {
	margin-top: -374px;
	margin-left:808px;
}
.hex4_placement {
	margin-top: 216px;
	margin-left:1233px;
}

.hex_text {	
	width: 260px;	
	color: white;
  font-size: 1.1em;
  padding-left: 130px;
  padding-top: 60px;
  text-align: center;
  vertical-align: middle;
}