/* Lucide throughout: 24-unit grid, rounded 1.75-unit strokes, inherited colour. */
.lucide{display:inline-block;width:24px;height:24px;flex:0 0 auto;vertical-align:middle;stroke-width:1.75;overflow:visible}
.button .lucide,.text-link .lucide,.hero-scroll .lucide,.nav-cta .lucide{width:22px;height:22px}
.button>span:has(.lucide),.hero-scroll>span:has(.lucide){display:inline-flex;align-items:center}
.text-link{gap:12px}.nav-cta{align-items:center}
.solution .arrow{display:flex;align-items:center;justify-content:center}.solution .arrow .lucide{width:28px;height:28px}
.menu-toggle .lucide{width:22px;height:22px}.menu-close-icon{display:none}
.menu-toggle[aria-expanded="true"] .menu-open-icon{display:none}.menu-toggle[aria-expanded="true"] .menu-close-icon{display:block}
.disclosure-minus{display:none}details[open]>summary .disclosure-plus{display:none}details[open]>summary .disclosure-minus{display:block}
.service-panel[open] .service-plus{transform:none}.service-plus .lucide{width:20px;height:20px}
.faq summary:after{content:none}.faq-disclosure{position:absolute;right:0;top:3px;display:flex;color:#087bb8}
.faq-disclosure .lucide{width:22px;height:22px}
.brand-composition .block-icon,.brand-composition .block-symbol>.lucide{display:block;width:72px;height:72px;stroke-width:1.5}
.brand-composition .block-symbol{line-height:1;letter-spacing:0;font-size:0}
.brand-composition .knowledge-arrow{display:flex}.knowledge-arrow .lucide{width:36px;height:36px;stroke-width:1.5}
.brand-composition .motion-toggle{display:inline-flex;align-items:center;gap:7px}.motion-toggle .lucide{width:16px;height:16px;stroke-width:1.75}
.process-art{display:flex;width:160px;height:140px;align-items:center;justify-content:center;background:#ecf8f8;border-radius:28px;color:#147f7a}
.process-art .lucide{width:88px;height:88px;stroke-width:1.5}
/* Lucide pictograms sit on brand-colour planes, rather than custom SVG drawings. */
.secondary-icon-art{position:relative;width:100%;aspect-ratio:360/280;isolation:isolate}
.secondary-art-orbit{position:absolute;inset:6% 8% 7%;border:1px solid #bed9e5;border-radius:50%;transform:rotate(-22deg)}
.secondary-art-trail{position:absolute;left:9%;right:5%;top:62%;border-top:1px dashed #a8cbdc;transform:rotate(-18deg)}
.secondary-art-plane{position:absolute;width:39%;height:64%;border-radius:10px;left:22%;top:19%;background:var(--brand-pink);transform:rotate(-14deg)}
.secondary-art-plane.plane-front{left:39%;top:21%;background:var(--brand-cyan);transform:rotate(13deg)}
.secondary-icon-card{position:absolute;left:28%;top:12%;width:48%;height:70%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:19px 14px 28px;border:1px solid #cddfe8;border-radius:10px;background:#fff;box-shadow:0 15px 30px -22px #153b5a55;transform:rotate(-3deg)}
.secondary-card-index{font-size:9px;letter-spacing:1px;color:#52646e;white-space:nowrap}
.secondary-visual svg.secondary-icon{display:block;width:96px;height:96px;stroke-width:1.5}
.tone-blue{color:#087bb8}.tone-teal{color:#147f7a}.tone-ink{color:#152e3d}
.secondary-art-node{position:absolute;width:15px;height:15px;left:13%;top:62%;background:var(--brand-teal);border:4px solid #fff;border-radius:50%;box-sizing:content-box}
.secondary-art-node.node-two{left:auto;right:9%;top:22%;background:var(--brand-blue);width:10px;height:10px}
.art-mercado .plane-back,.art-privacidade .plane-back{background:var(--brand-cyan)}
.art-mercado .plane-front,.art-privacidade .plane-front{background:var(--brand-pink)}
.art-metodologia .secondary-icon-card,.art-analises .secondary-icon-card{transform:rotate(3deg)}
@media(max-width:1000px){.brand-composition .block-icon,.brand-composition .block-symbol>.lucide{width:64px;height:64px}.knowledge-arrow .lucide{width:30px;height:30px}}
@media(max-width:760px){.brand-composition .block-icon,.brand-composition .block-symbol>.lucide{width:56px;height:56px}.brand-totem.connection-ribbon,.process-art{display:none}.secondary-visual svg.secondary-icon{width:72px;height:72px}.secondary-icon-card{padding:14px 10px 18px}.secondary-card-index{font-size:7px;letter-spacing:.6px}.secondary-art-node{width:11px;height:11px}.faq-disclosure{top:4px}}
@media(prefers-reduced-motion:reduce){.brand-composition .motion-toggle{display:none}}
