.elementor-30488 .elementor-element.elementor-element-738bc2c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-30488 .elementor-element.elementor-element-c53b560{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:center;}.elementor-30488 .elementor-element.elementor-element-c53b560 .elementor-heading-title{font-size:28px;font-weight:900;letter-spacing:2px;color:var( --e-global-color-secondary );}.elementor-30488 .elementor-element.elementor-element-cbcd418 > .elementor-widget-container{margin:0px 0px 10px 0px;}.elementor-30488 .elementor-element.elementor-element-cbcd418 .wd-text-block{font-size:15px;font-weight:400;letter-spacing:2px;color:var( --e-global-color-secondary );}#elementor-popup-modal-30488 .dialog-widget-content{background-color:var( --e-global-color-text );border-radius:25px 25px 25px 25px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-30488{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-30488 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-30488 .dialog-close-button{display:flex;}#elementor-popup-modal-30488 .dialog-close-button i{color:var( --e-global-color-primary );}#elementor-popup-modal-30488 .dialog-close-button svg{fill:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-30488 .elementor-element.elementor-element-c53b560 .elementor-heading-title{font-size:18px;}.elementor-30488 .elementor-element.elementor-element-cbcd418 .wd-text-block{font-size:10px;}}@media(max-width:768px){.elementor-30488 .elementor-element.elementor-element-c53b560{text-align:center;}.elementor-30488 .elementor-element.elementor-element-c53b560 .elementor-heading-title{font-size:20px;line-height:25px;}.elementor-30488 .elementor-element.elementor-element-cbcd418 .wd-text-block{font-size:10px;}}/* Start custom CSS for wd_contact_form_7, class: .elementor-element-7194b57 */:root {
  /* Refix India Brand Colors */
  --brand-red: #E64E35;
  --navy-dark: #0F172A;
  --peach-bg: #FFF6F4;
  --white: #FFFFFF;
  --gray-border: #D1D5DB;
  
  /* Rounded Corner Settings */
  --form-radius: 20px; 
  --field-radius: 10px; 
  --btn-radius: 10px; 
}

/* --- Main Form Wrapper --- */
body .refix-booking-wrapper {
  background-color: var(--peach-bg) !important;
  padding: 30px !important;
  border-radius: var(--form-radius) !important;
  width: 100% !important;
  max-width: 600px !important;
  margin: 0 auto !important;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
}

body .refix-booking-wrapper * { 
  box-sizing: border-box !important; 
}

/* Force CF7 Wrappers to block level so they don't break layout */
body .refix-booking-wrapper .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
}

/* --- Typography & Titles --- */
body .refix-booking-wrapper h3.step-title {
  color: var(--navy-dark) !important;
  font-size: 1.5rem !important;
  margin: 0 0 20px 0 !important;
  border-bottom: 2px solid var(--brand-red) !important;
  padding-bottom: 10px !important;
  display: inline-block !important;
}

body .refix-booking-wrapper label {
  display: block !important;
  font-weight: 600 !important;
  margin-bottom: -15px !important;
  color: var(--navy-dark) !important;
  font-size: 0.95rem !important;
}

/* --- Step Animation --- */
.form-step {
  display: none;
  animation: fadeIn 0.4s ease-in-out;
}
.form-step.active { 
  display: block; 
}

body .refix-booking-wrapper .input-group { 
  margin-bottom: 20px !important; 
}

/* --- Input Fields Styles --- */
body .refix-booking-wrapper input[type="text"],
body .refix-booking-wrapper input[type="email"],
body .refix-booking-wrapper input[type="tel"],
body .refix-booking-wrapper input[type="date"],
body .refix-booking-wrapper select {
  width: 100% !important;
  border: 1px solid var(--gray-border) !important;
  background-color: var(--white) !important;
  color: var(--navy-dark) !important;
  padding: 15px !important;
  line-height: 1.5 !important;
  min-height: 50px !important;
  border-radius: var(--field-radius) !important; 
  outline: none !important;
  box-shadow: none !important;
}

body .refix-booking-wrapper textarea {
  width: 100% !important;
  border: 1px solid var(--gray-border) !important;
  background-color: var(--white) !important;
  color: var(--navy-dark) !important;
  padding: 15px !important;
  line-height: 1.5 !important;
  min-height: 80px !important;
  border-radius: var(--field-radius) !important; 
  outline: none !important;
  box-shadow: none !important;
}

body .refix-booking-wrapper input:focus,
body .refix-booking-wrapper select:focus,
body .refix-booking-wrapper textarea:focus {
  border-color: var(--brand-red) !important;
}

/* --- Acceptance Checkbox Layout --- */
body .refix-booking-wrapper .checkbox-group .wpcf7-list-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
}
body .refix-booking-wrapper .checkbox-group input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  accent-color: var(--brand-red) !important;
  margin-top: 3px !important;
}

/* --- Desktop Layout: Date & Time side-by-side --- */
@media (min-width: 601px) {
  body .refix-booking-wrapper .row-desktop {
    display: flex !important;
    gap: 20px !important;
  }
  body .refix-booking-wrapper .half-width {
    flex: 1 !important;
    width: 100% !important;
  }
}

/* --- STRICT BUTTON ROW LAYOUT --- */
body .refix-booking-wrapper .btn-group-nav {
  display: flex !important;
  flex-direction: row !important; 
  align-items: center !important;
  justify-content: space-between !important; 
  width: 100% !important;
  margin-top: 0px !important;
  gap: 10px !important;
  position: relative !important; 
}

body .refix-booking-wrapper .btn-group-nav br {
  display: none !important; 
}

body .refix-booking-wrapper .btn-group-nav p {
  display: flex !important;
  justify-content: space-between !important; 
  width: 100% !important; 
  margin: 0 !important;
  padding: 0 !important;
}

body .refix-booking-wrapper .btn-group-nav .wpcf7-form-control-wrap {
  margin: 0 !important;
  padding: 0 !important;
  display: inline-block !important;
  width: auto !important; 
}

/* General Button Sizing */
body .refix-booking-wrapper .btn-group-nav button,
body .refix-booking-wrapper .btn-group-nav input[type="submit"] {
  width: auto !important; 
  min-width: 120px !important; 
  padding: 14px 20px !important;
  margin: 0 !important; 
  font-size: 1rem !important;
  font-weight: bold !important;
  border-radius: var(--btn-radius) !important; 
  cursor: pointer !important;
  border: none !important;
  text-align: center !important;
}

body .refix-booking-wrapper .btn-secondary {
  background-color: var(--navy-dark) !important;
  color: var(--white) !important;
}

body .refix-booking-wrapper .btn-primary, 
body .refix-booking-wrapper .wpcf7-submit {
  background-color: var(--brand-red) !important;
  color: var(--white) !important;
}

body .refix-booking-wrapper .wpcf7-submit {
  margin-left: auto !important; 
}

body .refix-booking-wrapper .wpcf7-spinner,
body .refix-booking-wrapper .ajax-loader {
  position: absolute !important;
  right: 0 !important;
  bottom: -30px !important;
}

/* --- Custom Popup Modal Styles --- */
body .refix-booking-wrapper .refix-modal-overlay {
  display: none !important;
  position: fixed !important;
  top: 0 !important; 
  left: 0 !important; 
  width: 100% !important; 
  height: 100% !important;
  background: rgba(15, 23, 42, 0.75) !important; 
  z-index: 999999 !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0;
  transition: opacity 0.3s ease;
}

body .refix-booking-wrapper .refix-modal-overlay.active {
  display: flex !important;
  opacity: 1;
}

body .refix-booking-wrapper .refix-modal-box {
  background: var(--white) !important;
  padding: 30px !important;
  border-radius: var(--form-radius) !important;
  max-width: 400px !important;
  width: 90% !important;
  text-align: center !important;
  box-shadow: 0 10px 25px rgba(0,0,0,0.2) !important;
  transform: translateY(20px);
  transition: transform 0.3s ease;
}

body .refix-booking-wrapper .refix-modal-overlay.active .refix-modal-box {
  transform: translateY(0);
}

body .refix-booking-wrapper .refix-modal-box h4 {
  margin-top: 0 !important;
  margin-bottom: 15px !important;
  color: var(--navy-dark) !important;
  font-size: 1.4rem !important;
}

body .refix-booking-wrapper .refix-modal-box p {
  color: #4B5563 !important;
  margin-bottom: 25px !important;
  line-height: 1.6 !important;
  font-size: 1rem !important;
  white-space: pre-wrap !important; 
}

body .refix-booking-wrapper .refix-modal-box button {
  width: 100% !important;
  margin: 0 !important;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 600px) {
  body .refix-booking-wrapper { 
    padding: 20px !important; 
  }
}/* End custom CSS */