.cv{--ivory:#fcfaf5;--warm:#fffdf9;--sand:#f3ebdd;--champ:#e8dcc8;--green:#123d31;--green-deep:#0b3027;--gold:#c6a255;--gold-l:#dec781;--muted:#59635e;--line:rgba(18,61,49,.14);--ease:cubic-bezier(.22,1,.36,1);
  font-family:"Sora","Inter",system-ui,sans-serif;color:var(--green);background:var(--ivory);line-height:1.6;-webkit-font-smoothing:antialiased}
.cv *{box-sizing:border-box}
.cv img{max-width:100%;height:auto;display:block}
.cv-wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 24px}
.cv-header{display:flex;justify-content:center;padding:12px 24px;position:relative;z-index:2;background:var(--green-deep);border-bottom:1px solid rgba(198,162,85,.45)}
.cv-logo{width:150px;height:auto}
.cv-logo--sm{width:130px;margin:0 auto 14px;padding:10px 18px;border-radius:999px;background:var(--green-deep);box-sizing:content-box}

/* Card */
.cv-card{scroll-margin-top:16px;background:var(--warm);border:1px solid rgba(198,162,85,.45);border-radius:28px;padding:28px 28px 22px;box-shadow:0 24px 60px rgba(18,61,49,.10);transition:box-shadow .4s var(--ease),transform .4s var(--ease)}
.cv-card:hover{box-shadow:0 30px 70px rgba(18,61,49,.13)}
.cv-card-title{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;font-size:30px;line-height:1.1;margin:0 0 6px;color:var(--green-deep)}
.cv-card-text{font-size:14px;color:var(--muted);margin:0 0 16px}
.cv-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.cv-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.cv-field--full,.cv-form-error,.cv-btn--full,.cv-privacy{grid-column:1/-1}
.cv-field label{font-size:13px;font-weight:600;color:var(--green-deep)}
.cv-field input{width:100%;min-height:48px;padding:12px 16px;font:inherit;font-size:15px;color:var(--green-deep);background:#fff;border:1px solid var(--champ);border-radius:14px;transition:border-color .2s,box-shadow .2s}
.cv-field input::placeholder{color:#8b938e}
.cv-field input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(198,162,85,.35)}
.cv-field.has-error input{border-color:#a4553f}
.cv-field select,.cv-field textarea{width:100%;padding:12px 16px;font:inherit;font-size:15px;color:var(--green-deep);background:#fff;border:1px solid var(--champ);border-radius:14px;transition:border-color .2s,box-shadow .2s}
.cv-field select{min-height:48px}
.cv-field textarea{min-height:92px;resize:vertical}
.cv-field select:focus,.cv-field textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(198,162,85,.35)}
.cv-field textarea::placeholder{color:#8b938e}
.cv-field.has-error select,.cv-field.has-error textarea{border-color:#a4553f}
.cv-error{font-style:normal;font-size:12.5px;color:#9b4632;line-height:1.3}
.cv-form-error{margin:0;font-size:13.5px;color:#9b4632;background:#fbf1ec;border:1px solid #efd6cb;border-radius:12px;padding:10px 14px}
.cv-privacy{margin:2px 0 0;font-size:12px;color:var(--muted);text-align:center;line-height:1.5}
.cv-privacy a,.cv-footer a{color:var(--green);text-decoration:underline;text-underline-offset:2px}

/* Buttons */
.cv-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 30px;border:0;border-radius:999px;background:linear-gradient(120deg,var(--green) 0%,var(--green-deep) 100%);color:#fffdf9;font:inherit;font-size:14px;font-weight:700;letter-spacing:.06em;text-decoration:none;text-align:center;cursor:pointer;box-shadow:0 12px 26px rgba(11,48,39,.22),inset 0 0 0 1px rgba(222,199,129,.45);transition:transform .25s var(--ease),box-shadow .25s var(--ease),filter .25s}
.cv-btn:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 16px 32px rgba(11,48,39,.28),inset 0 0 0 1px rgba(222,199,129,.8)}
.cv-btn:active{transform:translateY(0);filter:brightness(.97)}
.cv-btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.cv-btn:disabled{cursor:wait;opacity:.85;transform:none}
.cv-btn--full{width:100%;margin-top:4px}
.cv-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,253,249,.35);border-top-color:var(--gold-l);animation:cv-spin .8s linear infinite}
@keyframes cv-spin{to{transform:rotate(360deg)}}

/* Success */
.cv-success{text-align:center;padding:36px 8px}
.cv-check{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:rgba(18,61,49,.08);color:var(--green);border:1px solid rgba(198,162,85,.6);margin-bottom:16px}

/* Event */
.cv-event{padding:88px 0;background:var(--warm);text-align:center;border-top:1px solid var(--line)}
.cv-narrow{max-width:780px}
.cv-h2{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;font-size:clamp(30px,3.6vw,46px);line-height:1.1;margin:0 0 22px;color:var(--green-deep)}
.cv-event p,.cv-founder p{font-size:16px;color:var(--muted);margin:0 0 14px}
.cv-event .cv-btn,.cv-founder .cv-btn{margin-top:18px}

/* Founder */
.cv-founder{padding:88px 0;background:linear-gradient(180deg,var(--ivory),var(--sand))}
.cv-founder-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center}
.cv-founder-photo{border-radius:28px;overflow:hidden;border:1px solid rgba(198,162,85,.45);box-shadow:0 24px 60px rgba(18,61,49,.12);aspect-ratio:4/5;background:var(--champ)}
.cv-founder-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.cv-highlight{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:24px!important;color:var(--green-deep)!important;margin-top:18px!important;padding-left:16px;border-left:2px solid var(--gold)}

/* Footer */
.cv-footer{text-align:center;padding:36px 24px 44px;background:var(--ivory);border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.cv-footer p{margin:0 0 8px}

/* Motion (hero sempre visível) */
.cv-reveal{transition:opacity .6s var(--ease),transform .6s var(--ease)}
.cv-reveal.cv-hidden{opacity:0;transform:translateY(16px)}
.cv-reveal.cv-hidden.cv-in{opacity:1;transform:none}
.cv-reveal:nth-child(2){transition-delay:.08s}
.cv-reveal:nth-child(3){transition-delay:.16s}
.cv-reveal:nth-child(4){transition-delay:.22s}
.cv-reveal:nth-child(n+5){transition-delay:.28s}
.cv-hero .cv-invite,.cv-hero .cv-card{animation:cv-up .6s var(--ease) both}
.cv-hero .cv-card{animation-delay:.08s}
@keyframes cv-up{from{transform:translateY(12px)}to{transform:none}}

@media (max-width:980px){
  .cv-hero-grid{grid-template-columns:1fr;gap:26px}
  .cv-invite{text-align:center;max-width:640px;margin:0 auto}
  .cv-card{max-width:640px;margin:0 auto;width:100%}
  .cv-founder-grid{grid-template-columns:1fr;gap:32px}
  .cv-founder-photo{max-width:360px;margin:0 auto;width:100%}
  .cv-founder-text{text-align:center}
  .cv-highlight{border-left:0;padding-left:0}
}
@media (max-width:640px){
  .cv-wrap{padding:0 16px}
  .cv-header{padding:10px 16px}
  .cv-logo{width:124px}
  .cv-hero{padding:22px 0 40px}
  .cv-eyebrow{font-size:11px}
  .cv-h1{font-size:clamp(30px,8.6vw,38px);margin:12px 0 12px}
  .cv-lead{font-size:15.5px}
  .cv-text{font-size:14px;margin-bottom:14px}
  .cv-info{font-size:13px;padding:9px 14px}
  .cv-card{padding:22px 16px 18px;border-radius:22px}
  .cv-card-title{font-size:26px}
  .cv-form{grid-template-columns:1fr}
  .cv-btn{font-size:13px;padding:14px 18px;width:100%}
  .cv-event,.cv-founder{padding:60px 0}
  .cv-event p,.cv-founder p{font-size:15px}
}
@media (prefers-reduced-motion:reduce){
  .cv *{animation:none!important;transition:none!important}
  .cv-reveal.cv-hidden{opacity:1;transform:none}
}
@media (max-width:767px){
}

/* Hero clara original */
.cv-hero{position:relative;overflow:hidden;padding:18px 0 56px;background:radial-gradient(ellipse at 15% 20%,#fff 0,var(--ivory) 45%,var(--sand) 100%)}
.cv-orb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(2px)}
.cv-orb--a{width:420px;height:420px;left:-160px;top:-120px;background:radial-gradient(circle,rgba(222,199,129,.35),transparent 70%)}
.cv-orb--b{width:520px;height:520px;right:-200px;bottom:-220px;background:radial-gradient(circle,rgba(18,61,49,.10),transparent 70%)}
.cv-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.02fr;gap:56px;align-items:start;padding-top:32px}
.cv-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.2em;color:#8a6a24;padding:7px 14px;border:1px solid rgba(198,162,85,.5);border-radius:999px;background:rgba(255,253,249,.7)}
.cv-h1{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;font-size:clamp(34px,4.4vw,58px);line-height:1.04;letter-spacing:-.01em;margin:18px 0 18px;color:var(--green-deep)}
.cv-lead{font-size:17px;margin:0 0 12px;color:var(--green)}
.cv-text{font-size:15px;margin:0 0 20px;color:var(--muted)}
.cv-info{display:inline-block;margin:0;font-size:14px;font-weight:600;color:var(--green-deep);padding:10px 18px;border-radius:999px;background:var(--warm);border:1px solid var(--line);box-shadow:0 8px 22px rgba(18,61,49,.06)}
.cv-speakers{display:block;width:100%;max-width:640px;height:auto;aspect-ratio:1620/1002;object-fit:contain;margin:20px auto 0;background:none;border:0;border-radius:0;animation:cv-speak .75s var(--ease) .1s both}
@keyframes cv-speak{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (max-width:980px){.cv-hero-grid{padding-top:12px}.cv-speakers{margin-top:16px}}
@media (max-width:640px){.cv-speakers{width:min(106%,calc(100vw - 16px));max-width:none;margin:14px 0 0 50%;transform:translateX(-50%);animation-name:cv-speak-m}}
@keyframes cv-speak-m{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.cv-speakers{animation:none}}
@media (max-width:980px){.cv-hero-grid{grid-template-columns:1fr;gap:20px}.cv-invite{text-align:center;max-width:640px;margin:0 auto}}
@media (max-width:640px){.cv-hero{padding:10px 0 40px}.cv-eyebrow{font-size:11px}.cv-h1{font-size:clamp(30px,8.6vw,38px);margin:12px 0}.cv-lead{font-size:15.5px}.cv-text{font-size:14px;margin-bottom:14px}.cv-info{font-size:13px;padding:9px 14px}}
.cv-ok{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--green-deep);line-height:1.3;animation:cv-okin .3s var(--ease) both}
@keyframes cv-okin{from{opacity:0}to{opacity:1}}
.cv-invite>picture>.cv-speakers{margin:0 auto 6px;max-width:600px;max-height:400px;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 70%,rgba(0,0,0,.92) 78%,rgba(0,0,0,.55) 89%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 70%,rgba(0,0,0,.92) 78%,rgba(0,0,0,.55) 89%,transparent 100%)}
.cv-hero-grid{padding-top:0}
.cv-hero{padding-top:22px}
.cv-invite>picture+.cv-eyebrow{margin-top:-6px}
@media (max-width:980px){.cv-hero-grid{align-items:start}}
@media (max-width:640px){.cv-invite>picture>.cv-speakers{max-height:none;margin:0 0 4px 50%}.cv-hero{padding-top:14px}}
.cv-invite>picture>.cv-speakers{-webkit-mask-image:none;mask-image:none;margin-bottom:-18px}
.cv-invite>picture{display:contents}
.cv-invite>picture>.cv-speakers{background:transparent;box-shadow:none;filter:none;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 62%,rgba(0,0,0,.98) 68%,rgba(0,0,0,.88) 74%,rgba(0,0,0,.68) 82%,rgba(0,0,0,.42) 89%,rgba(0,0,0,.16) 96%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 62%,rgba(0,0,0,.98) 68%,rgba(0,0,0,.88) 74%,rgba(0,0,0,.68) 82%,rgba(0,0,0,.42) 89%,rgba(0,0,0,.16) 96%,transparent 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;margin-bottom:clamp(-30px,-2vw,-18px)}
@media (max-width:767px){.cv-invite>picture>.cv-speakers{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.9) 76%,rgba(0,0,0,.62) 85%,rgba(0,0,0,.25) 94%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.9) 76%,rgba(0,0,0,.62) 85%,rgba(0,0,0,.25) 94%,transparent 100%);margin-bottom:-14px}}
/* ===== Portão de acesso /convite ===== */
.cv-page{display:none}
html.cv-granted .cv-page,.cv-page.is-open{display:block}
html.cv-granted .cv-gate{display:none}
.cv.cv-gate{min-height:0}
.cv-gate{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px 18px;overflow-y:auto;background:radial-gradient(ellipse at 50% 20%,#fff 0,var(--ivory) 55%,var(--sand) 100%);color:var(--green-deep);font-family:Sora,system-ui,sans-serif;transition:opacity .46s cubic-bezier(.22,1,.36,1)}
.cv-gate-inner{width:100%;max-width:400px;text-align:center;transition:opacity .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1);animation:cv-up .6s cubic-bezier(.22,1,.36,1) both}
.cv-gate.is-leaving{opacity:0;pointer-events:none}
.cv-gate.is-leaving .cv-gate-inner{opacity:0;transform:translateY(-14px) scale(.985)}
.cv-gate-logo{display:block;width:176px;height:auto;margin:0 auto;padding:14px 22px;box-sizing:content-box;background:var(--green-deep);border-radius:18px;box-shadow:0 14px 34px rgba(11,48,39,.16)}
.cv-gate-rule{display:block;width:44px;height:1px;margin:26px auto 22px;background:var(--gold,#c6a255)}
.cv-gate-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.22em;color:var(--gold,#a88437)}
.cv-gate-title{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;font-size:clamp(34px,8vw,44px);line-height:1.05;margin:12px 0 10px;color:var(--green-deep)}
.cv-gate-text{font-size:14.5px;color:var(--muted);margin:0 0 28px}
.cv-gate-form{display:flex;flex-direction:column;gap:8px;text-align:left}
.cv-gate-form label{font-size:13px;font-weight:600}
.cv-gate-input{position:relative}
.cv-gate-input input{width:100%;min-height:52px;padding:12px 52px 12px 16px;font:inherit;font-size:16px;letter-spacing:.06em;color:var(--green-deep);background:#fff;border:1px solid var(--champ);border-radius:14px;transition:border-color .2s,box-shadow .2s}
.cv-gate-input input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(198,162,85,.35)}
.cv-gate-input.has-error input{border-color:#a4553f}
.cv-gate-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer}
.cv-gate-eye:focus-visible{outline:2px solid var(--gold,#c6a255)}
.cv-gate-btn{margin-top:10px;gap:8px}
.cv-gate-btn.is-ok{opacity:1}
.cv-hint{font-size:12px;line-height:1.4;color:var(--muted)}
/* Entrada da LP */
@keyframes cv-enter{from{opacity:0;transform:translateY(18px) scale(.995)}to{opacity:1;transform:none}}
.cv-entering .cv-hero .cv-speakers,.cv-entering .cv-hero .cv-eyebrow,.cv-entering .cv-hero .cv-h1,.cv-entering .cv-hero .cv-lead,.cv-entering .cv-hero .cv-text,.cv-entering .cv-hero .cv-info,.cv-entering .cv-hero .cv-card,.cv-entering .cv-hero .cv-invite{animation:cv-enter .62s cubic-bezier(.22,1,.36,1) both}
.cv-entering .cv-hero .cv-invite{animation:none}
.cv-entering .cv-hero .cv-eyebrow{animation-delay:75ms}
.cv-entering .cv-hero .cv-h1,.cv-entering .cv-hero .cv-lead,.cv-entering .cv-hero .cv-text,.cv-entering .cv-hero .cv-info{animation-delay:150ms}
.cv-entering .cv-hero .cv-card{animation-delay:225ms}
@media (max-width:640px){.cv-entering .cv-hero .cv-speakers{animation-name:cv-speak-m}}
@media (prefers-reduced-motion:reduce){.cv-gate,.cv-gate-inner{transition:none;animation:none}.cv-entering .cv-hero *{animation:none!important}}
@media (max-width:640px){.cv-field input{min-height:46px}}
