/* FLINKS — páginas de serviço. Mesmos tokens visuais da home (fundo escuro, violeta, Space Grotesk + JetBrains Mono). */
:root{--bg:oklch(0.13 0.025 285);--bg-1:oklch(0.17 0.035 285);--line:oklch(0.32 0.04 285/0.5);--fg:oklch(0.98 0.005 285);--fg-1:oklch(0.85 0.01 285);--fg-2:oklch(0.7 0.015 285);--fg-3:oklch(0.62 0.02 285);--violet:oklch(0.72 0.24 295);--violet-glow:oklch(0.72 0.24 295/0.35);--cyan:oklch(0.82 0.16 220);--display:"Space Grotesk",system-ui,sans-serif;--mono:"JetBrains Mono",Menlo,monospace;--gutter:clamp(1.25rem,5vw,4rem)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
body{background:var(--bg);color:var(--fg);font-family:var(--display);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:hover{color:var(--violet)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px;border-radius:4px}
.wrap{max-width:1200px;margin:0 auto;padding:0 var(--gutter)}
.mono{font-family:var(--mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}
.logo{font-family:"Montserrat",var(--display);font-weight:900;font-style:italic;letter-spacing:-.05em;text-transform:uppercase;user-select:none;display:inline-flex;align-items:baseline}

/* navegação (idêntica à home) */
nav#nav{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem var(--gutter);background:linear-gradient(var(--bg),oklch(0.13 0.025 285/0));backdrop-filter:blur(12px)}
nav#nav .logo{font-size:1.5rem}
nav#nav ul{display:flex;gap:1.6rem;list-style:none}
nav#nav ul a{display:inline-block;padding:.6rem .1rem;font-family:var(--mono);font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-1)}
nav#nav ul a:hover,nav#nav ul a[aria-current="page"]{color:var(--violet)}
.nav-actions{display:flex;align-items:center;gap:.75rem}
.cta-link{display:inline-flex;align-items:center;min-height:44px;font-family:var(--mono);font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:.6rem 1.2rem;border:1px solid var(--line);border-radius:999px;transition:border-color .3s,background .3s}
.cta-link:hover{border-color:var(--violet);background:oklch(0.72 0.24 295/0.1);color:var(--fg)}
.btn-wa{display:inline-flex;align-items:center;gap:.6rem;min-height:48px;padding:.75rem 1.5rem;border-radius:999px;background:var(--violet);color:var(--bg);font-weight:600;font-size:1rem;line-height:1.2;letter-spacing:-.01em;transition:transform .3s,box-shadow .3s,background .3s}
.btn-wa:hover{color:var(--bg);background:oklch(0.78 0.22 295);box-shadow:0 0 0 6px var(--violet-glow);transform:translateY(-1px)}
.btn-wa svg{width:1.15em;height:1.15em;flex:none}
.menu-btn{display:none;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--fg);cursor:pointer}
.menu-btn span{position:relative;display:block;width:20px;height:2px;background:currentColor;transition:background .2s}
.menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:currentColor;transition:transform .3s,top .3s}
.menu-btn span::before{top:-6px}.menu-btn span::after{top:6px}
.menu-btn[aria-expanded="true"] span{background:transparent}
.menu-btn[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}

/* cabeçalho da página */
.page-hero{padding:8.5rem 0 3.5rem;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;width:60vmax;height:60vmax;right:-25vmax;top:-35vmax;border-radius:50%;background:radial-gradient(circle,var(--violet-glow),transparent 60%);filter:blur(40px);pointer-events:none}
.page-hero>.wrap{position:relative}
.crumbs{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem .6rem;font-family:var(--mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin-bottom:2rem}
.crumbs li+li::before{content:"/";margin-right:.6rem;color:var(--fg-3)}
.crumbs a{color:var(--fg-2)}.crumbs a:hover{color:var(--violet)}
.crumbs [aria-current]{color:var(--fg-1)}
.kicker{display:block;margin-bottom:1rem;color:var(--violet)}
h1{font-size:clamp(2.6rem,7vw,6.2rem);font-weight:500;line-height:.98;letter-spacing:-.04em;text-wrap:balance;max-width:16ch}
.lead{margin-top:1.5rem;max-width:56ch;color:var(--fg-1);font-size:clamp(1.1rem,1.6vw,1.45rem);text-wrap:pretty}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:2rem}
.audience{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;gap:1rem 3rem;align-items:baseline}
.audience ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.8rem 2rem;color:var(--fg-1)}
.audience li{position:relative;padding-left:1.4rem}
.audience li::before{content:"";position:absolute;left:0;top:.65em;width:.6rem;height:.6rem;border-radius:50%;background:var(--violet)}

/* blocos */
.block{padding:clamp(3.5rem,7vw,6rem) 0;border-top:1px solid var(--line)}
.block-head{display:grid;grid-template-columns:auto 1fr;gap:1rem 3rem;align-items:baseline;margin-bottom:clamp(2rem,4vw,3.5rem)}
h2{font-size:clamp(1.9rem,4.2vw,3.6rem);font-weight:500;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
h3{font-weight:500;letter-spacing:-.02em;line-height:1.15}
.prose{max-width:68ch;color:var(--fg-1);font-size:clamp(1.02rem,1.3vw,1.2rem)}
.prose p+p,.prose ul+p,.prose p+ul{margin-top:1rem}
.prose ul{padding-left:1.3rem}
.prose li+li{margin-top:.4rem}
.prose strong{color:var(--fg);font-weight:500}
.prose a{color:var(--fg);border-bottom:1px solid var(--violet)}
.prose a:hover{color:var(--violet)}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 4rem;align-items:start}

.steps{list-style:none;counter-reset:s;display:grid;gap:0;border-top:1px solid var(--line)}
.steps li{counter-increment:s;display:grid;grid-template-columns:4rem 1fr;gap:1.5rem;align-items:baseline;padding:1.6rem 0;border-bottom:1px solid var(--line)}
.steps li::before{content:counter(s,decimal-leading-zero);font-family:var(--mono);font-size:.8rem;color:var(--violet)}
.steps h3{font-size:clamp(1.25rem,2vw,1.7rem)}
.steps p{margin-top:.4rem;color:var(--fg-2);max-width:60ch;text-wrap:pretty}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.card{background:var(--bg);padding:2rem 1.75rem;display:flex;flex-direction:column;gap:.7rem}
.card .mono{color:var(--violet)}
.card h3{font-size:clamp(1.15rem,1.7vw,1.45rem)}
.card p{color:var(--fg-2);text-wrap:pretty}

.table-wrap{overflow-x:auto;border:1px solid var(--line)}
table{width:100%;border-collapse:collapse;min-width:40rem}
th,td{text-align:left;vertical-align:top;padding:1rem 1.2rem;border-bottom:1px solid var(--line)}
th{font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--fg-3);background:var(--bg-1)}
td{color:var(--fg-1)}
td:first-child{color:var(--fg);font-weight:500}
tr:last-child td{border-bottom:0}

.examples{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.example{background:var(--bg);padding:2.25rem 1.9rem;display:flex;flex-direction:column;gap:1rem}
.tag{align-self:flex-start;font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--violet);border:1px solid var(--violet);border-radius:999px;padding:.3rem .7rem}
.example h3{font-size:clamp(1.2rem,1.8vw,1.55rem)}
.example dl{display:grid;gap:.9rem}
.example dt{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3)}
.example dd{color:var(--fg-1);margin-top:.2rem;text-wrap:pretty}
.example dd+dt{padding-top:.9rem;border-top:1px solid var(--line)}

.limits{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.25rem 2.5rem;max-width:70rem}
.limits li{position:relative;padding-left:1.6rem;color:var(--fg-1);text-wrap:pretty}
.limits li::before{content:"";position:absolute;left:0;top:.75em;width:.8rem;height:2px;background:var(--violet)}
.limits b{display:block;font-weight:500;color:var(--fg)}

.faq{display:grid;gap:0;border-top:1px solid var(--line);max-width:60rem}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center;padding:1.3rem 0;font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:500;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);font-size:1.4rem;color:var(--violet);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>div{padding:0 0 1.5rem;color:var(--fg-2);max-width:62ch;text-wrap:pretty}
.faq details>div p+p{margin-top:.8rem}

.cta-box{position:relative;overflow:hidden;border:1px solid var(--line);padding:clamp(2.5rem,5vw,4rem);display:grid;grid-template-columns:1fr auto;gap:2rem 3rem;align-items:center}
.cta-box::after{content:"";position:absolute;left:30%;bottom:-60vmax;width:70vmax;height:70vmax;border-radius:50%;background:radial-gradient(circle,var(--violet-glow),transparent 60%);filter:blur(50px);pointer-events:none}
.cta-box>*{position:relative}
.cta-box h2{font-size:clamp(1.8rem,4vw,3.2rem);max-width:18ch}
.cta-box p{margin-top:.8rem;color:var(--fg-1);max-width:50ch;text-wrap:pretty}
.cta-box .actions{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center}
.cta-box small{display:block;margin-top:.8rem;color:var(--fg-3);font-size:.9rem}

.related{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.related a{background:var(--bg);display:grid;grid-template-rows:auto 1fr auto;gap:.6rem;padding:1.75rem 1.5rem;height:100%;transition:background .3s}
.related a:hover{background:var(--bg-1);color:inherit}
.related a:hover h3{color:var(--violet)}
.related .n{font-family:var(--mono);font-size:.78rem;color:var(--violet)}
.related h3{font-size:1.15rem;transition:color .3s}
.related p{color:var(--fg-2);font-size:.95rem}
.related .arr{font-size:1.3rem;color:var(--fg-3);justify-self:end}

/* hub /servicos/ */
.svc-list{list-style:none;border-top:1px solid var(--line)}
.svc-list a{display:grid;grid-template-columns:4rem 1fr auto;gap:1.5rem;align-items:baseline;padding:2rem 0;border-bottom:1px solid var(--line);transition:padding-left .4s cubic-bezier(.2,.8,.2,1)}
.svc-list a:hover{padding-left:1rem;color:inherit}
.svc-list a:hover h2{color:var(--violet)}
.svc-list .n{font-family:var(--mono);font-size:.8rem;color:var(--violet)}
.svc-list h2{font-size:clamp(1.6rem,3.4vw,2.8rem);transition:color .3s}
.svc-list p{color:var(--fg-2);margin-top:.6rem;max-width:52ch;text-wrap:pretty}
.svc-list .arr{font-size:1.6rem;color:var(--fg-3);transition:transform .4s,color .3s}
.svc-list a:hover .arr{transform:rotate(-45deg);color:var(--violet)}

/* rodapé (idêntico à home) */
footer{padding:2.5rem 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;max-width:1400px}
footer .logo{font-size:clamp(4rem,14vw,14rem);line-height:.85;color:var(--bg-1);width:100%;margin-bottom:2rem;-webkit-text-stroke:1px var(--line)}
.foot-nav{position:static;width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.5rem 2rem;margin-bottom:2.5rem}
.foot-nav ul{list-style:none;display:grid;gap:.5rem;margin-top:.8rem}
.foot-nav a{color:var(--fg-2);font-size:1rem}
.foot-nav a:hover{color:var(--violet)}

@media (prefers-reduced-motion:reduce){*{transition:none!important}}
@media (max-width:1040px){nav#nav ul{gap:1rem}nav#nav ul a{font-size:.8rem}}
@media (max-width:800px){
nav#nav{padding:.9rem var(--gutter);background:var(--bg);border-bottom:1px solid var(--line)}
nav#nav ul{display:none}
nav#nav.open ul{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:100%;padding:.5rem var(--gutter) 1.25rem;background:var(--bg);border-bottom:1px solid var(--line)}
nav#nav.open ul a{display:block;padding:.9rem 0;font-size:1rem;border-top:1px solid var(--line)}
.menu-btn{display:inline-flex}
.nav-actions .cta-link{display:none}
.page-hero{padding:6.5rem 0 2.5rem}
.hero-actions .btn-wa{width:100%;justify-content:center}
.audience,.block-head,.cols2,.cta-box{grid-template-columns:1fr}
.steps li{grid-template-columns:3rem 1fr;gap:1rem}
.svc-list a{grid-template-columns:3rem 1fr;gap:1rem}
.svc-list .arr{display:none}
}
