/* reserve.css — Seoul Loft Apartments — reserve.html only
   Moved from inline <style> block in reserve.html
   Contains: reserve-page layout, reserve-hero, Cloudbeds embed, booking-fallback,
             floating-chat (now in page-base.css — this section kept for reference)
   ------------------------------------------------------------------ */

  .header-logo__img {
    height: 40px;
    width: auto;
    display: block;
  }
  @media (max-width: 991px) {
    .header-logo__img {
      height: 34px;
    }
  }

  /* SAFETY: prevent blank screen if animation JS fails */
  .wrap,
  .wrap.animsition,
  .animsition-loading,
  .animsition-loading .wrap {
    opacity: 1 !important;
    visibility: visible !important;
  }

  .reserve-page {
    background: #ffffff;
  }

  .reserve-page-main {
    background: #fff;
  }

  .reserve-hero {
    padding: 120px 0 36px;
    background: #f5f3ee;
  }

  .reserve-title {
    margin: 0 0 10px;
    font-size: clamp(36px, 5vw, 60px);
    line-height: 1.05;
    color: #111;
  }

  .reserve-subtitle {
    margin: 0;
    font-size: 18px;
    line-height: 1.6;
    max-width: 720px;
    color: #4f493f;
  }

  .reserve-engine-section {
    padding: 0 0 80px;
    background: #fff;
  }

  .reserve-engine-wrap {
    width: 100%;
    min-height: calc(100vh - 200px);
    position: relative;
  }

  cb-immersive-experience {
    display: block;
    width: 100%;
    min-height: calc(100vh - 200px);
  }

  .booking-fallback {
    display: none;
    text-align: center;
    padding: 80px 20px;
  }

  .booking-fallback a {
    display: inline-block;
    margin-top: 20px;
    padding: 14px 28px;
    background: #111;
    color: #fff;
    text-decoration: none;
  }

  @media (max-width: 768px) {
    .reserve-hero {
      padding: 80px 0 24px;
    }

    .reserve-engine-section {
      padding-bottom: 48px;
    }

    .reserve-engine-wrap,
    cb-immersive-experience {
      min-height: calc(100vh - 180px);
    }
  }


    @media (max-width: 991px) {
      /* Indents dropdown buttons further right in the vertical mobile menu */
      .header-nav .nav-item.dropdown .dropdown-menu {
        left: 45px !important;
        top: 5px !important; /* Optional: Pulls buttons slightly closer to 'Reserve' on mobile */
      }
      
      /* Optional: Adjusts box width for mobile screen to prevent overflow */
      .header-nav .nav-item.dropdown .dropdown-menu {
        width: 120px !important;
      }
    }
  
/* Floating Chat */
.floating-chat { position: fixed; bottom: 30px; right: 30px; display: flex; flex-direction: column; gap: 15px; z-index: 9999; align-items: flex-end; }
.chat-btn-wrapper { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.chat-label { background: rgba(255, 255, 255, 0.95); color: #333; padding: 6px 14px; border-radius: 20px; font-size: 13px; font-weight: 700; box-shadow: 0 2px 10px rgba(0,0,0,0.1); border: 1px solid #eee; white-space: nowrap; pointer-events: none; opacity: 0; transform: translateX(10px); transition: opacity 0.25s ease, transform 0.25s ease; }
.chat-btn-wrapper:hover .chat-label { opacity: 1; transform: translateX(0); }
.chat-btn { width: 60px; height: 60px; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 15px rgba(0,0,0,0.2); transition: transform 0.2s ease; background-color: #fff; }
.chat-btn-wrapper:hover .chat-btn { transform: scale(1.08); }
.chat-btn--whatsapp { background-color: #25D366; }
.chat-btn--kakao { background-color: #FAE100; }
.chat-btn svg { width: 34px; height: 34px; fill: white; }
.chat-btn--kakao svg { fill: #3C1E1E; }
@media (max-width: 767px) { .floating-chat { bottom: 20px; right: 20px; } .chat-label { display: none; } .chat-btn { width: 50px; height: 50px; } .chat-btn svg { width: 28px; height: 28px; } }
