/* Sharm Transfer booking fixes */
.stbf-hidden { display: none !important; }

/* One way / Return */
.stbf-trip-type { width: 100%; flex: 0 0 100%; }
.stbf-seg { display: flex; gap: 8px; }
.stbf-seg button {
	flex: 1 1 0; min-height: 48px; padding: 10px 12px; border: 2px solid #d9dde3; border-radius: 10px;
	background: #fff; color: #1b1b1b; font: inherit; font-weight: 600; line-height: 1.2; cursor: pointer;
}
.stbf-seg button small { display: block; font-weight: 500; font-size: 12px; color: #4a4f57; }
.stbf-seg button.is-active { border-color: #1b1b1b; background: #ffd200; color: #1b1b1b; }
.stbf-seg button:focus-visible { outline: 3px solid #1b1b1b; outline-offset: 2px; }

/* Your trip */
.stbf-trip-summary {
	width: 100%; flex: 0 0 100%; margin: 0 0 14px; padding: 10px 14px; border-radius: 10px;
	background: #f4f6f8; color: #1b1b1b; font-size: 15px; line-height: 1.4;
}

/* Needed fields */
.stbf-needed > .ovabrw-label::after { content: " *"; color: #b42318; font-weight: 700; }

/* Checkout notes */
.stbf-pay-note, .stbf-cancel-note {
	margin: 0 0 14px; padding: 10px 14px; border-radius: 10px; background: #f4f6f8; color: #1b1b1b; font-size: 14px; line-height: 1.5;
}
.stbf-pay-note a, .stbf-cancel-note a { color: #1b1b1b; font-weight: 700; text-decoration: underline; }

/* Checkout: readable main button, calmer headings */
.woocommerce-checkout #place_order, .woocommerce-cart .checkout-button, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	color: #1b1b1b !important; font-weight: 700; min-height: 52px;
}
.woocommerce-checkout .woocommerce-billing-fields h3, .woocommerce-checkout .woocommerce-additional-fields h3, .woocommerce-checkout #order_review_heading { text-transform: none; }
.woocommerce-checkout #billing_phone_field .description { display: block; margin-top: 4px; font-size: 13px; color: #4a4f57; }

/* ---------- Readable buttons: dark text on the yellow and gold buttons ---------- */
button.ovabrw_btn_submit, .menu-toggle, a.ht-cta, .ovabrw-form button.submit.stbf-dark,
a.elementor-button[href$="/search-taxi/"] { color: #1b1b1b !important; }
a.ht-cta svg { stroke: #1b1b1b; }
a.elementor-button[href$="/search-taxi/"] { background-color: #ffd200 !important; font-weight: 700; }
a.elementor-button[href$="/search-taxi/"]:hover, a.elementor-button[href$="/search-taxi/"]:focus { background-color: #f0c400 !important; }

/* ---------- Readable form text ---------- */
form.product-search-form select, form.product-search-form input[type="text"],
form.ovabrw-form select, form.ovabrw-form input[type="text"], form.ovabrw-form input[type="number"] { color: #2b2f36 !important; }
form.product-search-form ::placeholder, form.ovabrw-form ::placeholder, .woocommerce-checkout ::placeholder { color: #5b616b !important; opacity: 1; }

/* ---------- Fingers need room ---------- */
.ovabrw-form .guests-icon { width: 44px !important; min-width: 44px !important; height: 44px !important; flex: 0 0 44px; display: inline-flex !important; align-items: center; justify-content: center; }
@media (max-width: 1024px) {
	.main-navigation ul li a, .ova_wrap_nav ul li a { min-height: 44px; display: flex; align-items: center; }
}

/* ---------- Search results ---------- */
.stbf-results-bar {
	display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; justify-content: space-between;
	margin: 0 0 18px; padding: 12px 16px; border-radius: 10px; background: #f4f6f8; color: #1b1b1b; font-size: 15px; line-height: 1.4; scroll-margin-top: 110px;
}
.stbf-results-bar a { color: #1b1b1b; font-weight: 700; text-decoration: underline; }
a.stbf-select {
	display: block; margin-top: 14px; padding: 13px 18px; border-radius: 10px; background: #ffd200; color: #1b1b1b !important;
	font-weight: 700; text-align: center; text-decoration: none; min-height: 48px; line-height: 22px;
}
a.stbf-select:hover, a.stbf-select:focus { background: #f0c400; }
.remons-ovabrw-cardtaxi .card-header img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; height: auto; }

/* ---------- Booking form extras ---------- */
a.stbf-more-cars { display: inline-block; margin: 14px 0 0; color: #1b1b1b; font-weight: 600; text-decoration: underline; }
.stbf-cur { margin: 12px 0 0; font-size: 14px; color: #3a3f47; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.stbf-cur a { padding: 6px 12px; border: 1px solid #c9ced6; border-radius: 999px; color: #1b1b1b; text-decoration: none; font-weight: 600; min-height: 32px; }
.stbf-cur a.is-active { background: #1b1b1b; border-color: #1b1b1b; color: #fff; }
.stbf-cur-footer { justify-content: center; margin: 0; padding: 14px 16px 18px; background: #111; color: #c9ced6; }
.stbf-cur-footer a { border-color: #555; color: #fff; }
.stbf-cur-footer a.is-active { background: #ffd200; border-color: #ffd200; color: #1b1b1b; }

/* ---------- Home: booking strip right under the first screen ---------- */
.stbf-cta { background: #1b1b1b; color: #fff; }
.stbf-cta-in { max-width: 1140px; margin: 0 auto; padding: 16px 20px; display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; justify-content: space-between; }
.stbf-cta p { margin: 0; line-height: 1.35; }
.stbf-cta strong { display: block; font-size: 18px; color: #fff; }
.stbf-cta span { display: block; font-size: 14px; color: #d6d9de; }
a.stbf-cta-btn { display: inline-block; padding: 13px 22px; border-radius: 10px; background: #ffd200; color: #1b1b1b !important; font-weight: 700; text-decoration: none; min-height: 48px; line-height: 22px; }
a.stbf-cta-btn:hover, a.stbf-cta-btn:focus { background: #f0c400; }
#stbf-booking { scroll-margin-top: 110px; }
@media (max-width: 600px) { .stbf-cta-in { padding: 14px 16px; } a.stbf-cta-btn { width: 100%; text-align: center; } }

/* ---------- WhatsApp on every booking step ---------- */
a.stbf-wa {
	position: fixed; right: 16px; bottom: 16px; z-index: 9990; width: 56px; height: 56px; border-radius: 50%;
	background: #25d366; color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 6px 18px rgba(0, 0, 0, .25);
}
a.stbf-wa svg { width: 30px; height: 30px; }
.woocommerce-checkout a.stbf-wa, .woocommerce-cart a.stbf-wa { bottom: 84px; }

/* ---------- Leftovers from the car-rental template, and a trust detail ---------- */
.ovabrw-product-calendar, .ti-footer-filter-text { display: none !important; }

/* ---------- The floating currency tab covered the booking form: the choice now sits under the forms and in the footer ---------- */
.stbf-has-cur .woo-multi-currency.wmc-sidebar { display: none !important; }
a.elementor-button[href$="/search-taxi/"] { padding-left: 16px !important; padding-right: 16px !important; max-width: 100%; box-sizing: border-box; }
a.elementor-button[href$="/search-taxi/"] .elementor-button-text { white-space: nowrap; }
/* ---------- Their WhatsApp button on laptops: the words only showed on hover, leaving an empty green pill ---------- */
@media (min-width: 768px) { .st-floating-wa-text { opacity: 1 !important; transform: none !important; } }

/* ---------- Booking pages start with a slim title, so the form and the button are on the first screen ---------- */
body.woocommerce-cart .header_breadcrumbs, body.woocommerce-checkout .header_breadcrumbs, body.single-product .header_breadcrumbs, body.stbf-booking .header_breadcrumbs { padding-top: 20px !important; }
body.woocommerce-cart h1.header_title, body.woocommerce-checkout h1.header_title, body.single-product h1.header_title, body.stbf-booking h1.header_title {
	padding-bottom: 22px !important; font-size: 26px !important; line-height: 1.25 !important;
}
@media (min-width: 1025px) {
	body.woocommerce-cart .header_breadcrumbs, body.woocommerce-checkout .header_breadcrumbs, body.single-product .header_breadcrumbs, body.stbf-booking .header_breadcrumbs { padding-top: 28px !important; }
	body.woocommerce-cart h1.header_title, body.woocommerce-checkout h1.header_title, body.single-product h1.header_title, body.stbf-booking h1.header_title { padding-bottom: 30px !important; font-size: 36px !important; }
}
