/* Base comum dos templates Fluxo Lead (copiada para cada template na publicação). */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,video,canvas{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
h1,h2,h3,h4,p,figure,blockquote,ul,ol{margin:0}
ul,ol{padding:0;list-style:none}
input,textarea,select{font:inherit;color:inherit}
:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* entradas (o JS anima; sem JS o conteudo continua visivel) */
.js [data-reveal]{opacity:0}
.js [data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;padding:.14em 0 .1em;margin:-.14em 0 -.1em}
.js [data-split] .w>span{display:inline-block;transform:translateY(105%)}

/* letreiro infinito */
.marquee{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee__track{display:flex;width:max-content;animation:kit-marquee var(--marquee-speed,32s) linear infinite}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee--reverse .marquee__track{animation-direction:reverse}
@keyframes kit-marquee{to{transform:translateX(-50%)}}

/* acordeao */
.acc details{border-bottom:1px solid var(--line,rgba(127,127,127,.25))}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.35rem 0;font-weight:600}
.acc summary::-webkit-details-marker{display:none}
.acc summary .acc__icon{flex:none;width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;transition:transform .45s cubic-bezier(.2,.7,.2,1),background .3s}
.acc details[open] summary .acc__icon{transform:rotate(135deg)}
.acc .acc__body{overflow:hidden}
.acc .acc__body p{padding:0 0 1.4rem;max-width:62ch;opacity:.75;line-height:1.7}

/* menu mobile */
.kit-drawer{position:fixed;inset:0;z-index:90;pointer-events:none}
.kit-drawer__bg{position:absolute;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);opacity:0;transition:opacity .4s}
.kit-drawer__panel{position:absolute;top:0;right:0;height:100%;width:min(86vw,380px);transform:translateX(100%);transition:transform .55s cubic-bezier(.7,0,.2,1);display:flex;flex-direction:column;padding:1.5rem;gap:.25rem;overflow:auto}
.kit-drawer.is-open{pointer-events:auto}
.kit-drawer.is-open .kit-drawer__bg{opacity:1}
.kit-drawer.is-open .kit-drawer__panel{transform:none}
.kit-drawer__panel a{font-size:1.6rem;padding:.6rem 0}

/* cursor de destaque opcional */
.kit-cursor{position:fixed;left:0;top:0;width:34px;height:34px;border-radius:50%;pointer-events:none;z-index:999;mix-blend-mode:difference;background:#fff;transform:translate(-50%,-50%) scale(.25);transition:transform .25s cubic-bezier(.2,.7,.2,1),opacity .3s;opacity:0}
.kit-cursor.is-on{opacity:1}
.kit-cursor.is-hover{transform:translate(-50%,-50%) scale(1.6)}
@media (hover:none){.kit-cursor{display:none}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .js [data-reveal]{opacity:1}
  .js [data-split] .w>span{transform:none}
}
