/* FlowButton visual and interaction adapted to semantic links and native form buttons. */
.flow-button,.header-contact.flow-button,.text-link.flow-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:54px;padding:14px 38px;overflow:hidden;isolation:isolate;border:1.5px solid var(--yellow);border-radius:100px;background:transparent;color:var(--yellow);font-family:inherit;font-size:14px;font-weight:650;line-height:1.35;text-align:center;white-space:nowrap;cursor:pointer;transition:border-color .6s cubic-bezier(.23,1,.32,1),color .6s cubic-bezier(.23,1,.32,1),border-radius .6s cubic-bezier(.23,1,.32,1),transform .25s}
.flow-button .flow-label{position:relative;z-index:2;display:block;transform:translateX(-9px);transition:transform .8s cubic-bezier(.16,1,.3,1);pointer-events:none}
.flow-button .flow-fill{position:absolute;top:50%;left:50%;width:145%;aspect-ratio:1;background:var(--yellow);border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(0);transition:transform .8s cubic-bezier(.19,1,.22,1),opacity .3s;z-index:1;pointer-events:none}
.flow-button svg.flow-arrow{position:absolute;width:18px;height:18px;z-index:3;stroke:currentColor;fill:none;transition:transform .8s cubic-bezier(.34,1.56,.64,1);pointer-events:none}
.flow-button .flow-arrow-in{left:17px;transform:translateX(-65px)}.flow-button .flow-arrow-out{right:17px;transform:translateX(0)}
.flow-button-secondary,.header-contact.flow-button,.text-link.flow-button-secondary{border-color:#606653;color:var(--text)}
.header-contact.flow-button{min-height:44px;font-size:13px;padding:11px 34px}
.lead-form .flow-button{justify-content:center;background:var(--yellow);color:var(--deep)}
.lead-form .flow-button .flow-fill{background:var(--text)}
.flow-button:focus-visible{border-color:transparent;border-radius:12px;color:var(--deep);outline:2px solid var(--yellow);outline-offset:5px}
.flow-button:focus-visible .flow-label{transform:translateX(9px)}.flow-button:focus-visible .flow-fill{opacity:1;transform:translate(-50%,-50%) scale(1)}.flow-button:focus-visible .flow-arrow-in{transform:translateX(0)}.flow-button:focus-visible .flow-arrow-out{transform:translateX(65px)}
@media(hover:hover){.flow-button:hover,.header-contact.flow-button:hover,.text-link.flow-button:hover{border-color:transparent;border-radius:12px;color:var(--deep);background:transparent;transform:none}.flow-button:hover .flow-label{transform:translateX(9px)}.flow-button:hover .flow-fill{opacity:1;transform:translate(-50%,-50%) scale(1)}.flow-button:hover .flow-arrow-in{transform:translateX(0)}.flow-button:hover .flow-arrow-out{transform:translateX(65px)}.lead-form .flow-button:hover{background:var(--yellow)}}
.flow-button:active{transform:scale(.96);border-radius:12px}
@media(max-width:767px){.flow-button,.hero.hero-photo .hero-actions .button,.text-link.flow-button{padding:14px 35px;font-size:13px}.header-contact.flow-button{font-size:12px;min-height:40px;padding:10px 27px}.header-contact.flow-button svg.flow-arrow{width:14px;height:14px}.header-contact.flow-button .flow-arrow-in{left:10px}.header-contact.flow-button .flow-arrow-out{right:10px}.header{gap:9px}.instagram-link.flow-button{font-size:12px;padding-inline:30px}.hero.hero-photo .hero-actions{gap:14px}}
@media(max-width:370px){.header-contact.flow-button{font-size:11px;padding-inline:24px}.header .brand,.header .brand img{width:95px}.header{padding-inline:16px;gap:6px}.menu-button{width:40px;height:40px}.instagram-link.flow-button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.flow-button,.flow-button *{transition:none!important}.flow-button:active{transform:none}}

.flow-button .flow-label.has-brand{display:inline-flex;align-items:center;gap:9px}.flow-button .flow-label .brand-icon{width:18px;height:18px;flex:none}.footer-social .brand-icon{width:21px;height:21px}.contact-channels a.has-brand{grid-template-columns:30px minmax(0,1fr) 24px;column-gap:12px}.contact-channels a.has-brand>.channel-brand{grid-column:1;grid-row:1/3;width:28px;height:28px}.contact-channels a.has-brand>span,.contact-channels a.has-brand>strong{grid-column:2;min-width:0;overflow-wrap:anywhere}.contact-channels a.has-brand>svg:not(.channel-brand){grid-column:3}.whatsapp-continue{display:inline-flex;align-items:center;gap:6px}.whatsapp-continue svg{width:17px;height:17px}.instagram-link.flow-button{max-width:100%}
