:root{
  --royal-blue:#132A54;
  --royal-blue-deep:#0B1B38;
  --royal-blue-bright:#2F5AA8;
  --gold:#C6A44C;
  --gold-light:#E4CD8B;
  --white:#FFFFFF;
  --offwhite:#F5F6F8;
  --dark-grey:#262A32;
  --mid-grey:#616873;
  --line-grey:#E3E5EA;
  --success-green:#1E8A5F;
  --font-display:'Poppins', sans-serif;
  --font-body:'Inter', sans-serif;
  --radius:14px;
  --container:1180px;
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--font-body);
  color:var(--dark-grey);
  background:var(--white);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
ul{list-style:none;}
.wrap{max-width:var(--container); margin:0 auto; padding:0 24px;}
h1,h2,h3,h4{font-family:var(--font-display); color:var(--royal-blue-deep); letter-spacing:-0.01em;}
section{position:relative;}
.eyebrow{
  font-family:var(--font-body);
  font-size:0.72rem;
  font-weight:700;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--gold);
  display:inline-block;
  margin-bottom:14px;
}
.section-head{max-width:640px; margin-bottom:48px;}
.section-head h2{font-size:clamp(1.7rem, 3vw, 2.4rem); font-weight:700; margin-bottom:14px;}
.section-head p{color:var(--mid-grey); font-size:1.02rem;}
.oneline{white-space:nowrap; font-size:clamp(1rem, 3.6vw, 2.4rem);}
@media (max-width:480px){
  .oneline{white-space:normal; font-size:clamp(1.4rem, 5.5vw, 2rem);}
}
.btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:14px 26px;
  border-radius:10px;
  font-family:var(--font-body);
  font-weight:600;
  font-size:0.95rem;
  cursor:pointer;
  border:1px solid transparent;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
  white-space:nowrap;
}
.btn-gold{background:var(--gold); color:var(--royal-blue-deep);}
.btn-gold:hover{background:var(--gold-light); transform:translateY(-2px); box-shadow:0 10px 24px rgba(198,164,76,0.35);}
.btn-outline{background:transparent; border-color:rgba(255,255,255,0.35); color:var(--white);}
.btn-outline:hover{background:rgba(255,255,255,0.1); transform:translateY(-2px);}
.btn-line{background:transparent; border-color:var(--royal-blue); color:var(--royal-blue);}
.btn-line:hover{background:var(--royal-blue); color:var(--white);}

/* NAV */
header{
  position:sticky; top:0; z-index:100;
  background:rgba(11,27,56,0.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,0.08);
}
nav.wrap{display:flex; align-items:center; justify-content:space-between; height:76px;}
.logo{display:flex; align-items:center; gap:12px;}
.logo-mark{
  width:42px; height:42px; border-radius:10px;
  background:linear-gradient(145deg, var(--gold-light), var(--gold));
  display:flex; align-items:center; justify-content:center;
  position:relative;
  flex-shrink:0;
}
.logo-mark svg{width:24px; height:24px;}
.logo-text{color:var(--white); font-family:var(--font-display); font-weight:700; font-size:1.05rem; line-height:1.1;}
.logo-text span{display:block; font-family:var(--font-body); font-weight:400; font-size:0.66rem; color:var(--gold-light); letter-spacing:0.08em; margin-top:2px;}
.nav-links{display:flex; gap:32px; align-items:center;}
.nav-links a{color:rgba(255,255,255,0.82); font-size:0.92rem; font-weight:500; transition:color .15s;}
.nav-links a:hover, .nav-links a.active{color:var(--gold-light);}
.nav-cta{display:flex; gap:12px; align-items:center;}
.icon-btn{
  width:40px; height:40px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.14);
  color:var(--white); transition:background .15s;
}
.icon-btn:hover{background:rgba(255,255,255,0.18);}

/* HERO (home page) */
.hero{
  background:radial-gradient(1100px 600px at 78% -10%, rgba(47,90,168,0.55), transparent 60%), linear-gradient(180deg, var(--royal-blue-deep), var(--royal-blue));
  color:var(--white);
  padding:96px 0 60px;
  overflow:hidden;
}
.hero-grid{display:grid; grid-template-columns:1.05fr 0.95fr; gap:40px; align-items:center;}
.hero-copy h1{font-size:clamp(2.2rem, 4.4vw, 3.4rem); font-weight:700; color:var(--white); line-height:1.14; margin-bottom:20px;}
.hero-copy h1 em{font-style:normal; color:var(--gold-light);}
.hero-copy p.lead{font-size:1.08rem; color:rgba(255,255,255,0.78); max-width:520px; margin-bottom:32px;}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; margin-bottom:40px;}
.hero-stats{display:flex; gap:36px; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,0.14); padding-top:26px;}
.hero-stats div strong{display:block; font-family:var(--font-display); font-size:1.5rem; color:var(--gold-light);}
.hero-stats div span{font-size:0.8rem; color:rgba(255,255,255,0.62);}

/* HUB VISUAL */
.hub-wrap{position:relative; display:flex; align-items:center; justify-content:center; min-height:420px;}
.hub-svg{width:100%; max-width:480px; height:auto;}
.hub-node-label{font-family:var(--font-body); font-size:11px; fill:rgba(255,255,255,0.85); font-weight:600;}
.hub-center-label{font-family:var(--font-display); font-weight:700; fill:var(--royal-blue-deep); font-size:15px;}
.pulse-line{stroke-dasharray:6 8; animation:dash 3.4s linear infinite;}
@keyframes dash{ to{ stroke-dashoffset:-140; } }
.pulse-dot{animation:pulseMove 5s linear infinite;}
@keyframes pulseMove{
  0%{ opacity:0; }
  5%{ opacity:1; }
  95%{ opacity:1; }
  100%{ opacity:0; }
}

/* PAGE HERO (sub-pages: loans, insurance, investments, real-estate) */
.page-hero{
  background:radial-gradient(900px 500px at 85% -20%, rgba(47,90,168,0.5), transparent 60%), linear-gradient(180deg, var(--royal-blue-deep), var(--royal-blue));
  color:var(--white);
  padding:70px 0 56px;
  overflow:hidden;
}
.page-hero .eyebrow{color:var(--gold-light);}
.page-hero h1{color:var(--white); font-size:clamp(1.9rem, 3.6vw, 2.8rem); margin-bottom:14px;}
.page-hero p{color:rgba(255,255,255,0.78); font-size:1.02rem; max-width:620px; margin-bottom:26px;}
.breadcrumb{font-size:0.82rem; color:rgba(255,255,255,0.55); margin-bottom:18px;}
.breadcrumb a{color:rgba(255,255,255,0.8);}
.breadcrumb a:hover{color:var(--gold-light);}

/* DIFFERENTIATORS */
.diff-strip{background:var(--offwhite); padding:64px 0;}
.diff-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:1px; background:var(--line-grey); border-radius:var(--radius); overflow:hidden;}
.diff-item{background:var(--white); padding:30px 26px;}
.diff-item .num{font-family:var(--font-display); font-weight:700; color:var(--gold); font-size:0.85rem; margin-bottom:10px; display:block;}
.diff-item h4{font-size:1.02rem; margin-bottom:8px;}
.diff-item p{color:var(--mid-grey); font-size:0.92rem;}

/* SERVICE CONTENT BLOCKS (Loans / Insurance / Investment / Real Estate pages) */
.services{padding:80px 0;}
.service-layout{display:grid; grid-template-columns:0.9fr 1.1fr; gap:44px; align-items:start;}
.service-intro h3{font-size:1.5rem; margin-bottom:12px;}
.service-intro p{color:var(--mid-grey); margin-bottom:20px;}
.service-cols{display:grid; grid-template-columns:1fr 1fr; gap:28px;}
.service-col h5{font-size:0.78rem; text-transform:uppercase; letter-spacing:0.08em; color:var(--gold); font-weight:700; margin-bottom:14px;}
.service-col ul li{
  padding:10px 0; border-bottom:1px solid var(--line-grey); font-size:0.94rem; color:var(--dark-grey);
  display:flex; align-items:center; gap:10px;
}
.service-col ul li:last-child{border-bottom:none;}
.service-col ul li::before{content:''; width:6px; height:6px; border-radius:50%; background:var(--royal-blue-bright); flex-shrink:0;}

.partner-block{margin-top:44px; padding-top:36px; border-top:1px solid var(--line-grey);}
.partner-block h4{font-size:1.15rem; margin-bottom:6px;}
.partner-block .cat-desc{color:var(--mid-grey); font-size:0.9rem; margin-bottom:20px;}
.partner-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:16px;}
.partner-card{border:1px solid var(--line-grey); border-radius:10px; padding:18px; background:var(--white);}
.partner-card .badge{display:inline-block; font-size:0.66rem; font-weight:700; padding:3px 10px; border-radius:999px; margin-bottom:10px; text-transform:uppercase; letter-spacing:0.05em;}
.badge-psu{background:rgba(19,42,84,0.08); color:var(--royal-blue);}
.badge-private{background:rgba(198,164,76,0.18); color:#8A6D1F;}
.partner-card h6{font-family:var(--font-display); font-size:0.96rem; font-weight:600; color:var(--dark-grey); margin-bottom:6px;}
.partner-card p{font-size:0.85rem; color:var(--mid-grey); margin:0;}
.selector-table{width:100%; border-collapse:collapse; margin-top:22px; font-size:0.88rem;}
.selector-table th, .selector-table td{text-align:left; padding:12px 16px; border-bottom:1px solid var(--line-grey);}
.selector-table th{font-family:var(--font-display); font-size:0.75rem; text-transform:uppercase; letter-spacing:0.05em; color:var(--royal-blue); background:var(--offwhite);}
.selector-table td:first-child{font-weight:600; color:var(--dark-grey);}
.selector-table td:last-child{color:var(--mid-grey);}

/* CTA BANNER (bottom of sub-pages) */
.cta-banner{background:var(--royal-blue); color:var(--white); padding:56px 0; text-align:center;}
.cta-banner h3{color:var(--white); font-size:1.5rem; margin-bottom:10px;}
.cta-banner p{color:rgba(255,255,255,0.75); margin-bottom:26px;}
.cta-actions{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}

/* CALCULATORS */
.calc{background:var(--royal-blue-deep); padding:96px 0; color:var(--white);}
.calc .section-head h2, .calc .section-head p{color:var(--white);}
.calc .section-head p{color:rgba(255,255,255,0.68);}
.calc-grid{display:grid; grid-template-columns:1fr 1fr; gap:28px;}
.calc-card{background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1); border-radius:var(--radius); padding:32px;}
.calc-card h3{color:var(--white); font-size:1.2rem; margin-bottom:22px;}
.calc-row{margin-bottom:22px;}
.calc-row label{display:flex; justify-content:space-between; font-size:0.85rem; color:rgba(255,255,255,0.72); margin-bottom:8px;}
.calc-row label b{color:var(--gold-light); font-family:var(--font-display); font-weight:600;}
input[type=range]{
  width:100%; height:6px; border-radius:4px; background:rgba(255,255,255,0.18); appearance:none; outline:none;
}
input[type=range]::-webkit-slider-thumb{
  appearance:none; width:18px; height:18px; border-radius:50%; background:var(--gold); cursor:pointer; border:3px solid var(--royal-blue-deep);
}
.calc-result{
  margin-top:26px; padding:20px; border-radius:10px; background:rgba(198,164,76,0.1); border:1px solid rgba(198,164,76,0.3);
  display:flex; justify-content:space-between; flex-wrap:wrap; gap:14px;
}
.calc-result div span{display:block; font-size:0.72rem; color:rgba(255,255,255,0.6); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:4px;}
.calc-result div strong{font-family:var(--font-display); font-size:1.3rem; color:var(--gold-light);}

/* ABOUT */
.about{padding:96px 0; background:var(--offwhite);}
.about-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:56px; align-items:start;}
.founder-card{
  background:var(--white); border-radius:var(--radius); padding:32px; border:1px solid var(--line-grey);
}
.founder-avatar{
  width:64px; height:64px; border-radius:50%; background:linear-gradient(145deg, var(--royal-blue-bright), var(--royal-blue-deep));
  display:flex; align-items:center; justify-content:center; color:var(--white); font-family:var(--font-display); font-weight:700; font-size:1.3rem; margin-bottom:18px;
}
.founder-card h4{font-size:1.1rem; margin-bottom:2px;}
.founder-card .role{color:var(--mid-grey); font-size:0.85rem; margin-bottom:16px;}
.founder-card p{color:var(--mid-grey); font-size:0.93rem;}
.mv-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-bottom:32px;}
.mv-card{background:var(--white); border-radius:var(--radius); padding:26px; border:1px solid var(--line-grey);}
.mv-card h4{font-size:0.95rem; color:var(--royal-blue-bright); margin-bottom:10px;}
.mv-card p{color:var(--mid-grey); font-size:0.92rem;}
.values-row{display:flex; flex-wrap:wrap; gap:10px;}
.value-chip{
  padding:9px 16px; border-radius:999px; background:var(--white); border:1px solid var(--line-grey);
  font-size:0.85rem; font-weight:600; color:var(--royal-blue);
}

/* NETWORK STATS */
.network{padding:80px 0; background:var(--royal-blue); color:var(--white);}
.network-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:30px; text-align:center;}
.network-grid strong{display:block; font-family:var(--font-display); font-size:2.1rem; color:var(--gold-light); margin-bottom:6px;}
.network-grid span{font-size:0.85rem; color:rgba(255,255,255,0.72);}

/* KNOWLEDGE */
.knowledge{padding:96px 0;}
.kn-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.kn-card{border:1px solid var(--line-grey); border-radius:var(--radius); padding:28px; transition:box-shadow .18s, transform .18s;}
.kn-card:hover{box-shadow:0 16px 30px rgba(19,42,84,0.1); transform:translateY(-3px);}
.kn-tag{font-size:0.72rem; font-weight:700; text-transform:uppercase; letter-spacing:0.08em; color:var(--success-green); margin-bottom:12px; display:block;}
.kn-card h4{font-size:1.05rem; margin-bottom:10px;}
.kn-card p{color:var(--mid-grey); font-size:0.9rem;}

/* CONTACT */
.contact{background:var(--offwhite); padding:96px 0;}
.contact-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:48px;}
.contact-card{background:var(--white); border:1px solid var(--line-grey); border-radius:var(--radius); padding:18px 22px; display:flex; gap:16px; align-items:center; margin-bottom:14px;}
.contact-card .ic{width:42px; height:42px; border-radius:10px; background:var(--offwhite); display:flex; align-items:center; justify-content:center; flex-shrink:0; color:var(--royal-blue-bright);}
.contact-card strong{display:block; font-size:0.95rem;}
.contact-card span{color:var(--mid-grey); font-size:0.85rem;}
.form-card{background:var(--white); border:1px solid var(--line-grey); border-radius:var(--radius); padding:34px;}
.form-card h3{margin-bottom:22px; font-size:1.2rem;}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px;}
.form-field{display:flex; flex-direction:column; gap:6px;}
.form-field.full{grid-column:1/-1;}
.form-field label{font-size:0.8rem; font-weight:600; color:var(--mid-grey);}
.form-field input, .form-field select, .form-field textarea{
  padding:12px 14px; border-radius:8px; border:1px solid var(--line-grey); font-family:var(--font-body); font-size:0.92rem; outline:none; background:var(--white);
}
.form-field input:focus, .form-field select:focus, .form-field textarea:focus{border-color:var(--royal-blue-bright);}
.form-submit{width:100%; justify-content:center; margin-top:6px;}

/* FOOTER */
footer{background:var(--royal-blue-deep); color:rgba(255,255,255,0.7); padding:56px 0 26px;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; margin-bottom:40px;}
.footer-grid h5{color:var(--white); font-family:var(--font-display); font-size:0.9rem; margin-bottom:16px;}
.footer-grid ul li{margin-bottom:10px; font-size:0.88rem;}
.footer-grid ul li a:hover{color:var(--gold-light);}
.footer-about p{font-size:0.88rem; max-width:280px; margin-top:14px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.1); padding-top:22px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:0.8rem;}

/* WHATSAPP FLOAT */
.wa-float{
  position:fixed; bottom:26px; right:26px; z-index:200;
  width:58px; height:58px; border-radius:50%; background:var(--success-green);
  display:flex; align-items:center; justify-content:center; box-shadow:0 12px 28px rgba(30,138,95,0.4);
  transition:transform .18s;
}
.wa-float:hover{transform:scale(1.08);}

@media (max-width:960px){
  .hero-grid, .about-grid, .contact-grid{grid-template-columns:1fr;}
  .hub-wrap{order:-1; min-height:280px;}
  .diff-grid{grid-template-columns:1fr;}
  .service-layout{grid-template-columns:1fr;}
  .service-cols{grid-template-columns:1fr;}
  .network-grid{grid-template-columns:repeat(2,1fr); gap:24px;}
  .calc-grid{grid-template-columns:1fr;}
  .kn-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .nav-links{display:none;}
  .form-row{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion: reduce){
  .pulse-line, .pulse-dot{animation:none;}
  .doodle{animation:none !important;}
}

/* DOODLES — live only in the outer gutter beyond the 1180px content column,
   so they never sit under or beside real content. Hidden below 1440px,
   where that gutter no longer exists. */
.doodle{
  position:absolute;
  top:50%;
  pointer-events:none;
  z-index:1;
  width:46px;
  transform:translateY(-50%);
  animation:doodleFloat 8s ease-in-out infinite;
}
.doodle-left{ left:38px; }
.doodle-right{ right:38px; }
.doodle-delay{ animation-delay:1.6s; }
@keyframes doodleFloat{
  0%, 100%{ transform:translateY(-50%) rotate(var(--rot,0deg)); }
  50%{ transform:translateY(calc(-50% - 8px)) rotate(var(--rot,0deg)); }
}
section > .wrap, .hero > .wrap, .page-hero > .wrap{position:relative; z-index:2;}
@media (max-width:1440px){
  .doodle{ display:none; }
}
