/* Entrada da marca e desenho das divisórias, sem interferir na rolagem. */
.typing-caret{background:var(--ink)}
.intro[hidden]{display:none}.intro-pending .intro[hidden]{display:flex}
.intro-pending{overflow:hidden}.intro-pending .site-header,.intro-pending main,.intro-pending .site-footer{opacity:0}
.intro-pending .skip-link{visibility:hidden}.intro{pointer-events:auto;transition:opacity .95s var(--ease),visibility .95s}
.intro img{transform:none;transition:opacity 1.15s var(--ease);width:min(330px,65vw)}
.intro-symbol{position:relative;width:clamp(135px,31svh,338px);aspect-ratio:169.14/197.65;flex:none;opacity:0;overflow:visible}
.intro-show .intro-symbol{animation:symbol-sequence 2s ease both}
.intro-wave{position:absolute;inset:0;transform:translate3d(45%,0,0);opacity:0}
.intro-symbol .intro-wave img{width:100%;height:100%;max-width:none;opacity:1;transform:none;transition:none}
.intro-show .wave-0{animation:echo-wave 1.1s var(--ease) .18s both}
.intro-show .wave-2{animation:echo-wave 1s var(--ease) .4s both}
.intro-show .wave-1{animation:echo-wave .9s var(--ease) .6s both}
@keyframes echo-wave{from{transform:translate3d(45%,0,0);opacity:0}to{transform:translate3d(0,0,0);opacity:1}}
@keyframes symbol-sequence{0%,5%{opacity:0}15%,80%{opacity:1}100%{opacity:0}}
.intro-out{pointer-events:none}.intro-running .site-footer{opacity:0}.site-footer{transition:opacity 1s var(--ease)}
.site-arrived .hero-content p{animation:entry-rise .95s var(--ease) .1s both}
.site-arrived .hero-actions{animation:entry-rise .95s var(--ease) .2s both}
.site-arrived .hero-canvas{animation:entry-fade 1.2s var(--ease) .15s both}
.line-reveal{position:relative;border-top-color:transparent}
.line-reveal:before,.hero-centered:after{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:var(--line);transform:scaleX(0);transform-origin:left;pointer-events:none}
.line-reveal.revealed:before{animation:draw-line 1.1s var(--ease) both}
.hero-centered+.services-section.line-reveal:before{content:none}
.hero-centered{border-bottom-color:transparent}.hero-centered:after{top:auto;bottom:0}.site-arrived .hero-centered:after{animation:draw-line 1.2s var(--ease) .3s both}
.folder-0,.folder-2{--service-rule:rgba(234,228,214,.22)}.folder-1{--service-rule:rgba(31,32,34,.22)}
.folder .service-list li{position:relative;border-top-color:transparent}
.folder .service-list li:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:var(--service-rule);transform:scaleX(0);transform-origin:left;pointer-events:none}
.folder.revealed .service-list li:before{animation:draw-line .9s var(--ease) var(--line-delay,0ms) both}
@keyframes entry-fade{from{opacity:0}to{opacity:1}}
@keyframes entry-rise{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@keyframes draw-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.line-reveal:before,.hero-centered:after,.folder .service-list li:before{transform:none}.intro{display:none!important}.site-arrived .hero-content p,.site-arrived .hero-actions,.site-arrived .hero-canvas{opacity:1;translate:none}}
