/* ------------------- */
/* Reset               */
/* ------------------- */

/* Box sizing */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Reset margins */
body,
h1,
h2,
h3,
h4,
h5,
p,
figure,
picture {
    margin: 0;
}

/* set up the body */
body{
    line-height: 1.5;
    min-height: 100vh;
    font-family: "Oswald", sans-serif;
}

.blue{
    color: #111947;
}

.orange{
    color: #F73F01;
}

/* make images easier to work with */
img,
picture{
    max-width: 100%;
    display: block;
}

/* make form elements easier to work with */
input,
button,
textarea,
select {
    font: inherit;
}

/* ------------------- */
/* Layout              */
/* ------------------- */

/* navigation */

.main-grid{
    display: grid;
    grid-template-columns: minmax(.5em, 1fr) minmax(0px, 800px) minmax(.5em, 1fr);
    grid-column-gap: .2em;
}

.header{
    background: #fff;
}

.header-content{
    display: flex;
    grid-column: 2 / -2;
    align-items: center;
    padding: .7em 0;
}

.nav{
    position: fixed;
    background:  #faf8f7;
    top: 0;
    right: 0;
    bottom: 0;
    left: 100%;
    width: 50%;
    transform:translateX(0);
    transition: transform 750ms;
    z-index: 9999;
}

.nav-list{
    display: flex;
    flex-direction: column;
    list-style: none;
    margin-top: 7em;
    padding: 0;
    height: 100%;
    align-items: right;
    justify-content: start;
}

.nav-item{
    margin-bottom: 2em;
    margin-left: 2em;
    
}

.nav-link{
    color: #111947;
    text-decoration: none;
    font-size: 1rem;
    transition: color 350ms;
    text-transform: uppercase;
}

.nav-link:hover,
.nav-link:focus {
    color: #F73F01;
}



.open-nav{
    border: 0;
    background: 0;
    color: #111947;
    cursor: pointer;
    margin-left: auto;
    font-weight: 700;
    font-size: 1.7rem;
    padding: .4em 0;
}

.close-nav{
    border: 0;
    background: 0;
    color:#111947;
    font-weight: 300;
    font-size: 4rem;
    cursor: pointer;
    padding: .4em;
    position: absolute;
    top: -20px;
    right: -5px;
}


.navigation-open{
    transform: translateX(-100%);
 }

 /* ==================
    hero area
===================== */

.hero{
    display: grid;
}

.hero > *{
    grid-column: 1 / -1;
}


.background-image{
    background-image: url(../images/hero3.png);
     width: 100%;
     height: 50vh; /* Defina a altura desejada */
     background-size: cover;  /* Para cobrir toda a área */
     background-position: center; /* Centraliza a imagem */
     background-repeat: no-repeat; /* Evita repetição */
     
  }

  .quem-somos{
    display: grid;
  }

  .quem-somos > *{
    grid-column: 2 / -2;
  }

  .button-general{
        font-family: "Raleway", sans-serif;
        padding: .2em 1em;
        border-radius: 10px;
        white-space: nowrap;
  }

  .quem-somos-title{
        display: grid;
        justify-self: center;
        font-weight: 700;
        font-size: 2rem;
        margin-top: 2em;
        color: #fff;
        background: #F73F01;
  }

  .quem-somos-div{
    display: grid;
  }

  .div-img{
    margin-top: 3em;
    margin-bottom: 2em;
    justify-self: center;
    border-radius: 10px;
  }

  .div-texts{
    display: grid;
  }

  .div-text{
    display: grid;
    justify-self: center;
    color: #111947;
    font-family: "Raleway", sans-serif;
    font-size: 1.1rem;
    margin-bottom: 20px;
    text-align: center;
  }

  .contact-button{
    border: 3px solid #F73F01;
    border-radius: 4px;
    padding: .5em 1.75em;
    color: #F73F01;
    font-weight: 700;
    text-decoration: none;
    font-size: .9rem;
    margin-bottom: 2.5em;
    text-transform: uppercase;
    font-family: "Raleway", sans-serif;
    text-align: center;
    justify-self: center;
  }

  /* Serviços */

  .services{
    background: #F7F7F7;
    
}

.services > *{
    grid-column: 2 / -2;
    text-align: center;
}

.services-title{
        display: grid;
        justify-self: center;
        font-weight: 700;
        font-size: 2rem;
        margin-top: 2em;
        color: #fff;
        background: #111947;
}

.col{
    border-radius: 10px;
    grid-column: 2 / -2;
    display: grid;
    background: #fff;
    border: 1px solid #ced2ee;
    max-width: 400px;
    justify-self: center;
    margin-top: 3em;
    
    
}

.card-3d {
    background: #ffffff; /* Fundo do card */
    padding: 20px;
    border-radius: 10px;
    position: relative;
    box-shadow: 
        4px 4px 8px rgba(0, 0, 0, 0.3),  /* Sombra externa para profundidade */
        -4px -4px 8px rgba(255, 255, 255, 0.6), /* Iluminação superior */
        inset 3px 3px 6px rgba(0, 0, 0, 0.2), /* Sombra interna */
        inset -3px -3px 6px rgba(255, 255, 255, 0.4); /* Reflexo interno */
    transition: all 0.2s ease-in-out;
}

/* Efeito ao passar o mouse */
.card-3d:hover {
    box-shadow: 
        6px 6px 12px rgba(0, 0, 0, 0.4), 
        -6px -6px 12px rgba(255, 255, 255, 0.7), 
        inset 4px 4px 8px rgba(0, 0, 0, 0.2), 
        inset -4px -4px 8px rgba(255, 255, 255, 0.4);
    transform: translateY(-2px);
}

/* Efeito de clique */
.card-3d:active {
    box-shadow: 
        inset 6px 6px 12px rgba(0, 0, 0, 0.4), 
        inset -6px -6px 12px rgba(255, 255, 255, 0.7);
    transform: translateY(2px);
}

.contact-button-mod{
    background: linear-gradient(135deg, #F73F01, #C62E01); /* Degradê baseado na cor principal */
    color: white;
    font-size: 16px;
    font-weight: bold;
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background 0.3s ease-in-out;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    display: inline-block;
}

.hover-emp{
    background: linear-gradient(135deg, #F73F01, #C62E01); /* Degradê baseado na cor principal */
    color: white;
    font-size: 16px;
    font-weight: bold;
    padding: 5px 24px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background 0.3s ease-in-out;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    display: inline-block;
}

/* Efeito de hover - aumenta de tamanho e intensifica o gradiente */
.contact-button-mod:hover,
.hover-emp:hover {
    transform: scale(1.1);
    background: linear-gradient(135deg, #FF5722, #C62E01); /* Gradiente mais vibrante no hover */
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.4);
}

/* Efeito de clique - dá uma leve "afundada" */
.contact-button-mod:active-mod{
    transform: scale(1.05);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
}



.contact-button-mod-azul {
    background: linear-gradient(135deg, #111947, #070E2E); /* Degradê azul escuro profissional */
    color: white;
    font-size: 16px;
    font-weight: bold;
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out, background 0.3s ease-in-out;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    display: inline-block;
}

/* Efeito de hover - aumenta de tamanho e intensifica o gradiente */
.contact-button-mod-azul:hover {
    transform: scale(1.1);
    background: linear-gradient(135deg, #1A237E, #0D1548); /* Gradiente mais vibrante no hover */
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.4);
}

/* Efeito de clique - dá uma leve "afundada" */
.contact-button-mod-azul:active {
    transform: scale(1.05);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
}

.servicos-titulo-h2 {
    background-color: #111947;
    color: #fff;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    padding: 16px 24px;
    border-radius: 10px;
    letter-spacing: 1.5px;
    cursor: pointer;
    transition: color 0.3s ease-in-out, text-shadow 0.3s ease-in-out;
    display: inline-block;
}

/* Efeito no hover - brilho sutil no texto */
.servicos-titulo-h2:hover {
    color: #ffd700; /* Dourado para um efeito premium */
    text-shadow: 0 0 10px rgba(255, 215, 0, 0.8);
}

/* Removendo qualquer efeito de aumento no clique */
.servicos-titulo-h2:active {
    transform: none;
}

.servicos-titulo-h2-laranja{
    background-color: #FF5722;
    color: #fff;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    padding: 16px 24px;
    border-radius: 10px;
    letter-spacing: 1.5px;
    cursor: pointer;
    transition: color 0.3s ease-in-out, text-shadow 0.3s ease-in-out;
    display: inline-block;
}

/* Efeito no hover - brilho sutil no texto */
.servicos-titulo-h2-laranja:hover {
    color: #ffd700; /* Dourado para um efeito premium */
    text-shadow: 0 0 10px rgba(255, 215, 0, 0.8);
}

/* Removendo qualquer efeito de aumento no clique */
.servicos-titulo-h2-laranja:active {
    transform: none;
}


.col-img{
    justify-self: center;
    order: -1;
    border-radius: 10px;
    margin: 0;
    
}

.col-title{
    font-family: "Raleway", sans-serif;
    font-weight: 600;
    font-size: 1.4rem;
    margin-bottom: .7em;
    margin-top: 1em;
}

.col-text{
    color: #111947;
    font-family: "Raleway", sans-serif;
    font-size: 1.1rem;
    margin-bottom: 3em;
    text-align: center;
    padding-inline: 1em;
}

.services-btn{
    margin-top: 20px;
    color: #fff;
    border-color: #111947;
    justify-self: center;
}

.sec-emp{
    justify-content: center;
    margin-bottom: 3em;
}

.div-empreendimentos{
    display: grid;
}

.div2-empreendimentos{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.h3-empreendimento-azul{
    font-size: 1.2rem;
    margin-top: 3em;
}

.parque-industrial-img{
    margin-top: 3em;
    margin-bottom: .5em;
    justify-self: center;
    border-radius: 10px;
}

.parque-industrial-mapa{
    margin-top: 1em;
    justify-self: center;
    border-radius: 10px;
}

.parque-text{
    color: #111947;
    font-family: "Raleway", sans-serif;
    font-size: 1.1rem;
    margin-bottom: 3em;
    padding-inline: 1em;
    margin-top: 3em;
    text-align: center;
    justify-self: center;
    max-width: 500px;
}

.negrito{
    font-weight: 700;
}

.h3-empreendimento-laranja{
    background-color: #F73F01;
    margin-top: 1em;
    margin-bottom: 1em; 
}

.jardim-list{
    text-align: left;
    margin-top: 2em;
    font-weight: 700;
    padding-inline: 0;
    width: 100%;
    align-self: center;
}

/* footer */

.footer > *{
    grid-column: 2 / -2; /* Garante que use as colunas principais */
}

.footer{
    padding: 3em 4em 0;
    margin: 0;
    background-color: #111947;
    font-family: "Raleway", sans-serif;    
    
   justify-items: center;
}

.footer-sec1 img{
    margin-bottom: 2em;
}

.footer-sec1{
    margin-bottom: 2em;
    width: 200px;
}

.footer-sec2{
    margin-bottom: 2em;
    min-width: 200px;
}

.footer img{
    min-width: 150px;
}

.footer-h3{
    margin: .5em 0;
    font-weight: 600;
    font-size: 1rem;
    letter-spacing: 1px;
    color: #F7F7F7;
}

.footer-list{
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer-links{
   text-decoration: none;
   color: #F7F7F7;
   line-height: 2.5;
   font-family: "Poppins";
   font-size: .85rem;
   font-weight: 400;
   white-space: nowrap;
}

.footer-mark{
    text-decoration: none;
    color: #c6c6c6;
    line-height: 2;
    font-family: "Raleway", sans-serif;
    font-size: .6rem;
    font-weight: 400;
    margin-top: 4em;
    text-align: center;
    white-space: nowrap;
}

.copyright{
    color: #F7F7F7;
    font-size: .8rem;
}

.fa-brands{
    font-size: 1.3rem;
}

.fa-regular{
    font-size: 1.1rem;
}

.footer-dev {
    display: flex;
    align-items: end; /* Alinha verticalmente */
    justify-content: center; /* Centraliza na horizontal */
    white-space: nowrap;
    margin: 0;
    padding: 0;
    align-self: flex-end;
}

.footer-dev-img {
    height: 20px; /* Ajuste o tamanho do logo conforme necessário */
    margin: auto 0;
    padding: 0;
    margin-left: -30px;
}

.footer-mark-dev{
    margin-top: 0;
    
}

.footer-group{
    display: grid;
    justify-content: center;
}

.emp-orange{
    background-color: #F73F01;
}

.image-grid{
    margin: 3em 0;
}

.active{
    border-bottom: 2px solid #F73F01;
}

.a-serv {
    text-decoration: none; /* Remove qualquer sublinhado */
    color: white; /* Define a cor branca por padrão */
}

.a-serv:visited {
    color: white; /* Mantém a cor branca após o clique */
    text-decoration: none; /* Garante que não volte o sublinhado */
}


.a-serv:active {
    color: white; /* Mantém branco quando o link é pressionado */
}



  @media(max-width: 980px){
    .div-text{
        max-width: 750px;
        padding: 0 1em;
        text-align: center;
        align-self: center;
    }

    .h2-sarandi{
        margin-top: 0;
      }

      .parque-text{
        margin-bottom: 0;
      }
  }

 @media(max-width: 600px){
    .image-grid {
        display: grid;
        grid-template-columns: 1fr; /* Apenas 1 coluna */
        gap: 1em;
        justify-content: center; /* Centraliza a grid */
        width: 100%;
        justify-self: center;
    }

    .image-grid img {
        max-width: 100%; /* Garante que a imagem não ultrapasse a largura */
        width: 100%; /* Para ocupar o espaço da coluna */
        height: auto;
        justify-self: center;
    }

    .logo-img{
        max-width: 200px;
    }
 }

 @media(min-width: 601px){
    .two-column-grid {
        display: grid;
        grid-template-columns: minmax(.5em, 1fr) repeat(2, minmax(225px, 675px)) minmax(.5em, 1fr);
        gap: 1em;
        
    }
 
   
        .image-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr); /* 2 colunas */
            gap: 1em; /* Espaçamento entre as imagens */
        }
    
        .image-grid img {
            width: 100%; /* Para ocupar toda a coluna */
            height: auto; /* Mantém a proporção */
            border-radius: 10px; /* Apenas para um visual mais bonito */
        }
    
 }

 @media(min-width: 980px){

    .footer-sec1{
        grid-column: 2 / 3;
      }
  
      .footer-sec2{
          grid-column: -2 / -3;
          justify-self: end;
      }
  
      .footer-mark{
          grid-column: 2 / -2;
          margin-top: 0;
         
      }

      .footer-dev{
        grid-column: 2 / -2;
        margin-top: 0;
      }

      .mark{
        grid-column: 2 / -2;
        display: flex;
        justify-content: space-between; /* Distribui o espaço entre os itens */
        align-items: center; /* Alinha verticalmente os itens no centro */
        padding: 10px; /* Adiciona um espaçamento interno */
        gap: 15em;
        padding-bottom: 0;
      }
      
      

 }

 @media(min-width: 980px){
    .main-grid {
        grid-template-columns: minmax(.5em, 1fr) repeat(3, minmax(150px, 450px)) minmax(.5em, 1fr);
        gap: 1em;
    }

    .two-column-grid {
        display: grid;
        grid-template-columns: minmax(.5em, 1fr) repeat(2, minmax(225px, 675px)) minmax(.5em, 1fr);
        gap: 1em;
        
    }
 
   
        .image-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr); /* 2 colunas */
            gap: 1em; /* Espaçamento entre as imagens */
            width: 80%;
            justify-self: center;
        }
    
        .image-grid img {
            width: 100%; /* Para ocupar toda a coluna */
            height: auto; /* Mantém a proporção */
            border-radius: 10px; /* Apenas para um visual mais bonito */
        }
    
    

    .open-nav,
    .close-nav {
        display: none;
    }

    .nav{
        position: initial;
        width: 100%;
        height: 100%;
        background-color: #fff;
    }

    .nav-list{
        flex-direction: row;
        justify-content: flex-end; 
        margin-top: 0; 
        align-items: center;
    }

    .nav-item{
        margin-left: 5em;
        margin-bottom: 0;
    }

    .nav-link{
        font-size: 1rem;
    }

    .logo-img{
        min-width: 260px;
    }

    .background-image{
        height: 80vh;
    }

    .quem-somos-div{
        display: flex;
        align-items:center;
        justify-content: center;
        gap: 100px;
        margin-top: 3em;
    }

    .div-img{
        margin-top: 0;
    }

    .div-texts{
        align-items: start;
    }

    .div-text{
        text-align: left;
        max-width: 500px;
        margin-bottom: 20px;
    }

    .contact-button{
        justify-self: start;
    }

    .col{
        grid-column: span 1;
        
    }

    .col:nth-child(2){
        grid-column: 2 /span 1;
    }

    
    .col2:nth-child(4) {
        grid-column: 1;
        }
    
        .col2:nth-child(5) {
            grid-column: 2;
        }
    
        .col2:nth-child(6) {
        grid-column: 3;
        }

    .services-btn{
        justify-self: center;
    }

    .empreendimentos{
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: 150px;
    }

    .h3-empreendimento-laranja{
        background-color: #F73F01;
        margin-top: 3em;
        margin-bottom: 0;
    }

    .jardim-list{
        margin-top: 3em;
    }

  

 }

 .dados-contato{
    color: #F73F01;
    background-color: #111947;
    border: 2px solid #F73F01;
}

.link-title{
    text-decoration: none;
    color: #fff;
}

