/* Harmonize Convites — site institucional
   Direção: papelaria fina, editorial e calma. Marsala conduz, ouro só em filete e ornamento
   (ouro sobre creme não passa em contraste de texto). Cormorant para display, Jost para texto. */

@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500 600;font-display:swap;src:url(fontes/cormorant-garamond-500.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url(fontes/cormorant-garamond-500-italic.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:400 500;font-display:swap;src:url(fontes/jost-400.woff2) format('woff2')}

:root{
  --marsala-900:#3e0f1c;
  --marsala-700:#5a1a2a;
  --marsala-500:#7a2f42;
  --ouro:#b08745;
  --ouro-texto:#7d5a1f;
  --ouro-claro:#dcbd83;
  --creme:#fbf8f3;
  --creme-2:#f4ece0;
  --papel:#ffffff;
  --tinta:#2a1518;
  --tinta-2:#5b4649;
  --linha:#e6d9c6;
  --sobre-escuro:#f3e6df;

  --f-display:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --f-texto:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;

  --e-1:4px;--e-2:8px;--e-3:12px;--e-4:16px;--e-5:24px;--e-6:32px;--e-7:48px;--e-8:64px;--e-9:96px;
  --t-12:.75rem;--t-14:.875rem;--t-16:1rem;--t-20:1.25rem;--t-25:1.5625rem;--t-31:1.953rem;--t-39:2.441rem;--t-49:3.052rem;

  --raio:6px;
  --largura:1200px;
  --anel:0 0 0 3px var(--papel),0 0 0 5px var(--marsala-500);
  --sombra-papel:0 1px 2px rgba(62,15,28,.08),0 12px 32px -12px rgba(62,15,28,.25);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--creme);color:var(--tinta);font-family:var(--f-texto);font-size:var(--t-16);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--marsala-700)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:none;box-shadow:var(--anel);border-radius:var(--raio)}
h1,h2,h3{text-wrap:balance;font-family:var(--f-display);font-weight:500;line-height:1.12;letter-spacing:-.01em;color:var(--marsala-900);margin:0}
p{margin:0}

.pular{position:absolute;left:var(--e-4);top:-60px;background:var(--marsala-700);color:#fff;padding:var(--e-2) var(--e-4);border-radius:var(--raio);z-index:50;text-decoration:none}
.pular:focus{top:var(--e-4)}

.envoltorio{width:100%;max-width:var(--largura);margin:0 auto;padding:0 var(--e-5)}

/* ---------- Rótulo de seção ---------- */
.olho{display:inline-flex;align-items:center;gap:var(--e-3);font-size:var(--t-12);font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--ouro-texto);margin-bottom:var(--e-4)}
.olho::before{content:"";width:28px;height:1px;background:var(--ouro)}
.secao{padding:var(--e-9) 0}
.secao__cabeca{max-width:680px;margin-bottom:var(--e-7)}
.secao__cabeca h2{font-size:clamp(var(--t-31),4.4vw,var(--t-49))}
.secao__cabeca h2 em{font-style:italic;color:var(--marsala-500)}
.secao__cabeca p:not(.olho){margin-top:var(--e-4);color:var(--tinta-2);font-size:1.0625rem;max-width:60ch}

/* ---------- Botões ---------- */
.botao{display:inline-flex;align-items:center;justify-content:center;gap:var(--e-2);min-height:48px;padding:0 var(--e-5);border-radius:var(--raio);font-family:var(--f-texto);font-size:var(--t-16);font-weight:500;letter-spacing:.01em;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .18s ease-out,color .18s ease-out,border-color .18s ease-out}
.botao svg{width:18px;height:18px;flex:none}
.botao--primario{background:var(--marsala-700);color:#fff}
.botao--primario:hover{background:var(--marsala-900)}
.botao--primario:active{background:#2c0a14}
.botao--contorno{border-color:var(--marsala-700);color:var(--marsala-700);background:transparent}
.botao--contorno:hover{background:var(--marsala-700);color:#fff}
.botao--claro{background:var(--creme);color:var(--marsala-900)}
.botao--claro:hover{background:#fff}
.botao--linha-clara{border-color:rgba(243,230,223,.55);color:var(--sobre-escuro);background:transparent}
.botao--linha-clara:hover{border-color:var(--sobre-escuro);background:rgba(255,255,255,.06)}
.botao--compacto{min-height:44px;padding:0 var(--e-4);font-size:var(--t-14)}

/* ---------- Cabeçalho ---------- */
.topo{position:sticky;top:0;z-index:30;background:rgba(251,248,243,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--linha)}
.topo__linha{display:flex;align-items:center;justify-content:space-between;gap:var(--e-5);min-height:72px}
.topo__marca{display:block;flex:none}
.topo__marca img{width:200px}
.topo__menu{display:none}
.topo__menu ul{display:flex;gap:var(--e-5);list-style:none;margin:0;padding:0}
.topo__menu a{color:var(--tinta);text-decoration:none;font-size:.9375rem;padding:var(--e-2) 0;border-bottom:1px solid transparent;transition:border-color .18s ease-out,color .18s ease-out}
.topo__menu a:hover{color:var(--marsala-700);border-bottom-color:var(--ouro)}
@media (min-width:1024px){.topo__menu{display:block}.topo__marca img{width:230px}}

/* ---------- Hero ---------- */
.hero{position:relative;padding:var(--e-8) 0 var(--e-9);overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 520px at 88% 30%,rgba(176,135,69,.12),transparent 65%),radial-gradient(700px 480px at -5% 100%,rgba(90,26,42,.07),transparent 60%);pointer-events:none}
.hero__grade{position:relative;display:grid;gap:var(--e-8);align-items:center}
.hero h1{font-size:clamp(2.35rem,6vw,3.9rem);line-height:1.06;max-width:15ch}
.hero h1 em{font-style:italic;color:var(--marsala-500)}
.hero__sub{margin-top:var(--e-5);font-size:1.125rem;color:var(--tinta-2);max-width:52ch}
.hero__acoes{margin-top:var(--e-6);display:flex;flex-wrap:wrap;gap:var(--e-3)}
.hero__nota{margin-top:var(--e-4);font-size:var(--t-14);color:var(--tinta-2)}
@media (min-width:960px){.hero__grade{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.hero{padding:var(--e-9) 0}}

/* Suíte de papelaria ilustrada (decorativa) */
.suite{position:relative;width:100%;max-width:470px;aspect-ratio:1/1;margin:0 auto}
.suite__envelope{position:absolute;left:4%;top:20%;width:72%;aspect-ratio:1.45/1;background:linear-gradient(160deg,var(--marsala-500),var(--marsala-900));border-radius:4px;transform:rotate(-8deg);box-shadow:var(--sombra-papel);overflow:hidden}
.suite__envelope::before{content:"";position:absolute;inset:0;background:linear-gradient(200deg,rgba(255,255,255,.1),transparent 45%);clip-path:polygon(0 0,100% 0,50% 58%)}
.suite__envelope::after{content:"";position:absolute;inset:0;border-top:1px solid rgba(220,189,131,.35);clip-path:polygon(0 0,100% 0,50% 58%);background:linear-gradient(180deg,rgba(0,0,0,.12),transparent)}
.suite__lacre{position:absolute;left:12%;top:52%;width:17%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e8cf98,var(--ouro) 55%,#86652c);box-shadow:0 2px 6px rgba(0,0,0,.35),inset 0 0 0 3px rgba(255,255,255,.18);display:grid;place-items:center;font-family:var(--f-display);font-style:italic;font-size:clamp(.9rem,2.6vw,1.25rem);color:#5c3f12;z-index:2;transform:rotate(-8deg)}
.suite__convite{position:absolute;right:4%;top:6%;width:56%;aspect-ratio:.7/1;background:var(--papel);border-radius:3px;transform:rotate(5deg);box-shadow:var(--sombra-papel);padding:9% 8%;display:flex;flex-direction:column;align-items:center;text-align:center;z-index:3}
.suite__convite::before{content:"";position:absolute;inset:5%;border:1px solid var(--ouro);opacity:.55;pointer-events:none}
.suite__monograma{width:46%;margin-bottom:8%}
.suite__pre{font-size:clamp(.45rem,1.35vw,.62rem);letter-spacing:.2em;text-transform:uppercase;color:var(--tinta-2)}
.suite__nomes{font-family:var(--f-display);font-style:italic;font-size:clamp(1.25rem,4vw,1.9rem);line-height:1.1;color:var(--marsala-700);margin:6% 0}
.suite__data{font-family:var(--f-display);font-size:clamp(.6rem,1.8vw,.85rem);letter-spacing:.14em;color:var(--tinta);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);padding:4% 8%;margin-top:auto}
.suite__tag{position:absolute;left:14%;bottom:6%;width:30%;aspect-ratio:1.6/1;background:var(--creme-2);border-radius:3px 3px 3px 3px;transform:rotate(-3deg);box-shadow:var(--sombra-papel);display:grid;place-items:center;font-family:var(--f-display);font-style:italic;font-size:clamp(.85rem,2.4vw,1.15rem);color:var(--marsala-700);z-index:4;clip-path:polygon(14% 0,100% 0,100% 100%,14% 100%,0 50%)}
.suite__tag::before{content:"";position:absolute;left:12%;top:50%;width:7%;aspect-ratio:1;border-radius:50%;background:var(--creme);transform:translateY(-50%);box-shadow:inset 0 0 0 1px var(--linha)}
.suite__fita{position:absolute;right:10%;bottom:12%;width:34%;height:3px;background:var(--ouro);transform:rotate(-20deg);opacity:.7;border-radius:3px}

/* ---------- Faixa de confiança ---------- */
.faixa{border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);background:var(--papel)}
.faixa ul{list-style:none;margin:0 auto;padding:var(--e-5);display:grid;gap:var(--e-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.faixa li{display:flex;flex-direction:column;gap:2px;padding-left:var(--e-4);border-left:1px solid var(--ouro)}
.faixa strong{font-family:var(--f-display);font-size:var(--t-20);font-weight:600;color:var(--marsala-900);line-height:1.2}
.faixa span{font-size:var(--t-14);color:var(--tinta-2)}

/* ---------- Papelaria ---------- */
.momentos{display:grid;gap:var(--e-5)}
@media (min-width:900px){.momentos{grid-template-columns:repeat(3,minmax(0,1fr))}}
.momento{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);padding:var(--e-6) var(--e-5)}
.momento__numero{font-family:var(--f-display);font-style:italic;font-size:var(--t-39);line-height:1;color:var(--ouro)}
.momento h3{font-size:var(--t-25);margin:var(--e-3) 0 var(--e-2)}
.momento > p{color:var(--tinta-2);font-size:.9375rem}
.itens{list-style:none;margin:var(--e-5) 0 0;padding:0;border-top:1px solid var(--linha)}
.itens li{padding:var(--e-4) 0;border-bottom:1px solid var(--linha)}
.itens li:last-child{border-bottom:0;padding-bottom:0}
.itens strong{display:block;font-weight:500;color:var(--tinta)}
.itens span{display:block;font-size:var(--t-14);color:var(--tinta-2);margin-top:2px}
.nota-lista{margin-top:var(--e-6);color:var(--tinta-2);font-size:.9375rem}
.nota-lista a{font-weight:500}

/* ---------- Como funciona ---------- */
.secao--tinta{background:var(--creme-2)}
.passos{list-style:none;margin:0;padding:0;display:grid;gap:var(--e-5);counter-reset:passo}
@media (min-width:768px){.passos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.passos{grid-template-columns:repeat(5,minmax(0,1fr))}}
.passo{counter-increment:passo;position:relative;padding-top:var(--e-6);border-top:1px solid var(--marsala-700)}
.passo::before{content:counter(passo,decimal-leading-zero);position:absolute;top:var(--e-3);left:0;font-size:var(--t-12);font-weight:500;letter-spacing:.2em;color:var(--ouro-texto)}
.passo h3{font-size:var(--t-25);margin-bottom:var(--e-2)}
.passo p{color:var(--tinta-2);font-size:.9375rem}

/* ---------- Prazos ---------- */
.prazos{display:grid;gap:var(--e-7);align-items:start}
@media (min-width:960px){.prazos{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
.linha-tempo{list-style:none;margin:0;padding:0;position:relative}
.linha-tempo::before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:1px;background:var(--linha)}
.linha-tempo li{position:relative;padding:0 0 var(--e-6) var(--e-7)}
.linha-tempo li:last-child{padding-bottom:0}
.linha-tempo li::before{content:"";position:absolute;left:0;top:7px;width:15px;height:15px;border-radius:50%;background:var(--creme);border:1px solid var(--ouro)}
.linha-tempo li:first-child::before{background:var(--ouro)}
.linha-tempo__quando{font-size:var(--t-12);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ouro-texto)}
.linha-tempo h3{font-size:var(--t-25);margin:var(--e-1) 0 var(--e-2)}
.linha-tempo p{color:var(--tinta-2);font-size:.9375rem;max-width:56ch}
.aviso-guia{margin-top:var(--e-5);font-size:var(--t-14);color:var(--tinta-2);border-left:2px solid var(--ouro);padding-left:var(--e-4)}

/* ---------- Experiências digitais (fundo marsala) ---------- */
.escuro{background:linear-gradient(170deg,var(--marsala-700),var(--marsala-900));color:var(--sobre-escuro)}
.escuro h2,.escuro h3{color:#fff}
.escuro .olho{color:var(--ouro-claro)}
.escuro .olho::before{background:var(--ouro-claro)}
.escuro .secao__cabeca p:not(.olho){color:var(--sobre-escuro)}
.escuro .secao__cabeca h2 em{color:var(--ouro-claro)}
.produto{display:grid;gap:var(--e-7);align-items:center}
.produto + .produto{margin-top:var(--e-9);padding-top:var(--e-9);border-top:1px solid rgba(243,230,223,.16)}
@media (min-width:960px){
  .produto{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
  .produto--invertido .produto__texto{order:2}
}
.produto__texto h3{font-size:clamp(var(--t-31),3.6vw,var(--t-39))}
.produto__texto h3 em{font-style:italic;color:var(--ouro-claro)}
.produto__texto > p:not(.olho){margin-top:var(--e-4);font-size:1.0625rem;max-width:56ch}
.recursos{list-style:none;margin:var(--e-6) 0 0;padding:0;display:grid;gap:var(--e-4) var(--e-5)}
@media (min-width:640px){.recursos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.recursos li{padding-left:var(--e-4);border-left:1px solid rgba(220,189,131,.6)}
.recursos strong{display:block;color:#fff;font-weight:500}
.recursos span{display:block;font-size:var(--t-14);color:var(--sobre-escuro);margin-top:2px}
.produto__acoes{margin-top:var(--e-6);display:flex;flex-wrap:wrap;gap:var(--e-3)}

/* Celular ilustrado */
.celular{width:min(290px,78vw);margin:0 auto;aspect-ratio:9/18.5;border-radius:38px;background:#1d070d;padding:12px;box-shadow:0 30px 60px -20px rgba(0,0,0,.55),inset 0 0 0 1px rgba(255,255,255,.08)}
.celular__tela{height:100%;border-radius:28px;overflow:hidden;background:var(--creme);display:flex;flex-direction:column;position:relative}
.gal__topo{padding:28px 16px 12px;text-align:center}
.gal__tipo{font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--marsala-500);font-weight:500}
.gal__nomes{font-family:var(--f-display);font-size:1.6rem;color:var(--marsala-900);line-height:1.1;margin-top:4px}
.gal__botao{margin:10px 16px 12px;background:var(--marsala-700);color:#fff;border-radius:999px;text-align:center;font-size:.75rem;font-weight:500;padding:9px}
.gal__grade{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:0 4px 4px}
.gal__grade span{border-radius:4px;background:linear-gradient(160deg,#e8c9b7,#b98372)}
.gal__grade span:nth-child(3n+2){background:linear-gradient(160deg,#f1dfc4,#caa574)}
.gal__grade span:nth-child(4n+3){background:linear-gradient(160deg,#9b5a63,#4d1a26)}
.gal__grade span:nth-child(5n+1){background:linear-gradient(160deg,#d8c3b0,#8f7461)}
.gal__grade span:nth-child(7n){background:linear-gradient(160deg,#f3e3d6,#d6a792)}

.cv__arte{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 18px 18px;background:radial-gradient(120% 50% at 50% 0,#f3e6d6,transparent 70%),var(--papel);position:relative}
.cv__arte::before{content:"";position:absolute;inset:10px;border:1px solid var(--ouro);opacity:.45;border-radius:18px;pointer-events:none}
.cv__arte img{width:88px;margin-bottom:14px}
.cv__pre{font-size:.56rem;letter-spacing:.22em;text-transform:uppercase;color:var(--tinta-2)}
.cv__nomes{font-family:var(--f-display);font-style:italic;font-size:1.7rem;color:var(--marsala-700);line-height:1.05;margin:10px 0}
.cv__data{font-family:var(--f-display);font-size:.8rem;letter-spacing:.14em;color:var(--tinta)}
.cv__texto{margin-top:18px;padding-top:14px;border-top:1px solid var(--linha);font-family:var(--f-display);font-style:italic;font-size:.95rem;line-height:1.35;color:var(--tinta-2);max-width:20ch}
.cv__botoes{margin-top:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:100%}
.cv__botoes span{border:1px solid var(--ouro);border-radius:10px;padding:10px 4px;font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:var(--marsala-700);background:rgba(255,255,255,.7);position:relative}
.cv__botoes span::after{content:"";position:absolute;inset:-4px;border:1.5px dashed rgba(122,47,66,.55);border-radius:13px}
.cv__play{position:absolute;top:14px;right:16px;font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--marsala-500);background:rgba(255,255,255,.85);border-radius:999px;padding:4px 8px}

/* ---------- Glossário ---------- */
.glossario{display:grid;gap:0 var(--e-7);margin:0}
@media (min-width:768px){.glossario{grid-template-columns:repeat(2,minmax(0,1fr))}}
.glossario div{padding:var(--e-5) 0;border-top:1px solid var(--linha)}
.glossario dt{font-family:var(--f-display);font-size:var(--t-25);color:var(--marsala-900);line-height:1.2}
.glossario dd{margin:var(--e-2) 0 0;color:var(--tinta-2);font-size:.9375rem}

/* ---------- Dúvidas ---------- */
.duvidas{max-width:820px}
.duvida{border-top:1px solid var(--linha)}
.duvida:last-child{border-bottom:1px solid var(--linha)}
.duvida summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--e-4);padding:var(--e-5) 0;font-family:var(--f-display);font-size:var(--t-25);color:var(--marsala-900);line-height:1.25;min-height:44px}
.duvida summary::-webkit-details-marker{display:none}
.duvida summary::after{content:"";flex:none;width:12px;height:12px;border-right:1.5px solid var(--marsala-700);border-bottom:1.5px solid var(--marsala-700);transform:rotate(45deg) translateY(-3px);transition:transform .2s ease-out}
.duvida[open] summary::after{transform:rotate(-135deg) translateY(-3px)}
.duvida p{padding:0 0 var(--e-5);color:var(--tinta-2);max-width:66ch}

/* ---------- Chamada final ---------- */
.chamada{text-align:center}
.chamada h2{font-size:clamp(var(--t-31),5vw,3.4rem);max-width:20ch;margin:0 auto}
.chamada h2 em{font-style:italic;color:var(--ouro-claro)}
.chamada p:not(.olho){margin:var(--e-4) auto 0;max-width:52ch;font-size:1.0625rem}
.chamada .produto__acoes{justify-content:center}

/* ---------- Rodapé ---------- */
.rodape{background:var(--marsala-900);color:var(--sobre-escuro);padding:var(--e-8) 0 var(--e-7);font-size:var(--t-14)}
.rodape__grade{display:grid;gap:var(--e-6)}
@media (min-width:768px){.rodape__grade{grid-template-columns:1.4fr 1fr 1fr}}
.rodape img{width:220px}
.rodape h2{font-family:var(--f-texto);font-size:var(--t-12);font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-claro);margin-bottom:var(--e-3)}
.rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--e-2)}
.rodape a{color:var(--sobre-escuro);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.rodape ul{gap:0}
.topo__marca{min-height:44px;display:flex;align-items:center}
.pular{min-height:44px;display:inline-flex;align-items:center}
.rodape a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.rodape a:focus-visible{box-shadow:0 0 0 2px var(--ouro-claro)}
.rodape__sobre{margin-top:var(--e-4);max-width:40ch}
.rodape__base{margin-top:var(--e-7);padding-top:var(--e-5);border-top:1px solid rgba(243,230,223,.16);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--e-3)}

/* ---------- Barra fixa de WhatsApp (celular) ---------- */
.barra-zap{position:fixed;left:var(--e-3);right:var(--e-3);bottom:var(--e-3);z-index:40;transform:translateY(140%);transition:transform .22s ease-out;display:flex}
.barra-zap.visivel{transform:none}
.barra-zap .botao{flex:1;box-shadow:0 10px 30px -8px rgba(62,15,28,.55)}
@media (min-width:1024px){.barra-zap{display:none}}
