/* EnergiaWorks quote modal — brand styling (teal/amber, corner-bracket motif). */
.ewqm-overlay{
  position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(8,43,40,.55);backdrop-filter:blur(4px);
  opacity:0;transition:opacity .2s ease;
}
.ewqm-overlay.ewqm-open{opacity:1}
.ewqm-overlay[hidden]{display:none}
.ewqm-card{
  position:relative;width:100%;max-width:480px;max-height:92vh;overflow:auto;
  background:#FFFFFF;border-radius:20px;padding:34px 32px;
  box-shadow:0 30px 70px -28px rgba(8,43,40,.6);
  font-family:"Plus Jakarta Sans",system-ui,sans-serif;color:#16211F;
  transform:translateY(14px);transition:transform .22s ease;
}
.ewqm-open .ewqm-card{transform:none}
.ewqm-bracket{position:absolute;width:26px;height:26px;pointer-events:none}
.ewqm-bracket.tl{top:14px;left:14px;border-left:3px solid #E9A23B;border-top:3px solid #E9A23B}
.ewqm-bracket.br{bottom:14px;right:14px;border-right:3px solid #E9A23B;border-bottom:3px solid #E9A23B}
.ewqm-close{
  position:absolute;top:12px;right:14px;width:36px;height:36px;border:none;border-radius:10px;
  background:transparent;color:#5B6B68;font-size:24px;line-height:1;cursor:pointer;transition:.2s;
}
.ewqm-close:hover{background:rgba(12,59,54,.07);color:#0C3B36}
.ewqm-eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:#14605A;
}
.ewqm-eyebrow::before{content:"";width:16px;height:16px;border-left:2px solid #E9A23B;border-top:2px solid #E9A23B}
.ewqm-card h2{font-family:"Space Grotesk",sans-serif;font-size:1.55rem;line-height:1.12;letter-spacing:-.02em;margin:12px 0 6px;color:#0C3B36}
.ewqm-sub{color:#5B6B68;font-size:.95rem;margin:0 0 20px}
.ewqm-form{display:flex;flex-direction:column;gap:14px}
.ewqm-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ewqm-field{display:flex;flex-direction:column;gap:5px}
.ewqm-field label{font-size:.84rem;font-weight:600;color:#16211F}
.ewqm-field label span{color:#E9A23B}
.ewqm-field input,.ewqm-field select,.ewqm-field textarea{
  font-family:inherit;font-size:.95rem;color:#16211F;background:#FBFAF7;
  border:1.5px solid rgba(12,59,54,.16);border-radius:12px;padding:11px 13px;width:100%;transition:border-color .2s, box-shadow .2s;
}
.ewqm-field textarea{resize:vertical;min-height:74px}
.ewqm-field input:focus,.ewqm-field select:focus,.ewqm-field textarea:focus{
  outline:none;border-color:#14605A;box-shadow:0 0 0 3px rgba(233,162,59,.25);
}
.ewqm-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ewqm-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:1rem;
  background:#E9A23B;color:#6B4310;border:none;border-radius:999px;padding:14px 24px;cursor:pointer;
  box-shadow:0 10px 24px -10px rgba(233,162,59,.7);transition:transform .18s ease, box-shadow .2s ease;
}
.ewqm-btn:hover{transform:translateY(-2px);box-shadow:0 16px 30px -12px rgba(233,162,59,.85)}
.ewqm-btn[disabled]{opacity:.7;cursor:progress;transform:none}
.ewqm-btn-ghost{background:transparent;color:#0C3B36;border:1.5px solid rgba(12,59,54,.22);box-shadow:none}
.ewqm-btn-ghost:hover{border-color:#14605A;transform:translateY(-2px)}
.ewqm-error{color:#9b2c1f;font-size:.86rem;margin:2px 0 0}
.ewqm-success{text-align:center;padding:18px 6px}
.ewqm-success[hidden]{display:none}
.ewqm-tick{
  width:64px;height:64px;border-radius:50%;background:rgba(233,162,59,.16);
  display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px;
}
.ewqm-tick svg{width:32px;height:32px;fill:none;stroke:#0C3B36;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ewqm-success h2{margin:0 0 8px}
.ewqm-success p{color:#5B6B68;margin:0 0 20px}
:root .ewqm-card :focus-visible{outline:3px solid #E9A23B;outline-offset:2px;border-radius:6px}
@media (max-width:520px){
  .ewqm-row{grid-template-columns:1fr}
  .ewqm-card{padding:30px 22px}
}
@media (prefers-reduced-motion:reduce){
  .ewqm-overlay,.ewqm-card,.ewqm-btn{transition:none}
  .ewqm-card{transform:none}
}

/* Floating WhatsApp button (site-wide) */
.ew-wa-float{
  position:fixed;right:22px;bottom:22px;z-index:900;
  width:56px;height:56px;border-radius:50%;
  background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 12px 28px -8px rgba(37,211,102,.6);transition:transform .18s ease, box-shadow .2s ease;
}
.ew-wa-float svg{width:32px;height:32px;fill:currentColor}
.ew-wa-float:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 18px 34px -10px rgba(37,211,102,.75)}
.ew-wa-float:focus-visible{outline:3px solid #0C3B36;outline-offset:3px}
@media (max-width:520px){ .ew-wa-float{right:16px;bottom:16px;width:52px;height:52px} }
@media (prefers-reduced-motion:reduce){ .ew-wa-float{transition:none} }
