/* Motion edition: short, event-driven effects, no continuous animation loops. */
:root{--fx-ease:cubic-bezier(.2,.75,.25,1);--fx-fast:220ms;--fx-slow:650ms}
.reading-progress{position:fixed;inset:0 0 auto;height:3px;z-index:90;pointer-events:none;background:transparent}.reading-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#6a8258,#b8bd8e);transform:scaleX(0);transform-origin:left}
.fx-card{position:relative;isolation:isolate;--fx-x:50%;--fx-y:50%;--fx-rx:0deg;--fx-ry:0deg;transition:transform 420ms var(--fx-ease),box-shadow 420ms var(--fx-ease),border-color 300ms ease}
.fx-card:before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:2;opacity:0;background:radial-gradient(ellipse 300px 240px at var(--fx-x) var(--fx-y),rgba(255,251,222,.28),transparent 75%);transition:opacity 350ms ease}
.service-card{border-color:#dddcca}.service-card-copy{z-index:3}.service-card img{transition:transform 850ms var(--fx-ease),filter 650ms ease}.service-open{transition:transform 400ms var(--fx-ease),background 300ms,color 300ms,box-shadow 300ms}
.fx-press{position:relative;isolation:isolate;overflow:hidden;touch-action:manipulation}.fx-ripple{position:absolute;pointer-events:none;border-radius:50%;background:currentColor;opacity:.12;z-index:5;transform:scale(0);animation:fx-ripple 560ms var(--fx-ease) both}.fx-ripple:empty{display:block}@keyframes fx-ripple{0%{transform:scale(0);opacity:.18}100%{transform:scale(1);opacity:0}}
.primary-btn,.outline-btn,.wa-send,.desktop-cta,.journal-controls button,.wa-topics button{transition:transform 240ms var(--fx-ease),background 280ms ease,box-shadow 280ms ease,border-color 280ms ease}
.fx-press.fx-pressed{scale:.975}.fx-press{transition:scale 200ms var(--fx-ease)}.primary-btn>span,.desktop-cta>span,.journal-cta>span,.text-link>span{transition:translate 300ms var(--fx-ease)}
.wa-topics button[aria-pressed=true]{box-shadow:0 3px 10px #4057390b}.wa-message{transition:background 300ms ease,border-color 300ms ease}.wa-message.fx-message-updated{border-color:#b5c29a;background:#e8eddb}
.journal-tabs{position:relative}.journal-tabs.fx-has-marker button[aria-selected=true]{border-bottom-color:transparent}.fx-tab-marker{height:2px;position:absolute;bottom:-1px;left:0;background:#d9ddb7;pointer-events:none;transform-origin:left;transition:transform 420ms var(--fx-ease),width 420ms var(--fx-ease)}
.journal-image img{transition:transform 1000ms var(--fx-ease)}.journal-cta{transition:color 250ms}.journal-controls button:active{scale:.92}
.process-step .step-icon{transition:background 400ms,box-shadow 400ms,transform 450ms var(--fx-ease)}.process-step.fx-seen .step-icon{background:#e7ecdd;box-shadow:0 0 0 5px #7588590a}.process-step small{transition:color 250ms}
.testimonial-card .quote{transition:transform 500ms var(--fx-ease),color 400ms}.guide-item{transition:background 350ms,padding-left 350ms var(--fx-ease)}.guide-item .guide-arrow{transition:right 350ms var(--fx-ease),color 350ms}.faq-list details{transition:background 350ms,border-color 350ms}.faq-list details[open]{background:#f2f1e5;border-color:#bdc7ad}.faq-list summary{cursor:pointer}.faq-list details p{overflow:hidden}
.bottom-nav a>span{position:relative;padding:5px 12px;border-radius:20px;transition:background 280ms,color 280ms,transform 350ms var(--fx-ease)}.bottom-nav a.active>span{background:#e6ebdd;transform:translateY(-2px)}.bottom-nav small{transition:color 250ms}
.motion-control{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid #d4dac8;border-radius:999px;color:#65725c;padding:9px 13px;min-height:38px;font-size:10px;margin-top:8px}.motion-control:before{content:'';width:6px;height:6px;border-radius:50%;background:#799267}.motion-control[aria-pressed=true]:before{background:#a19e8b}
@media(hover:hover) and (pointer:fine){
 .fx-card:hover{transform:perspective(1000px) translateY(-5px) rotateX(var(--fx-rx)) rotateY(var(--fx-ry));box-shadow:0 22px 46px #2d40231a;border-color:#a8b391}.fx-card:hover:before{opacity:1}
 .service-card:hover img{transform:scale(1.055);filter:saturate(1.07)}.service-card:hover .service-open{transform:rotate(-35deg);box-shadow:0 4px 13px #2846241f}
 .primary-btn:hover,.desktop-cta:hover{transform:translateY(-3px);box-shadow:0 10px 25px #29422422}.primary-btn:hover>span,.desktop-cta:hover>span,.journal-cta:hover>span,.text-link:hover>span{translate:3px -2px}
 .outline-btn:hover{background:#e7ebdf;transform:translateY(-2px)}.journal-image:hover img{transform:scale(1.035)}.journal-controls button:hover{transform:translateY(-3px)}
 .process-step:hover .step-icon{transform:rotate(-7deg) scale(1.06);background:#dce6cd}.process-step:hover small{color:#526d3d}
 .testimonial-card:hover .quote{transform:translateY(-4px) rotate(-7deg);color:#6e8158}
 .instagram-grid a:hover img{transform:scale(1.055)}.instagram-grid a span{transition:translate 500ms var(--fx-ease)}.instagram-grid a:hover span{translate:0 -5px}
 .guide-item:hover{background:#e9eddf80;padding-left:17px}.guide-item:hover .guide-arrow{right:2px;color:#608142}
 .wa-send:hover{box-shadow:0 9px 21px #2c4b3226}.wa-studio:hover{transform:translateY(-5px) rotate(0deg);box-shadow:0 25px 55px #3e50341e}.wa-studio{transition:transform 500ms var(--fx-ease),box-shadow 500ms var(--fx-ease)}
}
@media(hover:none),(pointer:coarse){
 .service-card:active{scale:.985}.service-card{transition:scale 180ms var(--fx-ease),box-shadow 250ms}.service-card:active .service-open{transform:rotate(-30deg)}.service-card:active img{transform:scale(1.035)}
 .journal-controls button,.service-controls button{min-width:44px;min-height:44px}.service-controls{grid-template-columns:44px 1fr 44px}
 .wa-topics button{min-height:42px}.journal-tabs button{min-height:60px}.guide-item:active{background:#e9eddf}
}
@media(prefers-reduced-motion:no-preference){
 html:not([data-motion=off]) .mobile-menu.open .menu-links a{animation:fx-menu-in 450ms var(--fx-ease) both;animation-delay:calc(var(--fx-order,0) * 30ms)}
 @keyframes fx-menu-in{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
}
html[data-motion=off]{scroll-behavior:auto!important}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html[data-motion=off] .reveal{opacity:1!important;transform:none!important}html[data-motion=off] .fx-ripple{display:none}html[data-motion=off] .fx-card:hover,html[data-motion=off] .wa-studio:hover{transform:none}html[data-motion=off] .fx-pressed{scale:1}html[data-motion=off] .reading-progress{display:none}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.fx-card:hover,.wa-studio:hover{transform:none}.fx-pressed{scale:1}.reading-progress{display:none}}
/* Keep the service action anchored while containing its ripple. */
.service-open.fx-press{position:absolute}
