.stacked-form { display:grid; gap:10px; }
.trip-summary-panel { position:sticky; top:92px; display:grid; gap:14px; border:1px solid #bdd3ff; border-radius:8px; background:#fff; padding:18px; box-shadow:0 18px 46px rgba(7,26,56,.12); }
.trip-summary-panel h3 { margin:0; color:var(--navy); }
.summary-line { display:flex; justify-content:space-between; gap:14px; border-top:1px solid var(--line); padding-top:12px; }
.summary-line:first-child { border-top:0; padding-top:0; }
.summary-line span { flex:0 0 110px; color:var(--muted); font-size:12px; font-weight:900; }
.summary-line b, .summary-line strong { color:var(--navy); text-align:right; }
.summary-line strong { color:var(--blue); font-size:18px; }
.trip-summary-panel .button-link, .trip-summary-panel button { width:100%; }
.customer-review-section { background:linear-gradient(180deg,#fff 0%,#f7faff 100%); }
.customer-review-section .section-head { align-items:flex-end; }
.review-page-layout { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:22px; align-items:start; }
.review-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:16px 0; }
.review-channel-card { display:grid; gap:10px; align-content:start; min-height:188px; border:1px solid var(--line); border-radius:8px; background:#fff; padding:16px; box-shadow:0 12px 28px rgba(7,26,56,.05); overflow-wrap:anywhere; }
.review-channel-card b { color:var(--navy); font-size:18px; }
.review-channel-card span { color:var(--muted); font-size:13px; line-height:1.45; }
.review-channel-card .button-link { align-self:end; justify-content:center; min-height:38px; }
.review-stars { color:#f5a400; font-weight:950; letter-spacing:2px; }
.review-form-panel { display:grid; gap:14px; border:1px solid var(--line); border-radius:8px; background:#fff; padding:18px; }
.review-form-panel h3 { margin:0; color:var(--navy); }
.review-form-panel label { display:grid; gap:6px; color:var(--navy); font-size:13px; font-weight:900; }
.review-form-panel input, .review-form-panel select, .review-form-panel textarea { width:100%; border:1px solid var(--line); border-radius:8px; padding:10px 12px; font:inherit; }
.review-form-panel textarea { min-height:108px; resize:vertical; }
.review-form-panel button[type="submit"] { min-height:44px; }
.review-form-panel[hidden] { display:none; }
.review-trip-summary { display:grid; grid-template-columns:170px minmax(0,1fr) auto; gap:16px; align-items:center; overflow-wrap:anywhere; }
.review-trip-summary img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:8px; border:1px solid var(--line); background:#eef3f7; }
.review-trip-summary h3, .review-empty-state h3 { margin:0; color:var(--navy); }
.review-trip-summary p, .review-empty-state p { margin:0; }
.review-action-row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:flex-end; }
.review-empty-state { display:grid; gap:12px; border:1px solid #bdd3ff; border-radius:8px; padding:18px; background:#f8fbff; }
.category-rating-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.toggle-line { display:flex !important; grid-template-columns:none !important; align-items:center; gap:10px; }
.toggle-line input { width:auto; }
.reviewer-confirmation-panel { border:1px solid var(--line); border-radius:12px; padding:18px; background:#f8fbff; box-shadow:0 12px 30px rgba(5,22,56,.08); }
.reviewer-confirmation-panel h3 { margin:0 0 8px; color:var(--navy); font-size:20px; }
.reviewer-confirmation-panel p { margin:0 0 12px; color:var(--text); }
.reviewer-confirmation-panel ul { margin:0 0 16px 20px; color:var(--muted); }
.reviewer-confirmation-actions { display:flex; flex-wrap:wrap; gap:12px; }
.reviewer-confirmation-actions button { width:auto; }
.review-sidebar { position:sticky; top:92px; display:grid; gap:14px; }
.review-progress-row { display:flex; align-items:center; justify-content:space-between; gap:10px; border-top:1px solid var(--line); padding:10px 0; }
.review-progress-row:first-child { border-top:0; }
.review-progress-row b { color:var(--navy); }
.loyalty-panel { border-color:#f1d28d; background:#fffaf0; }
.testimonial-card { display:grid; gap:8px; border:1px solid var(--line); border-radius:8px; background:#fff; padding:16px; }
.testimonial-card b { color:var(--navy); }
.public-testimonial-strip { margin-top:24px; border:1px solid var(--line); border-radius:8px; background:#fff; padding:16px; box-shadow:0 14px 34px rgba(7,26,56,.06); }
.public-testimonial-strip h3 { margin:0; color:var(--navy); font-size:20px; }
.testimonial-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:12px; }
.compact-testimonial { min-height:150px; box-shadow:none; }
.compact-testimonial p { margin:0; color:#334155; }
.compact-testimonial small { color:var(--muted); font-weight:850; line-height:1.4; }
.review-card details, .compact-testimonial details { margin-top:4px; color:#334155; }
.review-card summary, .compact-testimonial summary { color:var(--blue); cursor:pointer; font-weight:850; }
.review-card details p, .compact-testimonial details p { margin-top:8px; white-space:pre-wrap; }
.review-data-note { grid-column:1/-1; }
.review-data-note b { font-size:16px !important; }
.home-showcase { overflow:hidden; }
.home-showcase .section-head { max-width:1180px; margin-inline:auto; }

















.home-review-band { background:linear-gradient(180deg,#fff 0%,#f8fbff 100%); }
.site-footer { display:grid; grid-template-columns:1.4fr repeat(4,minmax(130px,1fr)) 1.35fr; gap:26px; padding:54px 6vw 28px; color:#dbe8ff; background:#06172f; border-top:1px solid rgba(255,255,255,.12); }
.site-footer h3 { margin:0 0 12px; color:#fff; font-size:15px; }
.site-footer a { display:block; margin:8px 0; color:#dbe8ff; font-weight:800; font-size:13px; }
.site-footer a:hover, .site-footer a:focus-visible { color:#fff; text-decoration:underline; }
.footer-brand img { width:164px; max-width:100%; display:block; margin-bottom:8px; border-radius:6px; }
.footer-brand p { margin:0 0 8px; color:#fff; font-weight:950; }
.footer-brand span, .footer-newsletter p, .footer-bottom { color:#b8c7df; font-size:13px; line-height:1.6; }
.footer-newsletter { display:grid; gap:10px; }
.footer-newsletter label { display:grid; gap:6px; color:#fff; font-size:12px; font-weight:900; }
.footer-newsletter input { min-height:42px; width:100%; border:1px solid rgba(255,255,255,.28); border-radius:8px; padding:0 12px; color:#fff; background:rgba(255,255,255,.08); }
.footer-newsletter input::placeholder { color:#aab8cd; }
.footer-newsletter button { background:var(--orange); }
.footer-bottom { grid-column:1/-1; display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; border-top:1px solid rgba(255,255,255,.12); padding:18px 190px 0 0; }
.footer-socials { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px; }
.site-footer .footer-socials a { width:40px; height:40px; display:grid; place-items:center; margin:0; border:1px solid rgba(255,255,255,.2); border-radius:999px; color:#dbe8ff; background:rgba(255,255,255,.06); transition:transform .18s ease,background .18s ease,border-color .18s ease; }
.site-footer .footer-socials a:hover { color:#fff; border-color:rgba(255,255,255,.55); background:rgba(228,111,43,.9); text-decoration:none; transform:translateY(-2px); }
.site-footer .footer-socials a:focus-visible { color:#fff; border-color:#fff; outline:3px solid var(--orange); outline-offset:3px; text-decoration:none; }
.footer-socials svg { width:19px; height:19px; fill:currentColor; }
@keyframes homepage-scroll {
  from { transform:translateX(0); }
  to { transform:translateX(calc(-50% - 8px)); }
}
.review-admin-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.review-admin-actions button { flex:1 1 130px; min-height:38px; font-size:12px; }
.moderation-placement-grid label { align-items:center; border:1px solid var(--line); border-radius:8px; padding:10px; background:#f8fbff; }
.moderation-placement-grid input { width:auto; }
.review-completion-nudge { border-left:4px solid var(--primary); background:#f8fbff; }
.review-completion-nudge .muted { display:block; margin-top:6px; }
#reviewDetailPanel { max-height:calc(100vh - 110px); overflow:auto; }
#reviewChannelsPanel h4 { margin:18px 0 8px; color:var(--navy); }
.admin-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:8px; background:#fff; }
.admin-table { width:100%; min-width:900px; border-collapse:collapse; }
.admin-table th, .admin-table td { border-bottom:1px solid var(--line); padding:12px; text-align:left; vertical-align:top; }
.admin-table th { color:var(--navy); background:#f8fbff; font-size:12px; text-transform:uppercase; }
.admin-table td span { display:block; margin-top:3px; color:var(--muted); font-size:12px; }
.admin-table td:last-child { display:flex; flex-wrap:wrap; gap:8px; }
.status-pill { display:inline-flex !important; width:max-content; border-radius:999px; padding:5px 9px; font-size:12px !important; font-weight:950; }
.status-pill.good { color:#067a3a; background:#e9fbf0; }
.status-pill.warn { color:#a94d00; background:#fff4e6; }
.status-pill.neutral { color:#43516a; background:#eef2f7; }
.admin-management-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:16px; margin-top:16px; }
.hotel-admin-actions { display:flex; flex-wrap:wrap; gap:10px; margin:12px 0; }
.room-admin-list { display:grid; gap:4px; }
.payment-test-panel { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-top:18px; border:1px solid var(--line); border-radius:8px; background:#fff; padding:16px; }
.payment-test-panel h3 { margin:0 0 4px; color:var(--navy); }
.payment-test-panel select { min-height:42px; min-width:220px; border:1px solid var(--line); border-radius:8px; padding:0 12px; background:#fff; font-weight:800; }
.payment-test-panel input { min-height:42px; min-width:160px; border:1px solid var(--line); border-radius:8px; padding:0 12px; background:#fff; }
.wetravel-mapping-panel { margin-top:20px; border:1px solid var(--line); border-radius:8px; background:#fff; padding:20px; }
.wetravel-mapping-panel h3 { margin:0 0 5px; color:var(--navy); }
.wetravel-mapping-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:18px 0; }
.wetravel-mapping-form label { display:grid; gap:7px; color:var(--navy); font-weight:800; }
.wetravel-mapping-form input,.wetravel-mapping-form select,.wetravel-mapping-form textarea { width:100%; border:1px solid var(--line); border-radius:8px; background:#fff; padding:11px 12px; color:var(--navy); font:inherit; }
.wetravel-mapping-form textarea { resize:vertical; }
.wetravel-mapping-form .mapping-url-field,.wetravel-mapping-form .mapping-note-field { grid-column:1 / -1; }
.wetravel-mapping-form .mapping-toggle { display:flex; align-items:center; gap:9px; align-self:center; }
.wetravel-mapping-form .mapping-toggle input { width:18px; height:18px; }
.mapping-save-status { margin:0 0 18px; border:1px solid var(--line); border-radius:8px; padding:13px 15px; background:#f7f9fc; color:var(--navy); font-weight:700; }
.mapping-save-status.is-saving { border-color:#9eb2f5; background:#f2f5ff; }
.mapping-save-status.is-success { border-color:#8cc9a4; background:#edf9f1; color:#185b34; }
.mapping-save-status.is-error { border-color:#e7a5a5; background:#fff2f2; color:#8b1f1f; }
.checkout-rollout-control { margin:18px 0; border:1px solid var(--line); border-radius:10px; padding:18px; background:linear-gradient(135deg,#fff,#f7f9ff); }
.checkout-rollout-control h4 { margin:0 0 5px; color:var(--navy); }
.checkout-rollout-control .rollout-actions { display:flex; flex-wrap:wrap; gap:10px; margin:14px 0; }
.checkout-rollout-control .rollout-actions button { flex:1 1 210px; }
.checkout-rollout-control .rollout-audit-list { display:grid; gap:8px; margin-top:12px; }
.checkout-rollout-control .rollout-audit-item { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; border-top:1px solid var(--line); padding-top:9px; }
.checkout-rollout-control .rollout-audit-item span { color:var(--muted); }
.wetravel-mapping-row.recently-saved { border-color:#5bae7a; box-shadow:0 0 0 3px rgba(91,174,122,.14); }
.wetravel-mapping-list { display:grid; gap:10px; margin-top:16px; }
.wetravel-mapping-row { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto auto; align-items:center; gap:14px; border-top:1px solid var(--line); padding:13px 0; }
.wetravel-mapping-row:first-child { border-top:0; }
/* Evidence and rollout rows have different content from the four-column mapping editor. */
#wetravelWebhookEvidenceList .wetravel-mapping-row,
#wetravelRealPackageRollout .wetravel-mapping-row {
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
  gap:20px;
  padding:24px 0;
}
#wetravelWebhookEvidenceList .wetravel-mapping-row > *,
#wetravelRealPackageRollout .wetravel-mapping-row > * {
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
}
#wetravelWebhookEvidenceList .wetravel-mapping-row > div,
#wetravelRealPackageRollout .wetravel-mapping-row > div {
  display:flex;
  flex-direction:column;
  gap:8px;
}
#wetravelWebhookEvidenceList h4 { margin:0; font-size:17px; line-height:1.5; }
#wetravelWebhookEvidenceList p { margin:0; }
#wetravelWebhookEvidenceList .pill { align-self:flex-start; }
#wetravelWebhookEvidenceList .wetravel-correlation-form,
#wetravelWebhookEvidenceList details {
  grid-column:1 / -1;
  min-width:0;
}
#wetravelWebhookEvidenceList .wetravel-correlation-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  align-items:start;
  border-top:1px solid var(--line);
  padding-top:16px;
}
#wetravelWebhookEvidenceList label { display:grid; gap:8px; min-width:0; }
#wetravelWebhookEvidenceList select,
#wetravelWebhookEvidenceList textarea {
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
  padding:12px;
  border:1px solid var(--line);
  border-radius:6px;
  font:inherit;
  color:inherit;
  background:#fff;
}
#wetravelWebhookEvidenceList textarea { min-height:100px; resize:vertical; }
#wetravelWebhookEvidenceList .wetravel-correlation-form button {
  justify-self:start;
  align-self:end;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
}
#wetravelWebhookEvidenceList summary { cursor:pointer; padding:8px 0; font-weight:700; }
#wetravelWebhookEvidenceList pre {
  max-width:100%;
  box-sizing:border-box;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
@media (max-width:1100px) {
  #wetravelWebhookEvidenceList .wetravel-mapping-row,
  #wetravelRealPackageRollout .wetravel-mapping-row { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:600px) {
  #wetravelWebhookEvidenceList .wetravel-correlation-form { grid-template-columns:minmax(0,1fr); }
}
.wetravel-mapping-row strong,.wetravel-mapping-row span { min-width:0; overflow-wrap:anywhere; }
.wetravel-mapping-row button { white-space:nowrap; }
.filter-bar { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 18px; }
.filter-bar select, .filter-bar input { min-height:42px; border:1px solid var(--line); border-radius:8px; padding:0 12px; background:#fff; font:inherit; font-weight:800; }
.filter-bar input { min-width:min(320px,100%); }
.insight-topic-rail { display:flex; gap:10px; overflow:auto; padding:0 0 14px; margin-top:-4px; scrollbar-width:thin; }
.insight-topic-rail button { flex:0 0 auto; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--navy); padding:10px 14px; font-weight:900; }
.insight-topic-rail button.active { background:var(--primary); border-color:var(--primary); color:#fff; box-shadow:0 12px 24px rgba(13,96,255,.18); }
.insight-category-panel { display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid var(--line); border-radius:8px; background:linear-gradient(135deg,#ffffff,#f7fbff); padding:18px; margin:0 0 18px; }
.insight-category-panel h3 { margin:3px 0 6px; color:var(--navy); }
.insight-category-panel p { margin:0; color:var(--muted); max-width:720px; }
.insight-category-panel div { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.insight-category-panel span { border:1px solid #dbe7fb; border-radius:999px; padding:7px 10px; color:var(--navy); background:#fff; font-weight:850; font-size:12px; }
.blog-card button { margin-top:12px; width:100%; }
.featured-insights-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.featured-insight-card { min-height:100%; }
.featured-insight-card img { aspect-ratio:16/11; }
.editor-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:14px; }
.editor-actions button { min-width:132px; }
.editor-preview { margin-top:18px; display:grid; gap:16px; }
.editorial-admin-list { display:grid; gap:10px; margin-top:14px; max-height:520px; overflow:auto; padding-right:6px; }
.editorial-admin-list article { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:12px 0; border-bottom:1px solid var(--line); }
.editorial-admin-list span,
.editorial-admin-list small { display:block; color:var(--muted); margin-top:3px; }
.checkbox-line { display:flex; gap:10px; align-items:center; font-weight:800; }
.checkbox-line input { width:auto; }
.about-section { padding:0 0 96px; overflow:hidden; background:linear-gradient(180deg,#fff 0,#f7faff 70%,#fff 100%); }
.about-hero { position:relative; min-height:520px; display:grid; align-items:center; margin:0; padding:88px max(6vw,calc((100vw - 1240px)/2)) 92px; overflow:hidden; color:#fff; background:linear-gradient(90deg,rgba(5,19,42,.48) 0%,rgba(5,19,42,.28) 45%,rgba(5,19,42,.06) 72%),url("./assets/generated/about-fond-memories-banner.png") center 48%/cover no-repeat; }
.about-hero::after { content:""; position:absolute; inset:auto 0 0; height:5px; background:linear-gradient(90deg,var(--orange) 0 18%,var(--blue) 18% 52%,transparent 52%); }
.about-hero-copy { position:relative; z-index:1; max-width:760px; }
.about-hero .eyebrow { color:#ffd7bd; }
.about-hero h2 { margin:0 0 24px; max-width:780px; color:#fff; font-family:Georgia, "Times New Roman", serif; font-size:clamp(54px,7vw,88px); line-height:.94; letter-spacing:0; text-shadow:0 3px 24px rgba(5,19,42,.28); }
.about-hero p:not(.about-breadcrumb):not(.eyebrow) { max-width:720px; margin:0; color:#f6f9ff; font-size:22px; line-height:1.5; font-weight:700; text-shadow:0 2px 18px rgba(5,19,42,.25); }
.about-breadcrumb { margin:0; color:#fff; font-size:14px; font-weight:900; }
.about-breadcrumb span { display:inline-block; margin:0 8px; opacity:.75; }
.about-stats-band { position:relative; z-index:2; max-width:1180px; margin:-42px auto 76px; padding:28px 34px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; color:var(--navy); text-align:center; border:1px solid rgba(13,96,255,.12); border-radius:14px; background:rgba(255,255,255,.97); box-shadow:0 24px 65px rgba(7,26,56,.16); backdrop-filter:blur(18px); }
.about-stats-band article { padding:7px 22px; border-left:1px solid var(--line); }
.about-stats-band article:first-child { border-left:0; }
.about-stats-band strong { display:block; color:var(--navy); font-family:Georgia, "Times New Roman", serif; font-size:42px; line-height:1; }
.about-stats-band span { display:block; margin-top:8px; color:#56657a; font-size:13px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.about-story-grid { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:56px; align-items:start; padding:0 6vw; }
.about-story-column { display:grid; gap:34px; }
.about-copy { padding:10px 0 0; }
.about-copy .eyebrow,.about-mission-card .eyebrow,.about-reasons .eyebrow { margin-bottom:12px; color:var(--orange); }
.script-label { margin:0 0 4px; color:#2f8b8b; font-family:Georgia, "Times New Roman", serif; font-style:italic; font-size:19px; letter-spacing:.02em; }
.about-copy h3, .about-mission-card h3, .about-reasons h3 { margin:0 0 24px; color:var(--navy); font-family:Georgia, "Times New Roman", serif; font-size:clamp(38px,4vw,58px); line-height:.98; letter-spacing:-.025em; }
.about-copy h3::after { content:""; display:block; width:72px; margin-top:16px; border-top:4px solid var(--blue); }
.about-copy p, .about-mission-card p { color:#445268; font-size:16px; line-height:1.9; }
.about-mission-card { position:sticky; top:110px; overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:16px; padding:46px; color:#fff; background:linear-gradient(145deg,#071d3c,#0b2d5a 68%,#0d60ff 140%); box-shadow:0 28px 75px rgba(7,26,56,.2); }
.about-mission-card::before { content:""; position:absolute; width:220px; height:220px; right:-110px; top:-110px; border:1px solid rgba(255,255,255,.15); border-radius:999px; }
.about-mission-card .eyebrow { color:#ffbd91; }
.about-mission-card h3 { position:relative; color:#fff; }
.about-mission-sections { position:relative; display:grid; gap:18px; }
.about-mission-sections section { padding:24px; border:1px solid rgba(255,255,255,.14); border-radius:12px; background:rgba(255,255,255,.07); }
.about-mission-sections span { color:#ffbd91; font-size:12px; font-weight:950; letter-spacing:.14em; }
.about-mission-sections h4 { margin:9px 0 8px; color:#fff; font-size:20px; }
.about-mission-sections p { margin:0; color:#e6edf8; line-height:1.75; }
.about-reasons { max-width:1180px; margin:96px auto 0; padding:72px 6vw; text-align:center; border-radius:18px; background:#fff; box-shadow:0 24px 70px rgba(7,26,56,.08); }
.about-reasons > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:36px; text-align:left; }
.about-reasons article { position:relative; display:grid; align-content:start; gap:12px; min-height:280px; padding:28px 24px; border:1px solid var(--line); border-radius:12px; background:linear-gradient(160deg,#fff,#f6f9ff); transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.about-reasons article:hover { transform:translateY(-4px); border-color:#c7d9ff; box-shadow:0 18px 38px rgba(13,96,255,.1); }
.about-reasons span { width:52px; height:52px; display:grid; place-items:center; border-radius:12px; color:#fff; background:linear-gradient(135deg,var(--blue),#0b3c99); box-shadow:0 10px 24px rgba(13,96,255,.2); font-size:25px; }
.about-reasons article:nth-child(even) span { background:linear-gradient(135deg,var(--orange),#cf5d16); box-shadow:0 10px 24px rgba(224,113,50,.2); }
.about-reasons h4 { margin:8px 0 0; color:var(--navy); font-family:Georgia, "Times New Roman", serif; font-size:21px; line-height:1.15; }
.about-reasons p { margin:0; color:#536178; line-height:1.7; font-size:14px; }
.travel-insights-hero { position:relative; min-height:360px; display:grid; grid-template-columns:minmax(0,760px) auto; gap:22px; align-items:end; margin:-10px 0 18px; padding:72px 6vw 58px; overflow:hidden; background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.8) 48%,rgba(255,255,255,.32)),image-set(url("./assets/generated/travel-insights-hero-photo.webp") type("image/webp"), url("./assets/generated/travel-insights-hero-photo.png") type("image/png")) center right/cover no-repeat; border-radius:0; }
.travel-insights-hero::after { content:""; position:absolute; left:0; bottom:0; width:42%; height:42%; background:linear-gradient(135deg,rgba(13,96,255,.08),rgba(47,139,139,.05)); clip-path:polygon(0 0,100% 100%,0 100%); }
.travel-insights-hero > * { position:relative; z-index:1; }
.travel-insights-hero h2 { max-width:780px; margin:8px 0 16px; color:var(--navy); font-size:clamp(44px,6vw,76px); line-height:1; }
.travel-insights-hero .muted { max-width:620px; color:#526276; font-size:19px; line-height:1.55; font-weight:750; }
.travel-insights-hero button { min-width:180px; justify-self:end; box-shadow:0 18px 42px rgba(13,96,255,.22); }
.travel-insights-hero + .filter-bar { margin-top:-2px; padding:0 0 0; }
.editorial-card { overflow:hidden; }
.editorial-card img { aspect-ratio:16/10; }
.editorial-card h3 { min-height:52px; }
.editorial-meta { color:var(--muted); font-size:13px; font-weight:700; margin:12px 0 0; }
.lead-row { display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--line); padding:12px 0; }
.lead-row:first-of-type { border-top:0; }
.lead-row div { display:grid; gap:3px; }
.lead-row span { color:var(--muted); font-size:13px; }
.lead-row button { flex:0 0 auto; }
.package-builder-form { display:grid; gap:14px; }
.package-builder-form[hidden] { display:none; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.package-builder-form label { display:grid; gap:6px; color:var(--navy); font-size:13px; font-weight:900; }
.package-builder-form input, .package-builder-form select, .package-builder-form textarea { width:100%; border:1px solid var(--line); border-radius:8px; padding:10px 12px; font:inherit; }
.package-builder-form textarea { resize:vertical; }
.package-editor-shell { display:grid; grid-template-columns:minmax(190px, 240px) minmax(0, 1fr); gap:20px; align-items:start; }
.package-editor-rail { display:grid; gap:8px; position:sticky; top:16px; padding:16px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.package-editor-rail h2 { margin:0 0 6px; font-size:20px; }
.package-editor-step { display:grid; grid-template-columns:28px 1fr; gap:9px; align-items:center; width:100%; padding:10px; border:1px solid transparent; background:transparent; color:var(--navy); text-align:left; }
.package-editor-step span { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:#edf2f8; }
.package-editor-step.is-active { border-color:var(--blue); background:#f3f8ff; }
.package-editor-step.is-active span { background:var(--blue); color:#fff; }
.package-editor-step.is-complete:not(.is-active) span { background:#dff6e8; color:#176c3a; }
.package-editor-workspace { min-width:0; }
.package-editor-panel[hidden] { display:none; }
.package-editor-actions { display:flex; justify-content:space-between; gap:16px; align-items:center; position:sticky; bottom:0; z-index:5; padding:14px 16px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.96); box-shadow:0 -8px 24px rgba(10,37,64,.08); }
.package-editor-actions p { margin:0; font-weight:800; }
.package-editor-progress { display:grid; gap:5px; min-width:190px; }
.package-editor-progress progress { width:100%; accent-color:var(--blue); }
.package-editor-progress span { color:var(--muted); font-size:12px; font-weight:800; }
.package-editor-progress .has-unsaved-changes { color:#9a4f00; }
.package-builder-form[aria-busy="true"] .package-editor-workspace { opacity:.72; pointer-events:none; }
.package-editor-action-buttons { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.package-editor-review { display:grid; gap:8px; }
.package-editor-readiness { display:flex; justify-content:space-between; gap:12px; padding:14px; border-radius:9px; }
.package-editor-readiness.is-ready { background:#eaf8ef; color:#176c3a; }
.package-editor-readiness.is-blocked { background:#fff0ed; color:#9a2f1f; }
.package-editor-review-step { display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:8px 14px; align-items:start; margin:0; padding:12px; border-radius:8px; background:#f5f7fa; }
.package-editor-review-step > div { display:grid; grid-template-columns:24px 1fr auto; gap:10px; align-items:center; }
.package-editor-review-step ul { grid-column:1 / -1; margin:0; padding-left:28px; }
.package-editor-review-step button { grid-column:2; grid-row:1; min-height:36px; }
.package-editor-review-step.is-complete { background:#eaf8ef; color:#176c3a; }
.package-editor-review-step.is-incomplete { color:#6f4b00; background:#fff7df; }
.package-editor-review-step .is-error { color:#9a2f1f; }
.package-editor-review-step .is-warning { color:#6f4b00; }
.package-editor-longform, .package-editor-itinerary { min-height:260px; }
.package-editor-itinerary-source[hidden] { display:none; }
.package-itinerary-days { display:grid; gap:14px; }
.package-itinerary-day { display:grid; gap:12px; padding:16px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.package-itinerary-day-head { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.package-itinerary-day-head h4 { margin:0; color:var(--navy); }
.package-itinerary-day-actions { display:flex; flex-wrap:wrap; gap:6px; }
.package-itinerary-day-actions button { min-height:36px; padding:0 12px; }
.package-media-toolbar { display:flex; flex-wrap:wrap; gap:8px; }
.package-hero-media-preview { display:grid; gap:7px; place-items:start; min-height:90px; padding:12px; border:1px dashed var(--line); border-radius:10px; color:var(--muted); }
.package-hero-media-preview img { width:min(100%, 520px); aspect-ratio:16/8; object-fit:cover; border-radius:8px; }
.package-gallery-images { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; }
.package-gallery-image { display:grid; gap:10px; padding:12px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.package-gallery-image-preview { display:grid; place-items:center; min-height:130px; border-radius:8px; background:#f2f5f8; color:var(--muted); text-align:center; }
.package-gallery-image-preview img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:8px; }
.package-gallery-image-actions { display:flex; flex-wrap:wrap; gap:6px; }
.package-gallery-image-actions button { flex:1 1 80px; min-height:36px; padding:0 10px; }
.package-media-library-picker { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; padding:12px; border:1px solid var(--line); border-radius:10px; background:#f8fafc; }
.package-media-library-picker[hidden] { display:none; }
.package-media-library-picker article { display:grid; gap:8px; min-width:0; padding:10px; border-radius:8px; background:#fff; }
.package-media-library-picker img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:7px; }
.package-media-library-picker b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.package-media-library-picker article div { display:flex; flex-wrap:wrap; gap:6px; }
.admin-form-section { display:grid; gap:12px; border:1px solid #dfe7f2; border-radius:8px; padding:16px; background:#fbfdff; }
.admin-form-section .eyebrow { margin:0; }
.package-pricing-options { display:grid; gap:10px; }
.package-pricing-option { display:grid; grid-template-columns:minmax(250px, 1.6fr) repeat(4, minmax(110px, .55fr)); gap:12px; align-items:end; padding:14px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.package-pricing-option.is-disabled { background:#f7f9fc; opacity:.72; }
.package-pricing-option .pricing-choice { display:flex; align-items:flex-start; gap:10px; }
.package-pricing-option .pricing-choice input { width:auto; margin-top:3px; }
.package-pricing-option small { display:block; margin-top:4px; color:var(--muted); font-weight:600; }
@media (max-width:900px){ .package-pricing-option { grid-template-columns:1fr 1fr; } }
@media (max-width:540px){ .package-pricing-option { grid-template-columns:1fr; } }
@media (max-width:760px){
  .package-editor-shell { grid-template-columns:1fr; }
  .package-editor-rail { position:static; grid-template-columns:repeat(7, minmax(42px, 1fr)); overflow-x:auto; }
  .package-editor-rail .eyebrow, .package-editor-rail h2 { grid-column:1 / -1; }
  .package-editor-step { display:flex; justify-content:center; padding:7px; font-size:0; }
  .package-editor-step span { flex:0 0 30px; font-size:13px; }
  .package-editor-actions { align-items:stretch; flex-direction:column; }
  .package-editor-progress { width:100%; }
  .package-editor-action-buttons { justify-content:stretch; }
  .package-editor-action-buttons button { flex:1 1 130px; }
  .package-itinerary-day-head { align-items:stretch; flex-direction:column; }
  .package-itinerary-day-actions button { flex:1 1 90px; }
  .package-gallery-images, .package-media-library-picker { grid-template-columns:1fr; }
  .package-editor-readiness { flex-direction:column; }
  .package-editor-review-step { grid-template-columns:1fr; }
  .package-editor-review-step button { grid-column:1; grid-row:auto; width:100%; }
}
.admin-package-list { display:grid; gap:10px; margin-top:14px; }
.admin-package-list article { display:grid; grid-template-columns:92px minmax(0,1fr) auto; gap:14px; align-items:center; border:1px solid var(--line); border-radius:8px; padding:10px; background:#fff; }
.admin-package-list img { width:92px; aspect-ratio:16/10; object-fit:cover; border-radius:7px; background:#eef3f7; }
.admin-package-list b, .admin-package-list span, .admin-package-list small { display:block; }
.admin-package-list b { color:var(--navy); }
.admin-package-list span { color:#43516a; font-size:13px; font-weight:800; }
.admin-package-list small { color:var(--muted); font-size:12px; }
.admin-package-list article > div:last-child { display:flex; gap:8px; justify-content:flex-end; }
.package-catalogue-actions { flex-wrap:wrap; max-width:410px; }
.package-catalogue-actions button { white-space:nowrap; }
.package-audit-acceptance-form { display:grid; grid-template-columns:repeat(2,minmax(180px,1fr)); gap:10px; width:100%; padding:14px; border:1px solid var(--line); border-radius:10px; background:#f7f9fc; }
.package-audit-acceptance-form p, .package-audit-acceptance-form label:last-of-type, .package-audit-acceptance-form small { grid-column:1 / -1; }
.package-audit-acceptance-form label { display:flex; gap:8px; align-items:flex-start; }
.package-audit-acceptance-form input[type="checkbox"] { width:auto; margin-top:3px; }
.package-catalogue-panel .admin-package-list article { grid-template-columns:112px minmax(320px,1fr) minmax(480px,560px); padding:14px 16px; }
.package-catalogue-panel .admin-package-list img { width:112px; }
.package-catalogue-panel .admin-package-list article > .package-catalogue-actions { display:grid; grid-template-columns:repeat(4,minmax(100px,1fr)); width:100%; max-width:none; }

@media (max-width:1180px) {
  .package-catalogue-panel .admin-package-list article { grid-template-columns:104px minmax(0,1fr); }
  .package-catalogue-panel .admin-package-list article > .package-catalogue-actions { grid-column:1 / -1; }
}
.package-pagination { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }
.package-pagination span { color:var(--muted); font-weight:700; text-align:center; }
.admin-action-toast { position:fixed; right:24px; bottom:24px; z-index:1000; max-width:420px; padding:14px 18px; border-radius:10px; background:#102247; color:#fff; box-shadow:0 16px 45px rgba(16,34,71,.24); opacity:0; transform:translateY(14px); pointer-events:none; transition:.2s ease; }
.admin-action-toast.is-visible { opacity:1; transform:translateY(0); }
@media (max-width:760px) {
  .package-pagination { align-items:stretch; flex-direction:column; }
  .package-catalogue-actions { max-width:none; }
}
.package-admin-guide { background:linear-gradient(135deg,#f8fbff,#fff); }
.package-detail-section[hidden] { display:none; }
.package-detail-section { padding:0; background:#fff; }
.approved-package-page { color:#172033; background:#fff; }
.public-demo-notice { display:flex; align-items:center; justify-content:center; gap:10px; padding:14px 5vw; color:#6b3d00; background:#fff3cd; border-block:1px solid #e9c46a; text-align:center; }
.public-demo-notice b { color:#452700; }
.approved-package-topbar { min-height:68px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 6vw; background:rgba(255,255,255,.96); border-bottom:1px solid rgba(223,229,239,.82); position:sticky; top:0; z-index:19; backdrop-filter:blur(18px); }
.approved-package-topbar .brand { min-width:auto; }
.approved-package-topbar .brand img { width:130px; }
.approved-package-topbar > div { display:flex; align-items:center; gap:12px; }
.approved-package-topbar a:not(.brand), .approved-package-topbar button, .approved-menu-button { min-height:38px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--line); border-radius:999px; padding:0 14px; color:var(--navy); background:#fff; font-size:12px; font-weight:900; }
.approved-menu-button { width:42px; overflow:hidden; text-indent:60px; position:relative; }
.approved-menu-button::before { content:""; position:absolute; inset:12px 11px; border-top:2px solid var(--navy); border-bottom:2px solid var(--navy); }
.approved-menu-button::after { content:""; position:absolute; left:11px; right:11px; top:18px; border-top:2px solid var(--navy); }
.approved-package-hero { position:relative; min-height:430px; display:grid; grid-template-columns:minmax(0,1fr); align-items:end; gap:28px; padding:80px 6vw 46px; overflow:hidden; background:#06172f; }
.approved-package-hero::before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(3,13,28,.82),rgba(3,13,28,.48) 52%,rgba(3,13,28,.08)); }
.approved-package-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.82; }
.approved-package-hero-copy { position:relative; z-index:2; max-width:760px; color:#fff; }
.approved-package-hero-copy h1 { max-width:680px; color:#fff; font-family:Georgia, "Times New Roman", serif; font-size:clamp(44px,6vw,72px); line-height:1; }
.approved-package-hero-copy p { margin:12px 0 0; color:#f5f8ff; font-weight:850; }
.approved-package-hero-copy p span { display:inline-flex; align-items:center; gap:8px; border-radius:999px; padding:6px 0; }
.approved-curator { display:grid; grid-template-columns:82px minmax(0,1fr); gap:16px; align-items:center; max-width:560px; margin-top:24px; }
.approved-curator img { width:82px; aspect-ratio:1; border-radius:999px; object-fit:contain; background:#fff; padding:10px; box-shadow:0 16px 38px rgba(0,0,0,.2); }
.approved-curator b, .approved-curator small { display:block; }
.approved-curator small { color:#edf4ff; font-weight:800; }
.approved-curator p { margin:6px 0 0; color:#f2f7ff; font-size:13px; line-height:1.5; }
.approved-booking-card { position:relative; z-index:3; align-self:center; display:grid; gap:12px; border:1px solid rgba(255,255,255,.7); border-radius:8px; padding:24px; background:rgba(255,255,255,.97); color:var(--navy); box-shadow:0 26px 70px rgba(0,0,0,.22); }
.approved-booking-card strong { font-size:32px; line-height:1; color:var(--navy); text-align:center; }
.approved-booking-card > span { color:var(--muted); text-align:center; font-weight:800; }
.approved-booking-card button:first-of-type, .approved-bottom-bar button { background:var(--blue); }
.approved-booking-card button, .approved-booking-card a { min-height:42px; display:flex; align-items:center; justify-content:center; border:1px solid var(--line); border-radius:7px; color:var(--navy); background:#fff; font-weight:900; }
.approved-booking-card ul { display:grid; gap:10px; margin:8px 0 0; padding:0; list-style:none; color:#59667a; font-weight:850; }
.approved-booking-card li::before, .approved-bottom-bar > span::before { content:""; display:inline-block; width:8px; height:8px; margin-right:8px; border-radius:999px; background:var(--orange); }
.approved-package-shell { display:grid; grid-template-columns:220px minmax(0,1fr); gap:38px; max-width:1220px; margin:0 auto; padding:28px 5vw 100px; }
.approved-package-nav { position:sticky; top:92px; align-self:start; display:grid; gap:6px; border:1px solid var(--line); border-radius:8px; padding:12px; background:#fff; box-shadow:0 14px 36px rgba(7,26,56,.08); }
.approved-package-nav a { border-radius:7px; padding:11px 12px; color:#43516a; font-size:13px; font-weight:900; }
.approved-package-nav a:hover, .approved-package-nav a:focus-visible { color:var(--blue); background:#f3f8ff; }
.approved-nav-help { display:grid; gap:8px; margin-top:10px; border:1px solid #dce7f7; border-radius:8px; padding:14px; background:#fbfdff; }
.approved-nav-help b { color:var(--navy); }
.approved-nav-help span { color:var(--muted); font-size:12px; line-height:1.45; }
.approved-nav-help button { min-height:36px; background:var(--blue); }
.approved-package-content { display:grid; gap:28px; }
.approved-section, .approved-two-column article { border:1px solid var(--line); border-radius:8px; background:#fff; padding:24px; box-shadow:0 14px 34px rgba(7,26,56,.045); }
.approved-section h2, .approved-section h3, .approved-two-column h3 { margin:0 0 12px; color:var(--navy); }
.approved-section p { color:#43516a; }
.approved-chip-row { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.approved-chip-row span { border:1px solid #d9e8ff; border-radius:7px; padding:10px 14px; color:var(--navy); background:#f8fbff; font-size:13px; font-weight:900; }
.approved-two-column { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.approved-check-list, .approved-x-list { display:grid; gap:11px; margin:0; padding:0; list-style:none; }
.approved-check-list li, .approved-x-list li { position:relative; padding-left:24px; color:#43516a; font-size:14px; line-height:1.45; }
.approved-check-list li::before, .approved-x-list li::before { position:absolute; left:0; top:2px; width:16px; height:16px; display:grid; place-items:center; border-radius:999px; color:#fff; font-size:11px; font-weight:950; }
.approved-check-list li::before { content:"✓"; background:#128a3d; }
.approved-x-list li::before { content:"×"; background:#e03a2f; }
.approved-option-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:12px; }
.approved-package-option { min-height:142px; display:grid; align-content:start; gap:10px; border:1px solid var(--line); border-radius:8px; padding:16px; background:#fff; box-shadow:0 12px 28px rgba(7,26,56,.045); }
.approved-package-option > div { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.approved-package-option h3 { margin:0; color:var(--navy); font-size:16px; line-height:1.25; }
.approved-package-option span { border-radius:999px; padding:5px 8px; color:#0a7c39; background:#eaf8ef; font-size:11px; font-weight:950; white-space:nowrap; }
.approved-package-option ul { margin:0; padding-left:17px; color:#43516a; font-size:13px; line-height:1.55; }
.approved-package-option b { color:var(--navy); font-size:20px; }
.approved-package-option small { color:var(--muted); font-weight:850; }
.package-pricing-mapping-notice { grid-column:1/-1; display:grid; gap:5px; padding:14px 16px; border:1px solid #e8b86a; border-radius:8px; background:#fff8e8; color:var(--navy); }
.package-pricing-mapping-notice span { color:var(--muted); font-size:13px; line-height:1.5; }
.package-party-builder { margin-top:24px; border:1px solid var(--line); border-radius:10px; padding:22px; background:#f8fbff; }
.package-flight-mode-selector { display:flex; flex-wrap:wrap; gap:10px; margin:14px 0; }
.package-flight-mode-selector label { display:flex; align-items:center; gap:8px; border:1px solid #cbd8ea; border-radius:999px; padding:10px 16px; background:#fff; color:var(--navy); font-weight:900; cursor:pointer; }
.package-flight-mode-selector label:has(input:checked) { border-color:var(--primary); box-shadow:0 0 0 3px rgba(13,96,255,.12); }
.package-party-option-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.package-party-option { display:flex; align-items:center; justify-content:space-between; gap:16px; border:1px solid var(--line); border-radius:8px; padding:14px; background:#fff; }
.package-party-option[hidden] { display:none; }
.package-party-option span,.package-party-option small { display:block; }
.package-party-option b { color:var(--navy); }
.package-party-option small { margin-top:4px; color:var(--muted); font-weight:800; }
.package-party-option input { width:78px; min-height:44px; border:1px solid #b9c8da; border-radius:7px; padding:8px; font:inherit; font-weight:900; text-align:center; }
.package-party-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:14px; border-top:1px solid var(--line); padding-top:16px; }
.package-party-summary > div { display:flex; justify-content:space-between; gap:12px; border-radius:7px; padding:12px; background:#fff; color:var(--navy); }
.package-party-summary p,.package-party-summary button,.package-party-summary small { grid-column:1/-1; }
.package-party-summary p { margin:2px 0; color:#31506f; font-weight:850; }
.package-payment-choice { margin-top:16px; border:1px solid #b9c8da; border-radius:10px; padding:18px; background:#fff; }
.package-payment-choice-head { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.package-payment-choice-head > div { display:grid; gap:4px; border-radius:8px; padding:12px; background:#f3f7fc; }
.package-payment-choice-head span,.package-payment-methods small { color:var(--muted); font-size:12px; font-weight:800; }
.package-payment-methods { display:grid; gap:10px; margin-top:14px; }
.package-payment-methods button { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:64px; border:1px solid #b9c8da; border-radius:9px; padding:12px 14px; background:#fff; color:var(--navy); text-align:left; }
.package-payment-methods button:not(:disabled) { border-color:var(--primary); cursor:pointer; }
.package-payment-methods button:not(:disabled):hover { box-shadow:0 0 0 3px rgba(13,96,255,.1); }
.package-payment-methods button:disabled { opacity:.66; }
.package-payment-methods span,.package-payment-methods small { display:block; }
.package-payment-methods small { margin-top:4px; }
.package-payment-email { display:grid; gap:6px; margin-top:14px; color:var(--navy); font-weight:800; }
.package-payment-email input { width:100%; min-height:48px; border:1px solid #b9c8da; border-radius:9px; padding:10px 12px; font:inherit; color:var(--navy); }
.package-payment-email input:focus-visible { outline:3px solid rgba(13,96,255,.25); outline-offset:2px; border-color:var(--primary); }
.package-payment-feedback { min-height:20px; margin:12px 0 0; color:#9d2d20; font-size:13px; font-weight:800; }
.payment-result-page { min-height:100vh; display:grid; place-items:center; padding:24px; background:#f3f7fc; }
.payment-result-card { width:min(100%,620px); display:grid; gap:18px; padding:clamp(24px,5vw,48px); border:1px solid #d9e1ec; border-radius:18px; background:#fff; box-shadow:0 18px 60px rgba(12,35,70,.12); }
.payment-result-card > a:first-child { color:var(--primary); font-size:24px; font-weight:900; text-decoration:none; }
.payment-result-card h1,.payment-result-card p { margin:0; }
.payment-result-card dl { display:grid; gap:10px; margin:0; }
.payment-result-card dl div { display:flex; justify-content:space-between; gap:16px; padding:12px; border-radius:8px; background:#f3f7fc; }
.payment-result-card dt { color:var(--muted); font-weight:800; }
.payment-result-card dd { margin:0; text-align:right; font-weight:900; overflow-wrap:anywhere; }
.payment-result-card .button { justify-self:start; display:inline-flex; padding:12px 18px; border-radius:9px; background:var(--primary); color:#fff; font-weight:900; text-decoration:none; }
.package-payment-note { margin:12px 0 0; color:#53647b; font-size:12px; }
.package-party-summary button { min-height:48px; border:0; border-radius:7px; background:var(--blue); color:#fff; font:inherit; font-weight:950; cursor:pointer; }
.package-party-summary button:disabled { background:#dfe7f5; color:#45617f; cursor:not-allowed; opacity:1; }
.package-party-summary small { color:var(--muted); }
.approved-itinerary { position:relative; display:grid; gap:18px; margin:10px 0 18px; }
.approved-itinerary::before { content:""; position:absolute; left:11px; top:15px; bottom:15px; border-left:2px solid #b8d7ff; }
.approved-itinerary article { position:relative; display:grid; grid-template-columns:110px 180px minmax(0,1fr); gap:18px; align-items:start; padding-left:28px; }
.approved-itinerary article::before { content:""; position:absolute; left:4px; top:8px; width:16px; height:16px; border:3px solid #fff; border-radius:999px; background:var(--blue); box-shadow:0 0 0 2px #b8d7ff; }
.approved-itinerary b, .approved-itinerary span { display:block; }
.approved-itinerary b { color:var(--navy); }
.approved-itinerary span { color:var(--muted); font-size:12px; font-weight:850; }
.approved-itinerary img { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:7px; background:#eef3f7; }
.approved-itinerary h3 { margin:0 0 6px; color:var(--navy); font-size:17px; }
.approved-itinerary p { margin:0; color:#43516a; font-size:14px; line-height:1.55; }
.approved-lower-grid { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr); gap:16px; }
.approved-map-card { min-height:260px; display:grid; place-items:center; border:1px solid #d8e6f7; border-radius:8px; margin:10px 0 14px; background:linear-gradient(135deg,#eaf5ff,#f8fbff); color:var(--blue); font-weight:950; }
.approved-organizer-row { display:grid; grid-template-columns:150px minmax(0,1fr); gap:18px; align-items:center; margin-bottom:14px; }
.approved-organizer-row img { width:150px; object-fit:contain; }
.approved-reviews { margin-top:22px; }
.approved-bottom-bar { position:sticky; bottom:18px; z-index:18; max-width:1220px; margin:-74px auto 24px; display:grid; grid-template-columns:minmax(0,1fr) auto auto auto auto; align-items:center; gap:18px; border:1px solid #dce9d9; border-radius:8px; padding:14px 22px; background:rgba(255,255,255,.96); box-shadow:0 22px 60px rgba(7,26,56,.15); backdrop-filter:blur(18px); }
.approved-bottom-bar b, .approved-bottom-bar span { display:block; }
.approved-bottom-bar b { color:var(--navy); }
.approved-bottom-bar span { color:#59667a; font-size:12px; font-weight:850; }
.approved-bottom-bar strong { color:var(--navy); font-size:20px; }
.approved-bottom-bar button { min-width:150px; }
.detail-layout { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr); gap:22px; align-items:start; }
.detail-hero { width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:8px; display:block; background:#eef3f7; }
.gallery-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:10px; }
.gallery-strip img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:8px; border:1px solid var(--line); background:#eef3f7; }
.detail-copy, .price-panel { margin-top:16px; border:1px solid var(--line); border-radius:8px; background:#fff; padding:18px; }
.detail-copy h3, .price-panel h3 { margin:0 0 10px; color:var(--navy); }
.hotel-detail-gallery { display:grid; grid-template-columns:minmax(0,3fr) minmax(180px,1fr); gap:10px; margin-top:18px; overflow:hidden; border-radius:8px; background:#eef3f7; }
.hotel-detail-main-image { width:100%; height:100%; min-height:430px; object-fit:cover; display:block; background:#e8eef5; }
.hotel-detail-thumbnails { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:8px 8px 8px 0; }
.hotel-detail-thumbnails button { position:relative; min-width:0; overflow:hidden; border:2px solid transparent; border-radius:7px; padding:0; background:#fff; cursor:pointer; }
.hotel-detail-thumbnails button.active { border-color:var(--blue); }
.hotel-detail-thumbnails img { width:100%; height:100%; min-height:112px; object-fit:cover; display:block; }
.hotel-gallery-note { display:grid; place-items:center; min-height:180px; padding:22px; color:#526178; font-weight:800; text-align:center; }
.hotel-detail-nav { position:sticky; top:72px; z-index:17; display:flex; gap:8px; overflow-x:auto; margin:14px 0 20px; border:1px solid var(--line); border-radius:8px; padding:9px; background:rgba(255,255,255,.96); box-shadow:0 10px 24px rgba(7,26,56,.06); scrollbar-width:thin; }
.hotel-detail-nav a { flex:0 0 auto; border-radius:6px; padding:9px 13px; color:var(--navy); font-size:13px; font-weight:900; }
.hotel-detail-nav a:hover, .hotel-detail-nav a:focus-visible { background:#eef5ff; color:var(--blue); }
.hotel-detail-content { display:grid; gap:16px; }
.hotel-overview-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:start; margin-top:0; }
.hotel-rating-summary { display:flex; align-items:center; gap:10px; min-width:185px; }
.hotel-rating-summary > strong, .hotel-review-score { display:grid; place-items:center; width:58px; height:58px; border-radius:8px 8px 8px 2px; background:var(--navy); color:#fff; font-size:21px; }
.hotel-rating-summary b, .hotel-rating-summary small { display:block; color:var(--navy); }
.hotel-rating-summary small { margin-top:4px; max-width:120px; color:#66758a; font-size:11px; line-height:1.35; }
.hotel-detail-section-card { scroll-margin-top:150px; border:1px solid var(--line); border-radius:8px; padding:20px; background:#fff; }
.hotel-card-heading { display:flex; align-items:start; justify-content:space-between; gap:20px; margin-bottom:16px; }
.hotel-card-heading h3 { margin:3px 0 0; color:var(--navy); }
.hotel-amenity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.hotel-amenity-grid span { display:flex; align-items:center; gap:9px; border-radius:6px; padding:11px; background:#f6f9fd; color:#263750; font-size:13px; font-weight:800; }
.hotel-amenity-grid i { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#e3f1ff; color:var(--blue); font-style:normal; }
.hotel-location-layout { display:grid; grid-template-columns:minmax(260px,1.2fr) minmax(220px,.8fr); gap:18px; align-items:center; }
.hotel-location-map { position:relative; min-height:250px; overflow:hidden; border:1px solid #bed9f4; border-radius:8px; background:linear-gradient(28deg,transparent 48%,rgba(255,255,255,.75) 49% 52%,transparent 53%),linear-gradient(142deg,#d9f0dd 0 28%,#dcecff 28% 61%,#f3ead4 61%); }
.hotel-location-map::before, .hotel-location-map::after { content:""; position:absolute; inset:18% -8%; border:3px solid rgba(255,255,255,.9); border-radius:50%; transform:rotate(-8deg); }
.hotel-location-map::after { inset:-12% 28%; transform:rotate(28deg); }
.hotel-location-pin { position:absolute; z-index:1; left:50%; top:50%; max-width:70%; transform:translate(-50%,-50%); border-radius:999px 999px 999px 4px; padding:12px 16px; background:var(--navy); color:#fff; font-size:12px; font-weight:900; box-shadow:0 10px 24px rgba(7,26,56,.25); }
.hotel-policy-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.hotel-policy-grid p { display:flex; align-items:flex-start; gap:9px; margin:0; border:1px solid #e4ebf4; border-radius:6px; padding:12px; color:#3b4b63; }
.hotel-policy-grid span { color:var(--blue); font-weight:950; }
.hotel-review-score { flex:0 0 58px; }
.hotel-review-bars { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.hotel-review-bars p { display:grid; gap:7px; margin:0; color:#43516a; font-size:13px; font-weight:850; }
.hotel-review-bars i { height:7px; overflow:hidden; border-radius:99px; background:#e8eef5; }
.hotel-review-bars b { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--blue),#50a5ee); }
.booking-safety-note { display:grid; gap:4px; margin-top:14px; border-top:1px solid var(--line); padding-top:14px; }
.booking-safety-note b { color:var(--navy); font-size:12px; }
.booking-safety-note span { color:#66758a; font-size:11px; line-height:1.45; }
.hotel-room-table { overflow:hidden; border:1px solid var(--line); border-radius:8px; }
.hotel-room-table-head, .hotel-room-rate { display:grid; grid-template-columns:minmax(210px,1.5fr) minmax(130px,.8fr) minmax(160px,1fr) minmax(120px,.7fr) minmax(120px,.65fr); }
.hotel-room-table-head { background:var(--navy); color:#fff; font-size:12px; font-weight:900; }
.hotel-room-table-head span, .hotel-room-rate > div { padding:12px; }
.hotel-room-rate { align-items:center; border-top:1px solid var(--line); background:#fff; }
.hotel-room-rate:nth-child(odd) { background:#fbfcfe; }
.hotel-room-rate h3 { margin:0 0 5px; color:var(--navy); font-size:15px; }
.hotel-room-rate p, .hotel-room-rate small { margin:0; }
.hotel-room-rate strong, .hotel-room-rate small { display:block; }
.hotel-room-rate strong { color:var(--navy); font-size:17px; }
.hotel-room-rate small { margin-top:3px; color:#66758a; }
.hotel-room-rate button { width:100%; padding-inline:10px; }
.supplier-acceptance-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.supplier-acceptance-card { border:1px solid var(--line); border-radius:8px; padding:18px; background:#fff; }
.supplier-acceptance-card h4, .supplier-acceptance-card h5 { margin:4px 0 12px; color:var(--navy); }
.supplier-stage-list { overflow:hidden; border:1px solid var(--line); border-radius:7px; }
.supplier-stage-list p { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0; border-top:1px solid var(--line); padding:9px 11px; font-size:12px; }
.supplier-stage-list p:first-child { border-top:0; }
.supplier-stage-list span { color:#43516a; }
.supplier-stage-list b { color:var(--navy); text-align:right; }
.supplier-acceptance-card details { margin-top:14px; border-top:1px solid var(--line); padding-top:12px; }
.supplier-acceptance-card summary { color:var(--navy); font-weight:900; cursor:pointer; }
.supplier-acceptance-card li, .supplier-acceptance-decision li { margin-top:6px; color:#526178; font-size:12px; line-height:1.45; }
.supplier-acceptance-decision { margin-top:16px; border-left:4px solid var(--blue); border-radius:6px; padding:16px 18px; background:#f3f8ff; }
.supplier-acceptance-decision b { color:var(--navy); }
.editorial-detail { display:grid; gap:20px; }
.editorial-hero-panel { position:relative; overflow:hidden; border-radius:8px; background:var(--navy); min-height:380px; }
.editorial-hero-panel .detail-hero { min-height:380px; border-radius:8px; opacity:.72; }
.editorial-hero-copy { position:absolute; left:32px; right:32px; bottom:28px; max-width:760px; color:#fff; }
.editorial-hero-copy h2 { color:#fff; font-size:42px; line-height:1.05; margin:10px 0; }
.editorial-hero-copy p { color:#eef5ff; max-width:720px; }
.editorial-hero-copy .pill { color:var(--navy); background:#fff; }
.editorial-reading-layout { grid-template-columns:minmax(0,1fr) 340px; align-items:start; }
.editorial-article { max-width:820px; font-size:17px; line-height:1.78; padding:28px; }
.editorial-article .editorial-lede { font-size:20px; color:var(--navy); font-weight:800; line-height:1.55; }
.editorial-article ul { display:grid; gap:10px; padding-left:20px; }
.editorial-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.editorial-tags span { border:1px solid var(--line); border-radius:999px; padding:7px 10px; color:var(--navy); background:#f6f9ff; font-weight:800; font-size:12px; }
.editorial-side-panel { background:linear-gradient(180deg,#061d46,#123b78); color:#fff; border:0; }
.editorial-side-panel h3, .editorial-side-panel p, .editorial-side-panel span { color:#fff; }
.related-package-link { display:block; border:1px solid rgba(255,255,255,.24); border-radius:8px; padding:10px; margin-top:10px; background:rgba(255,255,255,.1); }
.travel-insight-detail .back-link { width:max-content; color:var(--blue); font-weight:950; }
.insight-article-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:28px; padding-top:22px; border-top:1px solid var(--line); }
.insight-article-nav a { min-height:92px; display:grid; gap:8px; align-content:center; border:1px solid var(--line); border-radius:8px; padding:14px; background:#f8fbff; color:var(--navy); }
.insight-article-nav a:last-child { text-align:right; }
.insight-article-nav span { color:#66758a; font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.insight-article-nav strong { font-size:15px; line-height:1.35; }
.related-insights-panel { border:1px solid var(--line); border-radius:8px; padding:20px; background:#fff; }
.related-insights-panel .section-head { margin-bottom:14px; }
.related-insights-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.price-panel { position:sticky; top:92px; margin-top:0; }
.option-row { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding:12px 0; border-top:1px solid var(--line); }
.option-row:first-of-type { border-top:0; }
.option-row b, .option-row span { display:block; }
.option-row span { margin-top:3px; color:var(--muted); font-size:13px; }
.option-row strong { white-space:nowrap; color:var(--navy); }
.price-panel button { width:100%; margin:16px 0 6px; }
.package-readiness-card { border:1px solid var(--line); border-radius:8px; background:#f8fbff; padding:14px; display:grid; gap:10px; }
.package-readiness-card h3 { margin:0; }
.readiness-list { display:grid; gap:8px; margin:8px 0; }
.readiness-list span { display:flex; align-items:center; justify-content:space-between; gap:10px; border:1px solid var(--line); border-radius:999px; background:#fff; padding:8px 10px; color:var(--navy); font-size:12px; font-weight:850; }
.readiness-list.compact { grid-template-columns:1fr; margin:0; }
.readiness-list.compact span { justify-content:flex-start; border-radius:6px; }
pre { white-space:pre-wrap; padding:16px; border:1px solid var(--line); border-radius:8px; background:#fff; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
:where(a, button, input, select, textarea):focus-visible { outline:3px solid rgba(13,96,255,.7); outline-offset:3px; box-shadow:0 0 0 6px rgba(13,96,255,.14); }
.review-channel-card:focus-within, .review-form-panel label:focus-within, .review-sidebar .wide-panel:focus-within, #reviewDetailPanel:focus-within { border-color:var(--primary); box-shadow:0 0 0 4px rgba(13,96,255,.12), 0 12px 28px rgba(7,26,56,.05); }
.admin-table button:focus-visible, .review-admin-actions button:focus-visible, .filter-bar select:focus-visible, .filter-bar button:focus-visible { outline-color:#ff7a1a; box-shadow:0 0 0 6px rgba(255,122,26,.16); }
.public-review-panel { display:none; background:#fff; }
html[data-public-review="true"] [data-internal] { display:none !important; }
html[data-public-review="true"] .public-review-panel { display:none; }
html[data-public-review="true"] #loadSummary { display:none; }
html[data-public-review="true"].home-view main > section:not(#home):not(.homepage-only) { display:none !important; }
html[data-public-review="true"].home-view .site-footer.homepage-only { display:grid; }
html[data-public-review="true"]:not(.home-view) main > section { display:none !important; }
html[data-public-review="true"]:not(.home-view) main > section.active-public-section { display:block !important; }
html[data-public-review="true"]:not(.home-view) .site-footer.homepage-only { display:none !important; }
html[data-public-review="true"].experiences-view .experiences-catalogue-shell,
html[data-public-review="true"].experiences-view #event-footer { display:none !important; }
html:not([data-public-review="true"]) .homepage-only { display:none !important; }
@media (prefers-reduced-motion:reduce) {

}

@media (max-width:760px) {
  .package-catalogue-panel { grid-column:auto; }
  .package-catalogue-panel .admin-package-list article { grid-template-columns:1fr; }
  .package-catalogue-panel .admin-package-list article > .package-catalogue-actions { grid-column:auto; grid-template-columns:1fr 1fr; }
  .featured-insights-grid { grid-template-columns:1fr; }
  .editorial-admin-list article,
  .editor-actions { align-items:stretch; flex-direction:column; }
  .editorial-hero-panel { min-height:auto; display:grid; }
  .editorial-hero-panel .detail-hero { min-height:260px; border-radius:8px 8px 0 0; opacity:.88; }
  .editorial-hero-copy { position:static; padding:22px; }
  .editorial-hero-copy h2 { font-size:30px; }
  .editorial-reading-layout { grid-template-columns:1fr; }
  .editorial-article { font-size:16px; padding:20px; }
}
html[data-public-review="true"] pre { display:none; }
html[data-public-review="true"] .topbar nav { gap:20px; }
html[data-public-review="true"] .topbar nav a { color:var(--navy); }
html[data-public-review="true"] .hero-booking-panel { margin-bottom:6px; }
@media (max-width:1100px){
  .section-cinematic-hero{grid-template-columns:1fr;align-items:end}
  .medical-cinematic-hero .button-link,.travel-insights-hero button{justify-self:start}
  .travel-insights-hero{grid-template-columns:1fr}
  .about-story-grid{grid-template-columns:1fr;gap:36px}
  .about-mission-card{position:relative;top:auto}
  .about-reasons > div{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
  .about-reasons article:nth-child(odd){border-left:1px solid var(--line)}
  .about-stats-band{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-stats-band article:nth-child(odd){border-left:0}
  .approved-package-hero{grid-template-columns:minmax(0,1fr);padding-top:62px}
  .approved-booking-card{max-width:420px;align-self:start}
  .approved-package-shell{grid-template-columns:1fr;gap:20px}
  .approved-package-nav{position:static;display:flex;overflow:auto;white-space:nowrap}
  .approved-nav-help{min-width:220px}
  .approved-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .approved-bottom-bar{grid-template-columns:1fr 1fr;bottom:10px;margin-inline:5vw}
  body:has(.approved-package-page) .whatsapp-float{bottom:max(176px,calc(176px + env(safe-area-inset-bottom)))}
}
@media (max-width:980px){ .topbar{align-items:start}.hero-booking-panel{grid-template-columns:1fr 1fr}.hero-rating{display:none}.more-menu-panel{right:auto;left:0}.cruise-search-panel,.stay-search-panel,.stays-layout,.admin-management-layout,.experience-search-panel,.experiences-layout,.plan-trip-layout,.origin-layout,.qatar-layout,.qatar-hero-panel,.concierge-layout,.mice-layout,.medical-layout,.review-page-layout,.preview-inspection-layout{grid-template-columns:1fr}.trip-builder-card,.experience-support-card,.trip-summary-panel,.review-sidebar{position:static}.stay-grid,.experience-grid{grid-template-columns:1fr 1fr}.choice-grid,.review-card-grid,.testimonial-row{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-grid,.origin-market-grid,.origin-benefit-grid,.qatar-package-grid,.mice-solution-grid,.medical-service-grid,.medical-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-rating-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-trip-summary{grid-template-columns:140px minmax(0,1fr)}.review-action-row{justify-content:flex-start}.review-trip-summary .review-action-row{grid-column:1/-1} }
@media (max-width:760px){
  .footer-socials { justify-content:flex-start; }
  .footer-bottom { padding-right:0; padding-bottom:68px; }
  .whatsapp-float { right:max(14px,env(safe-area-inset-right)); bottom:max(14px,env(safe-area-inset-bottom)); width:54px; min-height:54px; padding:9px; justify-content:center; }
  body:has(.approved-package-page) .whatsapp-float { bottom:max(14px,env(safe-area-inset-bottom)); }
  .whatsapp-float svg { width:34px; height:34px; }
  .whatsapp-float span { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
}
@media (max-width:980px){
  html[data-admin-portal="true"] .topbar nav { display:none; }
  html[data-admin-portal="true"] .admin-sidebar-toggle { position:fixed; z-index:34; top:20px; right:18px; display:block; min-height:40px; }
  html[data-admin-portal="true"] .admin-sidebar { top:0; width:min(300px,86vw); padding-top:86px; transform:translateX(-105%); transition:transform .2s ease; }
  html[data-admin-portal="true"] .admin-sidebar.open { transform:translateX(0); }
  html[data-admin-portal="true"] main, html[data-admin-portal="true"] .site-footer { margin-left:0; }
}
@media (max-width:980px){.stay-search-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.stay-search-primary>button{grid-column:1/-1}.stay-search-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.property-type-carousel{grid-auto-columns:clamp(205px,42vw,260px)}.hotel-destination-card,.hotel-destination-card.featured{grid-column:span 3}}
@media (max-width:1180px){
  .hotels-concierge-card{position:relative;right:auto;top:auto;width:max-content;max-width:100%;margin-top:28px}
  .hotels-search-wrap{width:min(94vw,980px)}
  .hotels-phase-one .stay-search-primary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hotels-phase-one .stay-search-primary>button{grid-column:1/-1}
  .hotels-phase-one .property-type-carousel{grid-auto-columns:clamp(280px,42vw,420px)}
  .hotels-service-pillars{grid-template-columns:1fr;gap:18px}
  .hotels-service-pillars article{border-left:0;border-top:1px solid #dbe2ed;padding:18px 4vw}
  .hotels-service-pillars article:first-child{border-top:0}
  .hotels-destination-section .hotel-destination-card.destination-wide{transform:none}
  .hotels-editorial-feature{grid-template-columns:1fr;margin-bottom:70px}
  .hotels-editorial-feature>img{min-height:440px;order:-1}
  .hotels-collection-cards{grid-template-columns:1fr}
  .hotels-planning-feature{grid-template-columns:1fr}
  .hotels-planning-feature>img{min-height:430px}
  .hotels-enquiry-pills span:nth-child(odd){border-left:0}
  .hotels-lifestyle-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hotels-lifestyle-gallery figure:nth-child(n){padding:0}
  .hotels-footer-main{grid-template-columns:1fr}
  .hotels-footer-newsletter{padding-right:0;border-right:0}
  .hotels-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .hotels-landing-hero{min-height:660px;padding:58px 5vw 138px}
  .packages-video-hero{min-height:660px;margin:0 -5vw 42px}
  .hotels-hero-content h1{font-size:clamp(38px,10.4vw,48px);overflow-wrap:normal}
  .hotels-search-wrap{margin-top:-96px}
  .hotels-phase-one .stay-search-panel{padding:20px}
  .hotels-phase-one .stay-search-primary,.hotels-phase-one .stay-search-advanced-grid{grid-template-columns:1fr}
  .hotels-phase-one .hotel-discovery-head{display:grid;gap:18px;align-items:start}
  .hotels-phase-one .hotel-discovery-head h2{font-size:42px}
  .hotels-phase-one .property-type-carousel{grid-auto-columns:min(82vw,360px);gap:16px}
  .hotels-phase-one .property-type-card img{height:300px}
  .hotels-destination-section .hotel-destination-mosaic{display:grid;grid-auto-flow:column;grid-auto-columns:min(82vw,370px);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:18px}
  .hotels-destination-section .hotel-destination-card,.hotels-destination-section .hotel-destination-card.destination-wide{grid-column:auto;scroll-snap-align:start}
  .hotels-destination-section .hotel-destination-card img,.hotels-destination-section .hotel-destination-card.destination-wide img{height:250px}
  .hotels-destination-section .hotel-destination-card em{grid-column:1;grid-row:auto;margin-top:8px}
  .hotels-editorial-copy{padding:46px 5vw}
  .hotels-editorial-copy h2{font-size:44px}
  .hotels-editorial-copy .button-link{min-width:0;width:100%;min-height:60px;padding-inline:22px;font-size:18px}
  .hotels-collections-head h2{font-size:42px}
  .hotels-collections-head p:not(.eyebrow){font-size:19px}
  .hotels-collection-tabs{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:10px}
  .hotels-collection-tabs button{flex:0 0 auto}
  .hotels-collection-card img{height:300px}
  .hotels-planning-feature{width:100%;margin-bottom:72px}
  .hotels-planning-copy{padding:46px 5vw}
  .hotels-planning-copy h2{font-size:44px}
  .hotels-planning-copy p:not(.eyebrow){font-size:19px}
  .hotels-planning-actions{display:grid}
  .hotels-planning-actions button,.hotels-planning-actions .secondary-button,.hotels-concierge-gallery button{width:100%;min-height:58px;padding-inline:18px;font-size:17px}
  .hotels-enquiry-pills{grid-template-columns:1fr}
  .hotels-enquiry-pills span{border-left:0;border-top:1px solid #d9e1eb}
  .hotels-enquiry-pills span:first-child{border-top:0}
  .hotels-concierge-gallery{width:min(90vw,520px)}
  .hotels-lifestyle-gallery{grid-template-columns:1fr;gap:28px}
  .hotels-lifestyle-gallery img{height:340px}
  .hotels-results-workspace{width:90vw;margin:72px auto;padding:24px}
  .hotels-results-intro h2{font-size:34px}
  .hotels-footer-treatment{width:90vw;padding-top:52px}
  .hotels-footer-newsletter form{grid-template-columns:1fr}
  .hotels-footer-links{grid-template-columns:1fr}
  .hotels-footer-bottom{display:grid}
  .hotels-footer-bottom .footer-brand{display:grid;justify-items:start}
}
@media (max-width:1120px){
  .tours-video-hero{min-height:610px;padding-inline:5vw}
  .tours-hero-header{left:5vw;right:5vw}
  .tours-hero-copy h2{font-size:56px}
  .tours-confidence-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:32px 5vw}
  .tours-confidence-strip article{border-left:0;border-top:1px solid #d8dfeb;padding:22px 18px}
  .tours-confidence-strip article:nth-child(-n+2){border-top:0}
  .tours-confidence-strip article:nth-child(even){border-left:1px solid #d8dfeb}
  .tours-discovery-panels{padding-inline:3vw}
  .tours-card-track{grid-auto-columns:calc((100% - (var(--tours-card-gap) * 2)) / 3)}
  .tours-effortless-card{grid-template-columns:1fr}
  .tours-effortless-copy{min-height:470px}
  .tours-effortless-visual{min-height:420px}
  .tours-final-footer{padding:64px 4vw 78px}
  .tours-final-confidence{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 0;padding-bottom:34px}
  .tours-final-confidence article{border-left:0;border-top:1px solid #d9dee8;padding:26px 24px 0}
  .tours-final-confidence article:nth-child(-n+2){border-top:0;padding-top:0}
  .tours-final-confidence article:nth-child(even){border-left:1px solid #d9dee8}
  .tours-footer-main{grid-template-columns:1.2fr 1fr 1fr;gap:34px 48px;padding:48px 18px 46px}
  .tours-footer-brand{grid-column:1 / -1}
  .tours-footer-brand img{width:280px}
  .tours-footer-legal{grid-template-columns:1fr;gap:22px;padding:26px 18px 0}
  .tours-footer-app{width:max-content;min-width:280px;padding-left:0;border-left:0}
}
@media (max-width:480px){
  .hotels-hero-content h1{font-size:39px;line-height:1.03}
  .hotels-hero-content p:not(.eyebrow){font-size:18px}
  .hotels-concierge-card{width:100%;min-width:0}
}
@media (max-width:1100px){.stays-results-layout,.stays-results-layout[data-view="split"],.stays-results-layout[data-view="map"]{grid-template-columns:220px minmax(0,1fr)}.stays-results-layout[data-view="split"] .stay-map-panel{grid-column:1/-1;position:static}.stay-map-canvas{min-height:380px}}
@media (max-width:820px){.stay-results-toolbar{display:grid}.stay-results-actions{flex-wrap:wrap}.stays-results-layout,.stays-results-layout[data-view="split"],.stays-results-layout[data-view="map"]{grid-template-columns:1fr}.stay-filter-sidebar{position:static}.stay-results-list .stay-card{grid-template-columns:1fr}.stay-results-list .stay-image-wrap img{max-height:300px}.stay-map-panel{position:static}}
@media (max-width:900px){.hotel-detail-gallery{grid-template-columns:1fr}.hotel-detail-main-image{min-height:360px}.hotel-detail-thumbnails{grid-template-columns:repeat(4,minmax(110px,1fr));overflow-x:auto;padding:0 8px 8px}.hotel-detail-thumbnails img{min-height:86px}.hotel-room-table{border:0;display:grid;gap:12px;overflow:visible}.hotel-room-table-head{display:none}.hotel-room-rate{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px solid var(--line);border-radius:8px;padding:15px}.hotel-room-rate>div{padding:0}.hotel-room-rate>div:first-child,.hotel-room-rate>div:last-child{grid-column:1/-1}.hotel-room-rate button{width:auto}}
@media (max-width:900px){.supplier-acceptance-grid{grid-template-columns:1fr}}
@media (max-width:640px){.stay-search-primary,.stay-search-advanced-grid{grid-template-columns:1fr}.stay-search-primary>button{grid-column:auto}.property-type-carousel{grid-auto-columns:min(78vw,250px)}.property-type-card img{height:170px}.hotel-destination-mosaic{grid-template-columns:1fr}.hotel-destination-card,.hotel-destination-card.featured{grid-column:auto;min-height:230px}.hotel-carousel-controls{display:none}.hotel-discovery-head{align-items:start}.hotel-trip-planner{padding:18px}}
@media (max-width:640px){.hotel-detail-gallery{margin-inline:-5vw;border-radius:0}.hotel-detail-main-image{min-height:280px}.hotel-detail-nav{top:62px;margin-inline:-2vw;border-radius:0}.hotel-overview-card,.hotel-location-layout,.hotel-policy-grid,.hotel-review-bars{grid-template-columns:1fr}.hotel-rating-summary{min-width:0}.hotel-amenity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-room-rate{grid-template-columns:1fr}.hotel-room-rate>div{grid-column:1/-1}.hotel-room-rate button{width:100%}.hotel-card-heading{align-items:flex-start}.hotel-detail-section-card{padding:16px}}
@media (max-width:760px){ .topbar{display:grid;padding:12px 5vw}.brand img{width:136px}nav{gap:12px;overflow:visible;flex-wrap:wrap;padding-bottom:4px}.more-menu{position:static}.more-menu-panel{position:static; min-width:100%; margin-top:8px; box-shadow:0 14px 30px rgba(7,26,56,.1)}.grid,.hub-grid,.detail-layout,.stay-grid,.experience-grid,.choice-grid,.comparison-grid,.origin-market-grid,.origin-benefit-grid,.qatar-package-grid,.mice-solution-grid,.mice-program-grid,.medical-service-grid,.medical-destination-grid,.review-card-grid,.category-rating-grid,.testimonial-row,.related-insights-grid,.insight-article-nav,.mini-timeline{grid-template-columns:1fr}.insight-article-nav a:last-child{text-align:left}.wide-panel{grid-column:auto}.section-head{display:grid}.market-selector{justify-content:flex-start}.payment-test-panel,.filter-bar,.lead-row,.room-row{display:grid}.wetravel-mapping-form,.wetravel-mapping-row{grid-template-columns:1fr}.wetravel-mapping-form .mapping-url-field,.wetravel-mapping-form .mapping-note-field{grid-column:auto}.room-row strong,.room-row span{text-align:left}.stay-card-footer{display:grid}.hero{min-height:760px;padding:0 5vw 34px}.hero-content{padding-top:64px} h1{font-size:38px}.qatar-hero-panel{padding:20px}.qatar-hero-panel h3{font-size:24px}.hero-booking-panel{grid-template-columns:1fr;margin-top:34px}.hero-booking-panel article{border-right:0;border-bottom:1px solid var(--line);padding:14px 10px}.hero-booking-panel article:last-child{border-bottom:0}.mini-fields{grid-template-columns:1fr}.price-panel{position:static}.gallery-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-line{display:grid}.summary-line b,.summary-line strong{text-align:left}.review-trip-summary{grid-template-columns:1fr}.review-action-row .button-link,.review-action-row button{width:100%}.review-progress-row{display:grid}.review-stars{letter-spacing:1px}.site-footer{grid-template-columns:1fr;padding:42px 5vw 24px}.footer-bottom{display:grid} }
@media (max-width:760px){
  .tours-video-hero{min-height:640px;align-content:end;padding:24px 5vw 54px}
  .tours-hero-video-desktop{display:none}
  .tours-hero-video-mobile{display:block}
  .tours-hero-header{top:24px;align-items:flex-start}
  .tours-hero-logo img{width:168px;max-width:46vw}
  .tours-hero-controls{gap:10px;font-size:14px}
  .tours-hero-controls button:nth-of-type(1),.tours-control-separator:first-of-type{display:none}
  .tours-hero-controls a[href="#crm"]{display:none}
  .tours-sign-in{min-width:82px;min-height:42px;padding-inline:16px !important}
  .tours-hero-copy{margin-top:96px}
  .tours-hero-copy h2{font-size:44px;line-height:1.06}
  .tours-hero-copy p{font-size:18px;line-height:1.38;margin-bottom:28px}
  .tours-hero-search{height:60px;grid-template-columns:minmax(0,1fr) 58px;border-radius:10px}
  .tours-hero-search input{padding-left:18px;font-size:16px}
  .tours-hero-search button{width:58px;height:60px}
  .tours-hero-search svg{width:26px;height:26px}
  .tours-confidence-strip{grid-template-columns:1fr;min-height:0;padding:22px 5vw 26px}
  .tours-confidence-strip article{grid-template-columns:60px minmax(0,1fr);gap:16px;min-height:0;border-left:0 !important;border-top:1px solid #d8dfeb !important;padding:18px 0}
  .tours-confidence-strip article:first-child{border-top:0 !important}
  .tours-icon{width:58px;height:58px}
  .tours-icon svg{width:29px;height:29px}
  .tours-confidence-strip h3{font-size:18px}
  .tours-confidence-strip p{font-size:15px}
  .tours-discovery-panels{gap:22px;padding:36px 4vw 46px}
  .tours-carousel-panel{border-radius:12px;padding:22px 14px 16px}
  .tours-carousel-head{grid-template-columns:48px minmax(0,1fr);gap:12px;margin-bottom:16px}
  .tours-panel-badge{width:42px;height:42px}
  .tours-panel-badge svg{width:26px;height:26px}
  .tours-carousel-head h2{font-size:27px;line-height:1.08}
  .tours-carousel-head p{font-size:16px;line-height:1.28}
  .tours-carousel-actions{grid-column:1/-1;justify-content:space-between;gap:10px}
  .tours-see-all{font-size:15px}
  .tours-carousel-button{width:44px;height:44px;font-size:30px}
  .tours-card-track{--tours-card-gap:12px;grid-auto-columns:78%;padding-bottom:2px}
  .tours-feature-card img{height:138px}
  .tours-feature-card div{min-height:184px;padding:12px 14px 14px}
  .tours-feature-card h3{font-size:16px;min-height:48px}
  .tours-meta{gap:8px;font-size:12px}
  .tours-price{font-size:19px}
  .tours-effortless-section{padding:32px 4vw 60px}
  .tours-effortless-section > h2{margin-bottom:22px;font-size:31px;line-height:1.14}
  .tours-effortless-card{min-height:0;border-radius:18px}
  .tours-effortless-copy{min-height:430px;padding:40px 26px 108px}
  .tours-effortless-slide h3{font-size:36px;line-height:1.16;margin-bottom:20px}
  .tours-effortless-slide p{font-size:20px;line-height:1.38}
  .tours-effortless-controls{left:26px;bottom:34px;gap:18px}
  .tours-effortless-controls button{width:52px;height:52px;font-size:38px}
  .tours-effortless-controls span{min-width:54px;font-size:23px}
  .tours-effortless-visual{min-height:330px}
  .tours-effortless-mini-card{top:22px;right:18px;left:18px;width:auto;grid-template-columns:76px minmax(0,1fr) 48px;gap:12px;padding:13px;border-radius:13px}
  .tours-effortless-mini-card > img{width:76px;height:64px;border-radius:9px}
  .tours-effortless-mini-card h3{font-size:17px;margin-bottom:6px}
  .tours-effortless-mini-card p{font-size:13px;gap:6px;margin-bottom:5px}
  .tours-effortless-rating span:first-child{font-size:20px}
  .tours-effortless-mini-card a{width:48px;height:48px;font-size:25px}
  .tours-final-footer{padding:44px 5vw 104px}
  .tours-final-confidence{grid-template-columns:1fr;padding-bottom:28px}
  .tours-final-confidence article{grid-template-columns:62px minmax(0,1fr);gap:16px;min-height:0;border-left:0 !important;border-top:1px solid #d9dee8 !important;padding:20px 0 0}
  .tours-final-confidence article:first-child{border-top:0 !important;padding-top:0}
  .tours-final-icon{width:58px;height:58px}
  .tours-final-icon svg{width:30px;height:30px}
  .tours-final-confidence h3{margin-top:2px;font-size:18px}
  .tours-final-confidence p{font-size:15px;line-height:1.4}
  .tours-footer-main{grid-template-columns:1fr;gap:22px;padding:36px 0 30px}
  .tours-footer-brand img{width:230px}
  .tours-footer-nav h3,.tours-footer-social h3{font-size:20px;margin-bottom:12px}
  .tours-footer-nav a,.tours-footer-nav span,.tours-footer-social span{min-height:28px;margin-bottom:8px;font-size:16px}
  .tours-footer-legal{gap:20px;padding:24px 0 0}
  .tours-footer-legal nav{display:grid;gap:12px;font-size:15px}
  .tours-footer-legal nav span[aria-hidden="true"]{display:none}
  .tours-footer-app{width:100%;min-width:0;grid-template-columns:58px minmax(0,1fr);gap:16px}
  .tours-footer-app h3{font-size:19px}
  .tours-footer-app p{font-size:15px}
  .experiences-catalogue-shell{padding:42px 5vw 60px}
  .section-cinematic-hero{min-height:440px;margin:-8px 0 22px;padding:42px 22px 30px}
  .section-cinematic-hero h2{font-size:36px}
  .section-cinematic-hero p:not(.eyebrow){font-size:15px}
  .section-cinematic-hero .button-link,.section-cinematic-hero button{width:100%}
  .medical-cinematic-hero{min-height:520px;margin:0 0 22px}
  .medical-cinematic-hero h2{font-size:38px}
  .travel-insights-hero{min-height:420px;margin:-8px -5vw 18px;padding:48px 5vw 36px;background-position:center}
  .travel-insights-hero h2{font-size:40px}
  .travel-insights-hero .muted{font-size:16px}
  .travel-insights-hero button{width:100%}
  .about-hero{min-height:440px;padding:60px 5vw 76px}
  .about-hero h2{font-size:48px}
  .about-hero p:not(.about-breadcrumb){font-size:18px}
  .about-stats-band{width:90%;margin:-34px auto 52px;padding:22px 14px}
  .about-story-grid{padding-inline:5vw}
  .about-mission-card{padding:28px 22px}
  .about-reasons{margin-top:58px;padding:48px 5vw}
  .about-reasons > div{grid-template-columns:1fr}
  .about-reasons article{min-height:0}
  .about-stats-band{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-stats-band article{border:0;padding:16px 8px}
  .about-stats-band article:nth-child(odd){border-right:1px solid var(--line)}
  .about-stats-band article:nth-child(n+3){border-top:1px solid var(--line)}
  .stays-section .stay-search-panel,.experiences-section .experience-search-panel{margin-top:-28px}
  .approved-package-topbar{position:relative;display:grid;padding:12px 5vw}
  .approved-package-topbar > div{flex-wrap:wrap}
  .approved-package-hero{min-height:620px;padding:42px 5vw 30px}
  .approved-package-hero-copy h1{font-size:42px}
  .approved-curator{grid-template-columns:64px minmax(0,1fr)}
  .approved-curator img{width:64px}
  .approved-booking-card{width:100%;padding:18px}
  .approved-package-shell{padding:22px 5vw 110px}
  .approved-two-column,.approved-option-grid,.approved-lower-grid{grid-template-columns:1fr}
  .package-party-option-list,.package-party-summary{grid-template-columns:1fr}
  .package-payment-choice-head{grid-template-columns:1fr}
  .package-party-summary p,.package-party-summary button,.package-party-summary small{grid-column:auto}
  .package-party-builder{padding:16px}
  .approved-section,.approved-two-column article{padding:18px}
  .approved-itinerary article{grid-template-columns:1fr;gap:10px;padding-left:26px}
  .approved-itinerary img{max-width:260px}
  .approved-organizer-row{grid-template-columns:1fr}
  .approved-bottom-bar{position:static;grid-template-columns:1fr;margin:0 5vw 24px}
  .approved-bottom-bar button{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .tours-hero-video{display:none}
}
@media (max-width:540px){ .customer-review-section{padding-inline:4vw}.customer-review-section .section-head button{width:100%}.review-channel-card,.review-form-panel,.review-empty-state,.review-sidebar .wide-panel{padding:14px}.review-channel-card{min-height:auto}.review-card-grid{gap:10px}.review-trip-summary img{max-height:190px}.review-form-panel .form-grid{grid-template-columns:1fr}.category-rating-grid label{min-width:0}.toggle-line{align-items:flex-start}.review-admin-actions{display:grid}.review-admin-actions button{width:100%}#reviewDetailPanel{max-height:none}.review-completion-nudge{border-left-width:3px}.status-pill{white-space:normal}.admin-table{min-width:760px} }
/* Supabase invitation and password-recovery flow */
.auth-recovery-shell { min-height: 100vh; display: grid; place-items: center; padding: 2rem 1rem; background: #f5f1fb; }
.auth-recovery-card { width: min(100%, 34rem); padding: 2rem; border-radius: 1rem; background: #fff; box-shadow: 0 1rem 3rem rgb(40 20 70 / 12%); }
.auth-recovery-card .brand { display: inline-flex; margin-bottom: 1.5rem; }
.auth-recovery-card .brand img { max-width: 10rem; }
.auth-recovery-card form { display: grid; gap: .75rem; margin: 1.5rem 0; }
.auth-recovery-card input { width: 100%; min-height: 2.75rem; padding: .7rem .8rem; border: 1px solid #74658a; border-radius: .45rem; }
.auth-recovery-card input:focus-visible, .auth-recovery-card button:focus-visible, .auth-recovery-card a:focus-visible { outline: 3px solid #f2a900; outline-offset: 3px; }
.mfa-qr svg { display: block; width: min(240px, 100%); height: auto; margin: 1rem auto; }
.auth-recovery-card details { margin: 1rem 0; overflow-wrap: anywhere; }
.auth-recovery-card [hidden] { display: none !important; }

/* Staff-controlled package bank transfers */
#bankTransferForm fieldset { border:1px solid var(--line); border-radius:12px; padding:18px; display:grid; gap:12px; }
#bankTransferForm fieldset legend { padding:0 8px; font-weight:800; color:var(--navy); }
#bankTransferForm textarea { min-height:92px; }
.bank-transfer-instructions { margin-top:16px; padding:18px; border:1px solid var(--line); border-radius:12px; background:#f8faff; }
.bank-transfer-instructions dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.bank-transfer-instructions dl div { padding:12px; border-radius:8px; background:#fff; }
.bank-transfer-instructions dt { color:var(--muted); font-size:13px; }
.bank-transfer-instructions dd { margin:4px 0 0; overflow-wrap:anywhere; }
.bank-transfer-instructions form { display:grid; gap:10px; margin-top:14px; }
.bank-transfer-request > div:first-child { display:grid; gap:6px; min-width:0; }
.bank-transfer-request [data-bank-transfer-proof] { width:max-content; max-width:100%; overflow-wrap:anywhere; }
.bank-transfer-review-actions { display:flex; gap:8px; align-items:center; }
.payment-ledger-filters { display:flex; flex-wrap:wrap; gap:12px; margin:16px 0; }
.payment-ledger-filters label { display:grid; gap:6px; min-width:180px; color:var(--navy); font-weight:800; }
.payment-ledger-filters select { min-height:44px; border:1px solid #b9c8da; border-radius:8px; padding:8px 10px; background:#fff; color:var(--navy); font:inherit; }
.payment-ledger-filters select:focus-visible { outline:3px solid rgba(13,96,255,.25); outline-offset:2px; border-color:var(--primary); }
.package-payment-ledger-row { align-items:center; }
@media (max-width:760px) {
  .bank-transfer-instructions dl { grid-template-columns:1fr; }
  .bank-transfer-review-actions { align-items:stretch; flex-direction:column; }
  .bank-transfer-review-actions button { width:100%; }
  .payment-ledger-filters { display:grid; grid-template-columns:1fr; }
  .payment-ledger-filters label { min-width:0; }
}
.sample-package-picker { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: .75rem; margin: 1rem 0; }
.sample-package-choice { display: flex; gap: .75rem; align-items: flex-start; padding: .9rem; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.sample-package-choice input { margin-top: .25rem; }
.sample-package-choice span { display: grid; gap: .25rem; }
.sample-package-choice small { color: var(--muted); }
.sample-validation-row { grid-template-columns: minmax(220px, 1fr) minmax(280px, 1.5fr) minmax(180px, .8fr); }
.validation-check { display: block; margin: .2rem 0; font-size: .86rem; }
.validation-check.passed { color: #216e45; }
.validation-check.blocked { color: #9a4d00; }
@media (max-width: 760px) { .sample-validation-row { grid-template-columns: 1fr; } }
.stay-destination-field{position:relative}.stay-autocomplete{position:absolute;z-index:40;top:100%;left:0;right:0;margin:6px 0 0;padding:6px;list-style:none;background:#fff;border:1px solid #cfd8e6;border-radius:14px;box-shadow:0 18px 45px #13213d26}.stay-autocomplete li{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:10px;cursor:pointer}.stay-autocomplete li:hover,.stay-autocomplete li[aria-selected="true"]{background:#eef3ff;outline:2px solid #3658d9}.stay-autocomplete .stay-autocomplete-empty{cursor:default;color:var(--muted)}.stay-room-editor{display:grid;gap:12px;margin-top:14px}.stay-room-card{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:1px solid #dce3f0;border-radius:16px;padding:14px}.stay-room-card legend{font-weight:800;padding:0 6px}.stay-child-ages{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.stay-uat-login{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:12px}.stay-uat-login input{min-width:0}@media(max-width:980px){.stay-search-primary{grid-template-columns:1fr 1fr}.stay-search-advanced-grid{grid-template-columns:1fr 1fr}.stay-search-panel{margin:-24px auto 14px}}@media(max-width:700px){.stay-search-panel{width:calc(100% - 20px);padding:14px;margin:-18px auto 12px}.stay-search-primary,.stay-search-advanced-grid{grid-template-columns:1fr}.stay-date-range{grid-template-columns:1fr 1fr}.stay-uat-login{grid-template-columns:1fr}.stay-room-card{grid-template-columns:1fr}.stay-segments{overflow-x:auto}.stay-segments label{min-width:62px}.stay-meal-option::after{display:none}.stay-meal-explanation{min-height:34px}.stay-guests-popover{position:fixed;inset:auto 10px 10px;width:auto;max-height:75vh;overflow:auto}}
.stay-rate-dialog{width:min(680px,calc(100% - 28px));border:0;border-radius:24px;padding:28px;box-shadow:0 30px 90px #12213f55}.stay-rate-dialog::backdrop{background:#12213faa}.dialog-close{float:right;border:0;background:transparent;color:#12213f;font-size:28px}.stay-quote-summary{display:grid;gap:6px;padding:18px;border-radius:16px;background:#f4f7fc}.stay-quote-summary strong{font-size:28px}.price-change-alert{margin:16px 0;padding:16px;border-left:5px solid #db6d2e;background:#fff2e8}.stay-rate-dialog dl>div{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #e4e8ef}.stay-rate-dialog dt{font-weight:800}.stay-rate-dialog dd{margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;flex-wrap:wrap}

