/* Vezza — Processo seletivo / formulário em etapas */
#selecao.vezza-application {
  --vf-ink: #11110f;
  --vf-paper: #f0ede6;
  --vf-paper-light: #f8f6f1;
  --vf-wine: #7a182d;
  --vf-rose: #b76678;
  --vf-muted: rgba(240, 237, 230, .64);
  --vf-line: rgba(240, 237, 230, .17);
  background: var(--vf-ink);
  color: var(--vf-paper);
  position: relative;
  overflow: hidden;
  scroll-margin-top: 80px;
  font-family: var(--sans, "Helvetica Neue", "Avenir Next", Arial, sans-serif);
}
#selecao.vezza-application::before {
  content: "V";
  position: absolute;
  right: -2vw;
  bottom: -10vw;
  font-family: var(--display, "Bodoni 72", Didot, "Times New Roman", serif);
  font-size: min(62vw, 860px);
  line-height: .72;
  color: rgba(240,237,230,.025);
  pointer-events: none;
  user-select: none;
}
.vf-shell {
  width: min(1320px, 100%);
  min-height: 880px;
  margin: 0 auto;
  padding: 110px 54px 96px;
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(220px, 310px) minmax(0, 1fr);
  gap: clamp(54px, 7vw, 120px);
}
.vf-aside { display:flex; flex-direction:column; min-width:0; }
.vf-index { display:flex; align-items:center; gap:16px; text-transform:uppercase; letter-spacing:.18em; font-size:10px; color:var(--vf-muted); }
.vf-index strong { color:var(--vf-paper); font-size:28px; font-weight:400; letter-spacing:-.04em; font-family:var(--display, serif); }
.vf-aside h2 {
  margin: 58px 0 22px;
  font-family: var(--display, serif);
  font-weight: 400;
  font-size: clamp(54px, 6.2vw, 96px);
  letter-spacing: -.055em;
  line-height: .88;
}
.vf-aside h2 em { color:var(--vf-rose); font-style:italic; }
.vf-aside-copy { color:var(--vf-muted); font-size:14px; line-height:1.7; max-width:280px; }
.vf-aside-note { margin-top:auto; padding-top:48px; color:rgba(240,237,230,.48); font-size:10px; line-height:1.6; letter-spacing:.08em; text-transform:uppercase; }
.vf-main { min-width:0; display:flex; flex-direction:column; }
.vf-top { display:flex; align-items:center; gap:24px; margin-bottom:72px; }
.vf-counter { white-space:nowrap; min-width:58px; color:var(--vf-muted); font-size:10px; letter-spacing:.16em; text-transform:uppercase; }
.vf-progress { height:1px; background:var(--vf-line); flex:1; overflow:hidden; }
.vf-progress span { display:block; width:10%; height:100%; background:var(--vf-paper); transition:width .35s cubic-bezier(.22,1,.36,1); }
.vf-card { min-height:560px; display:flex; flex-direction:column; }
.vf-question-wrap { animation:vfIn .35s cubic-bezier(.22,1,.36,1); }
@keyframes vfIn { from { opacity:0; transform:translateY(12px);} to {opacity:1;transform:none;} }
.vf-kicker { color:var(--vf-rose); font-size:10px; letter-spacing:.18em; text-transform:uppercase; margin-bottom:18px; }
.vf-question { font-family:var(--display, serif); font-size:clamp(42px, 5vw, 76px); line-height:.98; letter-spacing:-.045em; font-weight:400; max-width:880px; }
.vf-help { color:var(--vf-muted); font-size:14px; line-height:1.6; max-width:620px; margin-top:22px; }
.vf-field { margin-top:54px; max-width:720px; }
.vf-input {
  width:100%; border:0; border-bottom:1px solid rgba(240,237,230,.35); background:transparent; color:var(--vf-paper);
  padding:18px 2px 17px; font-family:var(--sans, sans-serif); font-size:clamp(22px, 2.5vw, 34px); outline:none;
  transition:border-color .2s ease;
}
.vf-input::placeholder { color:rgba(240,237,230,.23); opacity:1; }
.vf-input:focus { border-color:var(--vf-paper); }
.vf-options { margin-top:48px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; max-width:820px; }
.vf-option {
  appearance:none; border:1px solid var(--vf-line); background:rgba(255,255,255,.015); color:var(--vf-paper); min-height:74px;
  padding:18px 20px; text-align:left; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:16px;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
  font-size:13px;
}
.vf-option::after { content:""; width:9px; height:9px; border:1px solid rgba(240,237,230,.42); border-radius:50%; flex:0 0 auto; }
.vf-option:hover { border-color:rgba(240,237,230,.5); transform:translateY(-1px); }
.vf-option.is-selected { background:var(--vf-paper); color:var(--vf-ink); border-color:var(--vf-paper); }
.vf-option.is-selected::after { background:var(--vf-wine); border-color:var(--vf-wine); box-shadow:0 0 0 3px rgba(122,24,45,.15); }
.vf-options.is-multi .vf-option::after { border-radius:2px; }
.vf-actions { margin-top:auto; padding-top:58px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.vf-back, .vf-next, .vf-submit {
  border:0; cursor:pointer; font-family:var(--sans,sans-serif); text-transform:uppercase; letter-spacing:.14em; font-size:10px;
}
.vf-back { color:rgba(240,237,230,.55); background:transparent; padding:14px 0; }
.vf-back:hover { color:var(--vf-paper); }
.vf-next, .vf-submit { background:var(--vf-paper); color:var(--vf-ink); min-width:190px; padding:19px 22px; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.vf-next:disabled,.vf-submit:disabled { opacity:.32; cursor:not-allowed; }
.vf-next:not(:disabled):hover,.vf-submit:not(:disabled):hover { background:#fff; }
.vf-error { min-height:20px; color:#e8a3b1; margin-top:14px; font-size:12px; }
.vf-age { margin-top:38px; max-width:720px; display:flex; align-items:flex-start; gap:13px; cursor:pointer; color:var(--vf-muted); font-size:12px; line-height:1.55; }
.vf-age input { width:18px; height:18px; margin-top:1px; accent-color:var(--vf-wine); flex:0 0 auto; }
.vf-review { margin-top:42px; border-top:1px solid var(--vf-line); max-width:860px; }
.vf-review-row { padding:17px 0; border-bottom:1px solid var(--vf-line); display:grid; grid-template-columns:190px minmax(0,1fr); gap:24px; }
.vf-review-row span { color:var(--vf-muted); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.vf-review-row strong { font-size:13px; font-weight:400; word-break:break-word; }
.vf-success { min-height:560px; display:flex; flex-direction:column; justify-content:center; max-width:760px; animation:vfIn .4s ease; }
.vf-success-mark { width:54px; height:54px; border:1px solid var(--vf-paper); border-radius:50%; display:grid; place-items:center; margin-bottom:34px; font-size:20px; }
.vf-success h3 { font-family:var(--display,serif); font-size:clamp(52px,7vw,94px); font-weight:400; letter-spacing:-.055em; line-height:.9; }
.vf-success p { color:var(--vf-muted); max-width:560px; margin-top:28px; line-height:1.7; font-size:14px; }
.vf-status { margin-top:18px; color:var(--vf-muted); font-size:12px; min-height:18px; }
.vf-hp { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }

@media (max-width: 900px) {
  .vf-shell { min-height:0; padding:92px 28px 78px; grid-template-columns:1fr; gap:56px; }
  .vf-aside h2 { margin-top:36px; font-size:clamp(52px,12vw,86px); }
  .vf-aside-copy { max-width:620px; }
  .vf-aside-note { display:none; }
  .vf-top { margin-bottom:54px; }
  .vf-card { min-height:540px; }
}
@media (max-width: 640px) {
  #selecao.vezza-application { scroll-margin-top:68px; }
  .vf-shell { padding:76px 20px 64px; gap:44px; }
  .vf-aside h2 { font-size:55px; }
  .vf-question { font-size:45px; }
  .vf-help { font-size:13px; }
  .vf-top { gap:14px; margin-bottom:45px; }
  .vf-counter { min-width:52px; font-size:9px; }
  .vf-field { margin-top:38px; }
  .vf-input { font-size:22px; }
  .vf-options { margin-top:36px; grid-template-columns:1fr; gap:10px; }
  .vf-option { min-height:64px; padding:16px; }
  .vf-actions { padding-top:42px; }
  .vf-next,.vf-submit { min-width:160px; padding:18px 17px; }
  .vf-review-row { grid-template-columns:1fr; gap:7px; }
}
