/*!
 * B-LineXpress Bookings — single tour page + widget
 * Version: 0.1.0
 * Relies on brand tokens from blinexpress.css (.blx scope).
 */
.blxb-tourpage .blxb-back{display:inline-block;color:var(--gold,#c9a227);text-decoration:none;font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;}
.blxb-tourpage .blxb-back:hover{color:var(--gold-2,#e3c25a);}
.blxb-tourpage .blxb-meta{color:#cfccc4;font-size:15px;letter-spacing:.04em;margin:14px 0 0;}

.blxb-layout{display:grid;grid-template-columns:1.5fr .9fr;gap:clamp(32px,5vw,64px);align-items:start;}
.blxb-detail .blxb-lede{font-family:var(--serif,'Cormorant Garamond',serif);font-weight:500;
  font-size:clamp(19px,2vw,24px);line-height:1.5;color:#e9e6df;margin:18px 0 0;}

.blxb-facts{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0;}
.blxb-facts .fact{flex:1;min-width:150px;background:var(--panel,#0c0c0b);border:1px solid var(--line,#1c1b18);
  border-radius:6px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;}
.blxb-facts .fact .k{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted,#8d8a82);}
.blxb-facts .fact .v{font-family:var(--serif,'Cormorant Garamond',serif);font-size:20px;font-weight:600;color:var(--heading,#f3f1ec);}

.blxb-includes{margin-top:30px;}
.blxb-includes h3{font-family:var(--serif,'Cormorant Garamond',serif);font-weight:600;font-size:24px;
  color:var(--heading,#f3f1ec);margin:0 0 16px;}

/* widget */
.blxb-widget{position:sticky;top:96px;}
.blxb-card{background:var(--panel,#0c0c0b);border:1px solid var(--line-2,#26241f);border-radius:8px;
  padding:28px;box-shadow:0 30px 70px -30px rgba(0,0,0,.8);}
.blxb-card h3{font-family:var(--serif,'Cormorant Garamond',serif);font-weight:600;font-size:28px;
  color:var(--heading,#f3f1ec);margin:8px 0 0;}
.blxb-card-sub{color:var(--muted,#8d8a82);font-size:13.5px;line-height:1.6;margin:12px 0 22px;}
.blxb-form .blxb-f{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;}
.blxb-form label{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted,#8d8a82);}
.blxb-form input,.blxb-form textarea{background:var(--bg,#0a0a0a);border:1px solid #2a2823;border-radius:4px;
  color:#f0eee8;font-family:inherit;font-size:14px;padding:12px 13px;outline:none;width:100%;resize:vertical;color-scheme:dark;}
.blxb-form input:focus,.blxb-form textarea:focus{border-color:var(--gold,#c9a227);}
.blxb-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.blxb-submit{width:100%;justify-content:center;margin-top:6px;}
.blxb-submit[disabled]{opacity:.7;cursor:default;}
.blxb-fineprint{text-align:center;color:#6f6c64;font-size:12px;margin:14px 0 0;}
.blxb-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0;}
.blxb-err{color:#ff8a7a;font-size:13px;margin:10px 0 0;}

.blxb-success{text-align:center;padding:18px 6px;}
.blxb-success .blxb-check{width:60px;height:60px;border-radius:50%;border:2px solid var(--gold,#c9a227);
  color:var(--gold,#c9a227);font-size:30px;line-height:56px;margin:0 auto 16px;}
.blxb-success h3{font-family:var(--serif,'Cormorant Garamond',serif);font-size:26px;color:var(--heading,#f3f1ec);}
.blxb-success p{color:#cfccc4;font-size:14px;line-height:1.6;margin:10px 0 0;}

@media(max-width:900px){
  .blxb-layout{grid-template-columns:1fr;}
  .blxb-widget{position:static;}
}
@media(max-width:480px){
  .blxb-row{grid-template-columns:1fr;}
}

/* Mobile: 16px inputs prevent iOS zoom-on-focus; comfortable spacing */
@media(max-width:900px){
  .blxb-form input,.blxb-form textarea{font-size:16px;}
  .blxb-card{padding:22px;}
}
