/* Retenlab. — refinamento 2026 | mobile-first | sem dependência de framework */
:root{
  --turq:#53e6d4; --mint:#e8f8f3; --mint-light:#f1fbf8;
  --purple:#2d194e; --purple-2:#452563; --navy:#132835;
  --text:#263747; --muted:#657a81; --line:#dbe5e5;
  --white:#fff; --paper:#fafbfc; --lilac:#f3f0f8;
  --max:1184px; --ease:cubic-bezier(.21,.7,.25,1);
  --shadow:0 18px 55px rgba(31,25,69,.085);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{margin:0;min-width:320px;background:#fff;color:var(--text);font:400 15px/1.72 'DM Sans',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
img,svg{display:block;max-width:100%}
svg{overflow:visible}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{font-family:'Manrope','DM Sans',sans-serif;letter-spacing:-.045em;line-height:1.15}
h1,h2,h3{color:var(--purple)}
h1{font-size:clamp(2.6rem,9vw,5.15rem);letter-spacing:-.062em;line-height:1.08}
h2{font-size:clamp(2.05rem,6.5vw,3.5rem);letter-spacing:-.055em}
h3{font-size:1.19rem;letter-spacing:-.032em}
p{line-height:1.75}
::selection{background:var(--turq);color:var(--purple)}
:focus-visible{outline:3px solid #08a996;outline-offset:3px}
.container{width:min(calc(100% - 36px),var(--max));margin-inline:auto}
.skip-link{position:absolute;top:8px;left:-999px;background:white;color:var(--purple);padding:12px 16px;z-index:1000;border:2px solid var(--purple);border-radius:9px}
.skip-link:focus{left:10px}

/* CABEÇALHO */
.site-header{position:sticky;top:0;z-index:200;background:rgba(255,255,255,.94);border-bottom:1px solid #edf0f2;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.marca{display:inline-flex;align-items:center;gap:7px;color:var(--purple);flex:none}
.marca img{width:45px;height:43px;object-fit:contain}
.marca-nome{font-family:Manrope,sans-serif;font-weight:800;font-size:1.38rem;letter-spacing:-.063em}
.nav-desktop,.header-cta{display:none}
.menu-btn{width:44px;height:44px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:5px;background:#f4f3f7;border:1px solid #eae6f0;border-radius:11px;padding:0}
.menu-btn span{width:20px;height:2px;background:var(--purple);border-radius:4px;transform-origin:center;transition:transform .28s var(--ease),opacity .2s}
.menu-btn[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-mobile{display:none;padding:8px 18px 20px;border-top:1px solid #ebedf0;box-shadow:0 22px 25px -23px #2d194e33}
.nav-mobile.is-open{display:flex;flex-direction:column;gap:4px}
.nav-mobile a:not(.btn){padding:13px 10px;color:var(--purple);font-weight:650;border-radius:8px}
.nav-mobile a:not(.btn):hover{background:var(--mint-light)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:13px 21px;border-radius:11px;border:1px solid transparent;font-weight:700;font-size:.91rem;letter-spacing:-.015em;text-align:center;line-height:1.35;transition:background .25s,color .25s,box-shadow .3s,transform .3s var(--ease),border-color .25s;position:relative;isolation:isolate;cursor:pointer;text-decoration:none!important}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn--primario{background:var(--purple);color:white;box-shadow:0 8px 20px #2d194e22}
.btn--primario:hover{background:#432468;box-shadow:0 13px 24px #2d194e2a}
.btn--wpp{color:var(--purple);background:rgba(255,255,255,.86);border-color:#d3dcdb}
.btn--wpp:hover{border-color:#74d6c8;background:#effcf9}
.btn--bloco{width:100%}
.ico-wpp{width:21px;height:21px;fill:currentColor;flex:none}

/* EYEBROWS: intentionally without preceding dashes / lines */
.eyebrow{display:inline-block;font-family:Manrope,sans-serif;font-size:.73rem;letter-spacing:.115em;text-transform:uppercase;color:#087d77;font-weight:800;margin-bottom:23px;line-height:1.4}
.eyebrow::before,.eyebrow::after{content:none!important;display:none!important}
.eyebrow--claro{color:var(--turq)}
.eyebrow--centro{margin-inline:auto}
.secao{padding:82px 0}
.secao--branco{background:#fff}
.secao--offwhite{background:#fafbfc}
.cabecalho-secao{max-width:880px;margin-bottom:38px}
.cabecalho-secao--centro{text-align:center;margin-inline:auto}
.titulo-secao{margin-bottom:20px;max-width:845px}
.titulo-secao--largo{max-width:950px}
.intro,.solucao-intro{max-width:745px;color:var(--muted);font-size:1.02rem;line-height:1.79}

/* HERO */
.hero{padding:72px 0 88px;position:relative;overflow:hidden;background:radial-gradient(circle at 95% 9%,rgba(83,230,212,.11) 0,transparent 35%),linear-gradient(155deg,#fff 0%,#fff 55%,#f9f9fc 100%)}
.hero::after{content:'';position:absolute;right:-130px;bottom:-270px;width:480px;height:480px;border:1px solid #51cfbe22;border-radius:50%;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:44px;align-items:center;position:relative;z-index:1}
.hero-txt{max-width:650px}
.hero-txt .eyebrow{margin-bottom:25px}
.hero h1{margin-bottom:26px}
.hero h1 .l2{display:block;margin-top:10px}
.hero h1 .hl{color:#087f78;position:relative}
.hero-sub{max-width:590px;font-size:1.02rem;color:var(--muted);line-height:1.86;margin-bottom:28px}
.hero-ctas{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.hero-micro{color:#74848a;font-size:.78rem;display:flex;align-items:flex-start;gap:9px;line-height:1.5;margin:18px 0 0;max-width:520px}
.hero-micro svg{width:16px;height:16px;flex:none;stroke:#0c9287}
/* Dashboard */
.painel{border:1px solid #e4e8e9;border-radius:19px;box-shadow:0 28px 65px #24204916,0 4px 13px #182f2720;background:#fff;padding:15px;position:relative;transform:translateZ(0)}
.painel::after{content:'';position:absolute;z-index:-1;inset:18px -12px -15px 15px;border:1px solid #d9e9e8;border-radius:18px;background:#eafaf7;transform:rotate(1.25deg)}
.painel-topo{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 0 12px;border-bottom:1px solid #eef0f2}
.painel-dots{display:flex;gap:4px}
.painel-dots i{width:6px;height:6px;border-radius:50%;background:#d4dadf}
.painel-dots i:first-child{background:#f9ac9e}
.painel-dots i:nth-child(2){background:#ffdb88}
.painel-dots i:nth-child(3){background:#9dddbe}
.painel-nome{display:inline-flex;align-items:center;gap:6px;font-size:.77rem;font-weight:800;color:var(--purple);font-family:Manrope,sans-serif}
.painel-nome img{width:20px;height:20px;object-fit:contain}
.pill-vivo{border:1px solid #dfebe8;background:#f6fcfa;color:#488d82;padding:5px 7px;border-radius:20px;white-space:nowrap;font-size:.55rem;letter-spacing:.01em;font-weight:700}
.painel-bloco{border:1px solid #ecf0f0;border-radius:12px;background:#fff;padding:13px 14px;margin-top:12px}
.painel-bloco h4{font-size:.75rem;letter-spacing:-.018em;margin-bottom:10px;color:var(--purple);font-weight:800}
.seg-linha{display:flex;align-items:center;gap:12px;margin:9px 0;font-size:.67rem;color:#627378}
.seg-nome{width:78px;flex:none}
.seg-barra{height:7px;border-radius:20px;background:#eef2f3;flex:1;overflow:hidden}
.seg-fill{width:var(--w);height:100%;border-radius:20px;background:var(--turq);transform-origin:left;animation:growBar 1.4s var(--ease) both}
.seg-fill.c2{background:#5a4685;animation-delay:.16s}
.seg-fill.c3{background:#dfb778;animation-delay:.32s}
.seg-fill.c4{background:#a4a9e5;animation-delay:.48s}
@keyframes growBar{from{transform:scaleX(.03)}to{transform:scaleX(1)}}
.jornada{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;position:relative;padding-top:8px}
.jornada-trilha{position:absolute;top:21px;left:11%;right:11%;height:2px;background:linear-gradient(90deg,var(--turq),#a5d9d5);z-index:0}
.jornada-trilha::after{content:'';width:24%;height:100%;display:block;background:#fff8;animation:flowShine 3s linear infinite}
@keyframes flowShine{from{transform:translateX(-110%)}to{transform:translateX(500%)}}
.jornada-no{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;z-index:1;color:#6b7b81;font-size:.59rem;text-align:center;line-height:1.3}
.jornada-no i{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;border:1px solid #dee9e6;background:#f8fcfa;color:#567978;font-style:normal}
.jornada-no.ativo i{background:#e5fbf5;border-color:#90dcd0;color:#058d7f}
.icon-refined{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.jornada-no .icon-refined{width:15px;height:15px}
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chip{display:inline-flex;align-items:center;gap:5px;color:#4a606a;border-radius:20px;padding:6px 8px;font-size:.59rem;background:#f4f8f7;border:1px solid #e2ece9;white-space:nowrap}
.chip svg{width:13px;height:13px;color:#128e83}
.painel-duo{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.painel-duo .painel-bloco{padding:11px 10px;min-width:0}
.toggle-linha{display:flex;align-items:center;justify-content:space-between;gap:4px;color:#718085;font-size:.6rem;margin:8px 0}
.toggle{display:inline-block;width:23px;height:12px;background:#c8f5e9;border-radius:20px;position:relative;flex:none}
.toggle::after{content:'';position:absolute;right:2px;top:2px;height:8px;width:8px;background:#13a294;border-radius:50%}
.agentes{display:flex;gap:4px;flex-wrap:wrap}
.agente{padding:3px 4px;font-size:.56rem;background:#f7f8fa;border-radius:5px;color:#566874}
.agente i{display:inline-block;width:5px;height:5px;margin-right:3px;background:#17baa7;border-radius:50%;box-shadow:0 0 0 2px #17baa723;animation:pulseDot 2.7s ease-in-out infinite}
@keyframes pulseDot{0%,100%{box-shadow:0 0 0 2px #17baa723}50%{box-shadow:0 0 0 5px #17baa70a}}

/* PROBLEMA */
.problema-cards{display:grid;gap:14px;grid-template-columns:1fr}
.pcard{background:#fff;border:1px solid #e5eaeb;border-radius:17px;padding:25px;min-height:220px;position:relative;transition:transform .34s var(--ease),border-color .3s,box-shadow .3s}
.pcard:hover{transform:translateY(-6px);border-color:#9edbd1;box-shadow:var(--shadow)}
.pcard-num{position:absolute;top:22px;right:22px;color:#afbcbf;font:700 .82rem Manrope,sans-serif}
.pcard-ico,.bf-ico,.qcard-ico,.ai-mod-ico{display:grid;place-items:center;width:47px;height:47px;border-radius:14px;background:#e9f8f5;color:#0b8c83;transition:transform .4s var(--ease),background .3s,border-radius .3s}
.pcard:hover .pcard-ico,.bf:hover .bf-ico,.qcard:hover .qcard-ico,.ai-mod:hover .ai-mod-ico{transform:translateY(-3px) rotate(-4deg);border-radius:17px}
.pcard h3{margin:23px 0 9px}
.pcard p{margin:0;color:var(--muted);font-size:.91rem}
.destaque-bloco{margin-top:24px;padding:29px;background:#f0f9f6;border:1px solid #dceee8;border-radius:18px}
.destaque-bloco p{font:700 clamp(1.25rem,3.4vw,1.92rem)/1.43 Manrope,sans-serif;letter-spacing:-.035em;color:var(--purple);margin:0}
.destaque-bloco .t{color:#167f77}

/* SOLUÇÃO BENTO */
.solucao-intro{max-width:800px}
.bento{display:grid;grid-template-columns:1fr;gap:15px}
.bcard{border-radius:18px;padding:26px;min-height:260px;display:flex;flex-direction:column;position:relative;overflow:hidden;isolation:isolate;border:1px solid #e6e6eb;background:#fbfbfd;transition:transform .32s var(--ease),box-shadow .32s,border-color .32s}
.bcard:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#b8e0d8}
.bcard--turq{background:#eafbf6;border-color:#d8ece6}
.bcard-tag{font:.7rem/1.2 Manrope,sans-serif;text-transform:uppercase;letter-spacing:.09em;color:#138377;font-weight:800;margin-bottom:17px}
.bcard h3{font-size:1.3rem;margin:0 0 10px}
.bcard p{margin:0;color:#5f7379;font-size:.91rem;max-width:360px}
.bcard-vis{margin-top:auto;padding-top:25px;display:flex;align-items:end;min-height:120px}
.vis-barras{height:100px;width:100%;display:flex;align-items:end;gap:8px;border-bottom:1px solid #c7e5df;padding-inline:6px}
.vis-barras span{width:calc(100% / 8);background:#21b5a5;border-radius:7px 7px 0 0;max-height:90px;transform-origin:bottom;animation:barRise 1s var(--ease) both}
.vis-barras span:nth-child(even){background:#74618e;animation-delay:.12s}
.vis-barras span:nth-child(3n){background:#87d8ca;animation-delay:.23s}
@keyframes barRise{from{transform:scaleY(.08)}to{transform:scaleY(1)}}
.vis-grupos{display:flex;align-items:end;gap:12px}
.vis-grupo{background:#fff;border:1px solid #e5e7e9;border-radius:12px;padding:13px;flex:1;min-width:0;box-shadow:0 5px 16px #172b3520}
.vis-grupo.on{border-color:#bbece3;background:#f4fefb}
.vis-grupo small{color:#667980;display:block;font-size:.65rem;margin-top:5px}
.vis-pontos{display:flex;gap:3px;flex-wrap:wrap;align-items:center;min-height:32px}
.vis-pontos i{width:16px;height:16px;border-radius:50%;background:#d6cde7;border:2px solid white;box-shadow:0 0 0 1px #d2cbe0}
.vis-grupo.on .vis-pontos i{background:#53e6d4;box-shadow:0 0 0 1px #a5e0d5}
.vis-fluxo{align-items:center;justify-content:space-between;gap:5px;min-height:92px}
.vis-fluxo i{display:grid;place-items:center;flex:none;width:41px;height:41px;border-radius:12px;background:#fff;border:1px solid #cbe4de;color:#178c80;box-shadow:0 6px 14px #172b3515}
.vis-fluxo i:nth-of-type(even){background:var(--purple);color:white;border-color:var(--purple)}
.vis-fluxo b{display:block;flex:1;height:2px;min-width:6px;background:linear-gradient(90deg,#8ddfd1,#c8efea);position:relative;overflow:hidden}
.vis-fluxo b::after{content:'';position:absolute;left:-14px;top:0;width:14px;height:2px;background:var(--purple);animation:flowRun 2.8s linear infinite}
@keyframes flowRun{to{left:120%}}
.vis-fluxo .icon-refined{height:19px;width:19px}
.vis-monitor{display:flex;flex-direction:column;gap:7px;justify-content:end}
.vis-mlinha{border:1px solid #e3eaea;border-radius:8px;padding:9px 10px;background:white;color:#667881;font-size:.76rem;display:flex;align-items:center;gap:8px}
.vis-mlinha i{height:8px;width:8px;flex:none;border-radius:50%;background:#36c2ad}
.vis-mlinha i.al{background:#edbd7a}
.solucao-destaque{margin-top:24px;background:var(--purple);padding:34px 28px;border-radius:18px;position:relative;overflow:hidden}
.solucao-destaque::after{content:'';position:absolute;right:-85px;top:-95px;width:230px;height:230px;border:1px solid #53e6d449;border-radius:50%}
.solucao-destaque p{font:800 clamp(1.25rem,3.4vw,2rem)/1.4 Manrope,sans-serif;letter-spacing:-.037em;color:#fff;margin:0}
.solucao-destaque .sub{color:var(--turq)}

/* MÉTODO: MINT */
.metodo{background:var(--mint);border-top:1px solid #d3eee6;border-bottom:1px solid #d3eee6}
.metodo .cabecalho-secao{margin-bottom:38px}
.metodo .intro{max-width:750px}
.timeline{position:relative;margin-top:30px}
.tl-steps{display:grid;grid-template-columns:1fr;gap:12px;position:relative}
.tl-trilha{position:absolute;width:2px;top:25px;bottom:25px;left:22px;background:#b6e2d9}
.tl-step{position:relative;padding:17px 18px 19px 63px;background:#ffffff82;border:1px solid #d4ebe4;border-radius:14px;transition:background .25s,transform .3s var(--ease)}
.tl-step:hover{background:#fff;transform:translateX(3px)}
.tl-no{position:absolute;top:16px;left:9px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--purple);font:800 .66rem Manrope,sans-serif;color:white;box-shadow:0 0 0 5px var(--mint)}
.tl-dias{font:800 .65rem Manrope,sans-serif;letter-spacing:.075em;text-transform:uppercase;color:#067e76;margin:5px 0 8px}
.tl-step h3{font-size:1.05rem;margin-bottom:9px}
.tl-step p{font-size:.87rem;color:#507378;margin:0}
.metodo-obs{font-size:.81rem;color:#558079;margin:24px 0 16px}
.metodo-cta .btn{width:100%}

/* BENEFÍCIOS */
.benef-grid{display:grid;gap:13px}
.bf{border:1px solid #e4e7e9;border-radius:17px;padding:26px;position:relative;overflow:hidden;transition:transform .32s var(--ease),box-shadow .32s,border-color .32s;min-height:207px}
.bf:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.bf h3{margin:14px 0 10px}
.bf p{font-size:.9rem;color:var(--muted);margin:0}
.bf--principal{min-height:310px;background:var(--purple);display:flex;flex-direction:column;justify-content:space-between;padding:29px}
.bf--principal h3{font-size:1.52rem;color:#fff;max-width:440px;margin:0 0 17px}
.bf--principal p{color:#d8d2e6;max-width:400px}
.bf-mini{margin-top:18px;display:flex;align-items:flex-end;gap:8px;height:58px;opacity:.9}
.bf-mini span{display:block;border-radius:8px 8px 0 0;width:18%;height:50%;background:var(--turq);animation:barRise 1s ease both}
.bf-mini span:nth-child(2){height:80%;background:#a18fc3;animation-delay:.15s}
.bf-mini span:nth-child(3){height:62%;background:#57aeae;animation-delay:.25s}
.bf-mini span:nth-child(4){height:98%;background:#ede8ff;animation-delay:.32s}
.bf--branco{background:white}
.bf--lavanda{background:#f6f3fa}
.bf--roxo{background:#2d194e;color:white}
.bf--roxo h3{color:white}
.bf--roxo p{color:#ddd5e7}
.bf--roxo .bf-ico{background:#ffffff20;color:var(--turq)}

/* AI PREMIUM */
.ai{background:var(--navy);position:relative;overflow:hidden}
.ai::before{content:'';position:absolute;width:510px;height:510px;border:1px solid #53e6d415;border-radius:50%;right:-170px;top:-200px;box-shadow:0 0 0 110px #53e6d405,0 0 0 210px #53e6d402}
.ai-grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:center;position:relative}
.ai h2{color:#fff;margin-bottom:25px}
.ai p{color:#bbd1d0;font-size:1rem;max-width:570px}
.ai p strong{color:white}
.ai-nota{margin-top:27px;display:flex;gap:10px;align-items:start;border-top:1px solid #ffffff20;padding-top:23px;font-size:.78rem!important;color:#a7c0bc!important}
.ai-nota svg{stroke:var(--turq);width:18px;height:18px;flex:none}
.ai-modulos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:11px;position:relative}
.ai-linhas{position:absolute;inset:10%;width:80%;height:80%;pointer-events:none;opacity:.52}
.ai-linhas line{stroke:#53e6d4;stroke-width:.35;stroke-dasharray:1.5 1.3;animation:dashMove 9s linear infinite}
@keyframes dashMove{to{stroke-dashoffset:-38}}
.ai-linhas circle{fill:var(--turq)}
.ai-mod{position:relative;z-index:1;min-height:210px;border:1px solid #ffffff21;border-radius:17px;background:#ffffff0b;backdrop-filter:blur(8px);padding:22px 16px;transition:transform .3s var(--ease),background .3s,border-color .3s}
.ai-mod:hover{transform:translateY(-5px);border-color:#53e6d477;background:#ffffff13}
.ai-mod:nth-of-type(2){margin-top:0}
.ai-mod:nth-of-type(3){margin-top:0}
.ai-mod-num{position:absolute;top:16px;right:16px;color:#8ba7a8;font:700 .65rem Manrope,sans-serif}
.ai-mod-ico{width:42px;height:42px;border-radius:12px;background:#53e6d421;color:var(--turq);margin-bottom:19px}
.ai-mod h3{color:white;margin:0 0 8px;font-size:1.03rem}
.ai-mod p{color:#b9cdce;font-size:.79rem;line-height:1.65;margin:0}

/* PÚBLICO */
.quem-grid{display:grid;grid-template-columns:1fr;gap:16px}
.qcard{min-height:288px;border:1px solid #e6e9ec;border-radius:18px;padding:27px;position:relative;overflow:hidden;transition:transform .33s var(--ease),box-shadow .3s}
.qcard:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.qcard--branco{background:white}
.qcard--roxo{background:var(--purple);color:white;border-color:var(--purple)}
.qcard--roxo h3{color:white}
.qcard--roxo p{color:#e3deea}
.qcard--roxo .qcard-ico{background:#53e6d424;color:var(--turq)}
.qcard h3{font-size:1.39rem;margin:20px 0 11px}
.qcard p{max-width:390px;font-size:.92rem;color:var(--muted);margin:0}
.qcard-grafico{position:absolute;bottom:28px;right:24px;height:74px;display:flex;align-items:flex-end;gap:6px;opacity:.4}
.qcard-grafico span{display:block;width:15px;height:24%;background:#20c9b2;border-radius:5px 5px 0 0;animation:barRise 1s var(--ease) both}
.qcard-grafico span:nth-child(2){height:45%;animation-delay:.12s}
.qcard-grafico span:nth-child(3){height:38%;animation-delay:.22s}
.qcard-grafico span:nth-child(4){height:72%;animation-delay:.31s}
.qcard-grafico span:nth-child(5){height:95%;animation-delay:.42s}
.qcard--roxo .qcard-grafico span{background:var(--turq)}
.quem-compl,.modelo-compl{font-size:.87rem;color:var(--muted);margin-top:23px;max-width:800px}

/* MODELO */
.modelo{background:#f6f4fa}
.modelo-grid{display:grid;gap:15px}
.mcard{border:1px solid #dfdce8;border-radius:18px;padding:27px;background:#fff;min-height:240px;position:relative;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s}
.mcard:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.mcard::after{content:'';position:absolute;bottom:-120px;right:-100px;width:220px;height:220px;border:1px solid #53e6d460;border-radius:50%;background:#53e6d40c;pointer-events:none}
.mcard-selo{display:inline-flex;align-items:center;gap:7px;color:#087a72;text-transform:uppercase;font:800 .65rem Manrope,sans-serif;letter-spacing:.075em;margin-bottom:27px}
.mcard-selo .icon-refined{height:15px;width:15px}
.mcard h3{font-size:1.45rem;margin:0 0 14px}
.mcard p{font-size:.94rem;color:var(--muted);max-width:490px}
.modelo-cta{margin-top:24px}

/* FAQ */
.faq-lista{max-width:920px;margin-inline:auto}
.faq-item{border-bottom:1px solid #e5e7e9}
.faq-item:first-child{border-top:1px solid #e5e7e9}
.faq-q{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 4px;font-family:Manrope,sans-serif;font-weight:750;letter-spacing:-.032em;color:var(--purple);font-size:1rem}
.faq-q::-webkit-details-marker{display:none}
.faq-mais{position:relative;display:grid;place-items:center;flex:none;width:29px;height:29px;border:1px solid #dedde5;border-radius:50%;transition:background .2s,transform .3s}
.faq-mais::before,.faq-mais::after{content:'';display:block;position:absolute;background:var(--purple);width:11px;height:1.6px;border-radius:2px}
.faq-mais::after{transform:rotate(90deg);transition:transform .25s}
.faq-item[open] .faq-mais{background:var(--turq);border-color:var(--turq)}
.faq-item[open] .faq-mais::after{transform:rotate(0)}
.faq-corpo{color:#5d747b;font-size:.91rem;line-height:1.85;padding:0 48px 25px 4px}

/* FORM */
.cta-final{background:var(--mint);position:relative;overflow:hidden}
.cta-final::after{content:'';pointer-events:none;position:absolute;right:-120px;bottom:-100px;width:350px;height:350px;border-radius:50%;border:1px solid #83d6cb60}
.cta-grid{display:grid;gap:34px;align-items:center;position:relative;z-index:1}
.cta-info h2{margin-bottom:22px}
.cta-info>p{color:#507778;font-size:1rem;max-width:540px}
.cta-wpp-alt{margin-top:34px}
.cta-wpp-alt p{color:var(--purple);font-weight:700;margin-bottom:12px}
.form-card{background:white;border:1px solid #e3eded;border-radius:20px;padding:25px;box-shadow:0 18px 45px #1b4c4a14}
.form-card h3{font-size:1.53rem;margin-bottom:8px}
.form-sub{color:var(--muted);font-size:.87rem;margin-bottom:25px}
.campo{margin-bottom:16px;min-width:0}
.campo-duo{display:grid;grid-template-columns:1fr;gap:0}
.campo label{display:block;font-size:.8rem;color:#405b64;font-weight:700;margin-bottom:8px}
.req{color:#b63853}
.campo input,.campo select{width:100%;min-height:49px;padding:12px 15px;border:1px solid #d9e3e3;border-radius:11px;background:#fcfefd;color:#283d48;outline:none;transition:box-shadow .23s,border-color .23s;font-size:.91rem;min-width:0}
.campo input::placeholder{color:#98aaaa}
.campo input:focus,.campo select:focus{border-color:#35ac9d;box-shadow:0 0 0 4px #53e6d42f}
.campo input[aria-invalid=true],.campo select[aria-invalid=true]{border-color:#b5425c}
.campo-erro{display:none;color:#b03753;font-size:.74rem;margin-top:5px}
.campo.has-error .campo-erro{display:block}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:.79rem;line-height:1.6;color:#556f77;margin:16px 0 21px;cursor:pointer}
.consent input{margin-top:5px;accent-color:var(--purple);width:17px;height:17px;flex:none}
.consent a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}
.btn-enviar:disabled{background:#b4acc2;color:white;cursor:not-allowed;box-shadow:none;transform:none}
.carregando{display:none;border-radius:50%;width:17px;height:17px;border:2px solid #ffffff70;border-top-color:#fff;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.form-feedback{font-size:.82rem;line-height:1.6;margin-top:12px}
.form-feedback.error{color:#a53754}
.form-config-note{color:#697d83;font-size:.75rem;line-height:1.5;text-align:center;margin:13px 0 0}
.hp{position:absolute!important;left:-99999px!important;height:1px!important;width:1px!important;opacity:0!important;pointer-events:none!important}

/* FOOTER */
.site-footer{background:#fff;padding:69px 0 25px;border-top:1px solid #e2e9e9}
.footer-grid{display:grid;gap:40px}
.footer-marca img{width:185px;height:auto;max-height:139px;object-fit:contain;object-position:left center}
.footer-marca p{font-size:.84rem;color:var(--muted);max-width:370px;line-height:1.7}
.footer-marca .f-nome{font-weight:750;color:var(--purple);margin:16px 0 6px}
.footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-nav h4,.footer-lyx h4{font-size:.94rem;color:var(--purple);letter-spacing:-.03em;margin:0 0 8px}
.footer-nav a{font-size:.86rem;color:#687a80;transition:color .2s}
.footer-nav a:hover{color:#0e9185}
.footer-lyx p{font-size:.86rem;color:#687a80;max-width:340px}
.footer-base{border-top:0;padding-top:19px;margin-top:0;display:flex;flex-direction:column;gap:6px;font-size:.76rem;color:#91a0a5}
.wpp-float{position:fixed;bottom:21px;right:17px;z-index:180;display:grid;place-items:center;height:57px;width:57px;border-radius:50%;background:#22bca8;border:3px solid #fff;box-shadow:0 10px 25px #166b5c36;transition:transform .3s var(--ease),box-shadow .3s,background .3s}
.wpp-float:hover{transform:translateY(-5px) scale(1.04);background:#13a994;box-shadow:0 16px 32px #166b5c45}
.wpp-float svg{fill:#fff;width:31px;height:31px}
/* On mobile, defer the floating shortcut until the visitor has passed the hero CTAs. */
.wpp-float.is-managed:not(.is-visible){opacity:0;pointer-events:none;transform:translateY(13px)}
.wpp-float.is-managed.is-visible{opacity:1;pointer-events:auto}

/* ANIMAÇÕES NÃO BLOQUEANTES: conteúdo está sempre visível */
.reveal{opacity:1;transform:none}
.reveal.entering{animation:fadeLift .68s var(--ease) both}
.reveal.d1.entering{animation-delay:.07s}
.reveal.d2.entering{animation-delay:.14s}
.reveal.d3.entering{animation-delay:.21s}
@keyframes fadeLift{from{opacity:.45;transform:translate3d(0,17px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
/* Animating svg icon appearance on hovered cards */
.icon-refined{transition:transform .35s var(--ease)}
.pcard:hover .icon-refined,.bf:hover .icon-refined,.bcard:hover .icon-refined{transform:scale(1.08)}

@media(min-width:550px){
 .container{width:min(calc(100% - 48px),var(--max))}
 .hero-ctas{flex-direction:row;flex-wrap:wrap;align-items:center}
 .problema-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .bento{grid-template-columns:repeat(2,minmax(0,1fr))}
 .benef-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .bf--principal{grid-column:span 2}
 .quem-grid,.modelo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-grid{grid-template-columns:1.4fr 1fr}
 .footer-lyx{grid-column:span 2}
 .footer-base{flex-direction:row;justify-content:space-between}
 .campo-duo{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
}
@media(min-width:760px){
 .secao{padding:108px 0}
 .hero{padding:96px 0 118px}
 .container{width:min(calc(100% - 64px),var(--max))}
 .hero-grid{grid-template-columns:1.06fr .94fr;gap:45px}
 .hero h1{font-size:clamp(2.8rem,4.2vw,4.25rem)}
 .hero-sub{font-size:.99rem}
 .painel{padding:17px}
 .metodo-cta .btn{width:auto;min-width:320px}
 .ai-grid{grid-template-columns:.9fr 1.1fr;gap:60px}
 .cta-grid{grid-template-columns:.92fr 1.08fr;gap:60px}
 .cta-info{align-self:start}
 .footer-grid{grid-template-columns:1.35fr .75fr 1fr;gap:35px}
 .footer-lyx{grid-column:auto}
}
@media(min-width:1020px){
 .nav-desktop{display:flex;align-items:center;gap:30px}
 .nav-desktop a{font-size:.85rem;font-weight:700;color:#5d6973;transition:color .2s}
 .nav-desktop a:hover{color:#0e8d81}
 .header-cta{display:block}
 .menu-btn,.nav-mobile{display:none!important}
 .hero-grid{grid-template-columns:1.08fr .92fr;gap:72px}
 .hero h1{font-size:clamp(3.4rem,4.45vw,4.95rem)}
 .hero-sub{font-size:1rem}
 .problema-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
 .pcard{padding:24px;min-height:268px}
 .bento{grid-template-columns:1.12fr .88fr;gap:18px}
 .bcard{min-height:287px;padding:29px}
 .bcard--1{grid-row:span 1;min-height:287px}
 .bcard--1 .bcard-vis{min-height:110px}
 .bcard--1 .vis-barras{height:100px}
 .bcard--3{grid-column:1}
 .bcard--4{grid-column:2}
 .tl-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:27px}
 .tl-trilha{left:20px;right:20px;width:auto;top:18px;bottom:auto;height:2px;background:linear-gradient(90deg,#00c7ae,#c4e9df)}
 .tl-trilha::before{content:'';position:absolute;inset:0;background:var(--purple);transform:scaleX(0);transform-origin:left;transition:transform 1.5s var(--ease)}
 .timeline.is-inview .tl-trilha::before{transform:scaleX(1)}
 .tl-step{padding:51px 0 0;border:0;background:transparent;border-radius:0;min-height:210px}
 .tl-step:hover{background:transparent;transform:translateY(-3px)}
 .tl-no{top:0;left:0;width:36px;height:36px}
 .tl-step h3{font-size:1.03rem}
 .benef-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense}
 .bf--principal{grid-column:span 3;grid-row:span 1;min-height:295px}
 .bf--b1,.bf--b2,.bf--b3{grid-column:span 3}
 .bf--b4,.bf--b5{grid-column:span 3}
 .ai-mod{min-height:224px;padding:24px}
 .cta-grid{gap:76px}
 .form-card{padding:32px}
}
@media(min-width:1200px){
 .hero h1{font-size:4.38rem}
 .header-inner{min-height:82px}
 .hero-grid{gap:88px}
 .painel{padding:21px}
 .painel-bloco{padding:15px}
 .seg-linha{margin:10px 0}
 .jornada-no{font-size:.63rem}
 .chip{font-size:.63rem}
}
@media(max-width:379px){
 .hero h1{font-size:2.47rem}
 .painel{padding:11px}
 .painel-bloco{padding:11px}
 .painel-duo{grid-template-columns:1fr}
 .pill-vivo{display:none}
 .chip{font-size:.58rem}
 .ai-mod{padding:16px 12px;min-height:200px}
 .ai-mod h3{font-size:.94rem}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}


/* =================== AJUSTES FINAIS 4.0 ==================== */
/* Bloco de destaque: identidade orbital Retenlab, substitui círculos genéricos. */
.destaque-bloco--orbital{
  position:relative;isolation:isolate;overflow:hidden;display:grid;align-items:center;
  background:#2d194e;border-color:#2d194e;border-radius:23px;
  min-height:305px;padding:clamp(28px,4vw,49px);margin-top:35px;
  box-shadow:0 24px 48px rgba(45,25,78,.105);
}
.destaque-bloco--orbital::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 88% 38%,rgba(83,230,212,.115),transparent 32%),radial-gradient(ellipse at 55% 110%,rgba(129,86,204,.11),transparent 50%)}
.destaque-bloco--orbital > p{position:relative;z-index:3;color:#fff!important;max-width:760px;font-size:clamp(1.38rem,2.55vw,2.15rem);line-height:1.33;letter-spacing:-.046em;margin:0}
.destaque-bloco--orbital .t{color:#53e6d4!important}
.orbital-art{position:absolute;right:-90px;top:50%;width:min(49%,520px);transform:translateY(-50%);z-index:1;pointer-events:none;opacity:.92}
.orbital-svg{width:100%;height:auto;overflow:visible}
.orbital-system{transform-origin:220px 167px;transform-box:view-box}
.orbital-system--a{animation:orbitRotate 29s linear infinite}
.orbital-system--b{animation:orbitRotateBack 37s linear infinite}
.orbital-pulse{transform-origin:220px 167px;animation:orbitPulse 4.6s ease-in-out infinite;opacity:.45}
.orbital-hub{transform-origin:220px 167px;animation:orbitFloat 6s ease-in-out infinite}
@keyframes orbitRotate{to{transform:rotate(360deg)}}
@keyframes orbitRotateBack{to{transform:rotate(-360deg)}}
@keyframes orbitPulse{0%,100%{transform:scale(.92);opacity:.25}50%{transform:scale(1.1);opacity:.65}}
@keyframes orbitFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
/* Alinhamento preciso do núcleo de conexão. O hub é centralizado sobre grid, não na borda de um card. */
.ai-modulos{isolation:isolate}
.ai-connector{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:visible}
.ai-connector-h,.ai-connector-v{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent,#53e6d476 40%,#53e6d476 60%,transparent)}
.ai-connector-h{height:1px;width:24%;}
.ai-connector-v{width:1px;height:24%;background:linear-gradient(0deg,transparent,#53e6d476 40%,#53e6d476 60%,transparent)}
.ai-connector-hub{position:absolute;left:50%;top:50%;width:22px;height:22px;display:grid;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:#173f46;border:1px solid #53e6d4ad;box-shadow:0 0 0 6px #53e6d413,0 0 24px #53e6d42a}
.ai-connector-spark{display:block;width:8px;height:8px;border-radius:50%;background:#53e6d4;box-shadow:0 0 12px #53e6d4;animation:connectorGlow 3.4s ease-in-out infinite}
@keyframes connectorGlow{0%,100%{opacity:.78;transform:scale(.85)}50%{opacity:1;transform:scale(1.2)}}
/* LYX: card de descoberta com identidade própria, link verdadeiro. */
.footer-lyx--featured{background:#f5f3f8;border:1px solid #e4deef;border-radius:19px;padding:25px;position:relative;overflow:hidden;box-shadow:0 10px 27px rgba(45,25,78,.025)}
.footer-lyx--featured::after{content:"";position:absolute;width:170px;height:170px;right:-90px;top:-100px;background:#ff851b20;border-radius:50%;pointer-events:none}
.lyx-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
.lyx-overline{font:800 .6rem/1.4 Manrope,sans-serif;letter-spacing:.14em;color:#685885}
.lyx-logo{width:94px;height:auto;max-height:42px;object-fit:contain;object-position:center;flex:none}
.footer-lyx--featured h4{font:800 clamp(1.05rem,1.55vw,1.35rem)/1.3 Manrope,sans-serif;letter-spacing:-.04em;color:#2d194e;max-width:300px;margin:0 0 13px}
.footer-lyx--featured p{font-size:.85rem;line-height:1.65;color:#596474;max-width:340px;margin-bottom:19px}
.lyx-visit{display:inline-flex;justify-content:center;align-items:center;border-radius:10px;background:#2d194e;color:#fff;font:750 .84rem/1.35 Manrope,sans-serif;padding:13px 21px;min-height:46px;text-decoration:none;transition:transform .25s var(--ease),background .25s,box-shadow .25s}
.lyx-visit:hover{background:#442365;color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px #2d194e28}
.lyx-visit:focus-visible{outline:3px solid #ff871c;outline-offset:4px}
/* Tipografia do fechamento: cada linha ocupa seu próprio bloco, sem qualquer sobreposição. */
.footer-statement{width:100%;overflow:hidden;display:flex;flex-direction:column;gap:clamp(4px,.7vw,12px);padding:clamp(46px,6vw,84px) 0 clamp(33px,4vw,54px);border-bottom:1px solid var(--turq);user-select:none}
.footer-statement .l1,.footer-statement .l2{display:block;width:100%;margin:0;white-space:normal;overflow-wrap:normal;hyphens:none;font:800 clamp(1.48rem,6.25vw,5.95rem)/1.12 Manrope,sans-serif;letter-spacing:-.073em;text-align:left}
.footer-statement .l1{color:#2d194e}
.footer-statement .l2{color:var(--turq);-webkit-text-stroke:0;paint-order:normal;letter-spacing:-.073em;line-height:1.12}
.footer-statement .pt{color:var(--turq);-webkit-text-stroke:0}
/* Responsividade sem ornamentação excessiva no mobile */
@media(max-width:760px){
 .destaque-bloco--orbital{min-height:305px;padding:30px 25px}
 .destaque-bloco--orbital>p{max-width:100%;font-size:clamp(1.35rem,5vw,1.95rem)}
 .orbital-art{top:56%;bottom:auto;right:-92px;width:295px;transform:translateY(-50%);opacity:.22}
 .footer-statement{padding-block:46px 40px;gap:6px}
}
@media(max-width:390px){
 .destaque-bloco--orbital{padding:26px 21px}
 .orbital-art{right:-92px;top:54%;opacity:.18}
 .footer-statement .l1,.footer-statement .l2{font-size:clamp(1.36rem,6.4vw,2rem);letter-spacing:-.08em}
 .footer-statement .l2{letter-spacing:-.08em}
}
@media(prefers-reduced-motion:reduce){
 .orbital-system,.orbital-pulse,.orbital-hub,.ai-connector-spark{animation:none!important}
}
