/* Florbloom Footer V2 — isolated to Florbloom Footer Builder */
.florbloom-custom-footer-active footer.site-footer:not(#florbloom-site-footer),
.florbloom-custom-footer-active #colophon:not(#florbloom-site-footer),
.florbloom-custom-footer-active .ast-footer-wrap,
.florbloom-custom-footer-active .elementor-location-footer,
.florbloom-custom-footer-active .site-footer:not(#florbloom-site-footer){display:none!important}
.fbf-footer,.fbf-footer *{box-sizing:border-box}
.fbf-footer{clear:both;width:100%;background:#fff;color:#26313a;border:0;font-family:inherit;padding:42px 24px 0}
.fbf-inner{max-width:1400px;margin:0 auto}
.fbf-card{background:#f5f8fb;border:1px solid #edf1f5;border-radius:26px;padding:46px 44px 50px}
.fbf-brand{padding-bottom:28px;margin-bottom:30px;border-bottom:1px solid #e1e7ed}
.fbf-brand-name{font-size:var(--fbf-brand-size);font-weight:850;letter-spacing:.085em;color:#8c66c7;line-height:1.2}
.fbf-brand-description{max-width:none;width:100%;margin:13px 0 0;font-size:var(--fbf-description-size);line-height:1.7;color:#4f5b68}
.fbf-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px}
.fbf-section{min-width:0}
.fbf-section>.fbf-section-heading{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 19px;color:#202832;font-size:var(--fbf-heading-size);font-weight:800;line-height:1.4;cursor:default}


.fbf-links,.fbf-contact{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.fbf-footer .fbf-links a,.fbf-footer .fbf-contact a,.fbf-contact p{font-size:var(--fbf-link-size);line-height:1.55;color:#43505d;text-decoration:none;overflow-wrap:anywhere;margin:0}
.fbf-footer .fbf-links a:hover,.fbf-footer .fbf-contact a:hover{color:#8863c5}
.fbf-social-title{margin:15px 0 0;color:#202832;font-size:var(--fbf-heading-size);font-weight:800}
.fbf-social{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fbf-footer .fbf-social a{width:37px;height:37px;display:flex;align-items:center;justify-content:center;border:1px solid #dce3ed;border-radius:50%;background:#fff;color:#8663bf;font-size:18px;font-weight:800;line-height:1;text-decoration:none;transition:background .2s,border-color .2s}
/* Social hover is controlled exclusively by the brand-icon rules below. */
.fbf-bottom{max-width:1400px;margin:0 auto;padding:23px 12px;text-align:center;color:#78828e;font-size:12px;line-height:1.5}

@media(min-width:651px) and (max-width:1100px){
 .fbf-footer{padding:30px 22px 0}
 .fbf-card{padding:34px 32px 38px;border-radius:22px}
 .fbf-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 28px}
 .fbf-brand-name{font-size:var(--fbf-tablet-brand-size)}
 .fbf-brand-description{font-size:var(--fbf-tablet-description-size)}
 .fbf-section>.fbf-section-heading,.fbf-social-title{font-size:var(--fbf-tablet-heading-size)}
 .fbf-footer .fbf-links a,.fbf-footer .fbf-contact a,.fbf-contact p{font-size:var(--fbf-tablet-link-size)}
}
@media(max-width:650px){
 .fbf-footer{padding:22px 13px 0}
 .fbf-card{padding:26px 21px 17px;border-radius:19px}
 .fbf-brand{padding-bottom:22px;margin-bottom:4px}
 .fbf-brand-name{font-size:var(--fbf-mobile-brand-size)}
 .fbf-brand-description{font-size:var(--fbf-mobile-description-size);line-height:1.65}
 .fbf-columns{display:block}
 .fbf-section{border-bottom:1px solid #e0e7ed}
 .fbf-section:last-child{border-bottom:0}
 .fbf-section>.fbf-section-heading{min-height:58px;margin:0;cursor:default;font-size:var(--fbf-mobile-heading-size)}
 .fbf-links,.fbf-contact{gap:11px;padding:0 0 20px}
 .fbf-footer .fbf-links a,.fbf-footer .fbf-contact a,.fbf-contact p{font-size:var(--fbf-mobile-link-size)}
 .fbf-social-title{font-size:var(--fbf-mobile-heading-size)}
 .fbf-bottom{padding:19px 8px;font-size:11px}
}

/* Footer V4: brand-colour social icons with a subtle lift on hover */
.fbf-footer .fbf-social{gap:13px;margin-top:4px}
.fbf-footer .fbf-social .fbf-social-link{
 width:45px;height:45px;flex:0 0 45px;border:0;border-radius:50%;
 display:inline-flex;align-items:center;justify-content:center;
 color:#fff;background:#8461bc;text-decoration:none;
 box-shadow:0 2px 6px rgba(20,30,45,.06);
 transition:transform .2s ease,box-shadow .2s ease;
}
.fbf-footer .fbf-social .fbf-social-instagram{background:linear-gradient(45deg,#f9bd42 0%,#ed4956 35%,#c13584 63%,#833ab4 100%)}
.fbf-footer .fbf-social .fbf-social-whatsapp{background:#25d366}
.fbf-footer .fbf-social .fbf-social-youtube{background:#ff0033}
.fbf-footer .fbf-social .fbf-social-facebook{background:#4267b2}
.fbf-footer .fbf-social .fbf-social-link:hover,
.fbf-footer .fbf-social .fbf-social-link:focus-visible{
 transform:translateY(-5px);
 box-shadow:0 9px 16px rgba(20,30,45,.18);
}
.fbf-footer .fbf-social .fbf-social-link:focus-visible{outline:2px solid #7555aa;outline-offset:4px}
.fbf-footer .fbf-social .fbf-social-svg{
 width:23px;height:23px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;
 stroke-linecap:round;stroke-linejoin:round;pointer-events:none;
}
.fbf-footer .fbf-social .fbf-social-svg-fill{fill:currentColor;stroke:none}
.fbf-footer .fbf-social .fbf-social-youtube .fbf-social-svg path{fill:#ff0033}
.fbf-footer .fbf-social .fbf-social-instagram .fbf-ig-dot{fill:currentColor;stroke:none}
@media(max-width:650px){.fbf-footer .fbf-social .fbf-social-link{width:42px;height:42px;flex-basis:42px}}
@media(prefers-reduced-motion:reduce){.fbf-footer .fbf-social .fbf-social-link{transition:none}}


/* V7: Lock both the circle AND the SVG glyph across all interaction states.
   V6 accidentally used fill:inherit on hover, overriding the Facebook SVG's
   fill:currentColor and changing the glyph colour. */
.fbf-footer .fbf-social .fbf-social-link:is(:hover,:focus,:focus-visible,:active){
 transform:translateY(-5px)!important;
 box-shadow:0 9px 16px rgba(20,30,45,.18)!important;
 filter:none!important;opacity:1!important;color:#fff!important;border-color:transparent!important;
}
.fbf-footer .fbf-social .fbf-social-instagram:is(:hover,:focus,:focus-visible,:active){background:linear-gradient(45deg,#f9bd42 0%,#ed4956 35%,#c13584 63%,#833ab4 100%)!important}
.fbf-footer .fbf-social .fbf-social-whatsapp:is(:hover,:focus,:focus-visible,:active){background:#25d366!important}
.fbf-footer .fbf-social .fbf-social-youtube:is(:hover,:focus,:focus-visible,:active){background:#ff0033!important}
.fbf-footer .fbf-social .fbf-social-facebook:is(:hover,:focus,:focus-visible,:active){background:#4267b2!important}
.fbf-footer .fbf-social .fbf-social-link .fbf-social-svg,
.fbf-footer .fbf-social .fbf-social-link:is(:hover,:focus,:focus-visible,:active) .fbf-social-svg{
 color:#fff!important;fill:none!important;stroke:currentColor!important;filter:none!important;opacity:1!important;
}
.fbf-footer .fbf-social .fbf-social-link .fbf-social-svg-fill,
.fbf-footer .fbf-social .fbf-social-link:is(:hover,:focus,:focus-visible,:active) .fbf-social-svg-fill{
 fill:#fff!important;stroke:none!important;
}
.fbf-footer .fbf-social .fbf-social-youtube .fbf-social-svg path,
.fbf-footer .fbf-social .fbf-social-youtube:is(:hover,:focus,:focus-visible,:active) .fbf-social-svg path{
 fill:#ff0033!important;stroke:none!important;
}
.fbf-footer .fbf-social .fbf-social-instagram .fbf-ig-dot,
.fbf-footer .fbf-social .fbf-social-instagram:is(:hover,:focus,:focus-visible,:active) .fbf-ig-dot{
 fill:#fff!important;stroke:none!important;
}
