/* ================================================================
   FOCUS FINANCE BROKERS — MASTER DESIGN SYSTEM
   Premium CSS by Senior UI/UX Team
   ================================================================ */

/* ── DESIGN TOKENS ── */
:root {
  /* ─ BRAND PALETTE ─ */
  --primary:       #2c4cfd;
  --primary-2:     #4a66ff;
  --primary-3:     #6a82ff;
  --primary-dark:  #1a35e0;
  --primary-bg:    rgba(44,76,253,.1);
  --primary-border:rgba(44,76,253,.25);

  /* ─ NEUTRALS ─ */
  --black:      #000000;
  --dark-1:     #080808;
  --dark-2:     #111111;
  --dark-3:     #1a1a1a;
  --dark-4:     #242424;
  --white:      #ffffff;
  --off-white:  #f5f5f5;
  --light-1:    #e8e8e8;
  --light-2:    #cccccc;

  /* ─ SEMANTIC ALIASES (used throughout existing CSS) ─ */
  --navy:        #000000;
  --navy-dark:   #000000;
  --navy-2:      #0a0a0a;
  --navy-3:      #111111;
  --gold:        #2c4cfd;
  --gold-2:      #4a66ff;
  --gold-3:      #6a82ff;
  --brand-blue:  #2c4cfd;
  --brand-blue-2:#4a66ff;
  --brand-blue-bg:rgba(44,76,253,.1);

  /* ─ SURFACE / TEXT ─ */
  --bg:       #ffffff;
  --surface:  #f5f5f5;
  --text:     #000000;
  --text-2:   #333333;
  --text-3:   #666666;
  --border:   rgba(0,0,0,.1);

  /* ─ GRADIENTS ─ */
  --grad-primary: linear-gradient(135deg,#2c4cfd 0%,#4a66ff 100%);
  --grad-gold:    linear-gradient(135deg,#2c4cfd 0%,#4a66ff 100%);
  --grad-blue:    linear-gradient(135deg,#2c4cfd 0%,#4a66ff 100%);
  --grad-navy:    linear-gradient(135deg,#000000 0%,#111111 100%);
  --grad-hero:    linear-gradient(135deg,#000000 0%,#050510 50%,#0a0a18 100%);

  /* ─ SHADOWS ─ */
  --sh-sm:  0 2px 12px rgba(0,0,0,.12);
  --sh-md:  0 8px 32px rgba(0,0,0,.2);
  --sh-lg:  0 24px 80px rgba(0,0,0,.32);
  --sh-xl:  0 40px 120px rgba(0,0,0,.45);
  --sh-glow:0 0 40px rgba(44,76,253,.4);
  --sh-blue:0 0 40px rgba(44,76,253,.35);

  /* ─ RADIUS ─ */
  --r-sm: 8px;  --r-md: 16px;  --r-lg: 24px;  --r-xl: 40px;

  /* ─ TRANSITIONS ─ */
  --ease: cubic-bezier(.25,.46,.45,.94);
  --ease-back: cubic-bezier(.175,.885,.32,1.275);
  --t-fast: .2s;  --t-med: .4s;  --t-slow: .7s;

  /* ─ SPACING ─ */
  --section-pad: 110px 24px;
  --max-w: 1240px;
}

/* ── RESET & BASE ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:auto;font-size:16px;overflow-x:hidden;}
body{
  font-family:'Inter',sans-serif;
  color:var(--text);background:var(--bg);
  line-height:1.65;overflow-x:hidden;
  cursor:none;-webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body.loading{overflow:hidden;}
img{max-width:100%;height:auto;display:block;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
button{cursor:none;border:none;background:none;font-family:inherit;}

/* ── TYPOGRAPHY ── */
h1,h2,h3,h4,h5{
  font-family:'Inter',sans-serif;
  line-height:1.15;color:var(--navy);letter-spacing:-.02em;
}
h1{font-size:clamp(2.4rem,5.5vw,4.5rem);font-weight:800;}
h2{font-size:clamp(1.8rem,3.5vw,3rem);font-weight:700;}
h3{font-size:clamp(1.2rem,2vw,1.6rem);font-weight:700;}
h4{font-size:1.15rem;font-weight:600;}
p{color:var(--text-2);line-height:1.75;font-weight:400;}
.overline,.section-tag{
  display:inline-block;font-size:.72rem;font-weight:700;
  letter-spacing:3px;text-transform:uppercase;
  color:var(--brand-blue);margin-bottom:14px;font-family:'Inter',sans-serif;
  padding:5px 14px;background:var(--brand-blue-bg);
  border-radius:var(--r-sm);border:1px solid rgba(44,76,253,.2);
}
.hl{color:var(--gold);}
.gradient-text{
  background:var(--grad-gold);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.gradient-text{
  background:var(--grad-gold);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.text-white{color:var(--white) !important;}
.text-muted{color:rgba(255,255,255,.6) !important;}

/* ── CUSTOM CURSOR ── */
.cursor-dot,.cursor-ring{
  position:fixed;top:0;left:0;pointer-events:none;z-index:99999;
  border-radius:50%;transform:translate(-50%,-50%);
}
.cursor-dot{
  width:8px;height:8px;background:var(--gold);
  transition:transform .1s var(--ease),opacity .3s;
}
.cursor-ring{
  width:44px;height:44px;
  border:1.5px solid rgba(44,76,253,.6);
  transition:transform .15s var(--ease),width .3s,height .3s,border-color .3s,opacity .3s;
}
body.cursor-hover .cursor-dot{transform:translate(-50%,-50%) scale(2.5);opacity:.6;}
body.cursor-hover .cursor-ring{width:64px;height:64px;border-color:rgba(44,76,253,.35);}
body.cursor-click .cursor-dot{transform:translate(-50%,-50%) scale(.6);}
@media(hover:none){.cursor-dot,.cursor-ring{display:none;}body{cursor:auto;}}

/* ── PAGE LOADER ── */
.page-loader{
  position:fixed;inset:0;z-index:99998;
  background:var(--navy);overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  transition:opacity .7s var(--ease),visibility .7s;
}
.page-loader.done{opacity:0;visibility:hidden;pointer-events:none;}

/* Animated background rings */
.page-loader::before,.page-loader::after{
  content:'';position:absolute;border-radius:50%;
  border:1px solid rgba(44,76,253,.2);
  animation:loaderRing 3s linear infinite;
}
.page-loader::before{width:400px;height:400px;animation-delay:0s;}
.page-loader::after{width:600px;height:600px;animation-delay:-1.5s;border-color:rgba(44,76,253,.1);}

/* Logo */
.loader-logo{
  width:160px;position:relative;z-index:1;
  background:rgba(255,255,255,.95);padding:12px 20px;border-radius:12px;
  animation:loaderLogoIn .6s var(--ease-back) both;
}

/* Tagline text */
.loader-text{
  font-family:'Inter',sans-serif;font-size:.7rem;font-weight:600;
  letter-spacing:5px;text-transform:uppercase;color:rgba(255,255,255,.3);
  margin-top:32px;margin-bottom:40px;position:relative;z-index:1;
  animation:loaderLogoIn .6s .1s var(--ease-back) both;
}

/* Progress bar */
.loader-track{
  width:180px;height:2px;background:rgba(255,255,255,.08);
  border-radius:2px;overflow:hidden;position:relative;z-index:1;
}
.loader-fill{
  height:100%;border-radius:2px;
  background:linear-gradient(90deg,var(--brand-blue),var(--gold));
  animation:loaderFill 1.4s var(--ease) forwards;
  box-shadow:0 0 12px rgba(44,76,253,.6);
}

/* Dots */
.loader-dots{
  display:flex;gap:8px;margin-top:28px;position:relative;z-index:1;
}
.loader-dots span{
  width:5px;height:5px;border-radius:50%;
  background:var(--brand-blue);opacity:.3;
  animation:loaderDot 1.2s ease infinite;
}
.loader-dots span:nth-child(2){animation-delay:.2s;background:var(--gold);}
.loader-dots span:nth-child(3){animation-delay:.4s;}

@keyframes loaderRing{
  0%{transform:scale(.8);opacity:0;}
  50%{opacity:1;}
  100%{transform:scale(1.4);opacity:0;}
}
@keyframes loaderLogoIn{
  from{transform:translateY(20px);opacity:0;}
  to{transform:translateY(0);opacity:1;}
}
@keyframes loaderFill{from{width:0;}to{width:100%;}}
@keyframes loaderDot{
  0%,80%,100%{transform:scale(1);opacity:.3;}
  40%{transform:scale(1.6);opacity:1;}
}

/* ── NAVBAR ── */
#navbar{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  padding:24px 40px;
  transition:background .4s var(--ease),padding .4s,box-shadow .4s,backdrop-filter .4s;
}
#navbar.scrolled{
  background:rgba(0,0,0,.94);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  padding:14px 40px;
  box-shadow:0 4px 32px rgba(0,0,0,.4);
  border-bottom:1px solid rgba(44,76,253,.15);
}
.nav-container{
  max-width:var(--max-w);margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  gap:32px;
}
.nav-logo img{height:50px;width:auto;transition:opacity var(--t-fast);}
.nav-logo:hover img{opacity:.8;}

/* Center nav */
.nav-menu{display:flex;align-items:center;gap:4px;}
.nav-link{
  font-size:.88rem;font-weight:500;color:rgba(255,255,255,.85);
  padding:8px 14px;border-radius:var(--r-sm);
  display:flex;align-items:center;gap:6px;
  transition:color var(--t-fast),background var(--t-fast);
  position:relative;white-space:nowrap;
}
.nav-link:hover,.nav-link.active{color:var(--gold);}
.nav-link.active::after{
  content:'';position:absolute;bottom:4px;left:14px;right:14px;
  height:2px;background:var(--gold);border-radius:2px;
}
.nav-arrow{font-size:.65rem;transition:transform var(--t-fast);}
.has-dropdown:hover .nav-arrow{transform:rotate(180deg);}

/* Right CTA */
.nav-right{display:flex;align-items:center;gap:16px;}
.btn-nav-cta{
  background:var(--grad-gold);color:#ffffff;
  font-family:'Inter',sans-serif;font-size:.85rem;font-weight:700;
  padding:11px 24px;border-radius:var(--r-sm);
  transition:transform var(--t-fast),box-shadow var(--t-fast),opacity var(--t-fast);
  white-space:nowrap;
}
.btn-nav-cta:hover{transform:translateY(-2px);box-shadow:var(--sh-glow);opacity:.92;}

/* ── MEGA MENU ── */
.has-dropdown{position:relative;}
/* Bridge the gap so mouse movement from nav item to dropdown doesn't lose hover */
.has-dropdown::after{
  content:'';position:absolute;top:100%;left:0;
  width:100%;height:20px;
}
.nav-mega{
  position:absolute;top:calc(100% + 16px);left:50%;
  transform:translateX(-50%) translateY(-12px);
  background:var(--white);border-radius:var(--r-lg);
  padding:32px;
  box-shadow:0 32px 80px rgba(0,0,0,.2);
  border:1px solid var(--border);
  opacity:0;visibility:hidden;
  transition:opacity .3s var(--ease),transform .3s var(--ease),visibility .3s;
  min-width:720px;z-index:200;
  pointer-events:none;
}
.has-dropdown:hover .nav-mega{
  opacity:1;visibility:visible;
  transform:translateX(-50%) translateY(0);
  pointer-events:auto;
}
.mega-header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:24px;padding-bottom:16px;
  border-bottom:1px solid var(--border);
}
.mega-header h4{font-size:.9rem;color:var(--navy);}
.mega-header a{font-size:.78rem;color:var(--gold);font-weight:600;}
.mega-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.mega-item{
  display:flex;align-items:center;gap:10px;
  padding:12px;border-radius:var(--r-sm);
  transition:background var(--t-fast),transform var(--t-fast);
}
.mega-item:hover{background:var(--bg);transform:translateX(4px);}
.mega-icon{
  width:36px;height:36px;border-radius:10px;
  background:var(--surface);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;color:var(--gold);
  transition:background var(--t-fast);
}
.mega-item:hover .mega-icon{background:var(--brand-blue-bg);color:var(--brand-blue);}
.mega-item span{font-size:.8rem;font-weight:500;color:var(--navy);line-height:1.3;}

/* ── MOBILE MENU ── */
.nav-hamburger{
  display:none;flex-direction:column;gap:6px;
  width:32px;cursor:none;padding:4px;
}
.nav-hamburger span{
  display:block;width:100%;height:2px;
  background:var(--white);border-radius:2px;
  transition:transform .35s var(--ease),opacity .35s,width .35s;
}
.nav-hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,6px);}
.nav-hamburger.open span:nth-child(2){opacity:0;width:0;}
.nav-hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-6px);}

.mobile-overlay{
  position:fixed;inset:0;z-index:999;
  background:rgba(0,0,0,.5);backdrop-filter:blur(4px);
  opacity:0;visibility:hidden;transition:all .35s;
}
.mobile-overlay.open{opacity:1;visibility:visible;}
.mobile-menu{
  position:fixed;top:0;right:-100%;z-index:1000;
  width:min(360px,100vw);height:100vh;
  background:var(--navy);
  padding:100px 40px 60px;
  display:flex;flex-direction:column;
  transition:right .45s cubic-bezier(.77,0,.175,1);
  overflow-y:auto;
}
.mobile-menu.open{right:0;}
.mobile-menu-close{
  position:absolute;top:24px;right:24px;z-index:2;
  width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.1);color:var(--white);
  border:none;cursor:pointer;font-size:1.1rem;
  transition:background .25s,transform .25s,color .25s;
}
.mobile-menu-close:hover{background:rgba(255,255,255,.2);transform:rotate(90deg);}
.mobile-menu .nav-link{
  color:var(--white);font-size:1.4rem;
  font-family:'Inter',sans-serif;font-weight:700;
  padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08);
  display:block;
}
.mobile-menu .btn-nav-cta{margin-top:32px;text-align:center;display:block;padding:16px;}
.mobile-sub{padding-left:16px;border-left:2px solid var(--gold);margin:8px 0 16px;}
.mobile-sub a{font-size:.9rem;color:rgba(255,255,255,.65);display:block;padding:8px 0;}

@media(max-width:1024px){
  .nav-hamburger{display:flex;}
  .nav-menu,.btn-nav-cta{display:none;}
}
@media(max-width:600px){
  #navbar{padding:16px 20px;}
  #navbar.scrolled{padding:12px 20px;}
}

/* ── BUTTONS ── */
.btn,
.btn-gold,.btn-outline,.btn-white,.btn-dark{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:'Inter',sans-serif;font-weight:700;font-size:.92rem;
  border-radius:var(--r-sm);padding:15px 32px;
  border:1.5px solid transparent;
  transition:transform var(--t-fast) var(--ease-back),box-shadow var(--t-fast),
             opacity var(--t-fast),background .25s,border-color .25s,color .25s;
  white-space:nowrap;position:relative;overflow:hidden;
  cursor:pointer;text-align:center;line-height:1.2;
}
.btn::before,
.btn-gold::before,.btn-outline::before,.btn-white::before,.btn-dark::before{
  content:'';position:absolute;inset:0;
  background:rgba(255,255,255,.12);
  transform:translateX(-100%);transition:transform .4s var(--ease);
  pointer-events:none;
}
.btn:hover::before,
.btn-gold:hover::before,.btn-outline:hover::before,.btn-white:hover::before,.btn-dark:hover::before{transform:translateX(0);}
.btn:hover,
.btn-gold:hover,.btn-outline:hover,.btn-white:hover,.btn-dark:hover{transform:translateY(-3px);}
.btn-gold{background:var(--grad-gold);color:#ffffff;border-color:transparent;}
.btn-gold:hover{box-shadow:0 12px 40px rgba(44,76,253,.4);}
.btn-outline{background:transparent;border-color:var(--gold);color:var(--gold);}
.btn-outline:hover{background:rgba(44,76,253,.08);}
.btn-white{background:var(--white);color:var(--primary);border-color:transparent;}
.btn-white:hover{box-shadow:0 12px 32px rgba(255,255,255,.25);}
.btn-dark{background:var(--navy-2);color:var(--white);border-color:rgba(255,255,255,.1);}
.btn-lg{padding:18px 44px;font-size:1rem;}
.btn-sm{padding:10px 22px;font-size:.82rem;}
.btn i,.btn-gold i,.btn-outline i,.btn-white i,.btn-dark i{transition:transform .3s var(--ease);}
.btn:hover i,
.btn-gold:hover i,.btn-outline:hover i,.btn-white:hover i,.btn-dark:hover i{transform:translateX(4px);}
.magnetic{transition:transform .4s var(--ease-back);}

/* ── SECTION LAYOUT ── */
.section{padding:var(--section-pad);}
.section-alt{background:var(--surface);}
.section-dark{background:var(--navy);}
.container{max-width:var(--max-w);margin:0 auto;width:100%;padding:0 24px;}
.section-head{text-align:center;margin-bottom:72px;}
.section-head h2{margin-bottom:16px;}
.section-head p{max-width:580px;margin:0 auto;}
.divider{width:56px;height:3px;background:var(--grad-gold);border-radius:3px;margin:18px auto 0;}
.divider-left{margin-left:0;}

/* ── GLASSMORPHISM ── */
.glass{
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.12);
}
.glass-light{
  background:rgba(255,255,255,.7);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.6);
}

/* ── FOOTER ── */
.site-footer,footer{
  background:#0a1128;color:rgba(255,255,255,.7);padding:90px 0 0;
}
[data-theme="light"] .site-footer,
[data-theme="light"] footer{background:#0a1128 !important;}
.footer-grid,.footer-top{
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;
  gap:40px;padding-bottom:56px;
  border-bottom:1px solid rgba(255,255,255,.07);
  align-items:start;
}
.footer-col{padding-bottom:8px;}
.footer-brand{padding-bottom:8px;}
.footer-logo{height:44px;margin-bottom:22px;display:block;}
.footer-brand img{
  height:40px;margin-bottom:22px;display:block;
  background:rgba(255,255,255,.95);
  padding:8px 14px;border-radius:10px;
}
.footer-col > p,.footer-brand p{font-size:.875rem;line-height:1.75;max-width:320px;margin-bottom:26px;color:rgba(255,255,255,.55);}
.footer-socials{display:flex;flex-wrap:wrap;gap:10px;}
.footer-socials a{
  width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(255,255,255,.12);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.55);font-size:.8rem;
  transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast),transform var(--t-fast);
}
.footer-socials a:hover{
  background:var(--gold);border-color:var(--gold);
  color:var(--navy);transform:translateY(-3px);
}
.footer-col h4,.footer-col h5{
  color:var(--white);font-family:'Inter',sans-serif;
  font-size:.88rem;font-weight:700;margin-bottom:22px;
  letter-spacing:.5px;text-transform:uppercase;
}
.footer-col ul li{margin-bottom:10px;}
.footer-col ul li a,.footer-col ul a{
  font-size:.84rem;color:rgba(255,255,255,.5);
  transition:color var(--t-fast),padding-left var(--t-fast);display:inline-block;
}
.footer-col ul li a:hover,.footer-col ul a:hover{color:var(--gold);padding-left:6px;}
/* Contact list in footer */
.footer-contact{display:flex;flex-direction:column;gap:14px;}
.footer-contact li{display:flex;align-items:flex-start;gap:12px;font-size:.83rem;color:rgba(255,255,255,.5);line-height:1.5;}
.footer-contact li i{color:var(--brand-blue);font-size:.85rem;margin-top:2px;flex-shrink:0;}
.footer-contact li a{color:rgba(255,255,255,.5);transition:color .2s;}
.footer-contact li a:hover{color:var(--gold);}
.footer-contact li strong,.footer-contact-item strong{display:block;color:rgba(255,255,255,.85);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;}
/* Legacy contact item class */
.footer-contact-item{display:flex;gap:12px;margin-bottom:16px;align-items:flex-start;}
.footer-contact-item:last-child{margin-bottom:0;}
.footer-contact-item i{color:var(--brand-blue);font-size:.85rem;margin-top:3px;width:15px;text-align:center;flex-shrink:0;}
.footer-contact-item span{font-size:.83rem;color:rgba(255,255,255,.55);line-height:1.6;}
.footer-contact-item a{font-size:.83rem;color:rgba(255,255,255,.55);transition:color .2s;word-break:break-word;}
.footer-contact-item a:hover{color:var(--gold);}

/* ════════════════════════════════════════════════════════════════
   THEME TOGGLE BUTTON
   ════════════════════════════════════════════════════════════════ */
.theme-toggle{
  width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.8);
  font-size:.85rem;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  transition:background .2s,border-color .2s,color .2s,transform .35s var(--ease-back);
  flex-shrink:0;
}
.theme-toggle:hover{
  background:var(--primary);border-color:var(--primary);
  color:#fff;transform:rotate(20deg);
}
[data-theme="light"] .theme-toggle{
  border-color:rgba(15,23,42,.18);
  background:rgba(15,23,42,.07);
  color:#334155;
}
[data-theme="light"] .theme-toggle:hover{
  background:var(--primary);border-color:var(--primary);color:#fff;
}

/* ════════════════════════════════════════════════════════════════
   LIGHT MODE — FULL OVERRIDES
   ════════════════════════════════════════════════════════════════ */

/* ── Base — CSS variable overrides (handles inline style="background:var(--navy-dark)") ── */
[data-theme="light"]{
  --navy-dark:   #eef2ff;
  --navy-2:      #f0f4ff;
  --navy-3:      #e8eeff;
  --surface-2:   #ffffff;
  --grad-hero:   linear-gradient(135deg,#dde8ff 0%,#e8eeff 45%,#eef2ff 100%);
  --bg:          #f4f6fb;
  --surface:     #ffffff;
}
[data-theme="light"] body{background:#f4f6fb;color:#0f172a;}

/* ── Navbar ── */
[data-theme="light"] #navbar{
  background:rgba(255,255,255,.92) !important;
  border-bottom:1px solid rgba(15,23,42,.07) !important;
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
}
[data-theme="light"] #navbar.scrolled{
  background:rgba(255,255,255,.97) !important;
  box-shadow:0 4px 24px rgba(0,0,0,.08) !important;
}
[data-theme="light"] .nav-link{color:#1e293b !important;}
[data-theme="light"] .nav-link:hover,[data-theme="light"] .nav-link.active{color:var(--primary) !important;}
[data-theme="light"] .nav-arrow{color:#1e293b !important;}
[data-theme="light"] .nav-mega{
  background:#ffffff;
  border-color:rgba(15,23,42,.09);
  box-shadow:0 24px 64px rgba(0,0,0,.12);
}
[data-theme="light"] .mega-header{border-bottom-color:rgba(15,23,42,.07);}
[data-theme="light"] .mega-header h4{color:#0f172a;}
[data-theme="light"] .mega-header a{color:var(--primary);}
[data-theme="light"] .mega-item{color:#334155;}
[data-theme="light"] .mega-item:hover{background:rgba(44,76,253,.06);color:var(--primary);}
[data-theme="light"] .mega-icon{background:rgba(44,76,253,.08);}
[data-theme="light"] .mobile-menu{background:#ffffff;border-right-color:rgba(15,23,42,.08);}
[data-theme="light"] .mobile-menu .nav-link{color:#0f172a;border-bottom-color:rgba(15,23,42,.06);}
[data-theme="light"] .mobile-overlay{background:rgba(15,23,42,.4);}
[data-theme="light"] .nav-hamburger span{background:#0f172a;}
[data-theme="light"] .mobile-menu-close{background:rgba(15,23,42,.06);color:#0f172a;}
[data-theme="light"] .mobile-menu-close:hover{background:rgba(44,76,253,.12);color:var(--primary);}
[data-theme="light"] .mobile-sub a{color:#475569;}
[data-theme="light"] .mobile-sub{border-left-color:var(--primary);}

/* ── Page Loader ── */
[data-theme="light"] .page-loader{background:#f4f6fb;}
[data-theme="light"] .loader-text{color:#334155;}
[data-theme="light"] .loader-track{background:rgba(15,23,42,.1);}

/* ── Hero ── */
[data-theme="light"] .hero{background:linear-gradient(135deg,#dde8ff 0%,#e8eeff 45%,#eef2ff 100%);}
[data-theme="light"] .hero-overlay{opacity:.04;}
[data-theme="light"] .hero-content h1{color:#0f172a;}
[data-theme="light"] .hero-content p{color:#475569;}
[data-theme="light"] .hero-pill{background:rgba(44,76,253,.09);border-color:rgba(44,76,253,.22);color:var(--primary);}
[data-theme="light"] .hero-trust{border-top-color:rgba(15,23,42,.1);}
[data-theme="light"] .trust-badge{color:#64748b;}
[data-theme="light"] .hero-scroll span{color:rgba(15,23,42,.4);}
[data-theme="light"] .hero-card-float{
  background:#ffffff;border-color:rgba(15,23,42,.09);
  box-shadow:0 32px 80px rgba(0,0,0,.1);
}
[data-theme="light"] .hcf-label{color:#64748b;}
[data-theme="light"] .hcf-val{color:#0f172a;}
[data-theme="light"] .hcf-stat strong{color:var(--primary);}
[data-theme="light"] .hcf-stat span{color:#64748b;}
[data-theme="light"] .hcf-row{border-bottom-color:rgba(15,23,42,.08);}

/* ── Stats Bar ── */
[data-theme="light"] .stats-bar{background:#ffffff;border-bottom-color:rgba(15,23,42,.08);}
[data-theme="light"] .stat-bar-item{border-right-color:rgba(15,23,42,.08);}

/* ── Services Preview (homepage) ── */
[data-theme="light"] .services-preview{background:#f4f6fb;}
[data-theme="light"] .srv-card{
  background:#ffffff;border-color:rgba(15,23,42,.09);
  box-shadow:0 4px 20px rgba(0,0,0,.05);
}
[data-theme="light"] .srv-card:hover{box-shadow:0 24px 60px rgba(44,76,253,.12);}
[data-theme="light"] .srv-card h3{color:#0f172a;}
[data-theme="light"] .srv-card p{color:#475569;}
[data-theme="light"] .srv-link{color:var(--primary);}

/* ── About Preview ── */
[data-theme="light"] .about-preview{background:#ffffff;}
[data-theme="light"] .about-text-wrap h2{color:#0f172a;}
[data-theme="light"] .about-text-wrap p{color:#475569;}
[data-theme="light"] .about-feat strong{color:#0f172a;}
[data-theme="light"] .about-feat span{color:#64748b;}
[data-theme="light"] .about-feat-icon{background:rgba(44,76,253,.09);color:var(--primary);}
[data-theme="light"] .about-img-badge{background:var(--primary);color:#fff;}

/* ── Why Us ── */
[data-theme="light"] .why-us{background:linear-gradient(135deg,#eef2ff 0%,#e8eeff 100%);}
[data-theme="light"] .why-us-bg{opacity:.04;}
[data-theme="light"] .why-us .section-head h2{color:#0f172a !important;}
[data-theme="light"] .why-us .section-head p{color:#475569 !important;}
[data-theme="light"] .why-card{
  background:rgba(255,255,255,.75);
  border-color:rgba(15,23,42,.09);
  backdrop-filter:blur(8px);
}
[data-theme="light"] .why-card:hover{
  background:#ffffff;border-color:rgba(44,76,253,.25);
  box-shadow:0 20px 60px rgba(44,76,253,.1);
}
[data-theme="light"] .why-card h3{color:#0f172a;}
[data-theme="light"] .why-card p{color:#475569;}

/* ── Partners Strip ── */
[data-theme="light"] .partners-strip{background:#f4f6fb;border-top:1px solid rgba(15,23,42,.06);}
[data-theme="light"] .partner-tile{border-color:rgba(15,23,42,.09);}

/* ── Home CTA (keep blue — looks great on both modes) ── */
[data-theme="light"] .home-cta{background:linear-gradient(135deg,#2c4cfd 0%,#4a66ff 100%);}

/* ── Services Page ── */
[data-theme="light"] .svc-hero-v2{background:linear-gradient(135deg,#dde8ff 0%,#e8eeff 45%,#eef2ff 100%);}
[data-theme="light"] .shv2-grid{background-image:linear-gradient(rgba(44,76,253,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(44,76,253,.04) 1px,transparent 1px);}
[data-theme="light"] .shv2-left h1{color:#ffffff;}
[data-theme="light"] .shv2-sub{color:rgba(255,255,255,.8);}
[data-theme="light"] .shv2-stats{background:rgba(255,255,255,.7);border-color:rgba(15,23,42,.09);}
[data-theme="light"] .shv2-num{color:var(--primary);}
[data-theme="light"] .shv2-lbl{color:#64748b;}
[data-theme="light"] .shv2-vline{background:rgba(15,23,42,.1);}
[data-theme="light"] .shm-item{background:rgba(255,255,255,.7);border-color:rgba(15,23,42,.09);}
[data-theme="light"] .shm-item:hover{background:#ffffff;border-color:rgba(44,76,253,.25);}
[data-theme="light"] .shm-item>span{color:#475569;}
[data-theme="light"] .svc-tabbar{background:rgba(255,255,255,.9);border-bottom-color:rgba(15,23,42,.08);}
[data-theme="light"] .svc-tab{border-color:rgba(15,23,42,.12);color:#64748b;}
[data-theme="light"] .svc-tab:hover{background:rgba(44,76,253,.06);color:var(--primary);border-color:rgba(44,76,253,.2);}
[data-theme="light"] .svc-tab.active{background:var(--primary);border-color:var(--primary);color:#fff;}
[data-theme="light"] .svc-main-v2{background:#f4f6fb !important;}
[data-theme="light"] .svc-card-v2{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .svc-card-v2:hover{box-shadow:0 24px 64px rgba(44,76,253,.1);border-color:rgba(44,76,253,.25);}
[data-theme="light"] .scv2-top h3{color:#0f172a;}
[data-theme="light"] .scv2-body p{color:#475569;}
[data-theme="light"] .scv2-tags span{color:#334155;background:rgba(44,76,253,.07);border-color:rgba(44,76,253,.15);}
[data-theme="light"] .scv2-btn{background:rgba(44,76,253,.08);border-color:rgba(44,76,253,.2);color:var(--primary);}
[data-theme="light"] .scv2-btn:hover{background:var(--primary);color:#fff;}
[data-theme="light"] .svc-panel-hdr{border-bottom-color:rgba(15,23,42,.07);}
[data-theme="light"] .svc-panel-hdr-left h2{color:#0f172a;}
[data-theme="light"] .process-v2{background:#ffffff;border-color:rgba(15,23,42,.06);}
[data-theme="light"] .pv2-step h4{color:#0f172a;}
[data-theme="light"] .pv2-step p{color:#475569;}
[data-theme="light"] .pv2-icon{background:rgba(44,76,253,.08);border-color:rgba(44,76,253,.18);}

/* ── Contact Page — all colours handled in contact.css ── */

/* ── Footer stays dark in both modes ── */

/* ── Section headings ── */
[data-theme="light"] .section-head h2{color:#0f172a;}
[data-theme="light"] .section-head p{color:#475569;}
[data-theme="light"] .overline,[data-theme="light"] .section-tag{color:var(--primary);}

/* ── Dark-overlay sections need white headings even in light mode ── */
/* creds-section uses abs-positioned dark overlay so stays white */
.creds-section .section-head h2,
.creds-section .section-head p { color:#ffffff !important; }
.creds-section .section-tag { color:#93c5fd !important; background:rgba(255,255,255,.12) !important; border-color:rgba(255,255,255,.2) !important; }

/* partner-benefits uses inline bg which becomes flat #eef2ff in light mode — use dark text */
[data-theme="light"] .partner-benefits .section-head h2 { color:#0f172a !important; }
[data-theme="light"] .partner-benefits .section-head p { color:#475569 !important; }
[data-theme="light"] .partner-benefits .section-tag { color:var(--primary) !important; background:rgba(44,76,253,.08) !important; border-color:rgba(44,76,253,.15) !important; }

/* ── Hide theme toggle (light-only mode) ── */
.theme-toggle { display:none !important; }

/* ── Breadcrumb ── */
[data-theme="light"] .breadcrumb,
[data-theme="light"] .breadcrumb a{color:#ffffff;}
[data-theme="light"] .breadcrumb a:hover{color:var(--gold-3);}
[data-theme="light"] .breadcrumb span{color:#ffffff;}
[data-theme="light"] .breadcrumb span:not(:last-child){color:rgba(255,255,255,.55);}

/* ── Scroll-to-top ── */
[data-theme="light"] .scroll-top{background:rgba(15,23,42,.08);border-color:rgba(15,23,42,.15);color:#475569;}
[data-theme="light"] .scroll-top:hover{background:var(--primary);border-color:var(--primary);color:#fff;}

/* ════════════════════════════════════════════════════════════════
   LIGHT MODE — INNER PAGES (inner.css / about / team / partners)
   ════════════════════════════════════════════════════════════════ */

/* ── Page Hero ── */
[data-theme="light"] .page-hero{background:linear-gradient(135deg,#dde8ff 0%,#e8eeff 45%,#eef2ff 100%);}
[data-theme="light"] .page-hero h1{color:#ffffff;}
[data-theme="light"] .page-hero p{color:rgba(255,255,255,.82);}
[data-theme="light"] .breadcrumb{color:#ffffff;}
[data-theme="light"] .breadcrumb a{color:#ffffff;}
[data-theme="light"] .breadcrumb span:not(:last-child){color:rgba(255,255,255,.55);}

/* ── About Story ── */
[data-theme="light"] .about-story{background:#ffffff;}
[data-theme="light"] .story-content h2{color:#0f172a;}
[data-theme="light"] .story-content p{color:#475569;}
[data-theme="light"] .sf-item{color:#334155;}

/* ── Timeline ── */
[data-theme="light"] .timeline::before{background:rgba(44,76,253,.2);}
[data-theme="light"] .tl-card{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .tl-card:hover{background:#f8faff;border-color:rgba(44,76,253,.25);}
[data-theme="light"] .tl-card h4{color:#0f172a;}
[data-theme="light"] .tl-card p{color:#475569;}
[data-theme="light"] .tl-dot{border-color:#eef2ff;}

/* ── Vision Mission Values ── */
[data-theme="light"] .vmv-card{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .vmv-card:hover{background:#f8faff;border-color:rgba(44,76,253,.25);box-shadow:0 20px 60px rgba(44,76,253,.1);}
[data-theme="light"] .vmv-card h3{color:#0f172a;}
[data-theme="light"] .vmv-card p{color:#475569;}
[data-theme="light"] .vmv-values li{color:#475569;}

/* ── Credentials ── */
[data-theme="light"] .cred-item{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .cred-item:hover{border-color:rgba(44,76,253,.25);}
[data-theme="light"] .cred-item h4{color:#0f172a;}
[data-theme="light"] .cred-item p{color:#475569;}

/* ── Services nav strip (inner pages) ── */
[data-theme="light"] .srv-nav-strip{background:#ffffff !important;border-bottom-color:rgba(15,23,42,.08);}
[data-theme="light"] .srv-nav-link{color:#64748b;}
[data-theme="light"] .srv-nav-link:hover{color:var(--primary);border-color:var(--primary);}

/* ── Service cards (inner.css) ── */
[data-theme="light"] .svc-card{background:#ffffff !important;border-color:rgba(15,23,42,.09) !important;}
[data-theme="light"] .svc-card-head{background:rgba(44,76,253,.04);border-bottom-color:rgba(15,23,42,.07);}
[data-theme="light"] .svc-card-head h3{color:#0f172a;}
[data-theme="light"] .svc-card-body p{color:#475569;}
[data-theme="light"] .svc-features li{color:#475569;}

/* ── Process steps ── */
[data-theme="light"] .process-section{background:#f4f6fb;}
[data-theme="light"] .process-step h4{color:#0f172a;}
[data-theme="light"] .process-step p{color:#475569;}

/* ── Team cards (inner.css) ── */
[data-theme="light"] .team-section{background:#f4f6fb;}
[data-theme="light"] .team-card{background:#ffffff !important;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .team-info h3{color:#0f172a;}
[data-theme="light"] .team-info p{color:#475569;}

/* ── Culture section ── */
[data-theme="light"] .culture-section{background:#eef2ff !important;}
[data-theme="light"] .culture-content h2{color:#0f172a;}
[data-theme="light"] .culture-content p{color:#475569;}
[data-theme="light"] .cs-item{background:rgba(255,255,255,.7);border-color:rgba(15,23,42,.08);}
[data-theme="light"] .cs-label{color:#64748b;}
[data-theme="light"] .cv-item{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .cv-item h4{color:#0f172a;}
[data-theme="light"] .cv-item p{color:#475569;}

/* ── Partner cards ── */
[data-theme="light"] .partners-section{background:#f4f6fb;}
[data-theme="light"] .partner-card{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .partner-card:hover{box-shadow:0 24px 60px rgba(44,76,253,.1);}
[data-theme="light"] .partner-logo-wrap{filter:brightness(1) grayscale(.1);}
[data-theme="light"] .partner-info h4{color:#0f172a;}
[data-theme="light"] .partner-info p{color:#475569;}

/* ── Partner benefits ── */
[data-theme="light"] .partner-benefits{background:#eef2ff !important;}
[data-theme="light"] .benefit-card{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .benefit-card h4{color:#0f172a;}
[data-theme="light"] .benefit-card p{color:#475569;}

/* ── Become a partner ── */
[data-theme="light"] .be-partner{background:#f4f6fb;}
[data-theme="light"] .bp-inner{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .bp-content h2{color:#0f172a;}
[data-theme="light"] .bp-content p{color:#475569;}
[data-theme="light"] .bp-stat{background:#f4f6fb;border-color:rgba(15,23,42,.08);}
[data-theme="light"] .bps-label{color:#64748b;}

/* ── Contact info cards (inner.css) ── */
[data-theme="light"] .contact-section{background:#f4f6fb;}
[data-theme="light"] .ci-card{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .ci-card h4{color:#0f172a;}
[data-theme="light"] .ci-card p,[data-theme="light"] .ci-card p a{color:#475569;}
[data-theme="light"] .ci-card small{color:#94a3b8;}
[data-theme="light"] .contact-socials a{background:rgba(44,76,253,.07);border-color:rgba(44,76,253,.15);color:var(--primary);}

/* ── Contact form (inner.css) ── */
[data-theme="light"] .contact-form-card{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .contact-form-card h3{color:#0f172a;}
[data-theme="light"] .contact-form-card>p{color:#475569;}
[data-theme="light"] .form-group label{color:#64748b;}
[data-theme="light"] .form-group input,
[data-theme="light"] .form-group select,
[data-theme="light"] .form-group textarea{background:#f8fafc;border-color:rgba(15,23,42,.12);color:#0f172a;}
[data-theme="light"] .form-group input::placeholder,
[data-theme="light"] .form-group textarea::placeholder{color:#94a3b8;}
[data-theme="light"] .form-group input:focus,
[data-theme="light"] .form-group select:focus,
[data-theme="light"] .form-group textarea:focus{background:#ffffff;border-color:var(--primary);}
[data-theme="light"] .form-note{color:#94a3b8;}

/* ── FAQ (inner.css) ── */
[data-theme="light"] .faq-item{background:#ffffff;border-color:rgba(15,23,42,.09);}
[data-theme="light"] .faq-q{color:#0f172a;}
[data-theme="light"] .faq-a p{color:#475569;}

/* ── Map ── */
[data-theme="light"] .map-section iframe{filter:none;}

/* ── Inner CTA ── */
[data-theme="light"] .inner-cta{
  background:
    linear-gradient(135deg,#2c4cfd 0%,#4a66ff 100%),
    url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?w=1920&h=700&fit=crop&q=60') center/cover no-repeat;
  background-blend-mode:multiply;
}

/* ── .hl on dark-overlay sections (photo bg, blue CTA) stays light/bright ── */
[data-theme="light"] .page-hero .hl,
[data-theme="light"] .shv2-left .hl,
[data-theme="light"] .svc-hero-v2 .hl,
[data-theme="light"] .ct-hero .hl,
[data-theme="light"] .inner-cta .hl{color:#93c5fd;}

/* ── CTA buttons on blue inner-cta background ── */
[data-theme="light"] .inner-cta .btn-gold{
  background:#ffffff;color:#2c4cfd;box-shadow:0 4px 20px rgba(0,0,0,.15);
}
[data-theme="light"] .inner-cta .btn-gold:hover{
  background:#eef2ff;box-shadow:0 12px 40px rgba(0,0,0,.18);
}
[data-theme="light"] .inner-cta .btn-outline{
  border-color:rgba(255,255,255,.65);color:#ffffff;background:transparent;
}
[data-theme="light"] .inner-cta .btn-outline:hover{
  background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.9);
}

/* ── Team page (team.css) ── */
[data-theme="light"] .team{background:#f4f6fb;}

/* ── Partners page (partners.css) ── */
[data-theme="light"] .partners{background:#ffffff;}

/* ── Generic section-pad (sections without explicit bg) ── */
[data-theme="light"] .section-pad{background:#f4f6fb;}
[data-theme="light"] .about-story.section-pad{background:#ffffff;}
[data-theme="light"] .vmv-section.section-pad{background:#ffffff;}
[data-theme="light"] .creds-section.section-pad{background:#eef2ff !important;}
[data-theme="light"] .services-full{background:#f4f6fb;}
[data-theme="light"] .faq-section{background:#f4f6fb;}

/* ── Animations (page loader fix) ── */
[data-theme="light"] .loading-bg{
  background:linear-gradient(-45deg,#e8eeff,#f0f4ff,#dde8ff,#eef2ff) !important;
  background-size:400% 400% !important;
}

/* ── FOOTER BOTTOM BAR ── */
.footer-bottom{
  padding:28px 24px;
  text-align:center;
  border-top:1px solid rgba(255,255,255,.07);
}
.footer-bottom p{
  color:#ffffff;
  font-size:.82rem;
  line-height:1.8;
  margin:0;
}
.footer-bottom p + p{margin-top:4px;}
.footer-bottom .gold{color:var(--gold);}

/* ── FOOTER — RESPONSIVE ── */
@media(max-width:900px){
  .footer-grid,.footer-top{
    grid-template-columns:1fr 1fr;
    gap:44px 32px;
  }
  .footer-brand{grid-column:1 / -1;}
  .footer-col > p,.footer-brand p{max-width:420px;}
}
@media(max-width:600px){
  .site-footer,footer{padding:64px 0 0;}
  .footer-grid,.footer-top{
    grid-template-columns:1fr;
    gap:40px;
    text-align:center;
    padding-bottom:48px;
  }
  .footer-brand{grid-column:auto;}
  .footer-brand img{margin-left:auto;margin-right:auto;}
  .footer-col > p,.footer-brand p{max-width:100%;margin-left:auto;margin-right:auto;}
  .footer-socials{justify-content:center;}
  .footer-contact li,.footer-contact-item{justify-content:center;}
  .footer-bottom{padding:24px 20px;}
}

/* ── WHATSAPP FLOATING BUTTON ── */
@keyframes waPulse{
  0%{transform:scale(1);opacity:.7;}
  70%{transform:scale(1.9);opacity:0;}
  100%{transform:scale(1.9);opacity:0;}
}
@keyframes waBlink{
  0%,100%{box-shadow:0 0 0 0 rgba(37,211,102,.6),0 8px 32px rgba(37,211,102,.35);}
  50%{box-shadow:0 0 0 10px rgba(37,211,102,0),0 8px 32px rgba(37,211,102,.5);}
}
.wa-float{
  position:fixed;bottom:28px;right:28px;z-index:9999;
  width:60px;height:60px;
  background:#25D366;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:#ffffff;font-size:1.7rem;
  text-decoration:none;
  animation:waBlink 2s ease-in-out infinite;
  transition:transform .35s cubic-bezier(.175,.885,.32,1.275),background .2s;
  /* pulse ring */
}
.wa-float::before{
  content:'';
  position:absolute;inset:0;
  border-radius:50%;
  background:#25D366;
  animation:waPulse 2s ease-out infinite;
  z-index:-1;
}
.wa-float::after{
  content:'Chat with us';
  position:absolute;
  right:calc(100% + 14px);top:50%;
  transform:translateY(-50%) translateX(8px);
  background:rgba(0,0,0,.85);
  color:#ffffff;
  font-family:'Inter',sans-serif;
  font-size:.75rem;font-weight:700;
  white-space:nowrap;
  padding:8px 14px;border-radius:8px;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s,transform .25s;
}
.wa-float:hover{
  transform:scale(1.12);
  background:#1ebe5a;
  animation:none;
  box-shadow:0 8px 40px rgba(37,211,102,.55);
}
.wa-float:hover::after{
  opacity:1;
  transform:translateY(-50%) translateX(0);
}

/* ── SCROLL-TO-TOP BUTTON ── */
.scroll-top{
  position:fixed;bottom:100px;right:28px;z-index:9998;
  width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.7);font-size:.8rem;cursor:pointer;
  opacity:0;transform:translateY(12px);
  transition:opacity .3s,transform .3s,background .2s,color .2s;
  pointer-events:none;
}
.scroll-top.show{opacity:1;transform:translateY(0);pointer-events:auto;}
.scroll-top:hover{background:var(--primary);border-color:var(--primary);color:#fff;}

.footer-co