/* Booking page: form with a sticky estimate basket */
@media (min-width: 960px) { .ct.ord { grid-template-columns: 1.35fr .9fr; gap: 3rem; } }
.fs { font-size: 1rem; margin: 1.6rem 0 .8rem; color: var(--ink); letter-spacing: -.01em; }
.chips.one input + span { min-width: 0; }
.cart { position: sticky; top: 90px; background: linear-gradient(160deg, #0F1C33, #172B4D); color: #fff; border-radius: 20px; padding: 1.6rem 1.6rem 1.4rem; box-shadow: var(--shadow-lg); }
.cart-h { font-size: .74rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #E2BD4A; margin-bottom: 1rem; }
.cart-row { display: flex; justify-content: space-between; gap: 1rem; font-size: .92rem; padding: .45rem 0; border-bottom: 1px solid rgba(174,185,204,.16); color: #C9D2E3; }
.cart-row span:last-child { white-space: nowrap; color: #fff; font-variant-numeric: tabular-nums; }
.cart-row.neg span:last-child { color: #7CC48F; }
.cart-sum, .cart-tot { display: flex; justify-content: space-between; align-items: baseline; padding: .7rem 0 .3rem; }
.cart-sum span { color: #AEB9CC; } .cart-sum b { font-size: 1.15rem; }
.cart-tot { border-top: 1px solid rgba(226,189,74,.5); margin-top: .4rem; }
.cart-tot b { font-size: 1.9rem; letter-spacing: -.03em; color: #E2BD4A; }
.cart-note { font-size: .82rem; color: #AEB9CC; margin: .8rem 0 1rem; }
.cart-note a { color: #E2BD4A; }
.cart-steps { margin: 0; padding-left: 1.2rem; font-size: .85rem; color: #C9D2E3; }
.cart-steps li { margin-bottom: .3rem; }
.cta-sub { color: #AEB9CC; margin: -.5rem 0 0; font-size: .98rem; }
.ct-form input[type="number"] { width: 100%; font: inherit; color: var(--ink); background: var(--card); border: 1px solid var(--line); border-radius: var(--r-sm); padding: .7rem .85rem; }
.ct-form input[type="number"]:focus { outline: none; border-color: var(--gold); box-shadow: 0 0 0 4px rgba(201,162,39,.18); }

/* company typeahead on the booking page */
.co-field { position: relative; }
.co-field label small { font-weight: 400; color: var(--ink2); }
.co-list { position: absolute; z-index: 30; left: 0; right: 0; top: 100%; margin: 4px 0 0; padding: 4px; list-style: none; background: var(--card); border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 12px 32px rgba(15,28,51,.14); max-height: 320px; overflow-y: auto; }
.co-list li { padding: .5rem .65rem; border-radius: 7px; cursor: pointer; display: flex; flex-direction: column; gap: 2px; }
.co-list li b { font-weight: 600; font-size: .92rem; color: var(--ink); }
.co-list li span { font-size: .78rem; color: var(--ink2); }
.co-list li:hover, .co-list li.on { background: rgba(201,162,39,.12); }
.co-note { margin: -.2rem 0 1rem; padding: .65rem .85rem; font-size: .86rem; line-height: 1.45; border-left: 3px solid var(--gold); background: rgba(201,162,39,.08); border-radius: 0 8px 8px 0; }
