/* Crítico e sem imagens: a identidade já existe antes de baixar o aplicativo. */
#sa-abertura { display:none; }
html[data-sa-abertura] { background:#143c32; overflow:hidden; }
html[data-sa-abertura] #sa-abertura { display:block; }
#sa-abertura { position:fixed; inset:0; z-index:12000; overflow:hidden; isolation:isolate; color:#f3f4ef; font-family:'DM Sans',Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.sa-abertura-cortina { position:absolute; top:0; bottom:0; width:calc(50% + 1px); background:#143c32; will-change:transform; }
.sa-abertura-esquerda { left:0; }
.sa-abertura-direita { right:0; }
.sa-abertura-moldura { position:absolute; inset:24px; border:1px solid #c1e9d226; pointer-events:none; }
.sa-abertura-marca { position:absolute; top:48px; left:56px; display:flex; align-items:center; gap:12px; font-size:15px; font-weight:600; letter-spacing:-.4px; }
.sa-abertura-ponto { width:8px; height:8px; border-radius:50%; background:#c1e9d2; box-shadow:0 0 0 5px #c1e9d212; }
.sa-abertura-arte { position:absolute; width:min(76vh,680px); height:min(76vh,680px); right:-11%; top:50%; transform:translateY(-50%) rotate(-14deg); }
.sa-abertura-desenho { width:100%; height:100%; overflow:visible; }
.sa-abertura-orbita { stroke:#c1e9d23b; stroke-width:.7; transform-origin:300px 300px; }
.sa-abertura-orbita-1 { stroke-dasharray:840 870; animation:sa-abertura-orbitar 18s linear infinite; }
.sa-abertura-orbita-2 { stroke-dasharray:260 140; animation:sa-abertura-orbitar 24s linear reverse infinite; }
.sa-abertura-eixo { stroke:#c1e9d218; stroke-width:1; }
.sa-abertura-calendario { transform-origin:300px 300px; animation:sa-abertura-calendario 1.4s cubic-bezier(.16,1,.3,1) both; }
.sa-abertura-traco { stroke:#c1e9d28a; stroke-width:2; stroke-linecap:round; stroke-dasharray:1; stroke-dashoffset:1; animation:sa-abertura-desenhar 1.05s cubic-bezier(.45,0,.2,1) .1s forwards; }
.sa-abertura-traco-2 { animation-delay:.25s; }
.sa-abertura-dia { fill:#c1e9d240; opacity:0; animation:sa-abertura-dia .65s ease both; }
.sa-abertura-dia-1 { animation-delay:.5s; }
.sa-abertura-dia-2 { animation-delay:.65s; }
.sa-abertura-dia-3 { animation-delay:.8s; }
.sa-abertura-check { stroke:#c1e9d2; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:1; stroke-dashoffset:1; animation:sa-abertura-desenhar .6s ease .75s forwards; }
.sa-abertura-satelite { fill:#c1e9d2; transform-origin:300px 300px; animation:sa-abertura-orbitar 18s linear infinite; }
.sa-abertura-conteudo { position:absolute; top:50%; left:clamp(40px,12vw,210px); transform:translateY(-48%); }
.sa-abertura-legenda { display:block; margin-bottom:32px; color:#c1e9d2; font-size:10px; letter-spacing:.24em; text-transform:uppercase; animation:sa-abertura-aparecer .6s ease .2s both; }
.sa-abertura-palavra { overflow:hidden; padding:0 .08em .08em 0; font-size:clamp(66px,10vw,158px); line-height:.95; letter-spacing:-.055em; font-weight:500; }
.sa-abertura-palavra>span { display:block; animation:sa-abertura-letras .9s cubic-bezier(.16,1,.3,1) .05s both; }
.sa-abertura-serif { padding-right:.18em; line-height:1.12; font-family:'Instrument Serif',Georgia,serif; font-style:italic; font-weight:400; letter-spacing:-.035em; color:#c1e9d2; }
.sa-abertura-serif>span { animation-delay:.18s; }
.sa-abertura-fio { width:clamp(100px,18vw,260px); height:1px; margin-top:36px; background:#c1e9d224; overflow:hidden; }
.sa-abertura-fio>span { display:block; width:50%; height:100%; background:#c1e9d2; animation:sa-abertura-fio 1.8s cubic-bezier(.65,0,.35,1) infinite; }
.sa-abertura-rodape { position:absolute; bottom:46px; left:56px; right:56px; display:flex; justify-content:space-between; align-items:center; gap:20px; font-size:11px; color:#bed3c7; }
.sa-abertura-preparando>span { display:inline-block; animation:sa-abertura-respirar 1.6s ease-in-out infinite alternate; }
#sa-abertura button { font:inherit; color:#f3f4ef; cursor:pointer; background:transparent; border:0; border-bottom:1px solid #c1e9d25c; padding:12px 0; min-height:44px; }
#sa-abertura button[hidden] { display:none; }
#sa-abertura button>span { margin-left:20px; }
#sa-abertura button:hover { color:#c1e9d2; border-color:#c1e9d2; }
#sa-abertura button:focus-visible { outline:2px solid #c1e9d2; outline-offset:6px; }
.sa-abertura-erro { display:none; position:absolute; inset:0; padding:32px; align-items:center; justify-content:center; flex-direction:column; gap:22px; text-align:center; }
.sa-abertura-erro>p { margin:0; font-family:'Instrument Serif',Georgia,serif; font-size:clamp(40px,6vw,76px); font-style:italic; }
.sa-abertura-erro>span { font-size:14px; color:#bed3c7; }
html[data-sa-abertura=erro] .sa-abertura-erro { display:flex; }
html[data-sa-abertura=erro] .sa-abertura-arte, html[data-sa-abertura=erro] .sa-abertura-conteudo, html[data-sa-abertura=erro] .sa-abertura-rodape { display:none; }
html[data-sa-abertura=erro] #sa-abertura * { animation:none!important; }
html[data-sa-abertura=saindo] .sa-abertura-esquerda { box-shadow:14px 0 0 #c1e9d2; animation:sa-abertura-abrir-esquerda .72s cubic-bezier(.76,0,.24,1) forwards; }
html[data-sa-abertura=saindo] .sa-abertura-direita { box-shadow:-14px 0 0 #c1e9d2; animation:sa-abertura-abrir-direita .72s cubic-bezier(.76,0,.24,1) forwards; }
html[data-sa-abertura=saindo] .sa-abertura-conteudo { animation:sa-abertura-despedir .32s ease-in forwards; }
html[data-sa-abertura=saindo] .sa-abertura-arte, html[data-sa-abertura=saindo] .sa-abertura-marca, html[data-sa-abertura=saindo] .sa-abertura-moldura, html[data-sa-abertura=saindo] .sa-abertura-rodape { animation:sa-abertura-apagar .25s ease forwards; }
@keyframes sa-abertura-letras { from { transform:translateY(115%) rotate(4deg); opacity:0; } to { transform:translateY(0) rotate(0); opacity:1; } }
@keyframes sa-abertura-aparecer { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes sa-abertura-orbitar { to { transform:rotate(360deg); } }
@keyframes sa-abertura-calendario { from { transform:rotate(22deg) scale(.8); opacity:0; } to { transform:rotate(0) scale(1); opacity:1; } }
@keyframes sa-abertura-desenhar { to { stroke-dashoffset:0; } }
@keyframes sa-abertura-dia { from { opacity:0; transform:translateY(-12px); } to { opacity:1; transform:translateY(0); } }
@keyframes sa-abertura-fio { from { transform:translateX(-110%); } to { transform:translateX(220%); } }
@keyframes sa-abertura-respirar { to { opacity:.2; } }
@keyframes sa-abertura-abrir-esquerda { to { transform:translateX(calc(-100% - 18px)); } }
@keyframes sa-abertura-abrir-direita { to { transform:translateX(calc(100% + 18px)); } }
@keyframes sa-abertura-despedir { to { opacity:0; transform:translateY(-60%) scale(.98); } }
@keyframes sa-abertura-apagar { to { opacity:0; } }
/* Na revisita a marca já nasce formada; o tempo curto não corta letras/desenho. */
html[data-sa-abertura-curta=true] .sa-abertura-palavra>span,
html[data-sa-abertura-curta=true] .sa-abertura-legenda,
html[data-sa-abertura-curta=true] .sa-abertura-calendario,
html[data-sa-abertura-curta=true] .sa-abertura-traco,
html[data-sa-abertura-curta=true] .sa-abertura-dia,
html[data-sa-abertura-curta=true] .sa-abertura-check { animation:none; opacity:1; stroke-dashoffset:0; }
@media(max-width:700px) {
  .sa-abertura-moldura { inset:14px; }
  .sa-abertura-marca { top:34px; left:30px; font-size:14px; }
  .sa-abertura-conteudo { left:30px; right:20px; top:53%; }
  .sa-abertura-legenda { font-size:9px; letter-spacing:.18em; margin-bottom:26px; }
  .sa-abertura-palavra { font-size:clamp(52px,12vw,85px); }
  .sa-abertura-arte { width:380px; height:380px; right:-180px; top:24%; opacity:.6; }
  .sa-abertura-rodape { bottom:26px; left:30px; right:30px; flex-wrap:wrap; gap:8px; }
}
@media(prefers-reduced-motion:reduce) {
  #sa-abertura *, #sa-abertura *::before, #sa-abertura *::after { animation:none!important; }
  .sa-abertura-legenda, .sa-abertura-dia { opacity:1; }
  .sa-abertura-traco, .sa-abertura-check { stroke-dashoffset:0; }
}
