@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

html, body{
    margin: 0;
    padding:0;
    font-family: "Montserrat", sans-serif;
    font-weight: normal;
    font-style: normal;
    font-size: 16px;
    overflow-x: hidden !important;
}
a:hover {
  color: #000000;
}
/*Common*/
:root{
  --primaryColor: #2b7faf;
  --secondaryColor: #011936;
  --terciaryColor: #FF8C42;
}
/*Nav*/
#nav{
  padding: 24px 0;
  background-color: #fff;
}
.nav-main {
  text-align: center;
}
#nav p{
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 400;
  margin: 3px 10px 0 10px;
  padding: 0;
  vertical-align: center;
  color: #9fabbc;
}
.nav-main p {
  font-weight: 700 !important;
  font-size: 22px !important;
  color: var(--primaryColor) !important;
}
#nav img:not(.logo){
  width: 13px;
  margin-right: 10px;
}
#nav img.breadCrumbsIcon{
  width: 17px;
  margin: 1px 0 0 0;
}
#nav .preLP_Nav p{
  color: var(--primaryColor);
  font-weight: 700;
  font-size: 18px;
}
/*Form/header*/
#formSection{
  display: flex;
  align-items: center;
  min-height: calc(80vh - 75px);
  background: rgba(238, 239, 252, 0.25);
}
#preLP{
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.desktopImg img {
  width: 115px;
  margin-left: -25px;
  margin-top: -10px;
}
.form-box{
  display: flex; 
  max-width: 800px; 
  border-bottom-right-radius: 30px; 
  padding: 75px 60px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(43, 127, 175, 0.3);
  /*border-right: 1px solid var(--terciaryColor);
  border-bottom: 1px solid var(--terciaryColor);*/
}
.formTop{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.formTop h2{
  margin-bottom: 30px;
}
.formTop h2, legend{
  font-size: 24px; 
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 25px;
}
.formTop img{
  display: flex;
  margin-right: 50px;
  max-width: 75px;
}
fieldset{ 
  width: 95%;
  margin-right: auto;
  display: flex;
  flex-direction: column;
}
input[type="radio"] {
  display: none;
}
.error{
  font-size: 12px;
  color: red;
}
.nav-link{
  color: #000;
  appearance: none;  
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 1px;
  text-overflow: '';
}
.dropdown-toggle::after{
  display: none !important;
} 
#formSection label:not(.error):not(.termContainer), .navbar-nav{
  display: block;
  width: 100%;
  max-width: 650px; 
  padding: 20px 35px 20px 45px;
  margin: 10px auto;
  background-color: #fff;
  /*outline: 1.5px solid #FF8C42;*/
  box-shadow: 0px 4px 8px rgba(43, 127, 175, 0.3);
  color: var(--secondaryColor);
  border-radius: 10px;
  cursor: pointer;
  font-size: 18px;
  font-weight: 700;
  transition: all 0.7s ease;
  background-image: url('/img/icons/arrow-left-blue.svg');
  background-size: 15px;
  background-repeat: no-repeat;
  background-position: 95%;
}
.active-bg, .navbar-nav:hover {
  background: url('/img/icons/arrow-left-white.svg'), var(--primaryColor);
  background-size: 15px;
  background-repeat: no-repeat;
  background-position: 95%;
  color: #fff;
}
.navbar-nav:hover a {
  color: #fff;
}
.back{
  rotate: 180deg;
  cursor: pointer;
  width: 20px !important;
}
#formSection label span{
  /*font-size: 16px;*/
  font-weight: 400;
}
#formSection input[type="text"]{
  display: block;
  width: 100%;
  max-width: 650px; 
  padding: 20px 25px 20px 45px;
  margin: 10px auto;
  background-color: #fff;
  box-shadow: 0px 4px 8px rgba(43, 127, 175, 0.3);
  /*outline: 1.5px solid #FF8C42;*/
  border: none;
  color: var(--secondaryColor);
  border-radius: 10px;
  cursor: pointer;
  font-size: 16px;
  transition: all 0.7s ease;
} 
/* Input symbol */
#mensalidade, #seguroValor {
  background: url('/img/icons/euro.svg');
  background-size: 15px;
  background-position: 95%;
  background-repeat: no-repeat;
}
#formSection p{
  margin: 0;
  text-align: left;
}
#formSection #backBtn{
  background-color: transparent;
  color: #000;
  width: 25%;
  height: 20px;
  padding: 0;
  margin: 0;
  font-size: 14px;
  background-image: url('/img/icons/arrow-right.svg');
  background-size: 15px;
  background-repeat: no-repeat;
  background-position: 0%;
}
#formSection button{
  width: 100%;
  max-width: 200px;
  margin: 20px 0 0 0;
  border-radius: 20px;
  border: none;
  background-color: var(--primaryColor);
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  padding: 16px 36px;
  transition: all 0.5s ease;
}

.location {
  display: flex !important;
  align-items: center !important;
}
#formSection svg {
  height: 55px;
  margin: 0 10px 0 -20px;
}
#formSection svg .st0 {
  transition: stroke 0.8s ease;
}

#formSection button:hover{
  background: linear-gradient(145deg, rgba(43,127,175,1) 0%, rgba(0,162,255,1) 100%);
  color: #fff; 
  outline: none;
}

#formSection label:hover:not(.error):not(.termContainer) {
  background-color: var(--primaryColor);  
  color: #fff;
  outline: none;
  background-image: url('/img/icons/arrow-left-white.svg'); 
}
#formSection label:hover:not(.error):not(.termContainer) .st0 {
  stroke: #fff;
}
.small-label-txt {
  /*text-wrap: balance;*/
  text-wrap: initial;
  width: 95% !important;
  /*font-size: 14px;*/
  font-size: 16px;
  line-height: 1.2;
}
legend span { 
  font-weight: 700; 
}
legend h3{
  line-height: 1.2;
  font-size: 18px;
  font-weight: 400;
  margin-top: 15px;
}
.dropdown-menu {
  display: none;
  position: absolute;
  top: 20px;
  background-color: #fff;
  border: 1px solid #ddd;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  z-index: 1000;
} 
ul.dropdown-menu.dropdown-menu-end.show{
  display: block;
  width: 100%;
  overflow-y: scroll;
  max-height: 200px;
}
.nav-link:focus, .nav-link:hover{
  color: #000;
}
.dropdown-item {
  padding: 10px 15px;
  cursor: pointer;
}

.dropdown-item:hover {
  background-color: var(--primaryColor);
  color: #fff;
}

/* Adstrategy */
#section-ads {
  padding: 30px 0;
  text-align: center;
}
@media (max-width: 991px){
  .desktopImg img {
    width: 95px;
  }
}
@media (max-width: 767px){
  #formSection{
    padding: 60px 0 60px;
  }
  #preLP{
    justify-content: center;
  }
  .formTop h2, legend{
    line-height: 1.2;
    text-align: center;
  }
  #formSection label{
    line-height: 1.1;
  }
  .formTop img{
    margin: 0 0 10px 0;
  }
  fieldset{
    width: 100%;
  }
  .back{
    width: 18px !important;
  }
  #formSection button{
      margin: 20px auto 0;
  }
  .small-label-txt {
    /*font-size: 11px;*/
    font-size: 13px;
    max-width: 100%;
  }
}
@media (max-width: 450px){
  .col-0.col-sm-1.mx-5{
    display: none;
  } 
  
  #nav{
    display: flex;
    justify-content: center;
  }
  .navBar{
    width: 100%;
    justify-content: center !important;
  }
  .navBar .col-1.mx-5{
    width: 0;
    margin: 0 !important;
  }
  .formTop h2, legend{ 
    font-size: 18px;
  }
  .form-box{
    padding: 55px 15px;
  }
  .nav-item.dropdown.active .dropdown-menu{
    min-width: 220px;
  }
  .navbar-nav .nav-link{
    padding: 0;
  }
  #formSection label:not(.error), .navbar-nav{
    padding: 15px 35px 15px 20px;
    background-position: 97%;
    font-size: 16px;
  } 
  .back{ 
    position: absolute;
    left: 30px;
  }
}