/* AJ Carrelo · movimento v3
   Tudo que esconde algo depende de classe posta por JS e tem trava de segurança:
   se JS, CDN ou vídeo falharem, o site aparece inteiro. */

/* ---------- item 11: folga para floreios em texto com degradê recortado ---------- */
#inicio .script{
  padding:.18em .18em .2em .08em;
  margin:calc(-6px - .18em) -.18em -.2em calc(4% - .08em);
  background:linear-gradient(180deg,#fde8da .18em,#dc9c7e calc(.18em + (100% - .38em) * .6),#b06a50 calc(100% - .2em));
  -webkit-background-clip:text;background-clip:text
}
#inicio h1,#como-funciona h2,#onde h2,#outros h2,.hero h1,.escuro h2{padding-left:.06em;padding-right:.06em;margin-left:-.06em;margin-right:-.06em}

/* ---------- trava de segurança (classes postas no <head>) ---------- */
@keyframes ajSafe{to{opacity:1}}
@keyframes ajSafeT{to{transform:none}}
@keyframes ajSafeCover{to{opacity:0;visibility:hidden}}
html.aj-pre #inicio .conteudo>*,html.aj-pre .hero .tx>*{opacity:0;animation:ajSafe .5s 2.6s forwards}
html.aj-pre #inicio .foto,html.aj-pre .hero .ft{transform:scale(1.08);animation:ajSafeT .8s 2.6s forwards}
html.aj-ab::after{content:"";position:fixed;inset:0;z-index:9998;background:#0b0706;animation:ajSafeCover .4s 2s forwards}
html.aj-abrindo,html.aj-abrindo body{overflow:hidden}

/* ---------- abertura ---------- */
.aj-ab{position:fixed;inset:0;z-index:9999;background:#0b0706;overflow:hidden}
.aj-ab video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s}
.aj-ab.tocando video{opacity:1}
.aj-ab .aj-luzv{position:absolute;top:-5%;bottom:-5%;left:0;width:16vw;min-width:90px;transform:translateX(-120%);pointer-events:none;
  background:linear-gradient(90deg,rgba(246,210,184,0) 0%,rgba(246,210,184,.35) 34%,#fff1e4 48%,#f3c3a0 52%,rgba(216,151,122,.35) 66%,rgba(216,151,122,0) 100%);
  filter:blur(2px);mix-blend-mode:screen}
.aj-pular{position:absolute;right:28px;bottom:26px;z-index:2;background:none;border:1px solid rgba(246,210,184,.45);color:#f6d2b8;border-radius:30px;
  padding:9px 20px;font:600 11px/1 Montserrat,sans-serif;letter-spacing:.24em;text-transform:uppercase;cursor:pointer;opacity:.75;transition:opacity .2s,border-color .2s}
.aj-pular:hover,.aj-pular:focus-visible{opacity:1;border-color:#f6d2b8}

/* ---------- linha de progresso ---------- */
.aj-prog{position:fixed;top:0;left:0;right:0;height:3px;z-index:9000;pointer-events:none;transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,#9a5a44,#d8977a 40%,#f6d2b8 75%,#fff1e4)}

/* ---------- cortina de luz nas fotos ---------- */
.aj-barra{position:absolute;top:0;bottom:0;width:10px;z-index:3;pointer-events:none;opacity:0;
  background:linear-gradient(90deg,rgba(246,210,184,0),#fff1e4 45%,#f3c3a0 55%,rgba(216,151,122,0));
  box-shadow:0 0 28px 8px rgba(243,195,160,.55);will-change:transform}
.etp figure,.os-t{isolation:isolate}

/* ---------- outros serviços: faixa de luz no hover ---------- */
.aj-faixa{position:absolute;top:-20%;bottom:-20%;left:0;width:38%;z-index:1;pointer-events:none;opacity:0;
  transform:translateX(-160%) skewX(-16deg);mix-blend-mode:screen;
  background:linear-gradient(90deg,rgba(246,210,184,0),rgba(246,200,160,.42) 50%,rgba(246,210,184,0))}
@media(hover:hover) and (pointer:fine){
  .os-t:hover .aj-faixa{opacity:1;transform:translateX(330%) skewX(-16deg);transition:transform 1.1s cubic-bezier(.22,1,.36,1),opacity .2s}
  .os-t .os-f{transition:transform 1.4s cubic-bezier(.22,1,.36,1)}
  .os-t:hover .os-f{transform:scale(1.09)}
}
html.aj-on #outros,html.aj-on .bloco{overflow-x:clip}

/* ---------- cursor (só mouse) ---------- */
.aj-dot,.aj-anel,.aj-halo{position:fixed;top:0;left:0;pointer-events:none;z-index:9500;opacity:0;will-change:transform}
.aj-dot{width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#f6d2b8;box-shadow:0 0 10px rgba(246,210,184,.8)}
.aj-anel{width:40px;height:40px;margin:-20px 0 0 -20px}
.aj-anel i{display:block;width:100%;height:100%;border-radius:50%;border:1px solid rgba(246,210,184,.75);
  transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .3s,background-color .3s,border-color .3s}
.aj-halo{width:380px;height:380px;margin:-190px 0 0 -190px;z-index:9400;mix-blend-mode:screen}
.aj-halo i{display:block;width:100%;height:100%;border-radius:50%;transform:scale(.3);opacity:0;
  background:radial-gradient(circle,rgba(255,214,176,.34) 0%,rgba(236,170,130,.2) 32%,rgba(216,151,122,.07) 55%,rgba(216,151,122,0) 70%);
  transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .45s}
body.aj-mv .aj-dot,body.aj-mv .aj-anel,body.aj-mv .aj-halo{opacity:1}
body.aj-foto .aj-halo i{transform:scale(1);opacity:1}
body.aj-foto .aj-anel i{transform:scale(.5);opacity:.4}
body.aj-botao .aj-anel i{transform:scale(1.9);background-color:rgba(246,210,184,.1);border-color:#f6d2b8}
body.aj-botao .aj-dot{transform:scale(.6)}

@media(prefers-reduced-motion:reduce){
  .aj-dot,.aj-anel,.aj-halo,.aj-faixa,.aj-barra,.aj-ab{display:none!important}
  .os-t .os-f{transition:none}
}
