/* Booking Engine page — light theme matching the home page.
   Wrapper: .pms-page.be-page (reuses scoped PMS-page rules: breadcrumb, os-icon, df-visual--img);
   hero reuses .pms-hero / .fdb-chip. Booking widget (.be-mockup-*) restyled light here. */

/* ── Hero booking widget, light ───────────────────────────────────────────── */
.be-page .be-mockup-wrap { width: 100%; background: #fff; border: 1px solid var(--up-line); border-radius: 18px; box-shadow: var(--up-shadow-lg); font-family: var(--up-font); }
.be-page .be-mockup-bar { background: #f3f4f6; border-bottom: 1px solid #e7e9ec; }
.be-page .be-mockup-url { background: #fff; border: 1px solid #e3e7eb; color: #6b7590; font-size: .7rem; }
.be-page .be-mockup-url::before { content: ''; width: 8px; height: 8px; border-radius: 2px; border: 1.5px solid #4b7d3a; }
.be-page .be-mockup-body { padding: 20px 22px 18px; gap: 16px; }
.be-page .be-hotel-hdr { background: #fff; border: 1px solid #e3e7eb; }
.be-page .be-hotel-logo { background: var(--up-accent-deep); color: #fff; font-weight: 800; font-size: .8rem; letter-spacing: .02em; }
.be-page .be-hotel-name { color: #2b3440; font-size: .95rem; font-weight: 700; }
.be-page .be-hotel-loc { color: #6b7590; font-size: .72rem; }
.be-page .be-hotel-loc b { color: #c9933a; }
.be-page .be-search-field { background: #fff; border: 1px solid #d9dde3; }
.be-page .be-sf-label { color: #8a94a0; font-size: .58rem; }
.be-page .be-sf-val { color: #2b3440; font-size: .8rem; }
.be-page .be-search-btn { background: var(--up-accent-deep); font-family: var(--up-font); font-size: .78rem; }
.be-page .be-rooms-title { color: #2b3440; font-size: .85rem; font-weight: 700; }
.be-page .be-rooms-avail { color: #4b7d3a; font-weight: 600; font-size: .68rem; }
.be-page .be-room { background: #fff; border: 1px solid #e3e7eb; padding: 10px 12px; box-shadow: 0 1px 3px rgba(0,0,0,.04); }
.be-page .be-room:nth-child(2) { border: 2px solid var(--up-accent-deep); background: #f6faf7; }
.be-page .be-room:nth-child(3) { border-color: #e3e7eb; background: #fff; }
.be-page .be-room-em { width: 64px; height: 48px; border-radius: 8px; overflow: hidden; background: #eee !important; padding: 0; }
.be-page .be-room-em img { width: 100%; height: 100%; object-fit: cover; display: block; }
.be-page .be-room-name { color: #2b3440; font-size: .8rem; font-weight: 700; }
.be-page .be-room-desc { color: #8a94a0; font-size: .66rem; }
.be-page .be-room-tag { background: var(--up-accent-tint); color: var(--up-accent-deep); font-size: .52rem; }
.be-page .be-room-price-val { color: #2b3440; font-size: 1.05rem; font-weight: 800; }
.be-page .be-room-price-sub { color: #8a94a0; }
.be-page .be-select-btn { font-family: var(--up-font); font-size: .66rem; }
.be-page .be-select-btn.default { background: #fff; border: 1px solid #d2d6db; color: #3a4253; }
.be-page .be-select-btn.primary { background: var(--up-accent-deep); }
.be-page .be-trust-row { border-top: 1px solid #eef0f2; gap: 16px; padding: 10px 0 0; flex-wrap: wrap; }
.be-page .be-trust-badge { color: #6b7590; font-size: .66rem; }
.be-page .be-trust-badge span { color: #3a4253; }
.be-page .be-trust-badge i { width: 14px; height: 14px; border-radius: 50%; background: #e8f1e4; color: #4b7d3a; font-style: normal; font-size: .55rem; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; }

/* ── Features: line icons, green accent cell ─────────────────────────────── */
.be-page .feat-cell .feat-icon {
  width: 52px; height: 52px; border-radius: 14px; background: var(--up-accent-tint);
  display: flex; align-items: center; justify-content: center; font-size: 0; margin-bottom: 18px;
}
.be-page .feat-icon svg { width: 26px; height: 26px; stroke: var(--up-accent-deep); fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.be-page .accent-cell .feat-icon { background: rgba(255,255,255,.12); }
.be-page .accent-cell .feat-icon svg { stroke: #fff; }
.be-page .feat-title { color: var(--up-accent-deep); }
.be-page .accent-cell .feat-title { color: #fff; }

/* ── Deep features: collage column wider ─────────────────────────────────── */
@media (min-width: 1101px) {
  .be-page .deep-features-grid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 56px; }
}

/* ── Testimonials ─────────────────────────────────────────────────────────── */
.be-page .testi-avatar { background: var(--up-accent-tint); color: var(--up-accent-deep); font-family: var(--up-font); font-weight: 700; font-size: 15px; }

@media (max-width: 640px) {
  .be-page .be-search-row { grid-template-columns: 1fr 1fr; }
  .be-page .be-room { flex-wrap: wrap; }
  .be-page .be-room-em { width: 52px; height: 42px; }
}

/* Chip clear of the trust badges */
.be-page .fdb-chip.c2 { bottom: -1.9rem; }
