body {
    font-family: 'Red Hat Text', sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: #002555;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 300;
}

a {
    color: #3d6899;
}
a::hover {
    color: #002555;
}
header {
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: #fff;
}

button {
    border-color: transparent;
    /*for firefox */
}

.row.header {
    display: flex;
}

.logo {
    display: block;
}

.logo img {
    width: 100%;
}

.header-quote {
    display: none;
    padding: 0px;
    margin: 0px;
    font-size: 18px;
    text-align: center;
    color: #224571;
}

.lang-select .glyphicon-menu-down {
    font-size: 10px;
    vertical-align: top;
}

.content {
    padding-top: 20px;
    background-color: #eaeaea;
}

.topblocks .content-block, .bottomblocks .content-block {
    background-color: #fff;
    padding: 40px;
    border-bottom: 3px solid #3d6899;
    box-shadow: rgba(100, 100, 111, 0.2) 2px 0px 8px 0px;
    transition: background-color 15ms linear;
    display: flex;
    flex-direction: column;
}
.topblocks .content-block:hover, .bottomblocks .content-block:hover {
    background-color: #eff6ff;
    border-bottom: 3px solid #002555;
}
.topblocks > .auto_height > div > a, .bottomblocks > .auto_height > div > a {
    text-decoration: none;
}
.content-block .link {
    margin-top: 20px;
    height: 100%;
    display: flex;
}
.content-block .link span {
    align-self: flex-end;
    font-weight: bold;
}

.content-block h5 {
    margin-top: 0px;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 20px;
    color: #002555;
}
.content-block h5 span {
    color: #24b4d3;
    text-transform: none;
    font-weight: bold;
    display: block;
    font-size: 20px;
    margin-bottom: 20px;
}

.content-block ul {
    padding-left: 0;
}

.content-block ul li {
    position: relative;
    list-style: none;
}

.content-block a {
    color: #0271bb;
    font-weight: 400;
}

.user-question {
    font-size: 22px;
    color: white;
    font-weight: bold;
    justify-items: center;
    display: flex;
    flex-direction: column;
    padding-left: 0px;
}

.user-question p {
    margin: 0;
    position: relative;
}

.user-data p {
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: 400;
}

.user-data p span {
    font-weight: 300;
}

.form-block {
    padding: 5px;
    background-color: #e1e1e1;
}

.form-block button {
    position: relative;
    padding: 15px 20px;
    color: #fff;
    font-size: 15px;
    background-color: #818a91;
    cursor: pointer;
    border: none;
    border-radius: 0px 3px 3px 0px;
    text-align: center;
}

.form-block button:focus {
    border: none;
    outline: none;
}

.form-block button:focus {
    background-color: #1b3e6c;
}

.form-block button:hover {
    background-color: #1b3e6c;
}

.confirm-form {
    padding: 5px;
}

.confirm-form button {
    width: 45%;
}

.log-in__form form {
    display: flex;
}

.log-in__form form#step {
    flex-direction: column;
}

.log-in__form button {
    width: 50%;
}

.log-in__form input[type="text"] {
    width: 50%;
    padding: 15px 15px;
    color: black;
    border: 1px solid #818a91;
    border-radius: 3px 0px 0px 3px;
}

.log-in__form input[type="text"]::placeholder {
    color: #d3d3d3;
    font-style: italic;
}

.contact-us {
    text-align: right;
}

.contact-links {
    text-align: center;
    padding-top: 20px;
}

.contact-links p {
    margin-bottom: 20px;
}

.contact-links a {
    color: #24b4d3;
    font-weight: bold;
    border-bottom: 1px solid transparent;
}

.contact-links a:hover {
    text-decoration: none;
    border-color: #24b4d3;

}

@media (max-width: 767px) {
    .col-xs-12 {
        margin-bottom: 30px;
    }

    .content-block ul li {
        font-size: 16px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .video {
        margin-top: 30px;
    }
}

@media (min-width: 768px) {
    .lang-select span {
        display: inline-block;
        padding: 0 2px;
    }

    .header-quote {
        display: block;
    }

    .user-data {
        display: inline-block;
        padding: 5px 0 0 20px;
    }

    .user-data p {
        margin-bottom: 0;
        font-size: 16px;
    }

    h6 {
        font-size: 26px;
    }

    header .content-block {
        padding: 18px 25px;
    }

    .form-block {
        padding-top: 40px;
    }

    .contact-us {
        padding-top: 5px;
    }  
}

.log-in__form > p {
    font-weight: bold;
    font-size: 20px;
    color: #002555;
}

.log-in__form {
    margin-left: 35px;
    background: #eff6ff;
    padding: 40px;
    border-bottom: 3px solid #3d6899;
}

@media (min-width: 1200px) {
    header {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .header-quote {
        font-size: 25px;
    }

    .content {
        padding-top: 30px;
    }

    .user-data p {
        font-size: 20px;
    }

    .confirm-form {
        padding-top: 30px;
    }

    .confirm-form button {
        width: 43%;
        margin: 10px;
        padding: 10px;
    }

    .user-data {
        padding-left: 40px;
    }
}

@media (min-width: 1600px) {
    .container {
        width: 1640px;
    }

    .header-quote {
        padding: 20px 0 20px 50px;
        font-size: 30px;
    }

    .lang-select {
        width: 200px;
        margin: 20px 0;
    }
}

.video-link {
    text-align: left;
    padding-bottom: 15px;
}

.video img {
    padding-bottom: 20px;
}

.video-link a {
    width: 100%;
    display: block;
    background-color: #24b4d3;
    color: #fff;
    padding: 15px 15px;
    border-radius: 5px;
    position: relative;
    font-weight: bold;
}

.video-link a:after {
    font-family: 'Glyphicons Halflings';
    content: "\e258";
    font-size: 15px;
    vertical-align: middle;
    right: 20px;
    position: absolute;
}

.video-link a:hover {
    text-decoration: none;
    background-color: #eaeaea;
    color: #025c71;
}

@media (min-width: 768px) {
    .front_header_area, .steps {
        display: flex;
    }
}

.middle-block {
    border-radius: 5px;
}

.info .content-block a {
    position: relative;
    display: inline-block;
    font-size: 14px;
    margin-left: 40px;
    border: 1px solid #f6f6f6;
    border-radius: 5px;
    padding: 15px 35px 15px 8px;
    color: black;
    text-decoration: none;
    width: calc(100% - 40px);
}

.info .content-block a:hover {
    color: #fff;
    background-color: #12acd0;
}

.info .content-block a:before {
    /*font-family: 'Glyphicons Halflings';
    content: "\e025";
    font-size: 12px;
    line-height: 4;
    display: flex;
    justify-content: center;
    align-items: center;*/
    content: '';
    background-image: url(/images/svg/download.svg);
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: center center;
    left: -40px;
    top: 0px;
    bottom: 0;
    position: absolute;
    background-color: #f6f6f6;
    color: #9b9b9b;
    width: 32px;
    height: 100%;
    border-radius: 5px;
    border: 1px solid #f6f6f6;

}

.info .content-block a:after {
    right: 10px;
    position: absolute;
    content: ' ';
    background-image: url(/images/svg/arrow.svg);
    background-size: 100% 100%;
    height: 14px;
    width: 14px;
    top: calc(50% - 7px);
}

.content-block p {
    margin: 0px;
}

.slider {
    display: flex;
    flex-flow: column;
}

.slider .content-block {
    border-radius: 5px 5px 0px 0px;
    padding: 50px 50px 10px 50px;
}

.slider .content-block .owl-carousel-wrapper {
    font-weight: bold;
    font-style: italic;
    color: #646464;
    font-size: 25px;
}

.slider #flower-image {
    background-image: url(/images/flower.png);
    background-color: white;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    height: 125px;
    width: 100%;
    border-radius: 0px 0px 5px 5px;
}

.video > .content-block {
    height: 100%;
}

.steps {
    margin-bottom: 30px;
    direction: column;
}

.steps .user-question p {
    color: black;
    font-weight: normal;
    font-size: 18px;
    float: none;
}

.steps form#step, .steps form#step .confirm-form, .steps > div > .content-block {
    height: 100%;
}

.steps form#step {
    padding-top: 15px;
}

.active-lang {
    display: flex;
    align-items: center;
    justify-content: center;
}

.active-lang > span.text {
    position: relative;
    font-size: 16px;
    vertical-align: top;
    line-height: 1;
    font-weight: bold;
    color: #224571;
    margin-left: 20px;
}

.hamburger {
  display: block;
  position: relative;
  z-index: 1;
  user-select: none;
}
.hamburger span {
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: #cdcdcd;
  border-radius: 3px;
  z-index: 1;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}

.hamburger span:first-child {
  transform-origin: 0% 0%;
}

.hamburger span:nth-last-child(2) {
  transform-origin: 0% 100%;
}

.topheader {
    display: flex;
    align-items: center;
    justify-content: center;
}

.lang-select-container {
    text-align: right;
}

.lang-select-container a {
    color: #24b4d3;
}

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
    background-color: #24b4d3 !important;
}

button, a {
    transition: all .3s ease-in-out;
}

.owl-carousel .owl-stage {
    display: flex;
}

.owl-carousel .owl-stage .owl-item {
    padding-left: 5px;
}

.sms-number input[type="text"] {
    width: 100%;
    padding-left: 40px;
}

.sms-number span > span {
    color: #000;
}

.sms-number button {
    width: 100%;
}

.info-bottom {
    margin-top: 30px;
}

.info-bottom h4 {
    text-transform: uppercase;
}

.log-in__form .small {
    font-size: 18px;
}

.log-in__form .shippingFields > input {
    width: 45%;
}
@media (max-width: 1024px) {
    .log-in__form .shippingFields > input {
        width: 100%;
    }
}
@media (max-width: 425px) {
    .steps {
        display: block !important;
    }
}
.shippingFields input::placeholder {
    color: #000 !important;
}

.front_header_area {
    background: #224571;
    color: white;
    height: 100%;
    position: relative;
}
.front_header_area > .background {
    display: block;
    background-image: url(/photos/1/HPV1-sort-hvid-pink-%20Bl%C3%A5-JPEG.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: absolute;
    height: inherit;
    width: 50%;
    right: 0;
}
.front_header_area .stepsdisplay {
    padding: 100px 50px 200px 50px;
}
.front_header_area .stepsdisplay h2 {
    font-weight: bold;
}
.front_header_area .stepsdisplay .step {
    margin-left: 15px;
}
.front_header_area .stepsdisplay .step.active {
    font-weight: bold;
}

.codeblock {
    margin-top: -100px;
}

.arrowblue:after {
    content: ' ';
    background-image: url(/images/svg/arrow-blue.svg);
    background-size: 100% 100%;
    height: 9px;
    width: 23px;
    position: relative;
    margin-left: 10px;
    display: inline-block;
}
.topblocks, .bottomblocks, .middleblocks {
    margin-top: 70px;
    margin-bottom: 70px;
}

.middleblocks {
    padding-top: 30px;
    padding-bottom: 30px;
}
.middleblocks .content-block-alt {
    padding-left: 25px;
}
.middleblocks .content-block-alt img {
    max-width: 100%;
    height: auto;
}
.middleblocks .content-block-alt > h2 {
    margin-top: 0px;
}
.middleblocks h2 {
    color: #002555;
}
.middleblocks .link a {
    font-weight: bold;
}

/* Accordion */
.accordion {
    margin-left: 15px;
}
.accordion__item {
    border-bottom: 1px solid #bec5d6;
}
.accordion__item:first-child {
    border-top: 1px solid #bec5d6;
}
.accordion__item .accordion__title {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 20px 20px 5px;
    color: #002555;
    font-weight: bold;
    transition: background-color 0.2s;
    cursor: pointer;
}
.accordion__item .accordion__title:hover {
	background-color: #eff6ff;
	transition: all 0.5s ease-out;
}
.accordion__item .accordion-active {
	background-color: #eff6ff;
}
.accordion__item .accordion__title .accordion__arrow {
    padding-right: 5px;
	color: #43648d;
	line-height: 30px;
	font-size: 14px;
	transition: all 0.2s ease-out;
}
.accordion__item .accordion__rotate {
	transform: rotate(180deg);
}
.accordion__item .accordion__content {
	padding: 30px;
	font-size: 16px;
	display: none;
}
.accordion__item .accordion__content p {
    margin: 0px;
}
/*-------------------------------------*/

.factsblocks {
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: #eff6ff;
}
.factsblocks > .row {
    display: flex;
    justify-content: center;
}
.factsblocks .fact {
    text-align: center;
    border-left: 1px solid #bec5d6;
}
.factsblocks .fact:first-child {
    border-left: none;
}
.factsblocks h1 {
    color: #002555;
}
.factsblocks .content {
    font-size: 18px;
}

.buttonsblock {
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
}
.buttonsblock button {
    width: 40%;
    margin-left: 15px;
    border-radius: 3px;
    white-space: unset;
}
.buttonsblock .backBtn {
    margin-top: 15px;
}
.buttonsblock button:hover {
    color: white;
}
.buttonsblock button:focus, .buttonsblock button:active {
    background-color: #8c8c8c;
    color: white;
}
@media (max-width: 767px) {
    .codeblock {
        margin-top: 0px;
    }
    .log-in__form {
        margin-left: 0px;
    }
    .topblocks, .bottomblocks, .middleblocks {
        margin-top: 20px;
        margin-bottom: 20px;
        padding-top: 0px;
    }
    .factsblocks > .row {
        display: block;
    }
    .factsblocks .fact {
        border-left: 0px;
        border-bottom: 1px solid #bec5d6;
    }
    .topheader {
        display: block;
    }
    .topheader .logo {
        text-align: center;
    }
    .topheader .logo img {
        max-width: 175px;
        margin: 0 auto;
    }
    .steps form#step {
        flex-direction: column;
    }
    .steps .user-question p {
        float: left;
    }
    .buttonsblock {
        display: block;
    }
    .buttonsblock .btn {
        margin-bottom: 20px;
    }
    .user-question {
        display: block;
    }
    .step20.buttonsblock button {
        width: 100%;
        margin-left: 0;
    }
}

#step20 .modal-content {
    background: #eff6ff;
    padding: 20px;
}
#step20 .modal-content p {
    color: black;
    font-weight: normal;
    font-size: 18px;
}
#step20 .modal-footer {
    background-color: unset;
    padding-top: 10px;
    margin-top: 0px;
    border-top: unset;
}
#step20 .buttonsblock button {
    width: 100%;
    margin-left: 0;
}