
.geo{
  width:100%;
  display:flex;
  background-color:#f0efee;
  padding:0 40px 86px;
  justify-content:center;
  align-items:center;
}

.geo .content{
  width:100%;
  display:flex;
  max-width:1295px;
  justify-content:space-between;
  align-items:center;
  gap:123px;
}

.geo .fotoWrapper{
        width:100%;
        height:100%;
        max-width:486px;
        min-width:200px;
        position:relative;
        z-index:2;
        flex-shrink:0;
      }

.geo .foto{
        width:100%;
        aspect-ratio:486/475;
        overflow:hidden;
      }

.geo .foto img{
        width:100%;
        height:100%;
        display:block;
        object-fit:cover;
        object-position:center;
        transition:transform 0.45s ease;
      }

.geo .foto:hover img{
        transform:scale(1.04);
      }

.geo .textos{
        width:100%;
        max-width:723px;
        display:flex;
        flex-direction:column;
      }
.geo h4{
        color:#575757;
        font-size:22px;
        line-height:normal;
        letter-spacing:-0.56px;
        margin-bottom:13px;
      }

.geo h3{
        color:#000;
        font-size:40px;
        line-height:38px;
        max-width:723px;
        margin-bottom:31px;
      }

.geo h3 span{
        color:#b72323;
      }

.geo p{
        color:#000;
        font-size:18px;
        line-height:24px;
        max-width:571px;
        margin-top:28px;
      }

      
.geo .line {
    width: 100%;
    height: 1px;
  background-color:#B7B7B7;
    position: relative;
}

.geo .line::after {
    content: "";
    position: absolute;
    left: 100%;
    top: 0;
    width: 30vw;
    height: 1px;
     background-color:#B7B7B7;
}

@media (max-width: 980px){
  .geo{
    padding:72px 24px;
  }

  .geo .content{
    flex-direction:column;
    gap:40px;
  }

.geo .textos{
    max-width:723px;
  }

.geo .fotoWrapper{
    max-width:486px;
    width:100%;
  }

.geo h4{
    font-size:20px;
  }

.geo h3{
    font-size:34px;
    line-height:37px;
    margin-bottom:28px;
  }
}

@media (max-width: 560px){
.geo{
    padding:56px 18px;
  }

.geo h4{
    font-size:18px;
  }

.geo h3{
    font-size:28px;
    line-height:31px;
    margin-bottom:24px;
  }

.geo p{
    font-size:16px;
    line-height:22px;
  }
}

@media (prefers-reduced-motion: reduce){
.geo .foto img{
    transition:none;
  }

.geo .foto:hover img{
    transform:none;
  }
}

/* Large viewport proportional scaling */
@media (min-width: 1765px){
  .geo{
  width:100%;
  display:flex;
  background-color:#f0efee;
  padding:0 2.2676vw 4.8753vw;
  justify-content:center;
  align-items:center;
}
  .geo .content{
  width:100%;
  display:flex;
  max-width:73.4127vw;
  justify-content:space-between;
  align-items:center;
  gap:6.9728vw;
}
  .geo .fotoWrapper{
        width:100%;
        height:100%;
        max-width:27.551vw;
        min-width:11.3379vw;
        position:relative;
        z-index:2;
        flex-shrink:0;
      }
  .geo .textos{
        width:100%;
        max-width:40.9864vw;
        display:flex;
        flex-direction:column;
      }
  .geo h4{
        color:#575757;
        font-size:1.2472vw;
        line-height:normal;
        letter-spacing:-0.0317vw;
        margin-bottom:0.737vw;
      }
  .geo h3{
        color:#000;
        font-size:2.2676vw;
        line-height:2.1542vw;
        max-width:40.9864vw;
        margin-bottom:1.7574vw;
      }
  .geo p{
        color:#000;
        font-size:1.0204vw;
        line-height:1.3605vw;
        max-width:32.3696vw;
        margin-top:1.5873vw;
      }
  .geo .line{
    width: 100%;
    height: 0.0567vw;
  background-color:#B7B7B7;
    position: relative;
}
  .geo .line::after{
    content: "";
    position: absolute;
    left: 100%;
    top: 0;
    width: 30vw;
    height: 0.0567vw;
     background-color:#B7B7B7;
}
}
/* End large viewport proportional scaling */
