/**
 * Compact four-step collection request.
 * Progressive enhancement: the parent four-step form remains usable if JS is
 * unavailable, and the server continues to own validation and storage.
 */

.sit-route-book-a-collection .sit-v631-form-layout.sit-compact-collection {
  display: block;
  width: min(900px, 100%);
  margin-inline: auto;
  border-radius: var(--sit-radius-lg, 1rem);
  overflow: visible;
}

.sit-route-book-a-collection .sit-compact-collection > .sit-v631-form-guide {
  display: none !important;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard {
  overflow: hidden;
  border: 1px solid var(--sit-line, #d8e1dc);
  border-radius: var(--sit-radius-lg, 1rem);
  box-shadow: var(--sit-shadow-soft, 0 1.25rem 3.75rem rgba(3, 47, 42, .08));
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header {
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 25rem);
  align-items: center;
  gap: 1.75rem;
  padding: 1.45rem 1.75rem;
  border-bottom: 1px solid var(--sit-line, #d8e1dc);
  background: linear-gradient(135deg, #fff 0%, #f7faf5 100%);
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header h3 {
  font-size: clamp(1.35rem, 2.4vw, 1.8rem);
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header ol {
  width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header li {
  justify-content: center;
  min-height: 2.75rem;
  font-size: .72rem;
  text-align: center;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard form {
  padding: 1.55rem 1.75rem 1.75rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard fieldset[hidden],
.sit-route-book-a-collection .sit-compact-collection [hidden] {
  display: none !important;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard legend {
  margin-bottom: .4rem;
  font-size: 1.35rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-step-intro {
  margin-bottom: 1.15rem;
  font-size: .86rem;
  line-height: 1.6;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v63-form-grid {
  gap: .8rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v63-form-grid label,
.sit-route-book-a-collection .sit-compact-collection .sit-v63-counter-grid label {
  gap: .35rem;
  font-size: .8rem;
}

.sit-route-book-a-collection .sit-compact-collection input:not([type="checkbox"]),
.sit-route-book-a-collection .sit-compact-collection select {
  min-height: 2.8rem;
  padding: .6rem .75rem;
}

.sit-route-book-a-collection .sit-compact-collection textarea {
  padding: .65rem .75rem;
}

.sit-compact-optional {
  color: #72817a;
  font-size: .72rem;
  font-weight: 600;
}

.sit-compact-details {
  grid-column: 1 / -1;
  border: 1px solid var(--sit-line, #d8e1dc);
  border-radius: var(--sit-radius-sm, .5rem);
  background: #f8faf7;
}

.sit-compact-details summary {
  position: relative;
  padding: .85rem 2.75rem .85rem 1rem;
  color: var(--sit-ink, #092f26);
  font-size: .8rem;
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

.sit-compact-details summary::-webkit-details-marker {
  display: none;
}

.sit-compact-details summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.45rem;
  height: 1.45rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #e9f2e5;
  transform: translateY(-50%);
  font-size: 1rem;
}

.sit-compact-details[open] summary::after {
  content: "−";
}

.sit-compact-details__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
  padding: 0 1rem 1rem;
  border-top: 1px solid var(--sit-line, #d8e1dc);
}

.sit-compact-details__grid > label {
  margin-top: .85rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v63-counter-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v63-counter-grid label,
.sit-route-book-a-collection .sit-compact-collection .sit-compact-asset {
  grid-template-columns: minmax(0, 1fr) 4.4rem;
  min-height: 3.25rem;
  padding: .65rem .75rem;
  border-radius: var(--sit-radius-sm, .5rem);
  transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.sit-route-book-a-collection .sit-compact-collection .sit-compact-asset.has-value {
  border-color: #8fb72f;
  background: #f2fad7;
  box-shadow: inset 3px 0 0 var(--sit-lime, #c9f24a);
}

.sit-route-book-a-collection .sit-compact-collection .sit-compact-asset input {
  min-height: 2.35rem;
  padding: .35rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-equipment-notes {
  margin-top: .9rem;
  padding-top: .9rem;
}

.sit-compact-review {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid #bfd580;
  border-left: 4px solid var(--sit-lime, #c9f24a);
  border-radius: var(--sit-radius-sm, .5rem);
  background: #f3f9df;
}

.sit-compact-review > p {
  margin: 0 0 .2rem;
  color: #447021;
  font-size: .64rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.sit-compact-review h4 {
  margin: 0 0 .85rem;
  font-size: 1.05rem;
}

.sit-compact-review dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  border-top: 1px solid rgba(54, 91, 41, .18);
}

.sit-compact-review dl > div {
  padding: .65rem .75rem .65rem 0;
  border-bottom: 1px solid rgba(54, 91, 41, .18);
}

.sit-compact-review dt {
  color: #62705f;
  font-size: .62rem;
  font-weight: 750;
  text-transform: uppercase;
}

.sit-compact-review dd {
  margin: .18rem 0 0;
  color: var(--sit-ink, #092f26);
  font-size: .76rem;
  font-weight: 800;
}

.sit-compact-review > small {
  display: block;
  margin-top: .75rem;
  color: #62705f;
  font-size: .67rem;
}

.sit-compact-error {
  margin: 1rem 0 0;
  padding: .75rem .9rem;
  border-left: 4px solid #c34832;
  background: #fff1ed;
  color: #712a20;
  font-size: .76rem;
  font-weight: 750;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v63-consent {
  margin-top: 1rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard form > footer {
  margin-top: 1.15rem;
  padding-top: 1rem;
}

.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard form > footer .sit-v63-primary,
.sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard-back {
  min-height: 2.85rem;
}

@media (max-width: 760px) {
  .sit-route-book-a-collection .sit-v631-form-layout.sit-compact-collection {
    width: 100%;
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header {
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 1.1rem 1rem;
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header li {
    min-height: 2.5rem;
    padding-inline: .25rem;
    font-size: .68rem;
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header li span {
    flex: 0 0 auto;
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard form {
    padding: 1.1rem 1rem 1.2rem;
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v63-form-grid,
  .sit-route-book-a-collection .sit-compact-collection .sit-v63-counter-grid,
  .sit-compact-details__grid,
  .sit-compact-review dl {
    grid-template-columns: 1fr;
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v63-counter-grid label,
  .sit-route-book-a-collection .sit-compact-collection .sit-compact-asset {
    grid-template-columns: minmax(0, 1fr) 4.8rem;
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard form > footer {
    position: sticky;
    bottom: 0;
    z-index: 4;
    margin-inline: -1rem;
    margin-bottom: -1.2rem;
    padding: .8rem 1rem;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 -8px 24px rgba(6, 44, 35, .08);
    backdrop-filter: blur(8px);
  }

  .sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard form > footer .sit-v63-primary {
    margin-left: auto;
  }
}

@media (max-width: 390px) {
  .sit-route-book-a-collection .sit-compact-collection .sit-v631-wizard > header li {
    flex-direction: column;
    gap: .25rem;
    font-size: .64rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sit-route-book-a-collection .sit-compact-collection * {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* Collection guidance: native, keyboard-accessible questions and a clear call route. */
.sit-route-book-a-collection .sit-collection-help {
  margin-top: 1.25rem;
  max-width: 40rem;
  font-size: .95rem;
}
.sit-route-book-a-collection .sit-collection-help a {
  color: var(--sit-lime, #c7f53f);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: .2em;
  display: inline-block;
}
.sit-collection-faq {
  padding: clamp(2.5rem, 6vw, 5rem) 0;
  background: var(--sit-paper, #f5f7f1);
}
.sit-collection-faq > .sit-shell {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: start;
}
.sit-collection-faq h2 {
  margin: 0;
  max-width: 18ch;
  font-size: clamp(1.75rem, 3vw, 2.75rem);
  line-height: 1.15;
}
.sit-collection-faq details {
  border-top: 1px solid var(--sit-line, #d8e1db);
  padding: 1.15rem 0;
}
.sit-collection-faq details:last-child {
  border-bottom: 1px solid var(--sit-line, #d8e1db);
}
.sit-collection-faq summary {
  cursor: pointer;
  font-weight: 700;
  color: var(--sit-ink, #10231f);
  min-height: 1.5rem;
}
.sit-collection-faq details p {
  margin: .8rem 0 0;
  color: var(--sit-ink, #10231f);
}
.sit-collection-faq a {
  color: var(--sit-green, #075b4b);
  text-decoration: underline;
  text-underline-offset: .2em;
  font-weight: 600;
}
@media (max-width: 760px) {
  .sit-collection-faq > .sit-shell { grid-template-columns: minmax(0, 1fr); }
  .sit-collection-faq h2 { max-width: 25ch; }
}

