/* MainStyles */
:root{
  --title-color: #2f2f2f;
  --background-color: #fff;
}

body{
  width: 100%;
  font-family: 'Open Sans', sans-serif;
  color: var(--title-color); 
  background: #F3F1EC;
}

.containerStyleMain{
  display: flex;
  margin-bottom: 64px;
}

.dimentionsInformationText{
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.containerImage{
  width: 100%;
  display: flex;
  justify-content: center;
  align-self: center;
}

.imageStyle{
  width: 100%;
  height: 100%;
  border-radius: 4px;
}

/* Fonts */
.fontStyleMain{
  font-size: 38px;
  font-weight: bold;
}

.fontStyleParagraph{
  max-width: 480px;
  font-size: 18px;
  font-weight: 400;
  margin-top: 12px;
}

.fontStyleSingleText{
  font-size: 18px;
  font-weight: 500;
}

.fontStyleMainText{
  font-size: 26px;
  font-weight: 600;
}

/* endFonts */

/* Container 04 */
.container04Style{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.container04Style .dimentionsInformationText{
  margin: 0 auto;
}

.container04Style .fontStyleMain{
  font-size: 86px;
  font-weight: 800;
  font-size: 64px;
  letter-spacing: 0.31em;
  color: #2F2F2F;
  margin-top: 64px;
}
.container04Style h2{
  font-family: Open Sans;
  font-style: normal;
  font-weight: normal;
  font-size: 42px;
  line-height: 87px;
  text-align: center;

  color: #2F2F2F;
}

/* BoxContainerStyle */
.boxContainer{
  display: flex;
  justify-content: space-between;
  margin-bottom: 64px;
}

.boxStyle{
  width: 22vw;
  height: 22vw;
  border-radius: 4px;
  
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.boxStyle .fontStyleSingleText{
  margin-top: 36px;
}

.boxStyleColor-part01{
  display: flex;
  align-items: center;
}

.boxStyleColor-part01 .containerImage{
  width: auto;
}

.boxStyleColor .fontStyleSingleText{
  margin-top: 0;
}

.boxStyleColor{
  display: flex;
  align-items: flex-start;
  width: auto;
  height: auto;
  max-width: 372px;
}

.boxStyleColor .fontStyleParagraph{
  font-weight: 300;
  font-size: 16px;
  margin-top: 24px;
}

.boxStyleColor-part01 span{
  margin-left: 18px;
  font-size: 24px;
  font-weight: 700;
}
.boxContainerColor{
  align-items: flex-start;
  margin-bottom: 64px !important;
}

/* endBoxContainerStyle */

/* Container 06 */
.container06Style, .container09Style{
  height: 50vw;
  margin-bottom: 0px;
  display: flex;
  align-items: center;
  padding-top: 64px;
  justify-content: center;
}
.container06Style .fontStyleMain{
  font-weight: 900;
}

.container06Style .containerMargin, .container09Style .containerMargin{
  display: flex;
  flex-direction: row;
  align-items: center;
}
.container06Style .containerMargin{
  background: url(assets/backgroundDetail.png) no-repeat;
  background-size: contain;
  background-position: center;
  padding: 0 14vw;
}

.container09Style .containerMargin{
  background: url(assets/backgroundDetail2.png) no-repeat;
  background-size: contain;
  background-position: center;
}

.container06Style .containerMargin .dimentionsInformationText, .container09Style .containerMargin .dimentionsInformationText{
  margin-left: 32px;
}

.container09Style .containerMargin .dimentionsInformationText .fontStyleParagraph{
  font-size: 22px;
}

.darkContainer{
  background: #181818;
  color: #fff;
}

.container11Style{
  padding: 64px 0;
  margin-bottom: 0;
  padding-left: 6vw;
  flex-direction: column;
}

.container11Style .dimentionsInformationText{
  margin-right: 32px;
  margin-bottom: 32px;
}

.container12Style .containerMargin{
  flex-direction: row;
  display: flex;
}

.container12Style{
  margin-bottom: 0px;
  padding-bottom: 64px;
  justify-content: center;
}

.container12Style .containerMargin .dimentionsInformationText .fontStyleParagraph{
  max-width: 630px;
}

.container11Style .fontStyleMain, .container12Style .fontStyleMain {
  font-size: 48px;
  font-weight: 900;
}
.container12Style h4{
  font-weight: bold;
  font-size: 26px;
  margin-top: 12px;
}

.container11Style .fontStyleMain strong, .container12Style .fontStyleMain,  .container013Style .dimentionsInformationText .fontStyleMain strong{
  color: #B9071C;
  font-weight: 900;
}


/* Container 07 */
.container07Style{
  flex-direction: column;
}

.container13Style{
  display: flex;
  align-content: center;
}

.container013Style .dimentionsInformationText{
  margin-right: 32px;
  text-align: right;
  align-items: flex-end;
}

.container013Style .dimentionsInformationText svg{
  margin-top: 14px;
}

.container013Style .dimentionsInformationText .fontStyleMain{
  font-size: 42px;
  font-weight: 900;
}

.container013Style .dimentionsInformationText .fontStyleParagraph{
  max-width: 800px;

}

/* Slide */
.slideWrapper{
  overflow: hidden;
  white-space: nowrap;
  margin-top: 64px;
  width: 100%;
}

.containerSlideBox{
  display: flex;
}

.containerSlideBox li{
  margin-right: 2vw;
}

.containerSlideBox li:hover{
  cursor: pointer;
}

/* .containerSlideBox li img{
  width: 44vw;
  height: 44vw;
} */

/* Container 10 */
/* Container 10 */

.container10Style{
  flex-direction: column;
  padding-bottom: 64px;
}

.container10Style .dimentionsInformationText{
  align-items: center;
  text-align: center;
}

/* Tile */

.containerAllTiles{
  display: flex;
  justify-content: space-around;
  margin-top: 68px;
}


.tileContainer:nth-child(2){
  margin: -32px 10px 0 10px;
}

.tileContainer{
  position: relative;
  height: 100%;
}

.buttonStyle{
  position: absolute;
  right: 0;
  z-index: 2;
  margin: 26px;
  width: 46px;
  height: 46px;
  background: #FFFFFF;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-style: none;
  -webkit-appearance: none;
  outline: none;
}

.buttonStyle:hover{
  cursor: pointer;
}

.tileHide{
  width: 100%;
  height: 100%;
  background: #2F2F2F;
  opacity: 0.8;
  position: absolute;
  top: 0;

  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;

  border-radius: 4px;

  visibility: hidden;
}

.hiddenContent{
  display: none;
}

.changeProduct1, .changeProduct2{
  overflow: hidden;
}

.showContent{
  visibility: visible !important;
  animation-name: opacity;
  animation-duration: 300ms;
  animation-fill-mode: forwards;
}

.mouseTest.turnClose{
  animation-name: rotatePlus;
  animation-duration: 300ms;
  animation-fill-mode: forwards;
}

.mouseTest{
  animation-name: rotatePlusReverse;
  animation-duration: 300ms;
}

.fontTileMain{
  font-weight: bold;
  font-size: 28px;
  color: #fff;
  margin-bottom: 18px;
}

.fontTileParagraph{
  font-size: 14px;
  text-align: center;
  line-height: 20px;
  color: #FFFFFF;
  margin: 0 52px;
}


/* Container 08 */

.container08Style{
  flex-direction: column;
  margin-bottom: 64px !important;
}
.container08Style .fontStyleMain{
  font-size: 28px;
  font-weight: 800;
}
.container08Style .fontStyleMain strong{
  color: #B9071C;
  font-weight: 800;
}


.containerGridBox{
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  grid-template-areas: 
    "main content02 content03"
    "main content04 content05";
  margin-top: 42px;
  grid-gap: 1vw;
}

.miniBoxStyle img{
  width: 100%;
}

.main{
  grid-area: main;
}

.main img{
  width: 44vw;
  height: 43vw;
}

.content02{
  grid-area: content02;
}

.content03{
  grid-area: content03;
}

.content04{
  grid-area: content04;
}

.content05{
  grid-area: content05;
}

.containerMargin{
  padding: 0 6vw;
}

.container10Style .fontStyleMain{
  font-size: 28px;
  margin: 12px 0;
}

/* footer */
.lineFooter{
  background: #00B1DB;
  height: 5px;
}
.footerContainer{
  display: flex;
  justify-content: space-between;
  padding: 36px 24px;
  align-items: center;
}
.footerContainer div a{
  color: #000000;
  font-size: 22px;
}
.footerItens{
  display: flex;
  align-items: center;
}
.containerSocial{
  margin-left: 4vw;
}
.containerSocial a{
  text-align: center;
  margin: 0 1vw;
}
.linkContainer{
  margin-right: 4vw;
}

.container07Style-part01{
  max-width: 500px;
  margin-left: 4vw;
  color: #fff;
}

/* Keyframes */
@keyframes rotatePlus{
  to {
    transform: rotate(-45deg);
  }
}

@keyframes rotatePlusReverse{
  from{
    transform: rotate(-45deg);
  }

  to {
    transform: rotate(0deg);
  }
}

@keyframes opacity{
  0%{
    opacity: 0;
  }
  
  100%{
    opacity: 0.8;
  }
}

@keyframes opacity{
  0%{
    opacity: 0;
  }
  
  100%{
    opacity: 1;
  }
}


/* Resposive */

@media (min-width: 1380px){
  /* .containerMargin{
    max-width: 1366px;
    margin: 0 auto;
  } */

  .boxStyle{
    max-width: 304px;
    max-height: 304px;
  }

  .miniBoxStyle img{
    width: 100%;
    height: 100%;
  }
  .container06Style .fontStyleParagraph{
    max-width: 600px;
  }
  .containerImage{
    width: 60%;
  }
}
@media (max-width: 1300px){
  .boxStyleColor{
    max-width: 320px;
  }
}

@media (max-width: 1024px){
  /* MainStyles */
  .fontStyleMain{
    font-size: 50px;
  }
  .fontStyleParagraph{
    max-width: 420px;
    margin-top: 10px;
  }
  /* endMainStyles */

  /* BoxContainer */
  .boxStyle svg{
    width: 56px;
    height: 57px;
  }

  .tileHide .fontTileMain{
    margin-bottom: 4px;
    margin-top: 16px;
    font-size: 24px;
  }

  .buttonStyle{
    margin: 15px;
  }

  .tileHide .fontTileParagraph{
    font-size: 14px;
    line-height: 16px;
    margin: 0 32px;
  }

  .container04Style .fontStyleMain{
    font-size: 6vw;
  }
  .container04Style h2{
    font-size: 32px;
  }
  .boxStyleColor{
    max-width: 240px;
  }
  .boxStyleColor-part01 span{
    font-size: 18px;
  }
}

@media(max-width: 865px){
  /* MainStyles */
  .fontStyleMain{
    font-size: 4vw;
  }
  .container11Style .fontStyleMain, .container12Style .fontStyleMain, .container013Style .dimentionsInformationText .fontStyleMain{
    font-size: 8vw;
  }

  .fontStyleMainText{
    font-size: 20px;
  }
  /* endMainStyles */

  .containerAllTiles{
    flex-wrap: wrap;
  }

  .tileContainer:nth-child(2){
    margin-top: 0px;
  }

  .footerContainer{
    padding: 20px 10px;
  }
  .logo{
    width: 160px;
  }
  .socialSize{
    width: 30px;
  }

  .line{
    margin: 0;
  }

  

}

@media(max-width: 620px){
  /* MainStyles */
  .fontStyleMain{
    font-size: 28px;
  }
  .fontStyleParagraph{
    font-size: 12px;
    margin-bottom: 20px;
  }
  .fontStyleMainText{
    font-size: 14px;
  }
  /* endMainStyles */

  .slideWrapper{
    margin-top: 32px;
  }
  /* boxStyles */
  .boxContainer{
    flex-wrap: wrap;
  }

  .boxContainer .boxStyle{
    width: 48%;
    height: 45vw;
    margin-bottom: 4%;
  }
  /* endBoxStyles */

  /* Container05 grid */
  .containerGridBox{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
  }

  .main img{
    width: 97vw;
    height: 97vw;
  }
  .tileContainer:nth-child(2){
    margin: 5px 0 5px 0;
  }

  .boxStyleColor{
    max-width: 500px;
  }

  .boxContainerColor .boxStyle{
    width: auto;
    height: auto;
  }
  .container09Style .containerMargin{
    flex-direction: column;
    padding: 0 6vw;
  }
  .container09Style .containerMargin .dimentionsInformationText {
    margin-left: 0;
  }
  .container09Style .containerMargin .dimentionsInformationText .fontStyleParagraph{
    font-size: 16px;
  }

  .container09Style .dimentionsInformationText .fontStyleParagraph{
    margin-top: 32px;
  }
  .container06Style, .container09Style{
    height: auto;
  }
  .container12Style h4, .container06Style .fontStyleMain{
    font-size: 6vw  !important;
  }
  .containerMargin, .container11Style{
    padding: 0 2vw;
  }

  .container12Style{
    padding-bottom: 0px;
    padding-top: 64px;
  }
  .container06Style .containerMargin .dimentionsInformationText, .container09Style .containerMargin .dimentionsInformationText{
    margin-left: 0;
  }
  
  .container013Style{
    flex-direction: column;
  }
  .container013Style .dimentionsInformationText .fontStyleMain{
    font-size: 10vw;
  }
  .container04Style h2{
    font-size: 18px;
    line-height: 3;
  }
  .container06Style .containerMargin{
    flex-direction: column-reverse;
  }
  .linkContainer{
    display: none;
  }

}