/* Raiz Viva: identidade de movimento. Núcleo em motion-base.css. */
:root{--cue-ink:var(--accent-ink);--orb-a:oklch(84% .09 58/.5);--orb-b:oklch(64% .12 148/.32);--mq-bg:var(--terra);--mq-ink:var(--terra-ink);--mq-dot:var(--accent);--glow:oklch(86% .12 58/.16);--glow-2:var(--peach)}
.progress{background:linear-gradient(90deg,var(--terra),var(--peach))}

/* Marquee com os serviços, em terracota */
.marquee{border-block:1px solid oklch(56% .14 48)}
.marquee span{font-family:var(--serif);font-weight:400}

/* Hero: forma orgânica que respira atrás da foto */
.hero{position:relative;overflow:hidden}
.hero>.hero-copy,.hero>.hero-photo{position:relative;z-index:2}
.hero-blob{position:absolute;z-index:1;left:30%;top:-40%;width:min(40vw,480px);aspect-ratio:1;border-radius:46% 54% 60% 40% / 50% 40% 60% 50%;background:radial-gradient(circle at 35% 30%,var(--peach),var(--terra) 70%);opacity:.26;filter:blur(2px);pointer-events:none}
@media(max-width:860px){.hero-blob{left:auto;right:-25%;top:-12%;width:75vw;opacity:.18}}

/* Folhas flutuantes */
.hero>.leaf-layer,.contact>.leaf-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.leaf{position:absolute;color:var(--peach);will-change:transform}
.leaf svg{display:block;width:100%;height:auto;fill:currentColor}
.leaf[data-tone="1"]{color:var(--terra)}
.leaf[data-tone="2"]{color:oklch(64% .12 148)}
.contact>.container{position:relative;z-index:2}

/* Trepadeira lateral que cresce com o scroll */
.vine{position:fixed;right:10px;top:0;bottom:0;width:34px;z-index:15;pointer-events:none}
.vine svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.vine path{fill:none;stroke:var(--accent);stroke-width:2.2;stroke-linecap:round;opacity:.55}
.vine-leaf{position:absolute;width:18px;color:var(--terra)}
.vine-leaf:nth-child(odd){color:var(--accent)}
.vine-leaf svg{display:block;width:100%;height:auto;fill:currentColor;position:static}
@media(max-width:1100px){.vine{display:none}}

/* Fotos e cartões */
.about-photos img{will-change:transform}
.about-photos .b{box-shadow:0 30px 60px -30px oklch(24% .05 150/.5)}
.step-card.tilt:hover,.info-card.tilt:hover{box-shadow:0 24px 50px -24px oklch(30% .07 152/.4)}
.step-card b{display:inline-block;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.step-card:hover b{transform:scale(1.18) rotate(-6deg);color:var(--terra)}
.svc-fig{border-radius:var(--img-radius)}

@media(prefers-reduced-motion:reduce){.hero-blob,.leaf-layer,.vine{display:none}}
