/* Mobile line lengths follow meaning and available width, not fixed character counts. */
@media(max-width:760px){
main h1,main h2,main h3,main p,main li,main summary,main figcaption,.bip-reserve p{word-break:keep-all;overflow-wrap:anywhere}
main h1,main h2,main h3,main summary{text-wrap:balance}
main p,main li,.bip-reserve p{text-wrap:pretty}
main .mobile-short-copy{text-wrap:balance}
.mobile-balanced-copy .copy-line{display:block;text-wrap:balance}
main .mobile-short-copy br:not(:has(+br)){/* Existing paragraph breaks remain intentional. */}
main .hb-full-lead{font-size:14px}
}

main p+p{margin-top:max(1em,14px)}
main h1,main h2,main h3,.button,.btn,.hb-full-primary,.header-cta{text-wrap:balance;word-break:keep-all}
@media(max-width:760px){.button,.btn,.hb-full-primary,.header-cta{text-wrap:balance;word-break:keep-all}}
/* Alternating surfaces distinguish adjoining sections without extra separators. */
body main>#bip-glance,body main>#people,body main>#bip-performance,body main>#bip-blog-archive,body main>#experience,body main>#contact,body main>#visit{background:#fff}
body main>#bip-first-visit,body main>#bip-interior,body main>#bip-special-day,body main>#your-night,body main>#faq,body main>.hb-ending-cta{background:#fff6f9}

@media(max-width:760px){.hb-full-hero h1 span:first-child{font-size:1.04em}}

.journal .journal-three-lines>span{display:block;text-wrap:pretty}

@media(max-width:760px){.choice-mobile-title>span{display:block}}

.reservation-mobile-title>span{display:block}
@media(max-width:760px){main.bip-sub h1.reservation-mobile-title{font-size:clamp(20px,6vw,32px);line-height:1.4;letter-spacing:-.04em}.reservation-mobile-title>span{white-space:nowrap}}
