/* Summit booking widget styles (scoped to .sb) */

  /* Widget styles — all scoped to .sb so they won't touch the rest of your site */
  .sb{--sb-black:#0D0D0D;--sb-red:#AA0F18;--sb-silver:#C0C0C0;--sb-line:#2C2C2C;--sb-field:#161616;--sb-card:#1A1A1A;
      max-width:none;margin:0;padding:24px;background:var(--sb-black);color:#fff;font-family:'Montserrat',system-ui,sans-serif;
      border-radius:8px;display:flex;flex-direction:column;gap:14px;box-sizing:border-box}
  .sb *{box-sizing:border-box}
  .sb-step{display:flex;flex-direction:column;gap:14px}
  .sb-steps{display:flex;gap:6px;list-style:none;margin:0;padding:0;counter-reset:sbs}
  .sb-steps li{flex:1;counter-increment:sbs;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#777;
      border-top:3px solid var(--sb-line);padding-top:8px}
  .sb-steps li::before{content:counter(sbs) ". "}
  .sb-steps li.is-on{color:#fff;border-top-color:var(--sb-red)}
  .sb-steps li.is-done{color:var(--sb-silver);border-top-color:#5a5a5a}
  .sb-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
  .sb-f{display:flex;flex-direction:column;gap:5px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sb-silver);min-width:0}
  .sb input:not([type=checkbox]),.sb select,.sb gmp-place-autocomplete{width:100%;background:var(--sb-field);color:#fff;border:1px solid var(--sb-line);border-radius:6px;
      padding:10px;font:500 15px 'Montserrat',sans-serif;text-transform:none;letter-spacing:0;min-width:0;color-scheme:dark}
  .sb gmp-place-autocomplete{padding:0}
  .sb-block{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--sb-line);padding-top:12px}
  .sb-lbl{font-family:'Cinzel',serif;font-size:15px;letter-spacing:.06em}
  .sb-airport,.sb-addr{display:flex;flex-direction:column;gap:8px}
  .sb-picked{font-size:12.5px;color:var(--sb-silver)}
  .sb-chk{display:flex;align-items:center;gap:8px;font-size:13px;color:#fff;align-self:end;padding-bottom:10px}
  .sb-chk-wide{align-items:flex-start;align-self:auto;padding-bottom:0;font-size:12.5px;line-height:1.45;color:var(--sb-silver)}
  .sb-chk input{width:18px;height:18px;flex:none;accent-color:var(--sb-red);margin:0}
  .sb-chk a{color:#fff}
  .sb-msg,.sb-warn{background:#3A1013;border:1px solid var(--sb-red);border-radius:6px;padding:10px;font-size:13px;display:flex;flex-direction:column;gap:10px}
  .sb-hint{font-size:13px;color:var(--sb-silver);min-height:1em}
  .sb-fine{font-size:12px;color:var(--sb-silver);margin:0;line-height:1.5}
  .sb-btn{background:var(--sb-red);color:#fff;border:0;border-radius:6px;padding:14px;font:600 15px 'Montserrat',sans-serif;cursor:pointer;flex:1}
  .sb-btn:disabled{opacity:.45;cursor:not-allowed}
  .sb-btn-alt{background:transparent;border:1px solid #fff;padding:10px}
  .sb-back{background:transparent;color:var(--sb-silver);border:1px solid var(--sb-line);border-radius:6px;padding:14px 18px;font:500 14px 'Montserrat',sans-serif;cursor:pointer}
  .sb-link{background:none;border:0;padding:0;color:#fff;text-decoration:underline;font:inherit;cursor:pointer}
  .sb-nav{display:flex;gap:10px}
  .sb-summary{background:var(--sb-card);border:1px solid var(--sb-line);border-left:3px solid var(--sb-red);border-radius:8px;padding:12px 14px;
      font-size:13px;color:var(--sb-silver);display:flex;flex-direction:column;gap:3px;line-height:1.45}
  .sb-summary strong{color:#fff;font-weight:600}
  .sb-sum-veh{margin-top:8px;color:#fff;font-weight:600}
  .sb-lines div{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--sb-silver);font-variant-numeric:tabular-nums;padding:2px 0}
  .sb-lines .sb-total-row{color:#fff;font-weight:600;font-size:15px;border-top:1px solid var(--sb-line);margin-top:4px;padding-top:6px}
  .sb-notes{margin:6px 0 0;padding-left:18px;font-size:12px;color:var(--sb-silver)}
  .sb-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  @media (max-width:420px){.sb-cards{grid-template-columns:1fr}}
  .sb-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;background:var(--sb-card);color:#fff;
      border:1px solid var(--sb-line);border-radius:8px;padding:0 0 14px;overflow:hidden;cursor:pointer;font-family:'Montserrat',sans-serif}
  .sb-card > span:not(.sb-photo){padding:0 14px}
  .sb-card.is-sel{border-color:var(--sb-red);box-shadow:0 0 0 1px var(--sb-red)}
  .sb-card:disabled{opacity:.45;cursor:not-allowed}
  .sb-photo{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;margin-bottom:8px;background:#222}
  .sb-photo-ph{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#262626,#111);
      color:#666;font-size:11px;letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:10px}
  .sb-card-name{font-family:'Cinzel',serif;font-size:15px;line-height:1.25}
  .sb-card-seats{font-size:12px;color:var(--sb-silver)}
  .sb-card-price{font-family:'Cinzel',serif;font-size:24px;font-weight:700;font-variant-numeric:tabular-nums;margin-top:6px}
  .sb-card-incl{font-size:11px;color:var(--sb-silver);letter-spacing:.04em}
  .sb-card-na{font-size:12px;color:#e8a0a4;margin-top:6px}
  .sb-who{font-size:14px;line-height:1.5}.sb-who span{color:var(--sb-silver);font-size:13px}
  .sb-done{display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.55}
  .sb-done p{margin:0}
  .sb-ref{font-family:'Cinzel',serif;font-size:20px}
  .sb-next{margin:0;padding-left:20px;color:var(--sb-silver)}
  .sb-pay{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--sb-line);padding-top:12px}
  .sb-pay strong{color:#fff}
  .sb-card-el{min-height:44px}
  .sb-fake-card{border:1px dashed #555;border-radius:6px;padding:14px;font-size:12px;color:#888;text-align:center}
  .sb-portal{display:block;text-align:center;text-decoration:none;margin-top:10px}
  .sb-time{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:6px}
  .sb-time select{padding:10px 6px}
  .sb-row-dt{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}
  @media (max-width:440px){.sb-row-dt{grid-template-columns:1fr}}
  .sb [hidden]{display:none !important}
  .sb :focus-visible{outline:2px solid var(--sb-silver);outline-offset:2px}

  /* Site integration */
  .sb{border:1px solid rgba(192,192,192,.18);border-radius:0}
  .sb-card-el .StripeElement{min-height:44px}
  .sb-loading{padding:28px;color:#C0C0C0;font:14px Montserrat,sans-serif}
