/* generic */

.content-banner {
    padding-right: 280px !important;
}
.main-container-banner {
    position: fixed;
    width: calc(100% - 400px);
    display: flex;
    justify-content: end;
}

.main-container-banner.left {
    position: fixed;
    width: calc(100% - 400px);
    display: flex;
    justify-content: start;
}

@media all and (max-width: 993px) {
    .content-banner {
        padding-right: 20px !important;
    }
}

/* 1_main */

.container-banner-1 {
    width: 320px;
    height: 250px;
    text-align: center;
    line-height: 90px; 
    color: #858383;
    font-size: 14px;
}

.main-container-banner-2 {
    background-color: white;
    z-index: 100;
}

.main-container-inner-banner-2 {

    display: flex;
    justify-content: center;
    padding-bottom: 2.5rem;
    padding-top: 2.5rem;
}

.container-banner-2 {
    width: 1200px;
    text-align: center;
    line-height: 90px; 
    color: #999;
    font-size: 14px;
}

.container-banner-2 img {
    width: 100%;
    height: auto;
    object-fit: cover; 
}

@media all and (max-width: 993px) {

    .section-welcome-gen {
        margin-top: 0px;
    
    }
    
    .main-container-inner-banner-2 {
        padding-bottom: 24px !important;
        padding-top: 0px !important;
    }
}

@media all and (max-width: 450px) {

    .main-container-inner-banner-2 {
        padding-bottom: 24px !important;
        padding-top: 0px !important;
    }

   .main-container-banner-2 {
    padding-right: 0px !important;
    padding-left: 0px !important;
   }
}

/* 2_obra_nueva */

.cont-content-inner {
    padding-right: 20px
}

.container-banner-3 {
    height: 600px;      
}

@media all and (max-width: 993px) {
    .container-banner-3 {
        display: none;
    }

    .cont-content-inner {
        padding-right: 0px;
    }
}

/* 5_fabricantes */

.side-banner {
    position: fixed; 
    top: 0;
    bottom: 0; 
    width: 18vw; 
    max-width: 250px; 
    overflow: hidden; 
    margin: 120px 20px 20px;
}

.side-banner-2 {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  width: clamp(150px, 40vw, 600px); 
  margin: 168px 20px 20px 20px;     
  overflow: hidden;
}


@media (min-width: 1200px) {
  .side-banner-2 {
    margin-right: 90px;
  }
}

@media (min-width: 2000px) {
  .side-banner-2 {
    width: clamp(200px, 40vw, 900px); 
    margin-right: 120px;
  }
}

.side-banner-2 img {
  max-width: 100%;   
  height: auto;      
  display: block;  
}

.left-banner {
    left: 0;
}

.right-banner {
    right: 0;
}

.main-content {
    margin-left: 15vw;
    margin-right: 15vw;
    padding: 20px; 
}

@media all and (max-width: 993px) {
   .main-content {
        margin-left: 0px !important; 
        margin-right: 0px !important; 
    }
    .side-banner, .side-banner-2 { display: none !important;}
}

.side-banner img {
    width: 100%;
    height: auto;
    object-fit: cover; 
}