/* ══ Experiência de rolagem: bicho 3D grande + capítulos em bolhas de vidro ══ */
html,body,main{overflow-x:clip!important;overflow-y:visible!important}  /* "hidden" quebrava o position:sticky */
.op-bicho{--svc:#1CA3E0;position:relative;height:420vh;color:#EAF6FF;isolation:isolate;
  background:linear-gradient(180deg,#020b1c 0%,color-mix(in srgb,var(--svc) 22%,#020b1c) 50%,#020b1c 100%)}
body[style*="--svc"] .op-bicho{--svc:inherit}
.op-bicho .ob-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.op-bicho .ob-sticky:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(55% 60% at 50% 45%,color-mix(in srgb,var(--svc) 55%,transparent),transparent 70%),
    radial-gradient(120% 70% at 50% -10%,rgba(150,220,255,.28),transparent 55%)}
/* raios de luz vindos da superfície */
.op-bicho .ob-rays{position:absolute;inset:-20% -10% 0;z-index:0;pointer-events:none;opacity:.55;mix-blend-mode:screen;
  background:repeating-linear-gradient(104deg,transparent 0 70px,rgba(170,230,255,.10) 70px 78px,transparent 78px 170px),
    repeating-linear-gradient(96deg,transparent 0 120px,rgba(170,230,255,.07) 120px 132px,transparent 132px 260px);
  mask-image:linear-gradient(180deg,#000 0%,transparent 70%);-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 70%);animation:obRays 22s linear infinite}
@keyframes obRays{to{background-position:340px 0,-520px 0}}
.op-bicho .ob-stage{position:absolute;inset:0;z-index:1}
.op-bicho .ob-canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity 1.4s ease}
.op-bicho.ob-ready .ob-canvas{opacity:1}
.op-bicho .ob-wrap{position:relative;z-index:2;height:100%;max-width:1320px;margin:0 auto;padding:0 clamp(18px,4vw,56px);pointer-events:none}
/* abertura */
.op-bicho .ob-head{position:absolute;left:clamp(18px,4vw,56px);right:clamp(18px,4vw,56px);top:50%;transform:translateY(-50%);max-width:760px;transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1),filter .7s}
.op-bicho .ob-head.off{opacity:0;transform:translateY(-62%);filter:blur(6px)}
.op-bicho .ob-tag{display:inline-flex;align-items:center;gap:12px;font:500 12px/1 'Bricolage Grotesque',system-ui,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:rgba(234,246,255,.75)}
.op-bicho .ob-tag:before{content:'';width:34px;height:1px;background:#F3E91E}
.op-bicho h1,.op-bicho h2{font-family:'Unbounded',system-ui,sans-serif;font-weight:700;font-size:clamp(36px,6vw,92px);line-height:.98;letter-spacing:-.045em;margin:20px 0 0;color:#EAF6FF;text-transform:none;text-shadow:0 10px 40px rgba(2,11,28,.5)}
.op-bicho h1 em,.op-bicho h2 em{font-style:normal;color:#F3E91E!important;background:none!important;padding:0!important}
.op-bicho .ob-sub{margin-top:22px;color:rgba(234,246,255,.8);font:400 clamp(17px,1.4vw,21px)/1.55 'Bricolage Grotesque',system-ui,sans-serif;max-width:560px}
.op-bicho .ob-scrollcue{margin-top:34px;display:inline-flex;align-items:center;gap:12px;font:500 13px/1 'Bricolage Grotesque',system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(234,246,255,.7)}
.op-bicho .ob-scrollcue i{width:24px;height:38px;border:1.5px solid rgba(234,246,255,.55);border-radius:14px;position:relative}
.op-bicho .ob-scrollcue i:after{content:'';position:absolute;left:50%;top:7px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:#F3E91E;animation:obCue 1.8s ease-in-out infinite}
@keyframes obCue{0%{transform:translateY(0);opacity:1}70%{transform:translateY(12px);opacity:0}100%{opacity:0}}
/* capítulos: bolha de vidro grande */
.op-bicho .ob-chap{position:absolute;top:50%;width:min(470px,44vw);padding:34px 34px 30px;border-radius:38px;pointer-events:auto;
  background:radial-gradient(130% 100% at 15% 0%,rgba(255,255,255,.26),rgba(255,255,255,.05) 40%,rgba(255,255,255,.02) 75%),rgba(6,26,58,.30);
  border:1px solid rgba(220,245,255,.30);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -30px 60px rgba(28,163,224,.14),0 40px 90px -40px rgba(0,0,0,.7);
  opacity:0;transform:translateY(-40%) scale(.92);filter:blur(10px);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1),filter .7s}
.op-bicho .ob-chap:after{content:'';position:absolute;top:14px;right:24px;width:58px;height:20px;border-radius:50%;background:rgba(255,255,255,.4);filter:blur(4px);transform:rotate(-16deg)}
.op-bicho .ob-chap.on{opacity:1;transform:translateY(-50%) scale(1);filter:none}
.op-bicho .ob-chap.l{left:clamp(18px,4vw,56px)}
.op-bicho .ob-chap.r{right:clamp(18px,4vw,56px)}
.op-bicho .ob-chap .n{font:700 64px/1 'Unbounded',system-ui,sans-serif;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px rgba(243,233,30,.85)}
.op-bicho .ob-chap h3{font:700 clamp(22px,2.1vw,30px)/1.1 'Unbounded',system-ui,sans-serif;letter-spacing:-.03em;margin:16px 0 0;color:#fff}
.op-bicho .ob-chap p{margin:12px 0 0;font:400 16.5px/1.6 'Bricolage Grotesque',system-ui,sans-serif;color:rgba(234,246,255,.82)}
.op-bicho .ob-chap ul{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.op-bicho .ob-chap li{font:600 13px/1 'Bricolage Grotesque',system-ui,sans-serif;padding:9px 13px;border-radius:999px;background:rgba(243,233,30,.12);border:1px solid rgba(243,233,30,.35);color:#fff6a6}
.op-bicho .ob-chap .stat{display:flex;gap:22px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(234,246,255,.14)}
.op-bicho .ob-chap .stat b{display:block;font:700 30px/1 'Unbounded',system-ui,sans-serif;letter-spacing:-.04em;color:#F3E91E}
.op-bicho .ob-chap .stat small{display:block;margin-top:6px;font:400 13px/1.3 'Bricolage Grotesque',system-ui,sans-serif;color:rgba(234,246,255,.7)}
/* indicador lateral */
.op-bicho .ob-dots{position:absolute;right:clamp(10px,1.6vw,26px);top:50%;transform:translateY(-50%);display:grid;gap:10px;z-index:3}
.op-bicho .ob-dots i{width:8px;height:8px;border-radius:50%;background:rgba(234,246,255,.3);transition:.4s}
.op-bicho .ob-dots i.on{background:#F3E91E;height:26px;border-radius:6px;box-shadow:0 0 14px rgba(243,233,30,.6)}
.op-bicho .ob-credit{position:absolute;right:clamp(18px,4vw,56px);bottom:16px;z-index:3;font:400 9px/1.4 'Bricolage Grotesque',system-ui,sans-serif;color:rgba(234,246,255,.18);pointer-events:auto}
.op-bicho .ob-credit a{color:inherit}
@media (max-width:900px){
  .op-bicho{height:440vh}
  .op-bicho .ob-head{top:auto;bottom:9vh;transform:none}
  .op-bicho .ob-head.off{transform:translateY(-20px)}
  .op-bicho .ob-chap,.op-bicho .ob-chap.l,.op-bicho .ob-chap.r{left:14px;right:14px;width:auto;top:auto;bottom:max(18px,4vh);padding:24px 22px;border-radius:30px;transform:translateY(30px) scale(.95)}
  .op-bicho .ob-chap.on{transform:none}
  .op-bicho .ob-chap .n{font-size:44px}
  .op-bicho .ob-chap p{font-size:15px}
  .op-bicho .ob-dots{top:90px;transform:none;right:12px}
}
@media (prefers-reduced-motion:reduce) and (max-width:1px){.op-bicho .ob-rays,.op-bicho .ob-scrollcue i:after{animation:none}}

/* topo: botões de ação */
.op-bicho .ob-head{pointer-events:auto}
.op-bicho .ob-head.off{pointer-events:none}
.op-bicho .ob-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.op-bicho .ob-btn{display:inline-flex;align-items:center;gap:14px;padding:15px 16px 15px 26px;border-radius:999px;background:#F3E91E;color:#020b1c;font:600 16px/1 'Bricolage Grotesque',system-ui,sans-serif;text-decoration:none;box-shadow:0 14px 34px -12px rgba(243,233,30,.5);transition:transform .3s}
.op-bicho .ob-btn span{width:30px;height:30px;border-radius:50%;background:#020b1c;color:#F3E91E;display:grid;place-items:center}
.op-bicho .ob-btn.ghost{background:rgba(255,255,255,.08);color:#EAF6FF;border:1px solid rgba(234,246,255,.3);box-shadow:none;backdrop-filter:blur(10px)}
.op-bicho .ob-btn.ghost span{background:#EAF6FF;color:#020b1c}
.op-bicho .ob-btn:hover{transform:translateY(-2px)}
.op-bicho .ob-head .ob-scrollcue{margin-top:28px}
/* bioluminescência: brilho em volta do bicho que acende e apaga */
.op-bicho[data-glow="1"] .ob-canvas{filter:drop-shadow(0 0 calc(var(--glow,0) * 34px) rgba(120,240,255,calc(var(--glow,0) * .85)))}
/* ── camada de redes sociais (Mídias Sociais) ── */
.op-bicho .ob-emoji{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.op-bicho .ob-emoji span{position:absolute;bottom:-60px;font-size:var(--s,30px);filter:drop-shadow(0 8px 16px rgba(0,0,0,.35));animation:obEmoji var(--d,9s) linear infinite;animation-delay:var(--dl,0s);opacity:0}
@keyframes obEmoji{0%{transform:translate3d(0,0,0) rotate(-8deg) scale(.7);opacity:0}10%{opacity:.95}50%{transform:translate3d(var(--dx,30px),-55vh,0) rotate(8deg) scale(1)}90%{opacity:.9}100%{transform:translate3d(calc(var(--dx,30px) * -.5),-112vh,0) rotate(-6deg) scale(1.05);opacity:0}}
.op-bicho .ob-notifs{position:absolute;top:96px;right:clamp(18px,4vw,56px);z-index:3;display:grid;gap:10px;width:min(330px,80vw);pointer-events:none}
.op-bicho .ob-notif{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:20px;color:#fff;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);
  box-shadow:0 18px 40px -20px rgba(0,0,0,.6);font:500 14px/1.3 'Bricolage Grotesque',system-ui,sans-serif;
  opacity:0;transform:translateX(30px) scale(.96);animation:obNotif 12s ease infinite;animation-delay:var(--dl,0s)}
.op-bicho .ob-notif .av{flex:0 0 38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:18px;background:linear-gradient(45deg,#fff6a6,#f3e91e,#1ca3e0,#123a6b,#1d3f7a);box-shadow:0 0 0 2px rgba(255,255,255,.85) inset}
.op-bicho .ob-notif b{font-weight:700}
.op-bicho .ob-notif small{display:block;color:rgba(255,255,255,.65);font-size:12px;margin-top:2px}
@keyframes obNotif{0%{opacity:0;transform:translateX(30px) scale(.96)}4%,22%{opacity:1;transform:none}27%,100%{opacity:0;transform:translateX(-10px) scale(.98)}}
@media (max-width:900px){.op-bicho .ob-notifs{top:78px;right:12px;width:min(270px,72vw)}.op-bicho .ob-notif{font-size:12.5px;padding:9px 11px}.op-bicho .ob-notif .av{flex-basis:30px;height:30px;font-size:15px}}
/* ── seção "feed" com celular e Instagram ── */
.op-feed{position:relative;overflow:hidden;color:#071a3d;padding:clamp(80px,13vh,140px) 0;
  background:radial-gradient(60% 60% at 85% 20%,rgba(28,163,224,.10),transparent 60%),radial-gradient(60% 60% at 10% 90%,rgba(79,91,213,.12),transparent 60%),linear-gradient(180deg,#f7f9fc,#eef3f8)}
.op-feed .wrap{max-width:1240px;margin:0 auto;padding:0 clamp(18px,4vw,56px);display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,6vw,90px);align-items:center}
.op-feed .tag{display:inline-flex;align-items:center;gap:12px;font:500 12px/1 'Bricolage Grotesque',system-ui,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:rgba(7,26,61,.6)}
.op-feed .tag:before{content:'';width:30px;height:1px;background:#1ca3e0}
.op-feed h2{font:700 clamp(30px,4.2vw,58px)/1.02 'Unbounded',system-ui,sans-serif;letter-spacing:-.04em;margin:18px 0 0;color:#071a3d;text-transform:none}
.op-feed h2 em{font-style:normal;background:linear-gradient(90deg,#f3e91e,#1ca3e0,#123a6b);-webkit-background-clip:text;background-clip:text;color:transparent}
.op-feed p.sub{margin-top:18px;font:400 clamp(16px,1.3vw,19px)/1.6 'Bricolage Grotesque',system-ui,sans-serif;color:rgba(7,26,61,.7);max-width:540px}
.op-feed .kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px;max-width:560px}
.op-feed .kpi{background:#fff;border:1px solid rgba(7,26,61,.08);border-radius:22px;padding:18px 18px 16px;box-shadow:0 20px 40px -28px rgba(7,26,61,.35)}
.op-feed .kpi b{display:block;font:700 26px/1 'Unbounded',system-ui,sans-serif;letter-spacing:-.04em;color:#071a3d}
.op-feed .kpi small{display:block;margin-top:8px;font:500 13px/1.3 'Bricolage Grotesque',system-ui,sans-serif;color:rgba(7,26,61,.6)}
.op-feed .kpi i{font-style:normal;color:#1ca3e0;font-size:12px;font-weight:700}
.op-feed .reactions{display:flex;gap:10px;margin-top:22px;font-size:26px}
.op-feed .reactions span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 12px 26px -14px rgba(7,26,61,.4);animation:obPop 3.6s ease-in-out infinite;animation-delay:var(--dl,0s)}
@keyframes obPop{0%,70%,100%{transform:none}78%{transform:translateY(-8px) scale(1.15)}86%{transform:translateY(0) scale(.96)}}
/* celular */
.op-feed .phone{position:relative;justify-self:center;width:min(340px,82vw);aspect-ratio:9/19;border-radius:46px;padding:12px;background:#0b0f1a;box-shadow:0 60px 120px -50px rgba(7,26,61,.7),inset 0 0 0 2px #2a2f3d;transform:rotate(-4deg)}
.op-feed .screen{position:relative;height:100%;border-radius:36px;overflow:hidden;background:#fff;font-family:'Bricolage Grotesque',system-ui,sans-serif;color:#111}
.op-feed .notch{position:absolute;top:8px;left:50%;width:96px;height:26px;margin-left:-48px;border-radius:20px;background:#0b0f1a;z-index:3}
.op-feed .ig-top{display:flex;align-items:center;justify-content:space-between;padding:44px 14px 8px;font-weight:700;font-size:15px}
.op-feed .ig-top span{font-size:18px;letter-spacing:4px}
.op-feed .stories{display:flex;gap:10px;padding:6px 12px 10px;overflow:hidden}
.op-feed .stories div{flex:0 0 52px;text-align:center;font-size:9.5px;color:#444}
.op-feed .stories i{display:block;width:52px;height:52px;border-radius:50%;padding:2.5px;background:linear-gradient(45deg,#fff6a6,#f3e91e,#1ca3e0,#123a6b,#1d3f7a);margin-bottom:4px}
.op-feed .stories i b{display:block;width:100%;height:100%;border-radius:50%;border:2.5px solid #fff;background-size:cover;background-position:center}
.op-feed .post-h{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12.5px;font-weight:700}
.op-feed .post-h i{width:28px;height:28px;border-radius:50%;background:url('assets/onda.png') center/70% no-repeat,#071a3d}
.op-feed .post-h small{display:block;font-weight:400;color:#777;font-size:10.5px}
.op-feed .post-img{position:relative;aspect-ratio:1;background-size:cover;background-position:center}
.op-feed .post-img .heart{position:absolute;left:50%;top:50%;font-size:84px;transform:translate(-50%,-50%) scale(0);animation:obHeart 4.2s ease infinite;filter:drop-shadow(0 6px 18px rgba(0,0,0,.35))}
@keyframes obHeart{0%,40%{transform:translate(-50%,-50%) scale(0);opacity:0}48%{transform:translate(-50%,-50%) scale(1.2);opacity:1}56%{transform:translate(-50%,-50%) scale(.95)}70%{transform:translate(-50%,-50%) scale(1);opacity:1}82%,100%{transform:translate(-50%,-50%) scale(1.1);opacity:0}}
.op-feed .post-a{display:flex;gap:14px;padding:9px 12px 2px;font-size:20px}
.op-feed .post-a .lk{animation:obLike 4.2s ease infinite}
@keyframes obLike{0%,44%{filter:grayscale(1) brightness(1.4)}50%,100%{filter:none}}
.op-feed .post-c{padding:2px 12px 10px;font-size:12px;line-height:1.4}
.op-feed .post-c b{font-weight:700}
.op-feed .float{position:absolute;z-index:4;background:#fff;border-radius:18px;padding:10px 14px;font:600 13px/1.25 'Bricolage Grotesque',system-ui,sans-serif;color:#071a3d;box-shadow:0 24px 50px -24px rgba(7,26,61,.55);display:flex;align-items:center;gap:10px;white-space:nowrap;animation:obBob 5s ease-in-out infinite}
.op-feed .float em{font-style:normal;font-size:20px}
.op-feed .float small{display:block;font-weight:500;color:rgba(7,26,61,.55);font-size:11px}
.op-feed .float.f1{left:-28%;top:18%}.op-feed .float.f2{right:-24%;top:46%;animation-delay:-1.6s}.op-feed .float.f3{left:-18%;bottom:12%;animation-delay:-3s}
@keyframes obBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:900px){.op-feed .wrap{grid-template-columns:1fr}.op-feed .float.f1{left:-6%}.op-feed .float.f2{right:-6%}.op-feed .float.f3{left:-4%}.op-feed .kpis{grid-template-columns:1fr 1fr 1fr}}
@media (prefers-reduced-motion:reduce) and (max-width:1px){.op-bicho .ob-emoji span,.op-bicho .ob-notif,.op-feed *{animation:none!important;opacity:1}}
/* H1 com a palavra-chave do serviço (SEO) + frase de efeito logo abaixo */
.op-bicho h1{font-size:clamp(40px,6.4vw,98px)}
.op-bicho .ob-lead{margin:18px 0 0;font:600 clamp(19px,2vw,28px)/1.25 'Unbounded',system-ui,sans-serif;letter-spacing:-.025em;color:#EAF6FF;max-width:640px}
.op-bicho .ob-lead em{font-style:normal;color:#F3E91E}
.op-bicho .ob-head .ob-sub{margin-top:14px}
@media (max-width:900px){.op-bicho h1{font-size:clamp(34px,10vw,52px)}.op-bicho .ob-lead{font-size:18px}.op-bicho .ob-head .ob-sub{display:none}}
#overlay-whale-canvas{display:none!important}  /* o bicho 3D da página já é o destaque */

/* ícones de serviço flutuando em bolhas de vidro em volta do bicho */
.op-bicho .ob-icons{position:absolute;inset:0;z-index:1;pointer-events:none}
.op-bicho .ob-icons .ic{position:absolute;display:flex;align-items:center;gap:10px;padding:14px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(234,246,255,.18);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 20px 50px -24px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.15);animation:obIc var(--d,7s) ease-in-out infinite;animation-delay:var(--dl,0s);transform:translate(-50%,-50%)}
.op-bicho .ob-icons svg{width:30px;height:30px;fill:none;stroke:#F3E91E;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(243,233,30,.35))}
.op-bicho .ob-icons em{font:600 12.5px/1 'Bricolage Grotesque',system-ui,sans-serif;font-style:normal;color:#EAF6FF;white-space:nowrap;padding-right:4px}
@keyframes obIc{0%,100%{transform:translate(-50%,-50%) translateY(0) rotate(-2deg)}50%{transform:translate(-50%,-50%) translateY(-16px) rotate(2deg)}}
.op-bicho .ob-head:not(.off)~* .ic{opacity:1}
/* Sites Premium: janelas de navegador com sites reais */
.op-bicho .ob-sites{position:absolute;inset:0;z-index:1;pointer-events:none}
.op-bicho .ob-sites .bw{position:absolute;width:clamp(200px,20vw,330px);border-radius:14px;overflow:hidden;background:#0b1430;border:1px solid rgba(234,246,255,.18);box-shadow:0 40px 80px -30px rgba(0,0,0,.75);animation:obBw 9s ease-in-out infinite}
.op-bicho .ob-sites .bt{display:flex;align-items:center;gap:5px;padding:8px 10px;background:rgba(255,255,255,.06);font:500 10.5px/1 'Bricolage Grotesque',system-ui,sans-serif;color:rgba(234,246,255,.6)}
.op-bicho .ob-sites .bt i{width:7px;height:7px;border-radius:50%;background:#cfd8e3}.op-bicho .ob-sites .bt i:nth-child(2){background:#cfd8e3}.op-bicho .ob-sites .bt i:nth-child(3){background:#cfd8e3}
.op-bicho .ob-sites .bt span{margin-left:8px;padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.08)}
.op-bicho .ob-sites .bs{aspect-ratio:16/10;background-size:cover;background-position:top center;animation:obScroll 14s ease-in-out infinite}
.op-bicho .ob-sites .b1{right:3%;top:58%;transform:rotate(4deg)}.op-bicho .ob-sites .b2{right:24%;top:70%;transform:rotate(-5deg);animation-delay:-3s}.op-bicho .ob-sites .b3{right:6%;top:20%;transform:rotate(-3deg) scale(.8);animation-delay:-6s;opacity:.85}
@keyframes obBw{50%{translate:0 -18px}}
@keyframes obScroll{0%,15%{background-position:top center}55%,70%{background-position:bottom center}}
@media (max-width:900px){.op-bicho .ob-icons .ic{padding:10px;border-radius:16px}.op-bicho .ob-icons svg{width:22px;height:22px}.op-bicho .ob-icons em{display:none}.op-bicho .ob-sites .b3{display:none}.op-bicho .ob-sites .bw{width:150px}}
@media (prefers-reduced-motion:reduce) and (max-width:1px){.op-bicho .ob-icons .ic,.op-bicho .ob-sites .bw,.op-bicho .ob-sites .bs{animation:none}}

/* Mídias Sociais: frame vazado do Instagram no topo — o peixe do topo nada para dentro dele */
.op-bicho .ob-ig{position:absolute;z-index:2;right:clamp(30px,7vw,140px);top:50%;width:clamp(290px,23vw,380px);transform:translateY(-50%);perspective:1000px;transition:opacity .6s,transform .6s}
.op-bicho.ig-off .ob-ig{opacity:0;transform:translateY(-44%);pointer-events:none}
.op-bicho .obi-c{border-radius:26px;border:1.5px solid rgba(234,246,255,.4);background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));box-shadow:0 40px 90px -40px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.25);transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease-out;color:#fff;font-family:'Bricolage Grotesque',system-ui,sans-serif}
.op-bicho .obi-h{display:flex;align-items:center;gap:10px;padding:12px 14px;font-size:14px}
.op-bicho .obi-h .av{width:34px;height:34px;border-radius:50%;padding:2px;background:linear-gradient(45deg,#fff6a6,#f3e91e,#1ca3e0,#123a6b)}
.op-bicho .obi-h .av b{display:block;width:100%;height:100%;border-radius:50%;border:2px solid #04203f;background:url('assets/onda-branco.png') center/62% no-repeat,#0c1428}
.op-bicho .obi-h strong{color:#fff;font-weight:700}.op-bicho .obi-h strong:after{content:' ✓';color:#3897f0;font-size:11px}
.op-bicho .obi-h small{display:block;color:rgba(234,246,255,.6);font-size:11px}
.op-bicho .obi-h a{margin-left:auto;padding:7px 13px;border-radius:10px;background:#0095f6;color:#fff;text-decoration:none;font-weight:700;font-size:12.5px}
.op-bicho .obi-m{position:relative;aspect-ratio:4/5;margin:0 10px;border-radius:16px;border:1.5px dashed rgba(234,246,255,.28);cursor:pointer;user-select:none;-webkit-user-select:none}
.op-bicho .obi-tag{position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:8px;background:rgba(0,0,0,.3);font:700 11px/1 'Bricolage Grotesque',system-ui,sans-serif;letter-spacing:.06em}
.op-bicho .obi-bar{position:absolute;left:12px;right:12px;bottom:12px;height:3px;border-radius:3px;background:rgba(255,255,255,.2);overflow:hidden}
.op-bicho .obi-bar i{display:block;height:100%;background:#fff;animation:obiBar 15s linear infinite;transform-origin:0 50%}
@keyframes obiBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.op-bicho .obi-big{position:absolute;left:50%;top:50%;font-size:96px;transform:translate(-50%,-50%) scale(0);pointer-events:none;filter:drop-shadow(0 10px 30px rgba(0,0,0,.35))}
.op-bicho .obi-big.go{animation:obiBig 1.1s cubic-bezier(.2,1.4,.3,1)}
@keyframes obiBig{25%{transform:translate(-50%,-50%) scale(1.15)}40%{transform:translate(-50%,-50%) scale(.95)}75%{transform:translate(-50%,-50%) scale(1);opacity:1}100%{transform:translate(-50%,-80%) scale(.6);opacity:0}}
.op-bicho .obi-a{display:flex;align-items:center;gap:14px;padding:12px 14px 4px}
.op-bicho .obi-a svg{width:25px;height:25px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.op-bicho .obi-a button{all:unset;cursor:pointer;line-height:0;transition:transform .2s}.op-bicho .obi-a button:active{transform:scale(.85)}
.op-bicho .obi-like.on svg{fill:#f3e91e;stroke:#f3e91e;animation:obiPop .45s cubic-bezier(.2,1.6,.3,1)}
@keyframes obiPop{50%{transform:scale(1.35)}}
.op-bicho .obi-t{padding:4px 14px 16px;font-size:13.5px}.op-bicho .obi-t small{display:block;margin-top:3px;color:rgba(234,246,255,.55);font-size:11.5px}
.op-bicho .obi-fly{position:absolute;bottom:90px;z-index:4;pointer-events:none;animation:obiFly 2.4s cubic-bezier(.2,.7,.3,1) forwards}
@keyframes obiFly{0%{opacity:0;transform:scale(.4)}15%{opacity:1;transform:translateY(-30px) scale(1.1)}100%{opacity:0;transform:translate(var(--dx),-320px) scale(.8)}}
.op-bicho:has(.ob-ig) .ob-notifs{display:none}
.op-bicho:has(.ob-ig) .ob-icons svg{stroke:#7fd6ff;filter:drop-shadow(0 0 8px rgba(127,214,255,.4))}
@media (max-width:900px){.op-bicho .ob-ig{display:none}.op-bicho:has(.ob-ig) .ob-notifs{display:grid}}

.op-bicho .ob-icons .ic{pointer-events:auto;cursor:pointer;transition:background .3s,border-color .3s}
.op-bicho .ob-icons .ic:hover{background:rgba(255,255,255,.14);border-color:rgba(243,233,30,.5)}
.op-bicho .ob-icons .ic.pop svg{animation:icPop .7s cubic-bezier(.2,1.6,.3,1)}
.op-bicho .ob-icons .ic.pop{border-color:#F3E91E;box-shadow:0 0 0 6px rgba(243,233,30,.15),0 20px 50px -24px rgba(0,0,0,.6)}
@keyframes icPop{0%{transform:scale(1)}35%{transform:scale(1.6) rotate(-14deg)}70%{transform:scale(.9) rotate(8deg)}100%{transform:scale(1)}}
.op-bicho .ob-icons .ic-sp{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#F3E91E;pointer-events:none;animation:icSp .8s ease-out forwards}
@keyframes icSp{to{transform:translate(var(--tx),var(--ty)) scale(0);opacity:0}}

/* mini-ilustrações animadas nos cards dos capítulos */
.obm{position:absolute;right:26px;top:24px;width:150px;height:74px;pointer-events:none;color:#fff;font-family:'Bricolage Grotesque',system-ui,sans-serif}
.obm *{box-sizing:border-box}
.m-br{border-radius:10px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.05);overflow:hidden}
.m-br .bb{display:flex;gap:3px;padding:5px 6px;border-bottom:1px solid rgba(255,255,255,.12)}.m-br .bb i{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.45)}
.m-br .blk{position:absolute;border-radius:5px;animation:mBlk 4s cubic-bezier(.2,.8,.2,1) infinite}
.m-br .a{left:8px;top:22px;width:70px;height:20px;background:#F3E91E}.m-br .b{left:8px;top:48px;width:44px;height:16px;background:#1CA3E0;animation-delay:.3s}.m-br .c{right:8px;top:22px;width:56px;height:42px;background:rgba(255,255,255,.3);animation-delay:.6s}
@keyframes mBlk{0%{opacity:0;transform:translateY(10px)}20%,80%{opacity:1;transform:none}100%{opacity:0}}
.m-gauge svg{width:100px;height:60px}.m-gauge .tk,.m-gauge .vl{fill:none;stroke-width:8;stroke-linecap:round}.m-gauge .tk{stroke:rgba(255,255,255,.15)}
.m-gauge .vl{stroke:#1ca3e0;stroke-dasharray:126;stroke-dashoffset:126;animation:mG 3s ease-out infinite}
.m-gauge .nd{stroke:#fff;stroke-width:3;stroke-linecap:round;transform-origin:50px 55px;animation:mN 3s ease-out infinite}
@keyframes mG{60%,100%{stroke-dashoffset:6}}@keyframes mN{0%{transform:rotate(-90deg)}60%,100%{transform:rotate(84deg)}}
.m-gauge .pill{position:absolute;right:0;top:4px;padding:5px 8px;border-radius:8px;background:#fff;color:#0c1428;font-weight:700;font-size:10.5px}
.m-cta .btn{position:absolute;left:0;top:26px;padding:9px 12px;border-radius:10px;background:#F3E91E;color:#0c1428;font-weight:700;font-size:11.5px;animation:mBtn 3s infinite}
.m-cta .cur{position:absolute;width:20px;height:20px;fill:#fff;stroke:#0c1428;stroke-width:1.5;animation:mCur 3s infinite}
.m-cta .pop{position:absolute;right:0;top:0;padding:5px 9px;border-radius:99px;background:#1ca3e0;color:#fff;font-weight:700;font-size:11px;opacity:0;animation:mPop 3s infinite}
@keyframes mCur{0%{left:130px;top:60px}45%,60%{left:60px;top:36px}100%{left:130px;top:60px}}
@keyframes mBtn{50%{transform:scale(.94)}55%{transform:scale(1)}}
@keyframes mPop{0%,50%{opacity:0;transform:translateY(8px)}60%,85%{opacity:1;transform:none}100%{opacity:0}}
.m-tog .sw{position:absolute;left:0;top:8px;width:54px;height:30px;border-radius:99px;background:rgba(255,255,255,.2);animation:mSwB 3s infinite}
.m-tog .sw i{position:absolute;left:4px;top:4px;width:22px;height:22px;border-radius:50%;background:#fff;animation:mSw 3s infinite}
@keyframes mSw{40%,90%{transform:translateX(24px)}}@keyframes mSwB{40%,90%{background:#1ca3e0}}
.m-tog .ln{position:absolute;left:0;top:50px;width:140px;height:10px;border-radius:5px;background:rgba(255,255,255,.15)}
.m-tog .ln i{position:absolute;left:0;top:0;height:100%;border-radius:5px;background:#F3E91E;animation:mTy 3s steps(10) infinite}
.m-tog .ln b{position:absolute;top:-8px;font-size:16px;animation:mPen 3s steps(10) infinite}
@keyframes mTy{from{width:0}to{width:100%}}@keyframes mPen{from{left:0}to{left:100%}}
.m-tgt .t{position:absolute;right:20px;top:4px;width:66px;height:66px}.m-tgt .t i{position:absolute;inset:0;border-radius:50%;border:3px solid #F3E91E}.m-tgt .t i:nth-child(2){inset:13px;border-color:#fff}.m-tgt .t i:nth-child(3){inset:26px;background:#1ca3e0;border:0}
.m-tgt .ar{position:absolute;left:0;top:20px;font-size:30px;animation:mAr 2.4s cubic-bezier(.6,0,.4,1) infinite}
@keyframes mAr{0%{transform:translateX(-10px);opacity:0}20%{opacity:1}55%,85%{transform:translateX(52px)}100%{opacity:0;transform:translateX(52px)}}
.m-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;width:150px;height:auto}
.m-cal i{aspect-ratio:1;border-radius:5px;background:rgba(255,255,255,.12);animation:mCal 5.6s infinite;animation-delay:calc(var(--k) * .3s)}
@keyframes mCal{0%,100%{background:rgba(255,255,255,.12)}15%,70%{background:#F3E91E}}
.m-posts span{position:absolute;top:4px;width:56px;height:66px;border-radius:9px;animation:mPs 4.5s ease-in-out infinite}
.m-posts span:nth-child(1){left:0;background:linear-gradient(160deg,#1ca3e0,#123a6b)}.m-posts span:nth-child(2){left:46px;background:linear-gradient(160deg,#1CA3E0,#0c1428);animation-delay:.3s}.m-posts span:nth-child(3){left:92px;background:linear-gradient(160deg,#F3E91E,#f3e91e);animation-delay:.6s}
.m-posts b{position:absolute;left:62px;top:24px;width:26px;height:26px;border-radius:50%;background:#fff;color:#0c1428;display:grid;place-items:center;font-size:10px}
@keyframes mPs{50%{transform:translateY(-6px) rotate(-3deg)}}
.m-bars{display:flex;align-items:flex-end;gap:6px}
.m-bars i{width:20px;height:var(--h);border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#1ca3e0,rgba(28,163,224,.25));transform-origin:bottom;animation:mBar 2.6s ease-in-out infinite alternate}
.m-bars i:nth-child(2){animation-delay:.1s}.m-bars i:nth-child(3){animation-delay:.2s}.m-bars i:nth-child(4){animation-delay:.3s}.m-bars i:nth-child(5){animation-delay:.4s}
.m-bars em{position:absolute;right:0;top:0;font-style:normal;font-size:22px;color:#1ca3e0}
@keyframes mBar{from{transform:scaleY(.3)}}
.m-scan svg{width:150px;height:62px}.m-scan .ln{fill:none;stroke:#F3E91E;stroke-width:2.5;stroke-linejoin:round}
.m-scan .lens{position:absolute;top:10px;font-size:26px;animation:mLens 3.5s ease-in-out infinite alternate}
@keyframes mLens{from{left:0}to{left:110px}}
.m-ads{display:flex;align-items:center;gap:8px}.m-ads .g,.m-ads .mt{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-weight:800;font-size:20px}
.m-ads .g{background:#fff;color:#4285F4}.m-ads .mt{background:#0866ff;color:#fff}
.m-ads .flow{position:relative;flex:1;height:40px}.m-ads .flow i{position:absolute;top:16px;left:0;width:8px;height:8px;border-radius:50%;background:#F3E91E;animation:mFl 1.8s linear infinite}
.m-ads .flow i:nth-child(2){animation-delay:.6s}.m-ads .flow i:nth-child(3){animation-delay:1.2s}
@keyframes mFl{from{left:0;opacity:0}20%{opacity:1}to{left:calc(100% - 8px);opacity:0}}
.m-fun svg{position:absolute;left:30px;top:6px;width:66px;height:56px;fill:rgba(255,255,255,.08);stroke:#fff;stroke-width:2;stroke-linejoin:round}
.m-fun i{position:absolute;top:0;width:7px;height:7px;border-radius:50%;background:#F3E91E;animation:mFd 2.4s ease-in infinite}
.m-fun i:nth-of-type(1){left:44px}.m-fun i:nth-of-type(2){left:62px;animation-delay:.8s}.m-fun i:nth-of-type(3){left:76px;animation-delay:1.6s}
@keyframes mFd{0%{transform:translate(0,0);opacity:0}15%{opacity:1}80%{transform:translate(calc(63px - 100%),50px);opacity:1}100%{opacity:0}}
.m-fun .wa{position:absolute;right:6px;top:22px;font-size:26px;animation:mPop2 2.4s infinite}
@keyframes mPop2{0%,70%{transform:scale(.8)}80%{transform:scale(1.25)}100%{transform:scale(1)}}
.m-pie{display:flex;align-items:center;gap:12px}.m-pie .pie{width:58px;height:58px;border-radius:50%;background:conic-gradient(#F3E91E 0 42%,#1CA3E0 0 72%,#1ca3e0 0);animation:mSpin 6s linear infinite}
.m-pie .rows{display:grid;gap:7px;flex:1}.m-pie .rows i{height:9px;border-radius:5px;background:rgba(255,255,255,.18);overflow:hidden;position:relative}
.m-pie .rows i:after{content:'';position:absolute;inset:0;background:#fff;transform-origin:0;animation:mRow 3s ease-in-out infinite alternate}
.m-pie .rows i:nth-child(2):after{animation-delay:.4s}.m-pie .rows i:nth-child(3):after{animation-delay:.8s}
@keyframes mSpin{to{transform:rotate(360deg)}}@keyframes mRow{from{transform:scaleX(.2)}to{transform:scaleX(.9)}}
.m-ask .bub{position:absolute;left:0;top:8px;padding:9px 12px;border-radius:14px 14px 14px 3px;background:#fff;color:#0c1428;font-weight:600;font-size:11.5px;white-space:nowrap;animation:mBub 3.4s infinite}
.m-ask .plus{position:absolute;right:4px;bottom:0;width:30px;height:30px;border-radius:50%;background:#F3E91E;color:#0c1428;display:grid;place-items:center;font-weight:800;font-size:20px;animation:mSpin 3.4s cubic-bezier(.6,0,.3,1) infinite}
@keyframes mBub{0%{opacity:0;transform:translateY(8px) scale(.9)}15%,85%{opacity:1;transform:none}100%{opacity:0}}
.m-clock{display:flex;align-items:center;gap:12px}.m-clock .fc{position:relative;width:60px;height:60px;border-radius:50%;border:3px solid #fff}
.m-clock .fc i{position:absolute;left:50%;top:50%;width:3px;height:22px;margin-left:-1.5px;background:#F3E91E;border-radius:2px;transform-origin:50% 0;animation:mSpin 2s linear infinite}
.m-clock b{font:800 24px/1 'Unbounded',system-ui,sans-serif;color:#F3E91E}
.m-rev{display:flex;align-items:center;gap:12px}.m-rev .rot{font-size:40px;line-height:1;animation:mSpin 2.4s linear infinite;display:inline-block}
.m-rev .v{position:relative;width:46px;height:30px}.m-rev .v i{position:absolute;inset:0;display:grid;place-items:center;border-radius:9px;background:#fff;color:#0c1428;font-style:normal;font-weight:800;font-size:13px;opacity:0;animation:mV 4.8s infinite}
.m-rev .v i:nth-child(2){animation-delay:1.2s}.m-rev .v i:nth-child(3){animation-delay:2.4s}.m-rev .v i:nth-child(4){animation-delay:3.6s;background:#1ca3e0;color:#fff}
@keyframes mV{0%{opacity:0;transform:translateY(8px)}5%,22%{opacity:1;transform:none}27%,100%{opacity:0}}
.m-team{display:flex;align-items:center}.m-team span{width:42px;height:42px;margin-right:-10px;border-radius:50%;background:#fff;border:2px solid #1d3f7a;display:grid;place-items:center;font-size:20px;animation:mPs 3s ease-in-out infinite}
.m-team span:nth-child(2){animation-delay:.3s}.m-team span:nth-child(3){animation-delay:.6s}
.m-team em{position:absolute;left:0;bottom:2px;font-style:normal;color:#F3E91E;letter-spacing:2px;font-size:13px}
@media (max-width:900px){.obm{transform:scale(.75);transform-origin:top right;right:14px;top:14px}}
@media (prefers-reduced-motion:reduce) and (max-width:1px){.obm *{animation:none!important}}

/* descendentes (g, j, p, q, y) nunca cortados em títulos de várias linhas */
h1 .word,h2 .word,h3 .word{padding-bottom:.1em;margin-bottom:-.1em}
h1 em,h2 em,h3 em{-webkit-box-decoration-break:clone;box-decoration-break:clone}
[style*='background-clip'] ,.op-feed h2 em,.igx h2 em{padding-bottom:.14em}
/* desempenho: sobre o 3D animado o desfoque de fundo (backdrop-filter) era refeito a cada quadro em todos os vidros.
   Vidro escuro sólido, sem desfoque — mesma leitura, muito mais leve */
.op-bicho .ob-chap{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  background:radial-gradient(130% 100% at 15% 0%,rgba(255,255,255,.20),rgba(255,255,255,.05) 40%,rgba(255,255,255,.02) 75%),rgba(6,24,54,.78)!important}
.op-bicho .ob-chap:not(.on){filter:none!important;visibility:hidden;transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1),visibility 0s .7s}
.op-bicho .ob-chap.on{visibility:visible;transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1),visibility 0s}
.op-bicho .ob-notif,.op-bicho .ob-icons .ic,.op-bicho .ob-btn.ghost,.op-bicho .ob-sites *,.op-bicho .ob-ig *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.op-bicho .ob-notif{background:rgba(8,28,60,.78)!important}
.op-bicho .ob-icons .ic{background:rgba(10,32,66,.62)!important}
.op-bicho .ob-btn.ghost{background:rgba(8,28,60,.6)!important}
.op-bicho .opf{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:linear-gradient(170deg,rgba(18,58,107,.9),rgba(4,17,43,.94))!important}
