/* ============================================================
   SIMPLIFIED FOOTER  (prefix: sf-)  — shared by every page
   Minimal contact CTA + inline social pills + slim copyright.
   Theme-aware (dark default / light under tp-theme-light).
   ============================================================ */
.sf{
   /* match the site theme: --tp-common-black #020B18 dark, light surface for light theme */
   --sf-bg:#020B18; --sf-ink:#F0F0F6; --sf-mut:#8b93a6;
   --sf-line:rgba(255,255,255,.10); --sf-panel:rgba(255,255,255,.045); --sf-acc:#436FF5;
   background:var(--sf-bg); color:var(--sf-ink);
   padding:100px 0 34px; position:relative; overflow:hidden;
   font-family:var(--tp-ff-body,'Inter',-apple-system,sans-serif);
}
html[tp-theme="tp-theme-light"] .sf{
   --sf-bg:#f4f7fc; --sf-ink:#141a2e; --sf-mut:#586079;
   --sf-line:rgba(20,32,68,.12); --sf-panel:rgba(20,32,68,.045);
}
.sf *{box-sizing:border-box;}
.sf-wrap{max-width:1240px; margin:0 auto; padding:0 24px; position:relative; z-index:1;}

.sf-top{display:flex; flex-wrap:wrap; gap:44px; justify-content:space-between; align-items:flex-end;
   padding-bottom:54px; border-bottom:1px solid var(--sf-line);}
.sf-eyebrow{display:inline-flex; align-items:center; gap:12px; font-size:12px; letter-spacing:.24em;
   text-transform:uppercase; color:var(--sf-mut); font-weight:600;}
.sf-eyebrow::before{content:""; width:26px; height:1px; background:var(--sf-acc);}
.sf-title{font-size:clamp(30px,4.6vw,56px); line-height:1.04; font-weight:500; letter-spacing:-.02em;
   margin:18px 0 0; color:var(--sf-ink);}

.sf-socials{display:flex; gap:12px; flex-wrap:wrap;}
.sf-social{display:inline-flex; align-items:center; gap:10px; padding:13px 22px; border-radius:999px;
   border:1px solid var(--sf-line); background:var(--sf-panel); color:var(--sf-ink);
   text-decoration:none; font-size:14px; font-weight:500; white-space:nowrap;
   transition:transform .35s cubic-bezier(.4,.8,.3,1), background .35s, color .35s, border-color .35s;}
.sf-social svg{width:18px; height:18px; flex:0 0 auto;}
.sf-social i{font-size:17px; line-height:1; flex:0 0 auto;}
.sf-social:hover{background:var(--sf-acc); color:#ffffff; border-color:transparent; transform:translateY(-4px);}

.sf-bottom{display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between; align-items:center;
   padding-top:26px; color:var(--sf-mut); font-size:13px;}
.sf-bottom a{color:var(--sf-mut); text-decoration:none; transition:color .3s;}
.sf-bottom a:hover{color:var(--sf-acc);}

/* subtle animated AURORA gradient behind the footer, minimal opacity */
.sf{--sf-g1:rgba(188,231,12,.14); --sf-g2:rgba(9,137,255,.14); --sf-g3:rgba(139,123,255,.12);}
html[tp-theme="tp-theme-light"] .sf{--sf-g1:rgba(37,99,235,.12); --sf-g2:rgba(9,137,255,.10); --sf-g3:rgba(139,123,255,.10);}
.sf-bg{position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden;}
.sf-bg::before{content:""; position:absolute; inset:-35%; opacity:.55;
   background:
      radial-gradient(38% 55% at 18% 32%, var(--sf-g1), transparent 60%),
      radial-gradient(42% 50% at 82% 22%, var(--sf-g2), transparent 60%),
      radial-gradient(46% 60% at 62% 88%, var(--sf-g3), transparent 62%);
   filter:blur(46px); animation:sf-aurora 20s ease-in-out infinite alternate;}
.sf-bg::after{content:""; position:absolute; inset:0;
   background:linear-gradient(115deg, transparent 42%, var(--sf-g2) 50%, transparent 58%);
   background-size:280% 100%; opacity:.35; mix-blend-mode:screen;
   animation:sf-sheen 14s linear infinite;}
@keyframes sf-aurora{
   0%{transform:translate(0,0) scale(1) rotate(0deg);}
   50%{transform:translate(3%,-4%) scale(1.18) rotate(4deg);}
   100%{transform:translate(-3%,3%) scale(1.08) rotate(-3deg);}}
@keyframes sf-sheen{from{background-position:180% 0;} to{background-position:-80% 0;}}
@media (prefers-reduced-motion:reduce){.sf-bg::before,.sf-bg::after{animation:none;}}

@media (max-width:768px){
   .sf{padding:70px 0 30px;}
   .sf-top{flex-direction:column; align-items:flex-start; gap:30px; padding-bottom:40px;}
   .sf-bottom{flex-direction:column; text-align:center; justify-content:center;}
}

/* off-canvas (hamburger) menu social icons -> Font Awesome brand icons */
.tp-offcanvas-social-2 ul li a i{font-size:17px; line-height:38px;}
