html,body{max-width:100%;overflow-x:hidden}
img,svg,video,iframe{max-width:100%}
.nav>*,.hero-grid>*,.booking-panel>*,.booking-form>*,.request-grid>*,.house-intro>*,.house-facts>*,.room-gallery>*,.location-grid>*,.location-facts>*,.preview-card>*,.cards>*,.footer-grid>*{min-width:0}
.calendar-grid,.calendar-weekdays,.cal-day{min-width:0}
.wa-icon{width:1.15em;height:1.15em;display:inline-block;flex:0 0 auto;fill:currentColor;vertical-align:-.16em}
.footer-wa{display:inline-flex;align-items:center;gap:7px}
.mobile-bottom-nav .nav-ico .wa-icon{width:22px;height:22px;display:block;vertical-align:0}
@media(max-width:760px){
  .nav{
    min-width:0;
    height:auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"logo lang" "menu menu";
    align-items:center;
    column-gap:10px;
    row-gap:8px;
    padding:8px 0 9px;
  }
  .nav>.logo{grid-area:logo;font-size:23px}
  .lang-wrap{grid-area:lang;min-width:0;justify-self:end}
  .lang-select{
    width:118px;
    max-width:118px;
    min-width:118px;
    padding:7px 20px 7px 7px;
    font-size:12px;
  }
  .navlinks{
    grid-area:menu;
    width:100%;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:6px;
    font-size:11px;
  }
  .navlinks a,
  .navlinks a:not(.header-book):not(.pill),
  .navlinks .pill{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    min-height:36px;
    padding:7px 4px;
    border-radius:10px;
    text-align:center;
    white-space:nowrap;
    font-size:11px;
    line-height:1.1;
    font-weight:700;
  }
  .navlinks a:not(.header-book),
  .navlinks .pill{
    border:1px solid #cfe1dc;
    background:#edf7f4;
    color:var(--green);
    box-shadow:0 2px 8px rgba(47,111,98,.05);
  }
  .header-book{padding:7px 4px}
  section{scroll-margin-top:118px}
  .booking-strip,.calendar-box,.request-box,.room-block,.preview-card,.location-copy,.card{max-width:100%}
  .cal-day{overflow:hidden}
  .cal-price{overflow:hidden;text-overflow:ellipsis}
  .room-title,.room-title-main{min-width:0}
}
@media(max-width:360px){
  .navlinks{gap:4px}
  .navlinks a,
  .navlinks a:not(.header-book):not(.pill),
  .navlinks .pill{font-size:10px;padding:7px 2px}
  .lang-select{width:112px;max-width:112px;min-width:112px}
}
