/* Money Profit Growth - Financial Services Theme */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Instrument+Serif:ital@0;1&display=swap');

:root{
  --navy:#0A1931;
  --navy2:#122543;
  --teal:#00BFA6;
  --teal-dark:#0A9E8A;
  --gold:#FFB703;
  --gold-dark:#E6A502;
  --cream:#FFF8EC;
  --light:#F6F8FB;
  --text:#1E293B;
  --muted:#64748B;
  --border:#E2E8F0;
  --radius:18px;
  --shadow:0 12px 40px rgba(10,25,49,0.08);
  --shadow2:0 20px 50px rgba(10,25,49,0.12);
}

*{box-sizing:border-box}
body{
  font-family:'Plus Jakarta Sans',sans-serif;
  color:var(--text);
  background:#fff;
  line-height:1.6;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5{font-weight:800; letter-spacing:-0.02em; color:var(--navy);}
.display-font{font-family:'Instrument Serif',serif; font-weight:400; letter-spacing:-0.03em;}
a{text-decoration:none}

/* NAVBAR */
.topbar{
  background:var(--navy);
  color:#CBD5E1;
  font-size:13px;
  padding:8px 0;
}
.topbar a{color:#fff; font-weight:600}
.navbar{
  padding:14px 0;
  background:rgba(255,255,255,0.95)!important;
  backdrop-filter:blur(12px);
  border-bottom:1px solid #EEF2F7;
  box-shadow:0 4px 20px rgba(0,0,0,0.04);
}
.logo-one-line{
  display:flex; align-items:center; gap:10px;
  font-weight:800; font-size:22px; letter-spacing:-0.02em;
  color:var(--navy)!important; white-space:nowrap;
  text-transform:uppercase;
}
.logo-icon{
  width:42px; height:42px; border-radius:10px;
  background:linear-gradient(135deg, var(--navy) 0%, #1E3A5F 100%);
  color:var(--gold); display:flex; align-items:center; justify-content:center;
  font-size:18px; flex-shrink:0;
  box-shadow:0 6px 16px rgba(10,25,49,0.18);
}
.logo-one-line span{color:var(--teal); margin:0 1px}
.navbar-nav .nav-link{
  font-weight:600; font-size:14.5px; color:var(--navy)!important;
  padding:8px 14px!important; border-radius:8px;
}
.navbar-nav .nav-link:hover, .navbar-nav .nav-link.active{
  background:var(--light); color:var(--teal-dark)!important;
}
.btn-primary{
  background:var(--teal); border-color:var(--teal); color:#fff;
  font-weight:700; padding:10px 22px; border-radius:12px;
  box-shadow:0 8px 20px rgba(0,191,166,0.25);
}
.btn-primary:hover{background:var(--teal-dark); border-color:var(--teal-dark)}
.btn-dark{
  background:var(--navy); border-color:var(--navy); border-radius:12px;
  padding:10px 22px; font-weight:700;
}
.btn-gold{
  background:var(--gold); border-color:var(--gold); color:var(--navy);
  font-weight:800; border-radius:12px; padding:10px 22px;
}
.btn-gold:hover{background:var(--gold-dark); border-color:var(--gold-dark); color:var(--navy)}
.btn-outline{border:1.5px solid var(--border); background:#fff; color:var(--navy); font-weight:700; border-radius:12px; padding:10px 20px}
.btn-outline:hover{background:var(--navy); color:#fff; border-color:var(--navy)}

/* HERO */
.hero{
  padding:40px 0 50px;
  background:
    radial-gradient(900px 400px at 85% 0%, rgba(0,191,166,0.10) 0%, transparent 60%),
    radial-gradient(800px 400px at 10% 20%, rgba(255,183,3,0.10) 0%, transparent 60%),
    linear-gradient(180deg, #FFFFFF 0%, #F6F8FB 100%);
  overflow:hidden;
}
.hero-badge{
  display:inline-flex; align-items:center; gap:8px;
  background:#E6FFF9; border:1px solid #B2F0E8; color:var(--teal-dark);
  font-weight:700; font-size:13px; padding:7px 14px; border-radius:100px;
}
.hero h1{
  font-size:52px; line-height:0.95; margin:18px 0 16px;
}
.hero h1 em{font-family:'Instrument Serif',serif; font-weight:400; color:var(--teal); font-style:italic}
.hero p{color:var(--muted); font-size:18px; max-width:520px}
.hero-stats{
  display:flex; gap:24px; margin-top:28px; flex-wrap:wrap;
}
.hero-stats div b{font-size:22px; color:var(--navy); display:block; line-height:1}
.hero-stats div span{font-size:13px; color:var(--muted); font-weight:600}
.hero-visual{
  position:relative; padding:18px;
}
.hero-card{
  background:#fff; border-radius:22px; padding:14px; box-shadow:var(--shadow2);
  border:1px solid #EEF2F7;
}
.hero-card img{border-radius:16px; width:100%; height:340px; object-fit:cover}
.hero-float{
  position:absolute; background:#fff; border-radius:16px; padding:14px 16px;
  box-shadow:0 16px 40px rgba(0,0,0,0.10); border:1px solid #EEF2F7;
  display:flex; align-items:center; gap:12px;
}
.hero-float-1{bottom:30px; left:-10px}
.hero-float-2{top:40px; right:-8px; padding:10px 14px}

/* SECTIONS */
.section{padding:80px 0}
.section-light{background:var(--light)}
.section-cream{background:var(--cream)}
.section-navy{background:var(--navy); color:#fff}
.section-navy h2, .section-navy h3{color:#fff}
.kicker{
  display:inline-block; font-weight:800; letter-spacing:0.08em; text-transform:uppercase;
  font-size:12px; color:var(--teal-dark); background:#E6FFF9; padding:6px 12px; border-radius:100px;
}
.section h2{font-size:42px; line-height:1.05; margin:12px 0 14px}
.section p.lead{color:var(--muted); font-size:18px}

/* SERVICE CARD */
.service-card{
  background:#fff; border-radius:20px; overflow:hidden;
  border:1px solid #EEF2F7; box-shadow:var(--shadow);
  transition:all .3s ease; height:100%; display:flex; flex-direction:column;
}
.service-card:hover{transform:translateY(-8px); box-shadow:var(--shadow2); border-color:#D8E2F0}
.service-card .img-wrap{position:relative; overflow:hidden}
.service-card img{width:100%; height:210px; object-fit:cover; transition:transform .5s}
.service-card:hover img{transform:scale(1.06)}
.service-card .icon-badge{
  position:absolute; bottom:14px; left:14px;
  width:44px; height:44px; border-radius:12px; background:var(--navy);
  color:var(--gold); display:flex; align-items:center; justify-content:center; font-size:18px;
  box-shadow:0 6px 16px rgba(0,0,0,0.18);
}
.service-card .card-body{padding:22px 22px 20px; flex:1; display:flex; flex-direction:column}
.service-card h3{font-size:19px; margin:0 0 8px}
.service-card p{color:var(--muted); font-size:14.5px; flex:1; margin-bottom:14px}
.service-card .btn{width:100%; font-weight:700; border-radius:12px}

/* WHY CHOOSE */
.feature-box{
  background:#fff; border:1px solid #EEF2F7; border-radius:16px; padding:22px;
  display:flex; gap:16px; height:100%;
}
.feature-box .ic{
  width:48px; height:48px; border-radius:12px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center; font-size:20px;
}
.feature-box h4{font-size:16px; margin:0 0 6px}
.feature-box p{font-size:14px; color:var(--muted); margin:0}

/* PROCESS */
.step-card{
  background:#fff; border-radius:20px; padding:24px; border:1px solid #EEF2F7;
  position:relative; height:100%;
}
.step-number{
  width:36px; height:36px; border-radius:10px; background:var(--navy); color:var(--gold);
  display:flex; align-items:center; justify-content:center; font-weight:800; font-size:14px; margin-bottom:14px;
}
.step-card h4{font-size:16px}
.step-card p{font-size:14px; color:var(--muted)}

/* TESTIMONIAL */
.testimonial-card{
  background:#fff; border-radius:18px; padding:24px; border:1px solid #EEF2F7; box-shadow:var(--shadow);
  height:100%;
}
.stars{color:var(--gold); font-size:14px; letter-spacing:2px}
.testimonial-card p{font-size:15px; color:var(--text); margin:12px 0 16px}
.testimonial-card .author{
  display:flex; align-items:center; gap:12px; border-top:1px solid #F1F5F9; padding-top:14px;
}
.author-avatar{
  width:44px; height:44px; border-radius:50%; background:linear-gradient(135deg, var(--teal), #0EA5E9);
  color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800;
}
.author b{font-size:14px; color:var(--navy)}
.author small{color:var(--muted); font-size:12px; font-weight:600}

/* BLOG CARD */
.blog-card{
  background:#fff; border-radius:18px; overflow:hidden; border:1px solid #EEF2F7; box-shadow:var(--shadow);
  transition:.3s; height:100%; display:flex; flex-direction:column;
}
.blog-card:hover{transform:translateY(-6px); box-shadow:var(--shadow2)}
.blog-card img{width:100%; height:200px; object-fit:cover}
.blog-card .card-body{padding:20px; flex:1; display:flex; flex-direction:column}
.blog-card .tag{
  font-size:11px; font-weight:800; letter-spacing:0.06em; text-transform:uppercase;
  padding:6px 10px; border-radius:100px; background:var(--light); color:var(--navy);
}
.blog-card h3{font-size:18px; margin:12px 0 8px; line-height:1.3}
.blog-card h3 a{color:var(--navy)}
.blog-card p{color:var(--muted); font-size:14px; flex:1}
.read-more{font-weight:800; font-size:14px; color:var(--teal-dark)}

/* STATS */
.stat-box{text-align:center; padding:20px}
.stat-box b{font-size:38px; color:var(--navy); display:block}
.stat-box span{font-size:13px; font-weight:700; letter-spacing:0.05em; text-transform:uppercase; color:var(--muted)}

/* FOOTER */
.footer{background:var(--navy); color:#94A3B8; padding:60px 0 30px}
.footer h5{color:#fff; font-size:15px; margin-bottom:14px}
.footer a{color:#CBD5E1; font-size:14px}
.footer a:hover{color:var(--gold)}
.footer .logo-one-line{color:#fff!important}
.footer .logo-one-line span{color:var(--gold)}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,0.08); margin-top:36px; padding-top:20px;
  display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:13px;
}
.newsletter-box{
  background:#fff; border-radius:16px; padding:8px; display:flex; gap:8px; max-width:420px;
  box-shadow:0 8px 24px rgba(0,0,0,0.12);
}
.newsletter-box input{border:none; flex:1; padding:10px 14px; outline:none; font-weight:500}
.newsletter-box input::placeholder{color:#94A3B8}

/* PAGE HEADER */
.page-header{
  background:linear-gradient(135deg, var(--navy) 0%, #1E3A5F 100%);
  color:#fff; padding:60px 0 50px; position:relative; overflow:hidden;
}
.page-header::after{
  content:""; position:absolute; right:-60px; top:-60px; width:300px; height:300px;
  background:radial-gradient(circle, rgba(0,191,166,0.18) 0%, transparent 70%);
  border-radius:50%;
}
.page-header h1{color:#fff; font-size:42px}
.page-header p{color:#CBD5E1; max-width:640px}
.breadcrumb a{color:#94A3B8; font-weight:600; font-size:13px}
.breadcrumb .active{color:#fff}

/* CONTACT */
.contact-card{
  background:#fff; border-radius:18px; padding:26px; border:1px solid #EEF2F7; box-shadow:var(--shadow);
}
.form-control, .form-select{
  padding:12px 14px; border-radius:12px; border:1.5px solid #E2E8F0; font-weight:500;
}
.form-control:focus, .form-select:focus{border-color:var(--teal); box-shadow:0 0 0 4px rgba(0,191,166,0.12)}
.form-label{font-weight:700; font-size:13px; color:var(--navy); margin-bottom:6px}
.info-item{
  display:flex; gap:14px; padding:16px; background:var(--light); border-radius:14px; margin-bottom:12px;
}
.info-item .ic{
  width:42px; height:42px; border-radius:10px; background:var(--navy); color:#fff;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}

/* BLOG SINGLE */
.blog-single img.hero-img{border-radius:18px; width:100%; height:420px; object-fit:cover}
.blog-content p{font-size:17px; color:#334155; line-height:1.85; margin-bottom:18px}
.blog-content h3{margin:28px 0 12px; font-size:22px}
.blog-content blockquote{
  border-left:4px solid var(--teal); background:#F0FDF9; padding:16px 20px;
  border-radius:0 12px 12px 0; font-style:italic; color:var(--navy); font-weight:600;
}

/* TOAST */
.toast-container{position:fixed; top:20px; right:20px; z-index:9999}
.app-toast{
  background:var(--navy); color:#fff; padding:14px 18px; border-radius:12px;
  box-shadow:0 12px 30px rgba(0,0,0,0.18); display:flex; align-items:center; gap:10px;
  min-width:300px; animation:slideIn .3s ease;
}
@keyframes slideIn{from{transform:translateX(100%); opacity:0} to{transform:translateX(0); opacity:1}}

/* RESPONSIVE */
@media(max-width: 991px){
  .hero h1{font-size:38px}
  .hero-float-1{left:6px; bottom:10px}
  .hero-float-2{right:6px; top:20px}
  .section{padding:60px 0}
  .section h2{font-size:32px}
}
@media(max-width: 576px){
  .logo-one-line{font-size:16px}
  .hero h1{font-size:32px}
  .newsletter-box{flex-direction:column}
}
.hero-img{width:100%;height:380px;object-fit:cover;border-radius:18px}
.newsletter-box{max-width:100%;min-width:0!important}
.newsletter-box input{min-width:0;width:100%}
.logo-one-line{font-size:19px;gap:6px}
@media(min-width:992px) and (max-width:1199px){.navbar-nav .nav-link{padding:8px!important;font-size:12px}.navbar .btn{font-size:12px;padding:10px}.logo-one-line{font-size:16px}}
@media(max-width:576px){.logo-one-line{font-size:14px;gap:4px}.logo-icon{width:32px;height:32px}.hero-float-2{display:none}.hero-float-1{left:10px}.hero-card img{height:260px}.hero h1{line-height:1.12}.page-header h1{font-size:30px}.hero-img{height:240px}.topbar{display:none}.app-toast{min-width:0}}
