/* ============================================================
   WOLF CASA — ENQUIRY FLOW
   Stepped brief on the left, live spec-sheet of answers on the right.
   ============================================================ */
.enq{border-top:var(--rule);border-bottom:var(--rule)}
.enqhd{display:flex;justify-content:space-between;align-items:baseline;gap:0.875rem;padding:0.75rem 0;border-bottom:var(--hair)}
.rail{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--ink-08);border-bottom:var(--rule)}
.rail .rk{background:var(--paper);border:none;font-family:var(--sans);text-align:left;cursor:pointer;
  padding:0.8125rem clamp(0.625rem,1.4vw,1.125rem);display:flex;flex-direction:column;gap:0.3125rem;color:var(--ink-46);
  transition:background .4s,color .4s}
.rail .rk:disabled{cursor:default;opacity:.42}
.rail .rk .n{font-variant-numeric:tabular-nums;font-size:0.6563rem}
.rail .rk .t{font-size:0.7813rem;letter-spacing:.14em;text-transform:uppercase}
.rail .rk.done{color:var(--ink-70)}
.rail .rk.on{background:var(--band);color:var(--band-ink)}
.enqbody{display:grid;grid-template-columns:1.45fr 1fr;gap:0}
.enqbody>*{padding:clamp(1.375rem,3vw,3rem) 0}
.stage{padding-right:clamp(1.375rem,3vw,3.5rem);border-right:var(--rule);min-height:clamp(22.5rem,42vw,32.5rem)}
.aside{padding-left:clamp(1.375rem,3vw,3.5rem)}
@media (max-width:860px){.enqbody{grid-template-columns:1fr}
  .stage{padding-right:0;border-right:none;border-bottom:var(--rule);min-height:0}
  .aside{padding-left:0}
  .rail{grid-template-columns:repeat(2,1fr)}}

.step{display:none}
.step.on{display:block;animation:enqIn .7s cubic-bezier(.16,1,.3,1) both}
@keyframes enqIn{from{opacity:0;transform:translateY(0.75rem)}to{opacity:1;transform:none}}

.opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11.875rem),1fr));gap:1px;
  background:var(--ink-08);border:var(--rule);margin-top:clamp(1.125rem,2.4vw,1.875rem)}
.opts button{background:var(--paper);border:none;cursor:pointer;font-family:var(--sans);text-align:left;
  padding:clamp(0.9375rem,1.9vw,1.5rem);display:flex;flex-direction:column;gap:0.4375rem;min-height:6rem;
  justify-content:flex-end;color:var(--ink);transition:background .45s,color .45s}
.opts button .t{font-family:var(--disp);font-weight:200;font-variation-settings:'wdth' 116;
  font-size:clamp(1.0625rem,1.7vw,1.375rem);letter-spacing:-.02em}
.opts button .g{font-size:0.6563rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-46)}
.opts button:hover{background:var(--paper-2)}
.opts button.on{background:var(--band);color:var(--band-ink)}
.opts button.on .g{color:var(--band-ink-46)}

.chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.75rem}
.chips button{background:transparent;border:1px solid var(--ink-14);border-radius:62.4375rem;cursor:pointer;
  font-family:var(--sans);font-size:0.7813rem;letter-spacing:.02em;padding:0.625rem 1rem;min-height:2.75rem;
  color:var(--ink-70);transition:border-color .35s,background .35s,color .35s}
.chips button:hover{border-color:var(--ink-30);color:var(--ink)}
.chips button.on{background:var(--band);border-color:var(--band);color:var(--band-ink)}

.enq .fields{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,2vw,1.75rem);margin-top:clamp(1.125rem,2.4vw,1.875rem)}
.enq .fields .full{grid-column:1/-1}
@media (max-width:620px){.enq .fields{grid-template-columns:1fr}}
.enq label{display:flex;flex-direction:column;gap:0.4375rem}
.enq .fl{font-size:0.6563rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-46)}
.enq input,.enq textarea{background:transparent;border:none;border-bottom:1px solid var(--ink-30);
  font-family:var(--sans);font-size:1rem;color:var(--ink);padding:0.625rem 0;outline:none;transition:border-color .35s}
.enq input:focus,.enq textarea:focus{border-color:var(--ink)}
.enq textarea{resize:vertical;min-height:5.5rem}
.enq .step>label{margin-top:clamp(1.125rem,2.2vw,1.75rem)}

.enq .nav{display:flex;gap:0.625rem;flex-wrap:wrap;margin-top:clamp(1.375rem,3vw,2.5rem)}
.enq .nav .btn[disabled]{opacity:.34;pointer-events:none}

.rev{border-top:var(--rule);margin-top:0.75rem}
.rev .r{display:grid;grid-template-columns:1.875rem 5.25rem 1fr;gap:clamp(0.5rem,1.2vw,1rem);align-items:baseline;
  padding:0.6875rem 0;border-bottom:var(--hair)}
.rev .r .n{font-variant-numeric:tabular-nums;font-size:0.6563rem;color:var(--ink-46)}
.rev .r .k{font-size:0.6563rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-46)}
.rev .r .v{font-size:0.875rem;text-wrap:pretty}
.aside .hd{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:0.6875rem;border-bottom:var(--hair)}

.sent{display:none}
.enq.done .sent{display:block;animation:enqIn .8s cubic-bezier(.16,1,.3,1) both}
.enq.done .stage,.enq.done .rail,.enq.done .rev,.enq.done .aside .hd{display:none}
.enq.done .enqbody{grid-template-columns:1fr}
.sent .acts{display:flex;gap:0.625rem;flex-wrap:wrap;margin-top:clamp(1.25rem,2.6vw,2rem)}
.sent .lnk{background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:0.6875rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ink-46);margin-top:1.125rem;padding:0.5rem 0}
.sent .lnk:hover{color:var(--ink)}

@media (max-width:520px){
  .enqhd{flex-direction:column;gap:0.25rem;align-items:flex-start}
  .rail .rk{padding:0.6875rem 0.75rem}
  .opts button{min-height:5.25rem;padding:0.875rem}
  .enq .nav .btn{flex:1;justify-content:center}
  .sent .acts .btn{flex:1;justify-content:center}
}

/* franchise branch: step two swaps rooms for a market */
.enq .fr-only{display:none}
.enq.fr .fr-only{display:block}
.enq.fr .rm-only{display:none}
