/* ═══ Orçamento guiado — versão concreto e aço ═══════════ */

.qz{background:var(--graf);color:#fff}
.qz .reg{border-bottom-color:rgba(255,255,255,.18)}
.qz .reg h2{color:#fff}
.qz .reg .mn{color:rgba(255,255,255,.38)}
.qz__box{display:grid;grid-template-columns:1.32fr .92fr;gap:1px;background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.14)}
.qz__esq{background:var(--graf);padding:clamp(22px,2.8vw,40px)}
.qz__prog{display:flex;align-items:center;gap:18px;margin-bottom:30px}
.qz__conta{color:rgba(255,255,255,.44);white-space:nowrap}
.qz__trilho{flex:1;height:1px;background:rgba(255,255,255,.18)}
.qz__trilho span{display:block;height:1px;width:0;background:#fff;transition:width .6s cubic-bezier(.16,1,.3,1)}
.qz__passo{transition:opacity .2s ease,transform .2s ease}
.qz__passo.qz-sai{opacity:0;transform:translateX(-12px)}
.qz-entra{animation:qzent .5s cubic-bezier(.16,1,.3,1) both}
@keyframes qzent{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
.qz-shake{animation:qzsk .38s}
@keyframes qzsk{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}

.qz-cab{margin-bottom:26px}
.qz-t{font-family:Instrument,serif;font-size:clamp(21px,2.5vw,32px);line-height:1.15;letter-spacing:-.02em}
.qz-s{color:rgba(255,255,255,.55);margin-top:9px;font-size:.94em}
.qz-ops{display:grid;gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12)}
.qz-ops--multi{grid-template-columns:1fr 1fr}
@media (max-width:760px){.qz-ops--multi{grid-template-columns:1fr}}

.qz-op{position:relative;display:block;width:100%;text-align:left;cursor:pointer;
  padding:18px 20px 18px 50px;background:var(--graf);border:none;
  transition:background .3s ease,padding-left .4s cubic-bezier(.16,1,.3,1);
  animation:qzpop .45s both cubic-bezier(.16,1,.3,1);animation-delay:calc(var(--i)*45ms)}
@keyframes qzpop{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.qz-op:hover{background:#191d22;padding-left:56px}
.qz-op__mk{position:absolute;left:20px;top:21px;width:13px;height:13px;
  border:1px solid rgba(255,255,255,.4);transition:.3s}
.qz-op__mk::after{content:"";position:absolute;inset:2px;background:#fff;
  transform:scale(0);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
.qz-op.is-on{background:#1d232a}
.qz-op.is-on .qz-op__mk{border-color:#fff}
.qz-op.is-on .qz-op__mk::after{transform:scale(1)}
.qz-op__r{display:block;font-weight:500;letter-spacing:-.015em;font-size:1.02em}
.qz-op__d{display:block;color:rgba(255,255,255,.5);font-size:.87em;margin-top:4px;line-height:1.45}

.qz-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px}
.qz-b{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;cursor:pointer;
  padding:14px 22px;background:#fff;color:var(--ink);border:1px solid #fff;
  font-family:Plex,monospace;font-size:.72em;letter-spacing:.14em;text-transform:uppercase;
  transition:.4s cubic-bezier(.16,1,.3,1)}
.qz-b:hover{background:var(--aco);border-color:var(--aco);color:#fff}
.qz-b--g{background:none;border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.72)}
.qz-b--g:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.5)}
.qz-b--wa{background:var(--aco);border-color:var(--aco);color:#fff}
.qz-b--wa:hover{background:#fff;color:var(--ink);border-color:#fff}

.qz-fim{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.qz-campo{width:100%;max-width:440px}
.qz-campo span{display:block;font-family:Plex,monospace;font-size:.7em;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:9px}
.qz-campo input{width:100%;padding:14px 16px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.2);color:#fff;transition:.3s}
.qz-campo input:focus{outline:none;border-color:#fff;background:rgba(255,255,255,.09)}
.qz-fim .qz-b{width:100%;max-width:440px}

/* painel do orçamento */
.qz__dir{background:var(--paper);color:var(--ink);padding:clamp(22px,2.6vw,34px);
  position:sticky;top:74px;align-self:start}
.qz__dt{color:var(--mut2);margin-bottom:20px}
.qz-vazio{color:var(--mut);font-size:.93em;line-height:1.7}
.qz-lista{list-style:none}
.qz-li{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:14px 0;
  border-top:1px solid var(--rule2);animation:qzpop .4s both cubic-bezier(.16,1,.3,1)}
.qz-li:first-child{border-top:none;padding-top:0}
.qz-li__n{font-weight:500;letter-spacing:-.015em}
.qz-li__d{grid-column:1;color:var(--mut);font-size:.83em;line-height:1.45}
.qz-li__p{grid-column:2;grid-row:1/3;text-align:right;font-family:Plex,monospace;
  font-weight:500;font-size:.92em;white-space:nowrap}
.qz-li__p em{display:block;font-style:normal;font-size:.86em;color:var(--aco);margin-top:3px}
.qz-total{margin-top:20px;padding-top:18px;border-top:1px solid var(--ink);display:grid;gap:9px}
.qz-total div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.qz-total span{color:var(--mut);font-size:.88em}
.qz-total strong{font-family:Plex,monospace;font-size:1.16em;letter-spacing:-.02em}
.qz-pag{margin-top:18px;padding:15px 16px;border:1px solid var(--rule);background:var(--paper2)}
.qz-pag__t{font-family:Plex,monospace;font-size:.68em;letter-spacing:.14em;text-transform:uppercase;
  color:var(--mut2);margin-bottom:9px}
.qz-pag p{font-size:.89em;line-height:1.5}
.qz-pag b{font-weight:600}
.qz-pag__c{color:var(--mut);font-size:.82em!important;margin-top:7px}
.qz-nota{margin-top:14px;font-size:.79em;line-height:1.55;color:var(--mut2)}
@media (max-width:980px){.qz__box{grid-template-columns:1fr}.qz__dir{position:static}}

/* ═══ SOBRE ═══════════════════════════════════════════════ */
.sb{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(28px,5vw,72px);align-items:start}
.sb__h{font-size:clamp(28px,4.2vw,58px);line-height:1.05;letter-spacing:-.03em;max-width:16ch}
.sb__p p{color:var(--mut);margin-bottom:18px;max-width:56ch}
.sb__p .bt{margin-top:12px}
@media (max-width:860px){.sb{grid-template-columns:1fr}}

/* campo de texto livre — a ideia do cliente */
.qz-campo--g{max-width:none}
.qz-campo textarea{width:100%;padding:16px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.2);color:#fff;resize:vertical;min-height:150px;
  line-height:1.6;transition:.3s;font-family:inherit}
.qz-campo textarea:focus{outline:none;border-color:#fff;background:rgba(255,255,255,.09)}
.qz-campo textarea::placeholder{color:rgba(255,255,255,.32)}
.qz-cont{font-family:Plex,monospace;font-size:.68em;letter-spacing:.12em;
  color:rgba(255,255,255,.35);text-align:right;margin-top:8px}

/* intro do questionário */
.qz__intro{color:rgba(255,255,255,.6);max-width:58ch;margin:-14px 0 30px}

/* contato: nome + whatsapp */
.qz-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.qz-form .qz-campo{max-width:none}
@media (max-width:680px){.qz-form{grid-template-columns:1fr}}
.qz-nota--lt{color:rgba(255,255,255,.5)!important;margin-top:16px}
.qz-ok{color:rgba(255,255,255,.78);max-width:52ch;margin-bottom:6px}
.qz-ok b{color:#fff;font-weight:500}
.qz-fim .qz-b{width:100%;max-width:440px}
