/* PepCalendar v3 — base compartilhada: tokens, reset, botões, nav, rodapé, seringa.
   Usada por: v3.html (landing), calculadora, quiz, obrigado, parceria, termos, privacidade. */

:root{
  --paper:#F4EFE6; --paper-2:#EBE4D7; --card:#FFFDF8;
  --ink:#16131C; --ink-2:#47414F; --ink-3:#6B6474;
  --rule:#D9D0C0; --rule-2:#C6BBA8;
  --brand:#574691; --brand-2:#6A5BA8; --brand-ink:#3E3170; --brand-tint:#EEEAF7;
  --amber:#E0A81E; --green:#2EA88A; --red:#C2452D;
  --f-display:'Bricolage Grotesque',Georgia,serif;
  --f-body:'Plus Jakarta Sans',system-ui,sans-serif;
  --f-num:'IBM Plex Mono',ui-monospace,monospace;
  --f-hand:'Caveat',cursive;
  --wrap:1160px;
  --out:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:500 17px/1.6 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p{margin:0}
ul,ol,dl,dd{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}
.num{font-family:var(--f-num);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-9999px;top:8px;z-index:99;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:8px}
.skip:focus{left:12px}
:focus-visible{outline:2px solid var(--brand);outline-offset:3px}

.h2{font:800 clamp(38px,5vw,64px)/1.02 var(--f-display);letter-spacing:-.035em;text-wrap:balance}
.lede{color:var(--ink-2);font-size:19px;max-width:34em;margin-top:20px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 16px/1 var(--f-body);text-decoration:none;border-radius:10px;padding:16px 22px;border:1.5px solid transparent;cursor:pointer;transition:background .2s,transform .2s var(--out),border-color .2s,color .2s}
.btn:active{transform:translateY(1px)}
.btn--sm{padding:11px 16px;font-size:14.5px;border-radius:9px}
.btn--lg{padding:20px 30px;font-size:18px}
.btn--block{width:100%}
.btn--ink{background:var(--ink);color:var(--paper)}
.btn--ink:hover{background:#2C2735}
.btn--brand{background:var(--brand);color:#fff;box-shadow:0 2px 0 var(--brand-ink),0 10px 20px -12px rgba(62,49,112,.7)}
.btn--brand:hover{background:var(--brand-2)}
.btn--line{border-color:var(--ink);color:var(--ink);background:transparent}
.btn--line:hover{background:var(--ink);color:var(--paper)}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;transform:none}
.link{display:inline-flex;gap:8px;font-weight:700;color:var(--brand);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.link:hover{color:var(--brand-ink)}

/* nav */
.nav{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:1px solid var(--rule)}
.nav__row{display:flex;align-items:center;justify-content:space-between;gap:20px;height:68px}
.brand{display:flex;align-items:center;gap:10px;font:800 18px/1 var(--f-display);letter-spacing:-.02em;text-decoration:none}
.brand img{border-radius:8px}
.nav__links{display:flex;gap:28px}
.nav__links a,.nav__login{text-decoration:none;font-weight:600;font-size:15px;color:var(--ink-2)}
.nav__links a:hover,.nav__login:hover,.nav__links a[aria-current="page"]{color:var(--ink)}
.nav__links a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--amber);text-decoration-thickness:3px;text-underline-offset:8px}
.nav__actions{display:flex;align-items:center;gap:18px}

/* footer */
.foot{padding:40px 0 48px;background:var(--ink);color:#B5ADC0}
.foot__grid{display:grid;gap:14px}
.foot .brand{color:var(--paper)}
.foot__disc{font-size:14px;max-width:46em}
.foot__links{font-size:13.5px}
.foot__links a{color:#D9D2E2}

/* marca-texto */
.hl{background:linear-gradient(transparent 60%,rgba(224,168,30,.45) 60%)}

/* ── seringa U-100 (pep-syringe.js) ── */
.pep-syr{width:100%;height:auto;overflow:visible}
.pep-syr .ndl{fill:#9C96A6;stroke:#6B6474;stroke-width:.8}
.pep-syr .hub{fill:rgba(224,168,30,.28);stroke:var(--ink);stroke-width:2;stroke-linejoin:round}
.pep-syr .hub-line{stroke:var(--ink);stroke-width:1.2;opacity:.5}
.pep-syr .g-hi{stop-color:#fff;stop-opacity:.95}
.pep-syr .g-mid{stop-color:#F7F4EE;stop-opacity:.9}
.pep-syr .g-lo{stop-color:#E9E3D8;stop-opacity:.95}
.pep-syr .rod{fill:#D9D3E3;stroke:#8D86A0;stroke-width:1.2}
.pep-syr .rod-rib{fill:#B1AAC2}
.pep-syr .thumb{fill:#E6E1EE;stroke:#8D86A0;stroke-width:1.5}
.pep-syr .l-hi{stop-color:#F4C95A;stop-opacity:.75}
.pep-syr .l-lo{stop-color:#E0A81E;stop-opacity:.6}
.pep-syr .stp{fill:#2A2533}
.pep-syr .stp-rib{stroke:#4A4458;stroke-width:1.5}
.pep-syr .stp-face{stroke:var(--brand);stroke-width:2;stroke-dasharray:3 3}
.pep-syr .tk{stroke:var(--ink);stroke-width:1;opacity:.55}
.pep-syr .tk--major{stroke-width:1.6;opacity:.9}
.pep-syr .tk-num{font:600 15px var(--f-num);fill:var(--ink);text-anchor:middle}
.pep-syr .brl{fill:none;stroke:var(--ink);stroke-width:2.5}
.pep-syr .gloss{fill:#fff;opacity:.85}
.pep-syr .flange{fill:#E6E1EE;stroke:var(--ink);stroke-width:2}
.pep-syr .badge-box{fill:var(--brand)}
.pep-syr .badge-txt{font:700 15px var(--f-num);fill:#fff;text-anchor:middle}
.pep-syr .badge-line{stroke:var(--brand);stroke-width:2}
.pep-syr--mini .tk-num,.pep-syr--mini .badge{display:none}

/* mobile dock (opcional por página) */
.dock{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;display:none;translate:0 140%;transition:translate .45s var(--out)}
.dock.on{translate:0 0}

@media (max-width:1000px){ .nav__links{display:none} }
@media (max-width:640px){
  .pep-syr .tk-num{font-size:21px}
  .pep-syr .tk-num--alt{display:none}
  .pep-syr .badge-txt{font-size:19px}
  body{font-size:16px}
  .wrap{padding:0 20px}
  .nav__login{display:none}
  .dock{display:block}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
