/* =====================================================================
   BusinessClassASAP — Flight Search Widget (.vsearch) — FULL DESIGN CSS
   Extracted from OPEN-ME-index-v3-20260806-0932.html (build 20260806-0932)
   Covers: hero layout, trip/cabin toggle, from/to fields with autocomplete,
   date pickers, travelers popover, submit button, plus the later
   "theme + calendar placement" bugfix overrides from the same build.

   Drop this file in after home.css / airport-list.css / asap-airports.css
   (or merge its contents into home.css). No HTML/blade changes are needed —
   new_home_blade.php already markups the form with these exact classes/ids
   (.vhero, .vsearch, .vseg, .vrow, .vfield, .dp-*, .vpop, etc).
   ===================================================================== */

:root{
  --gold:#C9A84C; --gold-light:#E8C96A; --gold-dim:#8A6E30;
  --ink:#0D0D0E; --ink-2:#1A1A1C;
  --surface:#161618; --surface-2:#1E1E21; --surface-3:#252528;
  --text-primary:#F2EFE8; --text-secondary:#9E9B91; --text-muted:#5C5A54;
  --border:rgba(201,168,76,0.18); --border-hover:rgba(201,168,76,0.4);
  --danger:#E24B4A; --success:#1D9E75;
  --radius:6px; --radius-lg:12px; --field-bg:#fff; --field-ink:#1a2230;
}

/* ---------- BASE FORM DESIGN ---------- */
@keyframes pulse { 0%,100%{opacity:1;}50%{opacity:.3;} }
.field-error { font-size:10.5px;color:var(--danger);display:none;align-items:center;gap:4px;margin-top:1px; }
.field-error.show { display:flex; }
.field-error i { font-size:10px; }
.ac-list { position:absolute;left:0;right:0;top:calc(100% + 4px);background:#fff;border-radius:8px;box-shadow:0 18px 40px -12px rgba(0,0,0,0.6);z-index:60;max-height:230px;overflow-y:auto;display:none;border:1px solid #e3e7ee; }
.ac-list.open { display:block; }
.vhero { position:relative;min-height:calc(100vh - 66px);display:flex;align-items:center;padding:5.5rem 0 5rem;isolation:isolate; }
.vhero-media { position:absolute;inset:0;z-index:0;overflow:hidden;background:#070708; }
.vhero-media video,.vhero-media .vhero-poster { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block; }
.vhero-poster { background:#0b0b0d center/cover no-repeat; }
.vhero-grade { position:absolute;inset:0;z-index:1;pointer-events:none; background: linear-gradient(180deg, rgba(8,8,9,0.55) 0%, rgba(8,8,9,0.18) 30%, rgba(8,8,9,0.35) 70%, rgba(8,8,9,0.85) 100%), linear-gradient(100deg, rgba(8,8,9,0.88) 0%, rgba(8,8,9,0.55) 38%, rgba(8,8,9,0.12) 72%, rgba(8,8,9,0) 100%), radial-gradient(130% 120% at 88% 8%, rgba(201,168,76,0.16), transparent 55%); }
.vhero-grade::after { content:'';position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(232,201,106,0.6),transparent); }
.vhero-inner { position:relative;z-index:3;width:100%;max-width:1240px;margin:0 auto;padding:0 3rem; display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,0.98fr);gap:3.4rem;align-items:center; }
.vhero-eyebrow { display:inline-flex;align-items:center;gap:9px;padding:7px 15px;border:0.5px solid var(--border-hover); border-radius:2px;background:rgba(201,168,76,0.08);backdrop-filter:blur(6px); font-size:10.5px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1.7rem; }
.vhero-eyebrow::before { content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(201,168,76,0.55);animation:pulse 2.4s infinite; }
.vhero-title { font-family:'Cormorant Garamond',serif;font-weight:600;line-height:1.04; font-size:clamp(2.7rem,5vw,4.4rem);letter-spacing:-0.005em;margin-bottom:1.3rem; color:#FBF8F1;text-shadow:0 2px 30px rgba(0,0,0,0.45); }
.vhero-title em { font-style:italic;color:var(--gold-light); }
.vhero-lede { font-size:15.5px;line-height:1.75;color:#D7D3C8;max-width:440px;margin-bottom:2rem;text-shadow:0 1px 14px rgba(0,0,0,0.5); }
.vhero-proof { display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap;margin-bottom:1.4rem; }
.vhero-proof .pf { display:flex;align-items:center;gap:9px; }
.vhero-proof .pf .pf-n { font-family:'Cormorant Garamond',serif;font-size:1.9rem;font-weight:600;color:var(--gold-light);line-height:1; }
.vhero-proof .pf .pf-l { font-size:11px;color:#B9B5AB;line-height:1.3;letter-spacing:0.02em; }
.vhero-proof .pf-div { width:0.5px;height:30px;background:rgba(255,255,255,0.18); }
.vhero-consolidator { display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:0.03em;color:#C9C5B9; border:0.5px solid rgba(201,168,76,0.25);border-radius:100px;padding:9px 16px;margin-bottom:1.6rem; background:linear-gradient(120deg,rgba(201,168,76,0.07),rgba(201,168,76,0.015)); }
.vhero-consolidator i { color:var(--gold);font-size:12px; }
.vhero-callout { display:inline-flex;align-items:center;gap:11px;font-size:13px;color:#E7E3DA; }
.vhero-callout a { color:var(--gold-light);font-weight:600;letter-spacing:0.02em;border-bottom:0.5px solid var(--gold-dim);padding-bottom:1px;transition:color .2s; }
.vhero-callout a:hover { color:#fff; }
.vhero-callout i { color:var(--gold); }
.vsearch { position:relative;background:linear-gradient(160deg, rgba(22,22,24,0.86), rgba(13,13,14,0.92)); border:0.5px solid rgba(201,168,76,0.32);border-radius:16px; padding:1.7rem 1.7rem 1.55rem;backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%); box-shadow:0 30px 70px -24px rgba(0,0,0,0.85), inset 0 1px 0 rgba(255,255,255,0.04); }
.vsearch::before { content:'';position:absolute;top:0;left:1.7rem;right:1.7rem;height:1.5px; background:linear-gradient(to right,transparent,var(--gold),transparent); }
.vsearch-head { display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:1.15rem; }
.vsearch-head .vh-title { font-family:'Cormorant Garamond',serif;font-size:23px;font-weight:600;color:#F4F1E9;line-height:1.1; }
.vsearch-head .vh-sub { font-size:11.5px;color:var(--text-muted);margin-top:3px; }
.vsearch-secure { display:flex;align-items:center;gap:5px;font-size:10.5px;color:var(--text-muted); background:rgba(255,255,255,0.04);border:0.5px solid var(--border);padding:5px 9px;border-radius:3px;white-space:nowrap;flex-shrink:0; }
.vsearch-secure i { color:var(--success); }
.vseg { display:flex;gap:4px;background:rgba(255,255,255,0.04);border:0.5px solid var(--border);border-radius:8px;padding:3px;margin-bottom:11px; }
.vseg button { flex:1;display:flex;align-items:center;justify-content:center;gap:6px; font-family:'Inter',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.02em; padding:9px 4px;border:none;border-radius:5px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .18s; }
.vseg button i { font-size:11px; }
.vseg button.active { background:rgba(201,168,76,0.14);color:var(--gold-light);box-shadow:inset 0 0 0 0.5px var(--border-hover); }
.vfield { position:relative; }
.vrow { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px; }
.vrow.one { grid-template-columns:1fr; }
.vlabel { display:block;font-size:9.5px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:5px; }
.vinput-wrap { position:relative; }
.vinput-wrap > i { position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9aa3b0;font-size:12.5px;pointer-events:none;z-index:2; }
.vinput { width:100%;background:#fff;border:1px solid transparent;border-radius:8px;color:var(--field-ink); font-family:'Inter',sans-serif;font-size:13.5px;font-weight:500;padding:11px 12px 11px 33px;outline:none; transition:border-color .18s, box-shadow .18s;appearance:none;-webkit-appearance:none; }
.vinput::placeholder { color:#9aa3b0;font-weight:400; }
.vinput:focus { border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,0.24); }
.vswap { position:absolute;left:50%;top:calc(50% + 8px);transform:translate(-50%,-50%);z-index:5; width:30px;height:30px;border-radius:50%;border:0.5px solid var(--border-hover);background:var(--surface-2); color:var(--gold);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .25s, color .2s; }
.vswap:hover { color:var(--gold-light);transform:translate(-50%,-50%) rotate(180deg); }
.vtrav { width:100%;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,0.04); border:0.5px solid var(--border);border-radius:10px;padding:0 15px;height:52px;cursor:pointer; transition:border-color .2s; }
.vtrav:hover { border-color:var(--gold); }
.vtrav .vt-k { font-size:13.5px;color:var(--text-primary);text-align:left;line-height:1.25; }
.vtrav .vt-k span:first-child { font-weight:500; }
.vtrav .vt-k span { display:block;font-size:11px;color:var(--text-muted);font-weight:400; }
.vtrav .vt-caret { color:var(--gold);font-size:13px;transition:transform .25s; }
.vtrav[aria-expanded="true"] .vt-caret { transform:rotate(180deg); }
.vsubmit { width:100%;margin-top:1.05rem;padding:15px;border:none;border-radius:9px;cursor:pointer; background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#1a1407; font-family:'Inter',sans-serif;font-size:13px;font-weight:700;letter-spacing:0.07em;text-transform:uppercase; display:flex;align-items:center;justify-content:center;gap:9px;transition:transform .15s, box-shadow .2s, filter .2s; box-shadow:0 12px 28px -10px rgba(201,168,76,0.6); }
.vsubmit:hover { transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 16px 34px -10px rgba(201,168,76,0.7); }
.vsearch-foot { display:flex;align-items:center;justify-content:center;gap:7px;margin-top:0.7rem; font-size:10.5px;color:var(--text-muted);text-align:center;line-height:1.5; }
.vsearch-foot i { color:var(--success); }
.vprivacy { display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 14px;margin-top:1rem; }
.vprivacy span { display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:600; color:var(--text-secondary);white-space:nowrap; }
.vprivacy i { color:var(--gold);font-size:11px; }
@media (max-width:400px) {
  .vprivacy { gap:6px 10px; }
  .vprivacy span { font-size:10px; }
}
@keyframes vfadeUp { from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);} }
.vhero-copy { animation:vfadeUp .7s ease both; }
.vsearch { animation:vfadeUp .7s .12s ease both; }
@media (prefers-reduced-motion:reduce) {
  .vhero-copy,.vsearch { animation:none; }
  .vswap:hover { transform:translate(-50%,-50%); }
}
@media (max-width:980px) {
  .vhero { min-height:0;padding:2.2rem 0 2.6rem; z-index: 10;}
  .vhero-inner { grid-template-columns:1fr;gap:1.8rem;padding:0 1.1rem; }
  .vhero-copy { order:1; }
  .vsearch-panel { order:2; }
  .vhero-lede { display:none; }
  .vhero-title { font-size:2.2rem; }
  .vhero-proof { gap:1.1rem;margin-bottom:0; }
  .vhero-callout { display:none; }
  .vhero-grade { background: linear-gradient(180deg, rgba(8,8,9,0.7) 0%, rgba(8,8,9,0.45) 40%, rgba(8,8,9,0.9) 100%), radial-gradient(130% 80% at 80% 6%, rgba(201,168,76,0.16), transparent 55%); }
}
@media (max-width:560px) {
  .vsearch { padding:1.35rem 1.15rem 1.25rem;border-radius:14px; }
  .vsearch::before { left:1.15rem;right:1.15rem; }
  .vrow { grid-template-columns:1fr;gap:10px; }
  .vswap { position:static;transform:none;margin:2px auto; }
  .vswap:hover { transform:rotate(180deg); }
  .vinput { font-size:16px;padding:13px 13px 13px 36px; }
  .vinput-wrap > i { font-size:14px; }
  .vhero-proof .pf .pf-n { font-size:1.6rem; }
  .dp-trigger { height:54px; }
  .dp-val { font-size:16px; }
  #dateRow { grid-template-columns:1fr 1fr; }
}
@media (max-width:400px) {
  #dateRow { grid-template-columns:1fr; }
}
.ac-host { position:relative; }
.vseg button { white-space:nowrap; }
.ac-list { position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:70;display:none; background:#fff;border:1px solid #e3e7ee;border-radius:10px;overflow:hidden; box-shadow:0 22px 48px -16px rgba(0,0,0,0.7);max-height:248px;overflow-y:auto; }
.ac-list.open { display:block; }
.field-error { display:none;align-items:center;gap:5px;margin-top:5px;font-size:10.5px;color:var(--danger); }
.field-error.show { display:flex; }
.field-error i { font-size:10px; }
.vinput.err { border-color:var(--danger);box-shadow:0 0 0 3px rgba(226,75,74,0.16); }
.dp-field { position:relative; }
.dp-trigger { width:100%;display:flex;align-items:center;gap:10px;cursor:pointer; background:var(--field-bg,#fff);border:1px solid var(--field-bd,#dfe3ea);border-radius:10px; padding:0 13px;height:52px;transition:border-color .2s,box-shadow .2s;font-family:'Inter',sans-serif; }
.dp-trigger:hover { border-color:#c9a84c; }
.dp-trigger.err { border-color:var(--danger);box-shadow:0 0 0 3px rgba(226,75,74,0.16); }
.dp-trigger>i { color:#a9862f;font-size:15px;flex-shrink:0; }
.dp-val { font-size:14.5px;color:var(--field-ink,#1b1a17);font-weight:500; }
.dp-val.placeholder { color:#9aa2af;font-weight:400; }
.dp-pop { position:absolute;left:0;top:calc(100% + 6px);z-index:80;width:300px;max-width:calc(100vw - 40px); background:#fff;border:1px solid #e6e3d8;border-radius:16px;padding:1rem; box-shadow:0 30px 60px -20px rgba(40,32,10,0.5);display:none; animation:dpIn .22s cubic-bezier(.2,.7,.2,1); }
.dp-pop.open { display:block; }
.dp-pop::before { content:'';position:absolute;top:0;left:0;width:100%;height:3px;border-radius:16px 16px 0 0; background:linear-gradient(to right,var(--gold),var(--gold-light),var(--gold)); }
.dp-head { display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem; }
.dp-head .dp-my { font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;color:#1b1a17; }
.dp-nav { width:34px;height:34px;border-radius:9px;border:1px solid #e6e3d8;background:#fbf9f3; display:flex;align-items:center;justify-content:center;cursor:pointer;color:#a9862f;font-size:13px; transition:all .18s; }
.dp-nav:hover { background:#a9862f;color:#fff;border-color:#a9862f; }
.dp-nav:disabled { opacity:.3;cursor:not-allowed; }
.dp-nav:disabled:hover { background:#fbf9f3;color:#a9862f;border-color:#e6e3d8; }
.dp-grid { display:grid;grid-template-columns:repeat(7,1fr);gap:3px; }
.dp-dow { font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#a89e86; text-align:center;padding:5px 0; }
.dp-day { aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:9px; font-size:13.5px;color:#3a352b;cursor:pointer;border:1px solid transparent;transition:all .15s; -webkit-tap-highlight-color:transparent; }
.dp-day:hover:not(.dp-off):not(.dp-dis) { background:#faf3e2;border-color:#e6d6a8; }
.dp-day.dp-off { color:transparent;pointer-events:none; }
.dp-day.dp-dis { color:#cfcabb;cursor:not-allowed; }
.dp-day.dp-today { font-weight:700;color:#a9862f; }
.dp-day.dp-sel { background:linear-gradient(145deg,var(--gold-light),var(--gold-dim));color:#1a1407; font-weight:700;border-color:var(--gold);box-shadow:0 6px 14px -6px rgba(169,134,47,.6); }
.dp-foot { display:flex;align-items:center;justify-content:space-between;margin-top:.85rem;padding-top:.75rem; border-top:1px solid #f0ede2; }
.dp-foot button { background:none;border:none;font-size:12px;font-weight:600;color:#a9862f;cursor:pointer;padding:4px 0; }
.dp-foot .dp-clear { color:#8a8372; }
@media (max-width:560px) {
  .dp-pop { width:min(320px,calc(100vw - 32px));left:50%;transform:translateX(-50%); }
  .dp-day { font-size:15px; }
}
.vtrav-toggle { width:100%;cursor:pointer;font-family:'Inter',sans-serif; }
.vtrav-toggle .vt-k { display:flex;flex-direction:column;align-items:flex-start;gap:1px; }
.vtrav-toggle .vt-k > i { display:none; }
.vt-caret { color:var(--text-muted);font-size:12px;transition:transform .2s; }
.vtrav-toggle[aria-expanded="true"] .vt-caret { transform:rotate(180deg); }
.vpop { position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:80;display:none;overflow:hidden; max-width:100%; background:linear-gradient(160deg, rgba(30,30,33,0.99), rgba(15,15,17,0.99)); border:0.5px solid var(--border-hover);border-radius:16px;padding:1.1rem 1.15rem 1.1rem; box-shadow:0 30px 64px -20px rgba(0,0,0,0.9);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px); }
.vpop::before { content:'';position:absolute;top:0;left:0;width:100%;height:2px; background:linear-gradient(to right,var(--gold),var(--gold-light),var(--gold)); }
.vpop.open { display:block;animation:vfadeUp .25s ease both; }
.vpop-row { display:flex;align-items:center;justify-content:space-between;gap:12px; padding:13px 0;border-bottom:0.5px solid var(--border); }
.vpop-row:last-of-type { border-bottom:none; }
.vpop-k { font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.2; }
.vpop-k span { display:block;font-size:11px;color:var(--text-muted);font-weight:400;margin-top:2px; }
.vpop .vt-ctrl { display:flex;align-items:center;gap:6px;flex-shrink:0; background:rgba(255,255,255,0.03);border:0.5px solid var(--border);border-radius:100px;padding:4px; }
.vpop .vt-ctrl button { width:34px;height:34px;border-radius:50%;border:none; background:linear-gradient(150deg,rgba(201,168,76,0.16),rgba(201,168,76,0.05)); color:var(--gold-light);font-size:18px;line-height:1;cursor:pointer;flex-shrink:0; display:flex;align-items:center;justify-content:center;transition:all .16s;-webkit-tap-highlight-color:transparent; }
.vpop .vt-ctrl button:hover { background:var(--gold);color:#16130c;transform:scale(1.05); }
.vpop .vt-ctrl button:active { transform:scale(0.94); }
.vpop .vt-ctrl button:disabled { opacity:0.3;cursor:not-allowed;background:rgba(255,255,255,0.03);color:var(--text-muted);transform:none; }
.vpop .vt-n { font-size:16px;font-weight:700;min-width:26px;text-align:center;color:#F4F1E9;font-variant-numeric:tabular-nums; }
.vpop-done { width:100%;margin-top:1rem;padding:12px;border:none;border-radius:10px;cursor:pointer; background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#16130c;font-family:'Inter',sans-serif; font-size:13px;font-weight:700;letter-spacing:0.04em;transition:filter .18s,transform .12s; box-shadow:0 10px 24px -10px rgba(201,168,76,0.55); }
.vpop-done:hover { filter:brightness(1.05); }
.vpop-done:active { transform:translateY(1px); }
.vsubmit.loading { pointer-events:none;opacity:0.85; }
.vsubmit .vspin { display:none;width:15px;height:15px;border:2px solid rgba(26,20,7,0.35);border-top-color:#1a1407;border-radius:50%;animation:spin .6s linear infinite; }
.vsubmit.loading .vspin { display:inline-block; }
.vsubmit.loading > i,.vsubmit.loading > span { display:none; }
.vsearch.oneway #returnField { opacity:0.4;pointer-events:none; }
.xp-video .vlabel { position:absolute;top:16px;left:50%;transform:translateX(-50%);z-index:5;font-size:10px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);background:rgba(13,13,14,0.7);backdrop-filter:blur(8px);border:0.5px solid var(--border-hover);border-radius:20px;padding:6px 14px;white-space:nowrap; }

/* ---------- THEME + CALENDAR-PLACEMENT FIX OVERRIDES (load AFTER base) ---------- */
.vseg button { color: var(--text-secondary, #9E9B91) !important; transition: color .18s ease, background .18s ease, box-shadow .18s ease !important; }
.vseg button:hover { color: var(--text-primary, #F2EFE8) !important; background: rgba(255,255,255,.045) !important; }
.vseg button i { opacity: .9 !important; }
.vseg button.active i { opacity: 1 !important; }
.vseg button:active { transform: scale(.985) !important; }
.vseg button.active { box-shadow: inset 0 0 0 1px var(--border-hover, rgba(201,168,76,.4)), 0 2px 10px rgba(201,168,76,.14) !important; }
.vinput-wrap > i,
.vfield > i { color: var(--gold, #C9A84C) !important; opacity: .85 !important; transition: opacity .18s ease, color .18s ease !important; }
.vinput-wrap:focus-within > i,
.vfield:focus-within > i { color: var(--gold-light, #E8C96A) !important; opacity: 1 !important; }
.vseg button,
.vinput,
.vsubmit,
.bx-phone { transition: transform .2s cubic-bezier(.2,.7,.3,1), border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.vsubmit:hover { transform: translateY(-2px); }
.vsubmit:active { transform: translateY(0) scale(.995); }
.vsubmit { position: relative; overflow: hidden; }
.vsubmit::after { content: ''; position: absolute; top: -60%; left: 0; width: 42%; height: 220%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent); animation: bxSheen 4.6s ease-in-out infinite; animation-delay: 1.6s; pointer-events: none; }
.vsubmit:hover::after { animation-play-state: paused; }
.vswap { transition: transform .38s cubic-bezier(.2,.7,.3,1), border-color .2s ease; }
.vswap:hover { transform: rotate(180deg); border-color: var(--gold, #C9A84C); }
@media (prefers-reduced-motion: reduce) {
  .vsubmit::after { animation: none !important; }
  .vseg button, .vinput, .vsubmit, .bx-phone, .vswap { transition: none !important; }
  .vsubmit:hover, .vsubmit:active,
  .bx-phone:hover, .vswap:hover { transform: none !important; }
}
.vtrav { background: var(--field-bg, #fff) !important; border: 1px solid var(--field-bd, #dfe3e8) !important; border-radius: 8px !important; padding: 11px 13px !important; transition: border-color .18s ease, box-shadow .18s ease !important; }
.vtrav:hover { border-color: var(--gold, #C9A84C) !important; }
.vtrav[aria-expanded="true"] { border-color: var(--gold, #C9A84C) !important; box-shadow: 0 0 0 3px rgba(201,168,76,.24) !important; }
.vtrav .vt-k { color: var(--field-ink, #1a2230) !important; font-size: 15px !important; font-weight: 600 !important; }
.vtrav .vt-k span { color: #6b7280 !important; font-weight: 400 !important; font-size: 11.5px !important; }
.vtrav .vt-caret { color: var(--gold-dim, #8A6E30) !important; }
.vpop { background: #fff !important; border: 1px solid #e6e3d8 !important; box-shadow: 0 24px 54px -16px rgba(0,0,0,.55) !important; }
.vpop-row { border-bottom-color: #efece2 !important; }
.vpop-k { color: var(--field-ink, #1a2230) !important; }
.vpop-k span { color: #6b7280 !important; }
.vpop .vt-ctrl { background: #f7f5ef !important; border-color: #e6e3d8 !important; }
.vpop .vt-ctrl button { background: linear-gradient(150deg, rgba(201,168,76,.18), rgba(201,168,76,.10)) !important; color: #6b5a24 !important; }
.vpop .vt-ctrl button:hover:not(:disabled) { background: var(--gold, #C9A84C) !important; color: #16130c !important; }
.vpop .vt-ctrl button:disabled { background: #f0ede4 !important; color: #b9b4a6 !important; }
.vpop .vt-n { color: var(--field-ink, #1a2230) !important; }
@media (min-width: 900px) {
  .vsearch { padding: 1.05rem 1rem 1rem !important; }
  .vsearch-head { margin-bottom: 12px !important; }
  .vseg { margin-bottom: 8px !important; }
  .vseg button { padding: 7px 4px !important; font-size: 11.5px !important; }
  .vlabel { font-size: 9px !important; margin-bottom: 3px !important; }
  .vrow { gap: 9px !important; margin-bottom: 8px !important; }
  .vinput { padding: 10px 12px 10px 34px !important; font-size: 15px !important; }
  .vinput-wrap > i { font-size: 13px !important; }
  .vtrav { padding: 9px 12px !important; }
  .vtrav .vt-k { font-size: 14px !important; }
  .vtrav .vt-k span { font-size: 11px !important; }
  .vsubmit { margin-top: .8rem !important; padding: 13px !important; font-size: 13.5px !important; }
  .vprivacy { margin-top: .6rem !important; font-size: 11px !important; }
  .vpop-row { padding: 10px 0 !important; }
  .vpop-done { margin-top: .7rem !important; padding: 10px !important; }
  .vpop .vt-ctrl button { width: 30px !important; height: 30px !important; }
}
.dp-pop.dp-up,
.vpop.dp-up { top: auto !important; bottom: calc(100% + 6px) !important; }
.dp-pop.dp-up::before { top: auto; bottom: 0; border-radius: 0 0 16px 16px; }
.dp-pop.dp-center,
.vpop.dp-center { position: fixed !important; left: 50% !important; right: auto !important; top: 50% !important; bottom: auto !important; transform: translate(-50%, -50%) !important; width: min(342px, calc(100vw - 24px)) !important; max-width: none !important; max-height: 86vh !important; overflow-y: auto !important; z-index: 2000 !important; box-shadow: 0 30px 70px -12px rgba(0,0,0,.7) !important; }
.dp-pop, .vpop { max-height: calc(100vh - 24px); overflow-y: auto; }
@media (max-width: 620px) {
  .dp-pop,
  .dp-pop.dp-up,
.vpop.dp-up { position: fixed !important; left: 50% !important; right: auto !important; top: 50% !important; bottom: auto !important; transform: translate(-50%, -50%) !important; width: min(342px, calc(100vw - 24px)) !important; max-width: none !important; max-height: 86vh !important; overflow-y: auto !important; z-index: 2000 !important; box-shadow: 0 30px 70px -12px rgba(0,0,0,.7) !important; }
  .dp-nav { width: 40px !important; height: 40px !important; }
  .dp-day { font-size: 15px !important; }
}
.dp-day.sel,
.dp-day[aria-selected="true"] { background: linear-gradient(150deg, #E8C96A, #C9A84C) !important; color: #16130c !important; font-weight: 700 !important; box-shadow: 0 2px 8px rgba(201,168,76,.35) !important; }
.dp-day:not(.dis):not(.sel):hover { background: rgba(201,168,76,.14) !important; color: #6b5a24 !important; }
.dp-day.today:not(.sel) { color: #C9A84C !important; font-weight: 700 !important; }
.dp-day.dis { color: #c3bfb4 !important; cursor: not-allowed !important; }
.dp-nav:hover { border-color: #C9A84C !important; color: #6b5a24 !important; }
@media (prefers-reduced-motion: reduce) {
  .dp-pop, .dp-day, .dp-nav { transition: none !important; }
}
.dp-field { position:relative; }
.dp-trigger { width:100%;display:flex;align-items:center;gap:10px;cursor:pointer; background:var(--field-bg,#fff);border:1px solid var(--field-bd,#dfe3ea);border-radius:10px; padding:0 13px;height:52px;transition:border-color .2s,box-shadow .2s;font-family:'Inter',sans-serif; }
.dp-trigger:hover { border-color:#c9a84c; }
.dp-trigger.err { border-color:var(--danger);box-shadow:0 0 0 3px rgba(226,75,74,0.16); }
.dp-trigger>i { color:#a9862f;font-size:15px;flex-shrink:0; }
.dp-val { font-size:14.5px;color:var(--field-ink,#1b1a17);font-weight:500; }
.dp-val.placeholder { color:#9aa2af;font-weight:400; }
.dp-pop { position:absolute;left:0;top:calc(100% + 6px);z-index:80;width:300px;max-width:calc(100vw - 40px); background:#fff;border:1px solid #e6e3d8;border-radius:16px;padding:1rem; box-shadow:0 30px 60px -20px rgba(40,32,10,0.5);display:none; animation:dpIn .22s cubic-bezier(.2,.7,.2,1); }
.dp-pop.open { display:block; }
.dp-pop::before { content:'';position:absolute;top:0;left:0;width:100%;height:3px;border-radius:16px 16px 0 0; background:linear-gradient(to right,var(--gold),var(--gold-light),var(--gold)); }
.dp-head { display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem; }
.dp-head .dp-my { font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;color:#1b1a17; }
.dp-nav { width:34px;height:34px;border-radius:9px;border:1px solid #e6e3d8;background:#fbf9f3; display:flex;align-items:center;justify-content:center;cursor:pointer;color:#a9862f;font-size:13px; transition:all .18s; }
.dp-nav:hover { background:#a9862f;color:#fff;border-color:#a9862f; }
.dp-nav:disabled { opacity:.3;cursor:not-allowed; }
.dp-nav:disabled:hover { background:#fbf9f3;color:#a9862f;border-color:#e6e3d8; }
.dp-grid { display:grid;grid-template-columns:repeat(7,1fr);gap:3px; }
.dp-dow { font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#a89e86; text-align:center;padding:5px 0; }
.dp-day { aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:9px; font-size:13.5px;color:#3a352b;cursor:pointer;border:1px solid transparent;transition:all .15s; -webkit-tap-highlight-color:transparent; }
.dp-day:hover:not(.dp-off):not(.dp-dis) { background:#faf3e2;border-color:#e6d6a8; }
.dp-day.dp-off { color:transparent;pointer-events:none; }
.dp-day.dp-dis { color:#cfcabb;cursor:not-allowed; }
.dp-day.dp-today { font-weight:700;color:#a9862f; }
.dp-day.dp-sel { background:linear-gradient(145deg,var(--gold-light),var(--gold-dim));color:#1a1407; font-weight:700;border-color:var(--gold);box-shadow:0 6px 14px -6px rgba(169,134,47,.6); }
.dp-foot { display:flex;align-items:center;justify-content:space-between;margin-top:.85rem;padding-top:.75rem; border-top:1px solid #f0ede2; }
.dp-foot button { background:none;border:none;font-size:12px;font-weight:600;color:#a9862f;cursor:pointer;padding:4px 0; }
.dp-foot .dp-clear { color:#8a8372; }
@media (max-width:560px) {
  .dp-pop { width:min(320px,calc(100vw - 32px));left:50%;transform:translateX(-50%); }
  .dp-day { font-size:15px; }
}
.vtrav-toggle { width:100%;cursor:pointer;font-family:'Inter',sans-serif; }
.vtrav-toggle .vt-k { display:flex;flex-direction:column;align-items:flex-start;gap:1px; }
.vtrav-toggle .vt-k > i { display:none; }
.vt-caret { color:var(--text-muted);font-size:12px;transition:transform .2s; }
.vtrav-toggle[aria-expanded="true"] .vt-caret { transform:rotate(180deg); }
.vpop { position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:80;display:none;overflow:hidden; max-width:100%; background:linear-gradient(160deg, rgba(30,30,33,0.99), rgba(15,15,17,0.99)); border:0.5px solid var(--border-hover);border-radius:16px;padding:1.1rem 1.15rem 1.1rem; box-shadow:0 30px 64px -20px rgba(0,0,0,0.9);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px); }
.vpop::before { content:'';position:absolute;top:0;left:0;width:100%;height:2px; background:linear-gradient(to right,var(--gold),var(--gold-light),var(--gold)); }
.vpop.open { display:block;animation:vfadeUp .25s ease both; }
.vpop-row { display:flex;align-items:center;justify-content:space-between;gap:12px; padding:13px 0;border-bottom:0.5px solid var(--border); }
.vpop-row:last-of-type { border-bottom:none; }
.vpop-k { font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.2; }
.vpop-k span { display:block;font-size:11px;color:var(--text-muted);font-weight:400;margin-top:2px; }
.vpop .vt-ctrl { display:flex;align-items:center;gap:6px;flex-shrink:0; background:rgba(255,255,255,0.03);border:0.5px solid var(--border);border-radius:100px;padding:4px; }
.vpop .vt-ctrl button { width:34px;height:34px;border-radius:50%;border:none; background:linear-gradient(150deg,rgba(201,168,76,0.16),rgba(201,168,76,0.05)); color:var(--gold-light);font-size:18px;line-height:1;cursor:pointer;flex-shrink:0; display:flex;align-items:center;justify-content:center;transition:all .16s;-webkit-tap-highlight-color:transparent; }
.vpop .vt-ctrl button:hover { background:var(--gold);color:#16130c;transform:scale(1.05); }
.vpop .vt-ctrl button:active { transform:scale(0.94); }
.vpop .vt-ctrl button:disabled { opacity:0.3;cursor:not-allowed;background:rgba(255,255,255,0.03);color:var(--text-muted);transform:none; }
.vpop .vt-n { font-size:16px;font-weight:700;min-width:26px;text-align:center;color:#F4F1E9;font-variant-numeric:tabular-nums; }
.vpop-done { width:100%;margin-top:1rem;padding:12px;border:none;border-radius:10px;cursor:pointer; background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#16130c;font-family:'Inter',sans-serif; font-size:13px;font-weight:700;letter-spacing:0.04em;transition:filter .18s,transform .12s; box-shadow:0 10px 24px -10px rgba(201,168,76,0.55); }
.vpop-done:hover { filter:brightness(1.05); }
.vpop-done:active { transform:translateY(1px); }
.vsubmit.loading { pointer-events:none;opacity:0.85; }
.vsubmit .vspin { display:none;width:15px;height:15px;border:2px solid rgba(26,20,7,0.35);border-top-color:#1a1407;border-radius:50%;animation:spin .6s linear infinite; }
.vsubmit.loading .vspin { display:inline-block; }
.vsubmit.loading > i,.vsubmit.loading > span { display:none; }
.vsearch.oneway #returnField { opacity:0.4;pointer-events:none; }
@keyframes vfadeUp { from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);} }
@media (min-width: 700px) {
  .qform .inwrap .dp-trigger { height: 42px !important; font-size: 15px !important; }
}
@media (min-width: 700px) and (max-height: 780px) {
  .qform .inwrap .in, .qform .inwrap .dp-trigger { height: 39px !important; }
}

