.q-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.6);z-index:1000}.q-modal.open{display:flex}.q-card{width:min(680px,94vw);max-height:92vh;overflow:auto;background:#111;border:1px solid rgba(212,175,55,.35);border-radius:16px;box-shadow:0 18px 56px rgba(0,0,0,.45);color:#fff}.q-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.q-title{font-family:'Playfair Display',serif;font-size:1.4rem;color:#fff;margin:0}.q-close{background:0 0;border:none;color:#fff;font-size:22px;cursor:pointer}.q-body{padding:18px 20px}.q-progress{height:6px;background:#1f1f1f;border-radius:999px;overflow:hidden;margin-bottom:16px;border:1px solid rgba(255,255,255,.06)}.q-progress>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#d4af37,#ffe9b7);transition:width .3s}.q-step{display:none}.q-step.active{display:block}.q-group{margin:14px 0}.q-label{font-weight:600;margin:8px 0 6px;color:#fff}.q-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.q-option{display:flex;align-items:center;gap:8px;background:#181818;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px;cursor:pointer;transition:transform .15s,border-color .15s;color:#fff}.q-option span{color:#fff}.q-option input{accent-color:#d4af37}.q-option:hover{transform:translateY(-1px);border-color:rgba(212,175,55,.45)}.q-actions{display:flex;justify-content:space-between;gap:8px;margin-top:16px}.q-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;border:1px solid transparent;cursor:pointer;font-weight:600}.q-btn.primary{background:linear-gradient(90deg,#d4af37,#ffe9b7);color:#fff}.q-btn.secondary{background:0 0;border-color:rgba(255,255,255,.18);color:#fff}.q-btn.error{background:#b91c1c!important;border-color:#ef4444!important;color:#fff!important}.q-btn.error:focus-visible{outline:#ef4444 solid 2px;outline-offset:2px;box-shadow:0 0 0 4px rgba(239,68,68,.25)}.q-result{background:#151515;border:1px solid rgba(212,175,55,.25);border-radius:12px;padding:14px;margin-top:10px}.q-small{color:#fff;font-size:.9rem}.q-body input[type=email],.q-body input[type=tel],.q-body input[type=text],.q-body textarea{color:#fff;background:#181818;border:1px solid rgba(255,255,255,.15);padding:12px;border-radius:10px;width:100%}.q-body input::placeholder,.q-body textarea::placeholder{color:rgba(255,255,255,.75)}@media (max-width:520px){.q-options{grid-template-columns:1fr}}