@media (max-width: 767px) {
    html, body { max-width: 100%; overflow-x: hidden; }
    .homepage .navbar-b,
    .homepage .navbar-b.navbar-reduce { position: absolute; top: 0; right: 0; left: 0; z-index: 20; height: 68px; padding: 0; background: rgba(19, 21, 18, .96); border-bottom: 1px solid rgba(215, 178, 116, .34); box-shadow: 0 8px 24px rgba(0, 0, 0, .22); }
    .homepage .navbar-b .container { width: calc(100% - 28px); min-height: 68px; padding: 0; }
    .homepage .navbar-b .navbar-brand { margin-right: auto; }
    .homepage .brand-wordmark { gap: 9px; }
    .homepage .brand-monogram { width: 34px; height: 34px; font-size: .82rem; }
    .homepage .brand-copy { font-size: .77rem; letter-spacing: .12em; }
    .homepage .brand-copy small { font-size: .46rem; letter-spacing: .18em; }
    .homepage .navbar-toggler { display: flex; align-items: center; justify-content: center; width: 43px; height: 43px; margin: 0; padding: 0; border: 1px solid rgba(223, 190, 132, .7); border-radius: 50%; background: rgba(22, 48, 51, .86); }
    .homepage .navbar-toggler span { display: block; width: 21px; height: 3px; margin: 3px 0; background: #f1dfbe; }
    .homepage .navbar-collapse { position: absolute; top: 68px; right: 14px; left: 14px; padding: 8px 14px 12px; background: rgba(18, 21, 19, .98); border: 1px solid rgba(215, 178, 116, .35); box-shadow: 0 15px 30px rgba(0, 0, 0, .3); }
    .homepage .navbar-collapse .navbar-nav { gap: 0; }
    .homepage .navbar-collapse .nav-link { padding: 9px 4px !important; color: #f1e4cf !important; font-size: 12px; border-bottom: 1px solid rgba(255, 255, 255, .07); }
    .homepage .navbar-collapse .book-now .nav-link { margin-top: 8px; padding: 10px 14px !important; text-align: center; border: 0; }
    .homepage #slider-home { padding-top: 68px; }
    .homepage #slider-home .parallax-slider .swiper-slide { height: auto; min-height: calc(100svh - 68px); padding: 0; }
    .homepage #slider-home .bg-img { min-height: calc(100svh - 68px); background-position: 59% center; }
    .homepage #slider-home .container { width: 100%; padding: 0 18px; }
    .homepage #slider-home .row { min-height: calc(100svh - 68px); }
    .homepage #slider-home .col-lg-8.offset-lg-2 { display: flex; align-items: center; justify-content: center; min-height: calc(100svh - 68px); padding: 36px 0 28px; }
    .homepage #slider-home .caption { width: 100%; max-width: 420px; padding: 0 2px; text-align: center; }
    .homepage #slider-home .caption::before { inset: -24px -10px -28px; background: transparent; }
    .homepage .hero-label { gap: 8px; margin-bottom: 16px; font-size: 9px; letter-spacing: .15em; line-height: 1.4; white-space: nowrap; }
    .homepage .hero-label-line { width: 28px; }
    .homepage #slider-home .parallax-slider .caption .hero-title { max-width: 100%; margin: 0 auto 14px; font-size: clamp(2.45rem, 11vw, 3.35rem); line-height: 1.04; letter-spacing: 0; text-wrap: balance; }
    .homepage .hero-subtitle { max-width: 330px; margin: 0 auto 20px; font-size: 1rem; line-height: 1.55; }
    .homepage .hero-benefits { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin: 0 auto 20px; }
    .homepage .hero-benefit { width: auto; min-height: 52px; padding: 8px 8px; gap: 6px; border-radius: 5px; align-items: center; justify-content: flex-start; text-align: left; font-size: 10px; line-height: 1.2; }
    .homepage .hero-benefit i { flex: 0 0 15px; font-size: 12px; text-align: center; }
    .homepage .hero-benefit span { min-width: 0; }
    .homepage .hero-benefit strong, .homepage .hero-benefit small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .homepage .hero-benefit strong { font-size: 10px; }
    .homepage .hero-benefit small { margin-top: 3px; color: rgba(240, 229, 209, .7); font-size: 8px; }
    .homepage .hero-cta-group { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; }
    .homepage .hero-cta { min-width: 0; width: 100%; padding: 12px 8px; border-radius: 6px; font-size: 12px; }
    .homepage .hero-scroll-cue { display: inline-flex; margin-top: 18px; font-size: 9px; }
}

@media (max-width: 380px) {
    .homepage .navbar-b .container { width: calc(100% - 20px); }
    .homepage .brand-copy { font-size: .7rem; }
    .homepage #slider-home .container { padding: 0 13px; }
    .homepage #slider-home .col-lg-8.offset-lg-2 { padding-top: 27px; }
    .homepage #slider-home .parallax-slider .caption .hero-title { font-size: 2.35rem; }
    .homepage .hero-subtitle { font-size: .92rem; }
    .homepage .hero-benefit { min-height: 49px; padding: 7px 6px; }
    .homepage .hero-benefit strong { font-size: 9px; }
    .homepage .hero-benefit small { font-size: 7px; }
}
