/* ===== identidade do site (Cormorant + Jost, papel, tinta e madeira) ===== */
body{background:var(--bg)}
.eyebrow{margin:0;font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:400;color:var(--wood)}
.ripado{background:var(--ink)}
.sweep{display:none}
.hero{background:radial-gradient(120% 70% at 85% 0%,rgba(160,122,85,.22),rgba(160,122,85,0) 60%),radial-gradient(90% 60% at 0% 100%,rgba(160,122,85,.10),rgba(160,122,85,0) 60%),var(--ink);color:#f4f1ec}
.hero-in{display:flex;flex-direction:column;justify-content:space-between;gap:40px;min-height:620px;min-height:max(100vh,620px);min-height:max(100svh,620px);padding-top:22px;padding-bottom:calc(40px + env(safe-area-inset-bottom,0px))}
.hbar{display:flex;align-items:center;justify-content:space-between;gap:16px}
.hbar .logo{width:170px}
.admbtn{position:static;border-color:rgba(244,241,236,.22);color:rgba(244,241,236,.6);border-radius:999px;letter-spacing:.08em}
.copy{max-width:900px}
.who{margin:14px 0 0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(22px,5.4vw,30px);color:rgba(244,241,236,.85)}
h1{margin:12px 0 0;font-family:var(--serif);font-weight:300;font-size:clamp(50px,14vw,120px);line-height:.95;letter-spacing:-.01em}
.w>span{transform:translateY(105%);animation:rise 1.2s var(--ease) forwards;animation-delay:calc(var(--i) * 90ms + 300ms)}
.rule{display:block;width:72px;height:1px;margin:26px 0 0;background:var(--wood);transform:scaleX(0);transform-origin:left;animation:ruleIn 1.4s var(--ease) .9s forwards}
@keyframes ruleIn{to{transform:none}}
.h-sub{margin:18px 0 0;font-size:16px;letter-spacing:.04em;color:rgba(244,241,236,.75)}
.chip{border-color:rgba(244,241,236,.28);border-radius:999px;font-size:14px;letter-spacing:.04em;color:rgba(244,241,236,.85)}
.chip::before{background:var(--wood);animation:beatW 2.2s ease-in-out infinite}
@keyframes beatW{0%,100%{box-shadow:0 0 0 0 rgba(160,122,85,.6)}60%{box-shadow:0 0 0 8px rgba(160,122,85,0)}}
.go{margin-top:30px;height:58px;border-radius:999px;background:var(--bg);color:var(--ink);font-size:15px;font-weight:400;letter-spacing:.08em;animation:fadeIn 1s ease 1.3s forwards;transition:background-color .35s,color .35s,transform .2s}
.go svg{width:18px;height:18px}
.go:hover{background:var(--wood);color:#fff}
.go:focus-visible{outline-color:var(--bg)}
.cue{display:none;position:absolute;right:22px;bottom:calc(40px + env(safe-area-inset-bottom,0px));width:1px;height:64px;background:rgba(244,241,236,.25);overflow:hidden}
.cue::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:#f4f1ec;animation:cue 2.2s var(--ease) infinite}
@keyframes cue{to{top:100%}}
.hero-in{position:relative}
@media (min-width:860px){
  .hero-in{display:flex;padding-top:34px;padding-bottom:64px}
  .hbar .logo{width:240px}
  .copy{align-self:auto;grid-column:auto;grid-row:auto}
  .hbar .logo{grid-column:auto;grid-row:auto}
  h1{font-size:clamp(64px,8vw,128px)}
  .go{width:auto;min-width:300px;padding:0 34px}
  .cue{display:block;right:40px;bottom:64px}
}
.sheet{margin-top:0;border-radius:0;background:var(--bg)}
.sec-eb{margin-bottom:14px}
.sec h2{font-family:var(--serif);font-weight:300;font-size:clamp(40px,9.5vw,72px);line-height:1;letter-spacing:-.005em;margin-bottom:14px}
.sec .lead{color:var(--ink-2)}
.js [data-reveal]{transform:translateY(22px);transition:opacity 1.1s ease,transform 1.1s var(--ease)}
.pc{border-radius:4px;padding:34px 26px 30px;color:#f4f1ec;background:radial-gradient(110% 80% at 100% 0%,rgba(160,122,85,.25),rgba(160,122,85,0) 60%),var(--ink)}
.pc-k{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--wood)}
.pc-pre{font-family:var(--serif);font-style:italic;font-size:24px;color:rgba(244,241,236,.85)}
.pc-num{font-family:var(--serif);font-weight:300;font-size:clamp(60px,17vw,100px);letter-spacing:-.01em;margin:4px 0 10px}
.pc-sub{color:rgba(244,241,236,.72)}
.pc-ent{border-top-color:rgba(244,241,236,.18)}
.cb{background:var(--card);border-color:var(--line);border-radius:4px}
.nx{font-family:var(--serif);font-size:42px;font-weight:300}
.rng::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--wood) var(--pct),var(--line) var(--pct))}
.rng::-moz-range-progress{background:var(--wood)}
.tick{background:var(--wood)}
.chip2{border-radius:999px;background:transparent;letter-spacing:.02em}
.warn{border-radius:4px;background:transparent}
.warn.alert{border-color:var(--wood);color:var(--ink)}
.warn.alert .wi{color:var(--wood)}
.more{color:var(--ink);letter-spacing:.04em}
.h4{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--wood);font-weight:400}
.pulse{background:var(--wood);box-shadow:0 0 0 5px rgba(160,122,85,.25)}
.li>span:last-child{font-family:var(--serif);font-size:22px;font-weight:400;line-height:1.1}
.btn{border-radius:999px;font-size:15px;font-weight:400;letter-spacing:.06em;transition:background-color .35s,color .35s,border-color .35s,transform .2s}
.btn.ghost{border-color:rgba(13,12,11,.3)}
.btn.ghost:hover{border-color:var(--ink)}
.btn.light{background:var(--bg);color:var(--ink);border-color:var(--bg)}
.btn.light:hover{background:var(--wood);border-color:var(--wood);color:#fff}
.end{margin-top:110px;padding:110px 0 150px;background:radial-gradient(100% 70% at 0% 100%,rgba(160,122,85,.18),rgba(160,122,85,0) 60%),var(--ink);color:#f4f1ec}
.end-big{margin-top:18px;font-family:var(--serif);font-weight:300;font-size:clamp(44px,11vw,104px);line-height:.98;letter-spacing:-.005em;max-width:13ch}
.end-big em{font-style:italic;color:#d9c3a8}
.bar{background:rgba(244,241,236,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.bar .sel b{font-family:var(--serif);font-size:22px;font-weight:400}
dialog.sh{background:var(--bg)}
dialog.sh::backdrop{background:rgba(13,12,11,.65)}
.dlg h3{font-family:var(--serif);font-weight:300;font-size:36px;letter-spacing:0}
.rev{font-family:var(--serif);font-weight:300}
.steps i.on{background:var(--wood)}
.stepname{color:var(--wood);letter-spacing:.2em}
.paystep{border-radius:6px;background:var(--card)}
.paystep.next{border-color:var(--wood)}
.paystep.next .num{background:var(--wood);border-color:var(--wood);color:#fff}
.paystep .val{font-family:var(--serif);font-size:22px}
.howto{border-radius:4px}
.ok circle,.ok path{stroke:var(--wood)}
.loadmsg{color:rgba(244,241,236,.75)}
.admin{background:var(--card);border-radius:4px}
.plist,.linkrow input,.sum,.pstat{border-radius:4px}
.bigf input{border-radius:4px;font-family:var(--serif)}
.end .logo{width:260px;max-width:100%}
@media (prefers-reduced-motion: reduce){
  .w>span,.js [data-reveal],.rule{transform:none}
  .go{opacity:1}
}
