.fqm-back{position:fixed;inset:0;z-index:200;display:none;background:rgba(15,26,36,.6);
    backdrop-filter:blur(3px);align-items:center;justify-content:center;padding:20px}
  .fqm-back.on{display:flex}
  .fqm{background:#fff;width:100%;max-width:600px;max-height:92vh;border-radius:var(--radius-lg);
    display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35)}
  .fqm-head{padding:22px 26px 16px;border-bottom:1px solid var(--color-divider);position:relative;flex:0 0 auto}
  .fqm-head h2{font-family:var(--font-heading);font-size:22px;line-height:1.3;margin:0 34px 4px 0}
  .fqm-head p{font-size:14px;line-height:1.55;color:var(--color-neutral-600);margin:0}
  .fqm-x{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;border:0;
    background:var(--color-neutral-100);font-size:20px;line-height:1;cursor:pointer;color:var(--color-neutral-700)}
  .fqm-x:hover{background:var(--color-neutral-200)}
  .fqm-body{padding:6px 26px 8px;overflow-y:auto;flex:1 1 auto}
  .fqm-foot{padding:16px 26px 20px;border-top:1px solid var(--color-divider);flex:0 0 auto;background:#fff}
  .fq-wrap{max-width:720px;margin:0 auto;padding:48px 24px 96px}
  .fq-bar{height:6px;background:var(--color-neutral-200);border-radius:99px;overflow:hidden;margin-bottom:10px}
  .fq-bar i{display:block;height:100%;background:var(--color-accent-700);width:33%;transition:width .3s ease}
  .fq-step-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-700);font-weight:600}
  .fq-step{display:none}
  .fq-step.on{display:block}
  .fq-q{margin:34px 0 0}
  .fq-q > legend, .fq-q > .fq-t{font-family:var(--font-heading);font-size:19px;line-height:1.4;margin-bottom:14px;display:block;padding:0}
  .fq-opts{display:grid;gap:10px}
  .fq-opt{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--color-divider);
    border-radius:12px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s}
  .fq-opt:hover{border-color:var(--color-accent-500)}
  .fq-opt input{margin:3px 0 0;accent-color:var(--color-accent-700);flex:0 0 auto}
  .fq-opt span{font-size:15px;line-height:1.5}
  .fq-opt.sel{border-color:var(--color-accent-700);background:var(--color-accent-100)}
  .fq-field{margin-top:18px}
  .fq-field label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}
  .fq-field input{width:100%;padding:13px 14px;border:1px solid var(--color-divider);border-radius:10px;
    font-size:16px;font-family:inherit;background:#fff}
  .fq-field input:focus{outline:2px solid var(--color-accent-500);outline-offset:1px}
  .fq-consent{display:flex;gap:11px;align-items:flex-start;margin-top:22px;font-size:13.5px;line-height:1.6;
    color:var(--color-neutral-700);background:var(--color-surface);padding:16px;border-radius:12px}
  .fq-consent input{margin-top:3px;accent-color:var(--color-accent-700)}
  .fq-nav{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}
  .fq-erro{color:#b03030;font-size:14px;margin-top:14px;display:none}
  .fq-erro.on{display:block}
  .fq-nota{font-size:12.5px;color:var(--color-neutral-600);margin-top:26px;line-height:1.6}
  @media(max-width:600px){
    .fq-wrap{padding:32px 18px 90px}
    .fq-q > legend,.fq-q > .fq-t{font-size:17px}
    .fqm-back{padding:0;align-items:flex-end}
    .fqm{max-width:100%;max-height:96vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0}
    .fqm-head h2{font-size:19px}
    .fqm-body{padding:4px 18px 6px}
    .fqm-head{padding:18px 20px 14px}
    .fqm-foot{padding:14px 18px 18px}
    .fq-nav .btn{flex:1;text-align:center}
  }