/* ================================================================
   PercelCapital v4  —  Midnight · Indigo · Amber
================================================================ */

:root {
  --midnight:    #04080F;
  --navy:        #080F1E;
  --navy-2:      #0D1829;
  --navy-3:      #111E35;
  --navy-4:      #162540;
  --indigo:      #4361EE;
  --indigo-d:    #3451D1;
  --indigo-glow: rgba(67,97,238,.2);
  --amber:       #F59E0B;
  --amber-l:     #FCD34D;
  --amber-glow:  rgba(245,158,11,.15);
  --teal:        #14B8A6;
  --teal-glow:   rgba(20,184,166,.12);
  --red:         #EF4444;
  --white:       #FFFFFF;
  --text:        #94A3B8;
  --text-bright: #E2E8F0;
  --muted:       #475569;
  --border:      rgba(255,255,255,.06);
  --border-2:    rgba(255,255,255,.12);
  --r:           12px;
  --r-lg:        20px;
  --shadow:      0 4px 24px rgba(0,0,0,.5);
  --shadow-lg:   0 20px 60px rgba(0,0,0,.6);
  --t:           .24s ease;
  --hh:          72px;  /* header height */
}

/* ── Reset ─────────────────────────────────────────────────────── */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body {
  font-family:'Inter',sans-serif;
  background:var(--navy);
  color:var(--text);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  padding-top:var(--hh);
}
img { display:block; max-width:100%; height:auto; }
a { color:inherit; text-decoration:none; }
ul { list-style:none; }
button { font-family:inherit; cursor:pointer; border:none; background:none; }

h1,h2,h3,h4,h5,h6 {
  font-family:'Space Grotesk',sans-serif;
  color:#fff; line-height:1.12; font-weight:700; letter-spacing:-.02em;
}
h1 { font-size:clamp(2.6rem,5.5vw,4.2rem); }
h2 { font-size:clamp(2rem,4vw,3rem); }
h3 { font-size:1.2rem; }

.container { max-width:1200px; margin:0 auto; padding:0 28px; }
.text-amber { color:var(--amber); }
.text-indigo { color:var(--indigo); }

/* ── Micro labels ──────────────────────────────────────────────── */
.tag {
  display:inline-flex; align-items:center; gap:7px;
  font-size:.72rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
  color:var(--amber); background:rgba(245,158,11,.1); border:1px solid rgba(245,158,11,.2);
  padding:5px 14px; border-radius:100px; margin-bottom:22px;
}
.tag-teal { color:var(--teal); background:rgba(20,184,166,.1); border-color:rgba(20,184,166,.2); }
.pulse { width:7px; height:7px; border-radius:50%; background:currentColor; animation:pulse 2s infinite; flex-shrink:0; }
@keyframes pulse { 0%{box-shadow:0 0 0 0 rgba(20,184,166,.6)} 70%{box-shadow:0 0 0 8px rgba(20,184,166,0)} 100%{box-shadow:0 0 0 0 rgba(20,184,166,0)} }

/* ── Buttons ───────────────────────────────────────────────────── */
.btn {
  display:inline-flex; align-items:center; gap:8px;
  padding:13px 28px; border-radius:100px;
  font-size:.9rem; font-weight:600; font-family:'Space Grotesk',sans-serif;
  transition:var(--t); white-space:nowrap; cursor:pointer; border:1.5px solid transparent;
}
.btn-primary  { background:var(--indigo); color:#fff; }
.btn-primary:hover  { background:var(--indigo-d); transform:translateY(-2px); box-shadow:0 10px 30px var(--indigo-glow); }
.btn-amber    { background:var(--amber); color:var(--midnight); font-weight:700; }
.btn-amber:hover    { background:var(--amber-l); transform:translateY(-2px); box-shadow:0 10px 28px rgba(245,158,11,.35); }
.btn-ghost    { background:transparent; color:#fff; border-color:rgba(255,255,255,.25); }
.btn-ghost:hover    { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.4); transform:translateY(-2px); }
.btn-ghost-dark { background:transparent; color:var(--text-bright); border-color:var(--border-2); }
.btn-ghost-dark:hover { background:rgba(255,255,255,.04); }
.btn-outline  { background:transparent; color:#fff; border-color:rgba(255,255,255,.25); }
.btn-outline:hover  { background:rgba(255,255,255,.07); transform:translateY(-2px); }
.btn-group { display:flex; gap:12px; flex-wrap:wrap; }

/* ── Section helpers ───────────────────────────────────────────── */
.section      { padding:100px 0; }
.section-dark { background:var(--midnight); }
.section-mid  { background:var(--navy-2); }
.section-header { text-align:center; max-width:620px; margin:0 auto 60px; }
.section-header h2 { margin-bottom:14px; }
.section-header p { color:var(--text); font-size:1.05rem; line-height:1.75; }

/* ══════════════════════════════════════════════════════════════════
   HEADER — fixed, transparent → solid on scroll
══════════════════════════════════════════════════════════════════ */
.site-header {
  position:fixed; top:0; left:0; right:0; z-index:900;
  height:var(--hh);
  transition:background .4s, box-shadow .4s, border-color .4s;
  border-bottom:1px solid transparent;
}
.site-header.solid {
  background:rgba(4,8,15,.94);
  backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px);
  border-color:var(--border);
  box-shadow:0 2px 40px rgba(0,0,0,.5);
}
/* Use a flex row: logo | nav (centered) | end-buttons */
.nav-inner {
  max-width:1240px; margin:0 auto; padding:0 28px;
  display:flex; align-items:center; height:100%;
}
.logo {
  display:flex; align-items:center; gap:9px;
  font-family:'Space Grotesk',sans-serif; font-size:1.15rem; font-weight:700;
  color:#fff; white-space:nowrap; flex-shrink:0;
}
.logo-mark {
  width:34px; height:34px; border-radius:8px;
  background:linear-gradient(135deg,var(--indigo) 0%,#7B8FEE 100%);
  display:flex; align-items:center; justify-content:center; color:#fff; font-size:.85rem;
}
/* Nav centered with flex: 1 trick */
.main-nav { flex:1; display:flex; align-items:center; justify-content:center; }
.main-nav > ul { display:flex; align-items:center; gap:2px; }
.main-nav a {
  display:block; padding:8px 15px; border-radius:8px;
  font-size:.88rem; font-weight:500; color:rgba(255,255,255,.65);
  transition:color var(--t), background var(--t);
  white-space:nowrap; position:relative;
}
.main-nav a:hover { color:#fff; background:rgba(255,255,255,.06); }
.main-nav a.active { color:#fff; }
.main-nav a.active::after {
  content:''; position:absolute; bottom:5px; left:50%; transform:translateX(-50%);
  width:18px; height:2px; border-radius:1px; background:var(--amber);
}
/* Dropdown */
.has-dropdown { position:relative; }
.dropdown {
  position:absolute; top:calc(100% + 14px); left:50%;
  transform:translateX(-50%) translateY(-6px);
  min-width:240px; background:var(--midnight);
  border:1px solid var(--border-2); border-radius:16px;
  box-shadow:0 20px 60px rgba(0,0,0,.6);
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity var(--t), transform var(--t);
  padding:8px;
}
.has-dropdown:hover .dropdown { opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0); }
.dropdown li a {
  display:flex; align-items:center; gap:12px;
  padding:10px 14px; border-radius:10px;
  font-size:.875rem; color:var(--text); transition:var(--t);
}
.dropdown li a i { width:30px; height:30px; background:var(--indigo-glow); color:var(--indigo); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:.8rem; flex-shrink:0; }
.dropdown li a:hover { background:rgba(255,255,255,.04); color:#fff; }
.dropdown li a:hover i { background:var(--indigo); color:#fff; }
/* End buttons */
.nav-end { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.nav-login {
  display:inline-flex; align-items:center;
  padding:8px 18px; border-radius:100px; font-size:.85rem; font-weight:500;
  font-family:'Space Grotesk',sans-serif; color:rgba(255,255,255,.7);
  border:1px solid rgba(255,255,255,.15); transition:var(--t); white-space:nowrap;
}
.nav-login:hover { color:#fff; border-color:rgba(255,255,255,.3); background:rgba(255,255,255,.06); }
.nav-cta {
  display:inline-flex; align-items:center; gap:6px;
  padding:9px 20px; border-radius:100px;
  background:var(--indigo); color:#fff;
  font-size:.85rem; font-weight:600; font-family:'Space Grotesk',sans-serif;
  transition:var(--t); white-space:nowrap;
}
.nav-cta:hover { background:var(--indigo-d); box-shadow:0 6px 20px var(--indigo-glow); transform:translateY(-1px); }
/* Hamburger */
.nav-toggle { display:none; flex-direction:column; gap:5px; padding:5px; margin-left:auto; }
.nav-toggle span { display:block; width:22px; height:2px; background:#fff; border-radius:2px; transition:var(--t); }
.nav-toggle.open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.nav-toggle.open span:nth-child(2) { opacity:0; }
.nav-toggle.open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }

/* ── Mobile Nav ────────────────────────────────────────────────── */
.nav-overlay { display:none; position:fixed; inset:0; background:rgba(0,0,0,.7); backdrop-filter:blur(4px); z-index:990; opacity:0; transition:opacity var(--t); pointer-events:none; }
.nav-overlay.open { opacity:1; pointer-events:auto; }
.mobile-nav { position:fixed; top:0; right:-100%; width:300px; height:100%; background:var(--midnight); border-left:1px solid var(--border-2); z-index:1000; display:flex; flex-direction:column; transition:right .35s cubic-bezier(.4,0,.2,1); overflow-y:auto; }
.mobile-nav.open { right:0; }
.mob-head { display:flex; align-items:center; justify-content:space-between; padding:18px 22px; border-bottom:1px solid var(--border); }
.mob-close { width:32px; height:32px; border-radius:8px; background:rgba(255,255,255,.06); color:var(--text); display:flex; align-items:center; justify-content:center; font-size:1.1rem; transition:var(--t); }
.mob-close:hover { background:rgba(255,255,255,.12); color:#fff; }
.mob-body { padding:14px; flex:1; }
.mob-links { display:flex; flex-direction:column; gap:2px; }
.mob-links > li > a,
.mob-links > li > button { display:flex; align-items:center; gap:12px; width:100%; padding:11px 14px; border-radius:9px; font-size:.9rem; font-weight:500; color:var(--text); transition:var(--t); text-align:left; justify-content:space-between; }
.mob-links > li > a:hover,
.mob-links > li > button:hover { background:rgba(255,255,255,.05); color:#fff; }
.mob-links > li > a.active { color:var(--amber); }
.mob-icon { color:var(--muted); width:16px; }
.mob-chev { font-size:.65rem; color:var(--muted); transition:transform var(--t); }
.mob-links > li.open .mob-chev { transform:rotate(180deg); }
.mob-sub { max-height:0; overflow:hidden; transition:max-height .3s ease; padding-left:12px; }
.mob-links > li.open .mob-sub { max-height:400px; }
.mob-sub li a { display:flex; align-items:center; gap:10px; padding:9px 14px; border-radius:8px; font-size:.85rem; color:var(--text); transition:var(--t); }
.mob-sub li a:hover { color:#fff; background:rgba(255,255,255,.03); }
.mob-sub li a i { color:var(--indigo); width:14px; }
.mob-foot { padding:18px 22px; border-top:1px solid var(--border); display:flex; flex-direction:column; gap:8px; }

/* ══════════════════════════════════════════════════════════════════
   HERO — full bleed image, minimal centered text
══════════════════════════════════════════════════════════════════ */
.hero {
  position:relative; min-height:100vh;
  background-size:cover; background-position:center 35%;
  display:flex; flex-direction:column;
  margin-top:calc(-1 * var(--hh));
}
.hero-ov {
  position:absolute; inset:0;
  background:linear-gradient(to bottom,
    rgba(4,8,15,.72) 0%,
    rgba(4,8,15,.45) 35%,
    rgba(4,8,15,.75) 70%,
    rgba(4,8,15,.97) 100%
  );
}
.hero-body {
  position:relative; z-index:1;
  flex:1; display:flex; align-items:center;
  padding:calc(var(--hh) + 60px) 0 60px;
}
.hero-center { text-align:center; max-width:700px; margin:0 auto; }
.hero-tag { display:inline-flex; align-items:center; gap:7px; font-size:.72rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.6); margin-bottom:28px; }
.hero-tag span { width:6px; height:6px; border-radius:50%; background:var(--teal); box-shadow:0 0 10px var(--teal); animation:pulse 2.5s infinite; flex-shrink:0; }
.hero h1 { color:#fff; margin-bottom:20px; font-size:clamp(3rem,6vw,5rem); line-height:1.05; }
.hero h1 .hi { color:var(--amber); }
.hero-sub { font-size:1.1rem; color:rgba(255,255,255,.55); margin-bottom:40px; letter-spacing:.01em; }
.hero-actions { display:flex; align-items:center; justify-content:center; gap:14px; flex-wrap:wrap; }

/* Stats bar — frosted, pinned to bottom */
.hero-stats {
  position:relative; z-index:1;
  background:rgba(4,8,15,.6); backdrop-filter:blur(28px); -webkit-backdrop-filter:blur(28px);
  border-top:1px solid rgba(255,255,255,.08);
}
.hero-stats-row { display:flex; align-items:stretch; }
.hs { flex:1; text-align:center; padding:26px 16px; border-right:1px solid rgba(255,255,255,.07); }
.hs:last-child { border-right:none; }
.hs-n { display:block; font-family:'Space Grotesk',sans-serif; font-size:1.8rem; font-weight:700; color:#fff; line-height:1; margin-bottom:5px; }
.hs-l { font-size:.75rem; color:rgba(255,255,255,.4); letter-spacing:.04em; }

/* Scroll indicator */
.scroll-hint { position:absolute; bottom:130px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:6px; color:rgba(255,255,255,.3); font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; z-index:2; }
.scroll-mouse { width:20px; height:32px; border:1.5px solid rgba(255,255,255,.2); border-radius:10px; display:flex; justify-content:center; padding-top:5px; }
.scroll-wheel { width:3px; height:6px; background:var(--amber); border-radius:2px; animation:sw 1.8s ease infinite; }
@keyframes sw { 0%,100%{transform:translateY(0);opacity:1} 75%{transform:translateY(9px);opacity:0} }

/* ── Ticker ─────────────────────────────────────────────────────── */
.ticker { background:var(--midnight); border-bottom:1px solid var(--border); overflow:hidden; }
.ticker .tradingview-widget-container { height:46px; }

/* ══════════════════════════════════════════════════════════════════
   SERVICE CARDS
══════════════════════════════════════════════════════════════════ */
.services-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(272px,1fr)); gap:20px; }
.service-card {
  background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r-lg);
  padding:32px 28px; transition:var(--t); position:relative; overflow:hidden;
}
.service-card::after { content:''; position:absolute; inset:0; border-radius:inherit; opacity:0; transition:opacity var(--t); background:linear-gradient(135deg,rgba(67,97,238,.06),transparent); }
.service-card:hover { border-color:rgba(67,97,238,.3); transform:translateY(-5px); box-shadow:0 20px 40px rgba(0,0,0,.3); }
.service-card:hover::after { opacity:1; }
.svc-ico { width:50px; height:50px; border-radius:12px; background:rgba(67,97,238,.12); border:1px solid rgba(67,97,238,.2); display:flex; align-items:center; justify-content:center; color:var(--indigo); font-size:1.1rem; margin-bottom:18px; transition:var(--t); }
.service-card:hover .svc-ico { background:var(--indigo); color:#fff; border-color:var(--indigo); }
.service-card h3 { font-size:1.05rem; margin-bottom:9px; color:#fff; }
.service-card p { font-size:.875rem; color:var(--text); line-height:1.65; margin-bottom:18px; }
.svc-link { display:inline-flex; align-items:center; gap:5px; font-size:.82rem; font-weight:600; color:var(--indigo); transition:gap var(--t); }
.svc-link:hover { gap:10px; }

/* ══════════════════════════════════════════════════════════════════
   HOW IT WORKS
══════════════════════════════════════════════════════════════════ */
.steps-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; position:relative; }
.steps-grid::before { content:''; position:absolute; top:38px; left:calc(16.66% + 18px); right:calc(16.66% + 18px); height:1px; background:linear-gradient(90deg,var(--indigo),var(--teal)); opacity:.25; }
.step-card { text-align:center; padding:40px 26px; background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r-lg); transition:var(--t); }
.step-card:hover { border-color:rgba(67,97,238,.3); transform:translateY(-4px); }
.step-n { width:64px; height:64px; border-radius:50%; background:rgba(67,97,238,.1); border:2px solid rgba(67,97,238,.25); display:flex; align-items:center; justify-content:center; font-family:'Space Grotesk',sans-serif; font-size:1.4rem; font-weight:700; color:var(--indigo); margin:0 auto 22px; }
.step-card h3 { margin-bottom:10px; }
.step-card p { font-size:.875rem; color:var(--text); line-height:1.65; }

/* ══════════════════════════════════════════════════════════════════
   TWO-COL SPLIT
══════════════════════════════════════════════════════════════════ */
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.split-img { position:relative; border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow-lg); }
.split-img img { width:100%; height:480px; object-fit:cover; }
.split-badge { position:absolute; bottom:20px; left:20px; background:rgba(4,8,15,.88); backdrop-filter:blur(16px); border:1px solid var(--border-2); border-radius:var(--r); padding:12px 18px; display:flex; gap:10px; align-items:center; }
.sb-n { font-family:'Space Grotesk',sans-serif; font-size:1.5rem; font-weight:700; color:var(--amber); }
.sb-l { font-size:.78rem; color:var(--text); line-height:1.3; }
.content-block h2 { margin-bottom:18px; }
.content-block > p { color:var(--text); line-height:1.8; margin-bottom:14px; }
.content-block ul { display:flex; flex-direction:column; gap:10px; margin-bottom:24px; }
.content-block ul li { display:flex; align-items:flex-start; gap:10px; font-size:.9rem; color:var(--text-bright); }
.content-block ul li::before {
  content:''; width:18px; height:18px; flex-shrink:0; margin-top:2px;
  background:rgba(20,184,166,.1); border:1px solid rgba(20,184,166,.25); border-radius:50%;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 10 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 4l2.5 2.5L9 1' stroke='%2314B8A6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:center; background-size:10px;
}

/* ══════════════════════════════════════════════════════════════════
   SECTOR CARDS
══════════════════════════════════════════════════════════════════ */
.sectors-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.sector-card { position:relative; border-radius:var(--r-lg); overflow:hidden; height:380px; cursor:pointer; }
.sector-card img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.sector-card:hover img { transform:scale(1.08); }
.sector-ov { position:absolute; inset:0; background:linear-gradient(to top,rgba(4,8,15,.97) 0%,rgba(4,8,15,.35) 55%,transparent 100%); }
.sector-body { position:absolute; bottom:0; left:0; right:0; padding:26px; }
.sector-ico { width:42px; height:42px; background:var(--indigo); border-radius:9px; display:flex; align-items:center; justify-content:center; color:#fff; font-size:.95rem; margin-bottom:10px; }
.sector-body h3 { font-size:1.2rem; margin-bottom:7px; color:#fff; }
.sector-body p { font-size:.85rem; color:rgba(255,255,255,.6); line-height:1.6; margin-bottom:12px; }
.sector-link { display:inline-flex; align-items:center; gap:6px; font-size:.82rem; font-weight:600; color:var(--amber); transition:gap var(--t); }
.sector-link:hover { gap:10px; }

/* ══════════════════════════════════════════════════════════════════
   PLANS
══════════════════════════════════════════════════════════════════ */
.plans-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.plan-card { background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r-lg); padding:26px 18px; text-align:center; position:relative; transition:var(--t); }
.plan-card:hover { transform:translateY(-4px); border-color:var(--border-2); }
.plan-featured { background:linear-gradient(160deg,var(--navy-3),var(--navy-4)); border-color:rgba(67,97,238,.4); box-shadow:0 0 50px rgba(67,97,238,.2); transform:translateY(-8px); }
.plan-featured:hover { transform:translateY(-12px); }
.plan-pop { position:absolute; top:-11px; left:50%; transform:translateX(-50%); background:var(--indigo); color:#fff; font-size:.65rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:4px 13px; border-radius:100px; white-space:nowrap; }
.plan-ico { width:50px; height:50px; border-radius:var(--r); background:rgba(67,97,238,.12); border:1px solid rgba(67,97,238,.2); display:flex; align-items:center; justify-content:center; color:var(--indigo); font-size:1.1rem; margin:0 auto 12px; }
.plan-ico-amber { background:rgba(245,158,11,.12); border-color:rgba(245,158,11,.2); color:var(--amber); }
.plan-name { font-size:1rem; font-weight:700; color:#fff; margin-bottom:3px; }
.plan-tag { font-size:.75rem; color:var(--muted); margin-bottom:16px; }
.plan-pct { display:block; font-family:'Space Grotesk',sans-serif; font-size:2.2rem; font-weight:700; color:var(--amber); line-height:1; }
.plan-dur { font-size:.75rem; color:var(--muted); margin:4px 0 16px; display:block; }
.plan-row { display:flex; justify-content:space-between; padding:7px 0; border-bottom:1px solid var(--border); font-size:.82rem; }
.plan-row:last-of-type { border-bottom:none; }
.plan-rl { color:var(--muted); }
.plan-rv { color:var(--text-bright); font-weight:600; }
.plan-badge { margin:14px 0; font-size:.72rem; font-weight:600; padding:4px 12px; border-radius:100px; display:inline-block; }
.badge-teal   { background:rgba(20,184,166,.1);  color:var(--teal); }
.badge-amber  { background:rgba(245,158,11,.1); color:var(--amber); }
.plan-btn { display:block; width:100%; padding:10px; border-radius:100px; font-size:.82rem; font-weight:600; font-family:'Space Grotesk',sans-serif; cursor:pointer; transition:var(--t); text-align:center; }
.plan-btn-ind { background:var(--indigo); color:#fff; border:none; }
.plan-btn-ind:hover { background:var(--indigo-d); }
.plan-btn-out { background:transparent; color:var(--text-bright); border:1.5px solid var(--border-2); }
.plan-btn-out:hover { background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.25); }
.plans-note { text-align:center; margin-top:30px; font-size:.82rem; color:var(--muted); }
.plans-note a { color:var(--indigo); }

/* ══════════════════════════════════════════════════════════════════
   MARKETS WIDGET
══════════════════════════════════════════════════════════════════ */
.markets-box { background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; }

/* ══════════════════════════════════════════════════════════════════
   TESTIMONIALS SLIDER
══════════════════════════════════════════════════════════════════ */
.testi-wrap { overflow:hidden; }
.testi-track { display:flex; transition:transform .5s cubic-bezier(.4,0,.2,1); }
.testi-slide { min-width:100%; display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.testi-card { background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r-lg); padding:30px 26px; display:flex; flex-direction:column; gap:14px; transition:var(--t); }
.testi-card:hover { border-color:var(--border-2); transform:translateY(-3px); }
.testi-card.hi { border-color:rgba(67,97,238,.3); background:var(--navy-3); }
.testi-stars { display:flex; gap:3px; }
.testi-stars i { color:var(--amber); font-size:.82rem; }
.testi-text { font-size:.9rem; color:var(--text-bright); line-height:1.75; flex:1; font-style:italic; }
.testi-foot { display:flex; align-items:center; gap:12px; padding-top:14px; border-top:1px solid var(--border); }
.testi-av { width:40px; height:40px; border-radius:50%; background:linear-gradient(135deg,var(--indigo),var(--teal)); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:.85rem; font-family:'Space Grotesk',sans-serif; flex-shrink:0; }
.testi-name { font-weight:600; font-size:.875rem; color:#fff; }
.testi-loc { font-size:.75rem; color:var(--muted); }
.testi-controls { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:28px; }
.testi-btn { width:38px; height:38px; border-radius:50%; background:var(--navy-2); border:1px solid var(--border-2); color:var(--text); display:flex; align-items:center; justify-content:center; transition:var(--t); cursor:pointer; }
.testi-btn:hover { background:var(--indigo); border-color:var(--indigo); color:#fff; }
.testi-dots { display:flex; gap:6px; }
.testi-dot { width:8px; height:8px; border-radius:50%; background:var(--border-2); cursor:pointer; transition:var(--t); }
.testi-dot.on { background:var(--indigo); width:22px; border-radius:4px; }

/* ══════════════════════════════════════════════════════════════════
   CTA SECTION — bold centered, large decorative number
══════════════════════════════════════════════════════════════════ */
.cta-section {
  padding:100px 0;
  background:var(--midnight);
  text-align:center; position:relative; overflow:hidden;
}
.cta-section::before {
  content:''; position:absolute; top:50%; left:50%;
  transform:translate(-50%,-50%);
  width:700px; height:500px; border-radius:50%;
  background:radial-gradient(ellipse, rgba(67,97,238,.18) 0%, transparent 70%);
  pointer-events:none;
}
.cta-content { position:relative; z-index:1; max-width:640px; margin:0 auto; }
.cta-big-n {
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(4rem,9vw,7rem); font-weight:800; line-height:1;
  background:linear-gradient(135deg,var(--amber) 0%,var(--amber-l) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  margin-bottom:4px;
}
.cta-sub-n { font-size:.82rem; color:var(--muted); letter-spacing:.08em; text-transform:uppercase; margin-bottom:24px; }
.cta-section h2 { font-size:clamp(1.9rem,4vw,2.8rem); margin-bottom:16px; }
.cta-section > .cta-content > p { color:var(--text); font-size:1.05rem; margin-bottom:36px; line-height:1.7; }
.cta-actions { display:flex; align-items:center; justify-content:center; gap:14px; flex-wrap:wrap; margin-bottom:28px; }
.cta-trust { display:flex; align-items:center; justify-content:center; gap:6px; flex-wrap:wrap; }
.cta-trust-item { display:flex; align-items:center; gap:6px; font-size:.78rem; color:var(--muted); padding:0 12px; }
.cta-trust-item i { color:var(--teal); }
.cta-trust-sep { width:1px; height:14px; background:var(--border-2); }

/* ══════════════════════════════════════════════════════════════════
   CTA STRIP — before footer (indigo gradient)
══════════════════════════════════════════════════════════════════ */
.cta-strip {
  background:linear-gradient(120deg,#3451D1 0%,var(--indigo) 60%,#5B76F0 100%);
  padding:52px 0;
}
.cta-strip-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; }
.cta-strip h3 { font-size:clamp(1.4rem,3vw,2rem); color:#fff; margin-bottom:6px; }
.cta-strip p { color:rgba(255,255,255,.7); font-size:.95rem; }
.cta-strip-buttons { display:flex; gap:12px; flex-shrink:0; }
.cta-strip .btn-white { background:#fff; color:var(--indigo); font-weight:700; border-radius:100px; }
.cta-strip .btn-white:hover { background:rgba(255,255,255,.9); transform:translateY(-2px); }
.cta-strip .btn-ghost-white { background:transparent; color:#fff; border:1.5px solid rgba(255,255,255,.4); border-radius:100px; }
.cta-strip .btn-ghost-white:hover { background:rgba(255,255,255,.1); transform:translateY(-2px); }

/* ══════════════════════════════════════════════════════════════════
   FOOTER — clean, single container
══════════════════════════════════════════════════════════════════ */
.site-footer { background:var(--midnight); padding:64px 0 0; }
.footer-top { display:flex; align-items:flex-start; justify-content:space-between; gap:40px; margin-bottom:48px; }
.footer-logo-wrap { display:flex; align-items:center; gap:9px; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:1.1rem; color:#fff; margin-bottom:14px; }
.footer-tagline { font-size:.875rem; color:var(--muted); line-height:1.7; max-width:280px; margin-bottom:22px; }
.footer-socials { display:flex; gap:9px; }
.footer-socials a { width:36px; height:36px; border-radius:9px; background:var(--navy-3); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; color:var(--muted); font-size:.85rem; transition:var(--t); }
.footer-socials a:hover { background:var(--indigo); border-color:var(--indigo); color:#fff; transform:translateY(-2px); }
.footer-nav { display:grid; grid-template-columns:repeat(4,1fr); gap:32px; }
.footer-nav-col h5 { font-family:'Space Grotesk',sans-serif; font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--text-bright); margin-bottom:16px; }
.footer-nav-col ul { display:flex; flex-direction:column; gap:9px; }
.footer-nav-col ul li a { font-size:.875rem; color:var(--muted); transition:color var(--t); display:flex; align-items:flex-start; gap:8px; }
.footer-nav-col ul li a:hover { color:#fff; }
.footer-nav-col ul li a i { color:var(--indigo); width:14px; margin-top:2px; font-size:.8rem; flex-shrink:0; }
.footer-divider { height:1px; background:var(--border); margin:0 0 24px; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:24px; flex-wrap:wrap; }
.footer-bottom p { font-size:.75rem; color:var(--muted); }
.footer-bottom .disc { font-size:.68rem; opacity:.55; max-width:600px; }

/* ══════════════════════════════════════════════════════════════════
   ABOUT PAGE — Mission / Values / Core Values
══════════════════════════════════════════════════════════════════ */

/* 3-col card grid (mission, vision, approach / core values) */
.value-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.value-card {
  background:var(--navy-2); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:32px 28px;
  transition:var(--t); position:relative;
}
.value-card:hover { border-color:rgba(67,97,238,.3); transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.3); }
.v-icon-box {
  width:52px; height:52px; border-radius:var(--r);
  background:rgba(67,97,238,.12); border:1px solid rgba(67,97,238,.2);
  display:flex; align-items:center; justify-content:center;
  color:var(--indigo); font-size:1.1rem; margin-bottom:18px; transition:var(--t);
}
.value-card:hover .v-icon-box { background:var(--indigo); color:#fff; border-color:var(--indigo); }
.value-card h3 { font-size:1.05rem; margin-bottom:10px; }
.value-card p { font-size:.875rem; color:var(--text); line-height:1.72; }

/* Core values section — dark bg + CSS grid lines, no photo */
.values-section {
  background:var(--midnight);
  padding:100px 0; position:relative; overflow:hidden;
}
.values-section::before {
  content:''; position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(67,97,238,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(67,97,238,.05) 1px, transparent 1px);
  background-size:56px 56px;
  pointer-events:none;
}
.values-section::after {
  content:''; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:700px; height:400px;
  background:radial-gradient(ellipse, rgba(67,97,238,.14) 0%, transparent 70%);
  pointer-events:none;
}
.values-section > .container { position:relative; z-index:1; }

/* Core value cards on dark bg get slightly different treatment */
.values-section .value-card {
  background:rgba(17,30,53,.8);
  backdrop-filter:blur(8px);
}

/* About page inline stats */
.about-stats { display:flex; gap:32px; flex-wrap:wrap; margin-top:28px; }
.about-stat-n {
  display:block; font-family:'Space Grotesk',sans-serif;
  font-size:2rem; font-weight:800; color:var(--amber); line-height:1;
}
.about-stat-l { font-size:.72rem; color:var(--muted); text-transform:uppercase; letter-spacing:.09em; margin-top:4px; display:block; }

/* Reversed two-col (image right, text left) */
.two-col-rev { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.two-col-rev .content-block { order:1; }
.two-col-rev .split-img    { order:2; }

/* Sub-section headings inside content-block */
.content-block .sub-h { font-size:1rem; font-weight:700; color:#fff; margin-top:20px; margin-bottom:6px; }

/* About page CTA (replaces cta-band) — uses same bold pattern as homepage */
.about-cta {
  padding:100px 0;
  background:var(--midnight);
  text-align:center; position:relative; overflow:hidden;
}
.about-cta::before {
  content:''; position:absolute; top:50%; left:50%;
  transform:translate(-50%,-50%);
  width:600px; height:400px; border-radius:50%;
  background:radial-gradient(ellipse, rgba(67,97,238,.18) 0%, transparent 70%);
  pointer-events:none;
}
.about-cta .cta-inner { position:relative; z-index:1; max-width:580px; margin:0 auto; }
.about-cta h2 { margin-bottom:14px; }
.about-cta p  { color:var(--text); font-size:1.05rem; line-height:1.75; margin-bottom:36px; }
.about-cta .btn-group { justify-content:center; }

/* ── Sub-page hero ─────────────────────────────────────────────── */
.page-hero { background:var(--midnight); padding:72px 0 52px; position:relative; overflow:hidden; }
.page-hero::after { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 80% 100% at 70% 50%,rgba(67,97,238,.1) 0%,transparent 70%); pointer-events:none; }
.page-hero .container { position:relative; z-index:1; }
.breadcrumb { display:flex; align-items:center; gap:7px; font-size:.78rem; color:var(--muted); margin-bottom:14px; }
.breadcrumb a { color:var(--muted); transition:color var(--t); }
.breadcrumb a:hover { color:var(--amber); }
.page-hero h1 { margin-bottom:10px; }
.page-sub { font-size:.95rem; color:var(--muted); }

/* ── FAQ ───────────────────────────────────────────────────────── */
.faq-list { display:flex; flex-direction:column; gap:10px; max-width:780px; margin:0 auto; }
.faq-item { background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r); overflow:hidden; transition:border-color var(--t); }
.faq-item.open { border-color:rgba(67,97,238,.3); }
.faq-q { display:flex; align-items:center; justify-content:space-between; padding:18px 22px; cursor:pointer; font-weight:600; font-size:.9rem; color:var(--text-bright); gap:14px; user-select:none; }
.faq-q i { color:var(--indigo); transition:transform var(--t); }
.faq-item.open .faq-q i { transform:rotate(180deg); }
.faq-a { max-height:0; overflow:hidden; transition:max-height .35s ease; }
.faq-item.open .faq-a { max-height:400px; }
.faq-a-inner { padding:0 22px 18px; font-size:.875rem; color:var(--muted); line-height:1.75; }

/* ── Contact ───────────────────────────────────────────────────── */
.contact-grid { display:grid; grid-template-columns:1fr 1.6fr; gap:44px; align-items:start; }
.contact-info-box { background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r-lg); padding:32px 26px; }
.contact-info-box h3 { margin-bottom:22px; }
.contact-info-list { display:flex; flex-direction:column; gap:14px; }
.contact-info-list li { display:flex; align-items:flex-start; gap:12px; font-size:.875rem; }
.contact-info-list li i { width:34px; height:34px; background:var(--indigo-glow); border-radius:8px; display:flex; align-items:center; justify-content:center; color:var(--indigo); font-size:.82rem; flex-shrink:0; }
.contact-info-list li span { color:var(--text); line-height:1.5; }
.contact-form-box { background:var(--navy-2); border:1px solid var(--border); border-radius:var(--r-lg); padding:32px; }
.form-group { margin-bottom:18px; }
.form-group label { display:block; font-size:.82rem; font-weight:500; color:var(--text-bright); margin-bottom:7px; }
.form-ctrl { width:100%; background:var(--navy); border:1px solid var(--border); border-radius:10px; padding:12px 15px; color:var(--text-bright); font-size:.875rem; font-family:'Inter',sans-serif; transition:border-color var(--t),box-shadow var(--t); }
.form-ctrl::placeholder { color:var(--muted); }
.form-ctrl:focus { outline:none; border-color:var(--indigo); box-shadow:0 0 0 3px var(--indigo-glow); }
textarea.form-ctrl { resize:vertical; min-height:120px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }

/* ── Animations ────────────────────────────────────────────────── */
[data-animate] { opacity:0; transform:translateY(22px); transition:opacity .6s ease,transform .6s ease; }
[data-animate="left"]  { transform:translateX(-28px); }
[data-animate="right"] { transform:translateX(28px); }
[data-animate="scale"] { transform:scale(.95); }
[data-animate].visible { opacity:1; transform:none; }

/* ── Responsive ────────────────────────────────────────────────── */
@media (max-width:1100px) {
  .plans-grid { grid-template-columns:repeat(3,1fr); }
  .footer-nav { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:900px) {
  :root { --hh:62px; }
  .main-nav,.nav-end { display:none; }
  .nav-toggle { display:flex; }
  .nav-overlay { display:block; }
  .hero h1 { font-size:2.4rem; }
  .hero-stats-row { flex-wrap:wrap; }
  .hs { flex:0 0 50%; border-bottom:1px solid rgba(255,255,255,.06); }
  .hs:nth-child(even) { border-right:none; }
  .steps-grid { grid-template-columns:1fr; }
  .steps-grid::before { display:none; }
  .two-col     { grid-template-columns:1fr; gap:36px; }
  .two-col-rev { grid-template-columns:1fr; gap:36px; }
  .two-col-rev .content-block { order:0; }
  .two-col-rev .split-img     { order:0; }
  .value-grid  { grid-template-columns:1fr 1fr; }
  .sectors-grid { grid-template-columns:1fr; }
  .plans-grid { grid-template-columns:repeat(2,1fr); }
  .plan-featured { transform:none; }
  .plan-featured:hover { transform:none; }
  .testi-slide { grid-template-columns:1fr; }
  .cta-strip-inner { flex-direction:column; text-align:center; }
  .cta-strip-buttons { justify-content:center; }
  .footer-top { flex-direction:column; }
  .footer-nav { grid-template-columns:repeat(2,1fr); }
  .contact-grid { grid-template-columns:1fr; }
  .section { padding:64px 0; }
  .values-section { padding:64px 0; }
  .about-cta { padding:64px 0; }
}
@media (max-width:640px) {
  .hero h1 { font-size:2rem; }
  .plans-grid { grid-template-columns:1fr; }
  .value-grid { grid-template-columns:1fr; }
  .footer-nav { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .services-grid { grid-template-columns:1fr; }
  .cta-actions,.btn-group { flex-direction:column; align-items:center; }
  .footer-bottom { flex-direction:column; }
  .about-stats { gap:20px; }
}
