:root{
  --ink:#0a0b0e;--ink2:#14161b;--ouro:#c9a24b;--ouro2:#e6c477;--marfim:#f6f0dc;--papel:#faf8f3;
  --texto:#23262d;--suave:#6b6f78;--linha:#e2ddd0;--chama:#d9531e;--erro:#a8281c;--ok:#1d7a47;
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:74px}
body{font-family:var(--sans);color:var(--texto);background:var(--papel);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
.eyebrow{font-size:11.5px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--ouro)}
.rule{width:56px;height:2px;background:var(--ouro);margin:16px 0 22px}
.rule.c{margin-left:auto;margin-right:auto}
h2.titulo{font-family:var(--serif);font-weight:600;font-size:clamp(30px,4.4vw,46px);line-height:1.12;color:var(--ink)}
.sec{padding:84px 0}
.sec.escura{background:var(--ink);color:#e9e5d8}
.sec.escura h2.titulo{color:#fff}
.centro{text-align:center}
.lead{font-size:17px;color:var(--suave);max-width:640px}
.escura .lead{color:#a9a69b}
.centro .lead{margin-left:auto;margin-right:auto}

/* NAV */
.nav{position:sticky;top:0;z-index:50;background:rgba(10,11,14,.96);backdrop-filter:blur(8px);border-bottom:1px solid #2a2c33}
.nav .wrap{display:flex;align-items:center;gap:26px;height:68px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.marca img{height:44px;width:auto;}
.marca span{font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:.04em;line-height:1.1}
.marca small{display:block;font-family:var(--sans);font-size:9.5px;letter-spacing:.24em;color:var(--ouro);font-weight:500}
.nav ul{display:flex;gap:26px;list-style:none;margin-left:auto}
.nav ul a{font-size:13px;letter-spacing:.06em;text-decoration:none;color:#cfcbbd;transition:color .2s}
.nav ul a:hover{color:var(--ouro2)}
.btn{display:inline-block;border:0;cursor:pointer;font:600 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:15px 26px;border-radius:2px;transition:.2s}
.btn.ouro{background:var(--ouro);color:#14110a}.btn.ouro:hover{background:var(--ouro2)}
.btn.linha{border:1px solid var(--ouro);color:var(--ouro2)}.btn.linha:hover{background:var(--ouro);color:#14110a}
.btn.escuro{background:var(--ink);color:#fff}.btn.escuro:hover{background:#262932}
.btn:disabled{opacity:.55;cursor:default}
.nav .btn{padding:11px 18px;font-size:11.5px}
@media(max-width:860px){.nav ul{display:none}.nav .btn{margin-left:auto}.marca span{font-size:15px}}

/* HERO / SLIDESHOW */
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden;min-height:560px}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 78% 30%,rgba(217,83,30,.20),transparent 60%),radial-gradient(ellipse 50% 60% at 15% 90%,rgba(201,162,75,.12),transparent 60%)}
.hero .marca-agua{position:absolute;right:-60px;top:50%;transform:translateY(-50%);width:520px;opacity:.07;pointer-events:none}
.slides{position:relative;min-height:560px}
.slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s}
.slide.on{opacity:1;visibility:visible}
.slide .wrap{width:100%}
.slide .conteudo{max-width:780px;padding:70px 0 90px}
.slide .tag{display:flex;align-items:center;gap:14px}
.slide .tag::after{content:"";height:1px;width:60px;background:var(--ouro)}
.slide blockquote{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(28px,4.6vw,50px);line-height:1.22;margin:22px 0 22px;color:#fff;transform:translateY(14px);transition:transform 1s ease}
.slide.on blockquote{transform:none}
.slide cite{font-style:normal;font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro2);font-weight:600}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.ctrl{position:absolute;left:0;right:0;bottom:26px;z-index:3}
.ctrl .wrap{display:flex;align-items:center;gap:18px}
.dots{display:flex;gap:9px}
.dots button{width:34px;height:3px;border:0;background:#4a4c53;cursor:pointer;padding:0;position:relative;overflow:hidden}
.dots button.on::after{content:"";position:absolute;inset:0;background:var(--ouro);transform-origin:left;animation:prog var(--dur,8s) linear forwards}
.dots.parado button.on::after{animation:none;transform:none}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.setas{margin-left:auto;display:flex;gap:8px}
.setas button{width:42px;height:42px;border:1px solid #4a4c53;background:transparent;color:#fff;cursor:pointer;transition:.2s}
.setas button:hover{border-color:var(--ouro);color:var(--ouro2)}
.setas svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}

/* FAIXA DO DIA */
.faixa{background:var(--marfim);border-top:1px solid #d9cfa8;border-bottom:1px solid #d9cfa8}
.faixa .wrap{display:flex;gap:26px;align-items:center;padding-top:26px;padding-bottom:26px;flex-wrap:wrap}
.faixa .data{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink);border-right:1px solid #c9bd8f;padding-right:26px}
.faixa .data small{display:block;font-family:var(--sans);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:#8a6d22;font-weight:600}
.faixa p{font-family:var(--serif);font-size:20px;font-style:italic;flex:1;min-width:240px;color:#2b2a24}
.faixa p b{font-style:normal;font-family:var(--sans);font-size:12px;letter-spacing:.16em;color:#8a6d22;text-transform:uppercase;margin-left:8px;white-space:nowrap}

/* BENEFICIOS */
.grelha{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:50px;border-top:1px solid var(--linha);border-left:1px solid var(--linha)}
.ben{padding:32px 26px;border-right:1px solid var(--linha);border-bottom:1px solid var(--linha);background:#fff}
.ben svg{width:34px;height:34px;stroke:var(--ouro);fill:none;stroke-width:1.4;margin-bottom:18px}
.ben h3{font-family:var(--serif);font-size:22px;color:var(--ink);margin-bottom:8px;line-height:1.2}
.ben p{font-size:14.5px;color:var(--suave)}
@media(max-width:960px){.grelha{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.grelha{grid-template-columns:1fr}}

/* PASSOS */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:50px;counter-reset:p}
.passo{position:relative;padding-top:58px}
.passo::before{counter-increment:p;content:"0" counter(p);position:absolute;top:0;left:0;font-family:var(--serif);font-size:54px;font-weight:600;line-height:1;color:transparent;-webkit-text-stroke:1px var(--ouro)}
.passo h3{font-family:var(--serif);font-size:24px;color:#fff;margin-bottom:6px}
.passo p{font-size:15px;color:#a9a69b}
@media(max-width:760px){.passos{grid-template-columns:1fr;gap:26px}}

/* CARTAO PREVIEW + DEVERES */
.duas{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
@media(max-width:900px){.duas{grid-template-columns:1fr;gap:40px}}
.mini{width:100%;max-width:520px;aspect-ratio:540/340;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,#fff,#e3e5e9);position:relative;box-shadow:0 30px 60px -20px rgba(0,0,0,.45),0 0 0 1px rgba(0,0,0,.08);margin:0 auto}
.mini .topo{background:var(--ink);height:27%;border-bottom:3px solid var(--ouro);display:flex;align-items:center;padding:0 5%;gap:4%}
.mini .topo img{height:78%;}
.mini .topo div{color:#fff;text-align:center;flex:1;font-family:var(--serif);line-height:1.15}
.mini .topo b{display:block;font-size:clamp(12px,2.4vw,18px);letter-spacing:.04em}
.mini .topo i{display:block;font-style:normal;font-family:var(--sans);font-size:clamp(5px,1.1vw,8px);letter-spacing:.3em;color:var(--ouro)}
.mini .topo em{display:block;font-style:normal;font-size:clamp(7px,1.5vw,11px);font-weight:700}
.mini .corpo{display:flex;gap:4%;padding:3.5% 4%}
.mini .fotop{width:21%;aspect-ratio:3/3.7;border:1px solid #aaa;background:#f1f1f1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 74'%3E%3Ccircle cx='30' cy='28' r='11' fill='%23c9ccd2'/%3E%3Cpath d='M8 74c2-18 12-26 22-26s20 8 22 26z' fill='%23c9ccd2'/%3E%3C/svg%3E") center/cover}
.mini .campos{flex:1}
.mini .campos span{display:block;border-bottom:1px solid #9a9a9a;font:700 clamp(5.5px,1.2vw,9px)/1 var(--sans);padding:1.7% 0;margin-bottom:1.7%;color:#222;white-space:nowrap}
.mini .campos span em{font-style:normal;font-weight:400;color:#777}
.mini .qrp{position:absolute;right:4%;bottom:15%;width:13%;aspect-ratio:1;background:#fff;border:2px solid #111;border-radius:3px;padding:2px}
.mini .qrp svg{width:100%;height:100%}
.mini .base{position:absolute;left:0;right:0;bottom:0;height:10%;background:var(--ink);border-top:2px solid var(--ouro);color:var(--ouro);font:700 clamp(7px,1.6vw,12px)/1 var(--sans);text-align:right;padding:2.2% 8% 0;letter-spacing:.06em}
.deveres{list-style:none;counter-reset:d;margin-top:22px}
.deveres li{counter-increment:d;display:flex;gap:16px;padding:13px 0;border-bottom:1px solid var(--linha);font-size:15px}
.deveres li::before{content:counter(d);font-family:var(--serif);font-size:24px;font-weight:600;color:var(--ouro);line-height:1;min-width:22px}
.deveres li small{display:block;color:var(--suave);font-size:12px;letter-spacing:.08em}

/* FORMULARIO */
.form-wrap{background:#fff;border:1px solid var(--linha);box-shadow:0 24px 50px -28px rgba(0,0,0,.35);max-width:860px;margin:44px auto 0}
.form-top{background:var(--ink);color:#fff;padding:22px 34px;display:flex;align-items:center;gap:16px;border-bottom:3px solid var(--ouro)}
.form-top img{height:46px;}
.form-top b{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:.03em;display:block;line-height:1.1}
.form-top small{font-size:10.5px;letter-spacing:.22em;color:var(--ouro);text-transform:uppercase}
form#f{padding:10px 34px 36px}
fieldset{border:0;padding:26px 0 4px}
legend{font-family:var(--serif);font-size:23px;font-weight:600;color:var(--ink);width:100%;padding-bottom:10px;border-bottom:1px solid var(--linha);margin-bottom:6px}
legend span{font-family:var(--sans);font-size:10.5px;letter-spacing:.24em;color:var(--ouro);margin-right:12px;vertical-align:middle}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
@media(max-width:620px){.g2{grid-template-columns:1fr}form#f{padding:6px 20px 28px}.form-top{padding:18px 20px}}
label.l{display:block;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#4b4f58;margin:18px 0 7px}
label.l i{color:var(--chama);font-style:normal}
.in{width:100%;font:400 16px var(--sans);color:var(--texto);padding:13px 14px;border:1px solid #cfc9b7;border-radius:2px;background:#fdfcf9;transition:.2s}
.in:focus{outline:0;border-color:var(--ouro);box-shadow:0 0 0 3px rgba(201,162,75,.2);background:#fff}
.foto-area{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:10px}
.foto-box{width:132px;aspect-ratio:3/3.75;border:1px dashed #b9b19a;background:#f6f3ea;display:grid;place-items:center;overflow:hidden;flex:none}
.foto-box img{width:100%;height:100%;object-fit:cover}
.foto-box svg{width:56px;fill:#cdc7b4}
.foto-btns{display:flex;flex-direction:column;gap:10px}
.foto-btns small{font-size:12.5px;color:var(--suave);max-width:300px}
.btn.fino{background:#fff;border:1px solid #bdb59b;color:var(--ink);padding:12px 18px;font-size:11.5px}.btn.fino:hover{border-color:var(--ouro);background:#fbf6e6}
.decl{display:flex;gap:12px;align-items:flex-start;margin-top:26px;font-size:14px;color:#4b4f58}
.decl input{margin-top:4px;width:18px;height:18px;accent-color:var(--ouro);flex:none}
#msg{margin-top:16px;font-size:14px}
#msg.err{color:var(--erro);background:#fbebe8;padding:12px 14px;border-left:3px solid var(--erro)}
.enviar{margin-top:24px;width:100%;padding:18px}
.sucesso{padding:60px 34px;text-align:center;display:none}
.sucesso svg{width:56px;height:56px;stroke:var(--ouro);fill:none;stroke-width:1.4;margin:0 auto 18px}
.sucesso h3{font-family:var(--serif);font-size:32px;color:var(--ink);margin-bottom:10px}
.sucesso p{color:var(--suave);max-width:460px;margin:0 auto 26px}

/* RODAPE */
footer{background:var(--ink);color:#a9a69b;border-top:3px solid var(--ouro)}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-top:54px;padding-bottom:40px}
footer img{height:120px;width:auto;margin-left:-10px}
footer h4{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--ouro);margin-bottom:14px;font-weight:600}
footer a{display:block;text-decoration:none;font-size:14px;padding:4px 0}footer a:hover{color:var(--ouro2)}
footer .peq{border-top:1px solid #23252b;text-align:center;font-size:12px;padding:18px;letter-spacing:.04em}
@media(max-width:760px){footer .wrap{grid-template-columns:1fr;gap:26px}footer img{height:100px}}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* acesso reservado: apenas um ponto discreto no rodapé */
.ponto-acesso{display:flex;align-items:flex-end;justify-content:flex-end}
.ponto-acesso a{display:inline-block;padding:4px 10px;font-size:18px;line-height:1;color:#4a4c53;text-decoration:none;cursor:default}
.ponto-acesso a:hover{color:var(--ouro)}
@media(max-width:760px){.ponto-acesso{justify-content:flex-start}}
@media(max-width:520px){.marca span{font-size:12.5px;letter-spacing:.02em}.marca small{font-size:7.5px;letter-spacing:.12em}.marca img{height:38px}.nav .wrap{gap:12px}}
