/*
 * Motor Claude — tema Cristais Místicos.
 * O teto de uma geodo aberta: aglomerado de cristais (render 3D) pendurado no
 * alto, aceso por dentro, sobre a caverna com luzes fora de foco (duas fotos
 * trocando devagar: as luzes piscam). Cristais do chão sobem dos cantos da capa.
 * Nome em letra clara com brilho de cristal, lascas flutuando (canvas) e, depois
 * de abrir, o convite inteiro em cartões de vidro com borda furta-cor.
 * Quatro pedras: ametista, quartzo rosa, água-marinha e quartzo lunar.
 */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:300 700;font-display:swap;src:url("../fonts/cormorant-garamond-variable.woff2") format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:300 700;font-display:swap;src:url("../fonts/cormorant-garamond-italic-variable.woff2") format("woff2")}
@font-face{font-family:"Cinzel";font-style:normal;font-weight:400 900;font-display:swap;src:url("../fonts/cinzel-variable.woff2") format("woff2")}
@font-face{font-family:"Pinyon Script";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/pinyon-script-400.woff2") format("woff2")}
@font-face{font-family:"Manrope";font-style:normal;font-weight:200 800;font-display:swap;src:url("../fonts/manrope-variable.woff2") format("woff2")}

body.sg-engine-claude_v1{
  --cm-ink:var(--c-paper-ink,#F4EEFF);--cm-muted:var(--c-paper-muted,#B7A8D6);--cm-accent:var(--c-accent-text,#C9A6FF);--cm-btn-ink:var(--c-button-ink,#1A0F2E);
  --cm-base:#0B0816;
  --cm-name:"Cormorant Garamond",Georgia,serif;
  --cm-display:"Cormorant Garamond",Georgia,serif;
  --cm-sans:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  /* Cristal (ametista): fundo da pedra, meio, luz e reflexo */
  --cm-m1:#6B3FB0;--cm-m2:#C9A6FF;--cm-m3:#FBF6FF;--cm-m4:#9B74E0;
  /* Furta-cor da borda do vidro */
  --cm-i1:#C9A6FF;--cm-i2:#8FD8FF;--cm-i3:#FFB8E6;
  --cm-glow:rgba(190,140,255,.22);--cm-aura:rgba(150,90,255,.38);
  --cm-g1:rgba(255,255,255,.075);--cm-g2:rgba(255,255,255,.018);
  --cm-field:rgba(255,255,255,.06);--cm-hair:rgba(255,255,255,.10);--cm-shadow:rgba(0,0,0,.65);
  --cm-la:128deg;--cm-lx:30%;--cm-ly:0%;
  background:var(--cm-base)!important;background-image:none!important;color:var(--cm-ink);font-family:var(--cm-sans)}
body.sg-engine-claude_v1:has(.cm-root[data-cm-set="quartzo-rosa"]){--cm-base:#150912;--cm-m1:#A8546F;--cm-m2:#F5B3CB;--cm-m3:#FFF6F9;--cm-m4:#D98AA8;--cm-i1:#F5B3CB;--cm-i2:#FFD9B8;--cm-i3:#D6B8FF;--cm-glow:rgba(255,170,200,.2);--cm-aura:rgba(255,120,170,.3)}
body.sg-engine-claude_v1:has(.cm-root[data-cm-set="agua-marinha"]){--cm-base:#051018;--cm-m1:#2B8A99;--cm-m2:#8FE3EE;--cm-m3:#F2FEFF;--cm-m4:#5CBFCC;--cm-i1:#8FE3EE;--cm-i2:#B8C4FF;--cm-i3:#A8FFD8;--cm-glow:rgba(140,230,245,.2);--cm-aura:rgba(60,200,230,.3)}
body.sg-engine-claude_v1:has(.cm-root[data-cm-set="quartzo-lunar"]){--cm-base:#090B12;--cm-m1:#7C84A8;--cm-m2:#DDE3FF;--cm-m3:#FFFFFF;--cm-m4:#AEB6D8;--cm-i1:#DDE3FF;--cm-i2:#FFD6F0;--cm-i3:#C8F4FF;--cm-glow:rgba(220,228,255,.18);--cm-aura:rgba(180,195,255,.26)}
body.sg-engine-claude_v1::before,body.sg-engine-claude_v1::after{display:none!important}
body.sg-engine-claude_v1 .pagina-convite{max-width:none;margin:0 auto!important;background:transparent!important;min-height:100svh;overflow:clip}
body.sg-engine-claude_v1 .convite{overflow:visible!important;background:transparent!important}
body.sg-engine-claude_v1 .cm-root{position:relative;isolation:isolate;overflow-x:clip;-webkit-font-smoothing:antialiased;color:var(--cm-ink)}
body.sg-engine-claude_v1 .cm-root [hidden]{display:none!important}
.cm-root :is(p,h1,h2){margin:0}
.cm-root img{-webkit-user-drag:none;user-select:none;max-width:none}

/* Letra de cristal: clara, com a cor da pedra nas bordas e um brilho que atravessa de tempos em tempos. */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-lum{
  color:var(--cm-m3)!important;
  background:linear-gradient(100deg,var(--cm-m2) 0%,var(--cm-m3) 22%,#fff 32%,var(--cm-m3) 42%,var(--cm-m2) 60%,var(--cm-m3) 80%,var(--cm-m2) 100%)!important;
  background-size:240% 100%!important;background-position:0% 50%;
  -webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;text-shadow:none!important;
  filter:drop-shadow(0 0 18px var(--cm-glow)) drop-shadow(0 0 2px color-mix(in srgb,var(--cm-m2) 40%,transparent))}
.cm-root.is-ready :is(.cm-cover-name,.cm-name){animation:cm-sheen 10s cubic-bezier(.45,0,.2,1) 2.4s infinite}
@keyframes cm-sheen{0%{background-position:0% 50%}38%,100%{background-position:100% 50%}}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-lum{background:none!important;-webkit-text-fill-color:currentColor!important}
}


/* ================= Vidro com borda furta-cor ================= */
.cm-glass{position:relative;isolation:isolate;border-radius:28px;
  background:linear-gradient(160deg,var(--cm-g1),var(--cm-g2));
  -webkit-backdrop-filter:blur(16px) saturate(135%) brightness(.9);backdrop-filter:blur(16px) saturate(135%) brightness(.9);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 30px 60px -30px var(--cm-shadow),0 10px 20px -14px var(--cm-shadow)}
/* Borda que muda de cor como a película de um cristal: o ângulo acompanha a rolagem e o dedo. */
.cm-glass::before{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(var(--cm-la),var(--cm-m3) 0%,var(--cm-i1) 14%,color-mix(in srgb,var(--cm-i2) 55%,transparent) 30%,rgba(255,255,255,.05) 46%,rgba(255,255,255,.03) 60%,color-mix(in srgb,var(--cm-i3) 50%,transparent) 78%,var(--cm-i1) 100%);
  opacity:.8;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
/* Reflexo por dentro do vidro */
.cm-glass::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;
  background:radial-gradient(110% 60% at var(--cm-lx) var(--cm-ly),var(--cm-glow),rgba(255,255,255,0) 60%)}
.cm-press{transition:transform .5s cubic-bezier(.2,1.4,.3,1)}
.cm-press.is-down{transform:scale(.982);transition-duration:.12s}
.cm-glass .cm-touch{position:absolute;left:var(--cm-px,50%);top:var(--cm-py,50%);z-index:1;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--cm-m3) 55%,transparent),transparent 70%);opacity:0}
.cm-glass .cm-touch.is-on{animation:cm-touch .8s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes cm-touch{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(24)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .cm-glass{background:linear-gradient(160deg,rgba(30,24,44,.95),rgba(16,12,26,.95))}
}


/* ================= Atmosfera: a caverna fixa e as lascas flutuando ================= */
.cm-atmos{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:var(--cm-base)}
.cm-bg,.cm-bg-soft{position:absolute;left:50%;top:50%;width:max(100vw,100svh);height:max(100vw,100svh);transform:translate(-50%,-50%);object-fit:cover}
/* As luzes da caverna piscam: a segunda foto (outras luzes acesas) entra e sai devagar. */
.cm-bg--b{opacity:0}
.cm-root.is-ready .cm-bg--b{animation:cm-breathe 11s ease-in-out 1.5s infinite}
@keyframes cm-breathe{0%,100%{opacity:0}50%{opacity:1}}
.cm-root.is-closed .cm-bg--a{animation:cm-arrive 10s cubic-bezier(.2,.7,.2,1) both}
.cm-root.is-closed.is-ready .cm-bg--b{animation:cm-arrive 10s cubic-bezier(.2,.7,.2,1) both,cm-breathe 11s ease-in-out 1.5s infinite}
@keyframes cm-arrive{from{transform:translate(-50%,-50%) scale(1.1)}to{transform:translate(-50%,-50%) scale(1)}}
.cm-bg-soft{opacity:0;transition:opacity 1.6s ease .15s;transform:translate(-50%,-50%) scale(1.05)}
/* Luz que sai da geodo, no alto: respira devagar. */
.cm-aura{position:absolute;left:50%;top:-18svh;width:150vmax;height:80svh;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,var(--cm-aura),transparent);opacity:.75}
.cm-root.is-ready .cm-aura{animation:cm-aura 7s ease-in-out infinite}
@keyframes cm-aura{0%,100%{opacity:.6}50%{opacity:1}}
.cm-vignette{position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 40%,transparent 40%,rgba(0,0,0,.55) 100%)}
.cm-root:is(.is-opening,.is-opened) .cm-bg-soft{opacity:1}
.cm-root.is-opened .cm-bg{visibility:hidden;animation:none}
.cm-root.is-opened .cm-aura{opacity:.45;animation:none}
.cm-motes{position:fixed;inset:0;z-index:0;width:100vw;height:100vh;height:100lvh;pointer-events:none}
.cm-root.is-closed .cm-motes,.cm-root.is-opening .cm-motes{z-index:40}


/* ================= Aglomerado de cristais (capa e frente da folha) ================= */
/* Pende do alto da tela. Nunca passa na frente do nome (z-index 1; o nome é 3). */
.cm-cluster{--cm-lw:min(100vw,56svh,560px);position:relative;z-index:1;width:var(--cm-lw);aspect-ratio:1200/1080;margin:0 auto;pointer-events:none}
.cm-cluster-img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain}
/* Luz por dentro: um brilho atrás das pontas que acende e apaga devagar. */
.cm-inner-light{position:absolute;left:18%;right:18%;top:0;height:62%;z-index:0;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--cm-m2) 55%,transparent),transparent);filter:blur(6px);opacity:.55;mix-blend-mode:screen}
.cm-root.is-ready .cm-inner-light{animation:cm-pulse 5.5s ease-in-out infinite}
@keyframes cm-pulse{0%,100%{opacity:.4;transform:scale(.96)}50%{opacity:.85;transform:scale(1.04)}}
.cm-root.is-ready .cm-cluster-img{animation:cm-glow 5.5s ease-in-out infinite}
@keyframes cm-glow{0%,100%{filter:brightness(1) drop-shadow(0 0 0 transparent)}50%{filter:brightness(1.1) drop-shadow(0 0 14px var(--cm-glow))}}
/* Brilhos que nascem nas pontas dos cristais (posições gravadas com a foto) */
.cm-spark{position:absolute;z-index:2;width:calc(var(--cm-lw) * .1);aspect-ratio:1;margin:calc(var(--cm-lw) * -.05) 0 0 calc(var(--cm-lw) * -.05);pointer-events:none;opacity:0;mix-blend-mode:screen}
.cm-spark.is-on{animation:cm-twinkle 1.6s ease-in-out forwards}
@keyframes cm-twinkle{0%{opacity:0;transform:scale(.3) rotate(0)}40%{opacity:1;transform:scale(1) rotate(12deg)}100%{opacity:0;transform:scale(.5) rotate(28deg)}}

/* ================= Capa ================= */
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-root .capa.cm-cover{position:fixed!important;inset:0!important;z-index:30;display:block!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;overflow:hidden;background:none!important;border:0!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-root .capa.cm-cover.is-gone{display:none!important}
.cm-cluster--cover{position:absolute;left:50%;top:env(safe-area-inset-top,0px);margin-left:calc(var(--cm-lw) / -2);--cm-lw:min(116vw,52svh,620px)}
.cm-cover-title{position:absolute;left:0;right:0;top:max(calc(env(safe-area-inset-top,0px) + min(116vw,52svh,620px) * .8),39svh);z-index:3;display:flex;flex-direction:column;align-items:center;box-sizing:border-box;padding:0 22px;text-align:center}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-cover-eyebrow{margin:0 0 12px!important;font:600 10.5px/1.4 var(--cm-sans)!important;letter-spacing:.36em!important;padding-left:.36em!important;text-transform:uppercase!important;color:var(--cm-muted)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root :is(.cm-cover-name,.cm-name){display:inline-block;max-width:none;margin:0 -.3em!important;padding:.06em .3em .14em!important;white-space:nowrap;font-family:var(--cm-name)!important;font-style:italic!important;font-weight:500!important;letter-spacing:-.005em!important;text-transform:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-cover-name{font-size:clamp(58px,17vw,120px)!important;line-height:1!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root[data-cm-font="caligrafia"] :is(.cm-cover-name,.cm-name){font-family:"Pinyon Script",cursive!important;font-style:normal!important;font-weight:400!important;letter-spacing:0!important;padding-left:.4em!important;padding-right:.4em!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root[data-cm-font="mistica"] :is(.cm-cover-name,.cm-name){font-family:"Cinzel","Cormorant Garamond",Georgia,serif!important;font-style:normal!important;font-weight:500!important;letter-spacing:.04em!important;font-size:clamp(40px,11.5vw,84px)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root[data-cm-font="mistica"] .cm-name{font-size:clamp(36px,10vw,72px)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root :is(.cm-cover-name,.cm-name).cm-wrap{white-space:normal!important;text-wrap:balance;line-height:1.02!important}
body.sg-engine-claude_v1 .cm-xv{--cl-xv-font:var(--cm-sans);--cl-xv-size:10.5px;--cl-xv-top:12px;--cl-xv-bottom:0;margin:0 auto}
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-xv span{font-family:var(--cm-sans)!important;font-weight:600!important;letter-spacing:.5em!important;padding-left:.5em;color:var(--cm-m2)!important;text-shadow:none!important;-webkit-text-fill-color:currentColor!important;background:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-xv i{height:1px!important;background:linear-gradient(90deg,transparent,var(--cm-m2))!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-xv i:last-child{background:linear-gradient(90deg,var(--cm-m2),transparent)!important}

/* Cristais do chão: sobem dos cantos, atrás do cartão (nunca na altura do nome). */
.cm-floor{position:absolute;left:0;right:0;bottom:0;z-index:2;height:min(75vw,46svh);pointer-events:none}
/* Dois cantos da mesma foto: no celular formam a foto inteira; em tela larga cada um fica na sua borda. */
.cm-floor-img{position:absolute;bottom:0;display:block;width:auto;height:100%;aspect-ratio:1200/900}
.cm-floor-img--l{left:0;clip-path:inset(0 50% 0 0)}
.cm-floor-img--r{right:0;clip-path:inset(0 0 0 50%)}
.cm-root.is-closed .cm-floor-img{animation:cm-rise-floor 2.4s cubic-bezier(.16,1,.3,1) .5s both}
@keyframes cm-rise-floor{from{opacity:0;transform:translateY(22%);filter:brightness(.3)}to{opacity:1;transform:none;filter:brightness(1)}}

/* Chegada: o aglomerado acende de dentro para fora, o nome sai do desfoque. */
.cm-root.is-closed .cm-cluster--cover .cm-cluster-img{animation:cm-wake 2.8s cubic-bezier(.16,1,.3,1) .15s both,cm-glow 5.5s ease-in-out 3s infinite}
@keyframes cm-wake{from{opacity:0;transform:translateY(-8%) scale(1.04);filter:brightness(.15) blur(4px)}55%{opacity:1}to{opacity:1;transform:none;filter:brightness(1) blur(0)}}
.cm-root.is-closed .cm-cover-title > *{animation:cm-focus 1.9s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(1.1s + var(--k,0) * .16s)}
.cm-cover-title > :nth-child(2){--k:1}.cm-cover-title > :nth-child(3){--k:2}
@keyframes cm-focus{from{opacity:0;filter:blur(12px);transform:translateY(8px) scale(1.02)}to{opacity:1;filter:blur(0);transform:none}}

/* Cartão de vidro com o botão */
.cm-card{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 28px);z-index:3;box-sizing:border-box;width:min(calc(100vw - 40px),360px);padding:18px;border-radius:32px;text-align:center;transform:translateX(-50%)}
.cm-root.is-closed .cm-card{animation:cm-card-in 1.5s cubic-bezier(.16,1.1,.3,1) 1.6s both}
@keyframes cm-card-in{from{opacity:0;transform:translate(-50%,36px) scale(.95)}to{opacity:1;transform:translate(-50%,0)}}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-card-when{margin:2px 0 14px!important;font:600 12.5px/1.5 var(--cm-sans)!important;letter-spacing:.06em!important;color:var(--cm-ink)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-greet{margin:0 0 14px!important;padding:0!important;background:none!important;border:0!important;font:italic 500 22px/1.3 var(--cm-display)!important;color:var(--cm-ink)!important;text-shadow:none!important}
/* Botão de cristal: claro, com a cor da pedra embaixo e um reflexo que atravessa */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.botao.cm-open{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:56px;margin:0;padding:14px 24px!important;border:0!important;border-radius:999px!important;overflow:hidden;
  background:linear-gradient(180deg,var(--cm-m3) -20%,var(--cm-m2) 55%,var(--cm-m4) 120%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),inset 0 -1px 2px rgba(0,0,0,.2),0 0 26px -6px color-mix(in srgb,var(--cm-m2) 70%,transparent),0 16px 30px -16px color-mix(in srgb,var(--cm-m2) 60%,transparent)!important;
  text-decoration:none!important;text-shadow:none!important;filter:none!important;-webkit-tap-highlight-color:transparent;transition:transform .5s cubic-bezier(.2,1.4,.3,1)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.botao.cm-open span{position:relative;z-index:1;font:700 15.5px/1.2 var(--cm-sans)!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--cm-btn-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-root a.botao.cm-open::before{content:""!important;display:block!important;position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.8) 48%,transparent 62%);transform:translateX(-120%);animation:cm-shine 5s ease-in-out 3s infinite}
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-root a.botao.cm-open::after{content:none!important;display:none!important}
@keyframes cm-shine{0%,64%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
.cm-open:active{transform:scale(.97)}

/* Abertura: a luz sai de dentro dos cristais, as lascas se espalham e a caverna se aproxima. */
.cm-flash{position:absolute;left:50%;top:18%;z-index:4;width:160vmax;height:160vmax;margin:-80vmax 0 0 -80vmax;border-radius:50%;pointer-events:none;opacity:0;
  background:radial-gradient(circle,color-mix(in srgb,var(--cm-m3) 65%,transparent) 0%,color-mix(in srgb,var(--cm-m2) 26%,transparent) 20%,transparent 50%)}
.cm-root.is-opening .cm-flash{animation:cm-flash 1.6s cubic-bezier(.3,0,.2,1) .2s both}
@keyframes cm-flash{0%{opacity:0;transform:scale(.15)}35%{opacity:.6}100%{opacity:0;transform:scale(1)}}
.cm-root.is-opening .cm-card{animation:cm-card-out .7s cubic-bezier(.4,0,.2,1) forwards}
@keyframes cm-card-out{to{opacity:0;filter:blur(8px);transform:translate(-50%,24px) scale(.96)}}
.cm-root.is-opening .cm-cluster--cover{animation:cm-lift 1.7s cubic-bezier(.55,0,.25,1) forwards}
@keyframes cm-lift{0%{filter:brightness(1)}30%{filter:brightness(1.8)}100%{opacity:0;filter:brightness(2.2);transform:translateY(-38%) scale(1.12)}}
.cm-root.is-opening .cm-floor{animation:cm-sink 1.5s cubic-bezier(.55,0,.25,1) forwards}
@keyframes cm-sink{to{opacity:0;transform:translate(-50%,30%)}}
.cm-root.is-opening .cm-cover-title{animation:cm-title-out 1.1s cubic-bezier(.4,0,.2,1) forwards}
@keyframes cm-title-out{to{opacity:0;filter:blur(10px);transform:translateY(-4svh) scale(.97)}}
.cm-root.is-opening .cm-bg{animation:cm-enter 1.8s cubic-bezier(.5,0,.2,1) forwards}
@keyframes cm-enter{to{transform:translate(-50%,-50%) scale(1.18)}}


/* ================= Folha ================= */
.cm-sheet{position:relative;z-index:1;box-sizing:border-box;width:min(100%,620px);margin:0 auto;padding:0 18px;color:var(--cm-ink)}
.cm-root.is-closed .cm-sheet{opacity:0;pointer-events:none}

/* Frente: o aglomerado no alto e o convite logo abaixo, sem nada por cima do texto. */
.cm-front{position:relative;padding:0 0 30px}
.cm-cluster--front{--cm-lw:min(100vw,480px);margin-top:env(safe-area-inset-top,0px)}
.cm-front-text{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;box-sizing:border-box;margin-top:calc(min(100vw,480px) * -.17);padding:0 4px;text-align:center}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-eyebrow{margin:0!important;font:600 10.5px/1.4 var(--cm-sans)!important;letter-spacing:.36em!important;padding-left:.36em!important;text-transform:uppercase!important;color:var(--cm-muted)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-host{max-width:17em;margin:18px auto 0!important;font:italic 500 19px/1.45 var(--cm-display)!important;color:var(--cm-muted)!important;text-shadow:none!important;text-wrap:balance}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-name{margin-top:8px!important;font-size:clamp(54px,15vw,100px)!important;line-height:1.02!important}
.cm-when{display:flex;flex-direction:column;align-items:center;gap:2px;margin:28px 0 0!important}
.cm-wd,.cm-time{font:600 10.5px/1.9 var(--cm-sans);letter-spacing:.32em;padding-left:.32em;text-transform:uppercase;color:var(--cm-muted)}
.cm-date{font:500 clamp(21px,6.2vw,27px)/1.3 var(--cm-display);color:var(--cm-ink);white-space:nowrap}
.cm-venue{margin:12px 0 0!important;font:italic 500 21px/1.35 var(--cm-display);color:var(--cm-m2)}
.cm-root.is-opening .cm-front{animation:cm-front-in 1.6s cubic-bezier(.16,1,.3,1) .55s both}
@keyframes cm-front-in{from{opacity:0;transform:scale(.9);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}
.cm-root.is-opening .cm-sheet > :not(.cm-front){animation:cm-rise 1.2s cubic-bezier(.2,.8,.2,1) 1.2s both}
@keyframes cm-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-intro{max-width:19em;margin:0 auto!important;padding:0 8px!important;font:italic 500 22px/1.5 var(--cm-display)!important;text-align:center;color:var(--cm-ink)!important;text-wrap:balance}

/* Aparece ao chegar na tela (só com o script; sem ele tudo fica visível). */
.cm-root.cm-reveal-on [data-cm-reveal]{opacity:0;transform:translateY(26px);transition:opacity 1.1s cubic-bezier(.2,.8,.2,1),transform 1.1s cubic-bezier(.2,.8,.2,1)}
.cm-root.cm-reveal-on [data-cm-reveal].is-in{opacity:1;transform:none}
.cm-root.cm-reveal-on [data-cm-reveal] .cm-divider{transition:clip-path 1.4s cubic-bezier(.6,.05,.25,1) .15s,filter 1.8s ease .3s;clip-path:inset(0 50% 0 50%);filter:brightness(.4)}
.cm-root.cm-reveal-on [data-cm-reveal].is-in .cm-divider{clip-path:inset(-20% 0 -20% 0);filter:brightness(1)}

/* Contagem em pastilhas de vidro com números de cristal */
.cm-count{margin:44px 0 0;text-align:center}
body.sg-engine-claude_v1.sg-engine-claude_v1 .cm-root .cm-count-title{margin:0 0 14px;font:600 10.5px/1.4 var(--cm-sans);letter-spacing:.36em;padding-left:.36em;text-transform:uppercase;color:var(--cm-muted)}
body.sg-engine-claude_v1 .cm-count .secao{padding:0!important;margin:0!important;border:0!important;background:none!important;opacity:1!important;transform:none!important;min-height:0!important}
body.sg-engine-claude_v1 .cm-count .secao__interno{width:auto!important;max-width:none!important;padding:0!important}
body.sg-engine-claude_v1 .cm-count :is(.titulo-secao,.divisor,.cantoneiras){display:none!important}
body.sg-engine-claude_v1 .cm-count .contagem{display:flex!important;flex-wrap:wrap;justify-content:center;gap:10px!important;margin:0!important}
body.sg-engine-claude_v1 .cm-count .contagem__item:not([hidden]){flex:0 1 80px}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-count .contagem__item{position:relative;min-width:0!important;padding:14px 4px 12px!important;border:0!important;border-radius:22px!important;
  background:linear-gradient(160deg,var(--cm-g1),var(--cm-g2))!important;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cm-m2) 26%,transparent),inset 0 1px 0 rgba(255,255,255,.08),0 18px 30px -22px var(--cm-shadow)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-count .contagem__numero{display:block;font-family:var(--cm-display)!important;font-size:40px!important;font-weight:500!important;line-height:1.1!important;font-variant-numeric:lining-nums tabular-nums;color:var(--cm-m2)!important;
  background:linear-gradient(180deg,var(--cm-m3) 10%,var(--cm-m2) 55%,var(--cm-m4) 95%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-count .contagem__rotulo{display:block!important;opacity:1!important;visibility:visible!important;position:static!important;margin-top:4px;font-family:var(--cm-sans)!important;font-size:9.5px!important;font-weight:600!important;font-style:normal!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:var(--cm-muted)!important}
body.sg-engine-claude_v1 .cm-count .contagem__realizada{grid-column:1/-1;font-family:var(--cm-display)!important;font-size:24px!important;color:var(--cm-ink)!important}

/* Partes: o bastão de cristal pousado na borda de cada cartão */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-part-title{display:block;margin:0 0 6px!important;padding:.04em .2em .1em!important;font-family:var(--cm-display)!important;font-style:italic!important;font-size:clamp(34px,9.6vw,44px)!important;font-weight:500!important;line-height:1.1!important;letter-spacing:-.005em!important;text-transform:none!important;text-align:center!important;text-wrap:balance}
.cm-part{position:relative;scroll-margin-top:16px;margin-top:46px}
.cm-divider{position:relative;z-index:3;display:block;width:min(104%,480px);height:auto;margin:0 auto -32px;pointer-events:none;filter:drop-shadow(0 0 10px var(--cm-glow))}
.cm-panel{padding:40px 20px 24px;border-radius:30px}

/* Módulos do sistema dentro do vidro */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules{
  --c-bg:transparent;--c-surface:transparent;--c-ink:var(--cm-ink);--c-ink-soft:var(--cm-muted);--c-line:var(--cm-hair);
  --c-name:var(--cm-ink);--c-primary:var(--cm-m2);--c-button-bg:var(--cm-m2);--c-button-ink:var(--cm-btn-ink);
  margin-top:6px;padding:0;color:var(--cm-ink);font-family:var(--cm-sans);text-align:left}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .secao{position:relative;margin:0!important;padding:8px 0 4px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:var(--cm-ink)!important;min-height:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules #confirmar{border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .secao + .secao{margin-top:14px!important;padding-top:22px!important;border-top:1px solid var(--cm-hair)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .secao__interno{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.cantoneiras,.cantoneira,.divisor){display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .revela{opacity:1!important;transform:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.cartao,.moldura){border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.moldura,.cartao,.texto)::before,body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.moldura,.cartao,.texto)::after{display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .titulo-secao{display:block!important;width:100%!important;max-width:none!important;margin:0 0 14px!important;padding:0!important;font-family:var(--cm-sans)!important;font-size:10.5px!important;font-weight:700!important;font-style:normal!important;letter-spacing:.3em!important;line-height:1.4!important;text-transform:uppercase!important;text-align:center!important;color:var(--cm-m2)!important;background:none!important;-webkit-text-fill-color:currentColor!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules--same-title > .secao:first-child .titulo-secao,
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-part--vip .cm-modules #confirmar .titulo-secao{display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(p,li,.texto,.texto p,.item__texto,.evento__texto,.evento__nota,.local-card__endereco,.rsvp__intro,.rsvp-identificacao p,.rsvp-saudacao,.rsvp-membro,.compromisso__endereco,.compromisso__nota,.compromisso__data,.compromisso__hora,.party-public-6136__copy p,.party-public-6136__copy span){font-family:var(--cm-sans)!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:1.62!important;letter-spacing:0!important;color:var(--cm-ink)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.item__titulo,.evento__nome,.local-card__nome,.compromisso__nome,.party-public-6136__copy h3){font-family:var(--cm-sans)!important;font-size:16.5px!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important;color:var(--cm-ink)!important;text-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.campo__rotulo,.rsvp-prazo){font-family:var(--cm-sans)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:var(--cm-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules p#rsvp-membros-rotulo{font-family:var(--cm-sans)!important;font-size:16px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(label,legend):not(.campo__rotulo){font-family:var(--cm-sans)!important;font-size:16px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .compromisso__local{margin:4px 0!important;font-family:var(--cm-display)!important;font-style:italic!important;font-size:29px!important;font-weight:500!important;letter-spacing:0!important;line-height:1.18!important;text-transform:none!important;color:var(--cm-m2)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .compromisso{margin:0 0 12px!important;padding:0 0 14px!important;border:0!important;border-bottom:1px solid var(--cm-hair)!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .party-public-6136__icon{background:rgba(255,255,255,.04)!important;color:var(--cm-m2)!important;border:0!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cm-m2) 40%,transparent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .party-public-6136__icon [class*="mdi-sg"]{color:var(--cm-m2)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .party-public-6136__line{background:linear-gradient(180deg,color-mix(in srgb,var(--cm-m2) 45%,transparent),var(--cm-hair))!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .itens--grade{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .item{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:14px!important;margin:0!important;padding:14px 0!important;min-height:0!important;border:0!important;border-bottom:1px solid var(--cm-hair)!important;border-radius:0!important;background:none!important;box-shadow:none!important;text-align:left!important;transform:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .item:last-child{border-bottom:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .item__icone{flex:none!important;align-self:flex-start!important;margin:2px 0 0!important;width:24px!important;height:24px!important;font-size:20px!important;color:var(--cm-m2)!important;background:none!important;border:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .item__icone [class*="mdi-sg"]{color:var(--cm-m2)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.item__conteudo,.item__principal,.item__titulo,.item__texto){text-align:left!important;align-items:flex-start!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .itens--grade > .item{grid-column:auto!important;justify-self:stretch!important;width:auto!important;max-width:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .texto--centro{text-align:left!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .compromisso__comodidades{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .compromisso__comodidade{grid-template-columns:2rem minmax(0,1fr)!important;gap:12px!important;align-items:center!important;border-radius:16px!important;background:transparent!important;border-color:var(--cm-hair)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .compromisso__comodidade :is(.item__titulo,.item__texto){overflow-wrap:normal!important;word-break:normal!important;hyphens:manual!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159){border-radius:20px!important;overflow:hidden;box-shadow:0 0 0 1px color-mix(in srgb,var(--cm-m2) 30%,transparent),0 14px 26px -18px var(--cm-shadow)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159) img{display:block;width:100%;height:auto;filter:grayscale(.35) brightness(.86) contrast(1.05)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(input[type=text],input[type=tel],input[type=email],input[type=number],select,textarea){border:0!important;border-radius:16px!important;background:var(--cm-field)!important;color:var(--cm-ink)!important;font-family:var(--cm-sans)!important;font-size:16px!important;font-weight:500!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(input,textarea)::placeholder{color:color-mix(in srgb,var(--cm-muted) 80%,transparent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(input,select,textarea):focus{outline:0!important;box-shadow:inset 0 0 0 1px var(--cm-m2),0 0 0 3px color-mix(in srgb,var(--cm-m2) 22%,transparent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules select option{background:#16121f;color:var(--cm-ink)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.rsvp-cartao,.rsvp-preview-note-4035,.aviso,.rsvp-membro,.rsvp-guest-policy-ack,.rsvp__resposta){border-radius:18px!important;box-shadow:none!important;background:var(--cm-field)!important;border-color:var(--cm-hair)!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules #confirmar .rsvp-cartao--simples{max-width:none!important;background:transparent!important;border:0!important;padding:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .escolha{border:0!important;border-radius:16px!important;background:var(--cm-field)!important;color:var(--cm-ink)!important;font-family:var(--cm-sans)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .escolha:has(input:checked){background:color-mix(in srgb,var(--cm-m2) 14%,var(--cm-field))!important;box-shadow:inset 0 0 0 1.5px var(--cm-m2)!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(input[type=checkbox],input[type=radio]){accent-color:var(--cm-m2)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(input,select,textarea) + :is(.botao,button),body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules form .botao{margin-top:14px!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules a:not(.botao){color:var(--cm-m2)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root :is(.botao,button.botao,a.botao):not(.cm-open){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 26px!important;border:0!important;border-radius:999px!important;
  background:linear-gradient(180deg,var(--cm-m3) -30%,var(--cm-m2) 45%,var(--cm-m4) 115%)!important;background-color:var(--cm-m2)!important;color:var(--cm-btn-ink)!important;font-family:var(--cm-sans)!important;font-size:13.5px!important;font-weight:700!important;letter-spacing:.12em!important;line-height:1.1!important;text-transform:uppercase!important;text-decoration:none!important;white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -1px 2px rgba(0,0,0,.25),0 14px 24px -16px color-mix(in srgb,var(--cm-m2) 55%,transparent)!important;text-shadow:none;transition:transform .45s cubic-bezier(.2,1.4,.3,1)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root :is(.botao,button.botao,a.botao):not(.cm-open):active{transform:scale(.97)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root :is(button.botao.botao--contorno,a.botao.botao--contorno,.botao.botao--contorno,button.compromisso__copiar-endereco,.compromisso__copiar-endereco){background:transparent!important;color:var(--cm-m2)!important;text-shadow:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cm-m2) 60%,transparent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .compromisso__copiar-endereco{display:inline-flex!important;align-items:center;min-height:36px!important;margin:6px 0 4px!important;padding:6px 16px!important;border:0!important;border-radius:999px!important;font-family:var(--cm-sans)!important;font-size:11.5px!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .botao--pequeno{min-height:40px;padding:8px 18px!important;font-size:12px!important}
body.sg-engine-claude_v1 .cm-root .botao--bloco{display:flex;width:100%}
body.sg-engine-claude_v1 .cm-root .botao:not(.cm-open)::before,body.sg-engine-claude_v1 .cm-root .botao:not(.cm-open)::after{display:none!important}

/* Mural: o bilhete amarelo continua com tinta escura (o texto claro do tema não entra nele) */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .mural-postit-6137__ink,body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .mural-postit-6137__ink :is(p,span,strong,small,em,time,li,div,a,h3,h4){color:#1e1c18!important;-webkit-text-fill-color:#1e1c18!important;text-shadow:none!important}

/* Exemplo de confirmação (convite de demonstração) e presente por Pix */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .cd-guest-example131 h2{margin:0 0 10px!important;font-family:var(--cm-display)!important;font-style:italic!important;font-size:26px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;text-align:center!important;color:var(--cm-m2)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .cd-guest-example131 small{display:block;margin-top:6px;font:500 12px/1.5 var(--cm-sans)!important;color:var(--cm-muted)!important;text-align:center}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules a.item__presente-pix{display:inline-flex!important;align-items:center;min-height:40px;margin-top:10px!important;padding:8px 20px!important;border:0!important;border-radius:999px!important;background:transparent!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cm-m2) 60%,transparent)!important;color:var(--cm-m2)!important;font:700 11.5px/1.2 var(--cm-sans)!important;letter-spacing:.14em!important;text-transform:uppercase!important;text-decoration:none!important}

/* Aviso das cores reservadas: filete de cristal em vez da borda branca */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .reserved-color-note-151{border:1px solid color-mix(in srgb,var(--cm-m2) 30%,transparent)!important;border-inline-start:2px solid var(--cm-m2)!important;border-radius:16px!important;background:rgba(255,255,255,.035)!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .reserved-color-note-151 strong{color:var(--cm-m2)!important}

/* Alinhamento: títulos, avisos e aberturas centrados; listas e campos à esquerda. */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.secao__interno > p,.secao__interno > .texto,.rsvp-prazo,.rsvp-identificacao,.rsvp-identificacao p,.rsvp-preview-note-4035,.rsvp__fechado,.mural-6138__subtitle,.mural-hint137,.mural-610__empty,.mural-610__vazio){text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .rsvp-prazo{margin:0 0 14px!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .rsvp-prazo strong{font-family:var(--cm-sans)!important;font-weight:700!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .mural-610__inner{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .mural-610__eyebrow{display:block!important;margin:0 0 6px!important;font-family:var(--cm-sans)!important;font-size:10.5px!important;font-weight:700!important;letter-spacing:.3em!important;padding-left:.3em!important;text-transform:uppercase!important;color:var(--cm-muted)!important;text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .mural-6138__title{display:block!important;margin:0 0 10px!important;font-family:var(--cm-display)!important;font-style:italic!important;font-size:27px!important;letter-spacing:0!important;text-transform:none!important;color:var(--cm-m2)!important;text-align:center!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules :is(.mural-6138__subtitle,.mural-hint137){max-width:24em;margin:0 auto 4px!important;color:var(--cm-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules [data-comments-content]{align-self:stretch;width:100%}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root .cm-modules .mural-610__open{margin:18px auto 0!important}

/* Fim: o botão volta ao início e os cristais do chão fecham o convite */
.cm-close{position:relative;padding:48px 0 0;text-align:center}
.cm-end-floor{position:relative;left:50%;width:100vw;height:min(75vw,50svh,560px);margin:-70px 0 0;transform:translateX(-50%);pointer-events:none}
/* Os cristais do fim nascem do escuro: a base some aos poucos no rodapé. */
.cm-end-floor{-webkit-mask:linear-gradient(180deg,#000 62%,transparent 98%);mask:linear-gradient(180deg,#000 62%,transparent 98%)}
/* Rodapé do Capítulo 15 sobre a caverna: logo e textos claros, sem faixa de cor. */
body.sg-engine-claude_v1:has(.cm-root) .rodape{position:relative;z-index:2;margin-top:-40px;background:transparent!important;border-top:0!important;box-shadow:none!important;color:color-mix(in srgb,var(--cm-muted) 80%,transparent)!important;font-family:var(--cm-sans)!important}
body.sg-engine-claude_v1:has(.cm-root) .rodape::before{display:none!important}
body.sg-engine-claude_v1:has(.cm-root) .rodape :is(p,a){color:color-mix(in srgb,var(--cm-muted) 85%,transparent)!important}
body.sg-engine-claude_v1:has(.cm-root) .rodape__logo img{filter:brightness(0) invert(1);opacity:.6}
body.sg-engine-claude_v1:has(.cm-root.is-closed) .rodape{display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.cm-top{position:relative;z-index:2;display:inline-flex;align-items:center;min-height:42px;margin:24px 0 0;padding:8px 22px;border-radius:999px;font:700 11.5px/1.3 var(--cm-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--cm-m2)!important;text-decoration:none!important;background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cm-m2) 45%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.cm-close::after{content:"";display:block;height:env(safe-area-inset-bottom,0px)}

/* Aviso de que o convite continua: no pé da tela até a convidada rolar */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.cm-more{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);z-index:20;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 18px 4px;transform:translateX(-50%);text-decoration:none!important;color:var(--cm-m2)!important;-webkit-tap-highlight-color:transparent;transition:opacity .6s ease,transform .6s ease}
.cm-more-text{padding:8px 14px 8px calc(14px + .34em);border-radius:999px;background:color-mix(in srgb,var(--cm-base) 84%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cm-m2) 30%,transparent);font:600 10px/1.3 var(--cm-sans);letter-spacing:.34em;text-transform:uppercase;white-space:nowrap;color:var(--cm-m2)}
.cm-more-line{position:relative;display:block;width:1px;height:38px;overflow:hidden;background:color-mix(in srgb,var(--cm-m2) 28%,transparent)}
.cm-more-line i{position:absolute;left:0;top:0;width:1px;height:16px;background:linear-gradient(180deg,transparent,var(--cm-m3));animation:cm-more 1.9s cubic-bezier(.6,0,.3,1) infinite}
@keyframes cm-more{from{transform:translateY(-18px)}to{transform:translateY(40px)}}
/* Escurece de leve o pé da tela para o aviso ler bem sobre o convite */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite a.cm-more::before{content:"";position:absolute;left:50%;bottom:-14px;z-index:-1;width:100vw;height:170px;transform:translateX(-50%);background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--cm-base) 94%,transparent) 50%,var(--cm-base));pointer-events:none}
.cm-root.is-closed .cm-more,.cm-root.is-scrolled .cm-more{opacity:0;pointer-events:none;transform:translate(-50%,10px)}
.cm-root.is-opening .cm-more{opacity:0}
.cm-root.is-opened:not(.is-scrolled) .cm-more{animation:cm-more-in .9s ease .3s both}
@keyframes cm-more-in{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}

/* Letras Mística: títulos das partes também em Cinzel, sem itálico */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-root[data-cm-font="mistica"] .cm-part-title{font-family:"Cinzel","Cormorant Garamond",Georgia,serif!important;font-style:normal!important;font-size:clamp(24px,7vw,32px)!important;letter-spacing:.06em!important}

/* Tela larga */
@media (min-width:760px){
  .cm-sheet{width:min(100%,700px);padding:0 30px}
  .cm-panel{padding:46px 40px 30px}
}
@media (orientation:landscape) and (min-width:760px){
  .cm-cluster--cover{--cm-lw:min(60vw,58svh,640px)}
  .cm-cover-title{top:calc(min(60vw,58svh,640px) * .8)}
  .cm-card{bottom:calc(env(safe-area-inset-bottom,0px) + 4svh)}
}
@media (prefers-reduced-motion:reduce){
  .cm-root *{animation:none!important;transition:none!important}
  .cm-root.cm-reveal-on [data-cm-reveal]{opacity:1;transform:none}
  .cm-root.cm-reveal-on [data-cm-reveal] .cm-divider{clip-path:none;filter:none}
}
@media print{
  .cm-root [data-cm-reveal]{opacity:1!important;transform:none!important}
  .cm-root .cm-divider{clip-path:none!important}
}

/* Miniatura da capa e prévia de seção */
.cm-root--cover-only .cm-sheet{display:none}
.cm-root--cover-only :is(.cm-card,.cm-cover-title > *,.cm-cluster,.cm-cluster-img,.cm-bg,.cm-floor-img){animation:none!important;opacity:1;filter:none}
.cm-root--cover-only .cm-bg--b{opacity:0}
.cm-root--section{padding:18px 16px;background:var(--cm-base)}
.cm-root--section .cm-panel{padding:22px 18px;background:linear-gradient(160deg,rgba(30,24,44,.96),rgba(16,12,26,.96))}

/* Convidado do link pessoal (o sistema troca a saudação por "Convite para / Nome") */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-card .capa__convidado{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 0 14px!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;text-shadow:none!important;color:var(--cm-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-card .capa__convidado small{font:700 9.5px/1.4 var(--cm-sans)!important;letter-spacing:.28em!important;padding-left:.28em;text-transform:uppercase;color:var(--cm-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .cm-card .capa__convidado strong{font:italic 500 22px/1.3 var(--cm-display)!important;color:var(--cm-ink)!important}
