/* Instant Quote widget for the ridelinelimo.com hero — Blacklane-style: tabs above a glass bar, underlined fields, pill button */
html, body.wg { background: transparent; margin: 0; }
.wg-wrap { color: #fff; font: 400 16px/1.45 var(--body); }
.wg-top { display: flex; justify-content: center; margin: 0 0 16px; }
.wg-tabs { display: inline-grid; grid-template-columns: auto auto; padding: 5px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; background: rgba(10,10,10,.45); }
.wg-tabs button { border: 0; border-radius: 999px; background: transparent; color: #fff; font: 600 17px var(--body); padding: 10px 26px; min-height: 46px; cursor: pointer; }
.wg-tabs button[aria-selected="true"] { background: var(--gold); color: #111; }
.wg-card { background: rgba(14,14,14,.62); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border: 1px solid rgba(255,255,255,.28); border-radius: 12px; padding: 20px 26px 14px; }
.wg-grid { display: grid; grid-template-columns: 1.3fr 1.3fr 1.05fr 1.2fr auto; gap: 0 26px; align-items: end; }
.wg-grid .bk-field, .wg-ret .bk-field { margin: 0; }
/* labels white, fields transparent with a white underline */
.wg .bk-field label, .wg .bk-lab { color: #fff; font-size: 15px; font-weight: 500; }
.wg .bk-field input, .wg .dt { background: transparent !important; border: 0; border-bottom: 1px solid rgba(255,255,255,.75); border-radius: 0; color: #fff; min-height: 46px; padding: 6px 0; font-size: 17px; box-shadow: none; }
.wg .bk-field input::placeholder { color: rgba(255,255,255,.72); }
.wg .bk-field input:focus, .wg .dt:focus-within { outline: none; border-bottom: 2px solid var(--gold); box-shadow: none; }
.wg .dt { padding-left: 0; gap: 0; }
.wg .dt input { color: #fff !important; font-size: 17px; min-height: 44px; text-align: left; }
.wg .dt input::placeholder { color: rgba(255,255,255,.72); }
.wg .dt .seg2 { width: 1.9em; } .wg .dt .seg4 { width: 3em; }
.wg .dt .sep { color: rgba(255,255,255,.6); }
.wg .cal-btn { color: #fff; padding: 4px; } .wg .cal-btn svg { width: 22px; height: 22px; }
.wg .time-row { grid-template-columns: 1fr auto; gap: 10px; align-items: end; }
.wg .ampm { border: 1px solid rgba(255,255,255,.45); border-radius: 999px; overflow: hidden; align-self: center; }
.wg .ampm button { background: transparent; color: #fff; min-width: 44px; min-height: 36px; font-size: 13px; }
.wg .ampm button[aria-pressed="true"] { background: var(--gold); color: #111; }
.wg-go, .wg-go2 { border-radius: 999px; min-height: 52px; padding: 12px 30px; letter-spacing: .02em; text-transform: none; font-size: 17px; white-space: nowrap; align-self: center; }
.wg .csel-btn { background: transparent; color: #fff; border: 0; border-bottom: 1px solid rgba(255,255,255,.75); min-height: 46px; padding-left: 0; }
.wg-more { display: flex; align-items: center; gap: 18px; margin-top: 12px; flex-wrap: wrap; }
.wg-more .bk-check { margin: 0; font-size: 14px; font-weight: 500; }
.wg-ret { display: grid; grid-template-columns: 220px 240px; gap: 0 26px; }
.wg-note { margin-left: auto; color: rgba(255,255,255,.7); font-size: 13px; }
.wg .bk-err { margin: 10px 0 0; }
.wg .bk-sugg { border-radius: 8px; }
.wg .cal { border-radius: 10px; }
.wg-go2 { display: none; }
@media (max-width: 900px) {
  .wg-card { padding: 18px 18px 16px; }
  .wg-tabs { width: 100%; grid-template-columns: 1fr 1fr; }
  .wg-grid { grid-template-columns: 1fr; gap: 14px; }
  .wg-grid .wg-go { display: none; }
  .wg-go2 { display: block; width: 100%; margin-top: 4px; }
  .wg-more { flex-direction: column; align-items: stretch; gap: 10px; }
  .wg-ret { grid-template-columns: 1fr; gap: 14px; }
  .wg-note { margin-left: 0; }
}
/* every field exactly the same height so labels line up */
.wg .bk-field input, .wg .dt, .wg .csel-btn { box-sizing: border-box; height: 48px; min-height: 48px; }
.wg .dt input { height: 44px; min-height: 0; padding: 0 !important; }
.wg .time-row .dt { width: 100%; }
.wg-grid { align-items: end; }
.wg-grid > .bk-field { display: grid; grid-template-rows: auto 48px; gap: 6px; }
.wg-grid > .bk-field > div { min-width: 0; }

/* fancy heading above the tabs */
.wg-head { text-align: center; margin: 0 0 14px; }
.wg-h { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 0; font: 700 clamp(24px, 3.2vw, 36px)/1.15 var(--head); color: #e8d5a3; letter-spacing: .01em; text-shadow: 0 2px 14px rgba(0,0,0,.65); }
.wg-h::before, .wg-h::after { content: ''; flex: 0 1 90px; height: 1px; background: linear-gradient(90deg, transparent, #c8a96e); }
.wg-h::after { background: linear-gradient(90deg, #c8a96e, transparent); }
.wg-h i { font-style: normal; font-weight: 400; color: #c8a96e; opacity: .8; }
.wg-sub { margin: 8px 0 0; color: rgba(255,255,255,.85); font-size: 15px; text-shadow: 0 1px 8px rgba(0,0,0,.7); }
@media (max-width: 600px) {
  .wg-h { flex-wrap: wrap; gap: 0 10px; font-size: 26px; }
  .wg-h::before, .wg-h::after { display: none; }
  .wg-sub { font-size: 14px; }
}
@media (max-width: 600px) { .wg-h i { display: none; } .wg-h span { width: 100%; } }
/* glass: clear at the top, fading darker toward the bottom */
.wg-card {
  background: linear-gradient(180deg, rgba(255,255,255,.10) 0%, rgba(20,20,20,.28) 35%, rgba(10,10,10,.62) 100%);
  border: 1px solid rgba(255,255,255,.32);
  border-bottom-color: rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 14px 40px rgba(0,0,0,.35);
}
.wg-tabs { background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(10,10,10,.45)); border-color: rgba(255,255,255,.45); box-shadow: inset 0 1px 0 rgba(255,255,255,.25); }
.wg .bk-field input, .wg .dt, .wg .csel-btn { border-bottom-color: rgba(255,255,255,.8); }
.wg .bk-field label, .wg .bk-lab, .wg-more .bk-check { text-shadow: 0 1px 6px rgba(0,0,0,.55); }

/* four service choices */
.wg-svc { grid-template-columns: repeat(4, auto); }
.wg-svc button { padding: 10px 20px; font-size: 16px; }
.wg-seats { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; text-shadow: 0 1px 6px rgba(0,0,0,.55); }
.wg-seats .csel { min-width: 92px; }
.wg-seats .csel-btn { height: 36px !important; min-height: 36px !important; font-size: 15px; }
.wg .csel-list { color: #1a1a1a; }
@media (max-width: 900px) { .wg-svc { grid-template-columns: 1fr 1fr; } .wg-svc button { font-size: 15px; padding: 10px 8px; } .wg-seats { justify-content: space-between; } }
@media (max-width: 900px) { .wg-svc { border-radius: 16px; width: 100%; } .wg-svc button { border-radius: 11px; } }
/* menus inside the glass widget: dark text on the white list (labels around them are white) */
.wg .csel-list, .wg .csel-list li { color: #1a1a1a !important; text-shadow: none !important; font-weight: 500; }
.wg .csel-list li[aria-selected="true"], .wg .csel-list li.on, .wg .csel-list li:hover { color: #111 !important; }
.wg-seats .csel-list { min-width: 130px; }

/* child car seats: white − / + box */
.wg-seats { display: inline-flex; align-items: center; gap: 12px; }
.wg-seats-lab { font-size: 14px; font-weight: 600; text-shadow: 0 1px 6px rgba(0,0,0,.55); }
.wg-step { display: inline-grid; grid-template-columns: 40px 40px 40px; align-items: center; background: #fff; border-radius: 999px; overflow: hidden; height: 40px; box-shadow: 0 2px 10px rgba(0,0,0,.25); }
.wg-step button { height: 40px; border: 0; background: #fff; color: #1a1a1a; font-size: 22px; font-weight: 700; cursor: pointer; }
.wg-step button:hover:not(:disabled) { background: #f4ecdc; color: #7a5f2c; }
.wg-step button:disabled { color: #c9c4b8; cursor: default; }
.wg-step output { text-align: center; color: #1a1a1a; font-weight: 700; font-size: 17px; }
@media (max-width: 900px) { .wg-seats { justify-content: space-between; width: 100%; } }
/* ===== compact phone layout: everything above the fold, less scrolling ===== */
@media (max-width: 600px) {
  .wg-head { margin: 0 0 8px; }
  .wg-h { font-size: 19px !important; flex-wrap: nowrap; gap: 6px; white-space: nowrap; }
  .wg-h i { display: inline !important; font-size: 16px; }
  .wg-h span { width: auto !important; }
  .wg-sub { font-size: 12px; margin-top: 3px; }
  .wg-top { margin: 0 0 8px; }
  .wg-svc { grid-template-columns: repeat(4, 1fr) !important; width: 100%; border-radius: 999px !important; padding: 3px; }
  .wg-svc button { font-size: 12.5px !important; padding: 7px 2px !important; min-height: 34px; border-radius: 999px !important; line-height: 1.1; }
  .wg-card { padding: 12px 14px 12px; border-radius: 12px; }
  .wg-grid { grid-template-columns: 1fr 1fr !important; gap: 8px 12px !important; }
  .wg-grid > .wg-pu, .wg-grid > .wg-do, .wg-grid > #hoursWrap { grid-column: 1 / -1; }
  .wg-grid > .bk-field { grid-template-rows: auto 40px !important; gap: 2px !important; }
  .wg .bk-field label, .wg .bk-lab { font-size: 12px; }
  .wg .bk-field input, .wg .dt, .wg .csel-btn { height: 40px !important; min-height: 40px !important; font-size: 15px !important; }
  .wg .dt input { font-size: 15px !important; height: 38px !important; }
  .wg .dt .seg2 { width: 1.6em; } .wg .dt .seg4 { width: 2.5em; }
  .wg .cal-btn svg { width: 18px; height: 18px; }
  .wg .time-row { gap: 6px; }
  .wg .ampm button { min-width: 32px; min-height: 30px; font-size: 11px; }
  .wg-more { flex-direction: row !important; align-items: center !important; justify-content: space-between; gap: 8px !important; margin-top: 10px; }
  .wg-more .bk-check { font-size: 13px; }
  .wg-seats { width: auto !important; gap: 8px; }
  .wg-seats-lab { font-size: 12px; }
  .wg-step { grid-template-columns: 32px 28px 32px; height: 32px; }
  .wg-step button { height: 32px; font-size: 18px; }
  .wg-step output { font-size: 15px; }
  .wg-go2 { min-height: 46px; margin-top: 10px; font-size: 16px; }
  .wg-ret { grid-template-columns: 1fr 1fr !important; gap: 8px 12px !important; }
}
/* keep the widget see-through everywhere (iPhone Safari paints framed pages solid otherwise) */
:root, html, body, body.wg { background: transparent !important; background-color: transparent !important; color-scheme: normal; }
/* heading readable on bright photos: richer gold + dark halo */
.wg-h, .wg-h span { color: #f2c94c !important; text-shadow: 0 1px 2px rgba(0,0,0,.95), 0 2px 12px rgba(0,0,0,.85), 0 0 24px rgba(0,0,0,.6) !important; }
.wg-h i { color: #f2c94c !important; text-shadow: 0 1px 2px rgba(0,0,0,.9); }
.wg-sub { color: #ffffff !important; text-shadow: 0 1px 2px rgba(0,0,0,.95), 0 2px 10px rgba(0,0,0,.8) !important; }

/* fast: system fonts for everything except the heading */
body.wg, .wg-wrap { --body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; }
