/* FlatMap IT brand overrides — blue / parchment palette
   Layered after style.css so all the template's blues, oranges and greys
   resolve to a single high-contrast navy on warm parchment. */

:root {
  --paper:       #F4ECD8;   /* warm parchment page background */
  --paper-soft:  #FBF6E9;   /* lighter parchment for raised surfaces */
  --paper-edge:  #E2D6B5;   /* parchment edge / muted dividers */
  --ink:         #15181D;   /* body text */
  --ink-soft:    #3A4049;   /* secondary text */
  --brand:       #1B3A6B;   /* ink-navy primary */
  --brand-dark:  #0E2747;   /* hover / pressed */
  --brand-soft:  rgba(27, 58, 107, 0.10);

  /* Override Bootstrap variables consumed via var() */
  --primary: var(--brand);
  --blue:    var(--brand);
}

/* ---------- Page surface ---------- */
html, body {
  background-color: var(--paper);
  color: var(--ink);
}

p, li { color: var(--ink); }

/* ---------- Links & accents ---------- */
a { color: var(--brand); }
a:hover, a:focus { color: var(--brand-dark); }

.text-primary { color: var(--brand) !important; }
.bg-primary,
.bg-primary[class] {
  background-color: var(--brand) !important;
  color: var(--paper) !important;
}
.bg-primary p,
.bg-primary span { color: var(--paper) !important; }

/* ---------- Headings ---------- */
h1, h2, h3, h4, h5, h6 { color: var(--ink); }

.heading-section .subheading,
.subheading {
  color: var(--brand);
  letter-spacing: 0.03em;
}

.ftco-heading-2 { color: var(--paper); }

/* ---------- Buttons ---------- */
.btn-primary,
.btn.btn-primary {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--paper) !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn.btn-primary:hover,
.btn.btn-primary:focus {
  background-color: var(--brand-dark) !important;
  border-color: var(--brand-dark) !important;
  color: var(--paper) !important;
}

.btn-outline-primary,
.btn.btn-primary.btn-outline-primary {
  color: var(--brand) !important;
  border-color: var(--brand) !important;
  background-color: transparent !important;
}
.btn-outline-primary:hover,
.btn.btn-primary.btn-outline-primary:hover {
  background-color: var(--brand) !important;
  color: var(--paper) !important;
}

/* ---------- Navbar (brand bar) ---------- */
.navbar.ftco_navbar.bg-dark { background-color: var(--brand) !important; }
.navbar-dark .navbar-brand,
.navbar-dark .navbar-nav .nav-link {
  color: var(--paper) !important;
}
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus,
.navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link {
  color: #fff !important;
  border-bottom: 2px solid var(--paper);
}

/* ---------- Hero / about sections ---------- */
.ftco-about,
.ftco-section { background-color: var(--paper); }

.hero .overlay { background-color: rgba(14, 39, 71, 0.45); }

.hero .home-slider .slider-text .text {
  background-color: rgba(252, 249, 240, 0.82);
  padding: 1.5rem 1.75rem;
  border-radius: 6px;
  backdrop-filter: blur(2px);
}
.hero .home-slider .slider-text .text .subheading { color: var(--brand); }
.hero .home-slider .slider-text .text h2 { color: var(--ink); }

/* ---------- Footer ---------- */
.ftco-footer {
  background-color: var(--brand);
  color: var(--paper);
}
.ftco-footer p,
.ftco-footer li,
.ftco-footer a,
.ftco-footer span { color: var(--paper) !important; }
.ftco-footer a:hover { color: #fff !important; }
.ftco-footer .ftco-footer-widget h2 { color: var(--paper); }

/* Replace any leftover red template heart */
.color-danger { color: var(--paper); }

/* ---------- Loader spinner ---------- */
#ftco-loader .path { stroke: var(--brand) !important; }

/* ---------- Resume page ---------- */
.resume-container {
  background: var(--paper-soft);
  border: 1px solid var(--paper-edge);
}
.resume-header { border-bottom-color: var(--brand) !important; }
.resume-header h1 { color: var(--ink); }
.resume-header .subtitle { color: var(--ink-soft); }
.resume-section h2 {
  color: var(--brand) !important;
  border-bottom-color: var(--paper-edge) !important;
}
.resume-section h3 { color: var(--ink); }
.resume-section h4 { color: var(--ink-soft); }
.resume-section p,
.resume-section ul,
.resume-section li { color: var(--ink); }

.experience-item { border-bottom-color: var(--paper-edge) !important; }
.job-title { color: var(--ink); }
.company { color: var(--brand) !important; }
.dates { color: var(--ink-soft); }

.skill-category {
  background: #fff;
  border-left-color: var(--brand) !important;
  border: 1px solid var(--paper-edge);
  border-left: 4px solid var(--brand);
}
.skill-category h4 { color: var(--ink); }
.skill-category p { color: var(--ink-soft); }

.back-link { border-top-color: var(--paper-edge) !important; }
.back-link a {
  color: var(--brand) !important;
  border-color: var(--brand) !important;
}
.back-link a:hover {
  background: var(--brand) !important;
  color: var(--paper) !important;
}

/* ---------- ABN/ACN copy widget ---------- */
.copy-id {
  cursor: pointer;
  border-bottom: 1px dotted currentColor;
  position: relative;
}
.copy-id:hover { opacity: 0.85; }
.copy-id .copy-tooltip {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 125%;
  background: var(--brand);
  color: var(--paper);
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}
.copy-id.copied .copy-tooltip { opacity: 1; }
