/* IA para empresas (slug ia-para-empresas). Página estática: tudo de 'self', sem estilo inline, sem terceiros. Coluna 80%, fonte clamp(17px,1.3vw,32px), largura total abaixo de 900px. */
@font-face{font-family:Plex;src:url('fonts/plex-sans-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Plex;src:url('fonts/plex-sans-semibold.woff2') format('woff2');font-weight:600 900;font-display:swap}
@font-face{font-family:Mono;src:url('fonts/plex-mono-regular.woff2') format('woff2');font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#080a0e;--bg2:#0e1218;--surface:#141922;--ink:#eef2f7;--muted:#a9b4c3;--line:#2a3340;--accent:#7ee8d6;--on-accent:#04201b;--warm:#ffb454;--focus:#b9f5ea;--glass:rgba(126,232,214,.08)}
@media (prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--bg:#f6f4ef;--bg2:#ecebe4;--surface:#fff;--ink:#101926;--muted:#465366;--line:#cdd3d9;--accent:#0b6b63;--on-accent:#fff;--warm:#9a5200;--focus:#0b6b63;--glass:rgba(11,107,99,.07)}}
:root[data-theme=light]{color-scheme:light;--bg:#f6f4ef;--bg2:#ecebe4;--surface:#fff;--ink:#101926;--muted:#465366;--line:#cdd3d9;--accent:#0b6b63;--on-accent:#fff;--warm:#9a5200;--focus:#0b6b63;--glass:rgba(11,107,99,.07)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Plex,Arial,sans-serif;font-size:clamp(17px,1.3vw,32px);line-height:1.55;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.25em}
button,summary{font:inherit;cursor:pointer;color:inherit}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
[hidden]{display:none!important}
.skip{position:absolute;left:-999px;top:0;background:var(--surface);padding:.5em 1em;z-index:10}
.skip:focus{left:8px;top:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{width:80%;margin-inline:auto}
.mono,.eyebrow,.num{font-family:Mono,monospace;font-size:.7em;letter-spacing:.1em;text-transform:uppercase}
.eyebrow{color:var(--accent);margin:0 0 .8em}
h1,h2,h3{line-height:1.12;letter-spacing:-.03em;margin:0}
h1{font-size:clamp(2em,3.6vw,4.2em);margin-bottom:.5em;text-wrap:balance}
h2{font-size:clamp(1.6em,2.4vw,2.7em);margin-bottom:.6em}
h2.sub{margin-top:2em}
h3{font-size:1.1em;margin-bottom:.35em}
p{margin:0 0 1em}
.lead{font-size:1.1em;margin-top:1.2em;max-width:44em}

.header{display:flex;align-items:center;gap:1.2em;padding-block:1em}
.brand{display:block;width:clamp(150px,13vw,300px)}
.brand img{width:100%}
.dark-logo{display:block}.light-logo{display:none}
:root[data-theme=light] .dark-logo{display:none}:root[data-theme=light] .light-logo{display:block}
@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .dark-logo{display:none}:root:not([data-theme=dark]) .light-logo{display:block}}
.nav{display:flex;gap:1.6em;margin-left:auto;font-size:.82em}
.nav a{text-decoration:none;padding:.3em 0}
.nav a:hover{text-decoration:underline}
.theme-toggle,.menu-toggle{border:1px solid var(--line);background:var(--surface);border-radius:2em;padding:.35em 1.1em;font-size:.82em;min-height:44px}
.menu-toggle{display:none}

.button{display:inline-flex;align-items:center;gap:.5em;background:var(--accent);color:var(--on-accent);text-decoration:none;border-radius:.4em;padding:.7em 1.3em;border:2px solid var(--accent);min-height:44px}
.button.secondary{background:transparent;color:var(--accent)}
.button:hover{filter:brightness(1.12)}
.actions{display:flex;flex-wrap:wrap;gap:.8em;margin:1.2em 0 0}
.caption{margin:1.1em 0 0;color:var(--muted);font-size:.82em}

.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,100px);align-items:center;padding-block:clamp(24px,3vw,80px)}
.what{display:grid;grid-template-columns:1fr 1fr;gap:1.6em;margin:0;padding:1.1em 1.3em;background:var(--surface);border:1px solid var(--line);border-radius:.6em;font-size:.88em}
.what ul{margin:0;padding-left:1.1em}.what li{margin-bottom:.5em}.what p{margin:0}
.prism{position:relative;aspect-ratio:5/4;border-radius:1em;overflow:hidden;border:1px solid var(--line);background:
 radial-gradient(60% 50% at 30% 52%,rgba(255,255,255,.16),transparent 70%),
 conic-gradient(from 200deg at 52% 52%,#ff5a5a,#ffb454,#f4ec6a,#6ae89a,#5ab8ff,#9a6aff,#ff5a5a),var(--bg2);background-blend-mode:normal,soft-light,normal}
.prism canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.prism.no-gl canvas{display:none}

.band{padding-block:1.4em;border-block:1px solid var(--line);background:var(--bg2);overflow:hidden}
.band-title{margin:0 auto 1em;color:var(--muted);font-size:.78em;font-family:Mono,monospace;text-transform:uppercase;letter-spacing:.1em}
.marquee{display:flex;width:max-content;animation:run 38s linear infinite}
.track{display:flex;gap:2.4em;margin:0;padding:0 1.2em;list-style:none;flex:none}
.track li{white-space:nowrap;font-size:1.15em;color:var(--ink)}
.track li::after{content:"•";color:var(--accent);margin-left:2.4em}
@keyframes run{to{transform:translateX(-50%)}}

.section{padding-block:clamp(40px,6vw,140px)}
.section.alt{background:var(--bg2);border-block:1px solid var(--line)}
.intro{color:var(--muted);max-width:44em}
.num-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3vw,60px);list-style:none;margin:0;padding:0}
.big{display:block;font-size:clamp(3.4em,7vw,8em);line-height:1;letter-spacing:-.05em;font-weight:600;color:var(--accent)}
.cap{display:block;margin-top:.5em;color:var(--muted)}

.tabs{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2.1fr);gap:clamp(16px,3vw,60px);margin-top:1.5em}
.tablist{display:flex;flex-direction:column;gap:.5em}
.tablist button{text-align:left;background:transparent;border:1px solid var(--line);border-radius:.5em;padding:.8em 1em;min-height:44px}
.tablist button[aria-selected=true]{background:var(--glass);border-color:var(--accent);color:var(--accent)}
.panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(16px,2.5vw,50px);align-items:center;margin-bottom:2em}
.has-js .panel{display:none;margin:0}
.has-js .panel.on{display:grid}
.tabs>.tablist{grid-column:1;grid-row:1/span 6}
.tabs>.panel{grid-column:2}
.has-js .tabs>.panel{grid-row:1}
.ptxt p{margin-bottom:.8em}.note{color:var(--muted);font-size:.88em}
.sc{width:100%;height:auto;background:var(--surface);border:1px solid var(--line);border-radius:.8em;padding:.5em}

.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,40px);list-style:none;margin:0;padding:0}
.steps li{border-top:2px solid var(--accent);padding-top:1em}.num{color:var(--accent)}
.princ,.cases,.pack{display:grid;gap:clamp(14px,2vw,36px);list-style:none;margin:0;padding:0}
.princ{grid-template-columns:repeat(3,minmax(0,1fr))}
.princ li,.cases li,.pack li{background:var(--surface);border:1px solid var(--line);border-radius:.7em;padding:1.1em 1.3em}
.princ p,.cases p{margin:0;color:var(--muted)}
.cases{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.4em}
.cases p{margin-bottom:.9em}.cases a{color:var(--accent)}
.pack{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.4em}
.pack li{display:flex;flex-direction:column}.pack li.hl{border-color:var(--accent)}
.pack p{color:var(--muted)}.pack .price{margin-top:auto;font-family:Mono,monospace;text-transform:uppercase;letter-spacing:.1em;font-size:.78em;color:var(--warm)}
.pack .button{align-self:flex-start}
.faq{display:grid;gap:.7em;margin-top:1.2em}
.qa{background:var(--surface);border:1px solid var(--line);border-radius:.6em;padding:.2em 1.2em}
.qa summary{padding:.8em 0;min-height:44px;font-weight:600}
.qa p{color:var(--muted);margin:0 0 1em}
.cta{text-align:left}.cta p{color:var(--muted);max-width:40em}

.footer{display:grid;grid-template-columns:1fr 1fr;gap:2em;padding-block:2.5em;border-top:1px solid var(--line);font-size:.85em;color:var(--muted)}
.footer p{margin:0 0 .4em}.footer a{margin-right:1.2em}

/* Cenas animadas (SVG). Estado natural = quadro final; animação só roda se permitido e visível. */
.sc *{transform-box:fill-box;transform-origin:center}
.sc .frame,.sc .bub,.sc .chip,.sc .row,.sc .lane,.sc .mail,.sc .lock,.sc .tgt,.sc .paper{fill:var(--surface);stroke:var(--line);stroke-width:1.5}
.sc .bub.me,.sc .chip{fill:var(--accent);stroke:none}
.sc .row{fill:var(--bg2)}
.sc .paper{fill:var(--bg2)}
.sc .ln{fill:var(--muted);opacity:.7}.sc .ln.soft,.sc .soft{opacity:.35}
.sc .ln.on-me{fill:var(--on-accent);opacity:.8}
.sc .warm{fill:var(--warm)}
.sc .warm-s{stroke:var(--warm);stroke-width:5;stroke-linecap:round}
.sc .stroke,.sc .check,.sc .shield{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.sc .check{stroke-width:2.5}.sc .check.big{stroke-width:7}
.sc .stroke.soft{stroke:var(--muted);opacity:.4}
.sc .person{fill:var(--glass);stroke:var(--accent);stroke-width:2.5}
.sc .scan{fill:var(--accent);opacity:.85}
.sc .knob{fill:var(--accent)}.sc .tgt{fill:var(--bg2)}
.sc .shield{stroke-width:5}
@keyframes pop{0%{opacity:0;transform:translateY(10px) scale(.96)}9%,86%{opacity:1;transform:none}96%,100%{opacity:0}}
.sc .pop{animation:pop 9s ease-out infinite backwards}
.d1{animation-delay:0s!important}.d2{animation-delay:1.2s!important}.d3{animation-delay:2.4s!important}.d4{animation-delay:3.6s!important}.d5{animation-delay:4.8s!important}
@keyframes scan{0%,100%{transform:translateY(0)}50%{transform:translateY(150px)}}
.sc .scan{animation:scan 4.5s ease-in-out infinite}
@keyframes grow{0%{transform:scaleX(0)}30%,100%{transform:scaleX(1)}}
.sc .grow{transform-origin:left center;animation:grow 6s ease-out infinite backwards}
.g1{animation-delay:.4s!important}.g2{animation-delay:.9s!important}.g3{animation-delay:1.4s!important}.g4{animation-delay:1.9s!important}
@keyframes fly{0%{transform:translateX(-170px);opacity:0}25%,85%{transform:none;opacity:1}100%{transform:translateX(30px);opacity:0}}
.sc .fly{animation:fly 7s ease-in-out infinite backwards}
.f2{animation-delay:1.6s!important}.f3{animation-delay:3.2s!important}
@keyframes drawing{0%{stroke-dashoffset:1}40%,100%{stroke-dashoffset:0}}
.sc .shield{stroke-dasharray:1;animation:drawing 6s ease-out infinite}
@keyframes slide{0%,20%{transform:translateX(-24px);fill:var(--muted)}45%,100%{transform:none}}
.sc .knob{animation:slide 6s ease-out infinite backwards}.k2{animation-delay:.6s!important}.k3{animation-delay:1.2s!important}
@keyframes beat{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.sc .hub .person{animation:beat 3s ease-in-out infinite}
.sc .check.big{animation:pop 6s ease-out infinite backwards;animation-delay:1.8s}
.off .sc *,.off .marquee{animation-play-state:paused}

@media (max-width:1100px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.princ{grid-template-columns:repeat(2,minmax(0,1fr))}.tabs{grid-template-columns:1fr}.tablist{flex-direction:row;flex-wrap:wrap}.tabs>.panel,.has-js .tabs>.panel{grid-column:1;grid-row:auto}.tabs>.tablist{grid-row:auto}}
@media (max-width:900px){
 .wrap{width:auto;margin-inline:20px}
 .hero{grid-template-columns:1fr}.what{grid-template-columns:1fr}
 .menu-toggle{display:inline-block;margin-left:auto}
 .nav{display:none;position:absolute;left:20px;right:20px;top:72px;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:.6em;padding:.6em 1em;margin:0;z-index:5;font-size:1em}
 .nav.open{display:flex}.header{position:relative}
 .num-grid,.cases,.pack,.footer,.panel{grid-template-columns:1fr}.princ,.steps{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .sc *,.marquee{animation:none!important}
 .marquee{width:auto;flex-wrap:wrap}.track{flex-wrap:wrap;padding:0 20px}.track[aria-hidden]{display:none}
}
