.ite-native-booking { display: grid; gap: 18px; }
.ite-booking-mode, .ite-booking-legal { color: #52606d; font-size: 14px; }
.ite-booking-notice { padding: 12px 14px; border-left: 4px solid #1e88e5; background: #eef7ff; }
.ite-booking-notice--error { border-left-color: #b32d2e; background: #fcf0f1; }
.ite-booking-notice--success { border-left-color: #008a20; background: #edfaef; }
.ite-booking-form { display: grid; gap: 20px; }
.ite-booking-form fieldset { margin: 0; padding: 16px; border: 1px solid #d9e2ec; }
.ite-booking-form legend { padding: 0 6px; font-weight: 700; color: #102a43; }
.ite-booking-form label { display: grid; gap: 6px; color: #334e68; font-size: 14px; }
.ite-booking-form input, .ite-booking-form select, .ite-booking-form textarea { width: 100%; border: 1px solid #bcccdc; background: #fff; padding: 10px 11px; color: #102a43; }
.ite-booking-form input:focus, .ite-booking-form select:focus, .ite-booking-form textarea:focus { outline: 3px solid #d69e2e; outline-offset: 2px; }
.ite-booking-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.ite-addon-list { display: grid; gap: 10px; }
.ite-addon { grid-template-columns: 1fr 90px !important; align-items: center; }
.ite-quote-preview { padding: 14px; background: #f0f4f8; color: #102a43; }
.ite-quote-preview strong { font-size: 18px; }
.ite-terms { grid-template-columns: auto 1fr !important; align-items: start; }
.ite-terms input { width: auto; margin-top: 5px; }
.ite-slot-message { min-height: 22px; color: #52606d; }
.ite-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.ite-customer-bookings { display: grid; gap: 18px; }
.ite-customer-booking { padding: 22px; background: #fff; border: 1px solid #d9e2ec; }
@media (max-width: 640px) { .ite-booking-grid { grid-template-columns: 1fr; } }

/* Approved terracotta request-to-book skin; workflow behavior is unchanged. */
.ite-native-booking{color:#173f3d}.ite-booking-mode,.ite-booking-legal,.ite-slot-message{color:#6f7d78}.ite-booking-notice{border-left-color:#a8472f;background:#fbf6ef}.ite-booking-form fieldset{border-color:#ddd8cf;background:#fff}.ite-booking-form legend{color:#173f3d;font-family:Georgia,'Times New Roman',serif;font-size:18px;font-weight:400}.ite-booking-form label{color:#4d5855}.ite-booking-form input,.ite-booking-form select,.ite-booking-form textarea{border-color:#cfc8bd;border-radius:7px;color:#173f3d}.ite-booking-form input:focus,.ite-booking-form select:focus,.ite-booking-form textarea:focus{outline-color:#c85e3f}.ite-quote-preview{background:#f5e8e2;color:#173f3d;border-left:3px solid #a8472f}.ite-native-booking .ite-button{background:#a8472f;border-color:#a8472f;border-radius:999px}.ite-native-booking .ite-button:hover{background:#873621;border-color:#873621}

/* Supplied Terracotta booking-request mockup. */
.ite-booking-checkout-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:38px;align-items:start}.ite-booking-checkout-card{padding:22px;border:1px solid #ddd8cf;background:#fff}.ite-booking-steps{display:flex;margin-bottom:24px}.ite-booking-steps span{flex:1;padding:9px 10px;border-bottom:2px solid #ddd8cf;color:#8a918e;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.ite-booking-steps span.active{border-color:#b44d32;color:#b44d32}.ite-booking-form--mockup{gap:18px}.ite-booking-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.ite-booking-form--mockup label{display:grid;gap:6px;color:#56615e;font-size:12px}.ite-booking-form--mockup label>span:first-child:not(:only-child){font-size:9px;letter-spacing:.13em;text-transform:uppercase}.ite-booking-form--mockup input,.ite-booking-form--mockup select,.ite-booking-form--mockup textarea{min-height:48px;padding:11px 12px;border:1px solid #ddd8cf;border-radius:0;background:#fff;color:#173f3d}.ite-booking-form--mockup textarea{min-height:82px;resize:vertical}.ite-booking-full{grid-column:1/-1}.ite-booking-check{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:10px!important;padding-top:4px;color:#4d5855!important}.ite-booking-check input{width:16px!important;min-height:16px!important;margin-top:2px}.ite-booking-check span{font-size:12px!important;letter-spacing:0!important;text-transform:none!important}.ite-booking-continue{justify-self:start;width:auto!important;margin:0!important;background:#b44d32!important;border-color:#b44d32!important;border-radius:0!important;padding:13px 18px!important}.ite-booking-subheading{margin:0 0 8px;font:17px Georgia,'Times New Roman',serif;color:#173f3d}.ite-booking-addons{padding:14px;border:1px solid #ddd8cf}.ite-booking-summary-card{position:sticky;top:102px;padding:18px;border:1px solid #ddd8cf;border-top:3px solid #b44d32;background:#fff}.ite-booking-summary-eyebrow{display:block;margin-bottom:10px;color:#b44d32;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.ite-booking-summary-image{height:145px;overflow:hidden;margin-bottom:14px}.ite-booking-summary-image img{width:100%;height:100%;object-fit:cover}.ite-booking-summary-card h3{margin:0 0 6px;font:21px Georgia,'Times New Roman',serif;color:#173f3d}.ite-booking-summary-row{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #ddd8cf;font-size:11px}.ite-booking-summary-row strong{text-align:right;color:#173f3d}.ite-booking-summary-note{margin:12px 0 0;color:#78817d;font-size:10px}.ite-quote-preview{margin:0;padding:12px 14px;background:#fbf6ef;border-left:3px solid #b44d32}.ite-booking-notice{margin:0 0 16px}.ite-booking-legal{margin:0;font-size:11px}.ite-slot-message:empty{display:none}
@media(max-width:850px){.ite-booking-checkout-grid{grid-template-columns:1fr}.ite-booking-summary-card{position:static;order:-1}.ite-booking-summary-image{height:190px}}
@media(max-width:640px){.ite-booking-form-grid{grid-template-columns:1fr}.ite-booking-full{grid-column:auto}.ite-booking-checkout-card{padding:16px}.ite-booking-steps span{padding-inline:5px;font-size:8px}}

/* Compact modal layout: form first, text-only tour summary. */
.ite-booking-checkout-grid{grid-template-columns:minmax(0,1fr) minmax(230px,280px);gap:22px}
.ite-booking-checkout-card{min-width:0}
.ite-booking-summary-card{top:86px;min-width:0}
.ite-booking-summary-image{display:none!important}
@media(max-width:850px){.ite-booking-checkout-grid{grid-template-columns:1fr}.ite-booking-summary-card{position:static;order:0}}
