.elementor-6000 .elementor-element.elementor-element-24ea99ae{--display:flex;--min-height:100vh;--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;--justify-content:flex-start;--gap:35px 35px;--row-gap:35px;--column-gap:35px;--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;}.elementor-6000 .elementor-element.elementor-element-24ea99ae:not(.elementor-motion-effects-element-type-background), .elementor-6000 .elementor-element.elementor-element-24ea99ae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-6000 .elementor-element.elementor-element-2468e0d2{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + -5px) 0px;border-radius:0px 0px 0px 0px;}.elementor-6000 .elementor-element.elementor-element-2468e0d2 .elementor-icon-wrapper{text-align:right;}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-stacked .elementor-icon{background-color:#000000;}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-framed .elementor-icon, .elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-default .elementor-icon{color:#000000;border-color:#000000;}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-framed .elementor-icon, .elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-default .elementor-icon svg{fill:#000000;}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-stacked .elementor-icon:hover{background-color:rgba(255, 250, 245, 0.9);color:var( --e-global-color-a58ff00 );}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-framed .elementor-icon:hover, .elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-default .elementor-icon:hover{color:rgba(255, 250, 245, 0.9);border-color:rgba(255, 250, 245, 0.9);}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-framed .elementor-icon:hover, .elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-default .elementor-icon:hover svg{fill:rgba(255, 250, 245, 0.9);}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-framed .elementor-icon:hover{background-color:var( --e-global-color-a58ff00 );}.elementor-6000 .elementor-element.elementor-element-2468e0d2.elementor-view-stacked .elementor-icon:hover svg{fill:var( --e-global-color-a58ff00 );}.elementor-6000 .elementor-element.elementor-element-2468e0d2 .elementor-icon{font-size:15px;padding:10px;border-width:2px 2px 2px 2px;}.elementor-6000 .elementor-element.elementor-element-2468e0d2 .elementor-icon svg{height:15px;}.elementor-6000 .elementor-element.elementor-element-1a4d16b{--display:flex;--justify-content:flex-start;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:00px;}.elementor-6000 .elementor-element.elementor-element-0752ba4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-primary-color:var( --e-global-color-a58ff00 );--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-primary-color:var( --e-global-color-61b448b );--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:20px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-20px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group > label{font-size:12px;font-weight:500;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-type-html{padding-bottom:0px;font-size:12px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group .elementor-field, .elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-subgroup label{font-size:12px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:#D5D5D5;border-radius:0px 0px 0px 0px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:#D5D5D5;border-radius:0px 0px 0px 0px;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-field-group .elementor-select-wrapper::before{color:#D5D5D5;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-button[type="submit"]{color:#ffffff;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-6000 .elementor-element.elementor-element-0752ba4 .e-form__buttons__wrapper__button-previous:hover{color:#000000;}#elementor-popup-modal-6000 .dialog-widget-content{animation-duration:1.2s;background-color:#FFFFFF;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-6000{background-color:rgba(0, 0, 0, 0.7);justify-content:flex-end;align-items:center;pointer-events:all;}#elementor-popup-modal-6000 .dialog-message{width:395px;height:100vh;align-items:flex-start;}@media(max-width:1024px){.elementor-6000 .elementor-element.elementor-element-1a4d16b{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}}@media(max-width:1024px) and (min-width:768px){.elementor-6000 .elementor-element.elementor-element-1a4d16b{--width:60%;}}/* Start custom CSS for form, class: .elementor-element-0752ba4 *//* === NEXT button — Wavo style in green (#167e5e) === */
.elementor-widget-form .e-form__buttons__wrapper__button.elementor-button {
  position: relative;
  display: inline-block;
  padding: 14px 35px;
  background: #167e5e;                  /* green base */
  border: 1px solid #167e5e;            /* green border */
  border-radius: 0;
  color: #fff !important;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  line-height: 1;
  cursor: pointer;
  overflow: hidden;

  /* Let the base flip to white AFTER the overlay animation finishes */
  transition: background-color 0s linear .6s, border-color 0s;
}

/* Curved white overlay (the sweep) */
.elementor-widget-form .e-form__buttons__wrapper__button.elementor-button::after {
  content: '';
  position: absolute;
  top: -10px;
  left: -10px;
  right: -10px;
  bottom: 100%;
  background: #fff;
  border-radius: 0 0 100% 100% / 0 0 100% 100%;
  transition: all 0.6s cubic-bezier(1, 0, 0.55, 1);
  z-index: 0; /* overlay sits under the text */
  pointer-events: none;
}

/* Ensure the label sits ABOVE the overlay */
.elementor-widget-form .e-form__buttons__wrapper__button.elementor-button .wavo-btn-text {
  position: relative;
  z-index: 2;
  transition: color .15s ease; /* quick flip so it’s always readable */
}

/* Trigger the sweep on hover */
.elementor-widget-form .e-form__buttons__wrapper__button.elementor-button:hover::after {
  bottom: -10px;
}

/* While sweeping, text turns green (same as border) */
.elementor-widget-form .e-form__buttons__wrapper__button.elementor-button:hover .wavo-btn-text {
  color: #167e5e !important;
}

/* After the 0.6s sweep, base becomes white; border stays green */
.elementor-widget-form .e-form__buttons__wrapper__button.elementor-button:hover {
  background: #fff !important;
  border-color: #167e5e !important;
}

/* Neutralize Elementor’s default button hover/focus styles */
.elementor-widget-form .elementor-button:hover,
.elementor-widget-form .elementor-button:focus {
  box-shadow: none !important;
  color: inherit !important;
}


/* === Make SUBMIT match the Wavo-style Next button === */

/* Base state (dark) */
.elementor-widget-form .elementor-field-type-submit .elementor-button,
.elementor-widget-form .elementor-button[type="submit"] {
  position: relative;
  display: inline-block;
  padding: 14px 35px;
  background: #1e1e1e;                /* dark base */
  border: 1px solid #1e1e1e;          /* keep dark border */
  border-radius: 0;
  color: #fff !important;             /* white text initially */
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  line-height: 1;
  cursor: pointer;
  overflow: hidden;

  /* delay the base flip to white until after the overlay animation (0.6s) */
  transition: background-color 0s linear .6s, border-color 0s;
}

/* Curved white overlay */
.elementor-widget-form .elementor-field-type-submit .elementor-button::after,
.elementor-widget-form .elementor-button[type="submit"]::after {
  content: '';
  position: absolute;
  top: -10px;
  left: -10px;
  right: -10px;
  bottom: 100%;
  background: #fff;
  border-radius: 0 0 100% 100% / 0 0 100% 100%;
  transition: all 0.6s cubic-bezier(1, 0, 0.55, 1);
  z-index: 0;                          /* overlay under the text */
  pointer-events: none;
}

/* Ensure the visible label sits above overlay (works whether or not JS added .wavo-btn-text) */
.elementor-widget-form .elementor-field-type-submit .elementor-button .elementor-button-text,
.elementor-widget-form .elementor-field-type-submit .elementor-button .wavo-btn-text {
  position: relative;
  z-index: 2;
  transition: color .15s ease;         /* immediate flip so it stays readable during the sweep */
}

/* Hover: run the sweep */
.elementor-widget-form .elementor-field-type-submit .elementor-button:hover::after,
.elementor-widget-form .elementor-button[type="submit"]:hover::after {
  bottom: -10px;
}

/* Hover: text goes black immediately (same as border) */
.elementor-widget-form .elementor-field-type-submit .elementor-button:hover .elementor-button-text,
.elementor-widget-form .elementor-field-type-submit .elementor-button:hover .wavo-btn-text,
.elementor-widget-form .elementor-button[type="submit"]:hover .elementor-button-text,
.elementor-widget-form .elementor-button[type="submit"]:hover .wavo-btn-text {
  color: #1e1e1e !important;
}

/* Hover: after 0.6s sweep, base becomes white; border stays dark */
.elementor-widget-form .elementor-field-type-submit .elementor-button:hover,
.elementor-widget-form .elementor-button[type="submit"]:hover {
  background: #fff !important;         /* flips after 0.6s due to transition above */
  border-color: #1e1e1e !important;    /* keep dark border */
}

/* Neutralize Elementor's default hover styles so they don't override ours */
.elementor-widget-form .elementor-field-type-submit .elementor-button:hover,
.elementor-widget-form .elementor-field-type-submit .elementor-button:focus {
  box-shadow: none !important;
  color: inherit !important;
}






/* Style the input + KG addon like JamesCargo */
.input-group {
  display: flex;
  align-items: stretch;
  width: 100%;
  position: relative;
}

.input-group input {
  flex: 1;
  border: 1px solid #ccc;
  border-radius: 0px 0 0 0px;
  padding: 12px 14px;
  font-size: 16px;
}

.input-group-addon {
  background: #f5f5f5;
  color: #333;
  padding: 12px 16px;
  border: 1px solid #ccc;
  border-left: none;
  border-radius: 0 0px 0px 0;
  font-weight: 600;
  display: flex;
  align-items: center;
}

/* Match Elementor form style */
.elementor-field-group-Weight {
  width: 100%;
}

.input-group input:focus {
  outline: none;
  border-color: #1c3664;
}

.input-group-addon {
  background-color: #eee;
}

/* Make the whole row exactly 100% */
.elementor-field-group-Weight { 
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Flex row: no wrap */
.elementor-field-group-Weight .input-group {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
}

/* Let the input fill remaining space (not fixed 100%) */
.elementor-field-group-Weight .input-group input.elementor-field {
  flex: 1 1 auto;     /* grow + shrink */
  min-width: 0;       /* prevents overflow in flex */
  width: auto !important;  /* overrides Elementor's 100% */
  box-sizing: border-box;
  margin: 0;
  border-radius: 0px 0 0 0px;
}

/* Addon sits at the end, doesn’t wrap, sizes to content */
.elementor-field-group-Weight .input-group .input-group-addon {
  flex: 0 0 auto;
  white-space: nowrap;
  border-left: none;              /* avoid double border */
  border-radius: 0 0px 0px 0;
  display: flex;
  align-items: center;
  padding: 0 12px;                /* adjust to match input height */
}

/* Optional: ensure row has no extra gaps */
.elementor-form .elementor-field-group { gap: 0 !important; }

/* --- Shared input-group styling (same as your KG look) --- */
.input-group {
  display: flex;
  align-items: stretch;
  width: 100%;
  position: relative;
}

.input-group input {
  flex: 1 1 auto;
  min-width: 0;
  border: 1px solid #ccc;
  border-radius: 0px 0 0 0px;   /* square, like your KG example */
  padding: 12px 14px;
  font-size: 16px;
  width: auto !important;       /* override Elementor's 100% so addon fits */
  box-sizing: border-box;
  margin: 0;
}

.input-group-addon {
  background: #f5f5f5;
  color: #333;
  padding: 12px 16px;
  border: 1px solid #ccc;
  border-left: none;            /* join seamlessly with the input */
  border-radius: 0 0px 0px 0;
  font-weight: 600;
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.input-group input:focus {
  outline: none;
  border-color: #1c3664;        /* match your KG focus color */
}

.input-group-addon {
  background-color: #eee;       /* match your KG tint */
}

/* --- Keep each field exactly within its 25% column --- */
.elementor-field-group-Height,
.elementor-field-group-Length,
.elementor-field-group-Elbow,
.elementor-field-group-Width {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-field-group-Height .input-group,
.elementor-field-group-Length .input-group,
.elementor-field-group-Elbow .input-group,
.elementor-field-group-Width .input-group {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
}

/* Optional: remove tiny gaps Elementor sometimes adds between columns */
.elementor-form .elementor-field-group { gap: 0 !important; }


/* Match your KG/CM input style */
.input-group.date {
  display: flex;
  align-items: stretch;
  width: 100%;
  position: relative;
}

.input-group.date input {
  flex: 1 1 auto;
  min-width: 0;
  border: 1px solid #ccc;
  border-radius: 0px 0 0 0px;
  padding: 12px 14px;
  font-size: 16px;
  width: auto !important;
  box-sizing: border-box;
  margin: 0;
}

.input-group.date .input-group-addon {
  background: #f5f5f5;
  color: #333;
  border: 1px solid #ccc;
  border-left: none;
  border-radius: 0 0px 0px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  font-size: 18px;
}

.input-group.date .input-group-addon i {
  color: #1c3664; /* matches JamesCargo blue */
}

.input-group.date input:focus {
  outline: none;
  border-color: #1c3664;
}

/* Remove unwanted margins */
.elementor-field-group-DateOfDeparture,
.elementor-field-group-DateOfArrival {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}


.input-group-addon .date-icon {
  display: block;
  width: 20px;    /* adjust size as needed */
  height: auto;
  margin: 0 auto;
}

/* If needed, remove any default padding/margin for the span */
.input-group-addon {
  padding: 0 14px;
  background: #f5f5f5;
  border: 1px solid #ccc;
  border-left: none;
  border-radius: 0 0px 0px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* On focus input styling (keep consistency) */
.input-group.date input:focus {
  border-color: #1c3664;
}/* End custom CSS */