/* ---------- Enquete layout ---------- */
.enq__nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:18px clamp(20px,5vw,60px);
  backdrop-filter:blur(18px);
  background:linear-gradient(180deg, rgba(5,6,15,.7), rgba(5,6,15,.2));
  border-bottom:1px solid var(--line);
}
.enq__nav .brand img{height:56px;display:block}
.enq__nav .back{color:var(--ink-dim);text-decoration:none;font-size:14px;font-weight:500;transition:color .2s}
.enq__nav .back:hover{color:#fff}

.enq{max-width:820px;margin:0 auto;padding:clamp(60px,9vw,110px) clamp(20px,5vw,40px) 80px}

.enq__head{text-align:center;margin-bottom:52px}
.enq__head h1{font-size:clamp(32px,5vw,56px);line-height:1.05}
.enq__meta{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 14px;border-radius:999px;
  border:1px solid var(--line);background:rgba(255,255,255,.03);
  font-size:13px;color:var(--ink-dim);margin-bottom:24px;
}
.enq__intro{color:var(--ink-dim);margin:22px auto 0;max-width:620px;font-size:17px}
.enq__intro em{color:#fff;font-style:normal;font-weight:600}

/* ---------- Questions ---------- */
.q{
  padding:26px clamp(20px,4vw,32px);
  border:1px solid var(--line);border-radius:var(--radius);
  background:var(--card);backdrop-filter:blur(10px);
  margin:0 0 16px;
}
.q__label{
  display:block;margin:0 0 18px;
  color:#fff;font-weight:600;font-size:16px;
  font-family:'Space Grotesk',sans-serif;letter-spacing:-.005em;
}
.q__label .num{color:var(--ink-mute);margin-right:10px;font-weight:500}
.q__hint{display:block;margin:-8px 0 14px;color:var(--ink-mute);font-size:13px}

.opts{display:flex;flex-direction:column;gap:8px}
.opt{
  display:flex;align-items:center;gap:12px;
  padding:13px 16px;border-radius:12px;
  border:1px solid var(--line);background:rgba(255,255,255,.02);
  cursor:pointer;transition:border-color .2s, background .2s, transform .15s;
}
.opt:hover{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.05)}
.opt input{accent-color:#8a5cff;width:16px;height:16px;margin:0;flex-shrink:0}
.opt span{color:var(--ink-dim);font-size:15px;line-height:1.4}
.opt:has(input:checked){border-color:rgba(138,92,255,.6);background:rgba(138,92,255,.08)}
.opt:has(input:checked) span{color:#fff}

.q input[type="text"],
.q input[type="email"]{
  width:100%;display:block;
  background:rgba(255,255,255,.03);
  border:1px solid var(--line);color:#fff;
  padding:14px 16px;border-radius:12px;
  font:inherit;outline:0;transition:border-color .2s, background .2s;
}
.q input[type="text"]::placeholder,
.q input[type="email"]::placeholder{color:var(--ink-mute)}
.q input[type="text"]:focus,
.q input[type="email"]:focus{border-color:rgba(138,92,255,.6);background:rgba(138,92,255,.05)}

/* ---------- Submit + status ---------- */
.enq__submit{display:flex;justify-content:center;margin-top:36px}
.enq__submit .btn{padding:16px 32px;font-size:16px}
.enq__submit .btn[disabled]{opacity:.6;cursor:not-allowed;transform:none}

.enq__status{
  text-align:center;margin:20px auto 0;max-width:520px;
  padding:14px 18px;border-radius:12px;
  font-size:14px;display:none;
}
.enq__status.show{display:block}
.enq__status.ok{
  color:#b8ffd1;background:rgba(79,255,155,.08);
  border:1px solid rgba(79,255,155,.25);
}
.enq__status.err{
  color:#ffb8b8;background:rgba(255,107,107,.08);
  border:1px solid rgba(255,107,107,.25);
}

.enq__thanks{
  display:none;text-align:center;
  padding:clamp(40px,6vw,72px) clamp(24px,5vw,48px);
  border:1px solid var(--line);border-radius:28px;
  background:
    radial-gradient(600px 300px at 50% 0%, rgba(138,92,255,.28), transparent 70%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01));
}
.enq__thanks.show{display:block}
.enq__thanks h2{margin-bottom:14px}
.enq__thanks p{max-width:520px;margin:0 auto 28px;font-size:17px}

.enq__back{text-align:center;margin-top:40px}
.enq__back a{color:var(--ink-mute);font-size:14px;text-decoration:none;transition:color .2s}
.enq__back a:hover{color:#fff}

/* ---------- Invalid state ---------- */
.q.invalid{border-color:rgba(255,107,107,.4)}
.q.invalid .q__label{color:#ffb8b8}

@media(max-width:640px){
  .opt{padding:12px 14px}
  .opt span{font-size:14px}
}
