.booking-transfers{margin:16px 0;border:1px solid rgba(23,60,58,.2);border-radius:4px;background:#faf9f4;color:#173c3a}
.booking-transfers>summary{display:flex;align-items:center;gap:10px;padding:15px;list-style:none;cursor:pointer}
.booking-transfers>summary::-webkit-details-marker{display:none}
.booking-transfers>summary>span:first-child{display:flex;align-items:center;gap:9px;font-weight:600;white-space:nowrap}
.booking-transfers>summary small{font-size:10px;color:#65736f;line-height:1.5;overflow-wrap:anywhere}
.booking-transfer-toggle{position:relative;flex:0 0 20px;width:20px;height:20px;margin-left:auto;border:1px solid #d0c4ac;border-radius:4px}
.booking-transfer-toggle:before,.booking-transfer-toggle:after{content:"";position:absolute;width:9px;height:1px;background:currentColor;left:50%;top:50%;transform:translate(-50%,-50%)}
.booking-transfer-toggle:after{transform:translate(-50%,-50%) rotate(90deg)}
.booking-transfers[open] .booking-transfer-toggle:after{display:none}
.booking-transfers-body{padding:0 15px 15px}
.booking-transfer-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.booking-transfer-leg{min-width:0;margin:0;padding:12px;border:1px solid #dfded4;border-radius:3px;background:white}
.booking-transfer-leg legend{padding:0 5px;font-size:12px;font-weight:600}
.booking-transfer-leg .field{min-width:0;margin-bottom:12px}
.booking-transfer-leg select{width:100%;min-width:0;max-width:100%;font-size:12px}
.booking-transfer-date,.booking-transfer-fee{font-size:11px;line-height:1.6;margin:8px 0;overflow-wrap:anywhere}
.booking-transfer-fee strong{font-weight:600}
.booking-transfer-choices .form-note{margin:8px 0;color:#826731}
.booking-transfers [hidden]{display:none!important}
[data-booking-self-notice][hidden]{display:none!important}
.booking-transfers [data-transfer-retry]{padding:6px 0;font-size:11px;background:none;border:0;cursor:pointer}
.booking-transfers summary:focus-visible,.booking-transfers button:focus-visible{outline:2px solid #b3945e;outline-offset:2px}
@media(max-width:600px){.booking-transfer-columns{grid-template-columns:1fr}.booking-transfers>summary{flex-wrap:wrap}.booking-transfers>summary small{order:3;flex-basis:100%}.booking-transfer-leg select{font-size:16px;min-height:44px}}
.button[data-booking-request-quote][hidden]{display:none!important}

/* Step 3: clear one-leg-at-a-time hierarchy without changing booking fields. */
.booking-wizard .booking-transfers{margin:0;border-color:#d4ddd7;border-radius:15px;background:#f7f7f2;overflow:hidden;box-shadow:0 10px 32px rgba(18,53,50,.055)}
.booking-wizard .booking-transfers>summary{min-height:54px;padding:14px 18px;border-bottom:1px solid transparent;background:rgba(255,255,255,.58)}
.booking-wizard .booking-transfers[open]>summary{border-bottom-color:#dce3de;background:#fff}
.booking-wizard .booking-transfers>summary>span:first-child{color:#173c3a;font-size:13px}
.booking-wizard .booking-transfers>summary small{margin-left:auto;color:#60736f;font-size:11px;text-align:right}
.booking-wizard .booking-transfer-toggle{margin-left:4px}
.booking-wizard .booking-transfers-body{padding:18px}
.booking-transfer-intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 16px}
.booking-transfer-intro>div{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #e3dfd3;border-radius:10px;background:#fffdf7;box-shadow:0 3px 10px rgba(74,60,32,.035)}
.booking-transfer-intro span{display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;border-radius:50%;background:#b38d4f;color:#fff;font:700 11px/1 Inter,sans-serif}
.booking-transfer-intro p{margin:1px 0 0;color:#506762;font-size:11px;line-height:1.6}
.booking-wizard .booking-transfer-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin:0;max-width:100%}
.booking-wizard .booking-transfer-leg{box-sizing:border-box;width:100%;max-width:100%;padding:4px 18px 17px;border:1px solid #dce3de;border-left:3px solid #b69253;border-radius:12px;background:#fff;box-shadow:0 7px 22px rgba(19,55,52,.05)}
.booking-wizard .booking-transfer-leg>legend{display:flex;align-items:center;justify-content:space-between;gap:18px;width:calc(100% - 12px);box-sizing:border-box;padding:0 8px;background:#fff;color:#173c3a}
.booking-wizard .booking-transfer-leg>legend>span{font-size:14px;font-weight:700}
.booking-wizard .booking-transfer-leg>legend>small{color:#6b7c78;font-size:10px;font-weight:400;text-align:right}
.booking-wizard .booking-transfer-leg>legend strong{color:#173c3a;font-weight:600}
.booking-transfer-mode{display:grid;grid-template-columns:minmax(90px,.28fr) minmax(0,1fr);align-items:center;gap:14px;margin:8px 0 14px!important}
.booking-transfer-mode label{margin:0!important}
.booking-transfer-mode select{min-height:44px}
.booking-transfer-choices{display:grid;gap:14px;padding-top:15px;border-top:1px solid #e3e8e4}
.booking-wizard .transfer-rider-list{padding:14px 15px;border-color:#dfe5e0;border-radius:10px;background:#f8faf7}
.booking-wizard .transfer-rider-list>legend{font-size:12px}
.booking-wizard .transfer-rider-list [data-transfer-people]{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:7px 14px}
.booking-wizard .transfer-seat-policy-error{margin:10px 0 0;padding:9px 11px;border-left:3px solid #a34f38;background:#fff2ed;color:#8b3f2c;font-size:12px;line-height:1.5}
.booking-wizard .transfer-rider-list label{align-items:center;font-size:12px}
.booking-wizard .transfer-rider-list .form-note{margin:4px 0 9px;font-size:10px}
.booking-transfer-passenger-total{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);align-items:center;gap:14px;margin:0!important}
.booking-transfer-passenger-total input{min-height:42px!important;background:#f3f4ef!important;font-weight:700}
.booking-transfer-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.booking-transfer-route-grid .field,.booking-transfer-time{margin:0!important}
.booking-transfer-route-grid label,.booking-transfer-time label{margin-bottom:6px}
.booking-transfer-route-grid select,.booking-transfer-time select{min-height:44px}
.booking-transfer-time{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);align-items:center;gap:6px 14px}
.booking-transfer-time label{margin:0}
.booking-transfer-time small{grid-column:2;color:#71817d;font-size:10px}
.booking-transfer-help{padding:11px 13px;border-radius:7px;background:#f3f5f1}
.booking-transfer-help p{margin:0;color:#60736f;font-size:10px;line-height:1.65}
.booking-transfer-help p:first-child{color:#3e5e58;font-weight:600}
.booking-transfer-help p[data-transfer-details]:not(:empty){margin-top:7px;padding-top:7px;border-top:1px solid #dce2dd;color:#71817d;font-weight:400}
.booking-transfer-help p:empty{display:none}
.booking-transfer-status{min-height:0;margin:0;padding:12px 14px;border:1px solid #d8dfd9;border-radius:9px;background:#f8faf7;color:#294c47;font-size:11px;line-height:1.55}
.booking-transfer-status:empty{display:none}
.booking-transfer-price-grid{display:grid;grid-template-columns:minmax(130px,.55fr) minmax(0,1fr);gap:8px 16px;margin:0}
.booking-transfer-price-grid dt{color:#6a7b77}
.booking-transfer-price-grid dd{margin:0;color:#173f3a;font-weight:650;text-align:right;overflow-wrap:anywhere}
.booking-transfer-price-grid dd.is-free{color:#477161}
.booking-transfer-status details{margin-top:11px;padding-top:10px;border-top:1px solid #dce2dd}
.booking-transfer-status summary{cursor:pointer;color:#8b6d37;font-weight:650;list-style:none}
.booking-transfer-status summary:before{content:"";display:inline-block;width:17px;height:17px;margin-right:7px;border:1px solid #c7b487;border-radius:50%;background:linear-gradient(#8b6d37,#8b6d37) center/7px 1px no-repeat,linear-gradient(#8b6d37,#8b6d37) center/1px 7px no-repeat;vertical-align:-4px}
.booking-transfer-status details[open] summary:before{background:linear-gradient(#8b6d37,#8b6d37) center/7px 1px no-repeat}
.booking-transfer-status ul{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}
.booking-transfer-status li{display:flex;justify-content:space-between;gap:12px;padding:7px 9px;border-radius:6px;background:#fff;color:#60736f}
.booking-transfer-status li strong{color:#173f3a;white-space:nowrap}
.booking-wizard .booking-transfer-fee{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 0;padding:12px 14px;border-radius:8px;background:#e9eee7;color:#526a65}
.booking-wizard .booking-transfer-fee span{font-size:11px}
.booking-wizard .booking-transfer-fee strong{color:#173c3a;font-size:14px}
.booking-transfer-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-top:16px}
.booking-transfer-footer p{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:1;margin:0;padding:13px 15px;border:1px solid #d7ded8;border-radius:10px;background:#fff;color:#536a65;font-size:11px;line-height:1.5}
.booking-transfer-footer p>span{display:grid;gap:4px;padding:0 13px;border-right:1px solid #e0e5e0}
.booking-transfer-footer p>span:first-child{padding-left:0}
.booking-transfer-footer p>span:last-child{padding-right:0;border-right:0}
.booking-transfer-footer p small{color:#758580;font-size:10px}
.booking-transfer-footer p strong{color:#173f3a;font-size:12px;overflow-wrap:anywhere}
.booking-transfer-footer p .is-total strong{color:#9a7135;font-size:14px}
.booking-transfer-footer p:empty{display:none}
.booking-transfer-footer button{flex:0 0 auto}
@media(max-width:600px){.booking-wizard .booking-transfers>summary small{order:3;flex-basis:100%;margin-left:0;text-align:left}.booking-wizard .booking-transfers-body{padding:14px}.booking-transfer-intro{grid-template-columns:1fr}.booking-wizard .booking-transfer-leg{padding:3px 13px 14px}.booking-wizard .booking-transfer-leg>legend{align-items:flex-start;flex-direction:column;gap:2px}.booking-wizard .booking-transfer-leg>legend>small{text-align:left}.booking-transfer-mode,.booking-transfer-passenger-total,.booking-transfer-time{grid-template-columns:minmax(0,1fr);gap:6px}.booking-transfer-time small{grid-column:1}.booking-transfer-route-grid{grid-template-columns:minmax(0,1fr)}.booking-transfer-price-grid{grid-template-columns:minmax(0,1fr)}.booking-transfer-price-grid dd{text-align:left}.booking-transfer-footer{align-items:stretch;flex-direction:column}.booking-transfer-footer p{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 0}.booking-transfer-footer p>span:nth-child(2){border-right:0}.booking-transfer-footer p>span:nth-child(3){padding-left:0}.booking-transfer-status li{align-items:flex-start;flex-direction:column;gap:2px}}
