html,
body{
    height:100%;
    width: 100%;
    font-family: 'PingFang HK';
    font-size: 20px;
    color: #463F3A;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active  {
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}

.flamingo-page{
    background-color: #FEFEFC;
}

img{
    width: 100%;
}

a:hover{
    text-decoration: none;
}

a:active, a:focus{
    outline: none;
}

:root{
    --logo-text-width: 117px;
    --logo-img-width: 28px;
    --logo-landscape-img-width: 240px;
}

.flamingo-table{
    display: table;
    width: 100%;
}

.flamingo-cell{
    display: table-cell;
}

.flamingo-cell.cell-middle{
    vertical-align: middle;
}

.flamingo-cell.bottom{
    vertical-align: bottom;
}

.flamingo-cell.top{
    vertical-align: top;
}

.middle{
    display: flex;
    align-items: center;
}

.center-self{
    margin-left: auto;
    margin-right: auto;
}

.content-header{
    position: relative;
    z-index: 100;
}

.header-section{
    width: 100%;
    height: 150px;
    background-color: #FEFEFC;
    position: absolute;
    top: 0;
    left: 0;
}

.header-sticky{
    position: fixed;
    top: 0px;
    box-shadow: 0px 0px 15px rgba(165, 156, 137, 0.19564);
    z-index: 100;
}

.header-section.header-sticky{
    height: 90px;
    background-color: #FFFFFF;
}

.header-container{
    width: 90%;
    max-width: 1620px;
    height: 100%;
    justify-content: flex-start;
    position: relative;
}

.logo-home{
    background-color: #EB148C;
    position: absolute;
    padding: 187px 30px 40px;
    transition: padding-top 0.3s;
    top: 0px;
    left: 0px;
}

.logo-home.have-footer{
    padding: 74px 30px 40px;
}

.cover-logo-img{
    width: fit-content;
}

.logo-home.logo-landscape{
    background-color: inherit;
    position: static;
}

.logo-home img{
    display: block;
}

.logo-home .logo-img{
    width: var(--logo-img-width);
    margin-left: calc((var(--logo-text-width) - var(--logo-img-width)) / 2);
}

.logo-home .logo-text{
    width: var(--logo-text-width);
    margin-top: 8px;
}

.logo-home.logo-landscape .cover-logo-img{
    width: 343px;
}

.logo-home.logo-landscape img{
    display: inline-block;
}

.logo-home.logo-landscape .logo-text{
    width: var(--logo-landscape-img-width);;
    margin-left: 20px;
    margin-top: 3px;
}

.menu-top-mobile, .trigger-menu-top{
    display: none;
}

.menu-top-mobile{
    padding: 5px 10px;
    text-align: center;
    line-height: 30px;
    position: fixed;
    top: 70px;
    left: -6%;
    width: 112%;
    height: calc(100% - 60px);
    background-color: #463F3A;
}

.menu-top-mobile a{
    color: #FFFFFF;
}

.menu-top-mobile li{
    padding: 7px 0px;
}

.menu-top-mobile .menu-top-fix .menu-top-title{
    width: fit-content;
    padding-left: 20px;
    padding-right: 20px;
    margin: auto;
    line-height: 18px;
    margin-top: 13px;
    margin-bottom: 27px;
    font-size: 1.1em;
}
.menu-top-mobile .menu-top-fix .menu-top-button{
    margin-top: 18px;
}
.menu-top-mobile .menu-top-fix .menu-top-title.active{
    border-left: 3px solid #EB148C;
}
.menu-mobile-line{
    background: #FFFFFF;
    opacity: 0.2;
    height: 1px;
    width: 17.4%;
    margin: auto;
}
.trigger-menu-top{
    margin-left: auto;
    padding: 10px 15px;
}
.trigger-menu-top a{
    display: block;
    color: #68635F;
    font-size: 2em;
    padding: 0px 8px;
}
.btn-trigger-menu-top:hover{
    cursor: pointer;
}

.menu-header{
    width: 1016px;
    margin-left: auto;
    margin-bottom: 0px;
    text-align: right;
    font-size: 0.9rem;
}

.menu-header li{
    padding: 0px 30px;
    display: inline-flex;
}

.menu-header li:last-child{
    padding-right: 0px;
}

.menu-header li:first-child{
    padding-left: 0px;
}

.menu-header li a{
    line-height: 25px;
    text-align: right;
    letter-spacing: 0.9px;
    color: #463F3A;
}

.menu-item{
    position: relative;
}

.menu-item a:hover{
    color: #CC127A;
}

.menu-line{
    width: 40px;
    height: 3px;
    margin-top: 8px;
    background-color: #EB148C;
    position: absolute;
    top: 100%;
    left: calc(50% - 20px);
}

.menu-contactus{
    padding: 11px 40px;
    background-image: linear-gradient(169.99deg, #FF39A7 -10.84%, #E61288 110.84%);
    border-radius:23.5px;
}
.menu-contactus:active{
    background: linear-gradient(169.99deg, #FF39A7 -10.84%, #E61288 110.84%);
    box-shadow: 0px 4px 4px rgba(126, 0, 70, 0.3);
}
li a.menu-contactus{
    color: #FFFFFF;
}
.menu-contactus:hover{
    background: linear-gradient(0deg, #E8E8E8, #E8E8E8), linear-gradient(169.99deg, #FF39A7 -10.84%, #E61288 110.84%);
    background-blend-mode: multiply, normal;
}
.menu-contactus:visited, .menu-contactus:link, .menu-contactus:active{
    color: #ffffff;
    outline: none;
}

/* INPUT MATERIAL ------------------------------- */
.input-material { 
    position:relative; 
    padding: 20px 8px 2px;
}
.input-material input {
    padding: 10px 10px 10px 5px;
    display: block;
    width: 100%;
    border: none;
    background-color: #FEFEFC;
}
.input-material textarea {
    padding: 0px 10px 5px 5px;
    display: block;
    width: 100%;
    border: none;
    resize: none;
    height: 150px;
    background-color: #FEFEFC;
    margin-top: 10px;
    margin-bottom: 5px;
}
.input-material input:focus,
.input-material textarea:focus { 
    outline: none; 
}

/* LABEL ======================================= */
.input-material label {
    color:#999; 
    font-weight:300;
    position:absolute;
    pointer-events:none;
    left:13px;
    top:21px;
    transition:0.2s ease all; 
    -moz-transition:0.2s ease all; 
    -webkit-transition:0.2s ease all;
}

/* active state */
.input-material input:focus ~ label, .input-material input:valid ~ label,
.input-material textarea:focus ~ label, .input-material textarea:valid ~ label {
    top: 12px;
    font-size: 0.6em;
}

/* END INPUT MATERIAL ------------------------------- */

/* SELECT FLAMINGO ------------------------------- */
.flamingo-dropdown-container, .flamingo-datepicker-container{
    padding: 11px 13px 16px;
}

.flamingo-dropdown-container label, .flamingo-datepicker-container label{
    width: 55px;
    display: inline-block;
    font-weight: 300;
}

.flamingo-dropdown, .flamingo-datepicker{
    width: calc(100% - 60px);
    position: relative;
    text-align: center;
    float: right;
}

.flamingo-dropdown .btn-flamingo-dropdown, .flamingo-datepicker .btn-flamingo-datepicker{
    background: #FEFEFC;
    border: 1px solid #F2CACD;
    box-sizing: border-box;
    box-shadow: 0px 2px 0px #F2CACD;
    border-radius: 24px;
    padding: 10px;
    display: block;
    font-size: 0.9em;
    position: relative;
    z-index: 9;
    color: #E6A3A7;
}

.btn-flamingo-dropdown div, .btn-flamingo-datepicker div{
    background-image: url('../img/common/icon-down.png');
    background-size: cover;
    background-position: center;
    width: 11px;
    height: 9px;
    display: inline-block;
    margin-left: 5px;
    margin-bottom: 3px;
}

.btn-flamingo-dropdown:hover, .btn-flamingo-datepicker:hover{
    cursor: pointer;
}

.flamingo-dropdown .flamingo-dropdown-list{
    position: absolute;
    top: 5px;
    left: 0;
    width: 100%;
    font-size: 0.8em;
    background-color: #F2CACD;
    box-shadow: 0px 3px 6px rgba(154, 144, 125, 0.248798);
    border-radius: 19px 19px 19px 19px;
    z-index: 8;
    padding: 35px 19px 0px;
    display: none;
    color: #FFFFFF;
}

.flamingo-dropdown .flamingo-dropdown-list li{
    border-bottom: 2px solid #FFFFFF;
    padding: 21px 0px;
}

.flamingo-dropdown .flamingo-dropdown-list li:hover{
    cursor: pointer;
}

.flamingo-dropdown .flamingo-dropdown-list li:last-child{
    border-bottom: none;
}

.flamingo-dropdown.show-list .flamingo-dropdown-list{
    display: block;
}

.flamingo-dropdown.show-list .btn-flamingo-dropdown div, .flamingo-datepicker.show-calendar .btn-flamingo-datepicker div{
    background-image: url('../img/common/icon-up.png');
}

.flamingo-datepicker{
    position: relative;
}

.btn-flamingo-datepicker{
    position: relative;
    z-index: 5;
}

.flamingo-datepicker input{
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
    top: 0;
    left: 0;
    border: none;
}

.flamingo-datepicker input:focus{
    outline: none;
}
.datepicker table tr td.active:hover, .datepicker table tr td.active:hover:hover, .datepicker table tr td.active.disabled:hover, .datepicker table tr td.active.disabled:hover:hover, .datepicker table tr td.active:active, .datepicker table tr td.active:hover:active, .datepicker table tr td.active.disabled:active, .datepicker table tr td.active.disabled:hover:active, .datepicker table tr td.active.active, .datepicker table tr td.active:hover.active, .datepicker table tr td.active.disabled.active, .datepicker table tr td.active.disabled:hover.active, .datepicker table tr td.active.disabled, .datepicker table tr td.active:hover.disabled, .datepicker table tr td.active.disabled.disabled, .datepicker table tr td.active.disabled:hover.disabled, .datepicker table tr td.active[disabled], .datepicker table tr td.active:hover[disabled], .datepicker table tr td.active.disabled[disabled], .datepicker table tr td.active.disabled:hover[disabled]{
    background-color: #F2CACD !important;
}
.datepicker table tr td.active, .datepicker table tr td.active:hover, .datepicker table tr td.active.disabled, .datepicker table tr td.active.disabled:hover{
    background-image: -webkit-linear-gradient(top, #F2CACD, #E6A3A7) !important;
}
/* END SELECT FLAMINGO ------------------------------- */

.footer-section{
    width: 100%;
    height: 85px;
    display: flex;
    align-items: center;
    background-color: #463F3A;
    position: relative;
    z-index: 999;
}

.div-footer-content{
    width: 100%;
    margin-left: 7.76%;
    margin-right: 4.167%;
    display: flex;
    align-items: center;
}

.div-footer-content > div{
    margin-right: 4.115%;
    margin-right: 4.115%;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.div-footer-content > div:last-of-type{
    margin-left: auto;
}


.img-marker{
    width: 17px;
    margin-right: 12px;
}

.div-info{
    font-size: 0.75rem;
    line-height: 21px;
    letter-spacing: 0.3125px;
    color: #FFFFFF;
}

.img-envelope{
    width: 26px;
    margin-right: 12px;
}

.img-phone{
    width: 22px;
    margin-right: 12px;
}

.div-copyright{
    font-size: 0.65rem;
    line-height: 18px;
    text-align: right;
    color: #FFFFFF;
}

@media(max-width: 1599px){
    html, body{
        font-size: 18px;
    }
    .menu-header li{
        padding: 0px 15px;
    }
    .logo-home, .logo-home.have-footer{
        padding-right: 20px;
        padding-left: 20px;
        padding-bottom: 30px;
    }
}

@media(max-width: 1365px){
    html, body{
        font-size: 16px;
    }

    .logo-header{
        width: 200px;
    }
    
    .menu-contactus{
        padding: 9px 30px
    }
}

@media(max-width: 1279px){
    :root{
        --logo-text-width: 90px;
        --logo-img-width: 22px;
        --logo-landscape-img-width: 185px;
    }
    .menu-header li{
        padding: 0px 5px;
    }
    .logo-home.logo-landscape .logo-text{
        margin-left: 15px;
        margin-top: 0px;
    }
    .logo-home.logo-landscape .cover-logo-img{
        width: 263px;
    }
    .div-footer-content{
        margin-left: 2%;
        margin-right: 2%;
    }

    .div-footer-content > div{
        margin-right: 3.115%;
    }
}
@media(max-width: 1070px){
    .header-section{
        height: 130px;
    }
    .header-section.header-sticky{
        height: 70px;
    }
    .menu-header{
        display: none;
    }
    .trigger-menu-top{
        display: block;
    }
}

@media(max-width: 991px){
    html, body{
        font-size: 15px;
    }

    .footer-section{
        height: auto;
    }

    .div-footer-content{
        margin: 1.5625% 6.5% 1.042% 8%;
        flex-wrap: wrap;
        justify-content: space-evenly;  
    }
    
    .div-footer-content > div {
        margin-right: 2.5%;
    }

    .div-footer-content > div:last-of-type{
        margin: 2.604% auto 0px auto;
    }
}

@media(max-width: 767px){

    .div-footer-content{
        margin: 1.5625% 6.5% 1.042% 8%;
        flex-wrap: wrap;
        justify-content: initial;  
    }
    
    .div-footer-content > div {
        margin-right: 0px;
        margin-top: 1.5625%;
    }

    .div-footer-content > div:first-of-type{
        margin-right: auto;
    }

    .div-footer-content > div:nth-of-type(3){
        margin-left: 0px;
        margin-right: 56%;
    }

    .div-footer-content > div:last-of-type{
        margin: 4.604% auto 0px auto;
    }

    .div-icon{
        width: 20px;
        margin-right: 20px;
        text-align: center;
    }

    .img-marker{
        width: 59.45%;
    }

    .img-envelope{
        width: 100%;
    }

    .img-phone{
        width: 80%;
    }

    .div-icon img{
        max-width: 100%;
        margin-right: auto;
        margin-left: auto;
    }



    /*
    .div-footer-content {
        width: 96%;        
        margin-left: auto;
        margin-right: auto;
        flex-direction: column;
        align-items: flex-start;
        padding: 10px;
    }

    .div-footer-content > div {
        display: flex;
        flex-direction: row;
        align-items: center;
        margin-top: 5px;
        margin-bottom: 5px;
    }

    .div-footer-content > div:last-of-type {
        margin-left: auto;
        margin-right: auto;
        margin-top: 40px;
    }
    */


    .logo-home{
        padding-top: 140px;
    }

    .logo-home, .logo-home.have-footer{
        padding-right: 10px;
        padding-left: 10px;
        padding-bottom: 20px;
    }
}

@media(max-width: 499px){
    :root{
        --logo-text-width: 78px;
        --logo-landscape-img-width: 148px;
    }
    .trigger-menu-top{
        margin-left: initial;
        padding: 10px 10px;
    }
    .logo-home{
        left: 50%;
        transform: translate(-50%, 0);
    }
    .logo-home.logo-landscape{
        position: absolute;
    }
    .logo-home.logo-landscape .cover-logo-img{
        width: 220px;
    }
    .btn-flamingo-dropdown div, .btn-flamingo-datepicker div{
        margin-bottom: 1px;
    }

    .div-footer-content{
        margin: 1.5625% 7% 1.042% 3%;
    }

    .div-footer-content > div:nth-of-type(3){
        margin-right: 30%;
    }

    .div-footer-content > div:last-of-type{
        margin: 8.604% auto 0px auto;
    }
}

@media(max-width: 330px){
    .div-footer-content{
        margin: 1.5625% 3% 1.042% 3%;
    }
}