/*
 * Motor Claude — tema Noite na Cidade.
 * Capa: a cidade adormecida vista do alto (céu, lua, prédios quase apagados,
 * rio escuro). Ao tocar, as janelas acendem em onda, fogos estouram e as luzes
 * tremulam na água. O menu fica sobre a noite; as partes abrem em cartões claros.
 * Tudo escopado em body.sg-engine-claude_v1: não afeta outros temas.
 *
 * Paleta (--c-*): sky-1..sky-3 = céu (do alto ao horizonte), moon = lua,
 * city-far / city-near = prédios ao fundo e à frente, win-1 / win-2 = luz das
 * janelas, beacon = luz de sinalização e lanternas, water = rio, night /
 * night-ink / night-muted = fundo escuro e textos sobre ele, paper /
 * paper-ink / paper-muted / line = cartões claros, accent / accent-ink =
 * botões, accent-text = destaques sobre o cartão claro.
 */
@font-face{font-family:"Parisienne";font-style:normal;font-weight:400;font-display:swap;src:url("../../fonts/parisienne-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:400 700;font-display:swap;src:url("../../fonts/playfair-display-latin-wght-normal.woff2") format("woff2")}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:400 700;font-display:swap;src:url("../../fonts/playfair-display-latin-wght-italic.woff2") format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url("../../fonts/jost-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url("../../fonts/jost-latin-500-normal.woff2") format("woff2")}

body.sg-engine-claude_v1{
  --ci-sky1:var(--c-sky-1,#050816);--ci-sky2:var(--c-sky-2,#111B42);--ci-sky3:var(--c-sky-3,#3D3263);--ci-moon:var(--c-moon,#F6EBD2);
  --ci-far:var(--c-city-far,#1B2148);--ci-near:var(--c-city-near,#090C1D);--ci-win1:var(--c-win-1,#FFD58A);--ci-win2:var(--c-win-2,#FFAE5C);--ci-beacon:var(--c-beacon,#FF3B3B);
  --ci-water:var(--c-water,#060A1C);--ci-night:var(--c-night,#080C1D);--ci-night-ink:var(--c-night-ink,#F4ECDD);--ci-night-muted:var(--c-night-muted,#B9B3C9);
  --ci-paper:var(--c-paper,#FBF6EC);--ci-ink:var(--c-paper-ink,#1B1F36);--ci-muted:var(--c-paper-muted,#5F6179);--ci-line:var(--c-line,#E4D8C0);
  --ci-accent:var(--c-accent,#E0AE4F);--ci-accent-ink:var(--c-accent-ink,#1E1504);--ci-accent-text:var(--c-accent-text,#8A6417);
  --ci-accent-soft:color-mix(in srgb,var(--ci-accent) 18%,#fff);
  --ci-night-line:color-mix(in srgb,var(--ci-night-ink) 14%,transparent);
  --ci-script:"Parisienne","Snell Roundhand",cursive;--ci-serif:"Playfair Display",Georgia,serif;--ci-sans:"Jost",system-ui,sans-serif;
  background:var(--ci-night)!important;background-image:none!important;color:var(--ci-night-ink);font-family:var(--ci-sans)}
body.sg-engine-claude_v1::before,body.sg-engine-claude_v1::after{display:none!important}
body.sg-engine-claude_v1 .pagina-convite{max-width:480px;margin:0 auto!important;background:var(--ci-night);min-height:100svh;overflow:clip}
body.sg-engine-claude_v1 .convite{overflow:visible!important}
body.sg-engine-claude_v1 .ci-root{position:relative;isolation:isolate}
body.sg-engine-claude_v1 .ci-root [hidden]{display:none!important}
/* Telas fora de vista: classe em vez de [hidden], para os scripts do convite (mapa etc.) prepararem o conteúdo. */
body.sg-engine-claude_v1 .ci-root .ci-pg.ci-off{display:none!important}
.ci-book{position:relative;z-index:1}

/* ================= Fundo das telas internas ================= */
/* Só aparece dentro das partes; na tela do menu a página termina na cor do tema. */
body.sg-engine-claude_v1:not([data-ci-screen]) .ci-bg,body.sg-engine-claude_v1[data-ci-screen="menu"] .ci-bg{display:none}
.ci-bg{position:fixed;z-index:0;top:0;bottom:0;left:50%;width:min(100%,480px);transform:translateX(-50%);pointer-events:none;overflow:hidden;
  background:linear-gradient(180deg,var(--ci-sky1) 0%,var(--ci-sky2) 55%,color-mix(in srgb,var(--ci-sky3) 60%,var(--ci-sky2)) 100%)}
.ci-bg-stars,.ci-stars{position:absolute;inset:0;opacity:.8;
  background-image:radial-gradient(1.2px 1.2px at 12% 14%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 27% 32%,#fff 50%,transparent 51%),radial-gradient(1.4px 1.4px at 44% 9%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 63% 23%,#fff 50%,transparent 51%),radial-gradient(1.2px 1.2px at 81% 36%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 91% 8%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 7% 41%,#fff 50%,transparent 51%),radial-gradient(1.3px 1.3px at 55% 44%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 35% 51%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 72% 5%,#fff 50%,transparent 51%);
  background-size:220px 260px}
.ci-bg-stars{animation:ci-twinkle 5s ease-in-out infinite alternate}
@keyframes ci-twinkle{from{opacity:.35}to{opacity:.85}}
.ci-bg-city{position:absolute;left:0;bottom:0;width:100%;height:auto;aspect-ratio:2/1;opacity:.95}
.ci-bg-city--far{bottom:3%;transform:scaleY(1.12);transform-origin:bottom;opacity:.7}
.ci-bg-city .ci-city-body{fill:var(--ci-near)}
.ci-bg-city--far .ci-city-body{fill:color-mix(in srgb,var(--ci-far) 80%,var(--ci-sky3))}
.ci-bg-city .ci-city-win rect{fill:var(--ci-win1);opacity:.55}
.ci-bg-city .ci-city-win rect.b{fill:var(--ci-win2)}
.ci-bg-city .ci-city-win rect:nth-child(3n){opacity:.25}
.ci-city-beacon circle{fill:var(--ci-beacon);animation:ci-blink 2.4s ease-in-out infinite;animation-delay:calc(var(--d) * -1)}
@keyframes ci-blink{0%,55%,100%{opacity:.18}70%{opacity:1}}

/* ================= Cena (tela inicial e, por trás da capa, a abertura) ================= */
.ci-pg{position:relative;box-sizing:border-box;min-height:100svh;text-align:center}
.ci-home{background:var(--ci-night)}
.ci-scene{position:relative;height:100svh;min-height:540px;overflow:hidden;background:var(--ci-sky1)}
.ci-gl,.ci-fx{position:absolute;inset:0;display:block;width:100%;height:100%}
.ci-gl{z-index:1}
.ci-fx{z-index:2;pointer-events:none}
/* Reserva sem WebGL: o mesmo desenho em CSS/SVG */
.ci-art{position:absolute;inset:0;z-index:0}
.ci-root.ci-gl-on .ci-art{visibility:hidden}
.ci-sky{position:absolute;inset:0 0 40% 0;background:linear-gradient(180deg,var(--ci-sky1) 0%,var(--ci-sky2) 52%,var(--ci-sky3) 100%)}
.ci-stars{bottom:50%}
.ci-moon{position:absolute;left:86%;top:5.2%;width:32px;height:32px;margin:-16px 0 0 -16px;border-radius:50%;
  background:radial-gradient(circle at 42% 40%,var(--ci-moon) 0 55%,color-mix(in srgb,var(--ci-moon) 82%,#8a8aa0) 100%);
  box-shadow:0 0 24px 6px color-mix(in srgb,var(--ci-moon) 35%,transparent),0 0 80px 30px color-mix(in srgb,var(--ci-moon) 12%,transparent)}
.ci-city{position:absolute;left:0;width:100%;bottom:40%}
.ci-city--far{height:31%}
.ci-city--near{height:22%}
.ci-city--far .ci-city-body{fill:color-mix(in srgb,var(--ci-far) 70%,var(--ci-sky3))}
.ci-city--near .ci-city-body{fill:var(--ci-near)}
.ci-city-win rect{fill:color-mix(in srgb,var(--ci-far) 70%,var(--ci-sky2));transition:fill .5s ease;transition-delay:var(--d)}
.ci-city-win rect.on{fill:var(--ci-win1)}
.ci-root:is(.ci-lit,.is-opening,.is-opened) .ci-city-win rect,.ci-root--cover-only .ci-city-win rect{fill:var(--ci-win1)}
.ci-root:is(.ci-lit,.is-opening,.is-opened) .ci-city-win rect.b,.ci-root--cover-only .ci-city-win rect.b{fill:var(--ci-win2)}
.ci-city--far .ci-city-win{opacity:.72}
.ci-river{position:absolute;left:0;right:0;bottom:0;height:40%;
  background:repeating-linear-gradient(180deg,transparent 0 5px,color-mix(in srgb,var(--ci-win1) 10%,transparent) 5px 6px,transparent 6px 13px),linear-gradient(180deg,color-mix(in srgb,var(--ci-sky3) 35%,var(--ci-water)) 0%,var(--ci-water) 70%)}
.ci-river{overflow:hidden}
.ci-river::before{content:"";position:absolute;z-index:1;left:0;right:0;top:0;height:8px;background:var(--ci-near)}
/* Reflexo da reserva: a mesma silhueta de cabeça para baixo, desfocada e ondulando */
.ci-city--refl{top:8px;bottom:auto;height:55%;transform:scaleY(-1);transform-origin:center;opacity:.42;filter:blur(1.4px);
  -webkit-mask-image:linear-gradient(0deg,#000,transparent 85%);mask-image:linear-gradient(0deg,#000,transparent 85%);animation:ci-ripple 6s ease-in-out infinite alternate}
@keyframes ci-ripple{from{transform:scaleY(-1) skewX(.6deg)}to{transform:scaleY(-1.04) skewX(-.6deg)}}

/* Títulos sobre o céu */
.ci-titles,.ci-cover-titles{position:absolute;z-index:3;left:0;right:0;top:calc(10svh + env(safe-area-inset-top));display:flex;flex-direction:column;align-items:center;padding:0 20px}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-eyebrow{margin:0 0 4px;font-family:var(--ci-sans);font-size:12.5px;font-weight:500;letter-spacing:.34em;padding-left:.34em;text-transform:uppercase;color:var(--ci-night-ink);opacity:.9;text-shadow:0 1px 10px rgba(0,0,0,.55)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-name{box-sizing:border-box;width:100%;margin:0;padding:.06em .16em .14em;font-family:var(--ci-script);font-weight:400;font-size:clamp(58px,17vw,84px);line-height:1.2;letter-spacing:0;text-transform:none;white-space:nowrap;text-align:center;
  color:var(--ci-night-ink);text-shadow:0 0 1px color-mix(in srgb,var(--ci-win1) 80%,transparent),0 0 18px color-mix(in srgb,var(--ci-win1) 55%,transparent),0 0 46px color-mix(in srgb,var(--ci-win2) 30%,transparent)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-name.ci-name--2l{white-space:normal;line-height:1.08;text-wrap:balance;padding-bottom:.2em}
/* XV entre filetes dourados, logo abaixo do nome */
.ci-xv{display:flex;align-items:center;gap:16px;margin:0;color:var(--ci-night-ink)}
.ci-xv span{font-family:var(--ci-serif);font-size:clamp(40px,11vw,54px);font-weight:500;line-height:1;letter-spacing:.14em;padding-left:.14em;
  background:linear-gradient(180deg,#fff 0%,var(--ci-win1) 60%,var(--ci-accent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 16px color-mix(in srgb,var(--ci-win1) 40%,transparent))}
.ci-xv i{display:block;width:clamp(34px,11vw,58px);height:1px;background:linear-gradient(90deg,transparent,var(--ci-accent))}
.ci-xv i:last-child{background:linear-gradient(270deg,transparent,var(--ci-accent))}
/* Adormecida: nome em luz baixa, respira devagar */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-name--cover{text-shadow:0 0 14px color-mix(in srgb,var(--ci-win1) 30%,transparent);opacity:.92;animation:ci-breathe 4.5s ease-in-out infinite}
@keyframes ci-breathe{0%,100%{opacity:.8}50%{opacity:1}}

/* ================= Capa ================= */
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .capa.ci-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;text-align:center;
  background:none!important;background-image:none!important;border:0!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ci-root .capa.ci-cover::before,body.sg-engine-claude_v1 .ci-root .capa.ci-cover::after{content:none!important;display:none!important}
@media (min-width:560px){body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .capa.ci-cover{left:50%!important;right:auto!important;width:480px;transform:translateX(-50%)}}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .capa.ci-cover.is-gone{display:none!important}
.ci-cover-foot{position:absolute;left:0;right:0;bottom:calc(46px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;padding:0 24px}
.ci-guest{min-height:1px;margin:0 0 16px}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root .ci-guest .capa__convidado:not(:empty){display:block!important;position:static!important;width:auto!important;height:auto!important;clip:auto!important;margin:0!important;padding:0!important;
  font-family:var(--ci-serif)!important;font-size:22px!important;font-style:italic!important;font-weight:400!important;line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;color:var(--ci-night-ink)!important;background:none!important;border:0!important;text-shadow:0 1px 10px rgba(0,0,0,.6)!important}
body.sg-engine-claude_v1 .ci-guest .capa__convidado :is(small,strong){display:block;font:inherit!important;color:inherit!important;text-transform:none!important}
/* Botão de abrir: uma luz âmbar que pulsa como janela acendendo */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root a.botao.ci-open{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:0!important;padding:17px 44px 16px!important;border:0!important;border-radius:999px!important;overflow:visible;
  background:var(--ci-accent)!important;background-color:var(--ci-accent)!important;background-image:none!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--ci-win1) 60%,transparent),0 0 26px 4px color-mix(in srgb,var(--ci-accent) 55%,transparent),0 16px 30px -14px #000!important;
  font-family:var(--ci-sans)!important;font-size:14px!important;font-weight:500!important;letter-spacing:.22em!important;text-transform:uppercase!important;color:var(--ci-accent-ink)!important;text-shadow:none!important;text-decoration:none!important;
  animation:ci-pulse 2.6s ease-in-out infinite}
body.sg-engine-claude_v1 .ci-root a.botao.ci-open::before,body.sg-engine-claude_v1 .ci-root a.botao.ci-open::after{content:none!important;display:none!important}
body.sg-engine-claude_v1 .ci-root a.botao.ci-open:focus-visible{outline:2px solid var(--ci-win1);outline-offset:5px}
.ci-open-label{position:relative;z-index:1;padding-left:.22em}
.ci-open-glow{position:absolute;inset:-14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ci-win1) 55%,transparent);opacity:0;animation:ci-ring 2.6s ease-out infinite}
@keyframes ci-pulse{0%,100%{box-shadow:0 0 0 1px color-mix(in srgb,var(--ci-win1) 60%,transparent),0 0 18px 2px color-mix(in srgb,var(--ci-accent) 40%,transparent),0 16px 30px -14px #000}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--ci-win1) 80%,transparent),0 0 34px 8px color-mix(in srgb,var(--ci-accent) 65%,transparent),0 16px 30px -14px #000}}
@keyframes ci-ring{0%{transform:scale(.8);opacity:.8}100%{transform:scale(1.18);opacity:0}}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-hint{margin:16px 0 0;font-family:var(--ci-sans);font-size:11.5px;font-weight:400;letter-spacing:.24em;padding-left:.24em;text-transform:uppercase;color:var(--ci-night-muted);text-shadow:0 1px 8px rgba(0,0,0,.7)}

/* Abrindo: o nome da capa ganha luz enquanto a cidade acende; depois a tela inicial assume */
.ci-root.is-closed :is(.ci-titles,.ci-sheet){opacity:0}
.ci-root.is-opening .ci-cover-foot{animation:ci-out .5s ease both}
.ci-root.is-opening .ci-name--cover{animation:ci-ignite 1.9s ease both!important}
.ci-root.is-opening .ci-cover-titles{animation:ci-fade-out .35s ease 1.95s both}
.ci-root.is-opening .ci-titles{animation:ci-fade-in .35s ease 1.9s both}
.ci-root.is-opening .ci-sheet{animation:ci-rise 1.1s cubic-bezier(.2,.8,.2,1) 2s both}
.ci-root.is-opening .ci-list li{animation:ci-rise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(2.3s + var(--i) * .07s)}
@keyframes ci-out{to{opacity:0;transform:translateY(14px)}}
@keyframes ci-ignite{0%{opacity:.85;text-shadow:0 0 14px color-mix(in srgb,var(--ci-win1) 30%,transparent)}100%{opacity:1;text-shadow:0 0 1px color-mix(in srgb,var(--ci-win1) 80%,transparent),0 0 18px color-mix(in srgb,var(--ci-win1) 55%,transparent),0 0 46px color-mix(in srgb,var(--ci-win2) 30%,transparent)}}
@keyframes ci-fade-out{to{opacity:0}}
@keyframes ci-fade-in{from{opacity:0}}
@keyframes ci-rise{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}

/* ================= Tela inicial: menu sobre a noite ================= */
.ci-sheet{position:relative;z-index:4;margin-top:-27svh;padding:64px 26px calc(56px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,transparent 0,color-mix(in srgb,var(--ci-night) 82%,transparent) 56px,var(--ci-night) 120px)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-when{margin:0;font-family:var(--ci-serif);font-size:20px;font-weight:500;line-height:1.4;color:var(--ci-night-ink);text-wrap:balance}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-intro{margin:14px auto 0;max-width:30ch;font-family:var(--ci-serif);font-size:19px;font-style:italic;font-weight:400;line-height:1.5;color:var(--ci-night-muted);text-wrap:balance}
.ci-menu{margin:28px 0 0;text-align:left}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root a.ci-rsvp{position:relative;display:block;overflow:hidden;padding:18px 18px 17px;border-radius:999px;text-align:center;text-decoration:none;background:var(--ci-accent)!important;background-color:var(--ci-accent)!important;color:var(--ci-accent-ink)!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--ci-win1) 50%,transparent),0 0 30px -4px color-mix(in srgb,var(--ci-accent) 70%,transparent);font-family:var(--ci-sans);font-size:14.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
body.sg-engine-claude_v1 .ci-root a.ci-rsvp span{position:relative;z-index:1}
/* Reflexo de luz que atravessa o botão, como farol passando */
body.sg-engine-claude_v1 .ci-root a.ci-rsvp::after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:30%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:ci-sheen 4.2s ease-in-out 1s infinite}
@keyframes ci-sheen{0%{left:-40%}40%,100%{left:130%}}
body.sg-engine-claude_v1 .ci-root a.ci-rsvp:focus-visible{outline:2px solid var(--ci-win1);outline-offset:4px}
/* Partes do convite em cartões de duas colunas: ícone, nome e um dado real */
.ci-menu-head{margin:34px 0 14px;text-align:center}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root .ci-menu-title{margin:0;padding:0;font-family:var(--ci-serif);font-size:25px;font-weight:500;line-height:1.2;letter-spacing:0;text-transform:none;color:var(--ci-night-ink)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root .ci-menu-help{margin:6px 0 0;font-family:var(--ci-sans);font-size:14px;font-weight:400;line-height:1.4;color:var(--ci-night-muted)}
.ci-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0}
.ci-list li{margin:0;padding:0;min-width:0}
.ci-list--odd li:last-child{grid-column:1/-1}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root a.ci-item{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;box-sizing:border-box;height:100%;min-height:128px;padding:16px 16px 15px;border-radius:18px;text-decoration:none;color:var(--ci-night-ink);-webkit-tap-highlight-color:transparent;
  background:linear-gradient(160deg,color-mix(in srgb,var(--ci-far) 55%,var(--ci-night)) 0%,color-mix(in srgb,var(--ci-far) 22%,var(--ci-night)) 100%);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ci-win1) 38%,transparent),0 14px 26px -18px #000;transition:transform .15s ease,box-shadow .2s ease}
body.sg-engine-claude_v1 .ci-root a.ci-item:active{transform:scale(.97)}
body.sg-engine-claude_v1 .ci-root a.ci-item:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ci-win1) 70%,transparent),0 0 24px -6px color-mix(in srgb,var(--ci-win1) 40%,transparent),0 14px 26px -18px #000}
.ci-item-badge{display:grid;place-items:center;width:42px;height:42px;margin:0 0 4px;border-radius:50%;background:color-mix(in srgb,var(--ci-win1) 14%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ci-win1) 45%,transparent)}
.ci-item-icon{width:22px;height:22px;color:var(--ci-win1);filter:drop-shadow(0 0 6px color-mix(in srgb,var(--ci-win1) 45%,transparent))}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root .ci-item-label{min-width:0;font-family:var(--ci-serif);font-size:20px;font-weight:500;line-height:1.15;letter-spacing:0;text-transform:none;color:inherit}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root .ci-item-hint{display:block;max-width:100%;overflow:hidden;font-family:var(--ci-sans);font-size:13px;font-weight:400;line-height:1.35;color:var(--ci-night-muted);text-overflow:ellipsis;white-space:nowrap}
.ci-arrow{flex:none;width:16px;height:16px}
.ci-item .ci-arrow{position:absolute;top:18px;right:14px;color:var(--ci-win1);transition:transform .2s}
body.sg-engine-claude_v1 .ci-root a.ci-item:hover .ci-arrow{transform:translateX(3px)}
body.sg-engine-claude_v1 .ci-root a.ci-item:focus-visible{outline:2px solid var(--ci-win1);outline-offset:3px}
/* Contagem */
.ci-count{margin:42px 0 0}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-root .ci-count-title{margin:0 0 10px;font-family:var(--ci-sans);font-size:12.5px;font-weight:500;letter-spacing:.3em;padding-left:.3em;text-transform:uppercase;color:var(--ci-win1)}
body.sg-engine-claude_v1 .ci-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 .ci-count .secao__interno{width:auto!important;max-width:none!important;padding:0!important}
body.sg-engine-claude_v1 .ci-count :is(.titulo-secao,.divisor,.cantoneiras){display:none!important}
body.sg-engine-claude_v1 .ci-count .contagem{display:flex!important;justify-content:center;gap:22px!important;margin:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-count .contagem__item{min-width:0!important;padding:0!important;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 .ci-count .contagem__numero{font-family:var(--ci-serif)!important;font-size:46px!important;font-weight:500!important;line-height:1!important;color:var(--ci-night-ink)!important;text-shadow:0 0 18px color-mix(in srgb,var(--ci-win1) 40%,transparent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-count .contagem__rotulo{display:block!important;opacity:1!important;visibility:visible!important;position:static!important;margin-top:6px;font-family:var(--ci-sans)!important;font-size:12px!important;font-style:normal!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:var(--ci-night-muted)!important}
body.sg-engine-claude_v1 .ci-count .contagem__realizada{font-family:var(--ci-serif)!important;color:var(--ci-night-ink)!important}

/* ================= Telas ================= */
.ci-page{text-align:left;padding:calc(40px + env(safe-area-inset-top)) 20px calc(112px + env(safe-area-inset-bottom))!important}
.ci-page-head{text-align:center;margin:0 0 22px;color:var(--ci-night-ink)}
.ci-page-icon{display:block;width:30px;height:30px;margin:0 auto 10px;color:var(--ci-win1);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--ci-win1) 55%,transparent))}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root .ci-title{margin:0 0 12px;padding:0;font-family:var(--ci-serif);font-size:34px;font-weight:500;line-height:1.15;letter-spacing:0;text-transform:none;color:var(--ci-night-ink)}
.ci-rule{display:block;width:120px;height:14px;margin:0 auto}
.ci-rule path{stroke:var(--ci-win1);stroke-width:1.3;stroke-linejoin:round;opacity:.85}
.ci-page.ci-enter-anim :is(.ci-page-head,.ci-card){animation:ci-rise .7s cubic-bezier(.2,.8,.2,1) both}
.ci-page.ci-enter-anim .ci-card{animation-delay:.1s}
/* Cartão claro: como a janela acesa de um apartamento */
.ci-card{position:relative;border-radius:20px;background:var(--ci-paper);box-shadow:0 0 0 1px color-mix(in srgb,var(--ci-win1) 35%,transparent),0 0 40px -6px color-mix(in srgb,var(--ci-win1) 28%,transparent),0 30px 50px -30px #000}

/* ---------- Módulos reais do Capítulo 15 no cartão ---------- */
body.sg-engine-claude_v1 .ci-modules{
  --c-bg:var(--ci-paper);--c-surface:var(--ci-paper);--c-ink:var(--ci-ink);--c-ink-soft:var(--ci-muted);--c-line:var(--ci-line);
  --c-name:var(--ci-ink);--c-primary:var(--ci-accent-text);--c-button-bg:var(--ci-ink);--c-button-ink:#fff;
  padding:14px 24px 26px;color:var(--ci-ink);font-family:var(--ci-sans);text-align:left}
body.sg-engine-claude_v1 .ci-modules .secao{position:relative;margin:0!important;padding:16px 0 8px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:var(--ci-ink)!important;min-height:0!important}
body.sg-engine-claude_v1 .ci-modules #confirmar{border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ci-modules .secao + .secao{margin-top:10px!important;padding-top:22px!important;border-top:1px solid var(--ci-line)!important}
body.sg-engine-claude_v1 .ci-modules .secao__interno{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
body.sg-engine-claude_v1 .ci-modules :is(.cantoneiras,.cantoneira,.divisor){display:none!important}
body.sg-engine-claude_v1 .ci-modules .revela{opacity:1!important;transform:none!important}
body.sg-engine-claude_v1 .ci-modules :is(.cartao,.moldura){border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1 .ci-modules :is(.moldura,.cartao,.texto)::before,body.sg-engine-claude_v1 .ci-modules :is(.moldura,.cartao,.texto)::after{display:none!important}
body.sg-engine-claude_v1 .ci-card--same-title .ci-modules > .secao:first-child .titulo-secao{display:none!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules .titulo-secao{display:block!important;width:100%!important;max-width:none!important;margin:0 0 14px!important;padding:0!important;font-family:var(--ci-sans)!important;font-size:12.5px!important;font-weight:500!important;letter-spacing:.2em!important;line-height:1.4!important;text-transform:uppercase!important;text-align:left!important;color:var(--ci-accent-text)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-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(--ci-sans)!important;font-size:16px!important;font-weight:400!important;font-style:normal!important;line-height:1.6!important;letter-spacing:0!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules :is(.item__titulo,.evento__nome,.local-card__nome,.compromisso__nome,.party-public-6136__copy h3){font-family:var(--ci-serif)!important;font-size:19px!important;font-weight:500!important;letter-spacing:.01em!important;text-transform:none!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules :is(.campo__rotulo,.rsvp-prazo){font-family:var(--ci-sans)!important;font-size:12px!important;font-weight:500!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--ci-muted)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules p#rsvp-membros-rotulo{font-family:var(--ci-sans)!important;font-size:15px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules :is(label,legend):not(.campo__rotulo){font-family:var(--ci-sans)!important;font-size:15px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules .compromisso__local{margin:4px 0!important;font-family:var(--ci-serif)!important;font-size:26px!important;font-weight:500!important;letter-spacing:0!important;line-height:1.2!important;text-transform:none!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1 .ci-modules .compromisso{margin:0 0 12px!important;padding:0 0 14px!important;border:0!important;border-bottom:1px solid var(--ci-line)!important;border-radius:0!important;background:none!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ci-modules .party-public-6136__icon{background:var(--ci-paper)!important;color:var(--ci-accent-text)!important;border:0!important;box-shadow:inset 0 0 0 1.5px var(--ci-accent-text)!important}
body.sg-engine-claude_v1 .ci-modules .party-public-6136__icon [class*="mdi-sg"]{color:var(--ci-accent-text)!important}
body.sg-engine-claude_v1 .ci-modules .party-public-6136__line{background:var(--ci-line)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-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 .ci-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(--ci-line)!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 .ci-modules .item:last-child{border-bottom:0!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules .item__icone{flex:none!important;align-self:flex-start!important;margin:3px 0 0!important;width:24px!important;height:24px!important;font-size:20px!important;color:var(--ci-accent-text)!important;background:none!important;border:0!important}
body.sg-engine-claude_v1 .ci-modules .item__icone [class*="mdi-sg"]{color:var(--ci-accent-text)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-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 .ci-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 .ci-modules .texto--centro{text-align:left!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-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 .ci-modules .compromisso__comodidade{grid-template-columns:2rem minmax(0,1fr)!important;gap:12px!important;align-items:center!important;border-radius:12px!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-modules .compromisso__comodidade :is(.item__titulo,.item__texto){overflow-wrap:normal!important;word-break:normal!important;hyphens:manual!important}
body.sg-engine-claude_v1 .ci-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159){border-radius:12px!important;overflow:hidden}
body.sg-engine-claude_v1 .ci-modules :is(.compromisso__mapa-estatico,.invite-static-map-6159) img{display:block;width:100%;height:auto}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules :is(input[type=text],input[type=tel],input[type=email],input[type=number],select,textarea){border:1px solid color-mix(in srgb,var(--ci-ink) 22%,transparent)!important;border-radius:12px!important;background:#fff!important;color:var(--ci-ink)!important;font-family:var(--ci-sans)!important;font-size:16px!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ci-modules :is(input,select,textarea):focus{outline:0!important;border-color:var(--ci-accent-text)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--ci-accent) 30%,transparent)!important}
body.sg-engine-claude_v1 .ci-modules :is(.rsvp-cartao,.rsvp-preview-note-4035,.aviso,.rsvp-membro,.rsvp-guest-policy-ack,.rsvp__resposta){border-radius:12px!important;box-shadow:none!important}
body.sg-engine-claude_v1 .ci-modules #confirmar .rsvp-cartao--simples{max-width:none!important;background:transparent!important;border:0!important;padding:0!important}
body.sg-engine-claude_v1 .ci-modules .escolha{border:1px solid color-mix(in srgb,var(--ci-ink) 22%,transparent)!important;border-radius:999px!important;background:#fff!important;color:var(--ci-ink)!important;font-family:var(--ci-sans)!important}
body.sg-engine-claude_v1 .ci-modules .escolha:has(input:checked){background:var(--ci-accent-soft)!important;border-color:var(--ci-accent-text)!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1 .ci-modules :is(input,select,textarea) + :is(.botao,button),body.sg-engine-claude_v1 .ci-modules form .botao{margin-top:14px!important}
body.sg-engine-claude_v1 .ci-modules a:not(.botao){color:var(--ci-accent-text)}
/* Botões no cartão: noite preenchida com texto claro; secundário em contorno */
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root :is(.botao,button.botao,a.botao):not(.ci-open){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px!important;border:0!important;border-radius:999px!important;
  background:var(--ci-ink)!important;background-color:var(--ci-ink)!important;background-image:none!important;color:#fff!important;font-family:var(--ci-sans)!important;font-size:13.5px!important;font-weight:500!important;letter-spacing:.14em!important;line-height:1.1!important;text-transform:uppercase!important;text-decoration:none!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--ci-accent) 70%,transparent),0 12px 22px -16px #000!important;text-shadow:none}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root :is(button.botao.botao--contorno,a.botao.botao--contorno,.botao.botao--contorno,button.compromisso__copiar-endereco,.compromisso__copiar-endereco):not(.ci-open){background:transparent!important;color:var(--ci-ink)!important;text-shadow:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ci-accent-text) 70%,transparent)!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-modules .compromisso__copiar-endereco{display:inline-flex!important;align-items:center;min-height:34px!important;margin:6px 0 4px!important;padding:6px 14px!important;border:0!important;border-radius:999px!important;font-family:var(--ci-sans)!important;font-size:11.5px!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body.sg-engine-claude_v1.sg-engine-claude_v1 .pagina-convite .ci-root .botao--pequeno{min-height:38px;padding:8px 16px!important;font-size:12px!important}
body.sg-engine-claude_v1 .ci-root .botao--bloco{display:flex;width:100%}
body.sg-engine-claude_v1 .ci-root .botao:not(.ci-open)::before,body.sg-engine-claude_v1 .ci-root .botao:not(.ci-open)::after{display:none!important}
body.sg-engine-claude_v1 .ci-modules :is(.mural-6138__title,.mural-610__eyebrow){font-family:var(--ci-sans)!important;letter-spacing:.14em!important;color:var(--ci-ink)!important}
body.sg-engine-claude_v1 .ci-modules .mural-6138__subtitle{font-family:var(--ci-serif)!important;font-style:italic;color:var(--ci-muted)!important}

/* ---------- Voltar ao menu ---------- */
body.sg-engine-claude_v1.sg-engine-claude_v1 a.ci-back{position:fixed!important;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;display:flex!important;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;width:min(calc(100% - 48px),380px)!important;margin:0!important;padding:14px 18px!important;transform:translateX(-50%)!important;
  border-radius:999px;background:color-mix(in srgb,var(--ci-night) 86%,transparent)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ci-night-ink)!important;text-decoration:none!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ci-win1) 50%,transparent),0 12px 28px -14px #000!important;font-family:var(--ci-sans)!important;font-size:13px!important;font-weight:500!important;letter-spacing:.16em!important;text-transform:uppercase}
body.sg-engine-claude_v1 a.ci-back .ci-arrow{color:var(--ci-win1)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .ci-page[data-ci-screen="vip"] a.ci-back{position:relative!important;left:auto;bottom:auto;transform:none!important;width:100%!important;margin:44px 0 0!important}
body.sg-engine-claude_v1 .ci-page[data-ci-screen="vip"]{padding-bottom:calc(36px + env(safe-area-inset-bottom))!important}
body.sg-engine-claude_v1.ci-typing .ci-page a.ci-back{opacity:0!important;pointer-events:none!important}

/* ---------- Rodapé, música e botão flutuante ---------- */
body.sg-engine-claude_v1 .rodape{position:relative;z-index:2;background:var(--ci-night)!important;color:color-mix(in srgb,var(--ci-night-ink) 70%,transparent)!important;border-top:1px solid var(--ci-night-line)!important}
body.sg-engine-claude_v1 .rodape::before{background:var(--ci-accent)!important}
body.sg-engine-claude_v1[data-ci-screen]:not([data-ci-screen="menu"]) .rodape{display:none!important}
body.sg-engine-claude_v1[data-ci-screen]:not([data-ci-screen="menu"]) .pagina-convite{padding-bottom:0!important;background:transparent}
body.sg-engine-claude_v1 .rsvp-floating-cta{display:none!important}
body.sg-engine-claude_v1 .musica{background:color-mix(in srgb,var(--ci-night) 86%,transparent)!important;color:var(--ci-night-ink)!important;border:0!important;border-radius:999px!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ci-win1) 50%,transparent)!important;font-family:var(--ci-sans)!important;backdrop-filter:blur(8px)}
body.sg-engine-claude_v1.sg-engine-claude_v1 .rsvp-floating-cta,body.sg-engine-claude_v1.sg-engine-claude_v1 .rsvp-floating-cta strong{background:var(--ci-accent)!important;color:var(--ci-accent-ink)!important;border-radius:999px!important;font-family:var(--ci-sans)!important;font-weight:500!important;letter-spacing:.12em!important}

/* Miniatura da capa (seletor de temas): a cidade acesa, sem a capa e sem o menu */
.ci-root--cover-only :is(.ci-cover,.ci-sheet,.ci-bg){display:none!important}
.ci-root--section{min-height:100svh;padding:1px 0;background:var(--ci-night)}
.ci-section-preview{padding:24px 18px}

@media (prefers-reduced-motion:reduce){body.sg-engine-claude_v1 .ci-root *,body.sg-engine-claude_v1 .ci-root *::before,body.sg-engine-claude_v1 .ci-root *::after{animation:none!important;transition-duration:.01ms!important}}
