/* assets/css/ije-tour-request.css */

.ije-tour-request-page {
  overflow: hidden;

  background:
    linear-gradient(
      180deg,
      #fffdf8 0%,
      #ffffff 44%,
      #f8fbff 100%
    );

  color: var(--ije-text);
}

/* ===== HERO ===== */

.ije-tour-request-hero {
  position: relative;
  min-height: 520px;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: #fff;
  background-color: var(--ije-navy);
  background-image: var(--ije-tour-request-hero-image);
  background-size: cover;
  background-position: center;
}

.ije-tour-request-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(circle at top left, rgba(0,168,232,.22), transparent 30%),
    linear-gradient(90deg, rgba(7,24,39,.92) 0%, rgba(7,24,39,.72) 52%, rgba(7,24,39,.36) 100%);
}

.ije-tour-request-hero .container {
  position: relative;
  z-index: 2;
  max-width: 980px;
  text-align: center;
}

.ije-tour-request-eyebrow,
.ije-section-kicker {
  display: inline-flex;
  align-items: center;
  gap: .42rem;
  border-radius: 999px;
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 800;
  font-size: .88rem;
}

.ije-tour-request-eyebrow {
  background: rgba(255,255,255,.12);
  color: #fff;
  border: 1px solid rgba(255,255,255,.2);
  padding: .45rem .85rem;
  margin-bottom: 1rem;
}

.ije-tour-request-hero h1 {
  max-width: 900px;
  margin: 0 auto .85rem;
  color: #fff;
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 900;
  font-size: clamp(2.6rem, 5vw, 4.75rem);
  line-height: 1.05;
  letter-spacing: -.045em;
}

.ije-tour-request-hero p {
  max-width: 780px;
  margin: 0 auto;
  color: rgba(255,255,255,.9);
  font-size: 1.12rem;
  line-height: 1.7;
}

.ije-tour-request-hero-actions {
  display: flex;
  justify-content: center;
  gap: .75rem;
  flex-wrap: wrap;
  margin-top: 1.6rem;
}

/* ===== BUTTONS ===== */

.ije-tour-request-btn-primary,
.ije-tour-request-btn-secondary,
.ije-tour-request-page .multi-step-form .btn-primary,
.ije-tour-request-page .multi-step-form .btn-success {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  border-radius: 999px;
  padding: .84rem 1.18rem;
  border: 0;
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 850;
  text-decoration: none;
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    background .16s ease,
    color .16s ease;
}

.ije-tour-request-btn-primary,
.ije-tour-request-page .multi-step-form .btn-primary,
.ije-tour-request-page .multi-step-form .btn-success {
  background: linear-gradient(135deg, var(--ije-yellow), var(--ije-orange));
  color: var(--ije-navy) !important;
  box-shadow: 0 14px 28px rgba(255,201,40,.22);
}

.ije-tour-request-btn-primary:hover,
.ije-tour-request-page .multi-step-form .btn-primary:hover,
.ije-tour-request-page .multi-step-form .btn-success:hover {
  color: var(--ije-navy) !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 32px rgba(255,201,40,.3);
}

.ije-tour-request-btn-secondary {
  background: rgba(255,255,255,.11);
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.26);
}

.ije-tour-request-btn-secondary:hover {
  background: rgba(255,255,255,.18);
  color: #fff !important;
  transform: translateY(-1px);
}

.ije-tour-request-page .multi-step-form .btn-secondary {
  border-radius: 999px;
  padding: .84rem 1.18rem;
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 850;
  background: #fff;
  color: var(--ije-navy);
  border: 1px solid var(--ije-line);
}

.ije-tour-request-page .multi-step-form .btn-secondary:hover {
  background: var(--ije-soft-bg);
  color: var(--ije-navy);
}

/* ===== SHARED SECTIONS ===== */

.ije-tour-request-intro,
.ije-tour-request-form-section,
.ije-tour-request-next,
.ije-tour-request-faq {
  position: relative;
  overflow: hidden;

  padding: 4.25rem 0;
}

/* =========================================================
   INTRO
   Warm welcome ambience
   ========================================================= */

.ije-tour-request-intro {
  background:
    radial-gradient(
      circle at 7% 12%,
      rgba(254, 209, 0, .13),
      transparent 27%
    ),
    radial-gradient(
      circle at 94% 88%,
      rgba(0, 168, 232, .075),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      #fffdf7 0%,
      #ffffff 100%
    );

  border-bottom:
    1px solid rgba(7, 24, 39, .055);
}


/* =========================================================
   REQUEST FORM SECTION
   Calm blue depth behind form
   ========================================================= */

.ije-tour-request-form-section {
  background:
    radial-gradient(
      circle at 96% 10%,
      rgba(0, 168, 232, .08),
      transparent 29%
    ),
    radial-gradient(
      circle at 4% 90%,
      rgba(254, 209, 0, .085),
      transparent 27%
    ),
    linear-gradient(
      180deg,
      #ffffff 0%,
      #f8fbff 100%
    );
}


/* =========================================================
   WHAT HAPPENS NEXT
   Warm transition around premium CTA
   ========================================================= */

.ije-tour-request-next {
  background:
    radial-gradient(
      circle at 8% 16%,
      rgba(254, 209, 0, .11),
      transparent 26%
    ),
    radial-gradient(
      circle at 91% 84%,
      rgba(0, 168, 232, .08),
      transparent 28%
    ),
    linear-gradient(
      180deg,
      #f8fbff 0%,
      #fffdf8 100%
    );

  border-top:
    1px solid rgba(7, 24, 39, .045);

  border-bottom:
    1px solid rgba(7, 24, 39, .045);
}


/* =========================================================
   FAQ
   Clean content section with restrained ambience
   ========================================================= */

.ije-tour-request-faq {
  background:
    radial-gradient(
      circle at 95% 8%,
      rgba(0, 168, 232, .065),
      transparent 27%
    ),
    radial-gradient(
      circle at 5% 94%,
      rgba(254, 209, 0, .075),
      transparent 25%
    ),
    linear-gradient(
      180deg,
      #ffffff 0%,
      #f9fbff 100%
    );
}


.ije-section-heading {
  max-width: 840px;
  margin: 0 auto 2rem;
}

.ije-section-kicker {
  background: var(--ije-sand);
  color: var(--ije-navy);
  padding: .38rem .78rem;
  margin-bottom: .8rem;
}

.ije-section-heading h2,
.ije-tour-request-next-card h2 {
  color: var(--ije-navy);
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 900;
  font-size: clamp(1.9rem, 3vw, 3rem);
  line-height: 1.1;
  letter-spacing: -.035em;
  margin-bottom: .75rem;
}

.ije-section-heading p,
.ije-tour-request-next-card p {
  color: var(--ije-muted);
  line-height: 1.72;
}

/* ===== FORM ===== */

.multi-step-form {
  max-width: 820px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--ije-line);
  border-radius: 28px;
  padding: 2rem;
  box-shadow: 0 18px 45px rgba(7,24,39,.09);
  position: relative;
}

.form-control.is-invalid + .invalid-feedback,
.form-select.is-invalid + .invalid-feedback {
  display: block;
}

.multi-step-form .alert {
  border-radius: 18px;
}

.multi-step-form .form-label {
  color: var(--ije-navy);
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 800;
}

.multi-step-form .form-control,
.multi-step-form .form-select {
  border-radius: 14px;
  border-color: #cfd7df;
  padding: .78rem .9rem;
}

.multi-step-form .form-control:focus,
.multi-step-form .form-select:focus {
  border-color: var(--ije-blue);
  box-shadow: 0 0 0 .2rem rgba(0,168,232,.15);
}

.multi-step-form textarea.form-control {
  min-height: 140px;
}

.multi-step-form .form-check-input:checked {
  background-color: var(--ije-blue-dark);
  border-color: var(--ije-blue-dark);
}

.step-indicator {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: .75rem;
  margin-bottom: 2.25rem;
  position: relative;
  padding: 0 10px;
}

.step-indicator::before {
  content: "";
  position: absolute;
  top: 26px;
  left: 12%;
  right: 12%;
  height: 3px;
  background-color: #e9ecef;
  z-index: 0;
}

.step {
  flex: 1;
  text-align: center;
  position: relative;
  z-index: 1;
}

.step .circle {
  width: 52px;
  height: 52px;
  margin: 0 auto .45rem;
  border-radius: 50%;
  border: 2px solid var(--ije-line);
  background: #fff;
  color: var(--ije-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 900;
  transition: all .2s ease;
  box-shadow: 0 8px 20px rgba(7,24,39,.055);
}

.step small {
  display: block;
  color: var(--ije-muted);
  font-size: .8rem;
  font-weight: 800;
}

.step.active .circle {
  border-color: var(--ije-yellow);
  background: linear-gradient(135deg, var(--ije-yellow), var(--ije-orange));
  color: var(--ije-navy);
  box-shadow: 0 0 0 4px rgba(255,201,40,.22);
}

.step.active small {
  color: var(--ije-navy);
}

.step.completed .circle {
  border-color: var(--ije-blue-dark);
  background: var(--ije-blue-dark);
  color: #fff;
  box-shadow: 0 0 0 4px rgba(0,168,232,.15);
}

.step.completed small {
  color: var(--ije-blue-dark);
  font-weight: 900;
}

label[for="tr_pickup_time"] {
  display: block !important;
}

.form-hidden-after-submit {
  display: none !important;
}

/* ===== NEXT CARD ===== */

.ije-tour-request-next-card {
  max-width: 880px;
  margin: 0 auto;
  background:
    radial-gradient(circle at top right, rgba(255,201,40,.18), transparent 28%),
    linear-gradient(135deg, var(--ije-navy), #0b2238);
  color: #fff;
  border-radius: 28px;
  padding: 2rem;
  text-align: center;
}

.ije-tour-request-next-card .ije-section-kicker {
  background: rgba(255,255,255,.12);
  color: #fff;
  border: 1px solid rgba(255,255,255,.18);
}

.ije-tour-request-next-card h2 {
  color: #fff;
}

.ije-tour-request-next-card p {
  max-width: 720px;
  margin: 0 auto;
  color: rgba(255,255,255,.82);
}

/* ===== FAQ ===== */

.ije-tour-request-accordion .accordion-item {
  border: 1px solid var(--ije-line);
  border-radius: 18px;
  overflow: hidden;
  margin-bottom: .85rem;
  box-shadow: 0 10px 26px rgba(7,24,39,.045);
}

.ije-tour-request-accordion .accordion-button {
  color: var(--ije-navy);
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 850;
  font-size: 1.02rem;
  letter-spacing: -.015em;
}

.ije-tour-request-accordion .accordion-button:not(.collapsed) {
  color: var(--ije-navy);
  background: var(--ije-sand);
  box-shadow: none;
}

.ije-tour-request-accordion .accordion-button:focus {
  box-shadow: none;
  border-color: var(--ije-line);
}

.ije-tour-request-accordion .accordion-body {
  color: var(--ije-muted);
  line-height: 1.7;
}

/* =========================================================
   FILM STRIP
   ========================================================= */

.ije-tour-request-film-strip {
  position: relative;
  overflow: hidden;

  padding: 2rem 0;

  background:
    radial-gradient(
      circle at 10% 50%,
      rgba(254, 209, 0, .08),
      transparent 24%
    ),
    radial-gradient(
      circle at 90% 50%,
      rgba(0, 168, 232, .065),
      transparent 26%
    ),
    linear-gradient(
      180deg,
      #f9fbff,
      #fffdf8
    );
}

/* ===== RESPONSIVE ===== */

@media (max-width: 991.98px) {
  .ije-tour-request-hero {
    min-height: 480px;
  }

  .ije-tour-request-intro,
  .ije-tour-request-form-section,
  .ije-tour-request-next,
  .ije-tour-request-faq {
    padding: 3.25rem 0;
  }

  .multi-step-form {
    padding: 1.5rem;
    border-radius: 24px;
  }
}

@media (max-width: 575.98px) {
  .ije-tour-request-hero {
    min-height: 520px;
  }

  .ije-tour-request-hero-actions,
  .ije-tour-request-btn-primary,
  .ije-tour-request-btn-secondary {
    width: 100%;
  }

  .step-indicator {
    gap: .25rem;
    padding: 0;
  }

  .step-indicator::before {
    top: 23px;
    left: 16%;
    right: 16%;
  }

  .step .circle {
    width: 46px;
    height: 46px;
  }

  .step small {
    font-size: .7rem;
  }

  .multi-step-form {
    padding: 1.15rem;
  }

  .multi-step-form .btn {
    width: 100%;
    margin-top: .65rem !important;
  }

  .ije-tour-request-next-card {
    padding: 1.45rem;
    border-radius: 22px;
  }
}

/**CTA BAR**/
.ije-scroll-cta .is-visible{
	display:none !important
}