*, *:before, *:after {box-sizing: border-box;}
 

html {
      margin: 0;
      padding: 0;
      width: 100%;
      overflow-x: hidden;
}

body {
      margin: 0;
      padding: 0;
      width: 100%;
      font-family: 'General Sans', sans-serif;
      font-size: 16px;
      -moz-webkit-font-smoothing: antialiased;
      -webkit-font-smoothing: antialiased;
      -o-webkit-font-smoothing: antialiased;
      -ms-webkit-font-smoothing: antialiased;
      z-index: 1!important;
      overflow-x: hidden;
      transition: all 0.5s ease;
}

a {
    text-decoration: none;
}

:root{
    --color-blue: #0c165e;
    --color-blue-0: #0c165e00;
    --color-light-blue: #00a2ff;
    --gradient-blue: linear-gradient(180deg, var(--color-blue-0), var(--color-blue));
    --gradient-blue-2: linear-gradient(0deg, var(--color-blue-0), var(--color-blue));
    --color-orange: #f48435;
}

/*----Grid-Start----*/
.col-8 {
    grid-column: span 8;
}


.col-6 {
    grid-column: span 6;
}

.col-6-center {
    grid-column-start: 2;
    grid-column-end: 8;
}

.col-4 {
    grid-column: span 4;
}

.col-4-offset-4 {
    grid-column-start: 5;
    grid-column-end: 9;
}

.col-4-center {
    grid-column-start: 3;
    grid-column-end: 7;
}

.col-3 {
    grid-column: span 3;
}

.col-3-offset-1 {
    grid-column: 5/span 3;
}

.col-2-offset-2 {
    grid-column: span 2;
}

.col-2-offset-1 {
    grid-column-start: 2;
    grid-column-end: 4;
}

.col-2{
    grid-column: span 2;
}

.col-1 {
    grid-column: span 1;
}

.grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 20px;
}

.grid-center {
    display: grid;
    align-items: center;
    align-content: center;

}

.grid-center-horizontal {
    display: grid;
    justify-items: center;
}

/*----Grid-End----*/


/*---Spaces-Star---*/

.pdg-all {
    padding: 10px;
    transition: all 0.5s ease;

}

.pdg-all-xl {
    padding: 30px;
    transition: all 0.5s ease;
}

.pdg-xl{
    padding: 25vh 0;
}

.mt-0 {
    margin-top: 0;
}

.mt-1 {
    margin-top: 1em;
}

.mt-2 {
    margin-top: 2em;
}

.mt-3 {
    margin-top: 3em;
}

.mt-4 {
    margin-top: 4em;
}

.mt-5 {
    margin-top: 5em;
}

.mt-6 {
    margin-top: 6em;
}

.mt-7 {
    margin-top: 7em;
}

.mt-8 {
    margin-top: 8em;
}

.mt-9{
    margin-top: 9em;
}

.mt-10 {
    margin-top: 10em;
}

.mb-0 {
    margin-bottom: 0;
}

.mb-1 {
    margin-bottom: 1em;
}

.mb-2 {
    margin-bottom: 2em;
}

.mb-3 {
    margin-bottom: 3em;
}

.mb-4 {
    margin-bottom: 4em;
}

.mb-5 {
    margin-bottom: 5em;
}

.mb-6 {
    margin-bottom: 6em;
}

.mb-7 {
    margin-bottom: 7em;
}

.mb-8 {
    margin-bottom: 8em;
}

.mb-9 {
    margin-bottom: 9em;
}

.mb-10 {
    margin-bottom: 10em;
}

.mtb-xl {
    margin-top: 25vh;
    margin-bottom: 25vh;
}



/*---Spaces-End---*/


/*---Typography-Star---*/

h1 {
  margin: 0;
}

h2 {
  margin: 0;
}

h3 {
  margin: 0;
}

p {
    margin: 0;
}

.big-title {
    font-weight: 600;
    font-size: 4.5vw;
    letter-spacing: -0.05em;
    line-height: 1;
}

.title-xxl {
    font-weight: 600;
    font-size: 20vw;
    letter-spacing: -0.05em;
    line-height: 1;
}

.title {
    font-weight: 600;
    font-size: 3vw;
    letter-spacing: -0.05em;
    line-height: 1;
}

.text {
    font-size: 16px;
    line-height: 2;
}

.text-center {
    text-align: center;
}

.uppercase {
    text-transform: uppercase;
}

.bold {
    font-weight: 600;
}

.regular {
    font-weight: 400;
}

/*---Typography-End---*/


.top {
    background: url(../images/background-top.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
    height: 100vh;
}

.gradient-background {
    background: var(--gradient-blue);
    height: 100vh;
    width: 100%;
    position: absolute;
}


.gradient-background-2{
    background: var(--gradient-blue);
    background-size: cover;
    width: 100%;
    position: absolute;
}

.logo-top {
    position: absolute;
    width: 20vw;
    height: auto;
    left: 0;
    right: 0;
    top: 30px;
    margin: auto;
    z-index: 1;
}

.logo-footer {
    width: 20vw;
    height: auto;
    margin: 0 auto;
}

.arrow {
    position: absolute;
    height: 40px;
    width: 40px;
    border-style: solid;
    border-color: white;
    border-width: 0px 1px 1px 0px;
    transform: rotate(45deg);
    transition: all 1s ease;
    bottom: 30px;
    left: 0;
    right: 0;
    margin: auto;
}

.arrow:hover {
    border-color: #ffffff70
}

.whatsapp {
    height: 50px;
    width: auto;
    position: fixed;
    bottom: 30px;
    right: 30px;
}

.icon {
    height: 10vw;
    width: auto;
    opacity: 0.3;
}

.color-white {
    color: white;
}

.color-blue {
    color: var(--color-blue);
}

.color-light-blue {
    color: var(--color-light-blue)
}

.color-gray {
    color: gray;
}

.hero-title {
    position: absolute;
    height: 100vh;
    width: 100%;
    display: grid;
    align-items: center;
    align-content: center;
    justify-content: center;
}

.vantagens {
    background: var(--color-blue);
    overflow: hidden;
}

.line {
    border-top: 1px solid #ffffff30;
}

.images {
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.vantagens-2 {
    background: var(--gradient-blue-2), url(../images/solar-city.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    /*background-attachment: fixed;*/
    height: 100vh;
}

.solar-panels {
    background: var(--gradient-blue), url(../images/solar-panels.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 50vmax;
}

.cta {
    background: url(../images/visita.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
}

.contato {
    background-color: var(--color-blue);
}

.background-footer {
    background: var(--gradient-blue-2), url(../images/footer.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}


.hgt100 {
    height: 100%;
}

.flex-end {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: flex-end;
}

.flex-center {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: center;
}

.services {
    width: 100%;
    border-radius: 100%;
}

.circle {
    color: rgba(255, 255, 255, 0);
    border-color: 1px solid #ffca37;
    position: absolute;
}

.button {
    padding: 20px;
    background-color: var(--color-light-blue);
    border-radius: 50px;
    margin-top: 2em;

    cursor: pointer;
}

.button:hover {
    background-color: var(--color-orange);
}

.vantagens-kammers {
    background-color: var(--color-blue);
}

.flex {
    display: flex;
}

@media screen and (max-width: 768px) {

    .col-2-offset-1 {
        grid-column: span 8;
    }
    
    .col-2{
        grid-column: span 8;
    }
    
    .col-3 {
        grid-column: span 8;
   }

   .col-3-offset-1 {
        grid-column: 1/span 8;
    }

    .col-4 {
        grid-column: span 8;
    }
    .col-4-center {
        grid-column-start: 1;
        grid-column-end: 9;
    }

    .col-4-offset-4 {
        grid-column-start: 1;
        grid-column-end: 9;
    }

    .col-6-center {
        grid-column-start: 1;
        grid-column-end: 9;

    }

    .big-title {
        font-size: 9vw;
    }


    .title-xxl {
        font-size: 40vw;
    }
    
    .title {
        font-size: 6vw;
    }

    .logo-top{
        width: 40vw;
    }

    .icon {
        height: 20vw;
    }

    .logo-footer {
        width: 50vw;
    }

}

@media screen and (min-width: 1920px) {
    .text {
        font-size: 20px;
    }
}