/* Homepage quote card, steps 2–4 (js/quote-card.js). Step 1 styles live in skin.css (.qc-*). */
.qcard{will-change:height}
.qc-flow{padding:20px 30px 26px}
.qc-flow[hidden],.qc-pane[hidden],.qc-alt[hidden],.qc-form[hidden]{display:none !important}
.qc-head{display:flex;align-items:center;justify-content:space-between;min-height:28px}
.qc-back{display:inline-flex;align-items:center;gap:6px;padding:4px 8px 4px 0;border:0;background:none;font:600 .9rem var(--font-body);color:var(--navy);cursor:pointer}
.qc-back:hover{color:var(--action)}
.qc-back:focus-visible,.qc-link:focus-visible{outline:2px solid var(--action);outline-offset:2px;border-radius:4px}
.qc-back[hidden]{visibility:hidden;display:inline-flex}
.qc-count{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.qc-bar{height:4px;margin:10px 0 22px;border-radius:4px;background:#E6EBF0;overflow:hidden}
.qc-bar i{display:block;height:100%;width:33%;border-radius:4px;background:var(--action);transition:width .45s cubic-bezier(.3,.7,.2,1)}
.qc-in-anim{animation:qc-in .38s cubic-bezier(.2,.7,.2,1)}
@keyframes qc-in{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}

.qc-flow .qc-title{outline:none;margin-bottom:18px}
.qc-field{margin:0 0 18px;min-width:0}
.qc-field[hidden]{display:none}
.qc-chips{display:flex;flex-wrap:wrap;gap:8px}
.qc-chip{min-height:42px;padding:8px 16px;border:1.5px solid #DCE3EA;border-radius:999px;background:#fff;font:500 .93rem var(--font-body);color:var(--navy);cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.qc-chip:hover{border-color:#B9C6D3;background:#FAFBFD}
.qc-chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.qc-chip:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.qc-btn--full{width:100%;height:50px;justify-content:center;margin-top:4px;border-radius:12px}
.qc-btn[disabled]{opacity:.7;cursor:progress}

.qc-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qc-row .qc-field{margin-bottom:14px}
.qc-in{width:100%;height:48px;border:1.5px solid #DCE3EA;border-radius:12px;background:#fff;padding:0 14px;font:500 1rem var(--font-body);color:var(--navy);transition:border-color .15s,box-shadow .15s}
.qc-in:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 4px rgba(18,50,79,.08)}
.qc-in::placeholder{color:#9AA7B4;font-weight:400}

.qc-agent-slot{margin:-4px 0 18px}
.qc-agent{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #DFE7EE;border-radius:14px;background:#F6F9FB}
.qc-agent .a-ph{flex:none;width:52px;height:52px;border-radius:50%;object-fit:cover;display:grid;place-items:center;font-weight:700}
.qc-agent b{display:block;font-family:var(--font-heading);font-size:1.1rem;font-weight:600;color:var(--navy);line-height:1.2}
.qc-agent span{display:block;font-size:.85rem;color:var(--muted);line-height:1.35}
.qc-agent .qc-agent-k{font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--action);margin-bottom:2px}

.qc-ref{margin:0 0 14px;font-size:.88rem}
.qc-ref summary{cursor:pointer;color:var(--navy);font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:6px}
.qc-ref summary::-webkit-details-marker{display:none}
.qc-ref summary::before{content:"+";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1.5px solid #C3CDD8;font-size:.8rem;line-height:1}
.qc-ref[open] summary::before{content:"–"}
.qc-ref .qc-in{margin-top:10px}
.qc-consent{display:grid;grid-template-columns:20px 1fr;gap:10px;margin:0 0 6px;padding:12px 14px;border-radius:12px;background:#F4F7FA;font-size:.74rem;line-height:1.5;color:#4F5F70}
.qc-consent input{width:17px;height:17px;margin-top:1px;accent-color:var(--navy)}
.qc-consent a{color:var(--navy)}
.qc-flow .door-err{margin:6px 0 8px;min-height:1.1em;outline:none}

.qc-done{text-align:left}
.qc-check{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--tint,#E2F2EF);margin-bottom:14px}
.qc-check svg{width:24px;height:24px;fill:none;stroke:var(--action);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:22;stroke-dashoffset:22;animation:qc-draw .5s ease .2s forwards}
@keyframes qc-draw{to{stroke-dashoffset:0}}
.qc-done .qc-title{margin-bottom:8px}
.qc-done .qc-sub{display:block !important;margin-bottom:18px}
.qc-done-btns{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.qc-done-btns .qc-btn{height:44px;border-radius:10px;text-decoration:none}
.qc-btn--o{background:#fff;color:var(--navy);border:1.5px solid #DCE3EA}
.qc-btn--o:hover{background:#F6F9FB;border-color:var(--navy)}
.qc-ref-no{font-size:.84rem;color:var(--muted);margin:0}
.qc-link{border:0;background:none;padding:0;font:inherit;font-weight:600;color:var(--navy);text-decoration:underline;text-underline-offset:3px;cursor:pointer}

@media (max-width:560px){
  .qc-flow{padding:16px 18px 20px}
  .qc-row{grid-template-columns:1fr;gap:0}
  .qc-row--names{grid-template-columns:1fr 1fr;gap:10px}
  .qc-bar{margin-bottom:18px}
}
@media (prefers-reduced-motion:reduce){.qc-in-anim,.qc-check svg{animation:none;stroke-dashoffset:0}.qc-bar i{transition:none}}
.qcard .door-err{color:#B42318}
