:root {
    --travel-primary: #3858e9;
    --validation-error: red;
}

.woocommerce-product-gallery .flex-control-nav li{
    max-width: 120px;
}

.travel-section > h3{
    font-size: 25px!important;
    font-weight: bold!important;
    line-height: 1.5!important;
    text-transform: uppercase!important;
    margin-bottom: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: solid 1px #000;
    color: var(--travel-primary)!important;
}
.travel-section > h3{
    padding-top: 0;
}
.travel-section ul{
    padding-bottom: 15px;
}
.travel-section ul li{
    padding-bottom: 5px;
}
.travel-section ul li::marker{
    color: var(--travel-primary);
}
.travel-plan-section-content{
    margin-bottom: 20px;
}
.travel-plan-section-list-title{
    font-weight: 600!important;
    margin-top: 20px;
    margin-bottom: 15px;
    color: var(--travel-primary);
}

.travel-price{
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}
.travel-price .label h5{
    font-size: 16px;
    font-weight: normal;
    line-height: 1.5em;
    letter-spacing: 1px;
    margin: 0;
}
.travel-price .label h4{
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5em;
    margin: 0;
    color: #000000;
}
.travel-price .value{
    font-size: 35px;
    font-weight: 700;
    line-height: 1.3em;
    margin: 0;
    color: #000000;
}

.travel-booking .title{
    font-size: 20px;
    color: var(--travel-primary);
}
.travel-booking .wpcf7-form-control-wrap{
    display: block;
}
.travel-booking .wpcf7-form-control-wrap input:not(.wpcf7-submit), .travel-booking .wpcf7-form-control-wrap textarea{
    float: left;
    width: 100%;
    box-sizing: border-box;
    margin: 10px 0px!important;
    font-size: 14px!important;
    outline: 0px;
    color: #6e6e6e;
}
.travel-booking .wpcf7-submit{
    float: left;
    width: 100%;
    box-sizing: border-box;
    margin-top: 10px;
    border-width: 0px;
    letter-spacing: 1px;
    cursor: pointer;
}
.travel-booking .wpcf7-not-valid-tip{
    float: left;
    color: #fff;
    font-size: 12px;
    font-weight: normal;
    display: inline-block;
    background-color: black;
    padding: 0px 10px;
    box-sizing: border-box;
}
.prijava-za-putovanje-obrazac .travel-schools-fields > .separator{
    display: none!important;
}
.prijava-za-putovanje-obrazac .hidden{
    display: none!important;
}
.prijava-za-putovanje-obrazac .steps{
    display: flex;
    width: 100%;
    margin-bottom: 50px;
}
.prijava-za-putovanje-obrazac .steps .step{
    flex: 1;
    text-align: center;
    padding: 15px;
    background: #f8f8f8;
    background: -moz-linear-gradient(90deg, rgba(248,248,248,1) 0%, rgba(238,238,238,1) 100%);
    background: -webkit-linear-gradient(90deg, rgba(248,248,248,1) 0%, rgba(238,238,238,1) 100%);
    background: linear-gradient(90deg, rgba(248,248,248,1) 0%, rgba(238,238,238,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f8f8f8",endColorstr="#eeeeee",GradientType=1);
    transition: all 0.3 linear;
}
.prijava-za-putovanje-obrazac .steps .step.enabled{
    cursor: pointer;
}
.prijava-za-putovanje-obrazac .steps .step.enabled:hover {
  background: #ccc;
}
.prijava-za-putovanje-obrazac .steps .step.active{
    font-weight: bold;
    background: var(--travel-primary);
    color: #fff;
}

.prijava-za-putovanje-obrazac form{
    width: 90%;
    max-width: var(--content-width);
    box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);
    border-radius: 22px;
    padding: 50px;
    margin: auto;
}
@media all and (max-width: 479px){
    .prijava-za-putovanje-obrazac .steps{
        margin-bottom: 0;
    }
    .prijava-za-putovanje-obrazac form{
        width: 100%;
        padding: 40px 25px;   
        border-radius: 0;
        box-shadow: none;
    }
}
.prijava-za-putovanje-obrazac .error{
    width: 100%;
    font-size: 0.8em;
    color: var(--validation-error);
}
.prijava-za-putovanje-obrazac .checkbox .error{
    margin-top: 10px;
}
.prijava-za-putovanje-obrazac .travel-schools-fields{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -20px;
    padding-bottom: 20px;
}
.prijava-za-putovanje-obrazac .travel-schools-fields > .error{
    padding: 0 20px;
    margin-top: -25px;
}
.prijava-za-putovanje-obrazac .travel-schools-fields p{
    width: 100%;
    padding: 0 20px;
    margin-bottom: 35px;
}
.prijava-za-putovanje-obrazac .travel-schools-fields p label{
    margin-bottom: 5px;
    color: #333333;
}
.prijava-za-putovanje-obrazac select{
    font-size: 16px;
    font-weight: normal;
    padding: 15px 60px 15px 30px !important;
    background-color: #FFFFFF !important;
    border: solid 1px #f1f1f1 !important;
    border-radius: 5px 5px 5px 5px !important;
}
@media all and (min-width: 780px){
    .prijava-za-putovanje-obrazac .travel-schools-fields.billing-fields p{
        width: 50%;
    }
    .prijava-za-putovanje-obrazac .travel-schools-fields.shipping-fields p{
        width: 50%;
    }
    .prijava-za-putovanje-obrazac #billing_first_name_field, .prijava-za-putovanje-obrazac #billing_last_name_field, .prijava-za-putovanje-obrazac #billing_oib_field{
        width: 33.3%;
    }
    .prijava-za-putovanje-obrazac #shipping_first_name_field, .prijava-za-putovanje-obrazac #shipping_last_name_field, .prijava-za-putovanje-obrazac #shipping_oib_field{
        width: 33.3%;
    }
    .prijava-za-putovanje-obrazac #shipping_document_field, .prijava-za-putovanje-obrazac #shipping_document_number_field, .prijava-za-putovanje-obrazac #shipping_document_expire_field{
        width: 33.3%;
    }
}
.prijava-za-putovanje-obrazac #shipping_address_1_field, .prijava-za-putovanje-obrazac #shipping_country_field, .prijava-za-putovanje-obrazac #remark_field{
    width: 100%;
}
.prijava-za-putovanje-obrazac .optional{
    display: none;
}

.travel-booking .tour-date-wrap{
    margin-bottom: 50px;
}
.travel-booking .tour-date-wrap .form-check{
    position: relative;
    padding-left: 30px;
    line-height: 1;
}
.travel-booking .tour-date-wrap .form-check .form-check-input {
    display: none;
    visibility: hidden;
}
.travel-booking .tour-date-wrap .form-check .form-check-label{
    cursor: pointer;
    position: relative;
    width: 100%;
}
.travel-booking .tour-date-wrap .form-check .form-check-label::before{
    content: "";
    height: 18px;
    width: 18px;
    border: 1px solid #bbb3b3;
    position: absolute;
    left: -30px;
    top: 50%;
    transform: translateY(-50%);
    background-color: #fff;
}
.travel-booking .tour-date-wrap .form-check .form-check-label::after{
    content: "";
    height: 12px;
    width: 12px;
    background-color: var(--travel-primary);
    position: absolute;
    left: -26.5px;
    top: 50%;
    transform: translateY(-50%);
}
.travel-booking .tour-date-wrap .form-check .form-check-label .tour-date {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.travel-booking .tour-date-wrap .form-check .form-check-label .tour-date .start-date, .travel-booking .tour-date-wrap .form-check .form-check-label .tour-date .end-date {
    font-size: 13px;
    font-weight: 400;
    line-height: 1;
}
.travel-booking .tour-date-wrap .form-check .form-check-label .tour-date .start-date span:first-child, .travel-booking .tour-date-wrap .form-check .form-check-label .tour-date .end-date span:first-child {
    font-size: 14px;
    font-weight: 500;
    display: block;
    margin-bottom: 7px;
}

.woocommerce-checkout-review-order-table{
    display: block;
}
.woocommerce-checkout-review-order-table thead{
    display: none;
}
.woocommerce-checkout-review-order-table tbody{
    margin-bottom: 15px;
}
.woocommerce-checkout-review-order-table tbody, .woocommerce-checkout-review-order-table tbody tr, .woocommerce-checkout-review-order-table tbody td{
    display: block;
    padding: 0!important;
}
.woocommerce-checkout-review-order-table tbody .product-name{
    display: flex;
    flex-direction: row-reverse;
    max-width: 100%!important;
    padding: 0!important;
}
.woocommerce-checkout-review-order-table tbody .product-name .variation{
    width: 100%;
}
.woocommerce-checkout-review-order-table tbody .product-total{
    display: none;
}
.woocommerce-checkout-review-order-table tfoot{
    display: table;
}
.change-travelers{
    margin: 15px 0;
}
.travel-booking .number-input-item, .change-travelers .number-input-item {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
    align-items: center;
}
.change-travelers .number-input-item{
    margin-bottom: 15px;
}
.travel-booking .number-input-item .number-input-lable, .change-travelers .number-input-item .number-input-lable {
    min-width: 155px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 18px;
    font-weight: 400;
    gap: 15px;
    white-space: nowrap;
}
.change-travelers .number-input-item .number-input-lable{
    font-size: 14px;
}
.travel-booking .number-input-item .number-input-lable > span, .change-travelers .number-input-item .number-input-lable > span {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;
    line-height: 1;
    font-weight: 500;
}
.travel-booking .number-input-item .number-input-lable > span .amount, .change-travelers .number-input-item .number-input-lable > span .amount{
    white-space: nowrap;
}
.travel-booking .number-input-item .number-input-lable > span del, .change-travelers .number-input-item .number-input-lable > span del {
    font-size: 15px;
    color: var(--text-color);
}
.travel-booking .number-input-item .quantity-counter, .change-travelers .number-input-item .quantity-counter {
    border-radius: 17px;
    border: 1px solid rgba(144, 185, 86, 0.2);
    background: #FAFAFA;
    width: 110px;
    min-width: 110px;
    display: flex;
    align-items: center;
    padding: 5px 8px;
}
.travel-booking .number-input-item .quantity-counter a, .change-travelers .number-input-item .quantity-counter a {
    height: 24px;
    min-width: 24px;
    max-width: 24px;
    border-radius: 50%;
    border: 1px solid var(--travel-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.35s;
    font-size: 18px;
    color: var(--travel-primary);
}
.travel-booking .number-input-item .quantity-counter input, .change-travelers .number-input-item .quantity-counter input {
    width: 100%!important;
    background-color: transparent!important;
    padding: 0px 10px!important;
    text-align: center!important;
    line-height: 1!important;
    font-size: 15px!important;
    font-weight: 500!important;
    height: unset!important;
}
.travel-booking .egns_add_to_cart{
   width: 100%;
}
dt.variation-travelers{
    display: none!important;
}