/* ------------------------------------------------------------------
   powerbuilderconsultantsusa.com - site specific styles
   Layered on top of wireframe.css (Bootstrap 4.1.3, Pingendo theme).
   Theme colours: primary #FFFFFF, secondary #082360, info #3156AA,
   light #9BB0E2, dark #000102.
   ------------------------------------------------------------------ */

body { color: #333; }

h1, h2, h3, h4, h5 { font-weight: 300; }
h1 { font-size: 2.6rem; line-height: 1.15; }
h2 { font-size: 1.9rem; }
strong, b { font-weight: 600; }

/* ---- Navigation / brand ---- */
.navbar-brand { padding-top: .35rem; padding-bottom: .35rem; }
.brand-mark {
  background: #fff;
  border-radius: .25rem;
  padding: 4px;
  display: inline-flex;
  line-height: 0;
}
.brand-mark img { width: 34px; height: auto; display: block; }
.brand-text { display: flex; flex-direction: column; line-height: 1.15; }
.brand-name {
  font-size: 1.35rem;
  font-weight: 600;
  letter-spacing: .01em;
  color: #fff;
}
.brand-sub {
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .13em;
  color: rgba(255,255,255,.7);
  font-weight: 400;
}
.navbar-dark .navbar-nav .nav-link { color: rgba(255,255,255,.8); font-size: .95rem; }
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .active > .nav-link { color: #fff; }
.navbar-dark .navbar-nav .active > .nav-link { border-bottom: 2px solid #9BB0E2; }

/* ---- Hero ---- */
.hero h1 { font-weight: 300; }
.hero .lead { max-width: 46em; }
.hero .btn-primary { color: #082360; font-weight: 600; border-color: #fff; }

/* ---- Trust strip ---- */
.trust-strip strong { font-weight: 600; }
.trust-strip .small { opacity: .8; }

/* ---- Backgrounds ---- */
.bg-light-grey { background-color: #f4f6fa; }

/* ---- Typography helpers ---- */
.lead-sm { font-size: 1.15rem; font-weight: 300; line-height: 1.6; }
.eyebrow {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: .75rem;
  font-weight: 600;
  color: #3156AA;
  margin-bottom: .4rem;
}
.text-white .eyebrow, .bg-secondary .eyebrow { color: #9BB0E2; }

/* ---- Cards ---- */
.service-card {
  background: #fff;
  border: 1px solid #e3e8f2;
  border-radius: .3rem;
  position: relative;
}
.service-card h4, .service-card h5 { color: #082360; }
.service-card a { color: #3156AA; font-weight: 600; }

.process-card {
  background: #f4f6fa;
  border-radius: .3rem;
  border-top: 3px solid #3156AA;
}
.process-card h5 { color: #082360; }
.step-num {
  font-size: 1.6rem;
  font-weight: 600;
  color: #9BB0E2;
  line-height: 1;
  margin-bottom: .5rem;
}

.highlight-box {
  background: #f4f6fa;
  border-left: 4px solid #3156AA;
  border-radius: .2rem;
}
.highlight-box h5 { color: #082360; }

.case-study {
  background: #fff;
  border: 1px solid #e3e8f2;
  border-radius: .3rem;
}
.case-study h2 { color: #082360; }

.link-card {
  background: #fff;
  border: 1px solid #e3e8f2;
  border-radius: .3rem;
  color: #333;
  text-decoration: none;
}
.link-card:hover { border-color: #3156AA; color: #082360; text-decoration: none; }

.contact-block {
  background: #f4f6fa;
  border-radius: .3rem;
}

/* ---- Stat panel ---- */
.stat-panel { background: #082360; border-radius: .3rem; color: #fff; }
.stat-row {
  display: flex;
  align-items: baseline;
  padding: .6rem 0;
  border-bottom: 1px solid rgba(255,255,255,.15);
}
.stat-row:last-child { border-bottom: 0; }
.stat-figure {
  font-size: 1.5rem;
  font-weight: 600;
  color: #9BB0E2;
  min-width: 6.5rem;
}
.stat-label { font-size: .9rem; opacity: .85; }

/* ---- Lists ---- */
.tick-list { list-style: none; padding-left: 0; }
.tick-list li {
  position: relative;
  padding-left: 1.6rem;
  margin-bottom: .7rem;
}
.tick-list li:before {
  content: "\f00c";
  font-family: FontAwesome;
  position: absolute;
  left: 0;
  top: .1rem;
  color: #3156AA;
  font-size: .85rem;
}
.tick-light li:before { color: #9BB0E2; }

/* ---- Appeon partner badge ----
   appeon_consulting.png carries a real alpha channel, so the pale blue
   rounded badge sits directly on the background with no white plate.
   Do not swap in appeon_consulting_small.png here - it is opaque white. */
.partner-badge {
  max-width: 280px;
  width: 100%;
  height: auto;
}

/* ---- Version badges ---- */
.version-badge {
  font-size: .82rem;
  font-weight: 500;
  padding: .45em .8em;
  background: #fff;
  color: #082360;
}

/* ---- FAQ ---- */
.faq-item { border-bottom: 1px solid #e3e8f2; }
.faq-item:last-child { border-bottom: 0; }
.faq-item h3 { color: #082360; font-weight: 500; }

/* ---- Footer ---- */
footer h5 { font-size: 1rem; font-weight: 600; }
.footer-links a { color: rgba(255,255,255,.75); }
.footer-links a:hover { color: #fff; }
.footer-links li { margin-bottom: .35rem; }

/* ---- Responsive ---- */
@media (max-width: 767px) {
  h1 { font-size: 2rem; }
  h2 { font-size: 1.5rem; }
  .stat-figure { min-width: 5.5rem; font-size: 1.25rem; }
}
