/* Purpose-built iPad layouts between the phone and desktop compositions. */
@media (min-width:768px) and (max-width:900px) {
  .berry-preview .bp-nav {
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:14px;
    min-height:78px;
    padding-block:12px;
  }
  .berry-preview .bp-nav>.bp-brand {grid-column:1;grid-row:1;justify-self:start}
  .berry-preview .bp-nav>.bp-reserve-nav {grid-column:2;grid-row:1;justify-self:end;min-height:48px;padding:9px 21px;font-size:14px}
  .berry-preview .bp-nav>.bp-menu-button {
    display:flex;
    grid-column:3;
    grid-row:1;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-width:86px;
    min-height:48px;
    margin:0;
    padding:8px 12px;
    font:600 13px/1 var(--bp-body);
    cursor:pointer;
  }
  .berry-preview .bp-nav>.bp-menu-button span {font-size:21px;line-height:1}
  .berry-preview .bp-nav>nav {
    position:absolute;
    z-index:5;
    top:100%;
    left:0;
    right:0;
    width:100%;
    margin:0;
    padding:16px 20px 20px;
    border:1px solid #5b5048;
    background:#1d1c1b;
    box-shadow:0 20px 45px #0008;
  }
  .berry-preview.bp-js .bp-nav>nav:not(.is-open) {display:none}
  .berry-preview .bp-nav>nav ul {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 20px}
  .berry-preview .bp-nav>nav li a {min-height:50px;font-size:16px}

  .bp-game-grid {
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:clamp(285px,39vw,330px);
    gap:18px;
    margin-inline:calc(var(--bp-space) * -1);
    padding:0 var(--bp-space) 18px;
    overflow-x:auto;
    scroll-padding-inline:var(--bp-space);
    scroll-snap-type:x mandatory;
    overscroll-behavior-inline:contain;
  }
  .bp-game-card,.bp-game-card__content {min-height:600px;scroll-snap-align:start}
  .bp-game-card__top>p {font-size:16px}
  .bp-review-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .bp-review-card {min-height:345px}
  .bp-review-card:last-child {grid-column:1/-1;min-height:270px}
  .bp-review-card:last-child blockquote p {max-width:620px}

  .bp-service-booking__grid,.bp-inquiry__grid {grid-template-columns:1fr;gap:52px}
  .bp-service-booking__aside,.bp-inquiry__aside {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:48px;
    align-items:start;
  }
  .bp-service-booking__aside>.bp-eyebrow,.bp-inquiry__aside>.bp-eyebrow {grid-column:1/-1}
  .bp-service-booking__aside>h2,.bp-inquiry__aside>h2 {grid-column:1;grid-row:2}
  .bp-service-booking__aside>p:not(.bp-eyebrow),.bp-inquiry__aside>p:not(.bp-eyebrow) {grid-column:1;grid-row:3}
  .bp-service-booking dl,.bp-inquiry dl {grid-column:2;grid-row:2 / span 2;align-self:center;margin-top:0}
  .bp-form-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .bp-form-grid__wide {grid-column:1/-1}

  .bp-booking-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .bp-booking-grid a:nth-child(2) {border-right:0}
  .bp-booking-grid a:last-child {grid-column:1/-1;border-top:1px solid #615149}
}

@media (min-width:700px) and (max-width:800px) {
  .bp-booking-switch {display:flex;flex-wrap:nowrap;justify-content:center;gap:10px;width:100%}
  .berry-preview .bp-booking-switch a {flex:1 1 0;min-width:0;min-height:54px;padding:9px 7px;font-size:13.5px}
}

@media (min-width:768px) and (max-width:834px) {
  .bp-service-hero__copy {padding-top:78px}
  .bp-service-hero__copy .bp-breadcrumb {margin-bottom:23px}
  .bp-service-hero__copy h1 {font-size:clamp(54px,8vw,68px)}
}

/* The navigation starts collapsed before the footer script runs, preventing a
   full menu flash and a large layout shift during the first paint. */
@media (max-width:900px) {
  html.bp-js .berry-preview .bp-nav>nav:not(.is-open) {display:none}
}
@media (min-width:360px) and (max-width:767px) {
  .berry-preview .bp-nav {display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px}
  .berry-preview .bp-nav>.bp-brand {grid-column:1;grid-row:1;justify-self:start}
  .berry-preview .bp-nav>.bp-reserve-nav {grid-column:2;grid-row:1;margin:0;justify-self:end}
  .berry-preview .bp-nav>.bp-menu-button {grid-column:3;grid-row:1;margin:0}
  .berry-preview .bp-nav>nav {grid-column:1/-1;grid-row:2}
}
@media (max-width:389px) {
  .berry-preview .bp-nav>.bp-reserve-nav {padding-inline:10px;font-size:12px;gap:6px}
  .berry-preview .bp-nav>.bp-menu-button {font-size:0;min-width:44px;padding-inline:8px}
}
