@font-face {
    font-family: 'SFUIDisplay-Light';
    font-weight: normal;
    font-style: normal;
    src: url(/site/fonts/sf-ui-display-light.otf) format('opentype');
}

@font-face {
    font-family: 'SFUIDisplay-Medium';
    font-weight: normal;
    font-style: normal;
    src: url(/site/fonts/sf-ui-display-medium.otf) format('opentype');
}

body{
    overflow-y: scroll;
}

body,
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6{
    font-family: 'SFUIDisplay-Medium';
}

a{
    color: #1A1824;
    text-decoration: none;
}

a:hover,
a:focus{
    color: #1A1824;
}

#logoimg{
    width: 180px;
    margin-bottom: 20px;
}

.bloco {
    position: relative;
    width: 100%;
    padding: 35px 0 75px;
    min-height: 100vh;
}

h2{
    font-size: 30px;
    color: #000000;
    letter-spacing: -0.24px;
    margin-bottom: 30px;
    font-weight: 400;
}

h3{
    font-size: 24px;
    color: #1A1824;
    letter-spacing: -0.38px;
    margin-bottom: 30px;
}

h4{
    font-size: 15px;
    color: #1A1824;
    letter-spacing: -0.24px;
}

h5{
    font-size: 16px;
    color: #000000;
    letter-spacing: -0.24px;
    text-align: center;
    line-height: 24px;
}

.date .form-control,
.form-control{
    font-size: 15px;
    color: #1A1824;
    letter-spacing: -0.24px;
    text-align: left;
    box-shadow: none;
    border: none;
    border-bottom: 1px solid rgba(26,24,36,0.2);
    width: 100%;
    padding: 13px 0px;
    border-radius: 0px !important;
    height: auto;
    background: transparent;
}

.date-picker.input-daterange{
    margin-top: 10px;
}

.input-daterange .helper_field{
    width: 50%;
    float: left;
    padding: 0 15px;
    position: relative;
}

.form-control:focus{
    box-shadow: none;
}

.form-control:focus ~ .floating-label,
.form-control:not(:placeholder-shown) ~ .floating-label{
    top: -10px;
    font-size: 11px;
    opacity: 1;
}

.form-control:focus ~ .floating-label,
.form-control:not(:-ms-input-placeholder) ~ .floating-label{
    top: -10px;
    font-size: 11px;
    opacity: 1;
}

.floating-label {
    position: absolute;
    pointer-events: none;
    left: 15px;
    top: 18px;
    transition: 0.2s ease all;
}

.floating-label.left{
    left: 0px;
}

.form_registo{
    max-width: 700px;
    margin: 0 auto;
}

form .row{
    margin-top: 15px;
    margin-bottom: 15px;
}

label{
    font-size: 14px;
    color: #000000;
    text-align: left;
    font-weight: 400;

}

.holder_checkmark_options {
    display: inline-block;
}

.passo1 .holder_checkmark_options {
    display: block;
    margin-top: 25px;
}

.checkmark_options {
    position: relative;
    margin-bottom: 6px;
}

.checkmark_options input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.checkmark_options .checkmark {
    margin-top: 8px;
    margin-bottom: 10px;
    padding-left: 25px;
    padding-right: 60px;
}

.checkmark_options .price{
    position: absolute;
    right: 0;
    color: #34C47C;
    top: 9px;
}

.checkmark_options .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}


.checkmark_options input:checked ~ .checkmark:before{
    background-color: #34C47C;
    border: 1px solid transparent;
}

.checkmark_options input:checked ~ .checkmark:after {
    display: block;
}

.checkmark_options .checkmark:before {
    content: '';
    position: absolute;
    top: 10px;
    left: 0px;
    height: 20px;
    width: 20px;
    border-radius: 50%;
    border: 1px solid #bebebe;
}

.checkmark_options .checkmark:after {
    left: 6px;
    top: 13px;
    width: 7px;
    height: 11px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(42deg);
    -ms-transform: rotate(42deg);
    transform: rotate(42deg);
}


.on_off_options {
    position: relative;
    display: inline-block;
}

.on_off_options input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.on_off_options .checkmark {
    padding: 7px 15px;
    background: #EAEAEB;
    border-radius: 6px;
    margin-right: 10px;
    font-size: 12px;
}

.on_off_options input:checked ~ .checkmark{
    background-color: #34C47C;
    color: #fff;
}

.holder_btn{
    margin-top: 30px;
}

.btn_add,
.btn_edit{
    background: #1A1824;
    border-radius: 2px;
    font-size: 12px;
    color: #FFFFFF;
    letter-spacing: -0.24px;
    text-align: center;
    line-height: 20px;
    border: none;
    padding: 5px 20px;
    margin: 0 5px;
    font-family: 'SFUIDisplay-Light';
}

.btn_remove{
    background: #FF0000;
    border-radius: 2px;
    font-size: 12px;
    color: #FFFFFF;
    letter-spacing: -0.24px;
    text-align: center;
    line-height: 20px;
    border: none;
    padding: 5px 20px;
    margin: 0 5px;
    font-family: 'SFUIDisplay-Light';
}

.btn{
    background: #34C47C;
    border-radius: 6px;
    font-size: 16px;
    letter-spacing: -0.24px;
    text-align: center;
    color: #fff;
    width: 300px;
    padding: 11px 0;
    margin-top: 35px;
    margin-bottom: 15px;
    font-family: 'SFUIDisplay-Light';
}

.btn:hover, .btn:focus{
    color: #fff;
}

.info_fundo{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 15px 0;
    border-top: 1px solid #E3E2E2;
    text-align: center;
    font-size: 30px;
    color: #1A1824;
    letter-spacing: -0.48px;
}

.info_fundo .price{
    color: #34C47C;
    margin-left: 10px;
}

.back{
    font-size: 15px;
    color: #ACACAC;
    letter-spacing: -0.24px;
    text-align: center;
    cursor: pointer;
}

.holder_pessoas .pessoa:not(.complete):not(:nth-child(1)):last-child{
    border-top: 2px solid #34C47C;
}

.pessoa .nome{
    padding: 0px 30px;
    background: #34C47C;
    border-radius: 8px;
    line-height: 56px;
    font-size: 18px;
    color: #FFFFFF;
    text-align: left;
    margin-bottom: 15px;
    margin-top: 15px;
    position: relative;
    cursor: pointer;
    font-family: 'SFUIDisplay-Light';
}

.pessoa .nome:after{
    content: "\f107";
    font-family: FontAwesome;
    font-weight: normal;
    font-style: normal;
    position: absolute;
    right: 20px;
}

.pessoa.opened .nome:after{
    content:"\f106";
}

.pessoa .nome span{
    margin-left: 10px;
    font-size: 14px;
    letter-spacing: -0.24px;
    display: inline-block;
    vertical-align: middle;
}

.pessoa .conteudo{
    overflow: hidden;
}

.erros_faturacao{
    margin-top: 40px;
}

.form-holder.direct_field{
    margin-bottom: 15px;
    position: relative;
}

.holder_membros_familia{
    display: inline-block;
    text-align: left;
}

.holder_metodos_pagamento{
    display: block;
}

.linguas{
    max-width: 700px;
    margin: 0px auto 30px;
}

.linguas a{
    color: #333;
    text-decoration: none;
}

.linguas a.active{
    color: #34C47C;
}

@media(max-width:991px) {

    .form_registo{
        padding: 0 20px;
    }

    h4 {
        margin-top: 25px;
    }

    .form-holder{
        margin-bottom: 15px;
    }

}
