@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Space+Grotesk:wght@300..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;500;900&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css');
*{
	margin: 0;
	padding: 0;
}

html{
	scroll-behavior: smooth;
}

:root {
  --fcolor: #ffffff;
  --scolor: #7357C0;
  --tcolor: #3071F2;
  --bcolor: #000000;

  --font-one: 'Inter', sans-serif;
  --font-two: 'Poppins', sans-serif;
  --font-three: 'Space Grotesk', sans-serif;
}

section{
	max-width: 100%;
	display: flex;
	justify-content: center;
	padding-top: 45px;
	padding-bottom: 45px;
	margin-top: 50px;
}

.container{
	width: calc(1440px - 90px);
	padding-left: 45px;
	padding-right: 45px;
	max-width: calc(100% - 90px);
	display: flex;
	flex-direction: column;
}

.button-fcolor{
	color: var(--bcolor);
	text-decoration: none;
	background: var(--fcolor);
	font-family: var(--font-one);
	font-weight: 600;
	padding: 17px 30px;
	border-radius: 6px;
	align-self: flex-start;
}

.button-scolor{
	color: var(--fcolor);
	text-decoration: none;
	background: var(--scolor);
	font-family: var(--font-one);
	font-weight: 600;
	padding: 17px 30px;
	border-radius: 6px;
	align-self: flex-start;
}


.button-scolor.disabled{
	background: #BDBDBD;
}

header{
	width: 100%;
	display: flex;
	padding-top: 20px;
	padding-bottom: 20px;
	/*border-bottom: 1px solid #fff;*/
	justify-content: center;
	position: absolute;
	top: 0;
}

header>nav{
	width: calc(1440px - 90px);
	padding-left: 45px;
	padding-right: 45px;
	max-width: calc(100% - 90px);
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

header>nav>.logo{
	margin-right: auto;
}

header>nav>ul{
	display: flex;
	column-gap: 40px;
	font-size: 16px;
	font-family: var(--font-one);
	font-weight: 300;
	align-items: center;
	list-style-type: none;
	user-select: none;
	margin-right: 70px;
}

header>nav>ul a{
	color: var(--fcolor);
	text-decoration: none;
}

header>nav>.button-menu{
	color: var(--bcolor);
	text-decoration: none;
	background: var(--fcolor);
	display: flex;
	height: fit-content;
	padding: 14px 18px;
	border-radius: 6px;
	font-family: var(--font-one);
}

.hero{
	width: 100%;
	/*background-image: url(img/bottom-hero.webp);*/
	    background-size: cover;
	
	background: var(--tcolor);
	background-position: 0% 100%;
	display: flex;
	justify-content: center;
	padding-top: 120px;
    /*padding-bottom: 100px;*/
	margin-top: 0;
	/*position: relative;*/
	/*flex-direction: column;
	align-items: center;*/
}



.hero>.container>h1{
	color: var(--fcolor);
	font-family: var(--font-three);
	font-size: 64px;
	font-weight: 600;
}

.hero>.container>h6{
	color: var(--fcolor);
	font-family: var(--font-two);
	font-size: 18px;
	font-weight: normal;
}

.hero>.container{
	row-gap: 20px;
}

@media only screen and (max-width: 1000px) {
  .hero>.container>h1{
	font-size:24px;
	font-weight: 600;
}
.hero{
	background-image: none;
	background: var(--tcolor);
	text-align: center;
	padding-top: 100px;
	padding-bottom: 50px;
}
.hero .button-fcolor{
	align-self: center;
	font-size: 14px;
}

.container{
	width: calc(1440px - 40px);
	padding-left: 20px;
	padding-right: 20px;
	max-width: calc(100% - 40px);
	display: flex;
	flex-direction: column;
}

header .logo>img{
	width: 90px;
}

.hero>.container>h6{
	font-size: 16px;
}
}


footer{
	max-width: 100%;
	display: flex;
	justify-content: center;
	padding-top: 65px;
	padding-bottom: 80px;
	margin-top: 50px;
	background: var(--tcolor);
}

footer>.container{
	flex-direction: row;
	justify-content: space-between;
}
footer>.container>.col1{
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
footer>.container>.col1>p{
	font-size: 16px;
	font-family: var(--font-two);
	font-weight: 200;
	color: var(--fcolor);
	margin-top: 20px;
}

footer>.container>.col2{
	display: flex;
	column-gap: 20px;
	align-items: flex-end;
}

footer>.container>.col2>a{
	font-size: 16px;
	font-family: var(--font-two);
	font-weight: 200;
	color: var(--fcolor);
	margin-top: 20px;
	text-decoration: none;
}

footer>.container>.col3{
	display: flex;
	row-gap: 20px;
	flex-direction: column;
	justify-content: flex-end;
}

footer>.container>.col3>h4{
	font-size: 24px;
	font-family: var(--font-two);
	font-weight: 500;
	color: var(--fcolor);
}

footer>.container>.col3>.icons{
	display: flex;
	column-gap: 20px;
}


@media only screen and (max-width: 1000px) {
	section{
		padding-top: 30px;
		padding-bottom: 30px;
		margin-top: 0;
	}
	footer>.container{
		flex-direction: column;
		row-gap: 30px;
	}
}


/*cards */

html, body, div, span, h1, h2, h3, h4, h5, h6, p, a, img, strong, ul, li, nav, section {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
	vertical-align: baseline;
}
:root {
    --color01: #135EF2; /*dark blue*/
    --color02: #3071F2; /*light blue*/
    --color03: #5E90F2; /*blue*/
    --color04: #8DC3F2; /*lighter blue*/
    --color05: #F2F2F2; /*grey*/
    --color06: #ffffff; /*white*/
    --color07: #171717; /*dark grey*/
    --color08: #363636; /*medium grey*/
    --color09: #3ab020; /*green ok */
    --color10: #b51a05; /*red*/
    --color11: #0000004d; /*shadow*/
}
section {
	display: block;
}
body {
	line-height: 1;
  background-color: var(--color05);
}
ul {
	list-style: none;
}
.container-p {
    width: 100%;
    max-width: 1440px;
    /*min-height: 100vh;*/
    padding: 20px;
    margin: auto;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    align-content: center;
	align-items: flex-start;
    justify-content: center;
    margin-top: 100px;
}
.card-price {
    font-size: 24px;
    color: var(--color07);
    font-weight: 500;
}
.card-price-month {
    font-size: 16px;
    color: var(--color08);
}
.card-price-block {
    width: 80%;
    padding-bottom: 20px;
    text-align: center;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--color05);
}
.header {
    display: flex;
    justify-content: center;
    width: 100%;
    border-radius: 10px 10px 0 0;
    margin-bottom: 35px;
}
.color01 {
    background-color: var(--color03);
}
.color02 {
    background-color: var(--color01);
}
.color03 {
    background-color: var(--color03);
}
.card-header {
    font-size: 22px;
    font-weight: 500;
    color: var(--color06);
    padding: 15px;
}
.card {
    background-color: var(--color06);
    border-radius: 10px;
    width: 100%;
    max-width: 350px;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 0 15px -5px var(--color11);
}
.card-pricing-list {
    width: 80%;
    margin-bottom: 20px;
}
.card-pricing-item {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 300;
    text-align: center;
    padding: 6px 10px;
    border-bottom: 1px solid var(--color05);
}
.card-pricing-item:last-child {
    border-bottom: none;
}
.card-button-01 {
    font-size: 16px;
    font-weight: 500;
    color: var(--color06);
    background-color: var(--color03);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 15px 30px;
    border: 0;
    border-radius: 5px;
    margin: 20px;
    transition: 0.3s ease-in-out;
}
.card-button-01:hover {
    color: var(--color07);
    background-color: var(--color05);
}
.card-button-02 {
    font-size: 16px;
    font-weight: 500;
    color: var(--color06);
    background-color: var(--color01);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 15px 30px;
    border: 0;
    border-radius: 5px;
    margin: 20px;
    transition: 0.3s ease-in-out;
}
.card-button-02:hover {
    color: var(--color07);
    background-color: var(--color05);
}
.icon-check {
    color: var(--color09);
    margin-right: 10px;
    font-size: 12px;
}
li.included-in-price::before {
	font-family: 'Font Awesome 5 Free';
    font-size: 12px;
    color: var(--color09);
	  content: "\f00c";
    font-weight: 900;
    margin-right: 10px;
}
li.not-included-in-price::before {
	font-family: 'Font Awesome 5 Free';
    font-size: 12px;
    color: var(--color10);
	  content: "\f00d";
    font-weight: 900;
    margin-right: 10px;
}

@media (min-width: 768px) {
    .container-p {
        flex-direction: row;
    }
    .card {
        margin: 0 10px;
        min-width: 30%;
    }
}

/*//////////////////////////////////////*/

.search{
	display: flex;
	background: #fff;
	padding: 30px 55px;
	flex-direction: column;
	width: calc(100% - 110px);
	border: 1px solid silver;
	border-radius: 15px;
	-webkit-box-shadow: 4px 4px 8px 0px rgba(34, 60, 80, 0.2);
-moz-box-shadow: 4px 4px 8px 0px rgba(34, 60, 80, 0.2);
box-shadow: 4px 4px 8px 0px rgba(34, 60, 80, 0.2);
row-gap: 15px;
margin-bottom: -60px;
}

.formbold-form-input{
	width: 100%;
	padding-left: 20px;
	font-size: 18px;
	font-family: var(--font-one);
	outline: 0;
}

.search>h2{
	width: 100%;
	font-size: 24px;
	font-family: var(--font-three);
	font-weight: 500;
	color: #37383C;
}
.search>h3{
	width: 100%;
	font-size: 16px;
	font-family: var(--font-tow);
	font-weight: 400;
	color: #5D5D5E;
}

   .formbold-input-flex {
    display: flex;
    gap: 20px;
    /*margin-bottom: 22px;*/
  }
  

  .formbold-input-flex > div {
    width: 50%;
  }
    .formbold-confirm-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #FFFFFF;
    border: 0.5px solid #DDE3EC;
    border-radius: 5px;
    font-size: 16px;
    line-height: 24px;
    color: #536387;
    cursor: pointer;
    padding: 10px 30px;
    transition: all .3s ease-in-out;
  }
  .formbold-confirm-btn {
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.12);
  }
  .formbold-confirm-btn.active {
    background: #6A64F1;
    color: #FFFFFF;
  }

  .formbold-form-step {
    display: none ;
  }
  .formbold-form-step.active {
    display: block;
  }

  .formbold-btn {
    display: none !important;
  }

  .formbold-btn.active {
    display: flex !important;
  }

  .formbold-form-btn-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 25px;
    margin-top: 25px;
  }
  .formbold-back-btn {
    cursor: pointer;
    background: #FFFFFF;
    border: none;
    color: #07074D;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    display: none;
  }
  .formbold-back-btn.active {
    display: block;
  }
  .formbold-btn, .btn {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 16px;
    border-radius: 5px;
    padding: 10px 75px;
    border: none;
    font-weight: 500;
    background-color: var(--color01);
    color: white;
    cursor: pointer;
    
  }
  .formbold-btn>p{
      margin: 0;
  }
  .formbold-btn, .btn:hover {
    box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.05);
  }
  
  .flex-output{
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .flex-output p{
    padding-top: 10px;
    padding-bottom: 10px;
    margin-top: 10px;
    padding-left: 30px;
    padding-right: 30px;
    border: 1px solid silver;
    color: #fff;
    display: none;
    font-weight: 500;
  }

  #warning{
    background: #ffc107;
    color:#000;
  }
  #result{
    background: #28a745;
  }
  #erorr{
    background: #dc3545;
  }
  @media only screen and (max-width: 600px) {
      .formbold-form-input {
    width: auto;
    line-height: 2;
      }
          .formbold-input-flex {
    flex-direction: column;
  }
    .formbold-btn, .btn {
  justify-content: center;
  }
  .search{
  	padding: 20px 10px;
  	width: calc(100% - 20px)
  }
  }
  
    .loading-bar {
    width: 250px !important;
    height: 5px;
    margin: 0 auto;
    border-radius: 2px;
    background-color: #fff;
    position: relative;
    overflow: hidden;
    z-index: 1;
    transition: transform .3s ease-in;
    display: none;
   margin-top: 15px;
  }
  .blue-bar {
    height: 100%;
    width: 100px;
    position: absolute;
    transform: translate(-34px);
    background-color: var(--color03);
    border-radius: 2px;
    animation: initial-loading 1.5s ease infinite;
  }
  @keyframes initial-loading {
    0% { transform: translate(-50px); }
    50% { transform: translate(200px); }
    100% { transform: translate(-50px); }
  }