.elementor-196 .elementor-element.elementor-element-e77f39b{--display:flex;--min-height:400px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.6;--margin-top:-150px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-196 .elementor-element.elementor-element-e77f39b:not(.elementor-motion-effects-element-type-background), .elementor-196 .elementor-element.elementor-element-e77f39b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://host.ndotatravel.com/wp-content/uploads/2025/10/patrick-tomasso-fMntI8HAAB8-unsplash-scaled.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-196 .elementor-element.elementor-element-e77f39b::before, .elementor-196 .elementor-element.elementor-element-e77f39b > .elementor-background-video-container::before, .elementor-196 .elementor-element.elementor-element-e77f39b > .e-con-inner > .elementor-background-video-container::before, .elementor-196 .elementor-element.elementor-element-e77f39b > .elementor-background-slideshow::before, .elementor-196 .elementor-element.elementor-element-e77f39b > .e-con-inner > .elementor-background-slideshow::before, .elementor-196 .elementor-element.elementor-element-e77f39b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-196 .elementor-element.elementor-element-d3b460c .elementor-heading-title{font-family:"Raleway", Sans-serif;font-size:54px;font-weight:600;color:#FFFFFF;}.elementor-196 .elementor-element.elementor-element-9615714{--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;--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-196 .elementor-element.elementor-element-d3b460c{text-align:center;}.elementor-196 .elementor-element.elementor-element-d3b460c .elementor-heading-title{font-size:40px;}}/* Start custom CSS for shortcode, class: .elementor-element-858fa17 *//* ===== BASE STYLES ===== */
body {
  font-family: "Raleway", Sans-serif;
  background: #ffffff;
  color: #000;
  margin: 0;
  padding: 0;
}
.container {
  max-width: 900px;
  margin: 40px auto;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0, 179, 255, 0.2);
  padding: 40px 50px;
}
h1 {
  text-align: center;
  color: #00b3ff;
  font-size: 28px;
  margin-bottom: 30px;
}

/* ===== PROGRESS BAR ===== */
.progressbar {
  display: flex;
  justify-content: space-between;
  counter-reset: step;
  margin-bottom: 40px;
  position: relative;
}
.progressbar::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 5px;
  background: #e6f7ff;
  transform: translateY(-50%);
  z-index: 0;
  border-radius: 3px;
}
/* Modern Checkbox Styling */
.checkbox-group input[type="checkbox"] {
  appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid #00b3ff;
  border-radius: 4px;
  position: relative;
  cursor: pointer;
  transition: all 0.3s;
  position: relative;
    top: 3px;
    left: -3px;
}

.checkbox-group input[type="checkbox"]:checked {
  background-color: #00b3ff;
}

.checkbox-group input[type="checkbox"]:checked::after {
  content: "✔";
  color: #fff;
  font-size: 12px;
  position: absolute;
  top: 0px;
  left: 3px;
}

.progress-step {
  position: relative;
  z-index: 1;
  width: 35px;
  height: 35px;
  background: #e6f7ff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000;
  font-weight: 600;
  transition: 0.4s;
}
.progress-step.active {
  background: #00b3ff;
  color: #fff;
}
.progress-step::after {
  counter-increment: step;
  content: counter(step);
}
.checkbox-group.source-group {
    margin-top: 0px;
}
label {
    padding-top: 10px;
}
.progress-step p {
  position: absolute;
  top: 45px;
  width: 100px;
  text-align: center;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: #555;
}
.radio-group label {
    padding-top: 0px;
    margin-top: 0px;
}
/* ===== FORM SECTIONS ===== */
.form-step {
  display: none;
  animation: fadeIn 0.5s ease;
}
.form-step.active {
  display: block;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
section {
  
  margin-bottom: 25px;
}
button:hover{
   background-color: #00B3FF !important; 
}
.checkbox-group.payment-method-group label {
    padding-top: 0px;
    margin-top: 0px;
}
button.next-btn, [type=submit] {
    background-color: #00B3FF;
    font-family: "Raleway", Sans-serif;
    font-size: 18px;
    font-weight: 500;
    fill: #FFFFFF;
    color: #FFFFFF;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #00B3FF;
    border-radius: 12px 12px 12px 12px;
    padding: 16px 32px 16px 32px;
}
button.prev-btn
 {
    background-color: #00B3FF;
    font-family: "Raleway", Sans-serif;
    font-size: 18px;
    font-weight: 500;
    fill: #FFFFFF;
    color: #FFFFFF;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #00B3FF;
    border-radius: 12px 12px 12px 12px;
    padding: 16px 32px 16px 32px;
}
section h2 {
  color: #00b3ff;
  font-size: 20px;
  margin-bottom: 15px;
}
label {
  display: block;
  margin-top: 10px;
  font-weight: 500;
}
input, select, textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 8px;
  margin-top: 5px;
  font-size: 15px;
  box-sizing: border-box;
  transition: border 0.3s;
}
input:focus, select:focus, textarea:focus {
  border-color: #00b3ff;
  outline: none;
}
.checkbox-group, .radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 25px;
  margin-top: 10px;
}
button {
  background: #00b3ff;
  color: #fff;
  border: none;
  padding: 12px 30px;
  border-radius: 8px;
  font-size: 16px;
  cursor: pointer;
  transition: 0.3s;
}
.checkbox-group label {
    padding-top: 0px;
    margin-top: 0px;
}
button:hover {
  background: #0095d1;
  transform: scale(1.03);
}
.btns {
  display: flex;
  justify-content: space-between;
  margin-top: 25px;
}
.success-message {
  display: none;
  text-align: center;
  color: green;
  margin-top: 20px;
}/* End custom CSS */