/* Lakeside SEO V3.7 Instant Quote Stepper Premium
   Turns the long map quote page into a single active-step experience. Static UI only. */
:root{
  --iq37-pine:#0d2b1f;
  --iq37-deep:#0b2017;
  --iq37-green:#24783f;
  --iq37-green2:#1d6736;
  --iq37-leaf:#edf7ef;
  --iq37-mint:#f6fbf7;
  --iq37-line:#d9e7df;
  --iq37-ink:#0d1712;
  --iq37-muted:#607168;
  --iq37-gold:#d7ac52;
  --iq37-shadow:0 16px 42px rgba(12,43,31,.10);
}

.instant-quote-page .iq-flow-guide{display:none!important;}
.instant-quote-page .wrap{max-width:820px!important;}
.instant-quote-page .wrap > .grid.iq-wizard-grid-v37{
  display:block!important;
  max-width:760px!important;
  margin:0 auto!important;
}
.instant-quote-page .iq-wizard-shell-v37{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.instant-quote-page .iq-card-header{
  border-radius:22px!important;
  border:1px solid rgba(13,43,31,.12)!important;
  box-shadow:0 12px 32px rgba(13,43,31,.08)!important;
  background:linear-gradient(180deg,#fff,#fbfdfb)!important;
}
.instant-quote-page .iq-card-header .title{
  font-size:1.22rem!important;
  letter-spacing:-.035em!important;
  color:var(--iq37-pine)!important;
}
.instant-quote-page .iq-card-header .tag{
  background:linear-gradient(180deg,#eef8f0,#fff)!important;
  border:1px solid rgba(36,120,63,.22)!important;
  color:var(--iq37-green2)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
}

.iq-wizard-progress-v37{
  position:relative;
  overflow:hidden;
  margin:14px 0 14px;
  border:1px solid rgba(13,43,31,.12);
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#f8fcf9);
  box-shadow:0 10px 28px rgba(13,43,31,.07);
  padding:15px 16px;
}
.iq-wizard-progress-v37 .iq-progress-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  font-weight:900;
  color:var(--iq37-pine);
  line-height:1.1;
}
.iq-wizard-progress-v37 .iq-progress-current{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.iq-wizard-progress-v37 .iq-progress-current:before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--iq37-green);
  box-shadow:0 0 0 5px rgba(36,120,63,.10);
}
.iq-wizard-progress-v37 .iq-progress-meta{
  color:var(--iq37-muted);
  font-size:.86rem;
  font-weight:800;
  white-space:nowrap;
}
.iq-wizard-progress-v37 .iq-progress-track{
  height:9px;
  background:#edf4ef;
  border-radius:999px;
  margin-top:12px;
  overflow:hidden;
  border:1px solid rgba(13,43,31,.05);
}
.iq-wizard-progress-v37 .iq-progress-bar{
  height:100%;
  width:20%;
  border-radius:999px;
  background:linear-gradient(90deg,#1f6a3a,#8cc63f);
  transition:width .28s ease;
}

.iq-wizard-v37{
  display:grid;
  gap:13px;
}
.iq-step-card-v37{
  background:#fff;
  border:1px solid rgba(13,43,31,.12);
  border-radius:22px;
  box-shadow:0 10px 30px rgba(13,43,31,.065);
  overflow:hidden;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.iq-step-card-v37.is-active{
  border-color:rgba(36,120,63,.44);
  box-shadow:0 18px 46px rgba(13,43,31,.12);
}
.iq-step-card-v37.is-complete{
  border-color:rgba(36,120,63,.28);
}
.iq-step-card-v37.is-complete .iq-step-bubble-v37{
  background:linear-gradient(180deg,#2e8b4c,#1f6a3a);
}
.iq-step-trigger-v37{
  width:100%!important;
  min-height:72px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:linear-gradient(180deg,#fff,#fbfdfb)!important;
  color:var(--iq37-ink)!important;
  display:grid!important;
  grid-template-columns:38px 1fr auto!important;
  gap:12px!important;
  text-align:left!important;
  align-items:center!important;
  padding:15px 16px!important;
  cursor:pointer!important;
}
.iq-step-trigger-v37:hover{transform:none!important;text-decoration:none!important;}
.iq-step-bubble-v37{
  width:34px;
  height:34px;
  border-radius:999px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(180deg,#7d8b84,#52665b);
  font-weight:950;
  box-shadow:0 8px 18px rgba(13,43,31,.13);
}
.iq-step-title-v37{
  display:block;
  font-weight:950;
  font-size:1.03rem;
  line-height:1.08;
  letter-spacing:-.025em;
  color:var(--iq37-ink);
}
.iq-step-subtitle-v37{
  display:block;
  margin-top:3px;
  color:var(--iq37-muted);
  font-weight:680;
  font-size:.86rem;
  line-height:1.2;
}
.iq-step-state-v37{
  border-radius:999px;
  border:1px solid rgba(13,43,31,.12);
  padding:6px 9px;
  font-size:.72rem;
  line-height:1;
  font-weight:950;
  color:var(--iq37-muted);
  background:#fff;
  white-space:nowrap;
}
.iq-step-card-v37.is-active .iq-step-state-v37{
  color:#fff;
  border-color:transparent;
  background:var(--iq37-green);
}
.iq-step-card-v37.is-complete .iq-step-state-v37{
  color:var(--iq37-green2);
  background:var(--iq37-leaf);
  border-color:rgba(36,120,63,.20);
}
.iq-step-body-v37{
  max-height:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  padding:0 16px;
  border-top:1px solid transparent;
  transition:max-height .33s ease, opacity .2s ease, padding .24s ease, border-color .24s ease;
}
.iq-step-card-v37.is-active .iq-step-body-v37{
  max-height:5200px;
  opacity:1;
  pointer-events:auto;
  padding:16px 16px 18px;
  border-top-color:rgba(13,43,31,.08);
}
.iq-step-body-v37 .iq-step-heading{display:none!important;}
.iq-step-body-v37 .hr{display:none!important;}

.instant-quote-page .iq-wizard-v37 .row{margin-bottom:0!important;}
.instant-quote-page .iq-wizard-v37 .options label.small{
  min-height:48px!important;
  border-radius:16px!important;
  border-color:rgba(13,43,31,.13)!important;
}
.instant-quote-page .iq-wizard-v37 input,
.instant-quote-page .iq-wizard-v37 select{
  min-height:48px!important;
  border-radius:16px!important;
  border-color:rgba(13,43,31,.14)!important;
  background:#fff!important;
}
.instant-quote-page .iq-wizard-v37 label{color:var(--iq37-ink)!important;}
.instant-quote-page .iq-wizard-v37 .notice{
  border-radius:16px!important;
}
.instant-quote-page #drawHelp{
  background:linear-gradient(180deg,#f6fbf7,#eef8f1)!important;
  border-color:rgba(36,120,63,.18)!important;
  color:#143c29!important;
}

.iq-draw-actions-v37{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin:12px 0!important;
}
.iq-draw-actions-v37 #btnDrawDriveway,
.iq-draw-actions-v37 #btnDrawLawn{
  width:100%!important;
  min-height:48px!important;
}
.iq-draw-secondary-v37{
  display:grid!important;
  gap:10px!important;
  margin:10px 0!important;
}
.iq-calc-row-v37{
  display:grid;
  margin:12px 0 0;
}
.instant-quote-page #btnCalc.iq-calc-primary-v37{
  width:100%!important;
  min-height:52px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#2f8b4e,#1f6a3a)!important;
  color:#fff!important;
  font-size:1rem!important;
  font-weight:950!important;
  box-shadow:0 12px 24px rgba(31,106,58,.20)!important;
}
.instant-quote-page #btnCalc.iq-calc-primary-v37:after{
  content:"  →";
}
.instant-quote-page #btnClear{
  background:#fff!important;
}
.instant-quote-page #map.map{
  border-radius:20px!important;
  overflow:hidden!important;
  box-shadow:0 12px 28px rgba(13,43,31,.10)!important;
  border:1px solid rgba(13,43,31,.14)!important;
  margin-top:12px!important;
}
.instant-quote-page .map-help,
.instant-quote-page .iq-wizard-v37 .map-help{
  background:linear-gradient(180deg,#f7fdff,#edf9fb)!important;
  border-color:#cae6ed!important;
  color:#12333a!important;
}

.iq-step-actions-v37{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.iq-step-next-v37,
.instant-quote-page .iq-step-next-v37{
  width:100%!important;
  min-height:48px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#2f8b4e,#1f6a3a)!important;
  color:#fff!important;
  font-weight:950!important;
  box-shadow:0 10px 22px rgba(31,106,58,.18)!important;
}
.iq-step-next-v37[disabled]{
  opacity:.55!important;
  cursor:not-allowed!important;
}
.iq-step-note-v37{
  display:block;
  color:var(--iq37-muted);
  font-size:.84rem;
  line-height:1.28;
  margin-top:8px;
}

.instant-quote-page #quoteBox .kpi{
  border-radius:16px!important;
  background:linear-gradient(180deg,#fff,#fbfdfb)!important;
}
.instant-quote-page #quoteBox .label{color:var(--iq37-green2)!important;}
.instant-quote-page #quoteBox .value{color:var(--iq37-pine)!important;}
.instant-quote-page #btnAccept{
  background:linear-gradient(180deg,#2f8b4e,#1f6a3a)!important;
  color:#fff!important;
  border:0!important;
  border-radius:999px!important;
  min-height:52px!important;
  box-shadow:0 12px 24px rgba(31,106,58,.20)!important;
}
.instant-quote-page #btnDecline{display:none!important;}

.iq-premium-fallback-v37{
  margin-top:12px;
  border:1px solid rgba(215,172,82,.28);
  background:#fffaf0;
  color:#3a2e13;
  border-radius:16px;
  padding:12px 13px;
  font-size:.9rem;
  line-height:1.35;
}
.iq-premium-fallback-v37 a{font-weight:900;color:#1f6a3a!important;}

@media(max-width:760px){
  .instant-quote-page .wrap{padding-left:14px!important;padding-right:14px!important;}
  .iq-wizard-progress-v37{border-radius:18px;padding:14px;}
  .iq-step-trigger-v37{grid-template-columns:34px 1fr!important;padding:14px!important;}
  .iq-step-state-v37{grid-column:2;justify-self:start;margin-top:2px;}
  .iq-step-card-v37.is-active .iq-step-body-v37{padding:14px!important;}
  .iq-step-title-v37{font-size:1rem;}
  .iq-step-subtitle-v37{font-size:.82rem;}
}

@media(max-width:430px){
  .iq-wizard-progress-v37 .iq-progress-row{align-items:flex-start;}
  .iq-wizard-progress-v37 .iq-progress-meta{font-size:.78rem;}
  .instant-quote-page #map.map{min-height:280px!important;}
}
