/* ============================================
   NTCB — Shared Stylesheet
   Clean fintech / light UI — white & cream + navy
   ============================================ */

:root{
  --navy:#0E1C3D;
  --navy-deep:#081227;
  --navy-soft:#1B2E54;
  --gold:#C9912F;
  --gold-soft:#E3B864;
  --cream:#F7F5F0;
  --cream-deep:#EFEBE2;
  --white:#FFFFFF;
  --slate:#5A6478;
  --slate-light:#8A93A6;
  --green:#1F7A57;
  --green-soft:#E4F0EB;
  --ink:#141A26;
  --border:#E6E2D8;
  --border-soft:#F0EDE5;
  --shadow-sm:0 2px 8px -3px rgba(14,28,61,0.12);
  --shadow-md:0 12px 32px -16px rgba(14,28,61,0.22);
  --shadow-lg:0 28px 64px -28px rgba(14,28,61,0.32);
  --radius:14px;
  --radius-sm:8px;
  --maxw:1160px;
}

*{margin:0;padding:0;box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--ink);
  background:var(--cream);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,h4,.display{
  font-family:'Space Grotesk','Inter',sans-serif;
  font-weight:700;
  line-height:1.05;
  letter-spacing:-0.02em;
  color:var(--navy);
}

.mono{font-family:'JetBrains Mono',monospace;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}

.eyebrow{
  font-family:'JetBrains Mono',monospace;
  font-size:0.74rem;
  font-weight:600;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--gold);
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.eyebrow::before{
  content:"";
  width:24px;height:1px;
  background:var(--gold);
  display:inline-block;
}

/* ---------- NAV ---------- */
.nav{
  position:sticky;top:0;z-index:100;
  background:rgba(247,245,240,0.82);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border-soft);
}
.nav-inner{
  max-width:var(--maxw);margin:0 auto;
  padding:16px 24px;
  display:flex;align-items:center;justify-content:space-between;
}
.brand{
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;font-size:1.05rem;
  letter-spacing:-0.01em;color:var(--navy);
  display:flex;align-items:center;gap:10px;
}
.brand .mark{
  width:30px;height:30px;border-radius:7px;
  background:linear-gradient(135deg,var(--navy),var(--navy-soft));
  display:flex;align-items:center;justify-content:center;
  color:var(--gold);font-weight:700;font-size:0.95rem;
  font-family:'Space Grotesk',sans-serif;
  box-shadow:var(--shadow-sm);
}
.brand span{color:var(--gold);}
.nav-links{display:flex;align-items:center;gap:6px;}
.nav-links a{
  font-size:0.88rem;font-weight:500;color:var(--slate);
  padding:9px 14px;border-radius:var(--radius-sm);
  transition:color .18s,background .18s;
}
.nav-links a:hover,.nav-links a.active{color:var(--navy);background:var(--cream-deep);}
.nav-cta{
  background:var(--navy)!important;color:var(--white)!important;
  font-weight:600!important;box-shadow:var(--shadow-sm);
}
.nav-cta:hover{background:var(--navy-deep)!important;}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--navy);margin:5px 0;border-radius:2px;transition:.2s;}

/* ---------- BUTTONS ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  font-family:'Inter',sans-serif;font-weight:600;font-size:0.92rem;
  padding:14px 26px;border-radius:var(--radius-sm);
  cursor:pointer;border:1px solid transparent;
  transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;
  letter-spacing:-0.01em;
}
.btn svg{width:16px;height:16px;}
.btn-primary{background:var(--navy);color:var(--white);box-shadow:var(--shadow-sm);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--navy-deep);}
.btn-gold{background:var(--gold);color:var(--navy-deep);box-shadow:var(--shadow-sm);}
.btn-gold:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--gold-soft);}
.btn-ghost{background:transparent;color:var(--navy);border-color:var(--border);}
.btn-ghost:hover{background:var(--white);border-color:var(--navy);}
.btn-lg{padding:17px 34px;font-size:1rem;}
.btn-block{width:100%;justify-content:center;}

/* ---------- SECTION SHELL ---------- */
.section{padding:88px 0;}
.section-head{max-width:620px;margin-bottom:48px;}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center;}
.section-head h2{font-size:clamp(1.8rem,4vw,2.6rem);margin:16px 0 14px;}
.section-head p{color:var(--slate);font-size:1.05rem;}

/* ---------- REVEAL ANIMATION ---------- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.08s;}
.reveal.d2{transition-delay:.16s;}
.reveal.d3{transition-delay:.24s;}
.reveal.d4{transition-delay:.32s;}

/* ---------- FOOTER ---------- */
.footer{background:var(--navy-deep);color:rgba(255,255,255,0.6);padding:64px 0 32px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;margin-bottom:48px;}
.footer .brand{color:var(--white);margin-bottom:16px;}
.footer-col h4{color:var(--white);font-size:0.8rem;letter-spacing:0.14em;text-transform:uppercase;margin-bottom:16px;font-family:'JetBrains Mono',monospace;font-weight:600;}
.footer-col a{display:block;color:rgba(255,255,255,0.6);font-size:0.92rem;padding:6px 0;transition:color .18s;}
.footer-col a:hover{color:var(--gold-soft);}
.footer-intro p{font-size:0.92rem;max-width:280px;margin-top:4px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:0.82rem;color:rgba(255,255,255,0.4);}
.footer-bottom a{color:var(--gold-soft);}

/* ---------- FORM PRIMITIVES ---------- */
.field{margin-bottom:18px;}
.field label{display:block;font-size:0.8rem;font-weight:600;color:var(--navy);margin-bottom:7px;letter-spacing:-0.01em;}
.field input,.field select,.field textarea{
  width:100%;padding:14px 16px;border:1px solid var(--border);
  border-radius:var(--radius-sm);font-family:'Inter',sans-serif;font-size:1rem;
  background:var(--white);color:var(--ink);transition:border-color .18s,box-shadow .18s;
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(14,28,61,0.08);
}
.field .hint{font-size:0.8rem;color:var(--slate-light);margin-top:6px;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:0.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:0.001ms!important;
    scroll-behavior:auto!important;
  }
  .reveal{opacity:1!important;transform:none!important;}
}

/* ---------- RESPONSIVE ---------- */
@media (max-width:860px){
  .nav-links{
    position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:2px;
    background:var(--cream);padding:12px 16px 20px;
    border-bottom:1px solid var(--border);
    box-shadow:var(--shadow-md);
    display:none;
  }
  .nav-links.open{display:flex;}
  .nav-links a{padding:13px 14px;}
  .nav-toggle{display:block;}
  .footer-grid{grid-template-columns:1fr;gap:28px;}
  .field-row{grid-template-columns:1fr;}
  .section{padding:60px 0;}
}
