html {
    margin: 0;
    padding: 0;
    touch-action: manipulation;
}

body {
    margin: 0;
    padding: 0;
    width: 100%;
    color: #35495E;
    background-color: #FFF;
    overflow-x: hidden;
}


a,
a:focus,
a:visited,
a:hover {
    text-decoration: none;
}

a:hover {
    color: #F7882F;
}

a {
    -o-transition: color .1s ease-out, border .1s ease-out, background-color .1s ease-out;
    -moz-transition: color .1s ease-out, border .1s ease-out, background-color .1s ease-out;
    -webkit-transition: color .1s ease-out, border .1s ease-out, background-color .1s ease-out;
    transition: color .1s ease-out, border .1s ease-out, background-color .1s ease-out;
}

::selection {
    color: #fff;
    background: #4a4a4a;
}

::-moz-selection {
    color: #fff;
    background: #4a4a4a;
}

.g-recaptcha {
    display: inline-block;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

section {
    position: relative;
    /*min-height: 100vh;*/
    padding-bottom: 40px !important;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center center;
}

section.center-vertical,
section.center-horizontal {
    display: table;
}

section.center-vertical>*,
section.center-horizontal>* {
    position: relative;
    display: table-cell;
}

section.center-vertical>* {
    vertical-align: middle;
}

section.center-horizontal>* {
    text-align: center;
}

nav {
    color: #fff;
    background-color: #37823C;
    font-size: 18px;
    /*box-shadow:0px 4px 4px #BBB;*/
}

nav .topbar {
    min-height: 6px;
    margin: 0;
}

header {
    background-color: #fff;
}

header .image-block {
    padding-right: 15px;
    margin-left: 65px;
}

header .text-block {
    padding-left: 20px;
    padding-right: 20px;
}

header .banner {
    width: 50%;
    height: auto;
}

header span {
    display: inline-block;
    ;
}

header span.body {
    font-size: 20px;
    line-height: 1.3;
}

@media (max-width: 992px) {

    header span.body,
    header span.snippet {
        text-align: center;
    }

    header .image-block {
        padding-right: 15px;
        margin-left: 0px;

    }

    header .text-block {
        border-left: none;
        padding-left: 15px;
        text-align: center;
    }
}

header span.snippet {
    display: block;
    font-size: 18px;
    padding-top: 4vh;
}

header span.snippet a {
    padding: 0 1vw;
}

header span.snippet a:first-child {
    padding-left: 0;
}

header span.snippet a:last-child {
    padding-right: 0;
}

header span.snippet a:hover {
    color: #37823C;
}

footer {
    font-size: 9px;
    text-align: left;
    margin-top: 1vh;
    padding: 0 10px;
    color: #bbbbbb;
}

footer a {
    color: #bbbbbb !important;
}

footer a:hover {
    color: #F7882F !important;
}

footer span.privacy {
    font-size: 14px;
    color: #999;
}

.navbar-nav>li>a {
    padding-top: 1px !important;
    padding-bottom: 1px !important;
}

.mobile-button {
    text-align: center !important;
}

.welcome-text-block {
    padding: 10px 0 10px 0;
}

.btn-continue {
    /*background: #88bc43 !important;*/
    background: #ffffff !important;
    color: #E73439 !important;
    /*border-radius: 0px !important;*/
}

.btn-continue.next-prev-step {
    /*background: #88bc43 !important;*/
    background: #ffffff !important;
    color: #006E83 !important;
    font-weight: 700;
    font-size: 15px;
    width: 115px;
    height: 50px;
    margin-right: 20px;
    /*border-radius: 0px !important;*/
}

.text-danger {
    color: #E73439 !important;
}

.covid-text-danger {
    color: #E73439 !important;
    font-weight: bold;
}

hr.reservation-title-line {
    margin-top: 3px !important;
    margin-bottom: 6px !important;
}

h3.reservation-title {
    margin-bottom: 5px !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #004F6F !important;
}

.btn_nav {
    border-radius: 0 0 5px 5px;
    padding: 12px 20px;
    margin: 0;
    background-color: #0090C2 !important;
    color: #fff !important;
}

.btn_nav:hover {
    background-color: #CED2D4;
    color: #003F5C;
}

.btn_nav_success {
    background-color: #003F5C !important;
    color: #fff !important;

}

.change_country {
    padding: 10.5px 20px;
}

.flag {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    margin-right: 5px;
}

#changeCountry,
#changeGeoCountry {
    border-radius: 15px;
    opacity: 1;
}

#changeCountry .modal-header,
#changeCountry .modal-content,
#changeGeoCountry .modal-header,
#changeGeoCountry .modal-content {
    background-color: #4f657c;
    border-radius: 15px;
}

#changeCountry .close,
#changeGeoCountry .close {
    color: #fff;
}

.modal_content {
    margin-left: 5%;
}

.link_country {
    color: #fff !important;
}

.topbar .icon,
.hidden_btn_nav {
    display: none;
}


@media screen and (max-width: 767px) {

    .topbar a {
        display: none;
    }

    .hidden_btn_nav {
        display: block;
    }

    a#openClinic {
        position: absolute;
        display: block;
        right: 25px;
        top: 3px;
        margin-left: -15px;
        margin-right: 35px;
        border-radius: 0 0 5px 5px !important;
        background-color: #0090C2 !important;
        color: #fff !important;
    }

    .topbar .icon,
    .topbar.container-fluid.responsive .icon {
        position: absolute;
        display: block;
        right: 25px;
        top: 3px;
        margin-left: -15px;
        margin-right: -15px;
    }

    .topbar a.icon i.icon_bars {
        color: #006E83;
        font-size: 35px;
        display: block;
    }

    .topbar a.icon,
    .topbar.container-fluid.responsive a.icon {
        position: absolute;
        float: right;
        display: block;
        padding-top: 10px;
        padding-right: 10px;
        z-index: 1;
    }

    .hidden_btn_nav {
        display: block;
    }
}

.topbar.container-fluid.responsive a {
    float: none;
    display: block;
    margin-left: -15px;
    margin-right: -15px;
    box-shadow: none;
}

@media screen and (max-width: 767px) {
    .btn_nav {
        font-size: 20px !important;
        padding: 12px 15px;
        border-radius: 0 0 0 0 !important;
        background-color: #FFFFFF !important;
        color: #006E83 !important;
    }

    .change_country {
        padding: 9px 20px;
    }
}

.text-xs-left {
    text-align: left;
}

.text-xs-right {
    text-align: right;
}

.text-xs-center {
    text-align: center;
}

.text-xs-justify {
    text-align: justify;
}



@media (min-width: 768px) {
    .text-sm-left {
        text-align: left;
    }

    .text-sm-right {
        text-align: right;
    }

    .text-sm-center {
        text-align: center;
    }

    .text-sm-justify {
        text-align: justify;
    }

    .btn-sm {
        font-size: 16px !important;
    }

    .btn-sm-home {
        display: block;
        margin: 0 auto;
        background-color: #ffffff !important;
        font-weight: 700;
        width: 200px;
    }
}

@media (min-width: 992px) {
    .text-md-left {
        text-align: left;
    }

    .text-md-right {
        text-align: right;
    }

    .text-md-center {
        text-align: center;
    }

    .text-md-justify {
        text-align: justify;
    }

    .btn-md {
        font-size: 20px !important;
    }

    .btn-md-home {
        display: block;
        margin: 0 auto;
        background-color: #ffffff !important;
        font-weight: 700;
        width: 240px;
    }
}

@media (min-width: 1200px) {
    .text-lg-left {
        text-align: left;
    }

    .text-lg-right {
        text-align: right;
    }

    .text-lg-center {
        text-align: center;
    }

    .text-lg-justify {
        text-align: justify;
    }

    .btn-lg {
        font-size: 22px !important;
    }

    .btn-lg-home {
        display: block;
        margin: 0 auto;
        background-color: #ffffff !important;
        font-weight: 700;
        width: 270px;
    }
}

@media (max-width: 800px) {
    .section-logos .home-logo {
        height: 44px;
        margin-left: 6px;
    }
}

@media (max-width: 1000px) and (min-width: 801px) {
    .section-logos .home-logo {
        height: 70px;
        margin-left: 25px;
    }
}

@media screen and (min-width: 1001px) {
    .section-logos .home-logo {
        height: 100px;
        margin-left: 40px;
    }
}

input[type=text],
input[type=tel],
input[type=number],
input[type=password] {
    background-color: white !important;
}

.modal-backdrop.in {
    opacity: 1;
}

.modal-backdrop.show {
    opacity: 1;
}

.justify-content-center {
    display: flex;
    justify-content: center !important
}

.justify-content-end {
    display: flex;
    justify-content: end !important
}

.justify-content-start {
    display: flex;
    justify-content: start !important
}

.d-flex {
    display: flex;
}

@font-face {
    font-family: Khmer OS Battambang;
    src: url('../fonts/KhmerOSbattambang.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: Khmer OS Battambang;
    src: url('../fonts/KhmerOSbattambang-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

.form-group select {
    appearance: auto;
}