* {
  box-sizing: border-box;
}

:root {
  --color-primary: #323C92;
  --color-secondary: #D72929;
}

body {
  margin: 0;
  transition: transform 0.4s cubic-bezier(0.75, 0, 0.25, 1), -webkit-transform 0.4s cubic-bezier(0.75, 0, 0.25, 1);
  font-family: 'Montserrat', sans-serif;
  font-family: 'Lato', sans-serif;
  overflow-x: hidden;
}

body.open-menu {
  overflow: hidden;
}

ul {
  padding-left: 0;
}

li {
  list-style-type: none;
}

a {
  text-decoration: none;
  color: inherit;
}

img {
  max-width: 100%;
}

figure {
  margin: 0;
}

fieldset {
  border: 0;
}

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.btn {
  background-color: var(--button-color, var(--color-secondary));
  font-size: var(--font-size, 14px);
  padding: var(--padding, 6px 10px);
  border: 0;
  border-bottom: solid var(--border-width, 3px) var(--border-color, #940e0e);
  text-transform: var(--text-transform, uppercase);
  color: var(--color, #FFF);
  width: var(--width, 120px);
  text-align: center;
  transition: all ease 0.5s;
  font-weight: bold;
  border-radius: var(--border-radius, 6px);
  display: block;
  cursor: pointer;
}

.site-header,
.site-header .container,
.menu__container,
.menu__container .menu__information,
.main-navigation,
.what-we-do .timeline,
.page-about__main .cards__container {
  display: flex;
  flex-wrap: wrap;
}

.heading {
  width: 100%;
  font-weight: bold;
  margin-top: var(--marginTop, 0);
  margin-bottom: var(--marginBottom, 0);
  color: var(--color, #272727);
  text-transform: var(--transform, uppercase);
  font-size: var(--fontSize, 36px);
  text-align: var(--textAlign, left);
}

.single-post .header-message-page {
  margin-bottom: 4em;
}

.uncategorized {
  display: none !important;
}

.container-flex {
  display: flex;
  flex-wrap: wrap;
  flex-basis: calc(100% / var(--items, 0));
}

.column {
  flex-basis: calc(100% / var(--items, 0));
}

.column__medium {
  --items: 1;
  width: calc(100% / var(--items));
}

.site-header {
  width: 100%;
  justify-content: space-between;
  align-content: center;
  align-items: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.site-header .container {
  width: 100%;
  justify-content: space-between;
}

.site-header .infos-mobile {
  display: none;
}

.site-header .infos-mobile__list {
  display: inline-block;
  text-align: center;
  font-size: 15px;
  color: var(--color-primary);
  margin: 0 7px;
}

.site-header .infos-mobile__item {
  color: inherit;
}

.nav-bg {
  position: fixed;
  left: -90px;
  top: 0;
  height: 100%;
  background-size: 100% auto;
  background-color: #2a2626;
  height: 100%;
  height: 100%;
  width: 200px;
  background-position: center center;
}

.nav-bg {
  display: none;
  transform: skew(-20deg);
  animation-direction: alternate;
  width: 225px;
  left: -240px;
}

.open-menu .nav-bg {
  transform: skew(20deg);
  animation: shake .5s;
  animation-fill-mode: forwards;
  -webkit-animation-fill-mode: forwards;
  animation-direction: alternate;
  left: -40px;
}

@keyframes shake {
  0% {
    transform: skew(20deg);
    left: -150px;
  }

  50% {
    transform: skew(20deg);
    left: -120px;
  }

  100% {
    transform: skew(-10deg);
    left: -40px;
  }
}

.menu__container {
  width: 50%;
}

.menu__container .menu__information {
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  align-content: center;
  background-color: var(--color-secondary);
  border-top-left-radius: 100px;
  border-bottom-left-radius: 100px;
  padding: 8px 20px;
  position: relative;
  color: #FFF;
}

.menu__container .menu__information__list {
  display: inline-block;
  padding: 0 10px;
}

.menu__container .menu__information__list .btn {
  --font-size: 11px;
  --color: #000;
  --button-color: #FFF;
  --border-radius: 100px;
  --width: auto;
  --padding: 7px 20px;
  --border-width: 0;
  font-weight: normal;
}

.menu__container .menu__information__item:not(.btn) {
  color: #FFF;
}

.open-menu .menu__container {
  transform: translate3d(0, 0, 0);
}

.main-navigation {
  margin: 5px;
  width: 100%;
  align-content: center;
  align-items: center;
  justify-content: flex-end;
}

.main-navigation_menu {
  margin: 0;
}

.main-navigation__social {
  width: 100%;
  display: none;
}

.main-navigation__social__list {
  display: inline-block;
  color: #FFF;
  margin: 0 10px;
}

.main-navigation__social__list a {
  color: inherit;
}

.main-navigation_menu__list {
  display: block;
  padding: 15px 5px;
  margin: 0 10px;
  border-top: 2px solid transparent;
}

.main-navigation_menu__list:hover {
  border-top: 2px solid var(--color-primary);
}

.main-navigation_menu__item {
  color: #FFF;
}

#btn-close-menu {
  position: absolute;
  top: 0;
  right: 0px;
  padding: 20px;
  color: #FFF;
}

#anchor-menu {
  color: #949494;
}

.modal__login {
  position: fixed;
  z-index: 12;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(0);
}

.modal__login__overlay {
  z-index: 10;
  background-color: rgba(0, 0, 0, 0.404);
  position: fixed;
  width: 100%;
  height: 100%;
}

.modal__login .form-theme {
  position: fixed;
  margin: auto;
  top: 30px;
  left: 0;
  right: 0;
  z-index: 12;
  padding: 30px;
  max-width: 350px;
  background-color: #FFF;
  border-radius: 6px;
  box-shadow: 5px 1px 10px rgba(0, 0, 0, 0.3);
  overflow: hidden;
  transform: scale(0);
  transition: transform 0.5s ease;
  text-align: center;
}

.modal__login .form-theme i {
  font-size: 22px;
  color: #9b9b9b;
  padding: 0 10px;
}

.modal__login .form-theme .btn {
  margin: 20px auto;
  cursor: pointer;
}

.modal__login .form-theme .input-control {
  margin-top: 20px;
  width: auto;
}

.open-modal .modal__login {
  opacity: 1;
  transform: scale(1);
}

.open-modal .modal__login .form-theme {
  transform: scale(1);
}

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */

/*
 *  Owl Carousel - Core
 */

.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1;
}

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  touch-action: manipulation;
  -moz-backface-visibility: hidden;
  /* fix firefox animation glitch */
}

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
}

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
  display: none;
}

.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next,
.owl-carousel button.owl-dot {
  background: none;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit;
}

.owl-carousel.owl-loaded {
  display: block;
}

.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}

.owl-carousel.owl-hidden {
  opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-grab {
  cursor: move;
  cursor: grab;
}

.owl-carousel.owl-rtl {
  direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
  float: right;
}

/* No Js */

.no-js .owl-carousel {
  display: block;
}

/*
 *  Owl Carousel - Animate Plugin
 */

.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

/*
 * 	Owl Carousel - Auto Height Plugin
 */

.owl-height {
  transition: height 500ms ease-in-out;
}

/*
 * 	Owl Carousel - Lazy Load Plugin
 */

.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */
}

.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-item .owl-lazy[src^=""],
.owl-carousel .owl-item .owl-lazy:not([src]) {
  max-height: 0;
}

.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d;
}

/*
 * 	Owl Carousel - Video Plugin
 */

.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000;
}

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease;
}

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
  transform: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none;
}

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
}

.slider .owl-nav {
  display: none;
}

.slider__content {
  position: absolute;
  left: 0;
  width: auto;
  background-color: var(--color-primary);
  color: #FFF;
  border-top-right-radius: 100px;
  border-bottom-right-radius: 100px;
  top: 50%;
  padding: 30px 70px 30px;
  font-size: 15px;
  max-width: 600px;
}

.slider__content__animation {
  opacity: 0;
  transition: all 0.2s ease-in;
  transition-delay: 0.5s;
  will-change: transform;
  transform: translate3d(-100%, 0, 0);
}

.slider__content__text {
  margin: 0;
}

.slider__content__text__featured {
  display: block;
  font-size: 43px;
  font-weight: bold;
  text-transform: uppercase;
  margin: 0;
}

.slider .owl-item {
  overflow: hidden;
}

.slider .owl-carousel {
  margin: 0;
}

.owl-item.active .slider__content__animation {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

.about__index {
  padding: 4em 0;
  --gradient: linear-gradient(285.46deg, #ffffff 6.3%, rgb(237, 239, 238) 56.79%);
}

.about__index .heading {
  --color: #272727;
  --fontSize: 40px;
}

.about__index .column:nth-child(2) {
  border-right: 0;
}

.about__index .column:nth-child(2) .heading {
  --fontSize: 20px;
  --transform: uppercase;
  --marginBottom: 2em;
  display: block;
}

.about__index .why-bene {
  font-size: 14px;
  padding: 0 2em;
}

.about__index .why-bene__list {
  margin-bottom: 25px;
  padding-left: 20px;
  position: relative;
}

.about__index .why-bene__list:before {
  content: '';
  left: -10px;
  top: 0px;
  position: absolute;
  display: inline-block;
  background: linear-gradient(105.01deg, #0ECAD6 -27.89%, #2C3ABA 132.26%);
  border-radius: 100%;
  width: 20px;
  height: 20px;
}

.band p {
  font-size: var(--fontsize, 20px);
  color: #FFFFFF;
  margin-bottom: 0;
  margin-top: 0px;
}

.band p strong {
  font-size: 25px;
}

.band p em {
  font-size: 22px;
}

.band .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.band .btn__band {
  --width: 180px;
  --button-color: #a90000;
  --color: #FFF;
  --padding: 12px;
  --font-size: 14px;
  --border-color: #670303;
  margin-right: 0;
}

.band-promo {
  background-color: #D72929;
  padding: 2em 0;
}

.band-about {
  text-align: right;
  text-transform: uppercase;
  color: #FFFFFF;
  background: #323C92;
  padding-top: 4em;
  padding-bottom: 4em;
}

.band-about .btn__band {
  margin-top: 10px;
}

.band-about .column__medium {
  --item: 2;
  padding-right: 10px;
}

.band-about__information {
  display: flex;
  flex-wrap: wrap;
}

.band-about__information__title {
  --fontsize: 36px;
  --text-align: left;
  text-align: var(--text-align);
  font-weight: bold;
  padding-right: 20px;
}

.band-about__information__text {
  --fontsize: 17px;
  text-align: left;
  display: block;
}

.what-we-do {
  padding: 2.5em 0;
}

.what-we-do .heading {
  --textAlign: center;
}

.what-we-do .timeline {
  justify-content: center;
  align-content: center;
  position: relative;
}

.what-we-do .timeline:before {
  position: absolute;
  top: 0;
  width: 90%;
  height: 5px;
  background: #2c3aba;
  right: 10%;
  margin: auto;
  z-index: -1;
}

.what-we-do .timeline__column {
  --items: 1;
}

.what-we-do .timeline__column:not(:first-child) {
  overflow: hidden;
}

.what-we-do .timeline__column p {
  font-size: 12px;
  text-align: center;
  color: #979797;
  margin: 5px auto;
  display: block;
  width: var(--width, 100%);
}

.what-we-do .timeline__column__description__circle {
  --width: 120px;
  margin: 15px auto;
}

.what-we-do .timeline__column__description {
  padding: 5px;
  --width: 77%;
}

.what-we-do .timeline .first-column .timeline__item {
  box-shadow: inset 0 0px 0px 2px #d72929, 0 0px 0px 3px #2c3aba;
}

.what-we-do .timeline .first-column .timeline__item:before {
  display: none;
}

.what-we-do .timeline__item {
  position: relative;
  margin: 20px auto;
  background-color: #FFF;
  border: 5px solid #ffffff;
  border-radius: 100%;
  box-shadow: inset 0 0px 0px 2px #d1d1d1, 0 0px 0px 3px #2c3aba;
  border-radius: 100%;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  align-content: center;
  margin-top: 50px;
  width: 45vw;
  height: 45vw;
  font-size: 20px;
  color: #979797;
  transition: transform 0.3s ease-in-out;
}

.what-we-do .timeline__item:before {
  content: '';
  position: absolute;
  top: -4.1em;
  left: 0;
  right: 0;
  margin: auto;
  height: 75px;
  width: 5px;
  background: #2c3aba;
  z-index: -1;
  transition: transform 0.5s ease-in-out;
}

.what-we-do .timeline__item img {
  margin: 0 auto;
}

.latest-posts {
  display: flex;
  flex-wrap: wrap;
  padding: 2em 0;
}

.latest-posts .heading {
  margin: .6em 0px 1em;
}

.latest-posts .container {
  display: flex;
  flex-wrap: wrap;
}

.latest-posts .post__title {
  --color: #2F3242;
  --fontsize: 16px;
  --marginbottom: 0;
  color: var(--color);
  font-size: var(--fontsize);
  font-style: normal;
  font-weight: bold;
  margin-top: 0;
  margin-bottom: var(--margintop);
}

.latest-posts .post__content {
  --width: 60%;
  width: var(--width);
  padding: 0 20px;
}

.latest-posts .post__item {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.latest-posts .featured-post {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.latest-posts .featured-post .post__title {
  --fontsize: 25px;
  margin-bottom: 25px;
}

.latest-posts .mini-posts__title {
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: normal;
  font-size: 24px;
  text-transform: uppercase;
}

.latest-posts .mini-posts .post__item {
  border-bottom: 1px solid #DDD;
  padding-bottom: 15px;
  margin-bottom: 15px;
}

.latest-posts .mini-posts .post__image {
  width: 20%;
}

.latest-posts .mini-posts .post__content {
  width: 100%;
  padding: 0;
}

.header-message-page {
  background-color: var(--color-primary);
  padding: 1em;
  color: #FFF;
  text-transform: uppercase;
  font-size: 21px;
  text-align: center;
}

/* Style the tab */

.tab {
  overflow: hidden;
  border: 1px solid #ccc;
  background-color: #f1f1f1;
}

/* Style the buttons that are used to open the tab content */

.tab button {
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
}

/* Change background color of buttons on hover */

.tab button:hover {
  background-color: #ddd;
}

/* Create an active/current tablink class */

.tab button.active {
  background-color: #ccc;
}

/* Style the tab content */

.tabcontent {
  display: none;
  padding: 6px 12px;
  border: 1px solid #ccc;
  border-top: none;
}

.tabs {
  margin-top: 5em;
  margin-bottom: 0;
}

.tabs__content {
  display: none;
  opacity: 0;
}

.tabs__content__header {
  width: 100%;
  background-color: var(--color-secondary);
  color: #FFF;
  font-size: 2em;
  margin-bottom: 2em;
  padding: 2em 0;
  border-bottom-left-radius: 6px;
  text-align: center;
}

.tabs__content__description {
  font-size: 16px;
}

.tabs__content.active {
  display: flex;
  flex-wrap: wrap;
  opacity: 1;
}

.tabs li {
  background-color: var(--color-primary);
  color: #FFF;
  padding: 10px 25px;
  border-top-right-radius: 6px;
  border-top-left-radius: 6px;
  display: inline-block;
  max-width: 240px;
  text-align: center;
  text-transform: uppercase;
}

.tabs li.active {
  background-color: var(--color-secondary);
}

.form-theme .wpcf7 {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.form-theme .input-control,
.form-theme input.wpcf7-form-control {
  padding: 10px 20px;
  border-radius: 7px;
  border: 2px solid #d9dde5;
  width: 100%;
}

.form-theme .wpcf7-submit.btn {
  --width: 150px;
  --color: #FFF;
  --padding: 10px;
  --font-size: 14px;
  --border-color: #670303;
  margin-right: 0;
  margin: 2em auto;
  border: 0;
  border-radius: 9px;
  border-bottom: 3px solid #670303;
}

.page-about__main {
  padding: 3em 0;
}

.page-about__main .heading {
  --font-size: 30px;
}

.page-about__main__disclaimer {
  max-width: 500px;
  color: #626262;
}

.page-about__main .heading,
.page-about__main__disclaimer {
  padding: 0 20px;
}

.page-about__main .cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: column;
  background-color: var(--color-primary);
  color: #FFF;
  text-align: center;
  border-radius: 6px;
  padding: 20px;
}

.page-about__main .cards:nth-child(2) {
  background-image: url("../images/card-about-2.png");
  background-repeat: no-repeat;
  background-size: cover;
}

.page-about__main .cards:nth-child(3) {
  background-image: url("../images/card-about-3.png");
  background-repeat: no-repeat;
  background-size: cover;
}

.page-about__main .cards__container {
  width: 100%;
  padding: 0 2em;
}

.page-about__main .cards__title {
  font-size: 15px;
}

.page-about__main .cards__image {
  display: block;
  margin: 0 auto;
}

.page-about__main .cards__description {
  font-size: 13px;
}

.page-about__condominio {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}

.page-about__condominio__title {
  --font-size: 30px;
  --transform: uppercase;
  --color: #323C92;
}

.page-about__condominio__description {
  font-size: 16px;
  color: #565656;
  flex-flow: 1;
}

.page-about__condominio__content {
  padding: 30px 2em;
  background-color: #E5E5E5;
  flex-basis: 20em;
  flex-grow: 9999;
}

.contact-infos {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  width: 100%;
  justify-content: center;
  padding: 4em 0;
}

.contact-infos__list {
  flex-grow: 1;
}

.contact-infos i {
  font-size: 60px;
}

.contact-container {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center;
  background-image: url("../images/section-contact.png");
  background-repeat: no-repeat;
  background-size: cover;
  padding: 2em 0;
}

.contact-container .heading {
  text-align: center;
}

.page-category {
  display: flex;
  flex-wrap: wrap;
  margin: 3em auto;
}

.page-category .post__list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0;
}

.page-category .post__list__title {
  margin: 0;
}

.page-purpose__container {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center;
  padding: 2em 0;
}

.page-purpose__container .btn {
  margin: 2em auto;
  text-align: center;
  max-width: 150px;
}

.page-purpose__container .wpcf7-form {
  display: inherit;
  flex-wrap: wrap;
  max-width: 710px;
}

.page-purpose__container .column-3 {
  width: calc(100% / 3 - 20px);
  margin: 15px 10px;
}

.page-purpose__container .column-1 {
  width: 100%;
  margin: 15px 10px;
}

.page-purpose__container .column-1 .wpcf7-textarea {
  width: 100%;
  border: 2px solid #d9dde5;
  padding: 15px;
}

.page-blog .header-message-page > p {
  margin: 0;
}

.blog {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 3em 0;
}

.blog .grid__areas {
  float: left;
}

.blog .post__list {
  grid-area: postlist;
  margin: 15px;
  text-align: center;
  font-size: 1.5em;
}

.blog .post__list__thumb {
  max-height: 250px;
  overflow: hidden;
}

.blog .post__list__title {
  grid-area: title;
  font-size: 20px;
  text-align: left;
  color: #000000;
  padding: 10px 0px 0px;
  margin: 0;
}

.blog .post__list__description {
  grid-area: description;
  font-weight: 300;
  font-size: 15px;
  margin: 15px 0;
  text-align: left;
}

.blog .post__list .btn {
  grid-area: button;
  height: 30px;
}

.blog .post__cards {
  margin: 15px;
}

.blog .post__cards__miniatura {
  max-height: 165px;
  min-height: 165px;
  width: 100%;
}

.sidebar {
  padding: 0 20px;
}

.sidebar__header {
  text-align: left;
  padding: 10px;
  color: #FFF;
  background-color: var(--color-secondary);
  font-size: 16px;
  font-weight: bold;
  border-radius: 10px;
  margin-bottom: 15px;
  text-transform: uppercase;
}

.sidebar__search,
.sidebar__categories,
.sidebar__facebook__social {
  margin-bottom: 40px;
}

.sidebar__search__field {
  padding: 10px 20px;
  border-radius: 5px;
  border: 2px solid #DDD;
  width: 100%;
}

.sidebar__search .btn {
  --border-radius: 6px;
  border: 0;
  border-bottom: 3px solid #821818;
  margin-right: 0;
  margin-left: auto;
  margin-top: 10px;
}

.sidebar__categories__list {
  margin-bottom: 15px;
  border-bottom: 1px solid #DDD;
  padding-bottom: 20px;
}

.sidebar__categories__item {
  font-size: 18px;
  color: #262626;
  padding: 15px;
}

.site-footer {
  background: url(../images/footer-image.png), #323c92;
  padding-top: 2em;
  padding-bottom: 2em;
  color: #FFF;
  background-size: cover;
  background-repeat: no-repeat;
}

.site-footer .container {
  display: flex;
  flex-wrap: wrap;
}

.site-footer .container {
  display: flex;
  flex-wrap: wrap;
}

.site-footer .social__item a {
  color: inherit;
}

.site-footer .social__item i {
  padding: 10px 15px;
  padding-left: 0;
  vertical-align: middle;
  width: 25px;
}

.footer-title {
  font-size: 16px;
  text-transform: uppercase;
  margin: 20px 0;
}

.footer__list {
  display: block;
  padding: 5px 0;
}

.footer__item {
  font-size: 13px;
  color: inherit;
}

.footer__about {
  font-size: 14px;
  font-weight: 500;
}

.footer__links_list {
  padding-bottom: 10px;
}

.copyright {
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  width: 100%;
  background-color: #FFF;
  justify-content: center;
  color: #8b8b8b;
  font-size: 14px;
  padding: 20px;
}

.copyright strong {
  padding: 5px 10px;
  border-radius: 50px;
  transition: linear 0.2s;
}

.copyright strong:hover {
  background-color: #552582;
  color: white;
}

.copyright p {
  margin: 0 10px;
}

.footer__map__link {
  display: block;
}

.whatsapp-button {
  width: 40px;
  height: 40px;
  line-height: 40px;
  display: block;
  position: fixed;
  bottom: 15px;
  right: 15px;
  cursor: pointer;
  text-align: center;
  background: #25d366;
  border-radius: 100%;
  box-shadow: 1px 1px 4px 0px rgba(0, 0, 0, 0.3);
  animation: pulse 3s infinite;
}

.whatsapp-button svg {
  width: 26px;
  display: block;
  margin: 7px auto 5px auto;
}

@keyframes pulse {
  0% {
    -moz-box-shadow: 0 0 0 0 #b4ffcf;
    box-shadow: 0 0 0 0 #b4ffcf;
  }

  40% {
    -webkit-box-shadow: 0 0 0 15px rgba(180, 255, 207, 0.8);
  }

  70% {
    -moz-box-shadow: 0 0 0 20px rgba(180, 255, 207, 0);
    box-shadow: 0 0 0 20px rgba(180, 255, 207, 0);
  }

  100% {
    -moz-box-shadow: 0 0 0 0 rgba(180, 255, 207, 0);
    box-shadow: 0 0 0 0 rgba(180, 255, 207, 0);
  }
}

@media (min-width: 600px) {
  .site-header .site-logo img {
    max-height: 110px;
  }

  .band-about {
    background: url("../images/bg-family-2.png"), #323C92;
    background-size: cover;
    background-repeat: no-repeat;
  }

  .what-we-do .timeline__item {
    width: 180px;
    height: 180px;
    margin-top: 80px;
  }

  .what-we-do .timeline__item:hover {
    transform: scale(1.1);
  }

  .what-we-do .timeline__item img {
    height: 16vw;
    max-height: 97px;
  }

  .tabs__content__description {
    padding-right: 3em;
    width: calc(100% - 25%);
  }

  .tabs__content__image {
    width: calc(100% - 75%);
  }

  .page-about__main .cards {
    width: calc(100% / 3 - 100px);
    margin: 50px;
  }

  .page-about__main .cards:nth-child(2) {
    background-size: contain;
    max-height: 220px;
  }

  .page-about__main .cards:nth-child(3) {
    background-size: contain;
    max-height: 220px;
  }

  .page-about__main .cards__description {
    padding: 20px 58px;
  }

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

  .page-category__main {
    width: calc(100% - 30%);
    padding-right: 2em;
  }

  .page-category .post__list .post__thumb {
    width: 24%;
    margin-right: 10px;
  }

  .page-category .post__list .post__content {
    width: 70%;
  }

  .page-purpose__container .column-2 {
    width: calc(100% / 2 - 20px);
    margin: 15px 10px;
  }

  .blog__main {
    width: calc(100% - 30%);
    padding-right: 2em;
  }

  .blog__sidebar {
    width: calc(100% - 70%);
  }

  .blog .post__list {
    float: left;
    width: 100%;
  }

  .blog .post__cards {
    border-radius: 7px;
    text-align: center;
    font-size: 1.5em;
    overflow: hidden;
    position: relative;
  }

  .blog .post__cards:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.2) 80%, rgba(0, 0, 0, 0.4));
  }

  .blog .post__cards__title {
    left: 0;
    bottom: 30px;
    position: absolute;
    color: #FFF;
    text-transform: uppercase;
    font-size: 20px;
    width: 100%;
    text-align: left;
    padding: 0 20px;
  }

  .blog .post__cards__thumb {
    height: 100%;
    max-height: 380px;
  }

  .blog .post__cards__thumb img {
    max-height: 100%;
  }

  .blog .post__cards__miniatura {
    width: 30%;
    float: left;
    margin-left: 20px;
    margin-right: 0;
    margin-bottom: 12px;
  }

  .blog .post__cards__miniatura .post__cards__title {
    font-size: 14px;
  }
}

@media (min-width: 700px) {
  .column__large {
    width: 60%;
  }

  .column__small {
    width: 40%;
  }

  .column__medium {
    --items: 3;
  }

  .about__index .container-flex {
    --items: 3;
    justify-content: flex-end;
  }

  .latest-posts .featured-post .post__image img {
    height: 200px;
    border-radius: 15px;
  }
}

@media (min-width: 768px) {
  .site-header {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 30px;
  }

  .about__index {
    background: url(../images/bg-about-us.png), var(--gradient);
    background-position: left bottom;
    background-size: contain;
    background-repeat: no-repeat;
  }

  .about__index .column {
    padding-left: 30px;
    border-right: 1px solid var(--color-primary);
  }

  .band__icon {
    margin-right: 20px;
  }

  .band-promo .btn__band {
    margin-left: 40px;
  }

  .band-about__information {
    align-items: center;
    justify-content: center;
    align-content: center;
  }

  .band-about__information__title {
    --text-align: right;
    border-right: 1px solid #FFF;
  }

  .what-we-do .heading {
    --marginTop: 2em;
    --marginBottom: 3em;
  }

  .what-we-do .timeline:before {
    content: "";
  }

  .what-we-do .timeline__column {
    --items: 5;
  }

  .what-we-do .timeline .first-column .timeline__item {
    width: 240px;
    height: 240px;
    margin-top: -71px;
    margin-left: -20px;
    margin-right: 40px;
  }

  .latest-posts .featured-post {
    width: 60%;
    align-items: center;
  }

  .latest-posts .featured-post .post__content {
    padding-right: 70px;
    margin-right: 4%;
  }

  .latest-posts .featured-post .post__image {
    width: 36%;
  }

  .latest-posts .mini-posts {
    width: 40%;
    padding-left: 20px;
    border-left: 2px solid #d72929;
  }

  .site-footer .column__medium {
    --items: 4;
  }

  .site-footer .column__medium:first-child {
    padding-right: 70px;
  }
}

@media (min-width: 769px) {
  .main-navigation_menu__list {
    display: inline-block;
  }

  .main-navigation_menu__item {
    color: #000;
    font-size: 15px;
  }

  #btn-close-menu,
  #anchor-menu {
    display: none;
  }
}

@media (min-width: 900px) {
  .slider {
    margin-top: -14em;
    z-index: -1;
    position: relative;
  }

  .blog .post__list__content__post {
    float: left;
    width: 65%;
  }

  .blog .post__list__thumb {
    width: 30%;
    float: left;
    padding-right: 20px;
  }
}

@media (min-width: 960px) {
  .entry-header {
    font-size: 1.4em;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1110px;
  }

  .site-header .site-logo {
    width: 20%;
  }

  .menu__container {
    width: 80%;
  }

  .menu__container .menu__information {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
  }

  .menu__container .menu__information:after {
    content: '';
    top: 0;
    position: absolute;
    background-color: var(--color-secondary);
    height: 100%;
    width: 100vw;
    right: -37vw;
    margin-right: -61vw;
  }

  .menu__container .menu__information__list:last-child {
    margin: 0 10px;
  }

  .main-navigation__header {
    display: none;
  }

  .what-we-do .timeline__item {
    flex-direction: column;
  }

  .what-we-do .timeline__item img {
    height: auto;
  }

  .page-about__main__disclaimer {
    font-size: 13px;
  }

  .page-about__condominio__description {
    width: calc(100% - 30%);
  }

  .blog__main article.entry {
    padding: 0 5em;
  }

  .blog .post__featured {
    float: left;
    width: 62%;
    margin: 0;
    margin-top: 15px;
  }

  .blog .post__featured img {
    height: 100%;
  }
}

@media (min-width: 1400px) {
  .container {
    max-width: 1300px;
  }
}

@media (max-width: 1190px) {
  .menu__container {
    width: 80%;
  }
}

@media (max-width: 768px) {
  .site-header .container {
    flex-basis: calc(100% / var(--items, 0));
    justify-content: space-between;
    align-items: center;
  }

  .site-header .infos-mobile {
    display: block;
  }

  .menu__container {
    max-width: 80%;
    position: fixed;
    transform: translate3d(-100%, 0, 0);
    top: 0;
    left: 0;
    height: 100%;
    width: calc(100% - 30%);
    z-index: 999;
    background: linear-gradient(135deg, rgba(50, 60, 146, 0.858824) 0%, rgba(29, 36, 104, 0.94902) 100%), url(../images/menu-bg-gradient.png);
    background-repeat: no-repeat;
    background-size: cover;
    color: #FFF;
    text-align: center;
  }

  .menu__container .menu__information {
    display: none;
  }

  .main-navigation {
    justify-content: center;
  }

  .main-navigation__social {
    display: block;
  }

  .about__index {
    background: var(--gradient);
  }

  .band__information {
    text-align: center;
    margin-top: 10px;
    width: 100%;
  }

  .band-promo .btn__band {
    margin-top: 20px;
    font-size: 12px;
  }

  .band-about .column__medium {
    margin-bottom: 20px;
  }

  .what-we-do .timeline__item {
    flex-direction: column;
  }

  .latest-posts .featured-post .post__content {
    --width: 100%;
    padding: 0;
  }

  .latest-posts .featured-post .post__title {
    --fontsize: 18px;
    margin-bottom: 10px;
    margin-top: 10px;
  }

  .latest-posts .featured-post .btn {
    max-width: 100px;
    font-size: 11px;
  }

  .latest-posts .mini-posts .post__image {
    width: 40%;
  }

  .latest-posts .mini-posts .post__content {
    width: 60%;
    padding-right: 0px;
    padding-left: 15px;
  }

  .latest-posts .mini-posts .post__title {
    --fontsize: 12px;
    font-size: 2vmax;
  }
}

@media (max-width: 700px) {
  .heading {
    --fontSize: 1.5rem;
  }

  main {
    overflow-x: hidden;
  }
}

@media (max-width: 599px) {
  .site-header {
    padding: 5px 0;
    border-top: 4px solid #dd3b33;
  }

  .site-header .site-logo {
    margin-right: auto;
    margin-left: 25px;
  }

  .site-header .site-logo img {
    max-height: 40px;
  }

  .slider__content {
    max-width: 240px;
    padding: 15px;
    top: 30%;
  }

  .slider__content__text {
    font-size: 10px;
  }

  .slider__content__text__featured {
    font-size: 14px;
  }

  .what-we-do .timeline__column__description {
    background-color: #FFF;
  }

  .tabs {
    display: flex;
    flex-wrap: wrap;
  }

  .tabs__content__header {
    font-size: 1.2em;
    margin-bottom: 2em;
    padding: 1em 0;
  }

  .tabs__content__description {
    order: 2;
  }

  .tabs__content__image {
    width: 180px;
    margin: auto;
    order: 1;
  }

  .tabs li {
    width: calc(100% / 2 - 2px);
    margin-right: 2px;
    font-size: 9px;
  }

  .page-about__main .cards {
    width: 200px;
    margin: 20px;
  }

  .contact-infos__list {
    display: flex;
  }

  .contact-infos__text {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
  }

  .contact-infos i {
    font-size: 30px;
    width: 50px;
    text-align: left;
    height: 50px;
  }

  .page-category .post__list {
    max-width: 250px;
    margin: 20px auto;
  }

  .blog__sidebar {
    display: none;
  }

  .blog .post__title {
    font-size: 12px;
    margin: 0;
  }

  .blog .post__thumb {
    margin: 0px .5em 0px 0rem;
    width: 15.5vmax;
  }

  .blog .post__list {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .blog .post__list__title {
    padding: 0;
    display: block;
    width: 60%;
  }

  .blog .post__list__description {
    display: none;
  }

  .blog .post__list .btn {
    display: none;
  }

  .blog .post__cards {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }

  .blog .post__cards__title {
    font-size: 12px;
    margin: 0;
    width: 60%;
  }

  .site-footer .social__item i {
    width: 25px;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .menu__container .menu__information__list {
    font-size: 1.7vw;
  }
}