@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

 :root {
  --ns-navy: #07111d;
  --ns-navy-2: #0d1c2b;
  --ns-primary: #f4b73e;
  --ns-primary-hover: #ffc95f;
  --ns-primary-deep: #d99716;
  --ns-primary-soft: #1c1a12;
  --ns-primary-contrast: #111820;
  --ns-info: #d9a62f;
  --ns-success: #32d583;
  --ns-success-soft: #0d261d;
  --ns-warning: #f6b94d;
  --ns-warning-soft: #261e0c;
  --ns-danger: #ff6b6b;
  --ns-danger-soft: #2a1114;
  --ns-bg: #050d15;
  --ns-surface: #0b1825;
  --ns-surface-2: #0f1f2e;
  --ns-surface-3: #132433;
  --ns-border: rgba(182,199,216,.16);
  --ns-border-strong: rgba(244,183,62,.30);
  --ns-text: #f7f9fc;
  --ns-text-2: #c6d0db;
  --ns-muted: #8694a4;
  --ns-on-dark: #ffffff;
  --ns-on-dark-muted: #c6d0db;
  --ns-radius-sm: 10px;
  --ns-radius: 16px;
  --ns-radius-lg: 24px;
  --ns-shadow-sm: 0 6px 20px rgba(0,0,0,.18);
  --ns-shadow: 0 18px 46px rgba(0,0,0,.28);
  --ns-shadow-lg: 0 30px 80px rgba(0,0,0,.38);
  --ns-container: 1180px;
  --preto: var(--ns-text);
  --azul-neon: var(--ns-primary);
  --azul-escuro: var(--ns-primary-deep);
  --azul-claro: #ead6a5;
  --cinza: var(--ns-muted);
  --cinza-50: var(--ns-surface-2);
  --cinza-100: var(--ns-surface-3);
  --cinza-200: var(--ns-border);
  --cinza-300: var(--ns-border-strong);
  --cinza-700: var(--ns-text-2);
  --branco: var(--ns-text);
  --branco-puro: #ffffff;
  --vermelho: var(--ns-danger);
  --whatsapp: #25d366;
  --radius: var(--ns-radius);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ns-bg); }
body {
  margin: 0;
  min-height: 100vh;
  background: var(--ns-bg);
  color: var(--ns-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
button, input, select, textarea { font: inherit; }
img { max-width: 100%; display: block; }
a { color: var(--ns-primary); text-decoration: none; }
a:hover { color: var(--ns-primary-hover); }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .65; }
input, select, textarea { min-width: 0; }
h1, h2, h3, h4, h5, h6, p { margin-top: 0; }
h1, h2, h3, h4, h5, h6 { color: var(--ns-text); letter-spacing: -.025em; }
p { color: var(--ns-text-2); }
strong { color: inherit; }
small { color: var(--ns-muted); }
.escondido { display: none !important; }

/* Layout safety: evita ícones/textos se sobrepondo */
[class*="grid"], [class*="linha"], [class*="topo"], [class*="header"], [class*="acoes"], [class*="card"] { min-width: 0; }
[class*="icon"], [class*="icone"], .field-icon, .ns-logo-icon, .signup-trust-icon { flex: 0 0 auto; }
button, .painel-acao, .cidade-btn, .admin-modulo-btn, .acoes-card a, .plano-botao-premium {
  overflow-wrap: normal;
  word-break: normal;
}
.nome-profissional-linha, .painel-nome, .perfil-nome, [class*="nome"] { overflow-wrap: anywhere; }

/* Cabeçalho */
.ns-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  min-height: 72px;
  padding: 0 clamp(18px, 4vw, 56px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: rgba(7,17,29,.94);
  border-bottom:1px solid var(--ns-border);
  backdrop-filter: blur(16px);
  box-shadow: 0 1px 0 rgba(15,23,42,.02);
}
.ns-logo {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: var(--ns-text);
  font-weight: 800;
  font-size: 19px;
  letter-spacing: -.03em;
  white-space: nowrap;
}
.ns-logo:hover { color: var(--ns-text); }
.ns-logo-icon {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--ns-primary), #d99716);
  color: var(--ns-primary-contrast);
  font-size: 18px;
  box-shadow: 0 8px 20px rgba(244,183,62,.24);
}
.ns-nav { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.ns-nav a {
  padding: 10px 13px;
  border-radius: 10px;
  color: var(--ns-text-2);
  font-size: 14px;
  font-weight: 650;
  white-space: nowrap;
}
.ns-nav a:hover { color: var(--ns-primary); background: var(--ns-primary-soft); }
.ns-nav .ns-nav-cta, .ns-nav-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 17px;
  border-radius: 11px;
  background: var(--ns-primary);
  color: var(--ns-primary-contrast) !important;
  font-weight: 750;
  border: 1px solid var(--ns-primary);
  white-space: nowrap;
}
.ns-nav .ns-nav-cta:hover, .ns-nav-cta:hover { background: var(--ns-primary-hover); border-color: var(--ns-primary-hover); color: var(--ns-primary-contrast) !important; }

/* Campos e botões comuns */
.field-group, .grupo-form-premium { display: grid; gap: 8px; margin: 0; min-width: 0; }
.field-group label, .grupo-form-premium label, .login-input-premium label, .cidade-bloco-form label {
  color: var(--ns-text-2);
  font-size: 13px;
  font-weight: 700;
}
.field-control {
  min-height: 50px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 13px;
  border: 1px solid var(--ns-border-strong);
  border-radius: 12px;
  background: var(--ns-surface);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.field-control:focus-within { border-color: var(--ns-primary); box-shadow: 0 0 0 4px rgba(244,183,62,.10); }
.field-icon {
  width: 22px;
  min-width: 22px;
  display: inline-grid;
  place-items: center;
  color: var(--ns-muted);
  font-size: 16px;
  line-height: 1;
}
.field-control input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--ns-text); padding: 12px 0; }
.field-help { display: block; font-size: 12px; line-height: 1.45; color: var(--ns-muted); }
.optional-label { color: var(--ns-muted); font-weight: 550; font-size: 11px; }

input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), select, textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--ns-border-strong);
  border-radius: 12px;
  background: var(--ns-surface);
  color: var(--ns-text);
  padding: 11px 13px;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}
textarea { resize: vertical; min-height: 100px; }
input:focus, select:focus, textarea:focus { border-color: var(--ns-primary); box-shadow: 0 0 0 4px rgba(244,183,62,.10); }
input::placeholder, textarea::placeholder { color: #8493a2; opacity: 1; }
input:disabled, select:disabled, textarea:disabled { background: var(--ns-surface-3); color: #aab7c3; border-color: var(--ns-border); opacity: 1; }
input[type="file"] { width: 100%; color: var(--ns-text-2); }
input[type="file"]::file-selector-button { border: 0; border-radius: 9px; background: var(--ns-primary-soft); color: var(--ns-primary-hover); padding: 9px 12px; font-weight: 700; margin-right: 10px; cursor: pointer; }
.form-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.form-message { min-height: 20px; margin: 4px 0 0; font-size: 13px; font-weight: 650; color: var(--ns-text-2); }
.form-message.erro, .completar-msg.erro, .mensagem-login-profissional.erro { color: var(--ns-danger); }
.form-message.sucesso, .completar-msg.sucesso { color: var(--ns-success); }

/* Loading */
.mini-loading {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: none;
  place-items: center;
  padding: 24px;
  background:rgba(4,11,18,.78);
  backdrop-filter: blur(5px);
}
.mini-loading.ativo { display: grid; }
.ns-loader-card, .ns-loader-card-v22 {
  width:min(360px,92vw);
  padding:28px;
  border:1px solid rgba(244,183,62,.20);
  border-radius:20px;
  background:linear-gradient(150deg,rgba(13,29,43,.98),rgba(6,16,26,.99));
  color:var(--ns-text);
  box-shadow:0 28px 80px rgba(0,0,0,.44),0 0 40px rgba(244,183,62,.08);
  text-align:center;
}
.ns-loader-logo, .ns-loader-logo-v22 {
  width:52px; height:52px; margin:0 auto 15px; display:grid; place-items:center;
  border:1px solid rgba(255,201,95,.55); border-radius:15px;
  background:linear-gradient(145deg,var(--ns-primary-hover),var(--ns-primary-deep));
  color:var(--ns-primary-contrast); font-weight:900; letter-spacing:-.04em;
  box-shadow:0 12px 30px rgba(244,183,62,.18);
}
.ns-loader-card p { margin: 0 0 14px; color: var(--ns-text-2); }
.ns-loader-bar { height: 5px; background:rgba(255,255,255,.08); border-radius: 999px; overflow: hidden; }
.ns-loader-bar span { display:block; width:45%; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--ns-primary-deep),var(--ns-primary-hover)); box-shadow:0 0 15px rgba(244,183,62,.28); animation:nsLoad 1s ease-in-out infinite alternate; }
@keyframes nsLoad { from{transform:translateX(-40%)} to{transform:translateX(160%)} }
.loader-bolinha { width:32px; height:32px; border:3px solid rgba(244,183,62,.16); border-top-color:var(--ns-primary-hover); border-radius:50%; box-shadow:0 0 18px rgba(244,183,62,.08); animation:spin .8s linear infinite; }
.spinner-botao { width:16px; height:16px; flex:0 0 16px; border:2px solid rgba(17,24,32,.28); border-top-color:#111820; border-radius:50%; animation:spin .7s linear infinite; }
@keyframes spin { to{transform:rotate(360deg)} }

/* Cadastro V35 */
.cadastro-v35-page { background:linear-gradient(180deg,#050d15 0,#07131f 100%); color:var(--ns-text); }
.signup-shell {
  width: min(var(--ns-container), calc(100% - 40px));
  margin: 0 auto;
  min-height: calc(100vh - 72px);
  padding: 58px 0 64px;
  display: grid;
  grid-template-columns: minmax(0,.88fr) minmax(440px,1fr);
  align-items: center;
  gap: clamp(40px,7vw,86px);
}
.signup-intro { max-width: 560px; }
.signup-eyebrow, .signup-step {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 7px 10px;
  border-radius: 999px;
  background: var(--ns-primary-soft);
  color: var(--ns-primary-hover);
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.signup-intro h1 { margin: 18px 0 16px; font-size: clamp(36px,4vw,56px); line-height: 1.03; color: var(--ns-navy); }
.signup-intro > p { max-width: 520px; margin-bottom: 28px; color: var(--ns-muted); font-size: 17px; line-height: 1.7; }
.signup-trust-grid { display: grid; gap: 14px; }
.signup-trust-grid article { display: flex; gap: 14px; align-items: flex-start; }
.signup-trust-icon { width: 34px; height:34px; display:grid; place-items:center; border-radius:10px; background:var(--ns-surface); color:var(--ns-primary); border:1px solid var(--ns-border); box-shadow:var(--ns-shadow-sm); font-weight:800; font-size:12px; }
.signup-trust-grid article div { min-width: 0; display:grid; gap:2px; }
.signup-trust-grid strong { color:var(--ns-text); font-size:14px; }
.signup-trust-grid small { color:var(--ns-muted); line-height:1.45; }
.signup-note { margin-top:26px; display:flex; align-items:flex-start; gap:11px; padding:14px 15px; border:1px solid #6b5930; border-radius:14px; background:#1c1a12; }
.signup-note > span { width:22px; height:22px; flex:0 0 22px; display:grid; place-items:center; border-radius:50%; background:var(--ns-primary); color:var(--ns-primary-contrast); font-size:11px; font-weight:800; }
.signup-note p { margin:0; color:#d8bd7d; font-size:13px; line-height:1.5; }
.signup-card { padding: clamp(24px,3.2vw,38px); border:1px solid var(--ns-border); border-radius:26px; background:var(--ns-surface); box-shadow:var(--ns-shadow); }
.signup-card-head { display:grid; gap:14px; margin-bottom:26px; }
.signup-card-head h2 { margin:10px 0 4px; font-size:27px; }
.signup-card-head p { margin:0; color:var(--ns-muted); }
.signup-progress { width:100%; height:5px; border-radius:999px; background:rgba(255,255,255,.08); overflow:hidden; }
.signup-progress span { display:block; width:50%; height:100%; background:linear-gradient(90deg,var(--ns-primary),#ffc95f); border-radius:inherit; }
.signup-form { display:grid; gap:17px; }
.signup-legal { display:flex; align-items:flex-start; gap:10px; padding:2px 0; color:var(--ns-text-2); font-size:12px; line-height:1.5; cursor:pointer; }
.signup-legal input { width:17px; height:17px; margin:2px 0 0; flex:0 0 17px; accent-color:var(--ns-primary); }
.signup-legal a { font-weight:700; }
.signup-legal.legal-aceite-alerta { padding:11px; border-radius:10px; background:var(--ns-danger-soft); outline:1px solid #fecaca; }
.signup-submit, .onboarding-primary, .botao-login-premium, .botao-recuperar-senha, .botao-cadastro-premium, .botao-final-premium, .botao-grande {
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid var(--ns-primary);
  border-radius:12px;
  padding:0 18px;
  background:var(--ns-primary);
  color:var(--ns-primary-contrast) !important;
  font-weight:800;
  box-shadow:0 9px 20px rgba(244,183,62,.16);
  transition:background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.signup-submit { width:100%; justify-content:space-between; padding:0 18px 0 20px; }
.signup-submit:hover, .onboarding-primary:hover, .botao-login-premium:hover, .botao-recuperar-senha:hover, .botao-grande:hover { background:var(--ns-primary-hover); box-shadow:0 12px 26px rgba(244,183,62,.22); transform:translateY(-1px); }
.signup-login-link { margin:19px 0 0; text-align:center; color:var(--ns-muted); font-size:13px; }
.signup-login-link a { font-weight:750; }
.campo-cidade-inteligente { position:relative; }
.sugestoes-cidade, .sugestoes-busca {
  position:absolute; z-index:60; top:calc(100% + 6px); left:0; right:0; display:none; max-height:260px; overflow:auto;
  padding:7px; border:1px solid var(--ns-border); border-radius:13px; background:var(--ns-surface); box-shadow:var(--ns-shadow);
}
.sugestoes-cidade.ativo, .sugestoes-busca.ativo, .sugestoes-cidade:not(:empty) { display:block; }
.sugestoes-cidade button, .sugestoes-busca button, .sugestao-item { width:100%; border:0; background:transparent; color:var(--ns-text); text-align:left; padding:10px 11px; border-radius:9px; }
.sugestoes-cidade button:hover, .sugestoes-busca button:hover, .sugestao-item:hover { background:var(--ns-primary-soft); color:var(--ns-primary-hover); }
.sugestao-item { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.sugestao-item span { color:var(--ns-text); font-weight:700; }
.sugestao-item small { color:var(--ns-muted); }

/* Onboarding / completar perfil */
.onboarding-v35-page { background:var(--ns-bg); }
.onboarding-shell { width:min(var(--ns-container),calc(100% - 40px)); margin:0 auto; padding:42px 0 64px; }
.onboarding-hero {
  display:grid; grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr); gap:28px; align-items:end; margin-bottom:28px;
  padding:34px; border-radius:24px; background:linear-gradient(135deg,var(--ns-navy),#142331); color:#fff; box-shadow:var(--ns-shadow);
}
.onboarding-hero h1 { margin:13px 0 10px; color:#fff; font-size:clamp(28px,4vw,44px); line-height:1.06; }
.onboarding-hero p { margin:0; color:#ead6a5; max-width:700px; }
.onboarding-hero .signup-eyebrow { background:rgba(255,255,255,.12); color:#fff; }
.profile-strength-card { padding:18px; border:1px solid rgba(255,255,255,.16); border-radius:17px; background:rgba(255,255,255,.09); color:#fff; }
.profile-strength-top { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:11px; }
.profile-strength-top span { color:#ead6a5; font-size:12px; font-weight:650; }
.profile-strength-top strong { color:#fff; font-size:20px; }
.profile-strength-bar { height:8px; border-radius:999px; background:rgba(255,255,255,.14); overflow:hidden; }
.profile-strength-bar span { display:block; height:100%; border-radius:inherit; background:#ffc95f; transition:width .3s ease; }
.profile-strength-card small { display:block; margin-top:10px; color:#ead6a5; line-height:1.4; }
.onboarding-access-card { max-width:640px; margin:34px auto; display:flex; align-items:flex-start; gap:18px; padding:28px; border:1px solid var(--ns-border); border-radius:20px; background:var(--ns-surface); box-shadow:var(--ns-shadow-sm); }
.onboarding-step-number { width:36px; height:36px; flex:0 0 36px; display:grid; place-items:center; border-radius:11px; background:var(--ns-primary); color:var(--ns-primary-contrast); font-weight:800; }
.onboarding-access-content { flex:1; min-width:0; display:grid; gap:14px; }
.onboarding-access-content h2 { margin:0; font-size:22px; }
.onboarding-access-content > p { margin:0; color:var(--ns-muted); }
.onboarding-link-btn { width:fit-content; border:0; background:transparent; color:var(--ns-primary); font-weight:700; padding:5px 0; }
.onboarding-content { display:grid; grid-template-columns:300px minmax(0,1fr); gap:24px; align-items:start; }
.onboarding-checklist { position:sticky; top:94px; padding:22px; border:1px solid var(--ns-border); border-radius:20px; background:var(--ns-surface); box-shadow:var(--ns-shadow-sm); }
.onboarding-person-summary { display:flex; gap:12px; align-items:center; padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid var(--ns-border); }
.onboarding-avatar-wrap { position:relative; width:52px; height:52px; flex:0 0 52px; border-radius:15px; overflow:hidden; background:var(--ns-primary-soft); display:grid; place-items:center; }
.onboarding-avatar-wrap img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.onboarding-avatar-wrap img.sem-foto { display:none; }
.onboarding-avatar-wrap span { color:var(--ns-primary); font-size:18px; font-weight:800; }
.onboarding-person-summary div:last-child { min-width:0; display:grid; gap:2px; }
.onboarding-person-summary strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--ns-text); }
.onboarding-person-summary small { color:var(--ns-muted); }
.onboarding-checklist h2 { margin:0 0 14px; font-size:16px; }
.checklist-items { display:grid; gap:7px; }
.checklist-items > div { display:flex; align-items:flex-start; gap:10px; padding:9px; border-radius:11px; }
.checklist-items > div > span { width:22px; height:22px; flex:0 0 22px; display:grid; place-items:center; border-radius:50%; background:var(--ns-surface-3); color:#8493a2; font-size:11px; font-weight:800; }
.checklist-items > div.concluido { background:var(--ns-success-soft); }
.checklist-items > div.concluido > span { background:var(--ns-success); color:#fff; }
.checklist-items p { margin:0; display:grid; gap:1px; }
.checklist-items strong { color:var(--ns-text); font-size:12px; }
.checklist-items small { color:var(--ns-muted); font-size:11px; }
.onboarding-skip { display:block; margin-top:16px; padding-top:14px; border-top:1px solid var(--ns-border); text-align:center; font-size:12px; font-weight:700; color:var(--ns-muted); }
.onboarding-form-card { padding:30px; border:1px solid var(--ns-border); border-radius:22px; background:var(--ns-surface); box-shadow:var(--ns-shadow-sm); }
.onboarding-form-head { margin-bottom:24px; }
.onboarding-form-head h2 { margin:10px 0 4px; font-size:27px; }
.onboarding-form-head p { margin:0; color:var(--ns-muted); }
.onboarding-form { display:grid; gap:20px; }
.onboarding-photo-field { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px; border:1px dashed #8f7131; border-radius:14px; background:#0d1c2b; }
.onboarding-photo-copy { display:grid; gap:3px; }
.onboarding-photo-copy strong { color:var(--ns-text); }
.onboarding-photo-copy small { color:var(--ns-muted); }
.onboarding-upload { flex:0 0 auto; }
.onboarding-upload input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.onboarding-upload span { display:inline-flex; min-height:42px; align-items:center; justify-content:center; padding:0 14px; border-radius:10px; background:var(--ns-surface); border:1px solid var(--ns-border-strong); color:var(--ns-text-2); font-size:12px; font-weight:750; cursor:pointer; }
.onboarding-readonly-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.onboarding-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.onboarding-secondary { min-height:50px; display:inline-flex; align-items:center; justify-content:center; padding:0 17px; border:1px solid var(--ns-border-strong); border-radius:12px; background:var(--ns-surface); color:var(--ns-text-2); font-weight:750; }
.onboarding-success { margin-top:18px; display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:12px; padding:15px; border:1px solid rgba(50,213,131,.28); border-radius:14px; background:var(--ns-success-soft); }
.onboarding-success > span { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:var(--ns-success); color:#fff; font-weight:800; }
.onboarding-success strong { color:#bbf7d0; }
.onboarding-success p { margin:2px 0 0; color:#8fe0b4; font-size:12px; }
.onboarding-success a { font-size:12px; font-weight:800; color:#bbf7d0; }

/* Home */
.hero {
  position:relative; overflow:hidden; padding:clamp(64px,8vw,100px) 20px 70px; text-align:center;
  background:linear-gradient(135deg,#050d15 0%,#0d1c2b 58%,#142331 100%); color:#fff;
}
.hero::before { content:""; position:absolute; width:460px; height:460px; border-radius:50%; right:-190px; top:-210px; background:rgba(244,183,62,.12); }
.hero h1 { position:relative; max-width:900px; margin:0 auto; color:#fff; font-size:clamp(36px,6vw,64px); line-height:1.02; }
.hero p { position:relative; max-width:720px; margin:18px auto 0; color:#ead6a5; font-size:17px; }
.hero-title-break { display:block; }
.busca-box { position:relative; z-index:4; width:min(850px,100%); margin:32px auto 18px; display:flex; align-items:center; gap:9px; padding:8px; border:1px solid rgba(255,255,255,.16); border-radius:17px; background:rgba(255,255,255,.10); backdrop-filter:blur(12px); }
.busca-inteligente-area { position:relative; flex:1; min-width:0; }
.input-busca { min-height:54px; display:flex; align-items:center; gap:10px; padding:0 15px; border-radius:12px; background:var(--ns-surface); }
.icone-busca { width:22px; min-width:22px; color:var(--ns-muted); line-height:1; }
.input-busca input { min-height:auto !important; border:0 !important; box-shadow:none !important; padding:0 !important; color:var(--ns-text) !important; background:transparent !important; }
.busca-box > button { min-height:54px; border:0; border-radius:12px; padding:0 22px; background:var(--ns-primary); color:var(--ns-primary-contrast); font-weight:800; }
.categorias { position:relative; z-index:2; display:flex; justify-content:center; flex-wrap:wrap; gap:8px; max-width:900px; margin:0 auto; }
.categorias button { border:1px solid rgba(255,255,255,.18); border-radius:999px; background:rgba(255,255,255,.08); color:#fff; padding:9px 13px; font-size:12px; font-weight:700; }
.categorias button:hover { background:var(--ns-surface); color:var(--ns-navy); }
.hero-acoes-premium { position:relative; z-index:2; margin-top:24px; display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap; }
.hero-cta-principal, .hero-cta-secundario { min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:0 16px; border-radius:11px; font-weight:750; }
.hero-cta-principal { background:var(--ns-surface); color:var(--ns-navy) !important; }
.hero-cta-secundario { border:1px solid rgba(255,255,255,.22); color:#fff !important; background:rgba(255,255,255,.08); }
.secao, .como-funciona, .por-que-premium, .home-planos, .home-indique-ganhe { width:min(var(--ns-container),calc(100% - 40px)); margin:0 auto; padding:64px 0; }
.secao > h2, .como-funciona > h2, .por-que-header h2, .home-planos h2 { font-size:clamp(26px,3vw,38px); margin-bottom:10px; }
.grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.card, .card-premium-v22 { min-width:0; display:flex; align-items:flex-start; gap:16px; padding:20px; border:1px solid var(--ns-border); border-radius:18px; background:var(--ns-surface); color:var(--ns-text); box-shadow:var(--ns-shadow-sm); }
.card:hover { border-color:#6b5930; box-shadow:0 14px 34px rgba(0,0,0,.28); }
.foto-card { width:82px; height:82px; flex:0 0 82px; display:grid; place-items:center; overflow:hidden; border-radius:18px; background:var(--ns-primary-soft); color:var(--ns-primary); font-size:26px; font-weight:800; }
.foto-card img { width:100%; height:100%; object-fit:cover; }
.card-conteudo-mobile { flex:1; min-width:0; }
.nome-profissional-linha { margin:0 0 4px; display:flex; align-items:flex-start; gap:7px; color:var(--ns-text); font-size:17px; line-height:1.2; }
.nome-profissional-linha > span:first-child { min-width:0; }
.profissao { margin:0 0 9px; color:var(--ns-primary); font-size:13px; font-weight:750; }
.descricao-card, .atende-card, .atendimento-card, .avaliacao-card, .whatsapp-card { margin:7px 0; color:var(--ns-muted); font-size:12px; line-height:1.5; }
.whatsapp-card { color:#4ade80; font-weight:700; }
.selos { display:flex; flex-wrap:wrap; gap:5px; margin:11px 0; }
.selos p, .plano-status-card, .selo-pago-card { margin:0; padding:5px 7px; border-radius:7px; background:var(--ns-surface-3); color:#aab7c3; font-size:10px; font-weight:700; }
.plano-status-card.ativo, .selo-pago-card { background:#1c1a12; color:#d99716; }
.acoes-card { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:13px; }
.acoes-card a { min-height:38px; display:inline-flex; align-items:center; justify-content:center; padding:0 12px; border:1px solid var(--ns-border); border-radius:10px; color:var(--ns-text-2); font-size:11px; font-weight:750; }
.acoes-card a.whatsapp { background:#16a34a; border-color:#16a34a; color:#fff; }
.badge-destaque-home { display:inline-flex; padding:6px 9px; border-radius:999px; background:var(--ns-primary-soft); color:var(--ns-primary); font-size:10px; font-weight:800; }
.texto-destaque-home { color:var(--ns-muted); }
.passos, .por-que-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:24px; }
.passos > div, .por-que-card { padding:22px; border:1px solid var(--ns-border); border-radius:18px; background:var(--ns-surface); box-shadow:var(--ns-shadow-sm); }
.passos strong, .por-que-icone { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:var(--ns-primary-soft); color:var(--ns-primary); }
.por-que-card h3 { margin:14px 0 7px; }
.por-que-card p { margin:0; color:var(--ns-muted); }
.por-que-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.por-que-tags span { padding:5px 7px; border-radius:7px; background:var(--ns-surface-3); color:#aab7c3; font-size:10px; }

/* Login / recuperação */
.login-profissional-premium-page, .recuperar-senha-page { background:var(--ns-bg); }
.login-profissional-premium-shell, .recuperar-senha-shell { width:min(1060px,calc(100% - 40px)); margin:0 auto; min-height:calc(100vh - 72px); padding:54px 0; display:grid; grid-template-columns:1fr 430px; gap:50px; align-items:center; }
.login-profissional-showcase, .recuperar-senha-visual { padding:36px; border-radius:24px; background:linear-gradient(135deg,var(--ns-navy),#142331); color:#fff; box-shadow:var(--ns-shadow); }
.login-profissional-showcase h1, .login-profissional-showcase h2, .recuperar-senha-visual h1, .recuperar-senha-visual h2 { color:#fff; }
.login-profissional-showcase p, .recuperar-senha-visual p, .login-profissional-showcase small, .recuperar-senha-visual small { color:#ead6a5; }
.login-premium-kicker, .login-badge { display:inline-flex; padding:6px 9px; border-radius:999px; background:rgba(255,255,255,.1); color:#fff; font-size:10px; font-weight:800; }
.login-premium-beneficios, .recuperar-senha-passos { display:grid; gap:10px; margin-top:22px; }
.login-premium-beneficios > div, .recuperar-senha-passos > div { padding:12px; border-radius:12px; background:rgba(255,255,255,.08); color:#fff; }
.login-premium-nota { margin-top:18px; color:#ead6a5; font-size:12px; }
.login-profissional-card, .login-profissional-card-premium, .recuperar-senha-card { padding:30px; border:1px solid var(--ns-border); border-radius:22px; background:var(--ns-surface); box-shadow:var(--ns-shadow-sm); }
.login-card-topo h2, .recuperar-senha-card h2 { margin-bottom:6px; }
.login-card-topo p { color:var(--ns-muted); }
.login-profissional-form, .recuperar-senha-form { display:grid; gap:16px; }
.login-input-premium { display:grid; gap:7px; }
.botao-login-premium, .botao-recuperar-senha { width:100%; }
.login-links-profissional, .login-links-profissional-premium { display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-top:16px; font-size:12px; }
.link-recuperar-senha { font-weight:700; }
.recuperar-senha-alerta { padding:12px; border-radius:11px; background:var(--ns-warning-soft); color:#f6d28d; font-size:12px; }

/* Planos */
.planos-page { background:var(--ns-bg); }
.premium-planos { width:min(var(--ns-container),calc(100% - 40px)); margin:0 auto; padding:52px 0 68px; }
.planos-hero-premium { padding:38px; border-radius:24px; background:linear-gradient(135deg,var(--ns-navy),#142331); color:#fff; text-align:center; box-shadow:var(--ns-shadow); }
.planos-hero-premium h1, .planos-hero-premium h2 { color:#fff; }
.planos-hero-premium p, .planos-mini-info { color:#ead6a5; }
.planos-badge-premium { display:inline-flex; padding:6px 9px; border-radius:999px; background:rgba(255,255,255,.1); color:#fff; font-size:10px; font-weight:800; }
.planos-grid-premium { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:28px; }
.plano-card-premium, .plano-card { position:relative; display:flex; flex-direction:column; min-width:0; padding:25px; border:1px solid var(--ns-border); border-radius:20px; background:var(--ns-surface); color:var(--ns-text); box-shadow:var(--ns-shadow-sm); }
.plano-recomendado { border:2px solid var(--ns-primary); transform:translateY(-5px); }
.plano-selo-premium { position:absolute; top:12px; right:12px; padding:5px 8px; border-radius:999px; background:var(--ns-primary); color:var(--ns-primary-contrast); font-size:9px; font-weight:800; }
.plano-card-header { display:grid; gap:7px; }
.plano-nivel { color:var(--ns-primary); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.plano-preco-premium { margin:13px 0; color:var(--ns-text); font-size:32px; font-weight:800; }
.plano-beneficios-premium { display:grid; gap:8px; padding:0; margin:13px 0 22px; list-style:none; }
.plano-beneficios-premium li { color:var(--ns-text-2); font-size:13px; }
.plano-footer { margin-top:auto; }
.plano-botao-premium { width:100%; min-height:46px; display:inline-flex; align-items:center; justify-content:center; border-radius:11px; background:var(--ns-primary); color:var(--ns-primary-contrast) !important; font-weight:800; }
.planos-indique-ganhe, .planos-comparativo-premium, .planos-final-premium { margin-top:28px; padding:28px; border:1px solid var(--ns-border); border-radius:20px; background:var(--ns-surface); }
.planos-indique-card, .planos-indique-regras, .comparativo-lista-premium { display:grid; gap:10px; }
.planos-pix-discreto { color:var(--ns-muted); font-size:12px; }
.efi-modal { position:fixed; inset:0; z-index:10000; display:none; place-items:center; padding:20px; background:rgba(4,11,18,.82); backdrop-filter:blur(5px); }
.efi-modal.ativo { display:grid; }
.efi-modal-card { position:relative; width:min(500px,100%); max-height:90vh; overflow:auto; padding:28px; border-radius:22px; background:var(--ns-surface); color:var(--ns-text); box-shadow:var(--ns-shadow-lg); }
.efi-modal-card h2, .efi-modal-card h3, .efi-modal-card p, .efi-modal-card span { color:var(--ns-text); }
.efi-modal-fechar { position:absolute; right:14px; top:14px; width:36px; height:36px; display:grid; place-items:center; border:0; border-radius:10px; background:var(--ns-surface-3); color:var(--ns-text); font-size:20px; }
.efi-modal-badge { color:var(--ns-primary) !important; font-weight:800; }
.efi-qrcode-box { width:220px; min-height:220px; margin:18px auto; display:grid; place-items:center; border:1px solid var(--ns-border); border-radius:14px; background:var(--ns-surface); }
.efi-copia-label { color:var(--ns-text-2); font-size:12px; font-weight:700; }
.efi-modal-acoes { display:flex; gap:9px; flex-wrap:wrap; margin-top:14px; }
.efi-modal-acoes button { min-height:43px; display:inline-flex; align-items:center; justify-content:center; padding:0 14px; border:1px solid var(--ns-border-strong); border-radius:10px; background:var(--ns-surface); color:var(--ns-text-2); font-weight:700; }
.efi-modal-acoes button:first-child { background:var(--ns-primary); border-color:var(--ns-primary); color:var(--ns-primary-contrast); }
.efi-status { padding:10px; border-radius:10px; background:var(--ns-surface-2); color:var(--ns-text-2); font-size:12px; }

/* Painel profissional */
.painel-profissional-page, .painel-profissional-premium-page, .editar-profissional-premium-page { background:var(--ns-bg); }
.painel-profissional-header, .painel-profissional-header-premium { width:min(var(--ns-container),calc(100% - 40px)); margin:30px auto 0; padding:28px; border-radius:20px; background:linear-gradient(135deg,var(--ns-navy),#142331); color:#fff; }
.painel-profissional-header h1, .painel-profissional-header h2, .painel-profissional-header-premium h1, .painel-profissional-header-premium h2 { color:#fff; }
.painel-profissional-header p, .painel-profissional-header-premium p { color:#ead6a5; }
.painel-status-grid, .painel-status-grid-premium { width:min(var(--ns-container),calc(100% - 40px)); margin:18px auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.status-card, .painel-box-badge { padding:17px; border:1px solid var(--ns-border); border-radius:16px; background:var(--ns-surface); color:var(--ns-text); box-shadow:var(--ns-shadow-sm); }
.status-card strong, .painel-box-badge strong { display:block; color:var(--ns-text); }
.status-card span, .painel-box-badge span { color:var(--ns-muted); font-size:12px; }
.painel-profissional-grid, .painel-profissional-grid-premium { width:min(var(--ns-container),calc(100% - 40px)); margin:18px auto 30px; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:18px; align-items:start; }
.painel-card-principal, .painel-card-principal-premium, .painel-extra-card, .painel-indicacoes-card, .painel-privacidade-card { padding:22px; border:1px solid var(--ns-border); border-radius:18px; background:var(--ns-surface); color:var(--ns-text); box-shadow:var(--ns-shadow-sm); }
.painel-card-conteudo-premium { display:grid; gap:16px; }
.painel-foto-profissional { width:90px; height:90px; overflow:hidden; border-radius:20px; background:var(--ns-primary-soft); }
.painel-foto-profissional img { width:100%; height:100%; object-fit:cover; }
.painel-nome { margin:0; color:var(--ns-text); }
.painel-chip-row { display:flex; gap:6px; flex-wrap:wrap; }
.painel-chip-row span, .painel-plano-chip { padding:5px 7px; border-radius:999px; background:var(--ns-surface-3); color:#aab7c3; font-size:10px; font-weight:700; }
.painel-descricao-preview { color:var(--ns-muted); }
.painel-info-lista { display:grid; gap:9px; }
.painel-info-lista p { margin:0; color:var(--ns-text-2); }
.painel-acoes-profissional, .painel-acoes-premium, .painel-acoes-topo, .painel-privacidade-acoes { display:flex; flex-wrap:wrap; gap:8px; }
.painel-acao { min-height:42px; display:inline-flex; align-items:center; gap:8px; justify-content:center; padding:0 13px; border:1px solid var(--ns-border-strong); border-radius:10px; background:var(--ns-surface); color:var(--ns-text-2); font-size:12px; font-weight:750; }
.painel-acao:hover { border-color:#8f7131; color:var(--ns-primary); background:var(--ns-primary-soft); }
.painel-acao.sair, .sair { color:var(--ns-danger); }
.painel-profissional-extra-grid { width:min(var(--ns-container),calc(100% - 40px)); margin:0 auto 60px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.painel-forca-perfil { height:8px; border-radius:999px; background:rgba(255,255,255,.08); overflow:hidden; }
.painel-forca-perfil span { display:block; height:100%; background:var(--ns-primary); }
.indicacoes-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.indicacoes-stats article, .finance-card { padding:14px; border:1px solid var(--ns-border); border-radius:13px; background:var(--ns-surface-2); }
.indicacoes-stats strong, .finance-card strong { color:var(--ns-text); }
.indicacoes-stats span, .finance-card span { display:block; color:var(--ns-muted); font-size:11px; }
.indicacoes-lista { display:grid; gap:8px; }
.indicacao-item { padding:12px; border:1px solid var(--ns-border); border-radius:12px; background:var(--ns-surface); }
.indicacoes-saque-box, .indicacoes-saque-box-completo { padding:16px; border:1px solid var(--ns-border); border-radius:14px; background:var(--ns-surface-2); }
.indicacoes-saque-form { display:grid; gap:10px; }
.indicacoes-saque-acoes { display:flex; gap:8px; flex-wrap:wrap; }
.btn-salvar-pix-indicacao { min-height:42px; border:0; border-radius:10px; background:var(--ns-primary); color:var(--ns-primary-contrast); font-weight:750; padding:0 14px; }

/* Editar perfil */
.editar-layout { width:min(900px,calc(100% - 40px)); margin:36px auto 64px; padding:28px; border:1px solid var(--ns-border); border-radius:22px; background:var(--ns-surface); box-shadow:var(--ns-shadow-sm); }
.voltar-painel, .botao-voltar-perfil { display:inline-flex; align-items:center; gap:7px; margin-bottom:18px; color:var(--ns-muted); font-size:12px; font-weight:750; }
.editar-mini-alerta { padding:12px; border-radius:11px; background:var(--ns-primary-soft); color:#d8bd7d; font-size:12px; }
.grupo-form-premium { padding:18px 0; border-bottom:1px solid var(--ns-border); }
.grupo-form-premium:last-of-type { border-bottom:0; }
.grupo-form-premium h3 { margin:0 0 12px; font-size:16px; }
.servicos-tags-box, .servicos-selecionados, .cidades-selecionadas { display:flex; flex-wrap:wrap; gap:7px; }
.servicos-tags-box button, .servicos-selecionados span, .cidades-selecionadas span { border:1px solid var(--ns-border); border-radius:999px; background:var(--ns-surface); color:var(--ns-text-2); padding:7px 9px; font-size:11px; }
.servicos-tags-box button.ativo { background:var(--ns-primary); border-color:var(--ns-primary); color:var(--ns-primary-contrast); }
.servicos-selecionados span button, .cidades-selecionadas span button { border:0; background:transparent; color:var(--ns-danger); padding:0 0 0 5px; }
.servico-extra-linha { display:flex; gap:8px; }
.servico-extra-linha button { min-width:42px; border:0; border-radius:10px; background:var(--ns-primary); color:var(--ns-primary-contrast); }
.aviso-foto, .campo-ajuda-foto { color:var(--ns-muted); font-size:11px; }
.grupo-imagens-edicao, .preview-imagens-edicao { display:grid; gap:14px; }
.preview-trabalhos-atual { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.foto-servico-editavel { position:relative; min-height:120px; overflow:hidden; border-radius:12px; background:var(--ns-surface-3); }
.foto-servico-editavel img { width:100%; height:100%; object-fit:cover; }

/* Perfil público */
.pagina-perfil { background:var(--ns-bg); }
.perfil-container { width:min(980px,calc(100% - 40px)); margin:34px auto 64px; }
.perfil-conteudo { display:grid; gap:18px; }
.perfil-capa, .perfil-hero-compacto-premium { position:relative; overflow:hidden; padding:30px; border-radius:22px; background:linear-gradient(135deg,var(--ns-navy),#142331); color:#fff; box-shadow:var(--ns-shadow); }
.perfil-capa h1, .perfil-capa h2, .perfil-hero-compacto-premium h1, .perfil-hero-compacto-premium h2, .perfil-hero-texto h1, .perfil-hero-texto h2, .perfil-nome { color:#fff; }
.perfil-capa p, .perfil-hero-compacto-premium p, .perfil-hero-texto p, .perfil-meta { color:#ead6a5; }
.perfil-premium { display:grid; grid-template-columns:220px minmax(0,1fr); gap:24px; align-items:start; }
.perfil-lateral { display:grid; gap:14px; }
.perfil-foto-area, .perfil-foto-premium { width:180px; height:180px; overflow:hidden; border-radius:26px; background:var(--ns-surface); border:4px solid rgba(255,255,255,.16); }
.perfil-foto-area img, .perfil-foto-premium img { width:100%; height:100%; object-fit:cover; }
.perfil-lateral-info { color:#fff; }
.perfil-lateral-info p, .perfil-lateral-info strong, .perfil-lateral-info span { color:#fff; }
.perfil-section-clean { padding:24px; border:1px solid var(--ns-border); border-radius:18px; background:var(--ns-surface); color:var(--ns-text); box-shadow:var(--ns-shadow-sm); }
.perfil-section-clean h2, .perfil-section-clean h3 { color:var(--ns-text); }
.perfil-section-clean p { color:var(--ns-text-2); }
.perfil-info-compact-grid, .perfil-hero-mini-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.perfil-info-compact-grid > div, .perfil-hero-mini-stats > div { padding:12px; border:1px solid var(--ns-border); border-radius:12px; background:var(--ns-surface-2); }
.perfil-mini-label { color:var(--ns-muted); font-size:10px; font-weight:700; text-transform:uppercase; }
.servicos-premium, .servicos-premium-compacto { display:flex; flex-wrap:wrap; gap:7px; }
.servicos-premium span, .servicos-premium-compacto span { padding:7px 9px; border-radius:999px; background:var(--ns-primary-soft); color:var(--ns-primary-hover); font-size:11px; font-weight:700; }
.botao-whatsapp-premium { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 16px; border-radius:11px; background:#16a34a; color:#fff !important; font-weight:800; }
.galeria-carousel { overflow:hidden; border-radius:15px; }
.galeria-carousel-track { display:flex; transition:transform .35s ease; }
.galeria-slide { min-width:100%; aspect-ratio:16/10; background:var(--ns-surface-3); }
.galeria-slide img { width:100%; height:100%; object-fit:cover; }
.galeria-carousel-dots { display:flex; justify-content:center; gap:6px; margin-top:9px; }
.galeria-carousel-dots button { width:8px; height:8px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.12); }
.galeria-carousel-dots button.ativo { background:var(--ns-primary); }
.avaliacoes-header, .avaliacoes-header-elite { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; }
.avaliacoes-score-box { min-width:100px; padding:12px; border-radius:12px; background:var(--ns-primary-soft); text-align:center; }
.avaliacoes-score-box strong { display:block; color:var(--ns-primary); font-size:20px; }
.avaliacoes-score-box small { color:var(--ns-muted); }
.avaliacoes-lista, .avaliacoes-lista-elite { display:grid; gap:10px; }
.avaliacao-card-publica, .avaliacao-card-elite { padding:15px; border:1px solid var(--ns-border); border-radius:13px; background:var(--ns-surface); color:var(--ns-text); }
.avaliacao-card-topo { display:flex; align-items:center; gap:10px; }
.avaliacao-avatar { width:36px; height:36px; flex:0 0 36px; display:grid; place-items:center; border-radius:11px; background:var(--ns-primary-soft); color:var(--ns-primary); font-weight:800; }
.avaliacao-estrelas, .avaliacao-estrelas-elite { color:#d97706; }
.avaliacoes-vazio, .avaliacoes-vazio-elite { display:flex; gap:12px; align-items:flex-start; padding:15px; border-radius:13px; background:var(--ns-surface-2); }
.avaliacoes-empty-icon { width:36px; height:36px; flex:0 0 36px; display:grid; place-items:center; border-radius:10px; background:#261e0c; color:#d97706; }
.form-avaliacao, .form-avaliacao-elite { margin-top:18px; padding-top:18px; border-top:1px solid var(--ns-border); }
.form-avaliacao-grid, .form-avaliacao-grid-elite { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.avaliacao-submit-elite { min-height:44px; border:0; border-radius:10px; background:var(--ns-primary); color:var(--ns-primary-contrast); font-weight:750; padding:0 14px; }
.selo-verificado-premium { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; padding:3px 6px; border:1px solid rgba(244,183,62,.26); border-radius:999px; background:var(--ns-primary-soft); color:var(--ns-primary); font-size:9px; font-weight:800; white-space:nowrap; }

/* Documentos legais */
.legal-page { background:var(--ns-bg); }
.legal-hero { padding:52px 20px; background:linear-gradient(135deg,var(--ns-navy),#142331); text-align:center; color:#fff; }
.legal-hero h1, .legal-hero h2 { color:#fff; }
.legal-hero p { color:#ead6a5; }
.legal-tabs { width:min(900px,calc(100% - 40px)); margin:28px auto 64px; }
.legal-tab-buttons { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:14px; }
.legal-tab-buttons button { min-height:40px; border:1px solid var(--ns-border); border-radius:10px; background:var(--ns-surface); color:var(--ns-text-2); padding:0 12px; font-weight:700; }
.legal-tab-buttons button.ativo { background:var(--ns-primary); border-color:var(--ns-primary); color:var(--ns-primary-contrast); }
.legal-panel { padding:26px; border:1px solid var(--ns-border); border-radius:18px; background:var(--ns-surface); color:var(--ns-text); }
.legal-panel h2, .legal-panel h3, .legal-panel h4 { color:var(--ns-text); }
.legal-panel p, .legal-panel li { color:var(--ns-text-2); }
.legal-highlight { padding:12px; border-left:3px solid var(--ns-primary); background:var(--ns-primary-soft); color:#d8bd7d; }

/* Rodapé */
.rodape-minimo { margin-top:auto; padding:24px 20px; border-top:1px solid var(--ns-border); background:var(--ns-surface); color:var(--ns-muted); text-align:center; }
.rodape-minimo nav { display:flex; justify-content:center; flex-wrap:wrap; gap:6px 16px; margin-bottom:10px; }
.rodape-minimo nav a { color:var(--ns-muted); font-size:11px; font-weight:650; }
.rodape-minimo p { margin:4px 0; color:#718092; font-size:10px; }

/* Estados e utilidades */
.status-aprovado { background:var(--ns-success-soft) !important; color:#8fe0b4 !important; }
.status-pendente { background:var(--ns-warning-soft) !important; color:#f6d28d !important; }
.alerta { color:var(--ns-danger) !important; }
.aprovar { color:var(--ns-success) !important; }
.remover { color:var(--ns-danger) !important; }
.admin-vazio { width:100%; padding:30px; border:1px dashed var(--ns-border-strong); border-radius:16px; background:var(--ns-surface); text-align:center; color:var(--ns-muted); }
.admin-vazio h3 { color:var(--ns-text); margin-bottom:5px; }
.admin-vazio p { color:var(--ns-muted); margin:0; }

/* Contrast safety: superfícies escuras sempre usam texto claro */
.hero, .login-profissional-showcase, .recuperar-senha-visual, .planos-hero-premium,
.painel-profissional-header, .painel-profissional-header-premium, .perfil-capa,
.perfil-hero-compacto-premium, .onboarding-hero {
  --surface-text: #fff;
  --surface-muted: #ead6a5;
}
.hero :is(h1,h2,h3,h4,strong,label),
.login-profissional-showcase :is(h1,h2,h3,h4,strong,label),
.recuperar-senha-visual :is(h1,h2,h3,h4,strong,label),
.planos-hero-premium :is(h1,h2,h3,h4,strong,label),
.painel-profissional-header :is(h1,h2,h3,h4,strong,label),
.painel-profissional-header-premium :is(h1,h2,h3,h4,strong,label),
.perfil-capa :is(h1,h2,h3,h4,strong,label),
.perfil-hero-compacto-premium :is(h1,h2,h3,h4,strong,label),
.onboarding-hero :is(h1,h2,h3,h4,strong,label) { color:#fff; }
.hero :is(p,small), .login-profissional-showcase :is(p,small), .recuperar-senha-visual :is(p,small),
.planos-hero-premium :is(p,small), .painel-profissional-header :is(p,small), .painel-profissional-header-premium :is(p,small),
.perfil-capa :is(p,small), .perfil-hero-compacto-premium :is(p,small), .onboarding-hero :is(p,small) { color:#ead6a5; }

/* Responsivo */
@media (max-width: 1000px) {
  .signup-shell { grid-template-columns:1fr; max-width:760px; }
  .signup-intro { max-width:none; }
  .login-profissional-premium-shell, .recuperar-senha-shell { grid-template-columns:1fr; max-width:760px; }
  .planos-grid-premium { grid-template-columns:1fr; }
  .plano-recomendado { transform:none; }
  .onboarding-content { grid-template-columns:1fr; }
  .onboarding-checklist { position:static; }
  .painel-profissional-grid, .painel-profissional-grid-premium { grid-template-columns:1fr; }
  .grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .ns-header { min-height:64px; padding:0 16px; gap:10px; }
  .ns-logo strong { font-size:16px; }
  .ns-logo-icon { width:34px; height:34px; border-radius:10px; }
  .ns-nav { gap:3px; }
  .ns-nav a:not(.ns-nav-cta) { display:none; }
  .ns-nav .ns-nav-cta, .ns-nav-cta { min-height:38px; padding:0 12px; font-size:12px; }
  .signup-shell, .onboarding-shell, .premium-planos, .secao, .como-funciona, .por-que-premium, .home-planos, .home-indique-ganhe,
  .painel-profissional-header, .painel-profissional-header-premium, .painel-status-grid, .painel-status-grid-premium,
  .painel-profissional-grid, .painel-profissional-grid-premium, .painel-profissional-extra-grid, .perfil-container,
  .editar-layout, .legal-tabs { width:min(100% - 24px, var(--ns-container)); }
  .signup-shell { padding:28px 0 42px; gap:24px; }
  .signup-intro h1 { font-size:36px; }
  .signup-intro > p { font-size:15px; }
  .signup-card { padding:22px 18px; border-radius:20px; }
  .form-grid-2, .onboarding-readonly-grid, .form-avaliacao-grid, .form-avaliacao-grid-elite { grid-template-columns:1fr; }
  .onboarding-shell { padding-top:20px; }
  .onboarding-hero { grid-template-columns:1fr; padding:24px 19px; border-radius:19px; }
  .onboarding-hero h1 { font-size:30px; }
  .onboarding-form-card { padding:21px 17px; }
  .onboarding-photo-field { align-items:flex-start; flex-direction:column; }
  .onboarding-actions > * { width:100%; }
  .onboarding-success { grid-template-columns:34px 1fr; }
  .onboarding-success a { grid-column:2; }
  .hero { padding:55px 12px 48px; }
  .hero h1 { font-size:39px; }
  .hero p { font-size:14px; }
  .busca-box { flex-direction:column; background:transparent; border:0; padding:0; }
  .busca-inteligente-area, .busca-box > button { width:100%; }
  .categorias { justify-content:flex-start; flex-wrap:nowrap; overflow:auto; padding-bottom:5px; scrollbar-width:none; }
  .categorias::-webkit-scrollbar { display:none; }
  .categorias button { flex:0 0 auto; }
  .grid, .passos, .por-que-grid { grid-template-columns:1fr; }
  .card { padding:16px; gap:12px; }
  .foto-card { width:64px; height:64px; flex-basis:64px; border-radius:14px; }
  .acoes-card a { flex:1; }
  .login-profissional-premium-shell, .recuperar-senha-shell { width:calc(100% - 24px); padding:28px 0 44px; gap:18px; }
  .login-profissional-showcase, .recuperar-senha-visual { padding:25px 19px; }
  .login-profissional-card, .login-profissional-card-premium, .recuperar-senha-card { padding:22px 18px; }
  .premium-planos { padding-top:24px; }
  .planos-hero-premium { padding:26px 18px; }
  .painel-status-grid, .painel-status-grid-premium { grid-template-columns:1fr; }
  .painel-profissional-extra-grid { grid-template-columns:1fr; }
  .indicacoes-stats { grid-template-columns:1fr; }
  .perfil-premium { grid-template-columns:1fr; }
  .perfil-foto-area, .perfil-foto-premium { width:110px; height:110px; }
  .perfil-info-compact-grid, .perfil-hero-mini-stats { grid-template-columns:1fr; }
  .avaliacoes-header, .avaliacoes-header-elite { flex-direction:column; }
  .servico-extra-linha { flex-direction:column; }
  .preview-trabalhos-atual { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rodape-minimo { padding-bottom:30px; }
}
@media (max-width: 420px) {
  .signup-intro h1 { font-size:32px; }
  .signup-trust-grid small { font-size:11px; }
  .onboarding-access-card { padding:20px 15px; gap:12px; }
  .onboarding-step-number { width:32px; height:32px; flex-basis:32px; }
  .card { align-items:flex-start; }
  .foto-card { width:56px; height:56px; flex-basis:56px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

/* V35 visual audit fixes */
.field-control > input:not([type="checkbox"]):not([type="radio"]):not([type="file"]) { min-height:auto !important; border:0 !important; border-radius:0 !important; padding:12px 0 !important; background:transparent !important; box-shadow:none !important; }
.field-control > input:focus { box-shadow:none !important; }

/* Editar perfil V35 — composição profissional em duas áreas */
.cadastro-premium-page.editar-profissional-premium-page {
  min-height:calc(100vh - 70px);
  padding:32px 0 1px;
  background:var(--ns-bg);
}
.editar-profissional-premium-page .cadastro-premium-hero {
  width:min(var(--ns-container),calc(100% - 40px));
  margin:0 auto;
  padding:30px clamp(22px,4vw,42px);
  border-radius:22px;
  background:linear-gradient(135deg,var(--ns-navy),#142331);
  color:#fff;
  box-shadow:var(--ns-shadow);
}
.editar-profissional-premium-page .cadastro-premium-hero > span {
  display:inline-flex;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  color:#ead6a5;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.editar-profissional-premium-page .cadastro-premium-hero h1 {
  max-width:760px;
  margin:10px 0 8px;
  color:#fff;
  font-size:clamp(28px,4vw,42px);
  line-height:1.05;
}
.editar-profissional-premium-page .cadastro-premium-hero > p {
  max-width:760px;
  margin:0;
  color:#ead6a5;
}
.editar-profissional-premium-page .editar-mini-alerta {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:18px;
  padding:0;
  background:transparent;
}
.editar-profissional-premium-page .editar-mini-alerta span {
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:10px;
  font-weight:700;
}
.editar-profissional-premium-page .editar-layout {
  width:min(var(--ns-container),calc(100% - 40px));
  margin:20px auto 64px;
  padding:0;
  display:grid;
  grid-template-columns:minmax(250px,310px) minmax(0,1fr);
  align-items:stretch;
  overflow:hidden;
}
.editar-profissional-premium-page .cadastro-beneficios {
  min-width:0;
  padding:30px 25px;
  background:#0d1c2b;
  color:#fff;
}
.editar-profissional-premium-page .cadastro-beneficios-topo > span {
  color:#8f7131;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.editar-profissional-premium-page .cadastro-beneficios h2,
.editar-profissional-premium-page .cadastro-beneficios h3,
.editar-profissional-premium-page .cadastro-beneficios strong { color:#fff; }
.editar-profissional-premium-page .cadastro-beneficios p { color:#cbd5e1; }
.editar-profissional-premium-page .cadastro-beneficio-lista { display:grid; gap:10px; margin:22px 0; }
.editar-profissional-premium-page .cadastro-beneficio-lista > div {
  padding:13px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  background:rgba(255,255,255,.06);
}
.editar-profissional-premium-page .cadastro-beneficio-lista strong {
  display:inline-grid;
  place-items:center;
  width:26px;
  height:26px;
  margin-bottom:8px;
  border-radius:8px;
  background:rgba(255,255,255,.1);
  color:var(--ns-primary);
  font-size:10px;
}
.editar-profissional-premium-page .cadastro-beneficio-lista h3 { margin:0 0 3px; font-size:13px; }
.editar-profissional-premium-page .cadastro-beneficio-lista p { margin:0; font-size:11px; }
.editar-profissional-premium-page .voltar-painel {
  min-height:40px;
  justify-content:center;
  margin:0;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:10px;
  background:rgba(255,255,255,.07);
  color:#fff;
}
.editar-profissional-premium-page .cadastro-form-card { min-width:0; padding:30px clamp(20px,4vw,38px); background:var(--ns-surface); }
.editar-profissional-premium-page .cadastro-form-topo { padding-bottom:20px; border-bottom:1px solid var(--ns-border); }
.editar-profissional-premium-page .cadastro-form-topo > span { color:var(--ns-primary); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.editar-profissional-premium-page .cadastro-form-topo h2 { margin:5px 0; }
.editar-profissional-premium-page .cadastro-form-topo p { margin:0; color:var(--ns-muted); }
@media (max-width:820px) {
  .editar-profissional-premium-page .editar-layout { grid-template-columns:1fr; }
  .editar-profissional-premium-page .cadastro-beneficios { padding:24px 20px; }
  .editar-profissional-premium-page .cadastro-beneficio-lista { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .cadastro-premium-page.editar-profissional-premium-page { padding-top:16px; }
  .editar-profissional-premium-page .cadastro-premium-hero,
  .editar-profissional-premium-page .editar-layout { width:calc(100% - 24px); }
  .editar-profissional-premium-page .cadastro-premium-hero { padding:24px 18px; border-radius:17px; }
  .editar-profissional-premium-page .cadastro-beneficio-lista { grid-template-columns:1fr; }
  .editar-profissional-premium-page .cadastro-form-card { padding:24px 18px; }
}

/* Componentes dinâmicos V35 — selos, perfil e painel */
.selo-plano-verificado {
  flex:0 0 auto;
  max-width:100%;
  min-height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:4px 7px;
  border-radius:999px;
  background:var(--ns-primary);
  color:var(--ns-primary-contrast) !important;
  font-size:9px;
  font-weight:850;
  line-height:1;
  white-space:nowrap;
  vertical-align:middle;
}
.selo-plano-verificado.verificado { background:#261e0c; color:#f4b73e !important; box-shadow:none; }
.selo-plano-verificado.destaque { background:linear-gradient(135deg,#f4b73e,#d99716); }
.selo-plano-verificado.profissional { background:linear-gradient(135deg,#241b0d,#f4b73e); }
.selo-plano-verificado.premium { background:linear-gradient(135deg,#d97706,#f4b73e); }
.selo-plano-verificado.perfil, .selo-plano-verificado.painel { min-height:26px; padding:5px 9px; font-size:10px; }
.nome-profissional-linha .selo-plano-verificado { margin-top:0; }
.servicos-placeholder { margin:0; color:var(--ns-muted); font-size:12px; }
.servico-extra-box, .box-cidades-atendidas { display:grid; gap:8px; margin-top:12px; }
.perfil-section-mini { padding:14px; border:1px solid var(--ns-border); border-radius:13px; background:var(--ns-surface-2); }
.perfil-section-mini h3 { margin:0 0 7px; color:var(--ns-text); font-size:13px; }
.perfil-section-mini p { margin:4px 0; color:var(--ns-muted); }
.perfil-atendimento-lista { display:grid; gap:7px; }
.perfil-atendimento-lista p { margin:0; padding:9px 11px; border:1px solid var(--ns-border); border-radius:11px; background:var(--ns-surface-2); color:var(--ns-text-2); }
.perfil-fotos-compacto { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.perfil-fotos-compacto img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:12px; }
.avaliacao-identidade { min-width:0; flex:1; }
.avaliacao-identidade strong, .avaliacao-identidade small { display:block; overflow-wrap:anywhere; }
.avaliacao-identidade strong { color:var(--ns-text); }
.avaliacao-identidade small { color:var(--ns-muted); font-size:10px; }
.avaliacao-nota-badge { flex:0 0 auto; display:inline-flex; align-items:center; padding:5px 7px; border-radius:999px; background:#261e0c; color:#c2410c !important; font-size:10px; font-weight:800; }
.avaliacao-comentario-linha { color:var(--ns-text-2); overflow-wrap:anywhere; }
.avaliacao-mini-selo { display:inline-flex; align-items:center; padding:4px 6px; border-radius:999px; background:var(--ns-primary-soft); color:#d99716; font-size:9px; font-weight:800; }
.form-avaliacao-topo, .form-avaliacao-topo-elite { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.painel-dicas-compactas { display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
.painel-dicas-compactas span { padding:6px 8px; border-radius:999px; background:var(--ns-surface-3); color:#aab7c3; font-size:9px; font-weight:700; }
.painel-linha-plano { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.painel-plano-cta, .indicacoes-link-box { min-height:38px; display:inline-flex; align-items:center; justify-content:center; margin-top:10px; padding:0 11px; border-radius:9px; background:var(--ns-primary); color:var(--ns-primary-contrast) !important; font-size:10px; font-weight:800; }
.indicacoes-topo, .indicacoes-saque-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.painel-privacidade-topo { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:4px 12px; }
.painel-privacidade-topo .painel-box-badge { grid-row:1 / span 2; min-width:92px; padding:12px; text-align:center; }
.painel-privacidade-topo h3 { margin:0; color:var(--ns-text); }
.painel-privacidade-topo p { margin:0; color:var(--ns-muted); }
.painel-privacidade-acoes { margin-top:16px; }
.painel-privacidade-acoes button, .painel-privacidade-acoes a { min-height:40px; display:inline-flex; align-items:center; justify-content:center; padding:0 12px; border:1px solid rgba(244,183,62,.28); border-radius:10px; background:rgba(244,183,62,.06); color:var(--ns-text-2)!important; font-size:11px; font-weight:750; cursor:pointer; }
.painel-privacidade-acoes button:hover, .painel-privacidade-acoes a:hover { border-color:var(--ns-primary); background:var(--ns-primary-soft); color:var(--ns-primary)!important; }
.painel-privacidade-acoes .alerta { border-color:rgba(255,107,107,.30); background:var(--ns-danger-soft); color:#ffaaa8!important; }
.indicacoes-saque-status { display:inline-flex; align-items:center; padding:5px 7px; border-radius:999px; background:var(--ns-surface-3); color:#aab7c3; font-size:9px; font-weight:750; }
.indicacoes-vazio { padding:16px; border:1px dashed var(--ns-border-strong); border-radius:12px; background:var(--ns-surface-2); color:var(--ns-muted); text-align:center; }
.instagram-link { color:var(--ns-primary) !important; font-weight:700; overflow-wrap:anywhere; }
.servico-extra-linha button { min-width:max-content; min-height:48px; flex:0 0 auto; padding:0 14px; white-space:nowrap; font-weight:800; }
@media (max-width:620px) {
  .perfil-fotos-compacto { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .indicacoes-topo, .indicacoes-saque-head, .form-avaliacao-topo, .form-avaliacao-topo-elite { flex-direction:column; }
  .painel-privacidade-topo { grid-template-columns:1fr; }
  .painel-privacidade-topo .painel-box-badge { grid-row:auto; justify-self:start; }
}

/* Estados auxiliares que recebem conteúdo via JavaScript */
.preview-foto-atual { display:grid; gap:8px; }
.preview-foto-atual > strong, .preview-trabalhos-atual > strong { grid-column:1 / -1; color:var(--ns-text); font-size:11px; }
.preview-foto-atual img { width:120px; height:120px; object-fit:cover; border-radius:18px; border:1px solid var(--ns-border); }
.preview-foto-atual > span, .preview-trabalhos-atual > span { color:var(--ns-muted); font-size:11px; }
.foto-servico-editavel button { position:absolute; right:7px; bottom:7px; min-height:30px; padding:0 8px; border:0; border-radius:8px; background:rgba(15,23,42,.88); color:#fff; font-size:9px; font-weight:750; }
.efi-sem-qrcode { padding:18px; border:1px dashed var(--ns-border-strong); border-radius:12px; background:var(--ns-surface-2); color:var(--ns-muted); text-align:center; font-size:11px; }
.ns-loader-card-mini { min-height:56px; display:flex; align-items:center; justify-content:center; padding:12px; color:var(--ns-muted); }
.onboarding-painel-link { white-space:nowrap; }
@media (max-width:560px) { .onboarding-painel-link { min-height:38px; padding:0 10px; font-size:10px; } }

/* Contraste final V35 */
.login-card-topo .login-badge { background:var(--ns-primary-soft); color:var(--ns-primary) !important; }
.login-profissional-showcase .login-badge { background:rgba(255,255,255,.10); color:#fff !important; }

/* =========================================================
   V36 — Dark Gold Design System
   Referência: marketplace premium escuro, bordas finas e dourado.
   Escopado nas páginas públicas redesenhadas para não afetar Admin/Cidade.
   ========================================================= */
:root {
  --v36-bg: #06101a;
  --v36-bg-deep: #040b12;
  --v36-surface: #0a1724;
  --v36-surface-2: #0d1c2b;
  --v36-surface-3: #101f2e;
  --v36-border: rgba(182, 199, 216, .16);
  --v36-border-strong: rgba(244, 183, 62, .32);
  --v36-text: #f7f9fc;
  --v36-text-2: #c6d0db;
  --v36-muted: #8694a4;
  --v36-gold: #f4b73e;
  --v36-gold-2: #ffc95f;
  --v36-gold-deep: #d99716;
  --v36-green: #32d583;
  --v36-danger: #ff6b6b;
  --v36-shadow: 0 24px 70px rgba(0, 0, 0, .30);
  --v36-glow: 0 0 35px rgba(244, 183, 62, .15);
}

/* Brand + header */
.ns-header-v36 {
  min-height: 74px;
  padding: 0 clamp(22px, 4vw, 58px);
  background: rgba(4, 11, 18, .92);
  border-bottom: 1px solid rgba(174, 193, 211, .12);
  box-shadow: none;
  backdrop-filter: blur(18px);
}
.ns-header-v36 .ns-logo { color: var(--v36-text); gap: 11px; }
.ns-header-v36 .ns-logo:hover { color: var(--v36-text); }
.ns-logo-mark {
  position: relative;
  width: 29px;
  height: 31px;
  flex: 0 0 29px;
  display: inline-block;
}
.ns-logo-mark i { position: absolute; display:block; background: linear-gradient(145deg,var(--v36-gold-2),var(--v36-gold-deep)); box-shadow: 0 4px 12px rgba(244,183,62,.15); }
.ns-logo-mark i:nth-child(1) { width:12px; height:12px; border-radius:50%; left:0; top:1px; }
.ns-logo-mark i:nth-child(2) { width:12px; height:12px; border-radius:50%; left:0; bottom:1px; }
.ns-logo-mark i:nth-child(3) { width:12px; height:12px; border-radius:50%; right:0; top:9px; }
.ns-logo-mark i:nth-child(4) { width:9px; height:9px; border:2px solid var(--v36-gold); border-left-color:transparent; background:transparent; border-radius:50%; left:9px; top:11px; box-shadow:none; }
.ns-logo-word { display:inline-flex; align-items:baseline; gap:4px; font-size:20px; font-weight:500; letter-spacing:-.04em; }
.ns-logo-word b { font-weight:800; }
.ns-logo-word em { color:var(--v36-gold); font-style:normal; font-weight:900; }
.ns-header-v36 .ns-nav { gap: 4px; }
.ns-header-v36 .ns-nav a {
  min-height: 40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 12px;
  color:#d8e0e8;
  border-radius:10px;
  font-size:13px;
  font-weight:550;
  background:transparent;
}
.ns-header-v36 .ns-nav a:hover,
.ns-header-v36 .ns-nav a[aria-current="page"] { color:#fff; background:rgba(255,255,255,.045); }
.ns-header-v36 .ns-nav a[aria-current="page"]::after { content:""; position:absolute; height:2px; width:22px; bottom:-17px; background:var(--v36-gold); border-radius:4px; }
.ns-header-v36 .ns-nav a[aria-current="page"] { position:relative; }
.ns-header-v36 .ns-nav .ns-nav-outline {
  margin-left:7px;
  min-height:43px;
  border:1px solid rgba(244,183,62,.46);
  color:#fff;
  padding:0 16px;
}
.ns-header-v36 .ns-nav .ns-nav-outline:hover { border-color:var(--v36-gold); background:rgba(244,183,62,.08); color:var(--v36-gold-2); }
.ns-header-v36 .ns-nav .ns-nav-login { min-height:43px; border:1px solid var(--v36-border); color:#fff; padding:0 16px; }
.ns-mobile-toggle { display:none; }

/* Shared V36 controls */
.section-kicker {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--v36-gold);
  font-size:11px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.section-kicker svg { width:17px; height:17px; flex:0 0 17px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.section-kicker-star svg { fill:none; }
.btn-gold {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid #f8c65e;
  border-radius:10px;
  background:linear-gradient(135deg,#f8c75c 0%,#e9a72c 100%);
  color:#111820 !important;
  font-weight:800;
  font-size:13px;
  padding:0 18px;
  box-shadow:0 10px 30px rgba(222,156,32,.18), inset 0 1px rgba(255,255,255,.4);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.btn-gold:hover { color:#0b1118 !important; transform:translateY(-1px); filter:brightness(1.04); box-shadow:0 16px 34px rgba(222,156,32,.26); }
.btn-gold svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; }
.btn-gold-lg { min-height:52px; padding:0 22px; }
.btn-ghost-dark {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:0 17px;
  border:1px solid var(--v36-border);
  border-radius:10px;
  background:rgba(255,255,255,.025);
  color:var(--v36-text) !important;
  font-size:13px;
  font-weight:700;
}
.btn-ghost-dark:hover { border-color:rgba(244,183,62,.45); color:var(--v36-gold-2) !important; background:rgba(244,183,62,.05); }
.play-ring { width:27px; height:27px; display:grid; place-items:center; padding-left:2px; border:1px solid rgba(255,255,255,.55); border-radius:50%; font-size:9px; }

/* Home V36 */
body.home-v36 {
  min-height:100vh;
  background:
    radial-gradient(circle at 40% 9%, rgba(244,183,62,.045), transparent 28%),
    linear-gradient(180deg,var(--v36-bg-deep) 0,var(--v36-bg) 58%,#07131f 100%);
  color:var(--v36-text);
  padding-bottom:0;
}
.home-v36 main { overflow:hidden; }
.home-v36 h1,.home-v36 h2,.home-v36 h3,.home-v36 h4,.home-v36 strong { color:var(--v36-text); }
.home-v36 p,.home-v36 small { color:var(--v36-muted); }
.home-v36 a { color:inherit; }
.hero-v36 {
  position:relative;
  isolation:isolate;
  min-height:650px;
  padding:64px clamp(20px,4vw,58px) 44px;
  border-bottom:1px solid rgba(181,201,220,.08);
  background:linear-gradient(180deg,rgba(5,14,23,.98),rgba(5,16,27,.97));
}
.hero-v36::after {
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,#000,transparent 85%);
}
.hero-v36-glow { position:absolute; z-index:-1; border-radius:50%; filter:blur(80px); pointer-events:none; }
.hero-v36-glow-a { width:360px; height:360px; left:16%; top:12%; background:rgba(244,183,62,.12); }
.hero-v36-glow-b { width:330px; height:330px; right:14%; top:16%; background:rgba(239,169,43,.11); }
.hero-v36-line { position:absolute; width:520px; height:280px; right:5%; top:150px; border:1px solid rgba(244,183,62,.48); border-left-color:transparent; border-bottom-color:transparent; border-radius:50%; transform:rotate(-13deg); opacity:.6; z-index:-1; }
.hero-v36-inner { width:min(1430px,100%); margin:0 auto; display:grid; grid-template-columns:minmax(420px,.84fr) minmax(520px,1.16fr); align-items:center; gap:clamp(30px,4vw,70px); }
.hero-v36-copy { position:relative; z-index:2; padding:26px 0 58px; }
.hero-v36-copy h1 { max-width:650px; margin:18px 0 20px; font-size:clamp(46px,5vw,76px); line-height:.98; letter-spacing:-.055em; font-weight:770; }
.hero-v36-copy h1 span { display:block; color:var(--v36-gold); text-shadow:0 0 35px rgba(244,183,62,.13); }
.hero-v36-copy > p { max-width:600px; margin:0; color:#aeb9c6; font-size:16px; line-height:1.75; }
.hero-v36-actions { display:flex; align-items:center; gap:12px; margin-top:26px; flex-wrap:wrap; }
.hero-v36-visual { position:relative; min-height:410px; display:flex; align-items:center; justify-content:center; }
.hero-v36-visual::before { content:""; position:absolute; width:58%; height:70%; border-radius:50%; background:rgba(239,169,43,.12); filter:blur(65px); }
.hero-v36-visual img { position:relative; width:min(100%,760px); aspect-ratio:695/405; object-fit:cover; object-position:center; border-radius:24px; mix-blend-mode:normal; filter:drop-shadow(0 30px 50px rgba(0,0,0,.35)); }
.search-panel-v36 {
  position:relative;
  z-index:8;
  width:min(1430px,100%);
  margin:-20px auto 0;
  display:grid;
  grid-template-columns:1.35fr 1.15fr 1.15fr auto;
  align-items:stretch;
  gap:0;
  padding:14px;
  border:1px solid rgba(174,196,216,.24);
  border-radius:15px;
  background:rgba(8,20,32,.94);
  box-shadow:0 20px 70px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.025);
  backdrop-filter:blur(18px);
}
.search-field-v36 { position:relative; min-width:0; min-height:70px; display:grid; grid-template-columns:32px minmax(0,1fr); grid-template-rows:auto auto; align-content:center; column-gap:8px; padding:7px 18px 6px; border-right:1px solid rgba(174,196,216,.11); }
.search-field-v36 .search-icon-v36 { grid-column:1; grid-row:1 / 3; align-self:center; width:24px; height:24px; display:grid; place-items:center; color:#d5dde5; }
.search-icon-v36 svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.search-field-v36 label { grid-column:2; color:#eef2f6; font-size:12px; font-weight:650; line-height:1.25; }
.search-field-v36 input,
.search-field-v36 select {
  grid-column:2;
  min-height:25px !important;
  height:25px;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#99a6b5 !important;
  font-size:11px;
  outline:none;
}
.search-field-v36 input::placeholder { color:#718092; }
.search-field-v36 select { appearance:auto; cursor:pointer; }
.search-field-v36 select option { color:var(--ns-text); background:var(--ns-surface); }
.search-submit-v36 { align-self:center; min-height:54px; margin-left:14px; padding-inline:21px; white-space:nowrap; border-radius:10px; }
.search-panel-v36 .sugestoes-busca {
  position:absolute;
  z-index:40;
  left:10px;
  right:10px;
  top:74px;
  overflow:hidden;
  border:1px solid rgba(244,183,62,.25);
  border-radius:12px;
  background:#0b1825;
  box-shadow:0 22px 50px rgba(0,0,0,.42);
}
.search-panel-v36 .sugestoes-busca.ativo { display:block; }
.search-panel-v36 .sugestao-item { width:100%; display:flex; justify-content:space-between; gap:12px; border:0; border-bottom:1px solid rgba(255,255,255,.06); background:transparent; padding:11px 13px; text-align:left; color:#eef2f6; }
.search-panel-v36 .sugestao-item:hover { background:rgba(244,183,62,.08); }
.search-panel-v36 .sugestao-item small { color:var(--v36-gold); }

.home-section-v36 { width:min(1430px,calc(100% - 80px)); margin:0 auto; padding:48px 0; }
.section-head-v36 { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:23px; }
.section-head-v36 h2 { margin:7px 0 4px; font-size:clamp(25px,2.4vw,37px); letter-spacing:-.04em; }
.section-head-v36 p { margin:0; color:#7e8c9c; font-size:13px; }
.section-link-button { flex:0 0 auto; display:inline-flex; align-items:center; gap:10px; min-height:38px; border:0; background:transparent; color:#c6d0da; font-size:12px; }
.section-link-button:hover { color:var(--v36-gold-2); }
.section-link-button span { font-size:19px; line-height:1; }
.categories-v36 { padding-bottom:36px; }
.category-rail-v36 { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.category-rail-v36 button { min-width:0; min-height:104px; display:grid; grid-template-columns:42px minmax(0,1fr); grid-template-rows:auto auto; align-content:center; column-gap:11px; padding:14px; border:1px solid var(--v36-border); border-radius:11px; background:linear-gradient(145deg,rgba(15,31,45,.86),rgba(8,19,30,.86)); text-align:left; color:#fff; transition:transform .18s ease,border-color .18s ease,background .18s ease; }
.category-rail-v36 button:hover { transform:translateY(-2px); border-color:rgba(244,183,62,.35); background:linear-gradient(145deg,rgba(24,40,51,.95),rgba(10,23,35,.95)); }
.category-icon-v36 { grid-row:1 / 3; align-self:center; width:42px; height:42px; display:grid; place-items:center; color:var(--v36-gold); font-size:31px; font-family:ui-sans-serif,system-ui; line-height:1; }
.category-rail-v36 strong { min-width:0; align-self:end; font-size:12px; line-height:1.25; font-weight:650; white-space:normal; }
.category-rail-v36 small { min-width:0; align-self:start; margin-top:3px; color:#798898; font-size:10px; line-height:1.25; white-space:normal; }

.featured-v36 { padding-top:34px; }
.grid-v36 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.home-v36 .card.card-v36 {
  position:relative;
  min-width:0;
  min-height:150px;
  display:grid;
  grid-template-columns:115px minmax(0,1fr) 42px;
  align-items:stretch;
  gap:0;
  padding:0;
  overflow:hidden;
  border:1px solid var(--v36-border);
  border-radius:12px;
  background:linear-gradient(145deg,#0c1b29,#081521);
  color:var(--v36-text);
  box-shadow:none;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.home-v36 .card.card-v36:hover { transform:translateY(-2px); border-color:rgba(244,183,62,.38); box-shadow:var(--v36-glow); }
.home-v36 .card-v36 .foto-card { position:relative; width:auto; height:100%; min-height:150px; border-radius:0; background:#122333; color:var(--v36-gold); }
.home-v36 .card-v36 .foto-card img { width:100%; height:100%; object-fit:cover; }
.home-v36 .card-v36 .foto-card > span { font-size:36px; }
.home-v36 .card-v36 .foto-card::after { content:""; position:absolute; inset:auto 0 0; height:48%; background:linear-gradient(to top,rgba(5,12,19,.58),transparent); pointer-events:none; }
.home-v36 .card-v36 .rating-chip-v36 { position:absolute; z-index:2; left:8px; bottom:8px; display:inline-flex; align-items:center; gap:4px; padding:4px 7px; border:1px solid rgba(244,183,62,.28); border-radius:7px; background:rgba(4,12,19,.88); color:#eef2f6; font-size:10px; }
.rating-chip-v36 b { color:var(--v36-gold); font-size:11px; }
.home-v36 .card-v36 .card-conteudo-mobile { min-width:0; display:flex; flex-direction:column; justify-content:center; padding:14px 9px 14px 13px; }
.home-v36 .card-v36 .nome-profissional-linha { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin:0 0 3px; color:#fff; font-size:15px; line-height:1.2; font-weight:750; }
.home-v36 .card-v36 .profissao { margin:0 0 7px; color:#a9b5c1; font-size:11px; font-weight:500; }
.card-meta-v36 { display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin:0 0 8px; color:#8492a2; font-size:10px; }
.card-meta-v36 span { display:inline-flex; align-items:center; gap:4px; min-width:0; }
.card-meta-v36 .status-online-v36::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--v36-green); box-shadow:0 0 8px rgba(50,213,131,.35); }
.card-plan-v36 { width:fit-content; max-width:100%; margin-top:auto; padding:5px 8px; border:1px solid rgba(244,183,62,.58); border-radius:7px; color:var(--v36-gold); font-size:10px; font-weight:650; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.card-arrow-v36 { align-self:center; justify-self:center; width:30px; height:30px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.14); border-radius:50%; color:#c8d3dd; font-size:16px; transition:.18s ease; }
.card-v36:hover .card-arrow-v36 { color:var(--v36-gold); border-color:rgba(244,183,62,.48); transform:translateX(2px); }
.home-v36 .plano-selo-v22,.home-v36 .selo-verificado-plano,.home-v36 [class*="selo-plano"] { max-width:100%; position:static !important; flex:0 0 auto; }

.trust-strip-v36 { width:min(1430px,calc(100% - 80px)); margin:8px auto 44px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--v36-border); border-radius:12px; background:rgba(9,22,34,.75); }
.trust-strip-v36 article { min-width:0; display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:11px; padding:18px 20px; border-right:1px solid rgba(255,255,255,.07); }
.trust-strip-v36 article:last-child { border-right:0; }
.trust-strip-v36 article > span { width:42px; height:42px; display:grid; place-items:center; color:var(--v36-gold); font-size:26px; }
.trust-strip-v36 article div { min-width:0; display:grid; gap:2px; }
.trust-strip-v36 strong { font-size:12px; }
.trust-strip-v36 small { color:#7e8c9c; font-size:10px; line-height:1.35; }

.how-v36 { border-top:1px solid rgba(255,255,255,.055); border-bottom:1px solid rgba(255,255,255,.055); background:linear-gradient(180deg,rgba(12,28,42,.76),rgba(6,16,26,.62)); }
.how-v36-inner { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:center; padding-top:68px; padding-bottom:68px; }
.how-v36-copy h2 { margin:10px 0 12px; font-size:clamp(30px,3.5vw,48px); line-height:1.02; }
.how-v36-copy p { max-width:520px; margin-bottom:23px; font-size:14px; line-height:1.7; }
.how-v36-steps { display:grid; gap:10px; }
.how-v36-steps article { display:grid; grid-template-columns:52px minmax(0,1fr); gap:14px; padding:17px; border:1px solid var(--v36-border); border-radius:12px; background:rgba(5,15,25,.6); }
.how-v36-steps article > span { width:44px; height:44px; display:grid; place-items:center; border:1px solid rgba(244,183,62,.4); border-radius:11px; color:var(--v36-gold); font-size:11px; font-weight:800; }
.how-v36-steps strong { display:block; margin-bottom:3px; font-size:13px; }
.how-v36-steps p { margin:0; color:#7e8c9c; font-size:11px; }
.pro-cta-v36 { width:min(1430px,calc(100% - 80px)); margin:52px auto; padding:31px 34px; display:flex; justify-content:space-between; align-items:center; gap:30px; border:1px solid rgba(244,183,62,.23); border-radius:15px; background:radial-gradient(circle at 80% 20%,rgba(244,183,62,.10),transparent 35%),linear-gradient(135deg,#0b1a28,#07131e); box-shadow:var(--v36-glow); }
.pro-cta-v36 h2 { margin:7px 0 6px; font-size:clamp(26px,3vw,40px); }
.pro-cta-v36 p { margin:0; }
.pro-cta-actions-v36 { display:flex; gap:10px; flex-wrap:wrap; }

.footer-v36 { width:100%; margin:0; padding:30px max(20px,calc((100vw - 1430px)/2)); border-top:1px solid rgba(255,255,255,.08); background:#040b12; color:#7e8c9c; }
.footer-v36 .footer-v36-brand { display:grid; justify-items:center; gap:6px; margin-bottom:16px; }
.footer-v36 .footer-v36-brand p { margin:0; color:#718092; font-size:11px; }
.footer-v36 .ns-logo { color:#fff; }
.footer-v36 nav a { color:#7e8c9c; }
.footer-v36 nav a:hover { color:var(--v36-gold); }
.footer-v36 > p { color:#627181; }
.home-mobile-dock { display:none; }

/* V36 auth: cadastro e login */
body.auth-v36-page { min-height:100vh; background:radial-gradient(circle at 20% 15%,rgba(244,183,62,.055),transparent 28%),radial-gradient(circle at 82% 20%,rgba(244,183,62,.08),transparent 25%),linear-gradient(180deg,#050d15,#07131f); color:var(--v36-text); }
.auth-v36-page h1,.auth-v36-page h2,.auth-v36-page h3,.auth-v36-page strong { color:var(--v36-text); }
.auth-v36-page p,.auth-v36-page small { color:var(--v36-muted); }
.signup-shell-v36 { width:min(1180px,calc(100% - 40px)); min-height:calc(100vh - 74px); padding:52px 0 58px; grid-template-columns:minmax(0,.95fr) minmax(440px,.85fr); gap:70px; }
.signup-intro-v36 h1 { margin:18px 0 15px; max-width:620px; color:#fff; font-size:clamp(40px,4.4vw,62px); line-height:1.01; }
.signup-intro-v36 > p { max-width:560px; color:#9aa8b7; font-size:15px; line-height:1.7; }
.signup-trust-v36 { margin-top:28px; gap:12px; }
.signup-trust-v36 article { padding:12px 0; }
.signup-trust-v36 .signup-trust-icon { width:38px; height:38px; border:1px solid rgba(244,183,62,.24); background:rgba(244,183,62,.06); color:var(--v36-gold); box-shadow:none; }
.signup-trust-v36 strong { color:#eef3f7; }
.signup-trust-v36 small { color:#788796; }
.signup-note-v36 { border:1px solid rgba(244,183,62,.2); background:rgba(244,183,62,.05); }
.signup-note-v36 > span { background:var(--v36-gold); color:#101820; }
.signup-note-v36 p { color:#a5b1bd; }
.signup-card-v36 { padding:31px; border:1px solid rgba(174,196,216,.18); border-radius:19px; background:linear-gradient(150deg,rgba(13,29,43,.96),rgba(7,18,29,.97)); box-shadow:0 28px 80px rgba(0,0,0,.34), inset 0 1px rgba(255,255,255,.025); }
.signup-card-v36 .signup-step,.signup-card-v36 .signup-eyebrow { background:rgba(244,183,62,.08); color:var(--v36-gold); }
.signup-card-v36 .signup-card-head h2 { color:#fff; }
.signup-card-v36 .signup-card-head p { color:#7f8d9c; }
.signup-card-v36 .signup-progress { background:rgba(255,255,255,.08); }
.signup-card-v36 .signup-progress span { background:linear-gradient(90deg,var(--v36-gold-deep),var(--v36-gold-2)); }
.auth-v36-page .field-group label,.auth-v36-page .login-profissional-form > label { color:#c5cfd8; font-size:12px; }
.field-control-v36 { min-height:49px; border:1px solid rgba(176,195,212,.18); border-radius:10px; background:#091724; }
.field-control-v36:focus-within { border-color:rgba(244,183,62,.65); box-shadow:0 0 0 3px rgba(244,183,62,.07); }
.field-control-v36 .field-icon { width:22px; height:22px; color:#9ba8b5; }
.field-control-v36 .field-icon svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.auth-v36-page .field-control-v36 input { color:#eef3f7 !important; }
.auth-v36-page .field-control-v36 input::placeholder { color:#59697a; }
.auth-v36-page .field-help { color:#6f7f8f; }
.auth-v36-page .signup-legal { color:#8795a4; }
.auth-v36-page .signup-legal a { color:var(--v36-gold); }
.auth-v36-page .signup-legal input { accent-color:var(--v36-gold-deep); }
.auth-submit-v36 { width:100%; min-height:51px; justify-content:space-between; border-radius:10px; }
.auth-v36-page .signup-login-link { color:#768595; }
.auth-v36-page .signup-login-link a { color:var(--v36-gold); }
.auth-v36-page .form-message { color:#97a5b4; }
.auth-v36-page .form-message.erro,.auth-v36-page .mensagem-login-profissional.erro { color:#ff8a8a; }
.auth-v36-page .form-message.sucesso { color:#65e0a3; }
.auth-v36-page .sugestoes-cidade { border-color:rgba(244,183,62,.25); background:#0b1825; color:#eef2f6; box-shadow:0 18px 45px rgba(0,0,0,.32); }

.login-page-v36 { background:transparent; }
.login-shell-v36 { width:min(1080px,calc(100% - 40px)); min-height:calc(100vh - 74px); padding:52px 0 60px; grid-template-columns:minmax(0,1fr) 420px; gap:66px; }
.login-showcase-v36 { padding:12px 0; background:transparent; box-shadow:none; }
.login-showcase-v36 h1 { max-width:640px; margin:17px 0 15px; font-size:clamp(42px,4.8vw,66px); line-height:1; color:#fff; }
.login-showcase-v36 > p { max-width:590px; color:#94a2b1; font-size:15px; line-height:1.7; }
.login-benefits-v36 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:28px; }
.login-benefits-v36 > div { min-width:0; display:grid; gap:6px; padding:13px; border:1px solid rgba(255,255,255,.08); border-radius:11px; background:rgba(255,255,255,.025); }
.login-benefits-v36 > div strong { color:var(--v36-gold); font-size:11px; }
.login-benefits-v36 > div span { color:#a8b4bf; font-size:10px; line-height:1.35; }
.login-note-v36 { margin-top:20px; padding:14px; border:1px solid rgba(244,183,62,.17); border-radius:11px; background:rgba(244,183,62,.045); }
.login-note-v36 strong { color:#e9eef3; }
.login-note-v36 p { margin:3px 0 5px; color:#7e8c9c; }
.login-note-v36 a { color:var(--v36-gold); font-size:11px; font-weight:750; }
.login-card-v36 { padding:30px; border:1px solid rgba(174,196,216,.18); border-radius:19px; background:linear-gradient(150deg,rgba(13,29,43,.96),rgba(7,18,29,.97)); box-shadow:0 28px 80px rgba(0,0,0,.34); }
.login-card-v36 .login-badge { background:rgba(244,183,62,.08) !important; color:var(--v36-gold) !important; }
.login-card-v36 .login-card-topo h2 { color:#fff; font-size:28px; }
.login-card-v36 .login-card-topo p { color:#758596; }
.login-card-v36 .login-profissional-form { gap:12px; margin-top:23px; }
.login-input-v36 { position:relative; display:flex; align-items:center; gap:10px; min-height:50px; padding:0 12px; border:1px solid rgba(176,195,212,.18); border-radius:10px; background:#091724; }
.login-input-v36:focus-within { border-color:rgba(244,183,62,.65); box-shadow:0 0 0 3px rgba(244,183,62,.07); }
.login-input-v36 > span { width:22px; flex:0 0 22px; color:#9ba8b5; }
.login-input-v36 svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.login-input-v36 input { min-height:46px !important; padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; color:#eef3f7 !important; }
.login-input-v36 input::placeholder { color:#59697a; }
.login-links-v36 { border-top:1px solid rgba(255,255,255,.07); padding-top:15px; }
.login-links-v36 a { color:#8795a4; }
.login-links-v36 a:hover { color:var(--v36-gold); }
.footer-auth-v36 { background:rgba(4,11,18,.82); }
.ns-loader-card-dark { border:1px solid rgba(244,183,62,.2); background:#091724; color:#fff; }
.ns-loader-card-dark p { color:#9aa8b7; }
.ns-loader-card-dark .ns-loader-logo { background:var(--v36-gold); color:#111820; }
.ns-loader-card-dark .ns-loader-bar { background:rgba(255,255,255,.08); }
.ns-loader-card-dark .ns-loader-bar span { background:var(--v36-gold); }

/* Mobile */
@media (max-width: 1100px) {
  .ns-header-v36 .ns-nav a { padding-inline:9px; font-size:12px; }
  .ns-header-v36 .ns-nav .ns-nav-outline,.ns-header-v36 .ns-nav .ns-nav-login { padding-inline:12px; }
  .hero-v36-inner { grid-template-columns:minmax(390px,.92fr) minmax(450px,1.08fr); }
  .hero-v36-copy h1 { font-size:clamp(44px,5.5vw,65px); }
  .category-rail-v36 { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .grid-v36 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .search-panel-v36 { grid-template-columns:1.2fr 1fr 1fr; }
  .search-submit-v36 { grid-column:1 / -1; margin:10px 0 0; }
  .search-field-v36:nth-child(3) { border-right:0; }
}

@media (max-width: 860px) {
  .ns-header-v36 { min-height:68px; padding:0 18px; }
  .ns-logo-word { font-size:18px; }
  .ns-logo-mark { transform:scale(.92); transform-origin:left center; }
  .ns-mobile-toggle {
    order:2;
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.14);
    border-radius:10px;
    background:#091522;
    color:#fff;
    font-size:0;
  }
  .ns-mobile-toggle span { font-size:22px; line-height:1; }
  .ns-header-v36 .ns-nav {
    display:none;
    position:absolute;
    top:calc(100% + 8px);
    left:14px;
    right:14px;
    z-index:1100;
    padding:10px;
    border:1px solid rgba(174,196,216,.16);
    border-radius:13px;
    background:#07131f;
    box-shadow:0 25px 60px rgba(0,0,0,.45);
  }
  .ns-header-v36.ns-menu-aberto .ns-nav { display:grid; }
  .ns-header-v36 .ns-nav a,
  .ns-header-v36 .ns-nav a:not(.ns-nav-cta) { display:flex; min-height:44px; justify-content:flex-start; padding:0 12px; }
  .ns-header-v36 .ns-nav a[aria-current="page"]::after { display:none; }
  .ns-header-v36 .ns-nav .ns-nav-outline,.ns-header-v36 .ns-nav .ns-nav-login { margin:3px 0 0; justify-content:center; }
  .hero-v36 { min-height:auto; padding:44px 18px 28px; }
  .hero-v36-inner { display:block; }
  .hero-v36-copy { padding:8px 0 12px; }
  .hero-v36-copy h1 { max-width:640px; font-size:clamp(42px,8.8vw,64px); }
  .hero-v36-visual { display:none; }
  .hero-v36-line { width:360px; height:220px; right:-160px; top:120px; opacity:.7; }
  .search-panel-v36 { margin:18px auto 0; grid-template-columns:1fr; gap:7px; padding:0; border:0; background:transparent; box-shadow:none; }
  .search-field-v36 { min-height:64px; border:1px solid rgba(174,196,216,.17) !important; border-radius:10px; background:rgba(9,22,34,.92); }
  .search-submit-v36 { grid-column:auto; width:100%; margin:2px 0 0; min-height:52px; }
  .search-panel-v36 .sugestoes-busca { top:66px; }
  .home-section-v36,.trust-strip-v36,.pro-cta-v36 { width:calc(100% - 36px); }
  .section-head-v36 { align-items:center; }
  .category-rail-v36 { display:flex; overflow-x:auto; gap:9px; padding-bottom:6px; scrollbar-width:none; }
  .category-rail-v36::-webkit-scrollbar { display:none; }
  .category-rail-v36 button { flex:0 0 152px; min-height:120px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; text-align:center; }
  .category-icon-v36 { width:38px; height:38px; font-size:29px; }
  .category-rail-v36 strong { font-size:11px; }
  .category-rail-v36 small { font-size:9px; }
  .grid-v36 { grid-template-columns:1fr; }
  .trust-strip-v36 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .trust-strip-v36 article:nth-child(2) { border-right:0; }
  .trust-strip-v36 article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.07); }
  .how-v36-inner { grid-template-columns:1fr; gap:28px; }
  .pro-cta-v36 { align-items:flex-start; flex-direction:column; }
  .signup-shell-v36,.login-shell-v36 { grid-template-columns:1fr; max-width:720px; gap:28px; }
  .signup-intro-v36 h1,.login-showcase-v36 h1 { max-width:680px; }
}

@media (max-width: 620px) {
  body.home-v36 { padding-bottom:68px; }
  .ns-header-v36 { position:sticky; }
  .hero-v36 { padding:30px 16px 24px; }
  .section-kicker { font-size:9px; }
  .hero-v36-copy h1 { margin:13px 0 13px; font-size:42px; line-height:1.03; }
  .hero-v36-copy > p { font-size:13px; line-height:1.62; }
  .hero-v36-actions { display:grid; grid-template-columns:1fr; margin-top:18px; }
  .hero-v36-actions .btn-gold,.hero-v36-actions .btn-ghost-dark { width:100%; }
  .search-panel-v36 { margin-top:16px; }
  .search-field-v36 { min-height:61px; padding-inline:13px; grid-template-columns:28px minmax(0,1fr); }
  .search-field-v36 label { font-size:11px; }
  .search-field-v36 input,.search-field-v36 select { font-size:10px; }
  .home-section-v36 { width:calc(100% - 30px); padding:34px 0; }
  .section-head-v36 { gap:12px; margin-bottom:17px; }
  .section-head-v36 h2 { font-size:26px; }
  .section-head-v36 p { display:none; }
  .section-link-button { padding:0; font-size:10px; }
  .category-rail-v36 button { flex-basis:124px; min-height:116px; padding:10px 8px; }
  .featured-v36 { padding-top:26px; }
  .home-v36 .card.card-v36 { min-height:125px; grid-template-columns:105px minmax(0,1fr) 36px; }
  .home-v36 .card-v36 .foto-card { min-height:125px; }
  .home-v36 .card-v36 .card-conteudo-mobile { padding:11px 6px 11px 11px; }
  .home-v36 .card-v36 .nome-profissional-linha { font-size:14px; }
  .home-v36 .card-v36 .profissao { font-size:10px; margin-bottom:5px; }
  .card-meta-v36 { font-size:9px; gap:5px; margin-bottom:6px; }
  .card-plan-v36 { font-size:9px; padding:4px 6px; }
  .card-arrow-v36 { width:27px; height:27px; }
  .trust-strip-v36 { width:calc(100% - 30px); grid-template-columns:1fr; margin-bottom:34px; }
  .trust-strip-v36 article { border-right:0; border-bottom:1px solid rgba(255,255,255,.07); }
  .trust-strip-v36 article:last-child { border-bottom:0; }
  .how-v36-inner { width:calc(100% - 30px); padding-top:48px; padding-bottom:48px; }
  .how-v36-copy h2 { font-size:34px; }
  .pro-cta-v36 { width:calc(100% - 30px); margin:36px auto; padding:24px 20px; }
  .pro-cta-actions-v36 { width:100%; display:grid; grid-template-columns:1fr; }
  .home-mobile-dock { position:fixed; z-index:1200; left:0; right:0; bottom:0; height:64px; display:grid; grid-template-columns:repeat(5,1fr); padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left)); border-top:1px solid rgba(255,255,255,.12); background:rgba(4,11,18,.96); backdrop-filter:blur(18px); }
  .home-mobile-dock a { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; color:#8d9baa; font-size:8px; font-weight:600; }
  .home-mobile-dock a span { font-size:19px; line-height:1; }
  .home-mobile-dock a[aria-current="page"] { color:var(--v36-gold); }
  .footer-v36 { padding-bottom:28px; }
  .signup-shell-v36 { width:calc(100% - 24px); padding:27px 0 40px; }
  .signup-intro-v36 h1 { font-size:39px; }
  .signup-intro-v36 > p { font-size:13px; }
  .signup-trust-v36 { margin-top:19px; }
  .signup-trust-v36 article { padding:7px 0; }
  .signup-note-v36 { margin-top:17px; }
  .signup-card-v36 { padding:21px 16px; border-radius:15px; }
  .login-shell-v36 { width:calc(100% - 24px); padding:28px 0 42px; }
  .login-showcase-v36 h1 { font-size:40px; }
  .login-showcase-v36 > p { font-size:13px; }
  .login-benefits-v36 { grid-template-columns:1fr; }
  .login-card-v36 { padding:22px 17px; }
  .footer-auth-v36 { padding-bottom:24px; }
}

@media (max-width: 390px) {
  .hero-v36-copy h1 { font-size:37px; }
  .category-rail-v36 button { flex-basis:114px; }
  .home-v36 .card.card-v36 { grid-template-columns:92px minmax(0,1fr) 30px; }
  .home-v36 .card-v36 .nome-profissional-linha { font-size:13px; }
  .card-meta-v36 { display:grid; gap:2px; }
}

/* V36 micro-fixes from responsive audit */
.home-v36 .card-v36 .foto-card > span:not(.rating-chip-v36) { font-size:36px; }
.home-v36 .card-v36 .foto-card > .rating-chip-v36 { font-size:10px; }
.verified-dot-v36 { width:16px; height:16px; flex:0 0 16px; display:inline-grid; place-items:center; border:1px solid rgba(244,183,62,.42); border-radius:50%; color:var(--v36-gold); font-size:9px; line-height:1; }
.ns-header-v36 .ns-nav .ns-nav-cta { border:1px solid rgba(244,183,62,.46); background:transparent; color:#fff !important; }
.ns-header-v36 .ns-nav .ns-nav-cta:hover { border-color:var(--v36-gold); background:rgba(244,183,62,.08); color:var(--v36-gold-2) !important; }
