:root{
  --vif30-navy:#0d263d;
  --vif30-navy2:#153f61;
  --vif30-blue:#225d86;
  --vif30-orange:#f26a21;
  --vif30-orange2:#ff934f;
  --vif30-green:#91c93d;
  --vif30-white:#ffffff;
  --vif30-muted:#b9c8d5;
}

/* Hide the old Loveus/Elementor footer only while V30 is active. */
body.vif30-active footer.main-footer,
body.vif30-active .main-footer,
body.vif30-active .footer-style-one,
body.vif30-active .footer-style-two,
body.vif30-active .footer-style-three,
body.vif30-active .elementor-214,
body.vif30-active .elementor-211{
  display:none!important;
}

body.vif30-active #vif30-footer{display:block!important}

.vif30-footer{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  margin-top:0;
  color:#fff;
  background:
    radial-gradient(circle at 12% 18%,rgba(145,201,61,.10),transparent 25%),
    radial-gradient(circle at 88% 20%,rgba(242,106,33,.13),transparent 27%),
    linear-gradient(145deg,#0a2237 0%,#0f304c 48%,#123b59 100%);
  font-family:inherit;
}

.vif30-footer *{box-sizing:border-box}
.vif30-shell{width:min(1320px,92vw);margin:0 auto}
.vif30-glow{position:absolute;border-radius:50%;filter:blur(3px);pointer-events:none;z-index:-1;opacity:.8}
.vif30-glow-one{width:300px;height:300px;left:-130px;bottom:10%;background:radial-gradient(circle,rgba(145,201,61,.14),transparent 68%);animation:vif30Float 8s ease-in-out infinite}
.vif30-glow-two{width:380px;height:380px;right:-170px;top:14%;background:radial-gradient(circle,rgba(242,106,33,.16),transparent 68%);animation:vif30Float 10s ease-in-out infinite reverse}

.vif30-top{padding:44px 0 40px;border-bottom:1px solid rgba(255,255,255,.09);background:linear-gradient(90deg,rgba(255,255,255,.025),rgba(255,255,255,.06),rgba(255,255,255,.025))}
.vif30-cta-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center}
.vif30-kicker{display:inline-flex;align-items:center;gap:9px;color:#ffc39c;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.vif30-kicker:before{content:"";width:28px;height:2px;background:linear-gradient(90deg,var(--vif30-orange),#ffb27e)}
.vif30-cta-copy h2{margin:8px 0 8px!important;color:#fff!important;font-size:clamp(30px,3.2vw,47px)!important;line-height:1.08!important;letter-spacing:-.025em}
.vif30-cta-copy p{max-width:850px;margin:0!important;color:#c8d5df!important;font-size:16px!important;line-height:1.6!important}
.vif30-cta-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.vif30-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:13px 19px;border-radius:12px;text-decoration:none!important;font-weight:900;font-size:13px;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.vif30-btn:hover{transform:translateY(-2px)}
.vif30-btn-primary{color:#fff!important;background:linear-gradient(135deg,var(--vif30-orange2),var(--vif30-orange));box-shadow:0 12px 26px rgba(242,106,33,.25)}
.vif30-btn-primary:hover{box-shadow:0 17px 32px rgba(242,106,33,.34)}
.vif30-btn-ghost{color:#fff!important;border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.05);backdrop-filter:blur(6px)}
.vif30-btn-ghost:hover{background:rgba(255,255,255,.10)}

.vif30-main{padding:54px 0 46px}
.vif30-grid{display:grid;grid-template-columns:minmax(320px,1.35fr) repeat(2,minmax(180px,.72fr)) minmax(300px,1fr);gap:42px}
.vif30-logo-link{display:flex;align-items:center;gap:15px;color:#fff!important;text-decoration:none!important}
.vif30-logo-img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:18px;padding:4px;box-shadow:0 12px 26px rgba(0,0,0,.15)}
.vif30-logo-fallback{width:66px;height:66px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#f47b2b,#df5414);box-shadow:0 12px 26px rgba(242,106,33,.22)}
.vif30-logo-fallback span{font-size:22px;font-weight:900;color:#fff}
.vif30-logo-link strong{display:block;font-size:21px;line-height:1.2;color:#fff}
.vif30-logo-link span{display:block;margin-top:4px;color:#9fb4c4;font-size:12px;line-height:1.45}
.vif30-brand-copy{max-width:430px;margin:20px 0 18px!important;color:#b9c8d5!important;font-size:14px!important;line-height:1.7!important}
.vif30-social{display:flex;gap:9px}
.vif30-social a{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;color:#fff!important;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);text-decoration:none!important;transition:.22s ease}
.vif30-social a:hover{transform:translateY(-3px) rotate(-3deg);background:linear-gradient(135deg,#ff8d45,#f26a21);border-color:transparent;box-shadow:0 10px 20px rgba(242,106,33,.22)}
.vif30-social .dashicons{font-size:19px;width:19px;height:19px}

.vif30-col h3,.vif30-contact h3{position:relative;margin:0 0 19px!important;padding-bottom:12px;color:#fff!important;font-size:17px!important;font-weight:900!important}
.vif30-col h3:after,.vif30-contact h3:after{content:"";position:absolute;left:0;bottom:0;width:38px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--vif30-orange),var(--vif30-green))}
.vif30-col>a{display:block;width:max-content;max-width:100%;margin:0 0 11px;color:#b9c8d5!important;text-decoration:none!important;font-size:14px;line-height:1.45;transition:.2s ease}
.vif30-col>a:before{content:"→";display:inline-block;margin-right:7px;color:#7fa1b9;transition:.2s ease}
.vif30-col>a:hover{color:#fff!important;transform:translateX(3px)}
.vif30-col>a:hover:before{color:var(--vif30-orange)}

.vif30-contact-item{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;margin:0 0 12px;padding:10px 11px;border-radius:13px;color:#fff!important;text-decoration:none!important;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06);transition:.2s ease}
.vif30-contact-item:hover{background:rgba(255,255,255,.075);border-color:rgba(242,106,33,.22);transform:translateX(2px)}
.vif30-contact-item>.dashicons{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:rgba(242,106,33,.12);color:#ffa66f;font-size:18px;line-height:36px}
.vif30-contact-item small{display:block;color:#90a7b8;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.vif30-contact-item strong{display:block;margin-top:2px;color:#eaf2f7;font-size:13px;line-height:1.4}
.vif30-compliance{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}
.vif30-compliance a{padding:7px 10px;border-radius:999px;color:#dbe9f2!important;background:rgba(145,201,61,.08);border:1px solid rgba(145,201,61,.17);text-decoration:none!important;font-size:10px;font-weight:900;letter-spacing:.03em;transition:.2s ease}
.vif30-compliance a:hover{color:#fff!important;background:rgba(145,201,61,.18);transform:translateY(-2px)}

.vif30-bottom{padding:18px 0;border-top:1px solid rgba(255,255,255,.08);background:rgba(4,17,29,.25)}
.vif30-bottom-grid{display:flex;align-items:center;justify-content:space-between;gap:20px}
.vif30-bottom p{margin:0!important;color:#8399aa!important;font-size:11px!important}
.vif30-bottom-links{display:flex;gap:18px;flex-wrap:wrap}
.vif30-bottom-links a{color:#9eb0be!important;text-decoration:none!important;font-size:11px;font-weight:700}
.vif30-bottom-links a:hover{color:#fff!important}

@keyframes vif30Float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

@media(max-width:1050px){
  .vif30-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vif30-brand{grid-column:1/-1}
  .vif30-cta-grid{grid-template-columns:1fr}
  .vif30-cta-actions{justify-content:flex-start}
}

@media(max-width:680px){
  .vif30-top{padding:34px 0 32px}
  .vif30-main{padding:42px 0 34px}
  .vif30-grid{grid-template-columns:1fr;gap:32px}
  .vif30-brand{grid-column:auto}
  .vif30-cta-copy h2{font-size:32px!important}
  .vif30-bottom-grid{display:block}
  .vif30-bottom-links{margin-top:10px}
}
