:root {
  --green: #00A8BA;
  --lgreen: #D8F5F8;
  --dgreen: #005A64;
  --green2: #00808E;
  --green3: #00363D;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  padding: 0;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #00363D;
}
@media (min-width: 1600px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1520px;
  }
}

/* ---- Geral ---- */

a {color: #00363D;}

.wt {color: #fff!important}
.bk {color: #000!important}
.gr {color: var(--green)!important}
.dg {color: var(--dgreen)!important}
.gr2 {color: var(--green2)!important}
.gr3 {color: var(--green3)!important}

.bg-gr {background-color: var(--green)!important}
.bg-lg {background-color: #F0FEFF!important}
.bg-lg2 {background-color: var(--lgreen)!important}
.bg-lg3 {background-color: #C0EDF1!important}
.bg-lg4 {background-color: var(--green2)!important}
.bg-lg5 {background-color: var(--green3)!important}
.bg-lg6 {background-color: #e8fdfe!important}

h2.title {
  font-size: 28px;
}
@media (min-width: 1400px) {
  h2.title {
    font-size: 36px;
  }
}

.img-icon {
  max-width: 100%;
  height: auto;
}

/* ---- Buttons ---- */

.btn-check:checked+.btn,
.btn.active, .btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
  color: var(--bs-btn-active-color)!;
  background-color: var(--bs-btn-active-bg);
  border-color: var(--bs-btn-active-border-color);
  --bs-btn-active-bg: tranparent;
}
.btn-principal {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--green);
  --bs-btn-border-color: #00a8ba;
  --bs-btn-hover-bg: #00808e;
  --bs-btn-hover-border-color: #00808e;
  --bs-btn-font-size: 14px;
  --bs-btn-border-radius: 15px;
  text-transform: uppercase;
  padding: 15px 45px;
}
.btn-principal:hover {
  color: #fff;
}
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--green);
  --bs-btn-border-color: #00a8ba;
  --bs-btn-hover-bg: #00808e;
  --bs-btn-hover-border-color: #00808e;
  --bs-btn-font-size: 14px;
  --bs-btn-border-radius: 15px;
  text-transform: uppercase;
  padding: 15px 45px;
}
.btn-secondary {
  background-color: var(--green);
  border: var(--green);
  transition: .2s;
}
.btn-secondary:hover {
  opacity: 0.8;
}


/* --- Header --- */

#header {
  background-color: #fff;
}
#header .img-logo {
  max-width: 240px;
}
#header .w-text {
  width: 59%;
  font-size: 16px;
}
#header > .container {
  justify-content: space-between;
}


/* ---- Footer ---- */

.footer {
  background-color: #f6f6f6;
  color: #00363D;
}
.footer .base {
  background-color: #555;
  padding: 15px 0;
}
.footer .base .col-right {
  display: flex;
  justify-content: flex-end;
}
.footer .base .main-text {
  display: inline-block;
  font-size: 12px;
  color: #fff;
}
.footer .base .logo-ad {
  width: 100px;
}


/* ---- Home ---- */

#home .topo {
  background-image: url('../../assets/imgs/home/topo-home-cdc.jpg');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  aspect-ratio: 1920/700;
}
#home .blocos {
  padding-top: 50px;
  padding-bottom: 50px;
}
#home .bloco-1 .col-wrapper {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
#home .bloco-1 h3.title {
  font-size: 20px;
}
@media (min-width: 1400px) {
  #home .bloco-1 h3.title {
    font-size: 24px;
  }
}
#home .bloco-1 .circle-icon {
  background-color: #fff;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 3px 3px 12px rgb(215 251 255);
}
#home .bloco-1 .col-wrapper span {
  display: block;
  font-size: 14px;
  line-height: 1.3;
}
@media (min-width: 1400px) {
  #home .bloco-1 .col-wrapper span {
    font-size: 16px;
  }
}
#home .bloco-2 .col-left {
  text-align: right;
}
#home .bloco-2 .video {
  max-height: 700px;
  width: auto;
  border-radius: 12px;
}
#home .bloco-3 .col-wrapper-module {
  padding: 1px;
  background: linear-gradient(225deg, rgba(0, 168, 186, 1) 0%, rgba(255, 255, 255, 0) 26%);
  border-radius: 60px;
  height: 100%;
  box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.05);
}
#home .bloco-3 .col-wrapper {
  background-color: #fff;
  border-radius: 60px;
  height: 100%;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
}
@media (min-width: 1400px) {
  #home .bloco-3 .col-wrapper {
    font-size: 16px;
  }
}
#home .bloco-4 {
  background-image: url('../../assets/imgs/home/bg-home-01.jpg');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
#home .bloco-4 .col-wrapper .w-text {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  height: 60px;
}
#home .bloco-4 .col-wrapper h3.title {
  font-size: 16px!important;
  font-weight: 500;
  text-align: center;
  margin: 0;
}
@media (min-width: 1400px) {
  #home .bloco-4 .col-wrapper h3.title {
    font-size: 18px!important;
  }
  #home .bloco-4 .col-12 h3.title {
    font-size: 32px;
  }
}
#home .bloco-4 .col-wrapper .title span {
  font-weight: 400;
}
#home .bloco-4 .title.base span {
  font-weight: 400;
}
#home .bloco-5 .title.main {
  font-size: 64px;
  line-height: 1;
}
#home .bloco-5 .title.side {
  font-size: 28px;
}
@media (min-width: 1400px) {
  #home .bloco-5 .title.main {
    font-size: 80px;
  }
  #home .bloco-5 .title.side {
    font-size: 32px;
  }
}
#home .bloco-6 {
  background-image: url('../../assets/imgs/home/bg-home-02.jpg');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
#home .bloco-6 .col-wrapper-module {
  padding: 1px;
  background: linear-gradient(225deg, rgba(0, 168, 186, 1) 0%, rgba(255, 255, 255, 0) 26%);
  border-radius: 12px;
  height: 100%;
}
#home .bloco-6 .col-wrapper {
  display: flex;
  align-items: center;
  padding: 20px;
  background-color: #fff;
  border-radius: 12px;
  height: 100%;
}
#home .bloco-6 .w-icon {
  width: 18%;
}
#home .bloco-6 .w-text {
  width: 82%;
  padding-left: 15px;
  font-size: 14px;
}
@media (min-width: 1400px) {
  #home .bloco-6 .w-text {
    font-size: 16px;
  }
}
#home .bloco-checker .col-wrapper-module {
  padding: 1px;
  background: linear-gradient(193deg, rgba(0, 168, 186, 1) 0%, rgba(255, 255, 255, 0) 26%);
  border-radius: 12px;
  height: 100%;
}
#home .bloco-checker .col-wrapper {
  background-color: #fff;
  padding: 20px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 15px;
  height: 100%;
}
#home .bloco-checker h3.title {
  font-size: 24px;
}
@media (min-width: 1400px) {
  #home .bloco-checker .col-wrapper {
    font-size: 18px;
  }
  #home .bloco-checker h3.title {
    font-size: 28px;
  }
}
#home i.check {
  background-image: url('../../assets/imgs/home/icon-check.svg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 34px;
  height: 28px;
  display: inline-block;
  flex: none;
}
#home .bloco-11 .video {
  max-height: 700px;
  width: auto;
  border-radius: 20px;
}
#home .bloco-11 .col-wrapper-module {
  padding: 1px;
  background: linear-gradient(193deg, rgb(10 207 228) 0%, rgba(255, 255, 255, 0) 26%);
  border-radius: 12px;
  box-shadow: 3px 3px 12px rgb(17 209 190 / 15%);
  margin-bottom: 2rem;
}
#home .bloco-11 .col-wrapper {
  background-color: #fff;
  padding: 20px;
  border-radius: 12px;
}
#home .bloco-11 .col-wrapper .w-text {
  font-size: 16px;
}
#home .bloco-11 .col-wrapper small {
  font-size: 12px;
  font-weight: 600;
  display: block;
  text-align: right;
  width: 100%;
  margin-top: 12px;
}
@media (min-width: 1400px) {
  #home .bloco-11 .col-wrapper .w-text {
    font-size: 18px;
  }
  #home .bloco-11 .col-wrapper small {
    font-size: 14px;
  }
}
#home .bloco-11b iframe {
  max-width: 100%;
  height: auto;
  border-radius: 15px;
  aspect-ratio: 800 / 450;
}
#home .bloco-12 {
  background-image: url('../../assets/imgs/home/bg-home-03.jpg');
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
#home .bloco-12 .col-wrapper-module {
  padding: 1px;
  background: linear-gradient(193deg, rgb(10 207 228) 0%, rgba(255, 255, 255, 0) 26%);
  border-radius: 60px;
  box-shadow: 3px 3px 12px rgb(17 209 190 / 15%);
}
#home .bloco-12 .col-wrapper {
  background-color: #fff;
  padding: 20px;
  border-radius: 60px;
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 14px;
  color: var(--green3);
}
#home .bloco-12 .col-wrapper span {
  font-size: 40px;
  font-weight: 600;
}
#home .bloco-email {
  color: #fff;
  padding: 25px 0;
}
#home .bloco-email .wpcf7-spinner {
  position: absolute;
  bottom: 0;
}
#home .bloco-email .col-left p {
  font-size: 14px;
  font-weight: 300;
  margin-bottom: 5px;
}
#home .bloco-email .col-left .title {
  font-size: 21px;
  margin-bottom: 0;
}
#home .bloco-email .wpcf7-email {
  font-size: 16px;
}
#home .bloco-email .btn-cadastrar {
  background-color: var(--green);
  color: #fff;
  height: 42px;
  width: 100%;
  border-radius: 8px;
  transition: .15s ease-in-out;
}
#home .bloco-email .btn-cadastrar:hover {
  background-color: #00808e;
}
#home .bloco-email .wpcf7 form.invalid .wpcf7-response-output, 
#home .bloco-email .wpcf7 form.unaccepted .wpcf7-response-output, 
#home .bloco-email .wpcf7 form.payment-required .wpcf7-response-output {
  font-size: 14px;
  border-width: 1px;
  text-align: center;
}


/* ---- Mobile ---- */

@media (max-width: 1024px){

  #header > .container {
    justify-content: center;
  }
  #header .img-logo {
    max-width: 240px;
  }
  #home .btn-principal {
    width: 100%;
  }
  #home .topo {
    aspect-ratio: auto;
    padding: 80px 0;
  }
  #home .topo h1.title {
    margin-bottom: 20px;
  }
  #home .topo .subtitle {
    margin-bottom: 20px;
  }
  #home .topo h2.title {
    font-size: 20px;
  }
  #home .bloco-1 {
    text-align: center;
  }
  #home .bloco-1 .col-lg-8 .row {
    justify-content: center;
  }
  #home .bloco-2 .col-left {
    text-align: center;
  }
  #home .bloco-2 .title {
    margin-bottom: 25px;
  }
  #home .bloco-2 .video {
    max-height: unset;
    max-width: 100%;
    height: auto;
  }
  #home .bloco-3 .col-wrapper-module {
    border-radius: 60px;
  }
  #home .bloco-3 .col-wrapper {
    align-items: center;
    font-size: 16px;
    border-radius: 60px;
  }
  #home .bloco-3 .col-wrapper .w-icon {
    width: 35%;
  }
  .bloco-4 .col-12 {
    padding: 0 12px;
  }
  #home .bloco-5 {
    text-align: center;
  }
  #home .bloco-5 .col-lg-3,
  #home .bloco-5 .col-lg-4 {
    justify-content: center;
  }
  #home .bloco-5 .col-lg-5 {
    margin: 25px 0;
  }
  #home .bloco-11 h2.title {
    text-align: center;
    margin-top: 25px;
  }
  #home .bloco-11 .video {
    max-height: unset;
    max-width: 100%;
    height: auto;
  }
  #home .bloco-11 .col-wrapper .w-text {
    font-size: 16px;
  }
  #home .bloco-12 .col-wrapper {
    font-size: 16px;
  }
  #home .bloco-email .col-left {
    text-align: center;
  }
  #home .bloco-email .col-left .title {
    margin-bottom: 15px;
  }
  #home .bloco-email .wpcf7-spinner {
    right: 0;
    bottom: 10px;
  }
  .footer .base {
    text-align: center;
  }
  .footer .base .col-right {
    justify-content: center;
  }

}
