/*
 * WeReno project-brief wizard modal.
 * Every selector is wrq-prefixed; all modal internals are scoped under #wrq-root
 * so they win specificity ties against Elementor without !important.
 * Loaded right after builtos.css (before the theme sheets).
 *
 * Theme values are verbatim from the .elementor-kit-8 block in uicore-global
 * and from computed styles measured off the live page.
 */

/* Must be first: a display:flex overlay rule would otherwise beat the UA [hidden] style. */
#wrq-root[hidden]{display:none !important}

#wrq-root{
  --wrq-green:#7CD656;
  --wrq-green-hi:#B3D70D;
  --wrq-ink:#141414;
  --wrq-body:rgba(20,20,20,.7);
  --wrq-body-soft:rgba(20,20,20,.6);
  --wrq-focus:#7296F4;
  --wrq-surface:#ffffff;
  --wrq-surface-2:#f5f7f4;
  --wrq-line:rgba(20,20,20,.14);
  --wrq-line-soft:rgba(20,20,20,.08);
  --wrq-tint:rgba(124,214,86,.14);
  --wrq-err:#b0322a;
  --wrq-radius:8px;
  --wrq-sans:"Outfit",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;

  position:fixed;
  inset:0;
  height:100dvh;
  z-index:2147483500;                 /* above uicore nav (99999999), below wr-toast (2147483600) */
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(18,20,17,.55);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  font-family:var(--wrq-sans);
  color:var(--wrq-ink);
  animation:wrqFade .22s ease both;
}

/* html lock class we own — never touches other libraries' inline styles.
   overflow:hidden only (no position:fixed) so closing never resets/jumps scroll. */
html.wrq-scroll-lock,html.wrq-scroll-lock body{overflow:hidden !important}

/* visually-hidden live region for step announcements */
:is(#wrq-root,#wrq-inline) .wrq-sr-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

:is(#wrq-root,#wrq-inline) *{box-sizing:border-box}

/* ---- shell ---- */
:is(#wrq-root,#wrq-inline) .wrq-modal{
  position:relative;
  width:100%;
  max-width:760px;
  max-height:92dvh;   /* grow to fit content; the body only scrolls when content truly exceeds the viewport */
  background:var(--wrq-surface);
  border-radius:20px;
  box-shadow:0 24px 70px rgba(0,0,0,.34);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  animation:wrqPop .34s cubic-bezier(.34,1.56,.64,1) both;
}

/* ---- header: progress + close ---- */
:is(#wrq-root,#wrq-inline) .wrq-head{
  flex:none;
  padding:22px 26px 0;
}
:is(#wrq-root,#wrq-inline) .wrq-head-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
}
:is(#wrq-root,#wrq-inline) .wrq-brand{
  display:inline-flex;align-items:center;gap:9px;
  font-size:13px;font-weight:500;letter-spacing:.01em;color:var(--wrq-body);
}
:is(#wrq-root,#wrq-inline) .wrq-brand b{color:var(--wrq-ink);font-weight:600}
:is(#wrq-root,#wrq-inline) .wrq-dot{width:8px;height:8px;border-radius:50%;background:var(--wrq-green);flex:none}
:is(#wrq-root,#wrq-inline) .wrq-step-count{font-variant-numeric:tabular-nums}
:is(#wrq-root,#wrq-inline) .wrq-close{
  flex:none;width:34px;height:34px;border-radius:50%;border:none;cursor:pointer;
  background:var(--wrq-surface-2);color:var(--wrq-ink);
  display:flex;align-items:center;justify-content:center;
  transition:background .15s ease;
}
:is(#wrq-root,#wrq-inline) .wrq-close:hover{background:rgba(20,20,20,.1)}
:is(#wrq-root,#wrq-inline) .wrq-close svg{width:16px;height:16px}

:is(#wrq-root,#wrq-inline) .wrq-progress{
  height:6px;border-radius:100px;background:var(--wrq-surface-2);overflow:hidden;
}
:is(#wrq-root,#wrq-inline) .wrq-progress-fill{
  height:100%;border-radius:100px;background:var(--wrq-green);
  width:0;transition:width .38s cubic-bezier(.16,1,.3,1);
}

/* ---- body ---- */
:is(#wrq-root,#wrq-inline) .wrq-body{
  flex:1 1 auto;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  padding:22px 26px 8px;
}
:is(#wrq-root,#wrq-inline) .wrq-step-head{margin:0 0 20px}
:is(#wrq-root,#wrq-inline) .wrq-step-head h2{
  margin:0;font-size:25px;line-height:1.2;font-weight:500;letter-spacing:-.027em;color:var(--wrq-ink);
  text-wrap:balance;
}
:is(#wrq-root,#wrq-inline) .wrq-step-head p{margin:7px 0 0;font-size:15px;color:var(--wrq-body);max-width:52ch}

:is(#wrq-root,#wrq-inline) .wrq-group{margin-bottom:22px}
:is(#wrq-root,#wrq-inline) .wrq-group:last-child{margin-bottom:0}
:is(#wrq-root,#wrq-inline) .wrq-group-label{
  display:flex;align-items:center;gap:8px;
  margin:0 0 11px;font-size:15px;font-weight:500;letter-spacing:-.01em;color:var(--wrq-ink);
}
:is(#wrq-root,#wrq-inline) .wrq-group-label .wrq-ic{font-size:16px;line-height:1}

/* ---- selectable cards ---- */
:is(#wrq-root,#wrq-inline) .wrq-cards{display:grid;gap:10px}
:is(#wrq-root,#wrq-inline) .wrq-cards.cols-3{grid-template-columns:repeat(3,1fr)}
:is(#wrq-root,#wrq-inline) .wrq-cards.cols-2{grid-template-columns:repeat(2,1fr)}
:is(#wrq-root,#wrq-inline) .wrq-card{
  text-align:left;cursor:pointer;
  background:var(--wrq-surface);border:2px solid var(--wrq-line);border-radius:var(--wrq-radius);
  padding:14px 15px;font-family:inherit;color:var(--wrq-ink);
  transition:border-color .14s ease,background .14s ease,box-shadow .14s ease,transform .05s ease;
  display:flex;flex-direction:column;gap:3px;min-height:100%;
}
:is(#wrq-root,#wrq-inline) .wrq-card:hover{border-color:rgba(124,214,86,.6)}
:is(#wrq-root,#wrq-inline) .wrq-card:active{transform:translateY(1px)}
:is(#wrq-root,#wrq-inline) .wrq-card.is-sel{
  border-color:var(--wrq-green);background:var(--wrq-tint);
  box-shadow:0 0 0 1px var(--wrq-green) inset;
}
:is(#wrq-root,#wrq-inline) .wrq-card .wrq-card-t{font-size:15px;font-weight:500;letter-spacing:-.01em;line-height:1.25}
:is(#wrq-root,#wrq-inline) .wrq-card .wrq-card-d{font-size:12.5px;color:var(--wrq-body);line-height:1.4}

/* compact cards (no description) */
:is(#wrq-root,#wrq-inline) .wrq-cards.compact .wrq-card{padding:12px 14px;text-align:center;align-items:center}

/* ---- chips (multi-select) ---- */
:is(#wrq-root,#wrq-inline) .wrq-chips{display:flex;flex-wrap:wrap;gap:9px}
:is(#wrq-root,#wrq-inline) .wrq-chip{
  cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;color:var(--wrq-ink);
  background:var(--wrq-surface);border:1.5px solid var(--wrq-line);border-radius:100px;
  padding:9px 16px;transition:border-color .14s ease,background .14s ease;
  display:inline-flex;align-items:center;gap:7px;
}
:is(#wrq-root,#wrq-inline) .wrq-chip:hover{border-color:rgba(124,214,86,.6)}
:is(#wrq-root,#wrq-inline) .wrq-chip.is-sel{border-color:var(--wrq-green);background:var(--wrq-tint)}
:is(#wrq-root,#wrq-inline) .wrq-chip.is-sel::before{content:"✓";color:#3f7d22;font-weight:700;font-size:12px}

/* ---- text inputs ---- */
:is(#wrq-root,#wrq-inline) .wrq-field{margin-bottom:15px}
:is(#wrq-root,#wrq-inline) .wrq-field:last-child{margin-bottom:0}
:is(#wrq-root,#wrq-inline) .wrq-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
:is(#wrq-root,#wrq-inline) label.wrq-lab{
  display:block;font-size:13.5px;font-weight:500;color:var(--wrq-ink);margin:0 0 6px;letter-spacing:-.005em;
}
:is(#wrq-root,#wrq-inline) .wrq-input,:is(#wrq-root,#wrq-inline) .wrq-textarea,:is(#wrq-root,#wrq-inline) .wrq-select{
  width:100%;font-family:inherit;font-size:16px;color:var(--wrq-ink);
  background:var(--wrq-surface);border:1px solid rgba(166,166,166,.55);border-radius:var(--wrq-radius);
  height:50px;padding:0 15px;transition:border-color .14s ease,box-shadow .14s ease;
}
:is(#wrq-root,#wrq-inline) .wrq-textarea{height:auto;min-height:96px;padding:12px 15px;line-height:1.5;resize:vertical}
:is(#wrq-root,#wrq-inline) .wrq-select{
  appearance:none;-webkit-appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23141414' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;padding-right:38px;
}
:is(#wrq-root,#wrq-inline) .wrq-input::placeholder,:is(#wrq-root,#wrq-inline) .wrq-textarea::placeholder{color:var(--wrq-body-soft)}
:is(#wrq-root,#wrq-inline) .wrq-input:focus,:is(#wrq-root,#wrq-inline) .wrq-textarea:focus,:is(#wrq-root,#wrq-inline) .wrq-select:focus{
  outline:none;border-color:var(--wrq-focus);box-shadow:0 0 0 3px rgba(114,150,244,.18);
}
:is(#wrq-root,#wrq-inline) .wrq-input.is-err,:is(#wrq-root,#wrq-inline) .wrq-textarea.is-err{
  border-color:var(--wrq-err);box-shadow:0 0 0 3px rgba(176,50,42,.12);
}
:is(#wrq-root,#wrq-inline) .wrq-err-msg{display:none;margin:6px 0 0;font-size:13px;color:var(--wrq-err)}
:is(#wrq-root,#wrq-inline) .wrq-field.has-err .wrq-err-msg{display:block}

/* location autocomplete dropdown */
:is(#wrq-root,#wrq-inline) .wrq-ac-list{
  position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:6;
  background:var(--wrq-surface);border:1px solid var(--wrq-line);border-radius:var(--wrq-radius);
  box-shadow:0 14px 34px rgba(0,0,0,.16);overflow-y:auto;max-height:250px;
}
:is(#wrq-root,#wrq-inline) .wrq-ac-opt{
  padding:11px 15px;font-size:15px;color:var(--wrq-ink);cursor:pointer;line-height:1.2;
  border-bottom:1px solid var(--wrq-line-soft);
}
:is(#wrq-root,#wrq-inline) .wrq-ac-opt:last-child{border-bottom:none}
:is(#wrq-root,#wrq-inline) .wrq-ac-opt.is-active{background:var(--wrq-tint)}
:is(#wrq-root,#wrq-inline) .wrq-hint{margin:8px 0 0;font-size:13px;color:var(--wrq-body)}

/* honeypot */
:is(#wrq-root,#wrq-inline) .wrq-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---- checkboxes ---- */
:is(#wrq-root,#wrq-inline) .wrq-checks{display:grid;gap:10px}
:is(#wrq-root,#wrq-inline) .wrq-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:14px;color:var(--wrq-body);line-height:1.45}
:is(#wrq-root,#wrq-inline) .wrq-check input{
  appearance:none;-webkit-appearance:none;flex:none;width:20px;height:20px;margin:0;cursor:pointer;
  border:1.5px solid var(--wrq-line);border-radius:5px;background:var(--wrq-surface);transition:.14s;position:relative;top:1px;
}
:is(#wrq-root,#wrq-inline) .wrq-check input:checked{background:var(--wrq-green);border-color:var(--wrq-green)}
:is(#wrq-root,#wrq-inline) .wrq-check input:checked::after{
  content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;
  border:solid #141414;border-width:0 2px 2px 0;transform:rotate(45deg);
}
:is(#wrq-root,#wrq-inline) .wrq-check input:focus-visible{outline:2px solid var(--wrq-focus);outline-offset:2px}

/* ---- footer nav ---- */
:is(#wrq-root,#wrq-inline) .wrq-foot{
  flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:16px 26px calc(16px + env(safe-area-inset-bottom));
  border-top:1px solid var(--wrq-line-soft);background:var(--wrq-surface);
}
:is(#wrq-root,#wrq-inline) .wrq-disclaimer{font-size:12px;color:var(--wrq-body-soft);max-width:34ch;line-height:1.4}
:is(#wrq-root,#wrq-inline) .wrq-disclaimer a{color:var(--wrq-body);text-decoration:underline}
:is(#wrq-root,#wrq-inline) .wrq-nav-btns{display:flex;align-items:center;gap:10px;margin-left:auto}

:is(#wrq-root,#wrq-inline) .wrq-btn{
  font-family:inherit;font-size:16px;font-weight:500;cursor:pointer;
  border-radius:var(--wrq-radius);height:50px;padding:0 24px;border:1px solid transparent;
  transition:background .15s ease,border-color .15s ease,opacity .15s ease;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;
}
:is(#wrq-root,#wrq-inline) .wrq-btn-primary{background:var(--wrq-green);color:var(--wrq-ink)}
:is(#wrq-root,#wrq-inline) .wrq-btn-primary:hover{background:var(--wrq-green-hi)}
:is(#wrq-root,#wrq-inline) .wrq-btn-primary[disabled]{opacity:.45;cursor:not-allowed}
:is(#wrq-root,#wrq-inline) .wrq-btn-ghost{background:transparent;color:var(--wrq-body);border-color:var(--wrq-line);padding:0 18px}
:is(#wrq-root,#wrq-inline) .wrq-btn-ghost:hover{border-color:var(--wrq-ink);color:var(--wrq-ink)}
:is(#wrq-root,#wrq-inline) .wrq-btn-text{background:none;border:none;color:var(--wrq-body);text-decoration:underline;height:auto;padding:4px 2px;font-size:14px}
:is(#wrq-root,#wrq-inline) .wrq-btn-text:hover{color:var(--wrq-ink)}

/* ---- confirmation / submitted view ---- */
:is(#wrq-root,#wrq-inline) .wrq-confirm{padding:44px 30px 40px;text-align:center;overflow-y:auto}
:is(#wrq-root,#wrq-inline) .wrq-confirm .wrq-check-ring{
  width:76px;height:76px;border-radius:50%;margin:0 auto 22px;
  background:var(--wrq-tint);border:2px solid var(--wrq-green);
  display:flex;align-items:center;justify-content:center;
  animation:wrqPop .42s cubic-bezier(.34,1.56,.64,1) both;
}
:is(#wrq-root,#wrq-inline) .wrq-confirm .wrq-check-ring svg{width:34px;height:34px}
:is(#wrq-root,#wrq-inline) .wrq-confirm h2{margin:0 0 10px;font-size:27px;font-weight:500;letter-spacing:-.027em}
:is(#wrq-root,#wrq-inline) .wrq-confirm p{margin:0 auto 8px;font-size:15px;color:var(--wrq-body);max-width:46ch}
:is(#wrq-root,#wrq-inline) .wrq-ref{
  display:inline-flex;align-items:center;gap:8px;margin:16px 0 6px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;font-weight:600;color:var(--wrq-ink);
  background:var(--wrq-surface-2);border:1px solid var(--wrq-line);border-radius:100px;padding:8px 16px;
}
:is(#wrq-root,#wrq-inline) .wrq-confirm .wrq-summary{
  text-align:left;max-width:420px;margin:22px auto 0;background:var(--wrq-surface-2);
  border:1px solid var(--wrq-line-soft);border-radius:12px;padding:16px 18px;
}
:is(#wrq-root,#wrq-inline) .wrq-summary-row{display:flex;justify-content:space-between;gap:16px;font-size:13.5px;padding:5px 0}
:is(#wrq-root,#wrq-inline) .wrq-summary-row span{color:var(--wrq-body)}
:is(#wrq-root,#wrq-inline) .wrq-summary-row b{color:var(--wrq-ink);font-weight:500;text-align:right}
:is(#wrq-root,#wrq-inline) .wrq-confirm-actions{margin-top:26px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px}

/* ---- error banner (submit failure) ---- */
:is(#wrq-root,#wrq-inline) .wrq-alert{
  margin:0 0 16px;padding:12px 15px;border-radius:var(--wrq-radius);
  background:rgba(176,50,42,.08);border:1px solid rgba(176,50,42,.3);color:var(--wrq-err);
  font-size:13.5px;line-height:1.45;
}
:is(#wrq-root,#wrq-inline) .wrq-alert a{color:var(--wrq-err);font-weight:600}

/* ---- the trigger button that replaces the widget (lives in page, not #wrq-root) ---- */
.wrq-trigger-wrap{display:flex;justify-content:center}
a.wrq-open{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:"Outfit",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-size:16px;font-weight:500;line-height:1;text-decoration:none;cursor:pointer;
  background:#7CD656;color:#141414;border:1px solid rgba(194,194,194,.15);border-radius:8px;
  height:50px;padding:0 26px;transition:background .15s ease,transform .15s ease,box-shadow .15s ease;
}
a.wrq-open:hover{background:#B3D70D;transform:translateY(-1px);box-shadow:0 6px 18px rgba(124,214,86,.35)}
a.wrq-open:focus-visible{outline:2px solid #7296F4;outline-offset:2px}
a.wrq-open .wrq-open-ic{width:17px;height:17px;flex:none}

/* safety net: if a replaced widget kept an animation class, force it visible */
body .elementor-widget-bdt-mailchimp.wrq-host,body .wrq-host{visibility:visible !important;opacity:1 !important}

/* ---- responsive ---- */
@media (max-width:860px){
  #wrq-root{padding:0}
  :is(#wrq-root,#wrq-inline) .wrq-modal{max-width:none;width:100%;height:100dvh;max-height:100dvh;border-radius:0}
  :is(#wrq-root,#wrq-inline) .wrq-cards.cols-3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:620px){
  #wrq-root .wrq-head{padding:calc(16px + env(safe-area-inset-top)) 18px 0}
  #wrq-inline .wrq-head{padding:16px 18px 0}
  :is(#wrq-root,#wrq-inline) .wrq-body{padding:18px 18px 6px}
  :is(#wrq-root,#wrq-inline) .wrq-foot{padding:14px 18px calc(14px + env(safe-area-inset-bottom))}
  :is(#wrq-root,#wrq-inline) .wrq-step-head h2{font-size:22px}
  :is(#wrq-root,#wrq-inline) .wrq-row{grid-template-columns:1fr}
  :is(#wrq-root,#wrq-inline) .wrq-disclaimer{display:none}
}
@media (max-width:440px){
  :is(#wrq-root,#wrq-inline) .wrq-cards.cols-3,:is(#wrq-root,#wrq-inline) .wrq-cards.cols-2{grid-template-columns:1fr}
}

/* ---- inline mount (get-a-quote.html) ---- */
#wrq-inline{width:100%}
#wrq-inline .wrq-modal{
  max-width:none;width:100%;max-height:none;height:auto;border-radius:16px;
  border:1px solid var(--wrq-line);box-shadow:0 6px 24px rgba(0,0,0,.06);animation:none;
}
#wrq-inline .wrq-body{max-height:none;overflow:visible}
#wrq-inline{
  --wrq-green:#7CD656;--wrq-green-hi:#B3D70D;--wrq-ink:#141414;--wrq-body:rgba(20,20,20,.7);
  --wrq-body-soft:rgba(20,20,20,.6);--wrq-focus:#7296F4;--wrq-surface:#fff;--wrq-surface-2:#f5f7f4;
  --wrq-line:rgba(20,20,20,.14);--wrq-line-soft:rgba(20,20,20,.08);--wrq-tint:rgba(124,214,86,.14);
  --wrq-err:#b0322a;--wrq-radius:8px;--wrq-sans:"Outfit",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-family:var(--wrq-sans);color:var(--wrq-ink);
}
#wrq-inline .wrq-close{display:none}

@keyframes wrqFade{from{opacity:0}to{opacity:1}}
@keyframes wrqPop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  #wrq-root,:is(#wrq-root,#wrq-inline) .wrq-modal,:is(#wrq-root,#wrq-inline) .wrq-check-ring{animation:none}
  :is(#wrq-root,#wrq-inline) .wrq-progress-fill,:is(#wrq-root,#wrq-inline) .wrq-card,:is(#wrq-root,#wrq-inline) .wrq-chip,:is(#wrq-root,#wrq-inline) .wrq-input,:is(#wrq-root,#wrq-inline) .wrq-close{transition:none}
  :is(#wrq-root,#wrq-inline) .wrq-card:active{transform:none}
  a.wrq-open{transition:none}
  a.wrq-open:hover{transform:none}
}
