/* ============================================================
   footer — site footer (shared on every page)
   Rename + reorganize + dedupe only. Values byte-identical.
   ============================================================ */

/* --- Footer shell --- */
.site-footer-root{
  position:relative;overflow:hidden;background:#060709;color:#ECEFF4;font-family:'Fredoka',sans-serif;border-top:1px solid rgba(255,255,255,.08);padding:clamp(3.5rem,7vh,5.5rem) clamp(1.5rem,5vw,5rem) 2.4rem;margin-top:auto;
}

/* --- Decorative backdrop (aurora line, glow, particles) --- */
.site-footer-aurora{
  position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#7B5CFF 25%,#2FD4BE 55%,#5B8DEF 80%,transparent);background-size:200% 100%;animation:footAurora 9s linear infinite;opacity:.8;
}
.site-footer-glow{
  position:absolute;top:-90px;left:15%;right:15%;height:200px;background:radial-gradient(ellipse at 50% 0%,rgba(91,141,239,.16),transparent 70%);pointer-events:none;filter:blur(6px);
}
.site-footer-dots-layer{
  position:absolute;inset:0;pointer-events:none;
}
.site-footer-dot-1,.site-footer-dot-2,.site-footer-dot-3,.site-footer-dot-4,
.site-footer-dot-5,.site-footer-dot-6,.site-footer-dot-7,.site-footer-dot-8{
  position:absolute;border-radius:50%;
}
.site-footer-dot-1{
  top:22%;right:6%;width:5px;height:5px;background:var(--accent);animation:footDrift 7s ease-in-out infinite;
}
.site-footer-dot-2{
  top:64%;right:11%;width:3px;height:3px;background:#5B8DEF;animation:footDrift 9s ease-in-out .6s infinite;
}
.site-footer-dot-3{
  top:38%;right:28%;width:4px;height:4px;background:var(--accent);animation:footDrift 8s ease-in-out 1.2s infinite;
}
.site-footer-dot-4{
  top:78%;right:44%;width:3px;height:3px;background:#7B5CFF;animation:footDrift 10s ease-in-out .3s infinite;
}
.site-footer-dot-5{
  top:18%;left:34%;width:4px;height:4px;background:#5B8DEF;animation:footDrift 8.5s ease-in-out .9s infinite;
}
.site-footer-dot-6{
  top:70%;left:24%;width:5px;height:5px;background:var(--accent);animation:footDrift 7.5s ease-in-out 1.6s infinite;
}
.site-footer-dot-7{
  top:30%;left:8%;width:3px;height:3px;background:#7B5CFF;animation:footDrift 11s ease-in-out .2s infinite;
}
.site-footer-dot-8{
  top:52%;left:40%;width:3px;height:3px;background:var(--accent);animation:footDrift 9.5s ease-in-out 1.1s infinite;
}
.site-footer-orb-1{
  top:-50px;right:7%;width:190px;height:190px;background:radial-gradient(circle,rgba(47,212,190,.20),transparent 68%);animation:footOrb 16s ease-in-out infinite;
}
.site-footer-orb-2{
  bottom:-70px;left:11%;width:230px;height:230px;background:radial-gradient(circle,rgba(123,92,255,.17),transparent 68%);animation:footOrb 21s ease-in-out 2s infinite reverse;
}
.site-footer-orb-3{
  top:28%;left:44%;width:150px;height:150px;background:radial-gradient(circle,rgba(91,141,239,.13),transparent 70%);animation:footOrb 18s ease-in-out 1s infinite;
}
.site-footer-shape-1{
  top:13%;right:19%;width:46px;animation:footFloat 11s ease-in-out infinite;
}
.site-footer-shape-2{
  bottom:17%;right:35%;width:30px;animation:footFloat2 14s ease-in-out 1.4s infinite;
}
.site-footer-shape-3{
  top:57%;left:5%;width:38px;animation:footFloat 13s ease-in-out .8s infinite;
}
.site-footer-ring-1{
  top:25%;left:27%;width:54px;height:54px;border-color:rgba(47,212,190,.28);animation:footFloat2 12s ease-in-out .5s infinite;
}
.site-footer-ring-2{
  bottom:27%;left:48%;width:34px;height:34px;border-color:rgba(91,141,239,.26);animation:footFloat 15s ease-in-out 1.9s infinite;
}
.site-footer-plus-1{
  top:43%;right:4%;animation:footSpin 22s linear infinite;
}
.site-footer-plus-2{
  bottom:13%;left:34%;animation:footSpin 26s linear 2s infinite reverse;
}

/* --- Main grid --- */
.site-footer-grid{
  position:relative;display:flex;flex-wrap:wrap;gap:clamp(2.2rem,4vw,4rem);justify-content:space-between;align-items:flex-start;max-width:1760px;margin:0 auto;
}

/* --- Brand column (logo, contact, social) --- */
.site-footer-brand-col{
  order:1;display:flex;flex-direction:column;align-items:flex-start;gap:1.4rem;min-width:230px;
}
.site-footer-brand-wm{
  max-width:100%;
}
.site-footer-contact{
  display:flex;flex-direction:column;gap:.9rem;width:100%;
}
.site-footer-contact-link{
  display:flex;align-items:center;gap:.8rem;color:#C3C9D4;text-decoration:none;font-size:1rem;transition:color .2s;
}
.site-footer-contact-icon{
  width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;flex:none;
}
.site-footer-social-block{
  width:100%;
}
.site-footer-social-label{
  color:#8A93A6;font-size:1rem;margin-bottom:.7rem;
}
.site-footer-social-row{
  display:flex;gap:.6rem;
}
.site-footer-social-link{
  width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.14);color:#C3C9D4;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .25s;
}

/* --- Nav link columns --- */
.site-footer-nav{
  order:2;display:flex;flex-wrap:wrap;gap:clamp(2rem,3.5vw,3.5rem);
}
.site-footer-nav-title{
  margin:0 0 .3rem;font-size:.95rem;font-weight:600;color:#fff;
}
/* Column layout was an inline style="" repeated for every footer column; only
   min-width is editable data, so only that stays on the element. */
.foot-col{
  display:flex;flex-direction:column;gap:.85rem;
}
.site-footer-nav-link{
  color:#9BA3B4;font-size:1rem;text-decoration:none;transition:color .2s;
}

/* --- Newsletter / lead form --- */
.site-footer-form-col{
  order:3;flex:1;min-width:290px;max-width:380px;
}
.site-footer-form{
  border:1px solid rgba(255,255,255,.09);border-radius:22px;background:linear-gradient(160deg,rgba(20,24,32,.9),rgba(10,12,16,.9));padding:clamp(1.4rem,2.2vw,1.9rem);display:flex;flex-direction:column;gap:.85rem;backdrop-filter:blur(6px);
}
.site-footer-form-title{
  font-size:1.02rem;font-weight:600;color:#fff;margin-bottom:.2rem;
}
.site-footer-field{
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:.85rem 1.1rem;color:#ECEFF4;font-size:1rem;font-family:inherit;transition:all .2s;
}
.site-footer-submit{
  margin-top:.25rem;border:none;cursor:pointer;font-family:inherit;font-weight:600;font-size:1.05rem;color:#04140F;padding:.9rem 1.2rem;border-radius:999px;background:linear-gradient(90deg,#5B8DEF,#2FD4BE);transition:transform .25s,box-shadow .25s;
}
.site-footer-form-note{
  margin:.1rem 0 0;font-size:.9rem;color:var(--accent);display:none;
}

/* --- Bottom bar (copyright + credit) --- */
.site-footer-bottom{
  position:relative;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:1.8rem;border-top:1px solid rgba(255,255,255,.08);max-width:1760px;margin-inline:auto;
}
.site-footer-copy{
  color:#5A6273;font-size:.85rem;
}
.site-footer-credit{
  color:#5A6273;font-size:.8rem;letter-spacing:.05em;
}

/* --- Floating WhatsApp button --- */
/* Sits tighter into the corner on phones, full size from 40em up. */
.site-footer-wa-float{
  position:fixed;bottom:16px;left:16px;z-index:9990;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px -6px rgba(37,211,102,.6);transition:transform .25s ease,box-shadow .25s ease;
}
.site-footer-wa-pulse{
  position:absolute;inset:0;border-radius:50%;background:#25D366;opacity:.5;animation:strixWaPulse 2.4s ease-out infinite;z-index:-1;
}

/* --- Breakpoints --- */
@media (min-width: 40em) {
  .site-footer-wa-float{ bottom:22px;left:22px;width:60px;height:60px; }
}
