@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,500;0,600;1,200;1,300;1,400;1,500;1,600&family=Zen+Dots&display=swap");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Poppins", sans-serif;
}

@import url("https://fonts.googleapis.com/css?family=Montserrat:300,300i,400,400i,500,500i,600,600i,700,700i|Nunito+Sans:300,300i,400,400i,600,600i,700,700i&display=swap");

@font-face {
    font-family: "Bosque";
    src: url("/css/BOSQUE.otf") format("otf");  
    
    src: url('/css/BOSQUE.eot'); /* IE9 Compat Modes */
    src: url('/css/BOSQUE.eot') format('embedded-opentype'); /* IE6-IE8 */
    src: url('/css/BOSQUE.woff2') format('woff2');
    src: url('/css/BOSQUE.woff') format('woff');
    src: url('/css/BOSQUE.svg') format('svg');
  }
:root {
    --font-1: "Nunito Sans", sans-serif;
    --font-2: "Montserrat", sans-serif;
    --font-3: "Bosque", sans-serif;

    /* monospace
     */
    --font-mono: Consolas, "Andale Mono", Courier, "Courier New", monospace;
}


body {
  text-rendering: optimizeLegibility;
  background-attachment: scroll;
  background-position: center center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-image: url(../images/hero-bg-cases.jpg);
  background-size: cover;
  background-blend-mode: revert;
}

/* .banner-site h3 {
    line-height: 0.8em;
    font-family: var(--font-2);
    text-align: center;
    position: absolute;
    top: 54%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin-top: -100px;
    color: #c0b199;
    font-size: 9rem;
    font-weight: 600;
} */

.fade{
background-image: linear-gradient(
 currentColor 100%,
 currentColor 70%,
 currentColor 30%,
 transparent 100%
);
background-clip: text;
-webkit-background-clip: text;
background-attachment: fixed;
}

.fade h3{
    line-height: 0.8em;
    font-family: var(--font-2);
    text-align: center;
    position: absolute;
    top: 54%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin-top: -100px;
    color: #c0b199;
    font-size: 9rem;
    font-weight: 600;
}

.scroll-down-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-top: 20px;
  color: #f4f5f0;
  font-size: 0.81rem;
  letter-spacing: 1.25px;
  text-transform: uppercase;
  animation: scrollDown 2s infinite;
  mix-blend-mode: exclusion;
  z-index: 20;
}


#text-over {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  /* background-image: url(../images/hero-bg-espaco.jpg);
  background-size: cover;
  background-position: center center; */
   background-color: var(--color-bg); 
  display: flex;
  justify-content: center;
  align-items: center;
  clip-path: circle(0px at center center);
}

.innerText {
  position: fixed;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  white-space: nowrap;
  z-index: 1;
  font-size: 27vw;
  color: #f4f5f0;
  text-align: center;
  width: 100%;
  font-family: var(--font-3);
}

.text {
  position: fixed;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  white-space: nowrap;
  z-index: 1;
  font-size: 27vw;
  color: #c0b199;
  /* -webkit-text-stroke: 2px #071821; */
  z-index: 0;
  text-align: center;
  width: 100%;
  font-family: var(--font-3);
}

.content {
    /* margin-bottom: 10em; */
  position: relative;
  margin-top: 200vh;
  background-color: var(--color-bg);
  padding-top: var(--space);
  padding-bottom: 5rem;
}

#cards-cases{
  padding-bottom: 5em;
}

.s-contact{
    background-color: #071821 !important; 
    position: relative;
}
.s-footer{

    background:#455059 ;
    padding-top: var(--vspace-2);
    padding-bottom: var(--vspace-4);
    color: white;
    position: relative;
    

}



@media only screen and (max-width: 798px) {

  body {
    text-rendering: optimizeLegibility;
    background-attachment: scroll;
    background-position: center center;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-image: url(../images/hero-bg-cases-mob.jpg);
    background-size: cover;
    background-blend-mode: revert;
  }
  .innerText {
    position: fixed;
    top: 45%;
    left: 100%;
    transform: translateY(-50%);
    white-space: nowrap;
    z-index: 1;
    font-size: 27vw;
    color: #f4f5f0;
    text-align: center;
    width: 100%;
    font-family: var(--font-3);
}

.text {
    position: fixed;
    top: 45%;
    left: 100%;
    transform: translateY(-50%);
    white-space: nowrap;
    z-index: 1;
    font-size: 27vw;
    color: #c0b199;
    /* -webkit-text-stroke: 2px #071821; */
    z-index: 0;
    text-align: center;
    width: 100%;
    font-family: var(--font-3);
  }
}

.subtitulo-contact{
    color: var(--color-1) !important;
}

.card {
  position: relative;
  width: 100%;
  max-width: 450px;
  height: 450px;
  margin: 2rem;
  transform-style: preserve-3d;
  perspective: 800px;
}

.card .front {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  border-radius: 10px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
  transition: transform 0.8s ease-in-out;
}

.card .back {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
  transition: transform 0.8s ease-in-out;
}
.card .front .img,
.card .back .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 10px;
  filter: grayscale(30%) brightness(20%);
}
.card .front {
  background-color: #7a878f;
}
.card .back {
  background-color: #7a878f;
  background-image: linear-gradient(-45deg, #455059, #7a878f);
  transform: rotateY(180deg);
}
.card:hover .front {
  transform: rotateY(-180deg);
}
.card:hover .back {
  transform: rotateY(0deg);
}
.card .contents {
  color: #fff;
  text-align: left;
  transform: translateZ(100px);
}
.card .contents .title::after,
.card .contents .subtitle::after {
  content: "";
  display: block;
  width: 164px;
  height: 1px;
  margin-top: 1.5rem;
  background: rgba(255, 255, 255, 0.689);
  margin-left: 4px;
}
.card .contents .title {
  padding-left: 2em;
}
.card .contents .subtitle {
  font-size: 2em;
}
.card .contents .text2 {
  padding-left: 4em;
  padding-right: 4em;
  z-index: 2;
  font-weight: 500;
  color: var(--color-1);
  font-size: var(--text-sm);
  line-height: var(--vspace-0_75);
  text-transform: uppercase;
  letter-spacing: .22em;
}

.card .contents p {
  /* white-space: break-spaces; */
  font-size: smaller;
  color: rgb(255, 255, 255);
  font-weight: 200;
  padding-left: 4em;
  padding-right: 4em;
  letter-spacing: 0.05em;
  line-height: initial;
}

.card .contents .socials {
  list-style: none;
  display: flex;
  justify-content: center;
}
.card .contents .socials a {
  display: inline-block;
  margin: 0.5rem;
  font-size: 2em;
  color: #fff;
  transition: transform 0.3s;
}
.card .contents .socials a:hover {
  transform: translateY(-5px);
}


#modal-cases .w3-modal{
  z-index:3;
  display:none;
  padding-top:0px;
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100%;
  overflow:auto;
  background-color:rgb(69 80 89 / 80%);
}

#modal-cases .w3-modal-content{
  margin:auto;
  background-color: transparent;
  position:relative;
  padding:0;
  outline:0;
  width:100%;
}
#modal-cases .w3-animate-fading{
  animation:fading 10s infinite
}
@keyframes fading{0%{opacity:0}50%{opacity:1}100%{opacity:0}}

#modal-cases .w3-animate-opacity{
  animation:opac 0.8s
}
  @keyframes opac{from{opacity:0} to{opacity:1}}

  @media (max-width:600px){.w3-modal-content{margin:0 10px;width:auto!important}.w3-modal{padding: top 70px;}}

  @media (max-width:768px){.w3-modal-content{width:500px}.w3-modal{padding-top:70px}}
  @media (min-width:993px){.w3-modal-content{width:900px}.w3-hide-large{display:none!important}.w3-sidebar.w3-collapse{display:block!important}}

  #modal-cases .card-modal img{
    width: 100%;
    /* border-radius: 5%; */
}
#modal-cases .card-modal{
height: 100%;
    background: rgb(1 1 1 / 67%);
    position: relative;
    max-width: 100%;
    text-align: left;
    color: #d9c29d;
    box-shadow: -5px 5px 30px rgb(255 255 255 / 4%);
    backdrop-filter: blur(5px);
  
}
#modal-cases .card-modal h2{
  font-size:40px;
  font-weight:600;
  margin-top:20px;
  color: #d9c29d;
}
#modal-cases .card-modal p{
  font-weight:300;
  color: white;
  letter-spacing: 0.05px;
}

#modal-cases .titulo-prof{
  padding-top: 3em;
  left: 0;
  top: calc((var(--vspace-1) * 1.25) * -1);
  font-family: var(--font-2);
  font-weight: 500;
  color: var(--color-white);
  text-transform: uppercase;
  letter-spacing: .2em;
  font-size: 1.4rem;
  line-height: var(--vspace-0_75);
}

#modal-cases .card-modal a{
   cursor: pointer;
}

#modal-cases .close-modal{
  right: 14px;
  position: absolute;
  top: 10px;
}

#modal-cases .icone-botao{
  padding-right: 1em;
}

#modal-cases .endereco-modal{
    font-size: var(--text-sm);
}





.timeline:before {
  content: '';
  position: absolute;
  height: 100%;
  left: 50%;
  width: 1px;
  top: 71px;
  background: #d9c29d;
  z-index: 1;
}
.timeline{
  position:relative;
  margin: 50px auto;
  width:1000px;
  padding:50px 0;
}


.timeline ul{
  margin:0;
  padding:0 ;
}

.timeline ul li{
  padding: 2em 2em 5em 2em;
  list-style: none;
  box-sizing: border-box;
  line-height: normal;
  position: relative;
  width: 50%;
}

.timeline ul li .right_content h2{
  color: rgb(255 255 255);
  padding:0px 2px 18px 0px;
}
.timeline ul li:nth-child(odd){
  float:left;
  text-align:right;
  clear:both;
}

.timeline ul li:nth-child(even){
  float:right;
  text-align:left;
  clear:both;
}

.left_content{
  padding-bottom:20px;
}

.timeline ul li:nth-child(odd):before{
  content: '';
  position: absolute;
  width: 10px;
  height: 10px;
  background: #d9c29d;
  border-radius: 50%;
  box-shadow: 0 0 11px 2px #d9c29d;
  right: -6px;
  top: 120px;
  z-index: 1;
}

.timeline ul li:nth-child(even):before{
content: '';
  position: absolute;
  width: 10px;
  height: 10px;
  background: #d9c29d;
  border-radius: 50%;
  box-shadow: 0 0 11px 2px #d9c29d;
  left: -5px;
  top: 123px;
}

.timeline ul li:nth-child(odd) .left_content{
  max-width: 290px;
  position: absolute;
  top: 20%;
  right: -69%;
  margin: 0;
  /* padding: 8px 16px; */
  color: #fff;
  /* box-shadow: 0 0 9px 0px #c0b199;
  border-radius: 18px; */
  
}

.timeline ul li:nth-child(even) .left_content{
  max-width: 290px;
  position: absolute;
  top: 20%;
  left: -69%;
  margin: 0;
  /* padding: 8px 16px; */
  color: #fff;
  /* box-shadow: 0 0 9px 0px #c0b199;
  border-radius: 18px; */
  
}
.timeline p{
  font-weight: 200;
    font-size: initial;
}

figcaption {
  letter-spacing: 0.05em;
  font-size: var(--text-xs);
  text-align: center;
  font-weight: 100;
}

figure img+figcaption {
  margin-top: 4px;
}

figure img, p img {
  border-radius: 15px;
  margin: 0;
  vertical-align: bottom;
}

@media (max-width: 1000px){
  
  .timeline{
    width:100%;
  }
}

@media (max-width: 767px){
  .timeline{
    width:100%;
  }
  .timeline:before{
    left:20px;
  }
  .timeline ul li:nth-child(odd),
  .timeline ul li:nth-child(even){
    width:100%;
    text-align:left;
   padding-left:50px; 
  }
  
  .timeline ul li:nth-child(odd):before
    {
      top: 14px;
      left: 16px;
  
  }
  .timeline ul li:nth-child(even):before
  { 
    top: 14px;
    left: 16px;
  }
  
    .timeline ul li:nth-child(odd) .left_content,
  .timeline ul li:nth-child(even) .left_content
  {
    width: 50%;
    top: -62px;
    left: 50px;
    right: inherit;
  }

  .timeline ul li:nth-child(odd) .right_content,
  .timeline ul li:nth-child(even) .right_content
  {
    margin-top: 7em;
  margin-bottom: 7em;
  }


  
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px){
  .timeline{
    width:100%;
  }
  .timeline:before{
    left:20px;
  }
  .timeline ul li:nth-child(odd),
  .timeline ul li:nth-child(even){
    width:100%;
    text-align:left;
   padding-left:50px; 
  }
  
  .timeline ul li:nth-child(odd):before
    {
      top: 14px;
      left: 16px;
  
  }
  .timeline ul li:nth-child(even):before
  { 
    top: 14px;
    left: 16px;
  }
  
    .timeline ul li:nth-child(odd) .left_content,
  .timeline ul li:nth-child(even) .left_content
  {
    width: 50%;
    top: -62px;
    left: 50px;
    right: inherit;
  }

  .timeline ul li:nth-child(odd) .right_content,
  .timeline ul li:nth-child(even) .right_content
  {
    margin-top: 7em;
  margin-bottom: 7em;
  }


  
}