/* ============================================================
   DEWPOINT PRODUCTION POLISH
   Loaded last so form controls and public focus states stay
   consistent even when legacy module styles are present.
   ============================================================ */

body .dp-site .dp-login-modal-backdrop{
    padding:16px;
    overscroll-behavior:contain;
}

body .dp-site .dp-login-modal label,
body .dp-site .dp-register-modal label{
    font-size:13px;
    line-height:1.35;
}

body .dp-site .dp-login-modal input:not([type="checkbox"]),
body .dp-site .dp-register-modal input:not([type="checkbox"]),
body .dp-site .dp-register-modal select{
    min-height:48px;
    padding:0 14px;
    color:#17213e;
    font-family:Arial,Helvetica,sans-serif;
    font-size:15px !important;
    font-weight:400 !important;
    line-height:1.4;
    letter-spacing:0;
}

body .dp-site .dp-login-modal input::placeholder,
body .dp-site .dp-register-modal input::placeholder{
    color:#8b94a8;
    font-weight:400 !important;
    opacity:1;
}

body .dp-site .dp-login-close{
    cursor:pointer;
}

body .dp-site button:focus-visible,
body .dp-site a:focus-visible,
body .dp-site input:focus-visible,
body .dp-site select:focus-visible{
    outline:2px solid rgba(115,84,232,.32);
    outline-offset:2px;
}

body .dp-site .dp-home-booking-title{
    max-width:820px;
}

body .dp-site .dp-home-booking-title h2{
    line-height:1.05;
    text-wrap:balance;
}

body .dp-site .dp-home-booking-title p{
    max-width:680px;
    text-wrap:pretty;
}

@media(max-width:760px){
    body .dp-site .dp-login-modal input:not([type="checkbox"]),
    body .dp-site .dp-register-modal input:not([type="checkbox"]),
    body .dp-site .dp-register-modal select{
        min-height:48px;
        font-size:16px !important;
    }

    body .dp-site .dp-home-booking-title h2{
        font-size:clamp(28px,8.4vw,38px);
    }
}
