/* Voyaduo — tokens da identidade C, Trilha (docs/identidade/voyaduo/C_trilha/paleta.json) */
@font-face{font-family:"Fraunces";font-weight:600;font-display:swap;src:url(fonts/fraunces-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:400;font-display:swap;src:url(fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:600;font-display:swap;src:url(fonts/inter-latin-600-normal.woff2) format("woff2")}
:root{
--primary:#3B2D9E;--secondary:#281E72;--tertiary:#FFD23F;--alternate:#8A87A0;
--text:#17133A;--text-2:#55527A;--bg:#F7F6FC;--card:#FFFFFF;
--accent1:#ECE9FB;--accent2:#FFF1C2;--accent3:#E3F4EE;--accent4:#E3E1EE;
--success:#057A55;--error:#D10A0E;--on-primary:#FFFFFF;
--s1:4px;--s2:8px;--s3:16px;--s4:24px;--s5:32px;
--r1:8px;--r2:12px;--r3:20px;--r4:24px;
--shadow:0 2px 6px rgba(23,19,58,.12);
--title:"Fraunces",Georgia,serif;--body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.6 var(--body)}
h1,h2,h3{font-family:var(--title);font-weight:600;line-height:1.15;margin:0 0 var(--s3);text-transform:none}
h1{font-size:clamp(2rem,6vw,3.25rem)}h2{font-size:clamp(1.5rem,4vw,2.1rem)}h3{font-size:1.25rem}
p{margin:0 0 var(--s3)}a{color:var(--primary)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
.hero :focus-visible,footer :focus-visible,.form-btn:focus-visible{outline-color:var(--tertiary)}
.wait .form-btn:focus-visible{outline-color:var(--primary)}
.wrap{max-width:1040px;margin:0 auto;padding:0 var(--s3)}
.skip{position:absolute;left:-999px;top:0;background:var(--tertiary);color:var(--text);padding:var(--s2) var(--s3);z-index:9}
.skip:focus{left:var(--s3)}
.hero{background:var(--primary);color:var(--on-primary);padding:var(--s4) 0 var(--s5)}
.hero a{color:var(--on-primary)}
.hero .btn{color:var(--text)}
.brand{display:block;width:min(260px,70vw);height:auto}
.hero .tagline{font-size:clamp(1.15rem,3vw,1.4rem);max-width:640px;margin:var(--s5) 0 var(--s4)}
.hero h1{max-width:760px;margin-top:var(--s5)}
.btn{display:inline-block;background:var(--tertiary);color:var(--text);font:600 1rem var(--body);padding:14px 24px;border:0;border-radius:var(--r2);text-decoration:none;cursor:pointer;min-height:48px}
.btn:hover{filter:brightness(.95)}
section{padding:var(--s5) 0}
.cards{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--card);border-radius:var(--r3);padding:var(--s4);box-shadow:var(--shadow)}
.card .tag{display:inline-block;background:var(--accent1);color:var(--primary);font-weight:600;border-radius:var(--r1);padding:2px 10px;margin-bottom:var(--s3)}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.steps li{counter-increment:s;background:var(--accent1);border-radius:var(--r3);padding:var(--s4)}
.steps li::before{content:counter(s);display:block;font:600 1.6rem var(--title);color:var(--primary);margin-bottom:var(--s2)}
.wait{background:var(--accent2);border-radius:var(--r4);padding:var(--s5) var(--s4)}
form{display:grid;gap:var(--s3);max-width:520px}
label{font-weight:600}
input[type=email]{width:100%;font:400 1rem var(--body);padding:12px 14px;border:2px solid var(--alternate);border-radius:var(--r1);background:var(--card);color:var(--text);min-height:48px}
.check{display:flex;gap:var(--s2);align-items:flex-start;font-weight:400}
.check input{width:22px;height:22px;margin-top:3px;flex:none;accent-color:var(--primary)}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.form-btn{background:var(--primary);color:var(--on-primary)}
.msg{min-height:1.5em;font-weight:600}.msg.ok{color:var(--success)}.msg.err{color:var(--error)}
footer{background:var(--secondary);color:var(--on-primary);padding:var(--s5) 0;font-size:.95rem}
footer a{color:var(--on-primary)}
footer ul{list-style:none;padding:0;margin:var(--s3) 0;display:flex;gap:var(--s4);flex-wrap:wrap}
.doc{padding-top:var(--s4);padding-bottom:var(--s5)}
.doc>*{max-width:760px}
.doc h2{margin-top:var(--s5);font-size:1.4rem}
.doc .meta{color:var(--text-2)}
.top{background:var(--card);border-bottom:1px solid var(--accent4)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:var(--s3);padding-bottom:var(--s3)}
.top img{width:150px;height:auto;display:block}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
