/* DH76 / Navy & Lime / 1.2.1
   Presentation-only update. Navy sampled from the supplied logo: #0D2137.
   Transparent lime mark exposes the identical header/footer background. */
:root {
  --ink:#102b43; --muted:#536b7d; --paper:#f7fafc; --white:#fff;
  --green:#a6ff00; --line:#d6e1e9; --dark:#0d2137;
  --blue:#164c70; --ice:#e8f1f7;
}
::selection { background:var(--green); color:var(--dark) }
body { background:var(--paper) }
a:focus-visible,button:focus-visible { outline-color:#317ca8 }
.site-header {
  height:108px; background:var(--dark); color:#fff;
  border-bottom:1px solid #ffffff16; isolation:isolate;
}
.brand { width:224px; gap:14px; overflow:visible }
.brand img {
  width:66px; height:66px; object-fit:contain;
  mix-blend-mode:normal; border-radius:0;
}
.brand.brand-custom img { mix-blend-mode:normal }
.brand-fallback { color:#fff; font-size:31px; letter-spacing:-1.3px; font-weight:600 }
.brand-fallback>span { font-size:8px; letter-spacing:1.8px; margin-top:9px; color:#ccdae6 }
.site-header nav ul { gap:27px }
.site-header nav a { color:#eaf2f8; font-size:13px; transition:color .18s }
.site-header nav a:hover { color:var(--green); text-decoration:none }
.site-header nav a[aria-current=page],.site-header nav .current-menu-item>a { box-shadow:0 2px var(--green) }
.site-header nav .nav-contact,.site-header nav li:last-child>a {
  color:var(--green); border-color:#a6ff0066; padding:12px 20px;
}
.site-header nav li:last-child>a:hover { background:var(--green); color:var(--dark) }
.site-header :is(a,button):focus-visible,.site-footer a:focus-visible { outline-color:var(--green) }
.menu-toggle { color:#fff; border-color:#849bb0; padding:9px 14px }
.menu-toggle span { margin-left:12px; color:var(--green) }
.hero {
  background-image:linear-gradient(90deg,#071d31ed,#0a2d48c9 60%,#0e355d70),url('toronto-skyline.webp');
  color:#fff;
}
.hero .hero-lead { color:#dbe8f2 }
.hero-location { border-color:#6b8aa0; color:#cedce7 }
.research-hero {
  background-color:#071e33;
  background-image:radial-gradient(ellipse at 86% 38%,#16486b 0%,#0a2b46 36%,transparent 70%);
  color:#fff; padding-block:clamp(68px,7vw,112px);
}
.research-hero::after {
  background-image:url('research-field-1.2.0.svg'); opacity:.82;
}
.research-headline .eyebrow { color:var(--green) }
.research-headline h1 { color:#fff; margin-bottom:25px }
.research-headline h1::after {
  content:""; display:block; width:min(100%,540px); height:38px;
  margin-top:24px; background:url('heartbeat-1.2.0.svg') center / 100% 100% no-repeat;
}
.research-headline .hero-lead { color:#dce8f2 }
.research-headline .research-scope { color:#b4c9da }
.research-hero .wp-block-button__link { background:var(--green); border-color:var(--green); color:var(--dark) }
.research-proof {
  background:#0d2946e8; border-color:#7198b35e; border-top-color:var(--green);
  box-shadow:0 18px 60px #02101b24; padding:28px 30px 30px;
}
body .research-proof .research-number { color:var(--green) }
.research-proof .research-caption { color:#edf5fc; line-height:1.6 }
.research-feature { background:var(--ice); border-color:var(--line) }
.research-feature .eyebrow { color:#235e81 }
.wp-block-button__link { border-radius:2px; color:var(--dark) }
.wp-block-button__link:hover,.research-hero .wp-block-button__link:hover { background:#bdff49; border-color:#bdff49 }
.is-style-outline .wp-block-button__link { background:transparent; border-color:currentColor; color:inherit }
.is-style-outline .wp-block-button__link:hover { background:#dcebf3; color:var(--ink); border-color:var(--ink) }
.equity-card { background:var(--dark); color:#f2f7fc }
.wealth-card { background:#dceaf4; color:var(--ink) }
.discipline-card { border-top:3px solid transparent }
.equity-card { border-top-color:var(--green) }
.wealth-card { border-top-color:#4380a8 }
.step { border-color:#a6becf }
.step-number,.detail-row .row-number { color:#316c93 }
.advisory-band,.scope-note,.contact-panel { background:var(--ice) }
.cta { background:#dfeef7; border-top:1px solid #ccdfea }
.cta .eyebrow { color:#235e81 }
.cta .wp-block-button__link { background:var(--dark); border-color:var(--dark); color:var(--green) }
.cta .wp-block-button__link:hover { background:#164c70; border-color:#164c70; color:#fff }
.site-footer { background:var(--dark); color:#dce8f3; border-top:1px solid #ffffff12 }
.site-footer .brand { width:224px; margin-bottom:24px }
.site-footer .brand img { width:66px; height:66px }
.site-footer .brand-fallback { color:#fff }
.footer-top .eyebrow,.footer-top p,.footer-disclaimer { color:#a9bfd1 }
.footer-top a:not(.brand):hover,.footer-bottom a:hover { color:var(--green) }
.footer-bottom { border-color:#304a61 }
.page-intro {
  background:#e6f0f7;
  background-image:linear-gradient(115deg,#f0f6fa,#dceaf4);
}
.page-intro .eyebrow { color:#28678d }
.equity-intro { background:linear-gradient(110deg,#0d2137,#123d5c); color:#fff }
.equity-intro .eyebrow { color:var(--green) }
.equity-intro .lead { color:#d2e1ed }
.wealth-intro { background:linear-gradient(115deg,#eaf3f9,#d7e8f4) }
.service-item { border-color:#a6becf }
.criteria { background:#eef4f8 }
.scope-copy { color:#4a657a }
.contact-choice { border-color:#adc5d7 }
.partner-card { background:#e4eff7; border-top-color:#4580a5 }
.partner-research { background:linear-gradient(130deg,#0d2137,#123c59); color:#eef6fc; border-top-color:var(--green) }
.partner-research .eyebrow { color:var(--green) }
.partner-research .wp-block-button__link { color:var(--dark) }
.skip-link { color:var(--dark) }
@media(min-width:1101px) and (max-width:1250px) {
  .brand { width:205px; gap:11px }
  .brand img { width:59px; height:59px }
  .brand-fallback { font-size:28px }
  .site-header nav ul { gap:19px }
  .site-header nav a { font-size:12px }
}
@media(max-width:1100px) {
  .site-header { height:94px }
  .header-inner { width:calc(100% - 64px); gap:20px }
  .brand { width:210px; gap:12px }
  .brand img { width:58px; height:58px }
  .brand-fallback { font-size:28px }
  .menu-toggle { display:block }
  .site-header nav {
    display:none; position:absolute; top:100%; left:0; right:0;
    background:var(--dark); color:#fff; padding:20px 32px 28px;
    border-bottom:1px solid #627e9566; box-shadow:0 16px 25px #05142525;
  }
  .site-header nav.is-open { display:block }
  .site-header nav ul { display:block }
  .site-header nav li { margin:0 0 8px }
  .site-header nav a { font-size:16px; padding:12px 0 }
  .site-header nav .nav-contact,.site-header nav li:last-child>a { margin-top:12px; padding:12px 20px }
}
@media(max-width:780px) {
  .site-header { height:88px }
  .header-inner { width:calc(100% - 40px) }
  .brand { width:195px; gap:11px }
  .brand img { width:54px; height:54px }
  .brand-fallback { font-size:27px }
  .brand-fallback>span { font-size:7px; letter-spacing:1.5px; margin-top:8px }
  .site-header nav { padding-inline:20px }
  .menu-toggle { font-size:13px; padding:8px 11px }
  .research-hero { padding-block:50px 40px }
  .research-hero::after { opacity:.6 }
  .research-headline h1::after { height:29px; margin-top:22px; width:min(100%,390px) }
  .research-proof { padding:21px 25px 23px }
  .site-footer .brand { width:224px }
  .site-footer .brand-fallback { font-size:31px }
  .site-footer .brand-fallback>span { font-size:8px; letter-spacing:1.8px }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto }
  *,*::before,*::after { animation:none!important; transition:none!important }
}
