/* BPEATS-MUSIC: isolated viewport fit for the homepage newsletter dialog. */
.page-home .floating-newsletter-modal{
    box-sizing:border-box;
    padding:clamp(12px,2.2vh,24px)!important;
}
.page-home .floating-newsletter-card{
    box-sizing:border-box;
    width:min(510px,calc(100vw - 24px))!important;
    max-height:none!important;
    overflow:hidden!important;
    scrollbar-width:none;
}
.page-home .floating-newsletter-card::-webkit-scrollbar{
    display:none;
}

@media (max-width:680px){
    .page-home .floating-newsletter-modal{
        padding:10px!important;
    }
    .page-home .floating-newsletter-card{
        width:min(100%,510px)!important;
        padding:1.2rem!important;
        border-radius:24px!important;
    }
    .page-home .floating-newsletter-card h2{
        font-size:clamp(1.45rem,6.4vw,1.85rem)!important;
        line-height:1.05!important;
        margin:.08rem 0 .42rem!important;
    }
    .page-home .floating-newsletter-copy{
        font-size:.8rem!important;
        line-height:1.36!important;
        margin:0 0 .62rem!important;
    }
    .page-home .floating-newsletter-form{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:.46rem!important;
    }
    .page-home .floating-newsletter-form input{
        min-width:0!important;
        min-height:42px!important;
        padding:.56rem .76rem!important;
    }
    .page-home .floating-newsletter-form input[type=email],
    .page-home .floating-newsletter-form .newsletter-language-choice,
    .page-home .floating-newsletter-form .dmm-spam-guard,
    .page-home .floating-newsletter-form button{
        grid-column:1/-1!important;
    }
    .page-home .floating-newsletter-form button{
        min-height:44px!important;
    }
    .page-home .floating-newsletter-form .newsletter-language-choice{
        padding:.3rem .38rem .38rem!important;
        margin:0!important;
    }
    .page-home .floating-newsletter-form .newsletter-language-option{
        min-height:28px!important;
        padding:.28rem .42rem!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard{
        margin:4px 0 0!important;
        padding:8px 10px!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard-label{
        grid-template-columns:minmax(0,1fr) 104px!important;
        gap:5px 10px!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard-label input{
        width:104px!important;
        min-height:36px!important;
        padding:.38rem .5rem!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard small{
        margin-top:3px!important;
        font-size:.61rem!important;
        line-height:1.2!important;
    }
}

@media (max-height:700px){
    .page-home .floating-newsletter-modal{
        padding:8px!important;
    }
    .page-home .floating-newsletter-card{
        width:min(500px,calc(100vw - 16px))!important;
        padding:.9rem 1rem!important;
        border-radius:22px!important;
    }
    .page-home .floating-newsletter-close{
        top:9px!important;
        right:9px!important;
        width:32px!important;
        height:32px!important;
        font-size:1.12rem!important;
    }
    .page-home .floating-newsletter-card>.eyebrow{
        font-size:.58rem!important;
        line-height:1.1!important;
    }
    .page-home .floating-newsletter-card h2{
        font-size:clamp(1.3rem,5vw,1.65rem)!important;
        line-height:1.02!important;
        margin:.04rem 2rem .32rem 0!important;
    }
    .page-home .floating-newsletter-copy{
        font-size:.74rem!important;
        line-height:1.28!important;
        margin:0 0 .44rem!important;
    }
    .page-home .floating-newsletter-form{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:.34rem!important;
    }
    .page-home .floating-newsletter-form input{
        min-width:0!important;
        min-height:39px!important;
        padding:.48rem .66rem!important;
        font-size:.82rem!important;
    }
    .page-home .floating-newsletter-form input[type=email],
    .page-home .floating-newsletter-form .newsletter-language-choice,
    .page-home .floating-newsletter-form .dmm-spam-guard,
    .page-home .floating-newsletter-form button{
        grid-column:1/-1!important;
    }
    .page-home .floating-newsletter-form button{
        min-height:41px!important;
        padding:.58rem .9rem!important;
        font-size:.72rem!important;
    }
    .page-home .floating-newsletter-form .newsletter-language-choice{
        padding:.2rem .3rem .3rem!important;
        margin:0!important;
        border-radius:13px!important;
    }
    .page-home .floating-newsletter-form .newsletter-language-choice legend{
        font-size:.55rem!important;
    }
    .page-home .floating-newsletter-form .newsletter-language-options{
        gap:.28rem!important;
    }
    .page-home .floating-newsletter-form .newsletter-language-option{
        min-height:25px!important;
        padding:.2rem .36rem!important;
    }
    .page-home .floating-newsletter-form .newsletter-language-option span{
        font-size:.68rem!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard{
        margin:2px 0 0!important;
        padding:6px 8px!important;
        border-radius:13px!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard-label{
        grid-template-columns:minmax(0,1fr) 82px!important;
        gap:3px 8px!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard-label span{
        font-size:.54rem!important;
        line-height:1!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard-label strong{
        font-size:.7rem!important;
        line-height:1.12!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard-label input{
        width:82px!important;
        min-height:32px!important;
        padding:.3rem .4rem!important;
    }
    .page-home .floating-newsletter-form .dmm-spam-guard small{
        margin-top:2px!important;
        font-size:.55rem!important;
        line-height:1.15!important;
    }
}
