/* The Nest content sections on tablets and phones. */
@media (max-width:1024px) {
  .nest-content-section { box-sizing:border-box; }
  .nest-section-heading { min-width:0; text-align:center; }
  .nest-section-heading>span:nth-child(2) { min-width:0; line-height:1.5; overflow-wrap:anywhere; }
  .nest-highlights-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:12px!important; }
  .nest-highlight-card { min-width:0; min-height:160px; padding:18px 14px!important; }
  .nest-highlight-card>div:nth-child(2) { font-size:14px!important; }
  .nest-highlight-card>div:nth-child(3) { font-size:12px!important; line-height:1.7!important; }
  .nest-rooms-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:16px!important; }
  .nest-room-card { min-width:0; }
  .nest-room-card:last-child { grid-column:1/-1; width:min(100%,560px); justify-self:center; }
  .nest-room-card>div:nth-child(2) { min-width:0; }
  .nest-room-card>div:nth-child(2)>div:nth-child(3) { font-size:12px!important; }
  .nest-room-card>div:nth-child(2)>div:nth-child(4)>div { font-size:12px!important; }
  .nest-room-card a { min-height:44px; text-align:center; line-height:1.5; }
  .nest-timeline-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:14px!important; }
  .nest-timeline-line { display:none; }
  .nest-timeline-item { min-width:0; padding:16px 10px!important; border:1px solid #dcc8a4; border-radius:12px; background:#fffaf2; }
  .nest-timeline-item>div:nth-child(2) { font-size:13px!important; }
  .nest-timeline-item>div:nth-child(3),.nest-timeline-item>div:nth-child(4) { font-size:11.5px!important; }
  .nest-info-grid,.nest-faq-booking-section { grid-template-columns:minmax(0,1fr)!important; gap:18px!important; }
  .nest-included-card,.nest-notices-card,.nest-faq-panel,.nest-booking-card { min-width:0; }
  .nest-included-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  .nest-included-grid>div,.nest-notices-card>div:nth-child(2)>div { min-width:0; }
  .nest-notices-card>div:nth-child(2) { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nest-faq-panel { order:1!important; }
  .nest-booking-card { order:2!important; }
  .nest-faq-question>div { min-width:0; }
  .nest-faq-question>div>span:last-child { min-width:0; overflow-wrap:anywhere; }
  .nest-booking-fields { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:14px!important; }
  .nest-booking-fields>div,.nest-booking-counts>div { min-width:0; }
  .nest-booking-fields input { width:100%; font-size:16px!important; }
  .nest-booking-fields>div>div:nth-child(2),.nest-room-select { min-height:44px; }
  .nest-booking-counts { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:14px!important; }
  .nest-booking-counts>div>div:nth-child(2) { min-height:44px; }
  .nest-booking-counts [role="button"] { width:30px!important; height:30px!important; }
  .nest-booking-addons { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:10px!important; }
  .nest-booking-addons>div { min-width:0; min-height:42px; padding:8px; border:1px solid #dcc8a4; border-radius:8px; overflow-wrap:anywhere; }
  .nest-booking-card :is(input,[role="button"],[role="checkbox"]):focus-visible,.nest-faq-question:focus-visible { outline:2px solid #a8804a!important; outline-offset:2px; }
  #nest-booking-submit { min-height:48px; text-align:center; line-height:1.5; }
}
@media (max-width:760px) {
  /* Keep the video heading and player in the normal flow so the next title stays visible. */
  .nest-media-section { align-content:start!important; row-gap:22px!important; padding-bottom:20px!important; margin-bottom:28px!important; }
  .nest-media-section .nest-video-column { display:flex!important; flex-direction:column!important; gap:10px!important; height:auto!important; min-height:0!important; }
  .nest-media-section .nest-media-heading { position:static!important; inset:auto!important; height:auto!important; min-height:26px!important; margin:0!important; text-align:center; }
  .nest-media-section .nest-video-column>.nest-video-card { flex:none!important; height:250px!important; min-height:250px!important; max-height:none!important; margin-top:0!important; }
  .nest-highlights-section { position:relative; clear:both; }
  .nest-highlights-section,.nest-rooms-section,.nest-timeline-section,.nest-info-grid,.nest-faq-booking-section { padding-inline:8px!important; }
  .nest-section-heading { display:block!important; margin-bottom:15px!important; }
  .nest-section-heading>span:first-child,.nest-section-heading>span:last-child { display:none; }
  .nest-section-heading>span:nth-child(2) { display:block; font-size:clamp(17px,4.8vw,21px)!important; line-height:1.55!important; padding:0 4px; }
  .nest-highlights-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:10px!important; }
  .nest-highlight-card { min-height:0; padding:14px 10px!important; gap:7px!important; }
  .nest-highlight-card>div:nth-child(2) { font-size:12.5px!important; }
  .nest-highlight-card>div:nth-child(3) { font-size:11.5px!important; }
  .nest-rooms-grid { grid-template-columns:minmax(0,1fr)!important; }
  .nest-room-card:last-child { grid-column:auto; width:100%; }
  .nest-timeline-panel { padding:15px 12px!important; }
  .nest-timeline-grid { grid-template-columns:minmax(0,1fr)!important; gap:10px!important; }
  .nest-timeline-item { display:grid!important; grid-template-columns:62px minmax(0,1fr); grid-template-rows:auto auto 1fr; column-gap:13px!important; align-items:start!important; text-align:start!important; padding:13px!important; }
  .nest-timeline-item>div:first-child { grid-row:1/4; }
  .nest-timeline-item>div:nth-child(2),.nest-timeline-item>div:nth-child(3),.nest-timeline-item>div:nth-child(4) { min-width:0; }
  .nest-included-card,.nest-notices-card { padding:18px 13px!important; }
  .nest-included-grid,.nest-notices-card>div:nth-child(2) { grid-template-columns:minmax(0,1fr)!important; }
  .nest-faq-question { padding:14px 12px!important; }
  .nest-faq-answer { padding-inline:14px!important; font-size:11.5px!important; }
  .nest-booking-card { padding:19px 14px!important; }
  .nest-booking-fields,.nest-booking-counts,.nest-booking-addons { grid-template-columns:minmax(0,1fr)!important; gap:13px!important; }
  .nest-booking-counts>div>div:first-child { text-align:start!important; }
  .nest-booking-counts>div>div:nth-child(2) { padding-inline:13px!important; }
}

@media (max-width:760px) {
  html:is([lang="en"],[lang="ru"]) .nest-timeline-item {
    grid-template-columns:56px minmax(0,1fr);
    grid-template-rows:auto auto auto;
    column-gap:12px!important;
    row-gap:5px!important;
    align-content:start;
    padding:15px 13px!important;
    min-height:0;
  }
  html:is([lang="en"],[lang="ru"]) .nest-timeline-item>div:first-child {
    width:56px!important;
    height:56px!important;
    grid-column:1;
    grid-row:1/4;
    align-self:center;
  }
  html:is([lang="en"],[lang="ru"]) .nest-timeline-item>div:nth-child(n+2) {
    grid-column:2;
    width:100%;
    min-width:0;
    text-align:start;
    white-space:normal;
    word-break:normal;
    overflow-wrap:break-word;
    hyphens:auto;
  }
  html:is([lang="en"],[lang="ru"]) .nest-timeline-item>div:nth-child(2) { font-size:13px!important; line-height:1.45!important; }
  html:is([lang="en"],[lang="ru"]) .nest-timeline-item>div:nth-child(3) { font-size:11px!important; line-height:1.4!important; font-variant-numeric:tabular-nums; }
  html:is([lang="en"],[lang="ru"]) .nest-timeline-item>div:nth-child(4) { font-size:11.5px!important; line-height:1.65!important; }
}
