.elementor .e-67c9cb0-5079618{mix-blend-mode:normal;justify-content:center;align-items:center;align-self:center;/* =========================================
 CHAUFFEUR.NET INSPIRED BOOKING FORM
 ========================================= */

:root {
  --luxury-gold: #b89b5e;
  --luxury-gold-hover: #9d8249;
  --luxury-black: #191C22; /* Set base black to target background */
  --luxury-bg: #191C22;    /* Main screen background */
  --luxury-charcoal: #252525;
  --luxury-gray: #777777;
  --luxury-border: #333842;
  --luxury-light: #f7f7f7;
  --luxury-white: #ffffff;
}

/* GLOBAL SCREEN BACKGROUND */
html, 
body {
  background-color: var(--luxury-bg) !important;
}

/* MAIN FORM */
form {
  font-family: "Montserrat", Arial, sans-serif !important;
  color: #ffffff !important;
  background-color: var(--luxury-bg) !important;
}

/* LABELS */
label {
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
}

/* INPUTS */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="date"],
input[type="time"],
input[type="password"],
select,
textarea {
  width: 100% !important;
  min-height: 52px !important;
  background: var(--luxury-bg) !important;
  color: #ffffff !important;
  border: 1px solid var(--luxury-border) !important;
  border-radius: 0 !important;
  padding: 14px 16px !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 14px !important;
  box-shadow: none !important;
  transition: all 0.3s ease !important;
  box-sizing: border-box !important;
}

/* INPUT FOCUS */
input:focus,
select:focus,
textarea:focus {
  border-color: var(--luxury-gold) !important;
  outline: none !important;
  box-shadow: 0 0 0 1px var(--luxury-gold) !important;
}

/* PLACEHOLDERS */
input::placeholder,
textarea::placeholder {
  color: #999999 !important;
  opacity: 1 !important;
}

/* SELECT & OPTIONS FIX */
select {
  cursor: pointer !important;
}

/* Force dark dropdown menu options (Prevents white options with invisible white text on OS level pickers) */
option {
  background-color: var(--luxury-bg) !important;
  color: #ffffff !important;
}

/* TEXTAREA */
textarea {
  min-height: 120px !important;
  resize: vertical !important;
}

/* PRIMARY BUTTONS */
button,
input[type="submit"],
.btn,
.btn-primary {
  min-height: 52px !important;
  background: var(--luxury-gold) !important;
  color: var(--luxury-white) !important;
  border: 1px solid var(--luxury-gold) !important;
  border-radius: 0 !important;
  padding: 14px 30px !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  transition: all 0.3s ease !important;
}

/* BUTTON HOVER */
button:hover,
input[type="submit"]:hover,
.btn:hover,
.btn-primary:hover {
  background: var(--luxury-black) !important;
  color: var(--luxury-white) !important;
  border-color: var(--luxury-gold) !important;
}

/* FORM SECTIONS & SCREEN PANELS */
fieldset,
.panel,
.card,
.form-section,
.panel-body,
.card-body {
  background: var(--luxury-bg) !important;
  border: 1px solid var(--luxury-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* HEADINGS */
h1,
h2,
h3,
h4,
h5,
h6 {
  color: #ffffff !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-weight: 500 !important;
}

/* FORM SECTION HEADINGS */
legend,
.panel-heading,
.card-header {
  background: var(--luxury-bg) !important;
  color: var(--luxury-white) !important;
  border-bottom: 1px solid var(--luxury-border) !important;
  border-radius: 0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
}

/* LINKS */
a {
  color: var(--luxury-gold) !important;
  transition: color 0.3s ease !important;
}

a:hover {
  color: #ffffff !important;
}

/* CHECKBOXES / RADIO */
input[type="checkbox"],
input[type="radio"] {
  accent-color: var(--luxury-gold) !important;
}

/* ERROR MESSAGES */
.error,
.has-error,
.text-danger,
.invalid-feedback {
  color: #ff6b6b !important;
  font-size: 12px !important;
}

/* SUCCESS */
.success,
.text-success {
  color: #85b872 !important;
}

/* DATE PICKER */
.ui-datepicker,
.datepicker {
  font-family: "Montserrat", Arial, sans-serif !important;
  border-radius: 0 !important;
  background: var(--luxury-bg) !important;
  border: 1px solid var(--luxury-border) !important;
}

.ui-datepicker-header,
.datepicker-switch {
  background: var(--luxury-bg) !important;
  color: var(--luxury-white) !important;
}

/* ACTIVE DATE */
.ui-state-active,
.active.day {
  background: var(--luxury-gold) !important;
  color: var(--luxury-white) !important;
}

/* ==========================================================
 WHITE BACKGROUND OVERRIDE RULES (AUTOMATIC CONTRAST FIX)
 ========================================================== */

/* 1. Explicit light containers/classes */
.bg-white,
.bg-light,
.white-bg,
[style*="background-color: #ffffff"],
[style*="background-color: rgb(255, 255, 255)"],
[style*="background-color: white"],
[style*="background: #ffffff"],
[style*="background: rgb(255, 255, 255)"],
[style*="background: white"] {
  color: var(--luxury-black) !important;
}

/* 2. Text elements inside white containers */
.bg-white *,
.bg-light *,
.white-bg *,
[style*="background-color: #ffffff"] *,
[style*="background-color: rgb(255, 255, 255)"] *,
[style*="background-color: white"] *,
[style*="background: #ffffff"] *,
[style*="background: rgb(255, 255, 255)"] *,
[style*="background: white"] * {
  color: var(--luxury-black) !important;
}

/* Preserve gold links inside white areas */
.bg-white a,
.bg-light a,
.white-bg a,
[style*="background-color: #ffffff"] a,
[style*="background: #ffffff"] a {
  color: var(--luxury-gold) !important;
}

/* 3. Inputs/Selects explicitly given a white background */
input[style*="background: #fff"],
input[style*="background-color: #fff"],
input[style*="background: white"],
input[style*="background-color: white"],
select[style*="background: #fff"],
select[style*="background-color: #fff"] {
  color: var(--luxury-black) !important;
}

/* ==========================================================
 PHONE FIELD FIX (INTL-TEL-INPUT / LIMO ANYWHERE)
 ========================================================== */

/* Wrapper */
.iti,
.intl-tel-input {
  width: 100% !important;
}

/* Restore padding removed by global input styles */
.iti input,
.iti input[type="tel"],
.intl-tel-input input,
.intl-tel-input input[type="tel"] {
  padding-left: 58px !important;
  padding-right: 16px !important;
  height: 52px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  background-color: var(--luxury-bg) !important;
}

/* Flag container */
.iti__flag-container,
.intl-tel-input .flag-container {
  z-index: 10 !important;
  width: 46px !important;
}

/* Country selector */
.iti__selected-flag,
.intl-tel-input .selected-flag {
  width: 46px !important;
  padding: 0 12px !important;
  background-color: var(--luxury-bg) !important;
}

/* Dropdown */
.iti__country-list,
.intl-tel-input .country-list {
  z-index: 99999 !important;
  background-color: var(--luxury-bg) !important;
  color: #ffffff !important;
  border: 1px solid var(--luxury-border) !important;
}

.iti__country,
.intl-tel-input .country {
  background-color: var(--luxury-bg) !important;
  color: #ffffff !important;
}

.iti__country:hover,
.intl-tel-input .country:hover {
  background-color: var(--luxury-gold) !important;
}

/* MOBILE */
@media (max-width: 767px) {

  input,
  select,
  textarea,
  button {
      font-size: 16px !important;
  }

  button,
  input[type="submit"],
  .btn {
      width: 100% !important;
  }

  .iti input,
  .iti input[type="tel"],
  .intl-tel-input input,
  .intl-tel-input input[type="tel"] {
      padding-left: 58px !important;
  }

}\n}