/* Techflux v28 — estética cyberpunk premium + bento grid. Gated por body.techflux-on (JS remove com reduced-motion / "Pausar efeitos"). */
@property --tf-angle{syntax:"<angle>";initial-value:0deg;inherits:false}
body.techflux-on{--tf-accent:#5ef2ff;--tf-champagne:#d8c39a}

/* grade técnica sutil com distorção que segue o mouse */
body.techflux-on .moment,body.techflux-on .companies,body.techflux-on .faq,body.techflux-on .booking{background-image:linear-gradient(rgba(216,195,154,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(216,195,154,.045) 1px,transparent 1px);background-size:72px 72px;background-position:calc(var(--mx,0)*12px) calc(var(--my,0)*12px)}

/* grain discreto animado */
body.techflux-on::after{content:"";position:fixed;inset:-60px;z-index:2000;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");animation:tf-grain 1.2s steps(3) infinite}
@keyframes tf-grain{0%{transform:translate(0,0)}33%{transform:translate(-18px,10px)}66%{transform:translate(12px,-14px)}100%{transform:translate(0,0)}}

/* foco visível em ciano */
body.techflux-on button:focus-visible,body.techflux-on a:focus-visible,body.techflux-on input:focus-visible,body.techflux-on summary:focus-visible{outline:2px solid var(--tf-accent);outline-offset:4px}

/* glitch elegante só nos eyebrows */
body.techflux-on .eyebrow{transition:text-shadow .15s}
body.techflux-on .eyebrow:hover{text-shadow:1.5px 0 rgba(94,242,255,.75),-1.5px 0 rgba(216,195,154,.75)}

/* scanline sutil em títulos grandes ao entrar na tela */
body.techflux-on .tf-scan{position:relative;overflow:hidden}
body.techflux-on .tf-scan::after{content:"";position:absolute;left:0;right:0;top:-15%;height:24%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(94,242,255,.13),transparent);animation:tf-scan .7s ease-out .1s forwards}
@keyframes tf-scan{to{top:115%}}

/* glassmorphism + borda cônica animada */
body.techflux-on .lift-card,body.techflux-on .company-card,body.techflux-on .tf-data-cell{position:relative;isolation:isolate;background:linear-gradient(160deg,rgba(26,26,29,.72),rgba(13,13,15,.86));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(216,195,154,.16)}
body.techflux-on .lift-card::before,body.techflux-on .company-card::before,body.techflux-on .tf-data-cell::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;background:conic-gradient(from var(--tf-angle),transparent 0%,var(--tf-accent) 14%,transparent 32%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s}
body.techflux-on .lift-card:hover::before,body.techflux-on .company-card:hover::before,body.techflux-on .tf-data-cell:hover::before{opacity:1;animation:tf-spin 6s linear infinite}
@keyframes tf-spin{to{--tf-angle:360deg}}

/* spotlight radial que segue o cursor */
body.techflux-on .lift-card::after,body.techflux-on .company-card::after,body.techflux-on .tf-data-cell::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;transition:opacity .3s;background:radial-gradient(240px circle at var(--sx,50%) var(--sy,50%),rgba(94,242,255,.10),transparent 65%)}
body.techflux-on .lift-card:hover::after,body.techflux-on .company-card:hover::after,body.techflux-on .tf-data-cell:hover::after{opacity:1}

/* células de dado honestas */
.tf-data-cell{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:22px;border-radius:18px;border:1px dashed rgba(216,195,154,.24);background:rgba(18,18,20,.55)}
.tf-data-cell strong{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:clamp(19px,2vw,26px);font-weight:600;color:var(--tf-champagne,#d8c39a);letter-spacing:.03em}
.tf-data-cell span{font-size:12.5px;line-height:1.5;color:#b9b7b1}
body.techflux-on .card-kicker,body.techflux-on .expertise-number,body.techflux-on .chapter-count{font-family:ui-monospace,Menlo,Consolas,monospace}

/* bento #portas (dentro do pin; não toca no transform scroll-driven dos cards) */
@media(min-width:768px){
body.techflux-on .lift-cards{grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(150px,auto);gap:16px}
body.techflux-on .lift-card{min-height:0}
body.techflux-on .lift-card.tf-lead{grid-column:span 4}
body.techflux-on .lift-card:not(.tf-lead){grid-column:span 2}
body.techflux-on .lift-cards .tf-data-cell{grid-column:span 1}
body.techflux-on .lift-cards .tf-data-cell.tf-wide{grid-column:span 2}
}
@media(max-width:767px){
body.techflux-on .lift-cards .tf-data-cell,body.techflux-on .lift-cards .tf-data-cell.tf-wide{grid-column:auto}
}

/* bento #empresas: 3 cards + Supremo Moda + dado */
@media(min-width:768px){
body.techflux-on .company-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
body.techflux-on .company-grid .company-card{grid-column:span 2}
body.techflux-on .company-grid .company-card:nth-child(4){grid-column:span 3}
body.techflux-on .company-grid .tf-data-cell{grid-column:span 3}
}
body.techflux-on .company-card{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease-out,border-color .3s}

/* ícones que animam no hover */
body.techflux-on .lift-art i,body.techflux-on .lift-art b,body.techflux-on .brand-monogram{transition:transform .35s cubic-bezier(.22,.9,.24,1)}
body.techflux-on .lift-card:hover .lift-art i:nth-child(1){transform:translateY(-5px)}
body.techflux-on .lift-card:hover .lift-art i:nth-child(2){transform:translateY(-9px)}
body.techflux-on .lift-card:hover .lift-art i:nth-child(3){transform:translateY(-13px)}
body.techflux-on .lift-card:hover .lift-art b,body.techflux-on .company-card:hover .brand-monogram{transform:translate(4px,-4px)}

/* FAQ: ícone gira + altura animada (JS) */
body.techflux-on .faq-items details summary span{transition:rotate .3s ease}
body.techflux-on .faq-items details[open] summary span{rotate:45deg}
body.techflux-on .faq-items details p{overflow:hidden}

/* barra de leitura com brilho na ponta */
body.techflux-on .reading-progress{background:linear-gradient(90deg,var(--tf-champagne),var(--tf-accent));box-shadow:0 0 12px rgba(94,242,255,.5)}
body.techflux-on .reading-progress::after{content:"";position:absolute;right:-2px;top:50%;width:7px;height:7px;border-radius:50%;background:var(--tf-accent);transform:translateY(-50%);box-shadow:0 0 10px 2px rgba(94,242,255,.75)}

/* arte generativa no card de resposta */
body.techflux-on .moment-answer{position:relative;overflow:hidden}
.tf-genart{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.5;pointer-events:none}
body.techflux-on .moment-answer>*:not(.tf-genart){position:relative;z-index:1}

@media (prefers-reduced-motion:reduce){
body.techflux-on *,body.techflux-on *::before,body.techflux-on *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ---- Instagram ao vivo: bento (layout sempre ativo; animações gated) ---- */
.social-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.instagram-account.is-featured{grid-column:span 2;grid-row:span 2}
.instagram-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.instagram-account.is-featured .instagram-posts{grid-template-columns:repeat(3,1fr);gap:10px}
.instagram-post{position:relative;display:block;overflow:hidden;border-radius:10px;border:1px solid rgba(216,195,154,.14);background:#141416}
.instagram-post img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.instagram-post-copy{display:block;padding:8px 10px}
.instagram-post-copy strong{display:block;font-size:11px;font-weight:400;line-height:1.4;color:#e8e6e0}
.instagram-post-copy small{display:block;font-size:9.5px;color:#8f8d87;margin-top:3px}
.reel-badge{position:absolute;top:6px;left:6px;z-index:2;font-size:8px;letter-spacing:.1em;text-transform:uppercase;background:rgba(10,10,11,.82);color:#5ef2ff;border:1px solid rgba(94,242,255,.4);border-radius:4px;padding:3px 7px}
.profile-pic{width:100%;height:100%;object-fit:cover;border-radius:50%}
.profile-followers{display:block;font-size:9px;color:#8f8d87;margin-top:2px}
.ig-skeleton{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:4px}
.ig-skeleton i{aspect-ratio:1;border-radius:10px;background:linear-gradient(100deg,#17171a 40%,#222226 50%,#17171a 60%);background-size:200% 100%}
body.techflux-on .ig-skeleton i{animation:tf-shimmer 1.4s linear infinite}
@keyframes tf-shimmer{to{background-position:-200% 0}}
body.techflux-on .instagram-post img{transition:transform .4s cubic-bezier(.22,.9,.24,1)}
body.techflux-on .instagram-post:hover img{transform:scale(1.06)}
body.techflux-on .instagram-post:hover{border-color:rgba(94,242,255,.55);box-shadow:0 0 18px rgba(94,242,255,.28)}
@media(max-width:1023px){.social-grid{grid-template-columns:repeat(2,1fr)}.instagram-account.is-featured{grid-column:span 2;grid-row:auto}}
@media(max-width:767px){.social-grid{grid-template-columns:1fr}.instagram-account.is-featured{grid-column:auto}}
