/*
Theme Name: BigBrainWP
Theme URI: https:/bigbrain.com.br
Author: Alex Conder - Nerdweb
Author URI: https://nerdweb.com.br/
Description: Tema criado para Big Brain e Reeducation
Version: 1.0
*/

* {
  box-sizing: border-box;
}
:root {
  --PrimaryFont: "Fjalla One", sans-serif;
  --SecondaryFont: Montserrat, sans-serif;
  --White: #fff;
  --BackgroundWhite: #fff;
  --Black2: #383839;
  --Black: #000;
  --Gray: #ececee;
  --GrayText: #ececee;
  --LightGray: #f6f6f7;
  --PrimaryColor: #03bac6;
  --PrimaryBackground: #03bac6;
  --SecondaryColorFixed: #e6584e;
  --SecondaryColor: #e6584e;
  --SecondaryBackground: #e6584e;
  --ThirdColor: #e9d416;
}
body {
  background: var(--BackgroundWhite);
}

/*
@media screen and (prefers-color-scheme: dark) {
  :root {
    --White: #fff;
    --BackgroundWhite: #383839;
    --Black2: #ececee;
    --Black: #fff;
    --Gray: #555556;
    --GrayText: #ececee;
    --LightGray: #414141;
    --PrimaryColor: #03bac6;
    --PrimaryBackground: #005358;
    --SecondaryColor: #ea9f9a;
    --SecondaryColorFixed: #e6584e;
    --SecondaryBackground: #551612;
    --ThirdColor: #e9d416;
  }
}
*/

.b-container {
  width: 100%;
  padding: 0 0.8rem;
}
body {
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  margin-top: 84px;
}
@media (max-width: 1020px) {
  body {
    margin-top: 65px;
  }
}
h1,
h2,
h3,
h4 {
  display: block;
  font-weight: 400;
  line-height: 1.2;
  font-family: var(--PrimaryFont);
  color: var(--Black);
}
p,
span,
li,
ol{
  font-family: var(--SecondaryFont);
}
button,
a {
  text-decoration: none;
  border: none;
}
b,
strong {
  font-weight: 600;
}
img {
  max-width: 100%;
}
.title1 {
  font-size: 54px;
}
.title2 {
  font-size: 42px;
}
.title3 {
  font-size: 34px;
}
.title4 {
  font-size: 24px;
}
.label {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--PrimaryFont);
  font-size: 15px;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
  color: var(--Black);
}
.subtitle {
  font-family: var(--SecondaryFont);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.4;
  margin-top: 1rem;
  color: var(--Black);
}
.paragraph {
  margin-top: 2rem;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--Black);
}
@media (max-width: 1368px) {
  .title1 {
    font-size: 48px;
  }
  .title2 {
    font-size: 38px;
  }
  .title3 {
    font-size: 28px;
  }
  .title4 {
    font-size: 20px;
  }
}
@media (max-width: 700px) {
  .title1 {
    font-size: 34px;
  }
  .title2 {
    font-size: 34px;
  }
  .title3 {
    font-size: 24px;
  }
  .title4 {
    font-size: 18px;
  }
}
.label.center,
.title1.center,
.title2.center,
.title3.center,
.subtitle.center,
.paragraph.center {
  text-align: center;
}
.label.center {
  justify-content: center;
}
.label.white,
.title1.white,
.title2.white,
.title3.white,
.subtitle.white,
.paragraph.white {
  color: var(--White);
}
.label.primary,
.title1.primary,
.title2.primary,
.title3.primary,
.subtitle.primary,
.paragraph.secondary {
  color: var(--PrimaryColor);
}
.label.secondary,
.title1.secondary,
.title2.secondary,
.title3.secondary,
.subtitle.secondary,
.paragraph.secondary {
  color: var(--SecondaryColor);
}
.label.m1,
.title1.m1,
.title2.m1,
.title3.m1,
.subtitle.m1 {
  margin-bottom: 1rem;
}
.label.m2,
.title1.m2,
.title2.m2,
.title3.m2,
.subtitle.m2 {
  margin-bottom: 2rem;
}
/* Blog Content & Box Content */
.post-content h2 {
  font-size: 26px;
  margin-bottom: 1.5rem;
}
.post-content h3 {
  font-size: 24px;
  margin-bottom: 1.4rem;
}
.post-content h4 {
  font-size: 19px;
  margin-bottom: 1.4rem;
}
.content-box.white {
  color: var(--White);
}
.content-box,
.post-content {
  color: var(--Black);
}
.content-box p,
.post-content p,
.content-box ol,
.post-content ol,
.content-box li,
.post-content li{
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 1.3rem;
}
.content-box ul,
.post-content ul {
  margin-left: 2rem;
  list-style-image: url("/assets/ListBullet.svg");
}
.post-content ul {
  margin-bottom: 1.5rem;
}
.content-box a,
.post-content a {
  font-weight: 600;
  color: var(--SecondaryColor);
  transition: 0.3s;
}
.post-content a:hover {
  text-decoration: underline;
}
.content-box ul li,
.post-content ul li {
  font-family: var(--SecondaryFont);  
  font-size: 17px;
  margin-top: 0.6rem;
  line-height: 1.4;
}
.post-content figcaption {
  font-family: var(--SecondaryFont);
  font-size: 15px;
  opacity: 0.5;
  margin-top: 0.8rem;
  text-align: center;
}
.post-content img.aligncenter {
  margin: 0 auto;
  display: block;
}
.post-content video {
  width: 100%;
}
.post-content iframe {
  width: 100%;
  height: 500px;
}
.content-box.white p,
.content-box.white li {
  color: var(--White);
}
@media (max-width: 620px) {
  .post-content iframe {
    height: 380px;
  }
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-family: var(--SecondaryFont);
  font-size: 16px;
  font-weight: 600;
  transition: 0.3s;
}
.btn i {
  margin-right: 0.6rem;
}
.btn.small {
  padding: 0 1.6rem;
  height: 52px;
}
.btn.medium {
  padding: 0 2rem;
  height: 60px;
}
.btn.big {
  padding: 0 1.8rem;
  height: 68px;
}
.btn.solid1 {
  background: var(--SecondaryColorFixed);
  color: var(--White);
}
.btn.solid2 {
  background: var(--PrimaryColor);
  color: var(--White);
}
.btn.solid1:hover,
.btn.solid2:hover {
  filter: brightness(1.1);
}
.btn.outline1 {
  border: 1px solid var(--Black);
  color: var(--Black);
  background: transparent;
}
.btn.outline1:hover {
  color: var(--White);
  background: var(--Black);
}
.btn.outline2 {
  border: 1px solid var(--White);
  color: var(--White);
  background: transparent;
}
.btn.outline2:hover {
  color: var(--Black);
  background: var(--White);
}
.link {
  font-family: var(--SecondaryFont);
  font-weight: 600;
  font-size: 1.075rem;
  color: var(--SecondaryColor);
  text-decoration: underline;
  transition: 0.3s;
}
.link:hover {
  filter: brightness(1.1);
}
@media (max-width: 800px) {
  .link {
    font-size: 1rem;
  }
}
@media (max-width: 680px) {
  .btn.small {
    padding: 0 1.6rem;
    height: 44px;
  }
  .btn.medium {
    padding: 0 2rem;
    height: 52px;
  }
  .btn.big {
    padding: 0 1.8rem;
    height: 58px;
  }
}
.button-grid {
  margin-top: 4rem;
}
.button-grid.center {
  display: flex;
  justify-content: center;
}
.section-padding {
  padding: 4rem 0 5rem;
}
@media (max-width: 1368px) {
  .section-padding {
    padding: 3rem 0 4rem;
  }
}
.bb-form-box form {
  display: flex;
  gap: 1rem;
  flex-direction: column;
  align-items: flex-end;
}
.bb-form-box input[type="text"],
.bb-form-box input[type="email"],
.bb-form-box input[type="password"],
.bb-form-box input[type="number"],
.bb-form-box select {
  display: inline-block;
  font-family: var(--SecondaryFont);
  font-weight: 600;
  width: 100%;
  display: block;
  padding: 0 1rem;
  height: 52px;
  background: transparent;
  border: 2px solid var(--Black);
  color: var(--Black);
}
.bb-form-box.white input[type="text"],
.bb-form-box.white input[type="email"],
.bb-form-box.white input[type="password"],
.bb-form-box.white input[type="number"],
.bb-form-box.white select {
  border-color: var(--White);
  color: var(--White);
}
.bb-form-box.white input::placeholder {
  color: var(--White);
  opacity: 0.5;
}
.bb-form-box input:focus,
.bb-form-box select:focus {
  outline-color: var(--SecondaryColor);
}
.bb-form-box button {
  cursor: pointer;
  margin-top: 1rem;
  font-family: var(--SecondaryFont);
  background: var(--SecondaryColorFixed);
  color: var(--White);
  font-weight: 600;
  font-size: 1rem;
  height: 52px;
  padding: 0 1.5rem;
  transition: 0.3s;
}
.bb-form-box.primary button {
  background: var(--PrimaryColor);
}
.bb-form-box button:hover {
  filter: brightness(1.1);
}
@media (max-width: 620px) {
  .bb-form-box button {
    width: 100%;
  }
}

/* Swiper Global */
.swiper-pagination .swiper-pagination-bullet {
  width: 1rem;
  height: 1rem;
  background: transparent;
  border: 1px solid var(--White);
  transition: 0.3s;
  opacity: 1;
}
.swiper-pagination.oppose .swiper-pagination-bullet {
  border-color: var(--Black);
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--White);
}
.swiper-pagination.oppose
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--Black);
}
@media (max-width: 600px) {
  .swiper-pagination .swiper-pagination-bullet {
    width: 0.8rem;
    height: 0.8rem;
  }
}
/* width */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: var(--SecondaryColor);
}

.social-media {
  display: flex;
  gap: 1rem;
}

.social-media a {
  font-size: 1rem;
  color: var(--White);
}

.social-media a:hover {
  filter: brightness(0.95);
}

header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 1rem 0;
  background: var(--PrimaryBackground);
  z-index: 101;
}
header.secondary {
  background: var(--SecondaryBackground);
}
header .flex-grid {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
header .flex-grid .logo img {
  width: 100%;
  max-width: 160px;
  max-height: 70px;
  object-fit: contain;
}
header .flex-grid .b-menu {
  display: flex;
  align-items: center;
  gap: 2rem;
  justify-content: flex-end;
}
header .flex-grid .b-menu-toggle-box i {
  color: var(--White);
}
header .flex-grid .b-menu .menu {
  display: flex;
  gap: 1.5rem;
}
header .flex-grid .b-menu .menu li {
  position: relative;
  font-family: var(--SecondaryFont);
  font-size: 14px;
  font-weight: 600;
}
header .flex-grid .b-menu .menu li a {
  display: inline-flex;
  gap: 0.6rem;
  color: var(--White);
  transition: 0.3s;
}
header .flex-grid .b-menu .menu li a:hover,
header .flex-grid .b-menu .menu li.current_page_item a,
header .flex-grid .b-menu .menu li.current-menu-ancestor a {
  color: var(--ThirdColor);
}
header .flex-grid .b-menu .menu li .sub-menu {
  display: none;
  position: absolute;
  left: 0;
  padding: 1rem;
  background: var(--BackgroundWhite);
}
header .flex-grid .b-menu .menu li:hover > .sub-menu {
  display: block;
  animation: fadeIn 0.4s forwards;
}
header .flex-grid .b-menu .menu li .sub-menu li {
  padding: 0.65rem 0.5rem;
  line-height: 1.4;
  white-space: nowrap;
}
header .flex-grid .b-menu .menu li .sub-menu li a {
  color: var(--Black);
}
header .flex-grid .b-menu .menu li .sub-menu li a:hover,
header .flex-grid .b-menu .menu li .sub-menu li.current_page_item a {
  color: var(--SecondaryColor);
}

@media (max-width: 1020px) {
  header .b-container {
    position: relative;
  }
  header .flex-grid .logo img {
    max-width: 110px;
    max-height: 48px;
    object-fit: contain;
  }
  header .flex-grid .b-menu {
    display: none;
  }
  header .flex-grid .b-menu.ativo {
    padding: 2rem;
    background: var(--PrimaryBackground);
    position: absolute;
    top: 46px;
    right: 0;
    width: 100%;
    max-height: 90vh;
    max-width: 440px;
    display: block;
    animation: fadeInRight 0.5s forwards;
    overflow-y: scroll;
  }
  header .flex-grid .b-menu .menu {
    flex-direction: column;
  }
  header .flex-grid .b-menu .menu li .sub-menu li {
    white-space: normal;
  }

  header .flex-grid .b-menu .menu li:hover .sub-menu {
    padding: 0 1rem;
    margin: 1rem;
    border-left: 3px solid var(--White);
    background: transparent;
    position: unset;
  }
  header .flex-grid .b-menu .menu li:hover .sub-menu li a {
    color: var(--White);
  }
  header .flex-grid .b-menu .menu li .sub-menu li a:hover,
  header .flex-grid .b-menu .menu li .sub-menu li.current_page_item a {
    color: var(--ThirdColor);
  }
  header .flex-grid .btn {
    width: 100%;
    margin: 2rem 0;
  }
}
footer {
  background: #383839;
}
footer .top .flex-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2%;
}
footer .top .flex-grid .logo {
  width: 18%;
}
footer .top .flex-grid .menu-box {
  width: 22%;
}
footer .top .flex-grid .contact {
  width: 32%;
}
footer .top .flex-grid .menu-box h3 {
  font-family: var(--SecondaryFont);
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--White);
}
footer .top .flex-grid .menu-box .menu {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
footer .top .flex-grid .menu-box .menu li a {
  font-family: var(--SecondaryFont);
  font-size: 15px;
  color: var(--White);
  opacity: 0.6;
  transition: 0.3s;
}
footer .top .flex-grid .menu-box .menu li a:hover {
  opacity: 1;
}
footer .top .flex-grid .contact {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
footer .top .flex-grid .contact span {
  font-family: var(--SecondaryFont);
  display: block;
  text-align: right;
  color: var(--White);
}
footer .top .flex-grid .contact .telefone {
  font-size: 24px;
  font-weight: 600;
  margin-top: 2rem;
}
footer .top .flex-grid .contact .email {
  font-weight: 600;
  margin: 0.5rem 0 1rem;
}
footer .bottom {
  margin-top: 4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
footer .bottom .copy,
footer .bottom a {
  color: var(--White);
}
footer .bottom a:hover {
  color: var(--PrimaryColor);
}
@media (max-width: 1100px) {
  footer .top .flex-grid .logo {
    width: 18%;
  }
  footer .top .flex-grid .menu-box {
    width: 33%;
  }
  footer .top .flex-grid .contact {
    margin-top: 2rem;
    align-items: center;
    width: 100%;
  }
}
@media (max-width: 800px) {
  footer .top .flex-grid .logo {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-bottom: 3rem;
  }
  footer .top .flex-grid .menu-box {
    width: 48%;
  }
  footer .top .flex-grid .menu-box .menu li a {
    font-size: 14px;
  }
}
@media (max-width: 450px) {
  footer .top .flex-grid .menu-box {
    display: none;
  }
  footer .top .flex-grid .menu-box + .menu-box {
    margin-top: 2rem;
  }
  footer .top .flex-grid .logo {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-bottom: 0;
  }
  footer .top .flex-grid .btn {
    margin-top: 0;
    width: 100%;
  }
  footer .bottom {
    flex-direction: column-reverse;
  }
  footer .bottom p {
    margin-top: 2rem;
  }
}
#breadcrumbs {
  display: flex;
  width: 100%;
}
#breadcrumbs.center {
  justify-content: center;
}
#breadcrumbs span,
#breadcrumbs a {
  font-family: var(--PrimaryFont);
}
#breadcrumbs a {
  color: var(--PrimaryColor);
  transition: 0.3s;
}
#breadcrumbs.white a {
  color: var(--GrayText);
}
#breadcrumbs a:hover {
  filter: brightness(1.1);
}
body.customize-support header,
body.customize-support header.ativo {
  top: 32px;
}
.bb-blog-header .bb-tab-menu > div {
  width: 100%;
}
.bb-blog-header .bb-tab-menu .menu {
  display: flex;
  flex-wrap: wrap;
  gap: 2%;
}
/*.bb-blog-header .bb-tab-menu .menu li {*/
/*  width: 100%;*/
/*}*/
.bb-blog-header .bb-tab-menu .menu a {
  width: 100%;
}
@media (min-width: 1021px) {
  .bb-blog-header .bb-tab-menu.ativo {
    top: 84px;
    left: 0;
    width: 100%;
    max-width: unset;
    padding: 0.6rem;
    background: var(--BackgroundWhite);
    z-index: 101;
  }
  .bb-blog-header .bb-tab-menu.ativo > div {
    max-width: 1280px;
    margin: 0 auto;
  }
}
@media (max-width: 1020px) {
  .bb-blog-header .bb-tab-menu.ativo {
    position: unset;
  }
}
@media (max-width: 960px) {
  .bb-blog-header .bb-tab-menu .menu li {
    width: calc(98% / 2);
  }
}
@media (max-width: 620px) {
  .bb-blog-header .bb-tab-menu .menu li {
    width: 100%;
  }
}
.bb-dynamic-post-content {
  background-color: var(--LightGray);
}
.bb-dynamic-post-content .b-container {
  max-width: 1024px;
}
.bb-dynamic-post-content .flex-grid {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.bb-dynamic-post-content .list-box ul{
  display: flex;
  gap: 2%;
}
.bb-dynamic-post-content .list-box ul li{
 width: calc(100%/3);
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 1rem;
}
.bb-dynamic-post-content .list-box ul li h3{
  font-size: 1.1rem;
}
.bb-dynamic-post-content .list-box ul li img{
  width: 2rem;
  height: 2rem;
  object-fit: contain;
}
@media (max-width: 780px){
 .bb-dynamic-post-content .list-box ul{
   flex-direction: column;
 } 
 .bb-dynamic-post-content .list-box ul li{
   width: 100%;
 } 
}
.bb-blog-content .testmonial-box{
  padding: 2rem;
  border: 1px solid rgba(0,0,0,.2);
}
.bb-blog-content .testmonial-box{
  display: flex;
  gap: 4rem;
  justify-content: space-between;
  margin-bottom: 3rem;
}
.bb-blog-content .testmonial-box .infos{
  width: 100%;
}
.bb-blog-content .testmonial-box img{
  width: 120px;
  min-width: 120px;
  height: 120px;  
  min-height: 120px;
  object-fit: cover;
  border-radius: 255px;
}
.bb-blog-content .testmonial-box ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 4%;
}
.bb-blog-content .testmonial-box ul li{
  width: calc(96%/2);
  margin-bottom: 1.5rem;
}
.bb-blog-content .testmonial-box ul li h3{
  margin-bottom: .5rem;
}
.bb-blog-content .testmonial-box ul li a{
  font-weight: 600;
  font-family: var(--SecondaryFont);
  color: var(--PrimaryColor);
  transition: .3s;
}
.bb-blog-content .testmonial-box ul li a:hover{
  text-decoration: underline;
}
@media (max-width: 800px){
  .bb-blog-content .testmonial-box{
    justify-content: center;
    flex-direction: column; 
    gap: 2rem;   
  }  
}
@media (max-width: 420px){
  .bb-blog-content .testmonial-box ul li{
    width: 100%; 
  } 
}

.m-top{
  margin-top: 40px;
}

.m-bottom{
  margin-bottom: 40px;
}