/* 
*  CSS TABLE OF CONTENTS
*   
*  1.0 - Globals
*    1.1 - Editor
*    1.2 - General setup
*    1.3 - Buttons
*  2.0 - Layout
*  3.0 - Utilities
*  4.0 - Fonts
*  5.0 - Animations
*  6.0 - Header
*  7.0 - Presentation
*/

/*---------------
1.0 - Globals
---------------*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
/* Defining variables */
:root {
  --primary-color: #454142;
  --secondary-color: #23C4B5;
  --dark-color: #03403B;
  --highlight-color:#FFA93B; 
  --font-size: 16px;
  --body-font:  "Poppins", sans-serif;
  --title-font:  "Poppins", sans-serif;
  --paragraph-font:  "Poppins", sans-serif;
  --text-color: #2A2D3D;
  --bg-color:#F7F7F4;
  --sm-breakpoint: 480px;
  --md-breakpoint: 767px;
  --lg-breakpoint: 1050px;
  --xl-breakpoint: 1216px;
  --xx-breakpoint: 1400px;
  --gutter: 120px;
  --space-lg: 120px;
  --space-sm: 60px;
}

html.sr .load-hidden {
    visibility: hidden;
}

body{
  overflow:hidden;
}

/*---------------
1.1 - Editor
---------------*/
.editor-styles-wrapper :where(:not(.is-layout-flex,.is-layout-grid))>.wp-block{
  max-width: 75vw;
}


/*---------------
1.2 - General setup
---------------*/
html :where(.wp-block) {
  margin-top: 0 !important; 
  margin-bottom: 0 !important;
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
  
  
html {
   scroll-behavior: smooth;
  overflow-x: hidden;
  overflow-y: scroll;
  text-rendering: optimizeLegibility;
  text-size-adjust: 100%;
  background-color: var(--bg-color);
}
  
body,
button,
input {
  font-family: var(--body-font);;
  background-color: #fff;
}

.swiper{
  width: 100% !important;
  min-width: 0 !important;
}

body{
  background-color: var(--bg-color);
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
  transition: all 0.3s ease;
}

a:hover{
  color: var(--secondary-color);
  transition: all 0.3s ease;
}

img {
  max-width: 100%;
  height: auto;
  transition: all 1s ease;
}

img.animate:hover{
  transform: scale(1.2);
  transition: all 1s ease;
}

button, a.btn {
  cursor: pointer;
  border: none;
  outline: none;
  height: 40px;
  padding: 10px 60px;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

a.btn:hover{
  background-color: rgb(227, 226, 226);
  color: var(--primary-color);
  transition: all .4s ease;
}

button.primary:hover{
  background-color: rgb(227, 226, 226);
  color: var(--primary-color);
  transition: all .4s ease;
}

a.btn svg {
  width: 20px;
}

button.primary, a.btn{
  background-color: #454142;
  color: #fff;
}


strong{
  font-weight: 600;
}


b{
  font-weight: 700;
}

p{
  display: block;
}


span.category{
  text-transform: uppercase;
  color: #AAAAAA;
  font-size: 17px;
  font-weight: 500;
}


.paginacao{
  width:100%;
}

.paginacao .pagination{
  display:flex;
  flex-wrap:wrap;
}

.paginacao .pagination .nav-links{
  margin: 0 auto;
  display:flex; 
  gap: 10px;
  flex-wrap:wrap;
}

.paginacao .pagination .nav-links .page-numbers{
  color: #A4A49E;
  border-bottom: 1px solid #A4A49E;
  width:30px;
  height:45px;
  text-align:center;
  display:flex;
  align-items:center;
  justify-content:center;
}

.paginacao .pagination .nav-links .next{
  display:none;
}

.paginacao .pagination .nav-links .prev{
  display:none;
}

.paginacao .pagination .nav-links .current{
  background-color:#A4A49E;
  color: #fff;
}

.order-1{
  order: 1;
}

.order-2{
  order: 2;
}


.text-left{
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.background-attachment-fixed{
  background-attachment: fixed;
}

.whatsapp--float{
  position: fixed;
  width: 60px;
  height: 60px;
  bottom: -30%;
  right: 3%;
  align-items: center;
  justify-content: center;
  background-color: rgb(37, 211, 102);
  box-shadow: rgba(51, 51, 51, 0.1) 0px 4px 12px;
  display: inline-flex;
  z-index: 200;
  opacity: 0.8;
  color: rgb(255, 255, 255);
  border-radius: 100%;
  transition: 0.5s;
}

.whatsapp--float.is-active {
  bottom: 3%;
}

.whatsapp--float i {
  font-size: 2rem;
  transition: 0.5s;
}

input{
  border:none;
  height: 40px;
  background-color: #F7F7F4;
  font-size: 15px;
  padding: 0px 12px;
  outline: none;
  color: #878787;
  font-weight: 400;
  width: 200px;
}

input[type="submit"]{
  text-align: center;
  background-color: #454142;
  color: #fff;
  text-transform: uppercase;
  cursor: pointer;
  transition: all .3s ease;
}

input[type="submit"]:hover {
 background-color: #E8E7DF;
 color: var(--primary-color);
}

textarea{
  padding: 30px;
  display: block;
  border:none;
  background-color: #F7F7F4;
  font-size: 15px;
  font-family: var(--body-font);
  color: #878787;
}


.scrollup{
  position: fixed;
  right: 3%;
  bottom: -30%;
  background-color: #fff;
  box-shadow: 0 4px 12px hsl(0, 0%, 20%, 0.1);
  display: inline-flex;
  padding: 0.35rem;
  border-radius: 0.25rem;
  z-index: 200;
  opacity: 0.8;
  transition: 0.4s;
} 

.scrollup.is-active{
  bottom: 3%;
}

.scrollup:hover{
  opacity: 1;
}

.scrollup__icon{
  font-size: 1.25rem;
  color: var(--primary-color);
}

.whatsapp--float{
  position: fixed;
  width:60px;
	height:60px;
	bottom:-30%;
	right:3%;
  align-items: center;
  justify-content: center;
  background-color:#25d366;
  box-shadow: 0 4px 12px hsl(0, 0%, 20%, 0.1);
  display: inline-flex;
  z-index: 200;
  opacity: 0.8;
  transition: 0.4s;
  color: #fff;
  border-radius: 100%;
  transition: all .5s ease;
}

.whatsapp--float.is-active{
  bottom: 3%;
}

.whatsapp--float:hover i{
  color: var(--dark-color);
}

.whatsapp--float i {
  transition: all .5s ease;
  font-size: 2rem;
}


/* Regular desktop */
@media screen and (min-width: 1025px){
 
}


/* Regular desktop */
@media screen and (min-width: 1400px){
  
}


/*-----------------
2.0 - Layout 
-----------------*/
.l-main {
  overflow: hidden;
}

.l-container {
  width: 100%;
  padding-left: clamp(1rem, 4vw, 2rem);
  padding-right: clamp(1rem, 4vw, 2rem);
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
}

.l-grid {
  display: grid;
}

.l-flex {
  display: flex;
}

.l-gap-20 {
  gap: 20px;
}

.l-gap-30 {
  gap: 30px;
}


/*-----------------
3.0 - Utilities
-----------------*/
.u-is-loading {
  opacity: 0;
}

.u-justify-content-between {
  justify-content: space-between;
}

.u-justify-content-center {
  justify-content: center;
}

.u-align-items-center {
  align-items: center;
}

.u-flex-direction-r{
  flex-direction: row;
}

.u-flex-direction-c{
  flex-direction: column;
}

.u-section {
  padding: 0px 0px var(--space-sm) 0px;
}

/* Regular desktop */
@media screen and (min-width: 1025px) {
 .u-section{
    padding: 0px 0px var(--space-lg) 0px;
 }
}



/*-----------------
4.0 - Fonts
-----------------*/
h1,
h2,
h3,
a {
  font-family: var(--title-font);
  font-weight: 400;
  margin: 0px;
}

p{
  font-family: var(--paragraph-font);
  color: var(--text-color);
  font-size: 15px;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 20px;
}

h1,
h2,
h3 {
  color: var(--primary-color);
  font-weight: 400;
  text-transform: uppercase;
}

h1 {
  font-size: 35px;
  font-weight: 300;
}

h2 {
  font-size: 35px;
  line-height: 35px;
  text-align: center;
  font-weight: 300;
}

h3 {
  font-size: 27px;
  line-height: 27px;
  text-align: center;
  font-weight: 300;
}



@media screen and (min-width: 1050px) {
  h1 {
    font-size: 50px;
  }
}
  
/*-----------------
5.0 - Animations
-----------------*/

@keyframes fadeIn {
  0% {
    opacity: 0.2;
    transform: translateX(80px);
  }
  50% {
    opacity: 0.8;
    transform: translateX(40px);
  }
  100% {
    opacity: 1;
    transform: translateX(0px);
  }
}

/* Regular desktop */
@media screen and (min-width: 1050px){
  .fade {
    opacity: 0;
    transform: translateX(-5%);
    transition: opacity .5s ease-out, transform 1s ease-out;
    position: relative;
    z-index: 30;
  }
  
  .fade.visible {
    opacity: 1;
    transform: translateX(0);
  }
}

/*---------------
6 - Header
---------------*/

.header {
  position: relative;
  z-index: 2;
  height: 100px;
  background-color:transparent;
}

.nav{
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
  @media screen and (min-width: 1025px) {
    
  }
}

.nav__buttons{
  @media screen and (min-width: 1025px) {
    display: none;
  }
}

.nav__close{
  @media screen and (min-width: 1025px) {
    display: none;
  }
}

.nav__list{
  display: flex;
  gap: 20px;
}

.menu-item{
  overflow: hidden;
}

.nav__list .menu-item a {
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  position: relative;
  transition: all 2s ease;
  overflow: hidden;
}

.nav__list--black .menu-item a {
  color: #454142;
}

.nav__list .menu-item a:after {
  bottom: 0;
  content: "";
  position: absolute;
  left: -100%;
  width: 100%;
  height: 2px;
  background-color: white;
  transition: all .2s ease;
}

.nav__list--black .menu-item a:after{
  background-color: #454142;
}

.menu-item a:hover:after {
  left: 0;
}


/*---------------
7 - Presentation
---------------*/
.presentation{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: -100px;
  width: 100%;
  z-index: 1;
  height: auto;
  position: relative;
}

.presentation .video-container{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: #000; /* Fundo preto se o vídeo ainda não carregou */
}



.presentation .video-container video{
    position: absolute;
    top: 50%;
    left: 50%;
    /* Faça o iframe bem maior que a tela para garantir cobertura total */
    width: 200%;
    height: 200%;
    transform: translate(-50%, -50%);
    border: 0;
    pointer-events: none;
}

@media (max-aspect-ratio: 16/9) {
    .presentation .video-container video {
        width: 400%;
        height: 100%; /* 9/16 proporção baseada na largura */
    }
}

.presentation__bg{
   width: 100%;
   height: 100vh;
   z-index: 1;
   position: absolute;
   top: 0;
}

.presentation__overlay{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.68) 0%, rgba(69, 65, 66, 0) 34.62%, rgba(0, 0, 0, 0) 52.4%, rgba(0, 0, 0, 0.71) 100%);
  z-index: 1;
}

.presentation__wrapper{
  z-index: 3;
  margin-top: 40vh;
  margin-bottom: 30px;
}

.presentation__inner{
  flex-direction: column;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.presentation__inner h1 {
  font-size: 35px;
  max-width: 75%;
  line-height: 35px;
  color: #fff;
  font-weight: 200;
  text-transform: uppercase;
  margin-bottom: 0px;
  margin-bottom: 10px;
}

.presentation__inner span{
  color: #fff;
  font-size: 18px;
  font-weight: 300;
}

.presentation__form{
  height: auto;
  width: 80%;
  z-index: 3;
  background-color: #fff;
  padding: 34px;
}

.presentation__form form {
  display: flex;
  gap: 15px;
  width: 100%;
  flex-direction: column;
  align-items: baseline;
}

.presentation__form form button{
  background-color: #555555;
}

.presentation__form form .inputs{
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 100%;
}

.presentation__form form .inputs input{
  width: 100%;
}

.presentation__form form p {
  margin: 0;
  width: 100%;
}

.presentation__form form p input {
  margin: 0;
  width: 100%;
}

.presentation__form .form__block{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.presentation__form .form__block h3 {
  font-size: 15px;
  text-align: left;
  margin-bottom: 15px;
}

  .presentation__form .inputs .fields-1{
    display: flex;
    flex-direction: row;
    gap: 15px;
  }



/* Regular desktop */
@media screen and (min-width: 1025px){
  .presentation{
    height: 100vh;
    margin-bottom: 200px;
  }
  .presentation__overlay{
    height: 100vh;
  }

  .presentation__inner h1 {
    font-size: 50px;
    line-height: 50px;
    max-width: 100%;
  }

  .presentation__wrapper{
    max-width: 800px;
    margin-top:65vh;
  }

  .presentation__form{
    height: auto;
  }

  .presentation__form{
      bottom: -7%;
      width: auto;
  }

  .presentation__form form {
    align-items: center;
    flex-direction: row;
  }

  .presentation__form form .inputs{
    width: 415px;
  }


  .presentation__form .inputs.fields-2{
    display: flex;
    flex-direction: row;
    gap: 15px;
  }

  .presentation__form textarea{
    height: 95px;
    width: 270px;
    outline: none;
  }

  .presentation__form button{
    height: 95px;
  }

 .presentation__form .form__block{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

  
}



/*---------------
8 - Carousel
---------------*/

.carousel{
  margin-top: 100px;
  position: relative;
}

.carousel .swiper{
  width: 100% !important;
  min-width: 0 !important;
}


.carousel h3{
  color: #454142;
  font-size: 18px;
  text-transform: capitalize;
   display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;  
  overflow: hidden;
  text-overflow: ellipsis;
}

.carousel p {
  text-align: center;
}

.carousel__wrapper{
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.carousel__card{
  height: 550px;
  width: 100%;
  padding: 10px;
  background-color: #fff;
}

.carousel button {
  flex: 0 0 auto; /* Don't grow or shrink */
  width: auto;    /* Let it size to its content */
  align-self: center;
  margin-bottom: 50px;
}

.carousel__thumb{
  height: 400px;
  object-fit: cover;
  object-position: center;
}

.carousel__thumb img {
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.carousel__content{
  margin: 30px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.carousel__content h3 {
  font-size: 18px;
  text-align: left;
  text-transform: capitalize;
   display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.carousel__buttons{
  position: absolute;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  position: relative;
  margin-top: 30px;
  z-index: 2;
}


.carousel__banner{
  position: relative;
  margin-top: -200px;
  height: 400px;
}


.carousel__banner img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: center;
}

.carousel__banner img {
  max-width: 100%;
}

.carousel__inner{
  position: relative;
}

@media screen and (min-width: 1050px){
  .carousel{
    display: flex;
  }
  .carousel__inner{
    width: 50%;
    order: 2;
  }
  .carousel__banner{
    width: 50%;
    margin-top: 0px;
    order: 1;
    height: 1100px;
    position: relative;
  }
  .carousel__card{
    width: 100%;
  }
  .carousel__wrapper{
    overflow: visible;
  }
  .carousel .swiper{
    top: 100%;
    left: -100px;
    overflow: visible;
  }
 
  .carousel button{ 
    align-self: flex-start;
  }

 .carousel__content{
  text-align: left;
  width: 70%;
 }
 .carousel p, .carousel h2 {
  text-align: left;
 }

 .carousel__banner .fix{
    width: calc(100% - 100px);
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    background-color: red;
    z-index: 50;
 }

 
}


/*---------------
8 - Video
---------------*/
.video{
  position: relative;
  width: 100%;
  height: 100vh;
}

.video__overlay{
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.68) 0%, rgba(69, 65, 66, 0) 34.62%, rgba(0, 0, 0, 0) 52.4%, rgba(0, 0, 0, 0.71) 100%);

}

@media screen and (min-width:1050px){
  .video{
    height: 100vh;
  }
}

.video-banner {
  height: 100%;
  width: 100%;
  display: block;
  position: relative;
}

.video-banner .video-banner-img {
  height: 100%; /* ajuste conforme necessário */
  background-size: cover;
  background-position: center;
}

.video-banner-headline {
  position: absolute;
  left: 1.5rem;
  bottom: 1.5rem;
  
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 1.25em;
  font-weight: 900;
  line-height: 1.0em;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.045em;
}
@media (min-width: 641px) {
  .video-banner-headline {
    left: 2em;
    bottom: 2.75em;
    font-size: 1.5em;
    line-height: 1.5em;
  }
}
.video-banner-icon-play {
  position: absolute;
  left: 50%;
  top: 50%; 
  z-index: 5;
  display: block;
  width: 2.5em;
  height: 2.5em;
  
  -webkit-transform: translateX(-50%) translateY(-50%) scale(1.0);
	-moz-transform: translateX(-50%) translateY(-50%) scale(1.0);
	-ms-transform: translateX(-50%) translateY(-50%) scale(1.0);
	-o-transform: translateX(-50%) translateY(-50%) scale(1.0);
	transform: translateX(-50%) translateY(-50%) scale(1.0);
  
  -webkit-transition: 
		all 0.2s ease-out 0.05s;
	transition: 
		all 0.2s ease-out 0.05s;
}
@media (min-width: 641px) {
  .video-banner-icon-play {
    width: 4.5em;
    height: 4.5em;
  }
}
.video-banner-icon-play:hover {
  -webkit-transform: translateX(-50%) translateY(-50%) scale(1.2);
	-moz-transform: translateX(-50%) translateY(-50%) scale(1.2);
	-ms-transform: translateX(-50%) translateY(-50%) scale(1.2);
	-o-transform: translateX(-50%) translateY(-50%) scale(1.2);
	transform: translateX(-50%) translateY(-50%) scale(1.2);
}

.video-modal,
.video-modal .overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3000;
}
.video-modal {
	overflow: hidden;
	position: fixed;
	opacity: 0.0;

  -webkit-transform: translate(500%,0%);
  transform: translate(500%,0%);

  -webkit-transition: -webkit-transform 0s linear 0s;
  transition: transform 0s linear 0s;


  /* using flexbox for vertical centering */

  /* Flexbox display */
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;

  /* Vertical alignment */
  -webkit-box-align: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
}
.video-modal .overlay {
  z-index: 0;
  background: #555555c4; /* overlay color */

  opacity: 0.0;

  -webkit-transition: opacity 0.2s ease-out 0.05s;
  transition: opacity 0.2s ease-out 0.05s;
}


.video-modal-content {
	position: relative;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	z-index: 10;
	margin: 0 auto;
	overflow-y: visible;
	background: #000;
  width: calc(100% - 12em);
  height: 0;
  padding-top: calc((100% - 12em) * 0.5625); /* 16:9 calc */
}

/* Scaling to fit within the current Viewport size:
   When viewport aspect ratio is greater than 16:9
   work off the height instead of the width for calc */
 @media (min-aspect-ratio: 16/9) {
  .video-modal-content {
    width: 0;
    height: calc(100vh - 10em);
    padding-top: 0;
    padding-left: calc((100vh - 10em) * 1.7778); /* 16:9 calc */
  }
}

@media (max-width: 640px) {
  .video-modal-content {
    width: 100%;
    max-width: 100vw;
    aspect-ratio: 16 / 9;
    padding: 0;
    height: auto;
  }
}

/* modal close button */
.close-video-modal {
	display: block;
    position: absolute;
    left: 0;
    top: -40px;

    text-decoration: none;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
}

/* set the iframe element to stretch to fit its parent element */
iframe#video-frame {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	background: #000;
	box-shadow: 0px 2px 16px rgba(0,0,0,0.5);
}

/* show the modal: 
   add class to the body to reveal */
.show-video-modal .video-modal {
	opacity: 1.0;

	transform: translate(0%,0%);
	-webkit-transform: translate(0%,0%);
}
.show-video-modal .video-modal .overlay {
	opacity: 1;
  transition: opacity 0.2s ease;
}
.show-video-modal .video-modal-content {
	transform: translate(0%,0%);
	-webkit-transform: translate(0%,0%);
}

/*---------------
9 - Horizontal content
---------------*/
.horizontal{
  padding: 80px 0px;
}

.horizontal__wrapper{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 80px;
}

.horizontal__wrapper div {
  flex: 1;
}

.horizontal__content{
  text-align: center;
}

.horizontal__content p {
  display: block;
  margin: 15px 0px;
}

.horizontal__content h2{
  display: inline;
}

.horizontal__thumb{
  height: 380px;
  width: 100%;
  overflow: hidden;
}

.horizontal__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@media screen and (min-width: 1050px){
  .horizontal__wrapper{
    flex-direction: row;
  }
}

/*---------------
10 - Cards
---------------*/
.cards {
  padding: 80px 0px;
  background-color: #fff;
}

.cards__card{
  border: 2px solid #F5F5F5
}

.cards__thumb{
  width: 100%;
  position: relative;
  height: 280px;
  overflow: hidden;
}

.cards__thumb img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.cards__content{
  padding: 30px;
  margin-top: 30px;
  display: inline-flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
  justify-content: center;
}

.cards__content p {
  text-align: center;
}

.cards__wrapper{
  display: flex;
  flex-direction: column;
  gap: 50px;
}

.card__one {
  transition: transform .5s;

  &::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 2s cubic-bezier(.165, .84, .44, 1);
    box-shadow: 0 8px 17px 0 rgba(0, 0, 0, .2), 0 6px 20px 0 rgba(0, 0, 0, .15);
    content: '';
    opacity: 0;
    z-index: -1;
  }

  &:hover,
  &:focus {
    transform: scale3d(1.006, 1.006, 1);

    &::after {
      opacity: 1;
    }
  }
}

.card__two {
  &::before,
  &::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: opacity .38s ease-in-out, transform .35s ease-in-out;
    content: '';
    opacity: 0;
    pointer-events: none;
  }

  &::before {
    transform: scale3d(0, 1, 1);
    transform-origin: left top;
    border-top: 2px solid #A4A49E;
    border-bottom: 2px solid #A4A49E;
  }

  &::after {
    transform: scale3d(1, 0, 1);
    transform-origin: right top;
    border-right: 2px solid #A4A49E;
    border-left: 2px solid #A4A49E;
  }

  &:hover,
  &:focus {
    &::before,
    &::after {
      transform: scale3d(1, 1, 1);
      opacity: 1;
    }
  }
}


.card__three {
  &::before,
  &::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scale3d(0, 0, 1);
    transition: transform .3s ease-out 0s;
    background: rgba(255, 255, 255, .1);
    content: '';
    pointer-events: none;
  }

  &::before {
    transform-origin: left top;
  }

  &::after {
    transform-origin: right bottom;
  }

  &:hover,
  &:focus {
    &::before,
    &::after {
      transform: scale3d(1, 1, 1);
    }
  }
}


@media screen and (min-width: 1050px){
  .cards__thumb{
    height: 480px;
  }
  .cards__wrapper{
    flex-wrap: nowrap;
    flex-direction: row;
  }
  .cards__content p {
    text-align: left;
    margin-top: 0px;
  }
  .cards__card{
    width: 50%;
  }
  .cards__content{
    margin-top: 0px;
    align-items: flex-start;
    justify-content: flex-start;
  }

}



/*---------------
11 - Video grid
---------------*/

.video-grid__wrapper{
  display: flex;
  flex-direction: column;
}


.video-grid__content{
  text-align: center;
  margin-bottom: 50px;
}

.video-grid__content h2 {
  margin-bottom: 15px;
}

.video-grid__content a {
  gap: 10px;
}

.video-grid{
  padding: 80px 0;
  background: linear-gradient(to bottom, #F0EFEA 50%, white 50%);
}

.video__main{
  margin-bottom: 25px;
}

.video__list{
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.video-grid__videos .video{
  height: 194px;
}

@media screen and (min-width: 1050px){
  .video-grid__wrapper{
    display: flex;
    flex-direction: row;
    gap: 40px;
  }
  .video-grid__content{
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: end;
  }
 
  .video-grid__content h2 {
    margin-bottom: 30px;
  }
  .video-grid__videos{
    flex: 1;
  } 
  .video__main{
    height: 340px !important;
  }
  .video__list{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }

}

/*---------------
12 - Video grid
---------------*/
.post-grid{
  background-color: #F4F4F4;
  padding: 80px 0px;
}
.post-grid h2 {
  display: block;
  margin-bottom: 25px;
}
.post-grid__content{
  text-align: right;
}
.post-grid__content h2{
  text-align: right;
}

.post-grid__posts{
  display: flex;
  flex-direction: column;
  gap: 25px;
}



@media screen and (min-width: 1050px){
  .post-grid__wrapper{
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 50px;
  }

  .post-grid__wrapper > * {
    min-width: 0;
  }


  .post-grid__posts{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .post-grid__wrapper .carousel__card{
    width: 31%;
  }
}

/*---------------
13 - Footer
---------------*/

footer{
  background-color: #555555;
  padding: 80px 0;
  position: relative;
}

footer ul {
  text-align: center;
}

.footer__wrapper{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  padding-bottom: 30px;
}

footer h3 {
  font-size: 16px;
  color: #fff;
  font-weight: 600;
  margin-bottom: 15px;
}

footer .menu-item a{
  font-size: 15px;
  font-weight: 400;
  text-align: center;
  text-transform: capitalize;
  color:#fff;
}

footer .menu-item a:after{
  left: 0%;
  width: 0;
  height: 0;
}

footer section ul li p {
  color: #fff;
  margin: 0;
}

footer .privacy{
  padding-top: 30px;
}

footer .privacy p {
  color: #fff;
  text-align: center;
  margin: 0;
}

footer .circle{
    display: none;
}

.circle__overlay{
  display: none;
}

footer .privacy hr {
  height: 2px;
  background-color: #E8E7DF;
  margin-bottom: 40px;
}

@media screen and (min-width: 1050px){
  footer{
    padding: 80px 0px 0px 0px;
  }
  .footer__wrapper{
    align-items: center;
    justify-content: center;
    flex-direction: row;
    padding: 60px 0;
  }
  .footer__wrapper section {
    width: 25%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  .footer__wrapper section p {
    text-align: left;
  }

  footer ul{
    text-align: left;
  }
  footer .privacy {
    padding: 40px 0;
  }
  .privacy__wrapper{
    justify-content: space-between;
    display: flex;
    align-items: center;
  }
  .privacy__wrapper h3 {
    margin: 0;
  }
  footer .circle{
    position: absolute;
    top: -19px;
    left: calc(50% - 28px);
    display: block;
    z-index: 5;
  }
  .circle__overlay{
    display: block;
    position: absolute;
    top: -28px;
    left: calc(50% - 37.5px);
    width: 75px;
    height: 70px;
    z-index: 1;
    border-radius: 100%;
    background-color:#555555 ;
  }
}

/*---------------
14  - Form
---------------*/
.form form{
  margin-top: 30px;
  display: inline-flex;
  flex-direction: column;
  gap: 15px;
  width: 100% ;
  align-items: flex-end;
  background-color: #fff;
}

.form{
  text-align: center;
  padding: 80px 0px;
  background-color: #fff;
}

.form h3{
  margin-bottom: 30px;
}

.form .form__field{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

.form .form__field input, .form .form__field textarea{
  width: 100%;
}

.form .form__field textarea{
  height: 150px;
}

form label{
  color: #454142;
}

form a {
  background-color: #AAAAAA;
}

.form form .group{
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 15px;
  }

@media screen and (min-width: 1050px){
  .form__wrapper{
    max-width: 600px;
  }
  .form__wrapper {
    margin: 0 auto;
    width: 780px;
  }
  .form form .group{
    display: flex;
    width: 100%;
    gap: 15px;
    flex-direction: row;
  }
}



/*---------------
14 - Testimonials 
---------------*/

.testimonials {
  background-color: #fff;
  padding: 120px 0;
  position: relative;
}

.testimonials h2 {
  margin-bottom: 30px;
}

.testimonial__content{
  text-align: center;
  z-index: 10;
  position: relative;
  color: #F7F7F4;
}

.testimonial__content h2, .testimonial__content p {
  color: #fff;
}

.testimonials__card{
  background-color:#F7F7F4;
  padding: 30px;
}

.testimonials__card h3 {
  text-align: left;
  margin-bottom: 15px;
}

.testimonial__thumb{
  height: 550px;
  width: 100%;
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
}

.testimonial__carousel{
  z-index: 30;
  position: relative;
  margin-top: 60px;
}

.testimonial__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.testimonial__overlay{
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  background-color: #454142;
  opacity: 28%;
  width: 100%;
  height: 550px;
}

.testimonials__arrows{
  display: flex;
  justify-content: center;
  margin-top: 30px;
  gap: 15px;
}


@media screen and (min-width:1050px) {
  .testimonial__wrapper{
    display: flex;
    gap: 10%;
  }

  .testimonial__overlay{
    height: 450px;
  }

  .testimonial__thumb{
    height: 450px;
  }

  .testimonial__carousel{
    width: 40%;
    min-width: 0;
    margin-top: 0;
  }
  .testimonials__card{
    background-color: #F7F7F4;
    width: 100%;
    height: 450px;
    padding:0px 25px 25px 25px;
    padding: 60px;
  }
  
  .testimonial__content{
    width: 40%;
  }
  
  .testimonials__card__inner{
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
  }

  .testimonial__content h2, .testimonial__content p{
    text-align: right;
  }

  .testimonials .swiper-slide{
    padding: 0px 30px 30px 30px;
  }

  .swiper {
    min-width: 0;
  }
  
  .testimonials__arrows{
    width: 100%;
    position: absolute;
    bottom: 50px;
    display: flex;
    justify-content: space-between;
  }
  .testimonial__prev{
    margin-left: -40px;
    cursor: pointer;
  }
  .testimonial__next{
    margin-right: -40px;
    cursor: pointer;
  }
}


/*---------------
15 - Newsletter 
---------------*/

.newsletter{
  padding: 80px 0px;
  background-color: #A4A49E;
}

.newsletter .wrapper{
  display: flex;
  flex-direction: column;
  align-items: center;
}

.newsletter .wrapper .logo{
  width: 270px;
}

.social{
  display: flex;
  flex-direction: row;
  width: 100%;
  gap: 20px;
  justify-content: center;
  margin: 30px 0px 80px 0px
}

.social__wrapper{
  width: 35px;
  height: 35px;
  background-color: #555555;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
}

.social__wrapper span{
  color: #fff;
}

.newsletter form{
  background-color: #A4A49E;
  align-items: center;
}

.newsletter form h3{
  font-size: 17px;
  color: #F5F5F5;
  font-weight: 500;
  text-transform: uppercase;
}

.newsletter form input, .newsletter form button{
  width: 100%;
}

.newsletter form .form__items{
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: 5px;
  justify-content: center;
}

.newsletter form button{
  text-align: center;
  padding: 0;
}

@media screen and (min-width:1050px){
  .newsletter form .form__items{
    flex-direction: row;
  }
  .newsletter form .form__items input{
    width: 300px;
  }
  .newsletter form h3{
    text-align: left;
    margin-bottom: 5px;
  }
  
}


/*---------------
16 - Partners 
---------------*/
.partners{
  padding: 80px 0px;
}

.partners h3 {
  font-size: 16px;
  font-weight: 600;
}

.partners__list{
  gap: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 50px 0;
  flex-wrap: wrap;
}

@media screen and (min-width:1050px){
  .partners__wrapper{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 50px
  }
  .partners__list{
    margin: 30px 0;
    gap: 60px;
  }
}


/*---------------
17 - Overlap Block
---------------*/
.overlap{
  padding: 20px 0px;
}

.overlap h1{
  text-align: center;
}

.overlap__images{
  position: relative;
  height: 335px;
  margin-bottom: 60px;
}

.overlap__thumb{
  position: absolute;
  height: 266px;
  width: 195px;
}

.overlap__images img{
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

.overlap__thumb:nth-child(1){
  top: 0;
  left: 0;
}

.overlap__thumb:nth-child(2){
  top: 60px;
  right: 0; 
}

.overlap__text{
  margin: 30px 0px 10px 0px;
}

.overlap__content{
  display: flex;
  flex-direction: column;
}

.overlap__content .btn{
  align-self: center;
}

@media screen and (min-width:1050px){
  .overlap__wrapper{
    display: flex;
    gap: 5%;
  }
  .overlap__wrapper div.column {
    flex: 0 0 50%;
    justify-content: center;
  }
  .overlap__images{
    position: relative;
    height: auto;
    margin-bottom: 0px;
    display: flex;
  }
  .overlap__thumb{
    height: 442px;
    width: 325px;
    position: relative;
  }

  .overlap__thumb:nth-child(2){
    margin-top: 60px;
    top: 0;
    margin-left: -40px; 
  }
  
  .overlap__content .btn{
    align-self: flex-start;
  }

  .overlap h1{
    text-align: left;
  }
}

/*---------------
18 - Text two columns Block
---------------*/
.text-columns {
  padding: 80px 0px;
}

.text-columns__wrapper{
  display:flex;
  flex-direction: column;
  text-align:center;
}

.text-columns__wrapper .column{
  text-align:left;
}
@media screen and (min-width:1050px){
  .text-columns__wrapper{
    flex-direction: row; 
    gap: 80px; 
  }
  .text-columns__wrapper .column:nth-child(1){
    text-align: right;
  }
  .text-columns__wrapper .column:nth-child(2){
    text-align:left; 
  }
}

/*---------------
19 - Cards grid Block
---------------*/
.cards-grid{
  padding:100px 0;
}
.cards-grid__wrapper {
  display:flex;
  flex-direction:column;
  gap:60px;
}

.cards-grid__wrapper .card{
  background: #F7F7F430;
  backdrop-filter: blur(14px);
  border: 1px solid #F7F7F44F;
  padding: 30px;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:30px;
}

.cards-grid__wrapper .card p{
  color:#fff;
}

.cards-grid__wrapper .card h4{
  font-size:24px;
  font-weight: 400;
  margin-bottom:30px;
}

.cards-grid__wrapper .card .card__content{
  text-align:center;
}

@media screen and (min-width:1050px){
  .cards-grid__wrapper .card{
    width:30%;
    height: auto;
  }
  .cards-grid__wrapper{
    flex-direction:row;
    flex-wrap:wrap;
  }
}

/*---------------
20 - Gallery
---------------*/
.gallery{
  padding: 100px 0px; 
}

.gallery__inner{
  position:relative;
}

.gallery__main{
  
}

.gallery__thumbs .swiper-slide{
  width:30%; 
  height:100%;
  opacity: 0.4;
}

.gallery__thumbs .swiper-slide-thumb-active{
  opacity:1; 
}

.gallery__buttons{
  width: 100%;
  display:flex;
  justify-content:center;
  gap:15px; 
  margin-bottom:10px;
}

.gallery__next,.gallery__prev{
  width:25px; 
  height:25px;
  cursor:pointer; 
}

.gallery__content{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:30px;
  margin-bottom:30px;
}

.gallery p {
  text-align:center;
  margin-bottom:0px;
}

@media screen and (min-width:1050px){
  .gallery .gallery__main .swiper-slide .gallery__thumb
  {
      width:80%;
      height:592px;
      margin: 0 auto;
  }

  .gallery__content{
    margin-bottom:50px;
  }

  .gallery__wrapper{
    width:80%;
    margin:0 auto;
    margin-top: 30px;
  }
  
  .gallery .gallery__main .swiper-slide .gallery__thumb img{
      width:100%
      height:100%;
      object-fit:cover; 
      object-position:center; 
  }
  
  .gallery__next{
    position:absolute;
    top:calc(50% - 25px);
    right:3%;
    z-index:100;
  }
  .gallery__prev{
    position:absolute;
    top:calc(50% - 25px);
    left:3%;
    z-index:100; 
  }

  .gallery__next,.gallery__prev{
    width:50px; 
    height:50px;
    cursor:pointer; 
  }

  .gallery__buttons{
    margin-bottom:0px; 
  }

  .gallery p {
    width:415px;
  }

}

/*---------------
21 - Roteiro single 
---------------*/
.roteiro{

}

.roteiro__banner{
  width:100%;
  height:700px;
  margin-top:-100px;
}

.roteiro__banner img {
  width:100%;
  height:100%;
  object-fit:cover; 
  object-position:center; 
}

.roteiro__intro{
  text-align:center; 
}

.roteiro__intro-1{
  width:100%;
  padding: 60px 0px;
}

.roteiro__intro span.data{
  background-color:#A4A49E; 
  color:#fff;
  font-size:15px;
  padding:2px 5px;
}

.roteiro__intro span.subtitulo{
  font-size:15px;
  color: #A4A49E;
}

.roteiro__items{
  background-color: #F0EFEA;
  padding:30px;
}

.roteiro__items{
  width:100%;
}

.roteiro__items-wrapper{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.roteiro__items .item{
  display:flex;
  align-items:center;
  gap:5px;
}

.roteiro__items .item p {
  margin:0;
  text-align:left;
  margin-left:10px;
}

.roteiro__menu{
  padding:20px 0px;
  border-bottom:1px solid #F0EFEA;
  background-color:#fff;
  position:sticky;
  top:0;
  z-index:1000;
}

.roteiro__menu ul{
  width:100%;
  display: flex;
  flex-wrap:wrap;
  row-gap:10px;
  column-gap:30px;
  align-items:center;
  justify-content:center;
}

.roteiro__menu ul li a {
  color:#454142; 
  font-size:16px;
  font-weight:600;
}

.roteiro__menu ul li a:hover{
  text-decoration:underline;
}

.roteiro__sobre{
  padding: 80px 0px;
  background-color:#fff;
  border-bottom:1px solid #F0EFEA;
}

@media screen and (min-width:1050px){
  .roteiro__intro{
    display:flex;
  }
  .roteiro__items-wrapper{
    align-items:flex-start;
  }
  .roteiro__intro-1-wrapper {
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    text-align:left;
  }
  .roteiro__items{
    display:flex; 
    align-items:center;
  }
  .roteiro__intro p {
    max-width:400px; 
    text-align:right;
  }

}

.dias{
  border-bottom:1px solid #F0EFEA;
  padding: 80px 0px;
  background-color:#fff;
}

.dias ul {
  list-style-type: disc;
  list-style-position: outside;
  position: relative;
  list-style: none;
}

.dias ul li {
  padding-left:30px;
  position: relative;
  margin-bottom:80px;
}

.dias ul li::before{
  content: "";
  position: absolute;
  left: 0.35em;
  top: 0;
  width: 1px;
  height: 100%;
  background-color: #F0EFEA;
}

.dias ul li::after{
  content: "";
  position: absolute;
  left: 0;
  top: 0.3em;
  width: 0.6em;
  height: 0.6em;
  background-color: #AAAAAA;
  border: 2px solid #AAAAAA;
  border-radius: 50%;
}

.dias ul li::marker{
  color:#A4A49E;
}

.dias h2{
  margin-bottom:30px;
}

.dias h4 {
  color: #454142;
  font-weight:400;
  display:block;
}

.dias h4 b {
  color:#A4A49E;
}

.dias h6{
  font-size:15px;
  font-weight:400; 
  color:#A4A49E;
  text-transform:uppercase;
  font-family:var(--body-font);
}

.dias__galeria{
  display:flex; 
  gap:20px;
  margin-top:10px;
  flex-wrap:wrap;
}


.dias__galeria .thumb img {
  width:100%;
  height:100%;
  object-fit:cover; 
  object-position:center;
  max-height:400px;
}


@media screen and (min-width:1050px){
  .dias__galeria{
    display:flex;
    flex-wrap:nowrap;
  }
  .dias__galeria .thumb{
    height:435px;
    width:100%;
    overflow:hidden;
  }
  .dias__galeria .thumb img {
    max-height:100%;
  }
}

.roteiro__pagamento{
  border-bottom:1px solid #F0EFEA;
  padding: 80px 0px;
  background-color:#fff;
}

.roteiro__pagamento a {
  cursor: pointer;
  border: none;
  outline: none;
  height: 40px;
  padding: 10px 60px;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #454142;
  color: #fff;
}

.roteiro__pagamento a:hover{
  background-color: rgb(227, 226, 226);
  color: var(--primary-color);
  transition: all .4s ease;
}

.roteiro__informacoes{
  border-bottom:1px solid #F0EFEA;
  background-color:#fff; 
  padding:80px 0px;
}

.roteiro__informacoes h2 {
  margin-bottom:30px;
}

.roteiro__informacoes-wrapper{
  display:flex;
  flex-direction:column;
  gap:40px;
}

.roteiro__informacoes-wrapper div{
  background-color:#F7F7F4;
  padding:30px;
}

.roteiro__informacoes-wrapper h3{
  margin-bottom:30px;
}

.roteiro__informacoes-wrapper ul{
  list-style-type: disc;
  padding-left:20px;
}

.roteiro__informacoes-wrapper ul li{
  font-size:15px;
  color:#454142;
}

.roteiro__informacoes-wrapper ul li::marker{
  color: #454142;
}

@media screen and (min-width:1050px){
  .roteiro__informacoes-wrapper{
    flex-wrap:nowrap;
    flex-direction:row;
  }
  .roteiro__informacoes-wrapper div{
    width:100%;
  }
}

.roteiro__galeria{
  background-color:#fff;
  border-bottom:1px solid #F0EFEA;
}

.roteiro__contato{
  background-color:#fff;
}

.roteiros h1 {  
  text-align:center;
}

.roteiros__banner{
  width:100%;
  height:480px;
  margin-top:-100px;
}

.roteiros__banner img {
  width:100%;
  height:100%;
  object-fit:cover; 
  object-position:center; 
}

.roteiros__intro{
  padding:80px 0px;
  text-align:center;
}

.roteiros__card {
  max-width:90%;
  display:block;
  margin: 0 auto;
}

.roteiros__card-thumb{
  width:100%;
  height:450px;
}

.roteiros__card-thumb img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:cnter;
}


.roteiros__intro p {
  text-align:center; 
}

.roteiros-lista span.data{
  font-size:15px;
  color:#A4A49E
}

.roteiros-lista h3 {
  text-transform:capitalize;
  text-align:left;
}

.roteiros__content{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:10px;
}

.roteiros-lista span.preco {
  font-size:15px;
  color:#454142;
}

.roteiros-paginacao{
  padding: 60px 0px;
}

.roteiros-lista{
  display: flex;
  flex-direction:column;
  gap:30px;
}

.roteiros__card-thumb{
  overflow:hidden;
}

@media screen and (min-width:1050px){
  .roteiros__card{
    width:23%;
  }
  .roteiros-lista{
    flex-direction:row;
    flex-wrap:wrap;
  }
}

.blog__banner{
  padding: 80px 0px;
  display:flex;
  text-align:center;
  flex-direction:column;
  background-color:#fff;
}

.blog__banner h1 {
  margin:30px 0px;
}

.blog__thumb{
  width:100%;
  height:90px;
}

.blog__thumb img {
  width:100%;
  height:100%;
  object-position:center; 
  object-fit:cover;
}


.blog__wrapper{
  display:flex;
  flex-direction:column;
  gap:30px;
  padding:80px 0px;
}

.blog__wrapper .post-card{
  background-color:#fff;
  padding:20px;
  text-align:center;
}

.blog__wrapper .post-card span.categoria{
  font-size:15px;
  text-transform:uppercase;
  color: #A4A49E;
}

.blog__wrapper .post-card h3{
  color: #454142; 
  font-size:23px;
  text-transform:capitalize;
}

.blog .paginacao {
  margin-bottom:80px;
}

.blog .busca{
  margin-bottom:80px;
}

.blog .categorias {
  margin-bottom:80px;
}

.blog .categorias ul {
    list-style-type: disc;
    padding-left:15px;
}

.blog .categorias ul li {
  margin-bottom:10px;
}

.blog .categorias ul li a {
  color: #454142; 
  text-transform:uppercase;
  font-size:16px;
  font-weight:600;
}

.blog .categorias ul li a:hover{
  text-decoration:underline;
}

.blog .categorias h2, .blog .mais-lidas h2 {
  font-size:27px; 
  margin-bottom:15px;
  text-align:left;
}

.blog .mais-lidas {
  margin-bottom:80px;
}

.blog .mais-lidas ul{
  display:flex;
  flex-direction:column;
  gap:15px;
}

.blog .mais-lidas ul li a {
  color:#454142;
  font-size:15px;
  text-decoration: underline;
}

.buscar{
  position:relative; 
  width:100%;
}

.buscar input{
  background-color:#fff;
  width:100%;
  height:45px;
}

.buscar img {
  position:absolute;
  right:10px;
  top:calc(50% - 12px);
}

.category__inner{
  display: flex;
  flex-direction:column;
  align-items:center;
}


.cat__content h1{
  margin:0px;
}
.cat__content p {
  color: #454142;
  display:block;
  margin:30px 0px;
}


@media screen and (min-width:1050px){
  .cat span.category{
    text-align:left;
  }
  .cat__content{
    text-align:left;
  }
  .blog__inner{
    margin-top:80px;
    display:flex;
    gap:80px;
  }
  .blog .bloco-1{
    width:80%;
  }

  .blog__wrapper{
    padding:0px;
  }
  
  .blog__wrapper .post-card h3{
    text-align:left;
  }

  .blog__wrapper .post-card p {
     display: -webkit-box;
  -webkit-line-clamp: 3;     /* número de linhas */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  }

  .blog__banner__inner{
    display: flex;
    flex-direction:row;
    gap:80px;
  }

  .blog__thumb{
    height: 150px;
  }
  .blog__banner h1{
    margin:0px;
    text-align:left; 
  }

  .blog__banner p {
    text-align:left;
  }
  .blog__wrapper .post-card{
    display:flex;
    gap: 30px;
    text-align:left;
    position:relative;
    padding:20px;
    align-items:center;
    justify-content: flex-start;
  }
  .blog__wrapper .post-card .thumb{
    width:180px;
    height: 245px;
    overflow:hidden;
     flex-shrink: 0;
  }
  .blog__wrapper .post-card .thumb img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
  }

  .blog__wrapper .post-card button{
    position:absolute;
    right:20px;
    bottom:20px;
  }
  .blog .paginacao{
    margin-top:80px;
  }
  .blog__wrapper__posts{
    display: flex;
    flex-direction:column;
  }
  .blog__wrapper__posts h3 {
    text-align:left;
  }
}

/*---------------
22 - Artigo
---------------*/

.post{
  padding:80px 0px;
}
.post .post__category{
  background-color:#A4A49E;
  padding:2px 5px; 
  color:#fff;
  text-transform:uppercase;
  font-size:15px;
  font-weight:500;
}

.post h1 {
  line-height:100%;
  margin:10px 0px;
}

.post-meta span{
  display:flex; 
  gap:3px;
  text-transform:uppercase;
  color:#A4A49E;
  font-weight:500;
}

.post-content a {
  color:#A4A49E;
  text-decoration-line: underline;
}

.post-content b, .post-content bold{
  font-weight:600;
}

.post-content h3{
  margin:10px 0px;
}

.post-content p {
  color:#454142;
  margin-bottom:30px;
}

.post-author-box{
  background-color:#fff; 
  padding:10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:20px;
  margin-bottom:80px;
}
.post-author-thumb{
  width:100%;
  height:245px;
  flex-shrink:0;
}

.post-author-thumb img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.autor-social{
  display: flex;
  flex-wrap:wrap; 
  align-items:center;
  justify-content:flex-start;
  gap:30px;
}

.autor-social-wrapper{
  display: flex;
  flex-direction:row; 
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:flex-start;
}

@media screen and (min-width:1050px){
  .post-thumbnail{
    width:100%;
    height:580px;
  }
  .post-thumbnail img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
  }
  .post-author-box{
    flex-direction:row;
  }
  .post-author-thumb{
    width:180px;
  }

}

.relacionados{
  background-color:#F4F4F4;
  padding:80px 0px;
}

.relacionados__wrapper{
  display:flex;
  flex-direction:column;
}

.relacionados__wrapper h2 {
  text-align:left;
  margin-bottom:30px;
}

.relacionados__posts .related-post{
  background-color:#fff;
  padding:10px;
  display:block;
  text-decoration:none;
}
.relacionados__posts{
  display:flex;
  flex-direction:column;
  gap:20px;
}

.relacionados__posts .related-post h3{
  font-size:18px;
  text-align:left;
  color:#454142;
  text-transform:capitalize;
}

@media screen and (min-width:1050px){
  .relacionados{
    background-color:#fff;
  }
  .relacionados__wrapper{
    flex-direction:row;
    gap:60px;
  }
  .relacionados__wrapper h2 {
    width:25%;
    text-align:right;
  }
  .relacionados__posts{
    flex-direction:row;
    flex-wrap:nowrap;
  }
  .relacionados__posts .related-post .related-post__thumb{
    width:auto;
    height:430px;
    overflow:hidden;
    max-width:100%;
  }
  .relacionados__posts .related-post .related-post__thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
  }
  
  .related-post__content{
    margin-top:15px;
  }
}

.search{
  padding:80px 0px;
}

.search h1 {
  font-size:35px;
  line-height:100%;
  margin-bottom:30px;
}

.search__posts{
  display:flex;
  flex-wrap:wrap;
  gap:30px;
}

.search__posts-post{
  background-color:#fff;
  padding:20px;
  display:block;
  width:100%;
  position:relative;
}

.search__posts-thumb{
  width:100%;
  height:450px;
}

.search__posts-thumb img {
  width:100%;
  height:100%;
  object-fit:cover; 
  object-position:center;
}

.search__posts-content h3 {
  text-align:left;
}

.search__posts-content span{
  margin:10px 0px;
  display:block;
}

.search__posts-content p {
   display: -webkit-box;
  -webkit-line-clamp: 3; /* Limita a 2 linhas */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media screen and (min-width:1050px){
  .search__posts-post{
    width:28%;
  }
  .search__posts-thumb{
    width:100%;
  }
}
