/* Ortoo · base visual compartilhada (site, cadastro, painel) */
:root{
  --preto:#050505; --carvao:#0f0f11; --cartao:#151518; --cartao2:#1c1c20; --linha:#26262c;
  --texto:#f7f5f1; --cinza:#a9a7a2; --cinza2:#6f6d69;
  --laranja:#ff7a0d; --laranja-claro:#ffa53d; --laranja-escuro:#e85a04;
  --grad:linear-gradient(135deg,#ffad42 0%,#ff7a0d 45%,#ef5a05 100%);
  --ok:#2fd27a; --erro:#ff5a52;
  --r:18px; --r-sm:12px;
  --fonte:'Nunito',system-ui,-apple-system,'Segoe UI',sans-serif;
  --titulo:'Fredoka','Nunito',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--preto);color:var(--texto);font-family:var(--fonte);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}
h1,h2,h3{font-family:var(--titulo);font-weight:600;line-height:1.08;letter-spacing:-.01em}
.wrap{width:min(1160px,100% - 32px);margin-inline:auto}
.laranja{color:var(--laranja)}
.grad-txt{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 26px;border-radius:999px;border:0;cursor:pointer;font-weight:800;font-size:16px;transition:transform .15s,box-shadow .2s,background .2s;white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn-pri{background:var(--grad);color:#1a0b00;box-shadow:0 10px 30px -10px rgba(255,122,13,.7),inset 0 1px 0 rgba(255,255,255,.35)}
.btn-pri:hover{box-shadow:0 14px 40px -10px rgba(255,122,13,.9),inset 0 1px 0 rgba(255,255,255,.35);transform:translateY(-1px)}
.btn-sec{background:rgba(255,255,255,.06);color:var(--texto);border:1px solid var(--linha)}
.btn-sec:hover{background:rgba(255,255,255,.1)}
.btn-sm{height:42px;padding:0 18px;font-size:15px}
.btn:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--laranja-claro);outline-offset:3px}

.campo{display:flex;flex-direction:column;gap:6px}
.campo label{font-size:14px;font-weight:700;color:var(--cinza)}
.campo input,.campo select,.campo textarea{height:50px;padding:0 16px;border-radius:var(--r-sm);border:1px solid var(--linha);background:var(--carvao);outline:none;transition:border .15s}
.campo textarea{height:auto;padding:12px 16px;min-height:90px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{border-color:var(--laranja)}
.erro-msg{color:var(--erro);font-size:14px;font-weight:700}
