@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');

/****************************************************************************************
RESET
****************************************************************************************/

html, body {
  height: 100%;
  margin: 0;
}

body {
    font-family: "Nunito", sans-serif;
    font-size: 20px;
}

img{
  max-width: 100%;
}

h2{
  font-size: 32px;
  margin-bottom: 20px;
}

h3{
  font-size: 22px;
  margin-bottom: 20px;
}

a {
    color: #6cbedc;
}

.form-check-input:checked {
    background-color: #6cbedc;
    border-color: #6cbedc;
}

.botao-azul-escuro{
  background-color: #6cbedc;
  color: #fff;
  width: auto;
  font-size: 18px;
  border: 0;
  cursor: pointer;
  display: inline-block;
  line-height: 20px;
  margin: 0 0 false;
  outline: 0;
  padding: 15px 20px;
  text-align: center;
  text-shadow: none;
  text-decoration: none;
  border-radius: 0.375rem;
  cursor: pointer;
}

.botao-azul-escuro:hover{
  background-color: rgba(108,190,220,0.8);
}

.pagina-conteudo{
  padding:50px 0;
}

#app {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.btn-primary {
  border-radius: .375rem;
  background-color: #6cbedc;
  border-color:#6cbedc;
  padding-inline:calc(var(.25rem)*5);padding-block: calc(var(.25rem)*2.5);
  text-align: center;
  font-size: .875rem;
  line-height:  calc(1.25 / .875);
  font-weight: 500;
  color: #fff;
  transition-property: all;
  transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));
  transition-duration: var(--tw-duration,var(--default-transition-duration));
  justify-content: center;
  align-items: center;
  display: flex;
  padding: 0.7rem 2rem;
}

.btn-primary:hover {
  opacity: .9;
  background-color: #6cbedc;
  border-color:#6cbedc;
}

.btn-primary:focus {
  opacity: .9;
  background-color: #6cbedc;
  border-color:#6cbedc;
}

.btn-primary:checked {
    color:  #fff!important;
    background-color:  #6cbedc!important;
    border-color:  #6cbedc!important;
}

.btn-primary:active {
    color:  #fff!important;
    background-color:  #6cbedc!important;
    border-color:  #6cbedc!important;
}

.btn-secondary {
  border-radius: .375rem;
  background-color: #6c757d;
  border-color:#6c757d;
  padding-inline:calc(var(.25rem)*5);padding-block: calc(var(.25rem)*2.5);
  text-align: center;
  font-size: .875rem;
  line-height:  calc(1.25 / .875);
  font-weight: 500;
  color: #fff;
  transition-property: all;
  transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));
  transition-duration: var(--tw-duration,var(--default-transition-duration));
  justify-content: center;
  align-items: center;
  display: flex;
  padding: 0.7rem 2rem;
}

.btn-secondary:hover {
  opacity: .9;
  background-color:#6c757d;
  border-color:#6c757d;
}

.btn-secondary:focus {
  opacity: .9;
  background-color: #6c757d;
  border-color:#6c757d;
}

.btn-secondary:checked {
    color:  #fff!important;
    background-color:  #6cbedc!important;
    border-color:  #6cbedc!important;
}

.btn-secondary:active {
    color:  #fff!important;
    background-color:  #6c757d!important;
    border-color:  #6c757d!important;
}

.btn-success {
  border-radius: .375rem;
  background-color: #198754;
  border-color:#198754;
  padding-inline:calc(var(.25rem)*5);padding-block: calc(var(.25rem)*2.5);
  text-align: center;
  font-size: .875rem;
  line-height:  calc(1.25 / .875);
  font-weight: 500;
  color: #fff;
  transition-property: all;
  transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));
  transition-duration: var(--tw-duration,var(--default-transition-duration));
  justify-content: center;
  align-items: center;
  display: flex;
  padding: 0.7rem 2.6rem;
}

.btn-success:hover {
  opacity: .9;
  background-color:#198754;
  border-color:#198754;
}

.btn-success:focus {
  opacity: .9;
  background-color: #198754;
  border-color:#198754;
}

.btn-success:checked {
    color:  #fff!important;
    background-color:  #198754!important;
    border-color:  #198754!important;
}

.btn-success:active {
    color:  #fff!important;
    background-color:#198754!important;
    border-color:#198754!important;
}


.btn-danger {
  border-radius: .375rem;
  background-color: #dc3545;
  border-color:#dc3545;
  padding-inline:calc(var(.25rem)*5);padding-block: calc(var(.25rem)*2.5);
  text-align: center;
  font-size: .875rem;
  line-height:  calc(1.25 / .875);
  font-weight: 500;
  color: #fff;
  transition-property: all;
  transition-timing-function: var(--tw-ease,var(--default-transition-timing-function));
  transition-duration: var(--tw-duration,var(--default-transition-duration));
  justify-content: center;
  align-items: center;
  display: flex;
  padding: 0.7rem 2rem;
}

.btn-danger:hover {
  opacity: .9;
  background-color:#dc3545;
  border-color:#dc3545;
}

.btn-danger:focus {
  opacity: .9;
  background-color: #dc3545;
  border-color:#dc3545;
}

.btn-danger:checked {
    color:  #fff!important;
    background-color:  #dc3545!important;
    border-color:  #dc3545!important;
}

.btn-danger:active {
    color:  #fff!important;
    background-color:  #6c757d!important;
    border-color:  #6c757d!important;
}

.form-control:focus{
  box-shadow: 0 0 0 2px rgba(108, 190, 220, 0.5);
  outline-color: #6cbedc;
}

.form-label {
    font-weight: 600;
}

.copyrights{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.left-side-footer{
  display: flex;
  flex-direction: row;
  align-items: center;
}

.right-side-footer{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap:20px;
  justify-content: end;
}

.right-side-footer img{
  width: 130px;
}


/****************************************************************************************
REGISTAR
****************************************************************************************/

body.pagina-registo main {
  flex: 1;
  display: flex;
}


.registar-seccao{
  flex: 1;
  display: flex;
  min-height: 0;
}

.esquerda-registar-seccao {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
}

@media screen and (min-width: 1024px) {
  .esquerda-registar-seccao {
      flex-basis: calc(100% - 48.9%);
  }
}

.direita-registar-seccao {
  flex-basis: 48.9%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.direita-registar-seccao .imagem {
  height: 100%;
}

.direita-registar-seccao .imagem img {
  width: 100%;
  height: 100%;
  object-fit: cover;      /* mantém proporção */
  object-position: center center;
}

.formulario-registo{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  height: 100%;
}

.formulario-registo .conteudo{
  width: 600px;
}

.formulario-registo h2{
  color:#6cbedc;
  font-size: 22px;
}


/****************************************************************************************
ARQUIVO POSTS
****************************************************************************************/

.hero{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#595959;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:0;min-height:48.5rem;overflow:hidden;position:relative;-webkit-transition:all .1s ease-in-out;transition:all .1s ease-in-out}.hero:after{right:0;background-color:#000;opacity:.45;z-index:0}.hero__image{position:absolute;left:50%;top:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-height:none;max-width:none;min-height:100%;min-width:100%;width:auto}.hero__inner-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1;flex:1;height:100%;padding-bottom:2rem;padding-top:2rem;width:100%}.hero__inner,.hero__inner-wrap{position:relative;z-index:1}.hero__heading{font-family:sofia-pro,Helvetica,Arial,sans-serif;font-size:3.4rem;font-weight:600;color:#fff;margin-bottom:0}.hero:after{background:#000;content:"";display:block;height:100%;left:0;opacity:.35;position:absolute;top:0;width:100%}.hero__breadcrumbs{color:#fff;padding-top:1.5rem;position:relative;width:100%;z-index:1}.hero__breadcrumbs.-news{color:#00205b;position:static}@media (min-width:999px){.hero.-home{height:calc(100vh - 19.6rem);min-height:24.7rem}.hero.-home .hero__heading{max-width:64.1rem}#global.-has-alert .hero.-home{height:calc(100vh - 24.7rem)}}

.hero.-skinny{color:#fff;height:470px;position:relative}.hero.-skinny .hero__inner{position:static}.hero.-skinny .hero__categories{color:inherit;margin-bottom:1.5rem}.hero.-skinny .hero__heading{line-height:1.2em;margin-bottom:2.2rem}.hero.-skinny .hero__body{font-family:sofia-pro,Helvetica,Arial,sans-serif;font-size:1.7rem;font-weight:400;line-height:1.9em;max-width:66.8rem;width:68%}.hero.-skinny .hero__extra-text{font-size:1.3rem;margin-top:2rem;max-width:66.8rem}.hero.-skinny .hero__extra-text a{color:inherit;text-decoration:underline}.hero.-skinny .hero__extra-text a:hover{color:#e2e2e2;text-decoration:none}.hero.-skinny .hero__video{margin-bottom:2rem;margin-top:2rem}@media (min-width:743px){.hero.-skinny{min-height:31rem}.hero.-skinny.-news .hero__inner,.hero.-skinny.-story .hero__inner{padding-left:9rem;padding-right:9rem}.hero.-skinny.-news .hero__video,.hero.-skinny.-story .hero__video{left:9rem}.hero.-skinny .hero__body{width:60%}}@media (min-width:999px){.hero.-skinny{min-height:36rem}.hero.-skinny .hero__inner{position:relative}.hero.-skinny .hero__video{position:absolute;top:0;right:12rem;bottom:auto;left:auto;text-align:center}.hero.-skinny.-story .hero__inner{padding-left:12rem;padding-right:12rem} .hero.-skinny.-story .hero__video{left:auto}.hero.-skinny.-news .hero__inner{margin:0 auto;max-width:99.8rem;padding:0;width:calc(100% - 22.1rem)}.hero.-skinny.-news .hero__heading{max-width:69.2rem}}@media (min-width:1255px){.hero.-skinny{min-height:470px}}


/* CARD HOVER */
.article-card {
    transition: transform .2s ease;
    position: relative;
}
.article-card:hover {
    transform: translateY(-5px);
}

.article-card .badge{
  position: absolute;
  background-color: #6cbedc;
  padding:10px 20px;
  right: 0;
  top:0;
  border-radius: 0;
}
/* IMAGEM */
.card-img-top {
    height: 240px;
    object-fit: cover;
}

/* DATA */
.article-date {
    color:#344054;
    font-weight: 600;
    font-size: 14px;
}

/* TÍTULO */
.article-title a {
    color: #6cbedc;
    font-weight: 700;
    text-decoration: none;
}
.article-title a:hover {
    text-decoration: underline;
}

.article-title {
  min-height: 48px;
}

.article-excerpt {
  color: #555;
  font-size: 15px;
  line-height: 1.5;
  min-height: 60px;
}

/* READ MORE */
.article-readmore {
    color: #0B65C2;
    text-decoration: none;
    font-size: 15px;
}
.article-readmore:hover {
    text-decoration: underline;
}

.vertodos-botao-artigos{
  text-align: center;
}

/****************************************************************************************
PAGINAS
****************************************************************************************/

.pagina-conteudo h2, .pagina-conteudo h3{
    color:#00205b;
}

.boxed-images-post{
  margin-bottom: 30px;
}

.boxed-images-post img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

section.post-terms{
  margin-top: 30px;
}

.post-categories .post-terms-list{
  list-style-type: none;
  display: flex;
  flex-direction: row;
  padding-left: 0;
  gap:15px;
}

.post-categories .post-terms-list li{
  border:2px solid #6cbedc;
  padding:5px 20px;
  background-color: #6cbedc;
}

.post-categories .post-terms-list li:hover{
  background-color: #fff;
}

.post-categories .post-terms-list li a{
  text-decoration: none;
  color:#fff;
}

.post-categories .post-terms-list li:hover a{
  color:#6cbedc;
}

.post-tags .post-terms-list{
  list-style-type: none;
  display: flex;
  flex-direction: row;
  padding-left: 0;
  gap:15px;
}

.post-tags .post-terms-list li{
  border:2px solid #6cbedc;
  padding:5px 20px;
  background-color: #6cbedc;
}

.post-tags .post-terms-list li:hover{
  background-color: #fff;
}

.post-tags .post-terms-list li a{
  text-decoration: none;
  color:#fff;
}

.post-tags .post-terms-list li:hover a{
  color:#6cbedc;
}

/****************************************************************************************
PAGINA REGISTO
****************************************************************************************/

.plan-card {
    border: 2px solid #e5e5e5;
    border-radius: 12px;
    transition: .2s;
}
.plan-card:hover {
    transform: translateY(-3px);
    border-color: #6cbedc;
}
.plan-card .price {
    font-size: 15px;
    font-weight: bold;
}

.planos-registar{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:20px;
}

.plan-card.border-primary{
  border-color: #6cbedc!important;
}

.payment-card .logo{
  width: 100%;
  height: 130px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 15px;
}

.payment-card .logo img{
  background-size: contain;
  background-position:center;

}

.payment-card .logo img.mbway{
  width: 75px;
}

.payment-card.border-primary{
  border-color: #6cbedc!important;
  border-width: 2px;
}

/****************************************************************************************
Conteudo
****************************************************************************************/

.pagina-post h1{
  color:#6cbedc;
  font-weight: 700;
}

.single-artigo .seccao-planos-homepage {
    margin-top: 90px;
}

.single-artigo .seccao-planos-homepage{
  text-align: center;
}

/****************************************************************************************
HOMEPAGE
****************************************************************************************/

.banner-homepage {
  position: relative;
  width: 100%;
  height: 800px;
  overflow: hidden;
}

.banner-homepage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.banner-homepage .container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1200px;
  max-width: 90%;
}

.banner-content {
  max-width: 650px;
  margin: 0 auto;
  text-align: center;
}

.banner-content h1 {
  font-size: 60px;
  margin-bottom: 10px;
  color:#3A9AB7;
  font-weight: bold;
}

.banner-homepage:after{
  content:"";
  background:url('../images/bolhas-topo.svg');
  width:100%;
  height:154px;
  display:block;
  position:absolute;
  bottom:-100px;
  left:0;
  z-index:1;
}

.seccao-descricao-homepage{
  padding-top:80px;
  padding-bottom: 50px;
  margin-bottom: 120px;
  background-color: #F9F1EC;
  position: relative;
  z-index: 1;
}

.seccao-descricao-homepage .descricao{
  color:#4A4A4A;
  text-align: center;
}

.seccao-descricao-homepage .lista-features{
  display: flex;
  flex-direction: row;
  list-style: none;
}

.seccao-descricao-homepage .lista-features{
  margin-top: 50px;
  margin-bottom: 50px;
  gap:45px;
  padding-left: 0;
  justify-content: center;
}

.seccao-descricao-homepage .lista-features li{
  width: 225px;
}

.seccao-descricao-homepage .lista-features li .icon{
  width: 83px;
  height: 83px;
  background-color:#C6E7FD;
  border-radius: 50%;
}

.seccao-descricao-homepage .lista-features li .icon{
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
  padding: 15px;
}

.seccao-descricao-homepage .lista-features .icon img{
  background-size: contain !important;

}

.seccao-descricao-homepage .lista-features p{
  font-size: 16px;
  text-align: center;
  color:#525252;
}

.seccao-descricao-homepage:after{
  content:"";
  background:url('../images/fundo-bolhas.svg');
  width:100%;
  height:280px;
  display:block;
  position:absolute;
  bottom:-100px;
  left:0;
  z-index:-1;
}

.seccao-posts-homepage{
  padding-bottom: 70px;
}

.seccao-posts-homepage h2{
  color:#3A9AB7;
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 30px;
  text-transform: uppercase;
}

.seccao-posts-homepage .article-card{
  margin-bottom: 30px;
}

.seccao-planos-homepage{
  background-color: #F9F1EC;
  padding:50px 0;
  position: relative;
}

.seccao-planos-homepage:before{
  content:"";
  background:url('../images/fundo-bolhas-planos.svg');
  width:100%;
  height:280px;
  display:block;
  position:absolute;
  top: -120px;
  left:0;
  z-index:-1;
}

.seccao-planos-homepage h2{
  color:#3A9AB7;
  font-size: 26px;
  font-weight: bold;
  margin-bottom: 50px;
  text-transform: uppercase;
}

.card-plano{
  width:380px;
  background:#fff;
  border-radius:65px;
  padding:37px 10px;
  box-shadow: 0px 3px 6px #00000029;
  text-align:center;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:520px;
}

/* HEADER */

.card-header h3{
  color:#3A9AB7;
  font-size:26px;
  font-weight:700;
  margin-bottom:10px;
  position: relative;
}

.card-header h3:after{
  content:"";
  width:225px;
  height:1px;
  background:#A3D5E0;
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  bottom:0;
}

.card-header .plano{
  color:#5AB5D5;
  font-size:20px;
  position:relative;
  display:block;
  padding-bottom:10px;
}


/* FEATURES */

.lista-planos{
  display: flex;
  flex-direction: row;
  gap:25px;
  justify-content: center;
}

.lista-planos .features{
  list-style:none;
  padding:0;
  margin-top: 20px;
  margin-bottom: 40px;
  text-align:left;
}

.lista-planos .features li{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:20px;
  color:#555;
  font-size:16px;
  color:#5D5D5D;
}

.lista-planos .features li .extra{
  display: block;
}

.lista-planos .features img{
  width:22px;
  margin-top:3px;
}

.lista-planos .extra{
  color:#666;
  font-size:15px;
}

/* BOTÃO */

.btn-aderir{
  background:#5AB5D5;
  color:#fff;
  padding:11px 15px;
  border-radius:14px;
  text-decoration:none;
  font-weight:600;
  display:block;
  margin-top:auto;
  transition:0.3s;
  margin:0 40px;
  font-size: 16px;
}

.btn-aderir:hover{
  background:#4aa6c6;
}

/****************************************************************************************
FOOTER
****************************************************************************************/

footer{
  background: #6cbedc;
  padding:30px 0;
  color:#fff;
}

.menu-footer{
  margin-bottom: 0px;
  list-style-type: none;
  display: flex;
  flex-direction: row;
  justify-content: end;
}

.menu-footer li{
  padding-right: 20px;
}

.menu-footer li:last-child{
  padding-right: 0;
}

.menu-footer a{
  color:#fff;
  text-decoration: none;
  font-weight: 600;
}

/****************************************************************************************
MEDIA QUERIES
****************************************************************************************/

@media  (max-width: 480px) {
  /********************************
  HOMEPAGE
  ********************************/

  .banner-homepage{
    height: 180px;
  }

  .banner-homepage:after {
      height: 154px;
      bottom: -120px;
  }

  .seccao-planos-homepage{
    padding-top: 0px;
  }

  .seccao-descricao-homepage .lista-features{
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }

  .seccao-descricao-homepage{
    padding-top: 40px;
    padding-bottom: 20px;
    margin-bottom: 140px;
  }

  .lista-planos{
    flex-direction: column;
    align-items: center;
  }

  /********************************
  REGISTAR
  ********************************/

  .direita-registar-seccao{
    display: none;
  }

  .formulario-registo .conteudo{
    width: 100%;
  }

  /********************************
  FOOTER
  ********************************/

  .copyrights{
    text-align: center;
    flex-direction: column;
  }

  .left-side-footer{
    margin-bottom: 10px;
  }

  .menu-footer{
    padding-left: 0;
    font-size:16px;
  }

  .right-side-footer{
    flex-direction: column;
    align-items: flex-start;
    gap:10px;
  }
}
