/* Natal Mágico */
.cv-t-natal{--cv-bg:#0b2a21;--cv-ink:#fff4de;--cv-mute:#c9bd9f;--cv-accent:#e5c16c;--cv-accent2:#f6e2a4;--cv-card:rgba(8,40,31,.72);--cv-linha:rgba(229,193,108,.36);--cv-fh:'Cormorant Garamond',Georgia,serif;--cv-fb:'Montserrat',system-ui,sans-serif;--cv-rad:22px;--cv-btn-ink:#fff;
  background:radial-gradient(90vmax 70vmax at 50% -10%,#17604a,#0c3027 55%,#071c16)}
.cv-t-natal .cv-h2{font-style:italic;font-weight:500;font-size:clamp(2rem,8vw,2.8rem);color:#f0d27e}
.cv-t-natal .cv-cartao,.cv-t-natal .cv-cd,.cv-t-natal .cv-form{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 18px 50px rgba(0,0,0,.4)}
.cv-t-natal .cv-cartao strong{font-family:'Cormorant Garamond',serif;font-size:1.3rem;color:#f6e2a4}
.cv-t-natal .cv-cd b{font-family:'Cormorant Garamond',serif}
.cv-t-natal .cv-msg{color:#fff0d2}
.cv-t-natal .cv-campo input,.cv-t-natal .cv-campo select,.cv-t-natal .cv-campo textarea,.cv-t-natal .cv-linha-p input{background:rgba(255,255,255,.05);border-color:rgba(229,193,108,.3)}
.cv-t-natal .cv-btn,.cv-t-natal .cv-escolha input:checked+span{background:linear-gradient(135deg,#dc4753,#a3202f);color:#fff;box-shadow:0 12px 28px rgba(163,32,47,.45)}
/* introdução: presente */
.nt-intro{background:radial-gradient(80vmax 60vmax at 50% 30%,#17604a,#092219 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;overflow:hidden}
.nt-conv{margin:0;font:italic 500 clamp(1.8rem,7.5vw,2.6rem) 'Cormorant Garamond',serif;color:#f0d27e;text-align:center;padding:0 16px;transition:opacity .4s}
.nt-pres{position:relative;width:176px;height:176px;border:0;background:none;cursor:pointer;animation:ntbalanca 2.6s ease-in-out infinite;-webkit-tap-highlight-color:transparent}
.nt-pres:focus-visible{outline:3px solid #fff;outline-offset:8px}
.nt-corpo{position:absolute;left:14px;right:14px;bottom:0;height:118px;border-radius:6px;background:linear-gradient(90deg,#b3202f 0 41%,#e5c16c 41% 59%,#b3202f 59%);box-shadow:inset 0 -16px 0 rgba(0,0,0,.2),0 24px 34px rgba(0,0,0,.45)}
.nt-tampa{position:absolute;left:0;right:0;bottom:106px;height:48px;border-radius:7px;background:linear-gradient(90deg,#c92c3b 0 41%,#f0d27e 41% 59%,#c92c3b 59%);box-shadow:0 8px 12px rgba(0,0,0,.28);transform-origin:20% 100%;transition:transform .9s cubic-bezier(.2,.9,.3,1.1),opacity .8s .25s}
.nt-laco{position:absolute;left:50%;top:-32px;width:70px;height:36px;margin-left:-35px}
.nt-laco::before,.nt-laco::after{content:"";position:absolute;top:2px;width:32px;height:30px;border:7px solid #f0d27e;border-radius:60% 60% 60% 10%;box-shadow:0 3px 4px rgba(0,0,0,.25)}
.nt-laco::before{left:0;transform:rotate(-12deg)}.nt-laco::after{right:0;transform:scaleX(-1) rotate(-12deg)}
.nt-luz{position:absolute;left:50%;bottom:96px;width:12px;height:12px;margin:-6px;border-radius:50%;background:#fff6c9;opacity:0}
.nt-dica{margin:0;font:500 .74rem 'Montserrat',sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#c9bd9f;animation:ntfade 2.4s ease-in-out infinite;transition:opacity .4s}
.cv-a-abrir .nt-pres{animation:none}.cv-a-abrir .nt-tampa{transform:translateY(-170px) rotate(-22deg);opacity:0}
.cv-a-abrir .nt-luz{animation:ntluz 1s ease-out .15s forwards}.cv-a-abrir .nt-conv,.cv-a-abrir .nt-dica{opacity:0;animation:none}
@keyframes ntbalanca{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg) translateY(-6px)}}
@keyframes ntfade{50%{opacity:.35}}
@keyframes ntluz{0%{opacity:1;box-shadow:0 0 0 0 rgba(255,236,160,.95)}100%{opacity:0;box-shadow:0 0 0 140px rgba(255,236,160,0)}}
/* capa */
.nt-hero{position:relative;min-height:100vh;min-height:100svh;display:grid;place-items:center;text-align:center;padding:90px 22px 90px;overflow:hidden}
.nt-luzes{position:absolute;left:0;right:0;top:0;height:44px;z-index:3;pointer-events:none}
.nt-fio{position:absolute;inset:0;width:100%;height:100%}
.nt-luzes i{position:absolute;width:12px;height:17px;margin-left:-6px;border-radius:50% 50% 50% 50%/38% 38% 62% 62%;background:var(--c);box-shadow:0 0 14px 4px var(--c);animation:ntpisca 2.4s ease-in-out var(--d) infinite}
.nt-luzes i::before{content:"";position:absolute;left:3px;top:-5px;width:6px;height:6px;background:#3b5d4e;border-radius:2px 2px 0 0}
@keyframes ntpisca{0%,100%{opacity:1}50%{opacity:.28}}
.nt-hero-in{position:relative;z-index:2;max-width:640px}
.nt-tipo{margin:0 0 6px;font:500 .8rem 'Montserrat',sans-serif;letter-spacing:.4em;text-transform:uppercase;color:#c9bd9f}
.nt-titulo{margin:0;font:400 clamp(3.2rem,15vw,6rem)/1.04 'Great Vibes','Cormorant Garamond',cursive;background:linear-gradient(100deg,#c8973f,#fff1c0 40%,#e5c16c 60%,#c8973f);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ntbrilho 6s linear infinite;padding:.08em .1em}
@keyframes ntbrilho{to{background-position:-200% 0}}
.nt-bola{position:relative;display:inline-grid;place-items:center;align-content:center;width:clamp(128px,36vw,168px);aspect-ratio:1;margin:46px 0 18px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#ff8a94,#c92c3b 52%,#7b1120);box-shadow:inset -10px -14px 26px rgba(0,0,0,.3),0 20px 40px rgba(0,0,0,.45);animation:ntpendula 4s ease-in-out infinite;transform-origin:50% -46px}
.nt-bola::before{content:"";position:absolute;left:50%;top:-52px;width:2px;height:48px;margin-left:-1px;background:#d9c07a}
.nt-bola::after{content:"";position:absolute;left:50%;top:-12px;width:30px;height:16px;margin-left:-15px;border-radius:5px 5px 0 0;background:linear-gradient(#f6e2a4,#c8973f)}
.nt-bola b{font:600 clamp(3rem,13vw,4.2rem)/1 'Cormorant Garamond',serif;color:#fff4de;text-shadow:0 3px 8px rgba(0,0,0,.3)}.nt-bola small{font:500 .7rem 'Montserrat',sans-serif;letter-spacing:.3em;text-transform:uppercase;color:#ffd9dc}.nt-bola .nt-flocos{font-size:3.4rem}
@keyframes ntpendula{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
.nt-data{margin:0;font:italic 500 clamp(1.25rem,5vw,1.7rem) 'Cormorant Garamond',serif;color:#fff0d2}
.nt-descer{position:absolute;bottom:26px;left:50%;margin-left:-20px;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(229,193,108,.6);color:#e5c16c;text-decoration:none;animation:ntsalta 2s ease-in-out infinite;z-index:3}
@keyframes ntsalta{50%{transform:translateY(7px)}}
.nt-estrela{font-size:2rem;color:#e5c16c;margin-bottom:14px;animation:ntgira 8s linear infinite;display:inline-block}@keyframes ntgira{to{transform:rotate(360deg)}}
.nt-assina{margin:22px 0 0;font:400 1.1rem 'Cormorant Garamond',serif;color:#c9bd9f}.nt-assina em{display:block;font:400 2.1rem 'Great Vibes',cursive;color:#f0d27e;font-style:normal}
