/* Lakeside Instant Quote V5.2.2 reliability layer.
   Exact visual derivative of the approved V5.2.1 customer-flow polish. */

body.instant-quote-page.iq-wizard-v38
  .iq-step-card-v37.is-active
  > .iq-step-trigger-v37 {
  color: #ffffff !important;
  background: var(--iq-v5-green, #214f34) !important;
}

body.instant-quote-page.iq-wizard-v38
  .iq-step-card-v37.is-active
  > .iq-step-trigger-v37
  .iq-step-title-v37 {
  color: #ffffff !important;
}

body.instant-quote-page.iq-wizard-v38
  .iq-step-card-v37.is-active
  > .iq-step-trigger-v37
  .iq-step-subtitle-v37 {
  color: rgba(255, 255, 255, 0.86) !important;
}

body.instant-quote-page.iq-wizard-v38
  .iq-step-card-v37.is-active
  > .iq-step-trigger-v37
  .iq-step-state-v37 {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.48) !important;
}

body.instant-quote-page.iq-wizard-v38
  .iq-step-card-v37.is-active
  > .iq-step-trigger-v37:focus-visible {
  outline: 3px solid var(--iq-v5-blue, #46b6d9) !important;
  outline-offset: 3px !important;
}

@media (max-width: 760px) {
body.instant-quote-page.iq-wizard-v38.iq-v521-compact-hero .iq-hero {
  padding-top: 24px !important;
  padding-bottom: 68px !important;
}

body.instant-quote-page.iq-wizard-v38.iq-v521-compact-hero .iq-hero h1 {
  max-width: 760px !important;
  margin-bottom: 7px !important;
  font-size: clamp(1.65rem, 3vw, 2.35rem) !important;
  line-height: 1.02 !important;
}

body.instant-quote-page.iq-wizard-v38.iq-v521-compact-hero .iq-hero h1::before {
  width: 25px !important;
  margin-bottom: 10px !important;
}

body.instant-quote-page.iq-wizard-v38.iq-v521-compact-hero .iq-hero p {
  max-width: 760px !important;
  font-size: 0.9rem !important;
  line-height: 1.42 !important;
}
}

body.instant-quote-page.iq-wizard-v38 #iq-ai-v03-review,
body.instant-quote-page.iq-wizard-v38
  #iq-ai-v02-result
  .iq-ai-v02-result-line {
  display: none !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-hidden,
body.instant-quote-page.iq-wizard-v38.iq-v521-bundle #qSeasonRange {
  display: none !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-season-dates {
  display: grid !important;
  gap: 3px !important;
  color: var(--iq-v5-muted, #68716b) !important;
  line-height: 1.4 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-season-dates[hidden] {
  display: none !important;
}

body.instant-quote-page.iq-wizard-v38 #iq-ai-measure-assist-v0 {
  margin: 12px 0 !important;
  padding: 13px !important;
}

body.instant-quote-page.iq-wizard-v38 #iq-ai-v02-result {
  margin-top: 5px !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-measure-review {
  margin: 14px 0 12px !important;
  padding: 15px !important;
  color: var(--iq-v5-charcoal, #242a2d) !important;
  background: var(--iq-v5-warm-white, #f8f8f4) !important;
  border: 1px solid rgba(33, 79, 52, 0.28) !important;
  border-top: 4px solid var(--iq-v5-orange, #d96c10) !important;
  border-radius: 5px !important;
  box-shadow: 0 12px 28px rgba(16, 38, 24, 0.09) !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-review-kicker {
  margin-bottom: 5px !important;
  color: var(--iq-v5-orange-action, #b85000) !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-measure-review h3 {
  margin: 0 0 6px !important;
  color: var(--iq-v5-green-ink, #0d2a19) !important;
  font-size: 1.18rem !important;
  font-weight: 900 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-measure-review > p {
  margin: 0 0 12px !important;
  color: var(--iq-v5-muted, #68716b) !important;
  line-height: 1.45 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-measure-review fieldset {
  display: grid !important;
  gap: 8px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-measure-review legend {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-measure-review label {
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  min-height: 52px !important;
  padding: 11px 13px !important;
  color: var(--iq-v5-charcoal, #242a2d) !important;
  background: #ffffff !important;
  border: 1px solid var(--iq-v5-line, #d9ded9) !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

body.instant-quote-page.iq-wizard-v38
  .iq-v521-measure-review
  label:has(input:checked) {
  color: var(--iq-v5-green-ink, #0d2a19) !important;
  background: rgba(33, 79, 52, 0.07) !important;
  border-color: var(--iq-v5-green, #214f34) !important;
  box-shadow: inset 4px 0 0 var(--iq-v5-green, #214f34) !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-measure-review input {
  flex: 0 0 auto !important;
  width: 21px !important;
  height: 21px !important;
  margin: 0 !important;
  accent-color: var(--iq-v5-green, #214f34) !important;
}

body.instant-quote-page.iq-wizard-v38
  .iq-v521-measure-review
  label:has(input:disabled) {
  cursor: not-allowed !important;
  opacity: 0.58 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-review-message {
  min-height: 24px !important;
  margin-top: 10px !important;
  color: var(--iq-v5-muted, #68716b) !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-review-message.is-error {
  padding: 9px 10px !important;
  color: #6f2900 !important;
  background: #fff1e7 !important;
  border: 1px solid #b85000 !important;
  border-radius: 4px !important;
}

body.instant-quote-page.iq-wizard-v38 #btnCalc.iq-v521-review-locked,
body.instant-quote-page.iq-wizard-v38 #btnCalc.iq-v521-review-locked:hover,
body.instant-quote-page.iq-wizard-v38 #btnAccept.iq-v521-review-locked,
body.instant-quote-page.iq-wizard-v38 #btnAccept.iq-v521-review-locked:hover {
  color: #ffffff !important;
  background: #737a76 !important;
  border-color: #737a76 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
  opacity: 0.82 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-review-recap {
  display: grid !important;
  gap: 9px !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-recap-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 13px 14px !important;
  color: var(--iq-v5-charcoal, #242a2d) !important;
  background: var(--iq-v5-warm-white, #f8f8f4) !important;
  border: 1px solid var(--iq-v5-line, #d9ded9) !important;
  border-radius: 4px !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-recap-label {
  margin-bottom: 3px !important;
  color: var(--iq-v5-green, #214f34) !important;
  font-size: 0.73rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-recap-value {
  overflow-wrap: anywhere !important;
  color: var(--iq-v5-green-ink, #0d2a19) !important;
  font-weight: 800 !important;
  line-height: 1.42 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-edit {
  min-height: 44px !important;
  padding: 8px 11px !important;
  color: var(--iq-v5-green, #214f34) !important;
  background: transparent !important;
  border: 1px solid rgba(33, 79, 52, 0.48) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-edit:hover,
body.instant-quote-page.iq-wizard-v38 .iq-v521-edit:focus-visible {
  color: #ffffff !important;
  background: var(--iq-v5-green, #214f34) !important;
  border-color: var(--iq-v5-green, #214f34) !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v521-area-edit {
  margin-top: 10px !important;
}

body.instant-quote-page.iq-wizard-v38 #qAreaUnit[hidden] {
  display: none !important;
}

@media (max-width: 560px) {
  body.instant-quote-page.iq-wizard-v38.iq-v521-compact-hero .iq-hero {
    padding-top: 19px !important;
    padding-bottom: 62px !important;
  }

  body.instant-quote-page.iq-wizard-v38.iq-v521-compact-hero .iq-hero h1 {
    margin-bottom: 6px !important;
    font-size: 1.72rem !important;
  }

  body.instant-quote-page.iq-wizard-v38.iq-v521-compact-hero .iq-hero p {
    font-size: 0.82rem !important;
  }

  body.instant-quote-page.iq-wizard-v38 #map.map {
    min-height: 360px !important;
  }

  body.instant-quote-page.iq-wizard-v38 .iq-v521-recap-row {
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
  }

  body.instant-quote-page.iq-wizard-v38 .iq-v521-edit {
    width: 100% !important;
  }
}

html:has(body.instant-quote-page),
body.instant-quote-page {
  overscroll-behavior-y: contain;
}

body.instant-quote-page button,
body.instant-quote-page [role="button"] {
  touch-action: manipulation;
}

body.instant-quote-page.iq-wizard-v38 .iq-v522-step-error {
  margin: 0 0 14px !important;
  padding: 13px 14px !important;
  color: #5c2400 !important;
  background: #fff4e8 !important;
  border: 2px solid var(--iq-v5-orange, #e36c0a) !important;
  border-radius: 5px !important;
  box-shadow: 0 7px 18px rgba(92, 36, 0, 0.09) !important;
  font-weight: 850 !important;
  line-height: 1.42 !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v522-step-error[hidden] {
  display: none !important;
}

body.instant-quote-page.iq-wizard-v38 .iq-v522-draft-restored {
  margin: 0 0 14px !important;
  padding: 13px 14px !important;
  color: var(--iq-v5-green-ink, #0d2a19) !important;
  background: #eef9f0 !important;
  border: 1px solid rgba(33, 79, 52, 0.38) !important;
  border-left: 5px solid var(--iq-v5-green, #214f34) !important;
  border-radius: 5px !important;
  font-weight: 750 !important;
  line-height: 1.42 !important;
}

body.instant-quote-page .iq-v522-busy {
  position: relative !important;
  pointer-events: none !important;
  color: transparent !important;
  cursor: wait !important;
}

body.instant-quote-page .iq-v522-busy::after {
  position: absolute !important;
  inset: 0 !important;
  display: grid !important;
  place-items: center !important;
  padding: inherit !important;
  content: attr(data-iq-v522-busy-label) !important;
  color: #ffffff !important;
  font: inherit !important;
  font-weight: 900 !important;
}

body.instant-quote-page .iq-stepper-nav-v38 .iq-v522-busy::after,
body.instant-quote-page .iq-step-trigger-v37.iq-v522-busy::after {
  color: var(--iq-v5-green-ink, #0d2a19) !important;
}

body.instant-quote-page .iq-v522-customer-email-status {
  margin: 14px 0 18px !important;
  padding: 13px 14px !important;
  color: var(--iq-v5-green-ink, #0d2a19) !important;
  background: #eef9f0 !important;
  border: 1px solid rgba(33, 79, 52, 0.34) !important;
  border-left: 5px solid var(--iq-v5-green, #214f34) !important;
  border-radius: 5px !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
}

body.instant-quote-page .iq-v522-customer-email-status.is-unconfirmed {
  color: #5c2400 !important;
  background: #fff4e8 !important;
  border-color: rgba(227, 108, 10, 0.58) !important;
  border-left-color: var(--iq-v5-orange, #e36c0a) !important;
}
