/* ==========================================================================
   Jason Scott site system. Fresh composition, not a reskin of the reference.
   ========================================================================== */

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

body {
  margin: 0;
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 1.65;
  color: var(--site-ink);
  background: var(--site-frost);
  -webkit-text-size-adjust: 100%;
}

img { max-width: 100%; height: auto; display: block; }
a { color: var(--site-navy); text-underline-offset: 3px; }
a:focus-visible, button:focus-visible, summary:focus-visible,
input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 3px solid rgba(224, 120, 48, .75);
  outline-offset: 2px;
}

.container { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.container--narrow { width: min(760px, calc(100% - 40px)); }

.skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 200;
  padding: 12px 20px; background: var(--site-ink); color: #fff;
  font-weight: 700; text-decoration: none;
}
.skip-link:focus { left: 0; }

.visually-hidden {
  position: absolute !important; width: 1px; height: 1px;
  margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Buttons: sharp, decisive, not pill-default everywhere */
.site-btn {
  display: inline-flex; min-height: 52px; align-items: center; justify-content: center;
  gap: 8px; border-radius: var(--site-radius); padding: 14px 22px;
  font-size: .95rem; font-weight: 700; line-height: 1.2; text-align: center;
  text-decoration: none; border: 0; cursor: pointer; font-family: var(--font-body);
  letter-spacing: .01em;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.site-btn:hover, .site-btn:focus-visible { transform: translateY(-2px); }
.site-btn--primary {
  color: #fff; background: var(--site-blaze);
  box-shadow: 0 14px 34px rgba(224, 120, 48, .28);
}
.site-btn--primary:hover { background: var(--site-blaze-dark); }
.site-btn--secondary {
  color: var(--site-ink); background: var(--site-white);
  border: 1px solid var(--site-line-strong);
}
.site-btn--ghost {
  color: #fff; background: transparent;
  border: 1px solid rgba(255,255,255,.45);
}
.site-btn--text {
  color: var(--site-ink); background: transparent;
  border: 1px solid var(--site-line-strong);
}
.btn-block, .btn-white {
  display: inline-flex; min-height: 46px; align-items: center; justify-content: center;
  padding: 10px 18px; border-radius: var(--site-radius);
  background: var(--site-blaze); color: #fff; font-weight: 700; text-decoration: none;
}
.btn-outline-white {
  display: inline-flex; min-height: 46px; align-items: center; padding: 10px 18px;
  border-radius: var(--site-radius); border: 1px solid rgba(255,255,255,.5);
  color: #fff; font-weight: 700; text-decoration: none;
}
@media (prefers-reduced-motion: reduce) {
  .site-btn { transition: none; }
  .site-btn:hover, .site-btn:focus-visible { transform: none; }
}

/* ==========================================================================
   Header
   ========================================================================== */
.site-header {
  position: sticky; top: 0; z-index: 100;
  background: rgba(247, 249, 251, 0.92);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--site-line);
}
.site-header__inner {
  display: flex; align-items: center; justify-content: space-between;
  gap: 18px; padding: 12px 0;
}
.site-header__brand {
  display: inline-flex; align-items: center; gap: 12px;
  text-decoration: none; color: var(--site-ink); flex-shrink: 0;
}
.site-header__brand img { width: 226px; height: auto; }
.site-header__brand-text {
  display: none; font-family: var(--font-display); font-weight: 700;
  font-size: .78rem; line-height: 1.2; letter-spacing: .04em; text-transform: uppercase;
}
.site-header__cta { flex-shrink: 0; min-height: 44px; padding: 10px 16px; font-size: .88rem; }

.site-nav > ul {
  display: flex; align-items: center; gap: 2px;
  margin: 0; padding: 0; list-style: none;
}
.site-nav a, .site-nav button {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 11px 12px; border: 0; background: none; cursor: pointer;
  color: var(--site-ink); font: 600 .92rem/1 var(--font-body);
  text-decoration: none; border-radius: var(--site-radius); white-space: nowrap;
}
.site-nav a:hover, .site-nav button:hover,
.site-nav a[aria-current="page"] { background: var(--site-blaze-soft); color: var(--site-blaze-dark); }
.site-nav .icon { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2; }

.nav-dropdown { position: relative; }
.site-nav .nav-dropdown__menu {
  position: absolute; top: calc(100% + 8px); left: 0; z-index: 110;
  min-width: 280px; margin: 0; padding: 10px; list-style: none;
  background: #fff; border: 1px solid var(--site-line);
  border-radius: var(--site-radius-lg); box-shadow: var(--site-shadow-lg);
  display: none;
}
/* Open state is class-driven only. Do not use :focus-within here. */
.site-nav .nav-dropdown.is-open > .nav-dropdown__menu { display: block; }
.site-nav .nav-dropdown.is-open > button { background: var(--site-blaze-soft); color: var(--site-blaze-dark); }
.site-nav .nav-dropdown.is-open > button .icon { transform: rotate(180deg); }
.nav-dropdown__menu a {
  display: block; padding: 10px 12px; white-space: nowrap;
}
.nav-dropdown__all { border-top: 1px solid var(--site-line); margin-top: 6px; padding-top: 6px; }
.nav-dropdown__all a { font-weight: 700; color: var(--site-blaze-dark); }

.site-nav .nav-dropdown--mega { position: relative; }
.site-nav .nav-dropdown__menu--mega {
  left: 0;
  right: auto;
  transform: none;
  width: max-content;
  min-width: 0;
  max-width: min(800px, calc(100vw - 32px));
  padding: 14px 12px 12px;
}
.site-nav .nav-dropdown.is-open > .nav-dropdown__menu--mega {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 184px));
  gap: 4px 10px;
}
.site-nav .nav-dropdown.is-open > .nav-dropdown__menu--services,
.site-nav .nav-dropdown.is-open > .nav-dropdown__menu--resources {
  grid-template-columns: repeat(3, minmax(170px, 210px));
}
.nav-mega-group { list-style: none; min-width: 0; }
.nav-mega-group > p {
  margin: 0 0 8px;
  padding: 0 12px;
  color: var(--site-blaze-dark);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.nav-mega-group > ul { margin: 0; padding: 0; list-style: none; }
.nav-mega-group a { padding: 8px 12px; }
.nav-mega-group .nav-dropdown__all {
  border-top: 0;
  margin-top: 2px;
  padding-top: 0;
}

.nav-toggle {
  display: none; width: 46px; height: 46px; border: 1px solid var(--site-line-strong);
  border-radius: var(--site-radius); background: #fff; cursor: pointer; color: var(--site-ink);
}
.nav-toggle svg { width: 22px; height: 22px; stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; }
.nav-toggle .icon-close { display: none; }
.nav-toggle[aria-expanded="true"] .icon-open { display: none; }
.nav-toggle[aria-expanded="true"] .icon-close { display: block; }

/* Mobile CTAs live in the hamburger; hide that list item on desktop. */
.site-nav__mobile-ctas { display: none; }

@media (max-width: 900px) {
  /* Hide desktop phone pill when hamburger takes over (same breakpoint). */
  .site-header__cta { display: none; }
  .nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
  .site-nav {
    position: fixed; inset: 76px 0 0 0; z-index: 105;
    display: none; overflow-y: auto; background: var(--site-frost); padding: 16px 20px 40px;
  }
  .site-nav.is-open { display: block; }
  .site-nav > ul { flex-direction: column; align-items: stretch; }
  .site-nav a, .site-nav button {
    width: 100%; justify-content: space-between; padding: 14px;
    background: #fff; border: 1px solid var(--site-line);
  }
  .site-nav .nav-dropdown__menu {
    position: static; box-shadow: none; border: 0; background: transparent; padding: 4px 0 8px;
  }
  .site-nav .nav-dropdown.is-open > .nav-dropdown__menu { display: block; }
  .site-nav .nav-dropdown.is-open > .nav-dropdown__menu--mega,
  .site-nav .nav-dropdown.is-open > .nav-dropdown__menu--services,
  .site-nav .nav-dropdown.is-open > .nav-dropdown__menu--resources {
    display: grid;
    grid-template-columns: 1fr;
    transform: none;
    width: 100%;
    left: 0;
    padding: 8px 0 4px;
  }
  .site-nav .nav-dropdown__menu a { white-space: normal; }
  .site-nav__mobile-ctas {
    display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
    margin: 0 0 12px; list-style: none;
  }
  .site-nav__mobile-ctas .site-btn {
    width: 100%; justify-content: center; min-height: 48px;
  }
}

/* ==========================================================================
   Homepage: full-bleed Edmonton hero
   Skyline is the plane. Brand + message lead. Portrait supports, no cream card.
   ========================================================================== */
.home-hero {
  position: relative; isolation: isolate; overflow: hidden;
  min-height: min(88vh, 820px);
  display: flex; align-items: flex-end;
  color: #fff;
  background: #c5d6e4;
}
.home-hero__media, .home-hero__media img, .home-hero__veil {
  position: absolute; inset: 0; width: 100%; height: 100%;
}
.home-hero__media { z-index: -2; }
.home-hero__media img {
  object-fit: cover; object-position: 68% 38%;
  width: 100%; height: 100%;
  animation: heroDrift 32s ease-in-out infinite alternate;
}
.home-hero__veil {
  z-index: -1;
  background:
    linear-gradient(105deg, rgba(21,36,51,.88) 0%, rgba(21,36,51,.55) 46%, rgba(21,36,51,.18) 100%),
    linear-gradient(180deg, rgba(21,36,51,.08) 0%, rgba(21,36,51,.45) 100%);
}
.home-hero__inner {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(96px, 12vh, 140px) 0 clamp(40px, 7vh, 64px);
  display: block;
}
.home-hero__copy { max-width: 640px; }
.home-hero__brand {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px 14px;
  margin: 0 0 18px;
  font-family: var(--font-display);
  font-size: clamp(1.15rem, 2.4vw, 1.55rem);
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.15;
  color: #fff;
  animation: riseIn .7s ease both;
}
.home-hero__name { color: #fff; }
.home-hero__firm { color: rgba(255,255,255,.82); font-weight: 600; font-size: .78em; letter-spacing: .06em; text-transform: uppercase; }
.home-hero__sep {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--site-blaze); flex-shrink: 0; align-self: center;
}
.home-hero h1 {
  margin: 0;
  max-width: 14ch;
  font-family: var(--font-display);
  font-size: clamp(2.45rem, 6.2vw, 4.4rem);
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -.03em;
  text-wrap: balance;
  color: #fff;
  text-shadow: 0 2px 18px rgba(8, 14, 22, 0.55), 0 1px 2px rgba(8, 14, 22, 0.45);
  animation: riseIn .8s ease .05s both;
}
.home-hero__lead {
  margin: 18px 0 0;
  max-width: 36ch;
  font-size: clamp(1.05rem, 1.7vw, 1.22rem);
  line-height: 1.5;
  color: rgba(255,255,255,.94);
  text-shadow: 0 1px 12px rgba(8, 14, 22, 0.45);
  animation: riseIn .9s ease .1s both;
}
.home-hero__actions {
  display: flex; flex-wrap: wrap; gap: 12px;
  margin-top: 28px;
  animation: riseIn 1s ease .14s both;
}
.home-hero__actions .site-btn--secondary {
  color: #fff;
  background: rgba(21, 36, 51, 0.28);
  border: 1px solid rgba(255,255,255,.55);
  backdrop-filter: blur(6px);
}
.home-hero__actions .site-btn--secondary:hover {
  background: rgba(21, 36, 51, 0.45);
}
.home-hero__proofline {
  margin: 20px 0 0;
  font-size: .92rem;
  color: rgba(255,255,255,.78);
  animation: riseIn 1.05s ease .18s both;
}
/* Light skyline: Edmonton photo is the only hero visual. Type sits in a soft wash. */
.home-hero--light {
  color: var(--site-ink);
  align-items: stretch;
}
.home-hero--light .home-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 38%, rgba(255,255,255,0.22) 100%);
  pointer-events: none;
}
.home-hero--light .home-hero__veil {
  background:
    linear-gradient(95deg,
      rgba(15, 26, 38, 0.86) 0%,
      rgba(15, 26, 38, 0.46) 30%,
      rgba(15, 26, 38, 0.10) 56%,
      rgba(15, 26, 38, 0.00) 78%),
    linear-gradient(180deg, rgba(15, 26, 38, 0.06) 0%, rgba(15, 26, 38, 0.28) 100%);
}
.home-hero--light .home-hero__inner {
  margin-top: auto;
  padding-top: clamp(110px, 16vh, 170px);
}
.home-hero--light .home-hero__brand,
.home-hero--light .home-hero__name,
.home-hero--light h1 { color: #fff; }
.home-hero--light .home-hero__firm { color: rgba(255,255,255,.86); }
.home-hero--light .home-hero__lead,
.home-hero--light .home-hero__proofline { color: rgba(255,255,255,.9); }

@keyframes heroDrift {
  from { transform: scale(1.02) translate3d(0,0,0); }
  to { transform: scale(1.07) translate3d(-1.2%, -0.8%, 0); }
}
@keyframes riseIn {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .home-hero__media img,
  .home-hero__brand,
  .home-hero h1,
  .home-hero__lead,
  .home-hero__actions,
  .home-hero__proofline { animation: none; }
}
@media (max-width: 900px) {
  .home-hero { min-height: auto; }
  .home-hero__inner { padding: 88px 0 36px; }
  .home-hero--light .home-hero__veil {
    background:
      linear-gradient(180deg,
        rgba(15, 26, 38, 0.62) 0%,
        rgba(15, 26, 38, 0.48) 45%,
        rgba(15, 26, 38, 0.66) 100%);
  }
  .home-hero__actions { display: grid; }
  .home-hero__actions .site-btn { width: 100%; }
}

/* Chapter ribbon: life-stage paths without card clutter */
.chapter-ribbon {
  background: var(--site-white);
  border-bottom: 1px solid var(--site-line);
}
.chapter-ribbon__inner {
  display: grid;
  grid-template-columns: minmax(220px, 280px) 1fr;
  gap: clamp(24px, 4vw, 48px);
  padding: clamp(40px, 6vw, 64px) 0;
  align-items: end;
}
.chapter-ribbon h2 {
  margin: 0 0 10px;
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, 2.1rem);
  line-height: 1.15;
  letter-spacing: -.02em;
}
.chapter-ribbon__intro { margin: 0; color: var(--site-ink-soft); max-width: 28ch; }
.chapter-track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid var(--site-line);
}
.chapter-track a {
  position: relative;
  display: block;
  padding: 22px 18px 20px;
  text-decoration: none;
  color: inherit;
  border-right: 1px solid var(--site-line);
  transition: background .2s ease, color .2s ease;
}
.chapter-track a:last-child { border-right: 0; }
.chapter-track a:hover { background: var(--site-mist); }
.chapter-track__num {
  display: block;
  font-family: var(--font-display);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--site-blaze);
  margin-bottom: 10px;
}
.chapter-track h3 {
  margin: 0 0 8px;
  font-family: var(--font-display);
  font-size: 1.08rem;
  color: var(--site-ink);
}
.chapter-track p { margin: 0; font-size: .9rem; color: var(--site-ink-faint); line-height: 1.45; }
.chapter-track a::after {
  content: "";
  position: absolute; left: 18px; right: 18px; bottom: 0; height: 3px;
  background: var(--site-blaze);
  transform: scaleX(0); transform-origin: left;
  transition: transform .25s ease;
}
.chapter-track a:hover::after { transform: scaleX(1); }

@media (max-width: 900px) {
  .chapter-ribbon__inner { grid-template-columns: 1fr; }
  .chapter-track { grid-template-columns: 1fr 1fr; }
  .chapter-track a:nth-child(2n) { border-right: 0; }
  .chapter-track a { border-bottom: 1px solid var(--site-line); }
}
@media (max-width: 560px) {
  .chapter-track { grid-template-columns: 1fr; }
  .chapter-track a { border-right: 0; }
}

/* Proof band */
.proof-band {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--site-line);
  border: 1px solid var(--site-line);
}
.proof-band article {
  background: var(--site-ink);
  color: #fff;
  padding: clamp(28px, 4vw, 40px) clamp(20px, 3vw, 32px);
}
.proof-band strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  letter-spacing: -.02em;
  color: var(--site-blaze);
}
.proof-band span {
  display: block;
  margin-top: 8px;
  color: rgba(255,255,255,.78);
  font-size: .95rem;
  line-height: 1.4;
}
@media (max-width: 720px) { .proof-band { grid-template-columns: 1fr; } }

/* Split editorial */
.split-editorial {
  display: grid;
  grid-template-columns: minmax(260px, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
  padding: clamp(56px, 8vw, 96px) 0;
}
.split-editorial__media {
  display: grid;
  gap: 16px;
}
.split-editorial__portrait {
  margin: 0;
  background: #111;
}
.split-editorial__portrait img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center 18%;
}
.split-editorial__portrait--circle {
  margin: 0;
  max-width: 440px;
  width: 100%;
  border-radius: 50%;
  background: var(--site-blaze);
  padding: 4px;
  box-shadow: none;
}
.split-editorial__portrait--circle img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  object-fit: cover;
  object-position: center 20%;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.split-editorial__quote {
  margin: 0;
  padding: 18px 20px;
  border-left: 4px solid var(--site-blaze);
  background: var(--site-mist);
}
.split-editorial__quote p {
  margin: 0;
  font-family: var(--font-display);
  font-size: 1.05rem;
  line-height: 1.45;
  color: var(--site-ink);
}
.split-editorial__quote footer {
  margin-top: 10px;
  font-weight: 700;
  font-size: .88rem;
  color: var(--site-blaze-dark);
}
.split-editorial__copy h2 {
  margin: 0 0 14px;
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3.4vw, 2.5rem);
  letter-spacing: -.02em; line-height: 1.12;
}
.split-editorial__copy > p { margin: 0 0 14px; color: var(--site-ink-soft); }
.split-editorial__copy ul { margin: 18px 0 0; padding: 0; list-style: none; }
.split-editorial__copy li {
  position: relative; padding: 10px 0 10px 22px;
  border-top: 1px solid var(--site-line);
  color: var(--site-ink-soft);
}
.split-editorial__copy li::before {
  content: ""; position: absolute; left: 0; top: 1.15em;
  width: 8px; height: 2px; background: var(--site-blaze);
}
.split-editorial__actions {
  display: flex; flex-wrap: wrap; gap: 12px;
  margin-top: 26px;
}
@media (max-width: 900px) {
  .split-editorial { grid-template-columns: 1fr; }
  .split-editorial__media { order: -1; max-width: 420px; }
  .split-editorial__portrait--circle { max-width: 340px; }
}

/* Stage grid: interaction containers, not decorative cards */
.stage-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.stage-link {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 16px;
  align-items: center;
  padding: 22px 20px;
  background: var(--site-white);
  border: 1px solid var(--site-line);
  text-decoration: none;
  color: inherit;
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.stage-link:hover {
  border-color: var(--site-line-strong);
  transform: translateY(-2px);
  box-shadow: var(--site-shadow-lg);
}
.stage-link__mark {
  width: 44px; height: 44px;
  display: grid; place-items: center;
  font-family: var(--font-display); font-weight: 700; font-size: .85rem;
  color: var(--site-ink);
  background: var(--site-mist);
  border: 1px solid var(--site-line);
}
.stage-link h3 { margin: 0 0 4px; font-family: var(--font-display); font-size: 1.1rem; }
.stage-link p { margin: 0; font-size: .9rem; color: var(--site-ink-faint); }
.stage-link__arrow { color: var(--site-blaze); font-size: 1.4rem; line-height: 1; }
@media (max-width: 700px) { .stage-grid { grid-template-columns: 1fr; } }

/* Quote runway */
.quote-runway {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border: 1px solid var(--site-line);
  background: var(--site-white);
}
.quote-runway blockquote {
  margin: 0;
  padding: clamp(24px, 3vw, 36px);
  border-right: 1px solid var(--site-line);
}
.quote-runway blockquote:last-child { border-right: 0; }
.quote-runway p {
  margin: 0;
  font-family: var(--font-display);
  font-size: 1.05rem;
  line-height: 1.45;
  letter-spacing: -.01em;
}
.quote-runway footer {
  margin-top: 16px;
  font-size: .88rem;
  font-weight: 700;
  color: var(--site-blaze-dark);
}
@media (max-width: 860px) {
  .quote-runway { grid-template-columns: 1fr; }
  .quote-runway blockquote { border-right: 0; border-bottom: 1px solid var(--site-line); }
  .quote-runway blockquote:last-child { border-bottom: 0; }
}

/* Sections */
.section { padding: clamp(52px, 8vw, 88px) 0; }
.section--white { background: #fff; }
.section--mist { background: var(--site-mist); }
.section--ivory { background: var(--site-mist); }
.section--ink { background: var(--site-ink); color: rgba(255,255,255,.88); }
.section--ink h2, .section--navy h2 { color: #fff; }
.section--navy { background: var(--site-ink); color: rgba(255,255,255,.88); text-align: center; }
.section h2 {
  font-family: var(--font-display);
  color: var(--site-ink);
  font-size: clamp(1.7rem, 3.2vw, 2.4rem);
  margin: 0 0 .45em;
  letter-spacing: -.02em;
  line-height: 1.12;
}
.section__lead { max-width: 640px; margin: 0 0 28px; color: var(--site-ink-soft); }
.section__lead--tight { margin: 28px 0 16px; }
.section__head { margin-bottom: 28px; }
.section__kicker {
  margin: 0 0 10px;
  font-size: .78rem; font-weight: 700; letter-spacing: .16em;
  text-transform: uppercase; color: var(--site-blaze-dark);
}

/* Compat path/loan grids restyled */
.path-grid, .loan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.path-grid--four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.path-card, .loan-card {
  display: flex; flex-direction: column; gap: 10px;
  padding: 28px 24px;
  min-height: 180px;
  background: #fff;
  border: 1px solid var(--site-line);
  box-shadow: var(--site-shadow);
  text-decoration: none; color: inherit;
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.path-card:hover, .loan-card:hover {
  border-color: var(--site-line-strong);
  transform: translateY(-2px);
  box-shadow: var(--site-shadow-lg);
}
.path-card h3, .loan-card h3 {
  margin: 0; font-family: var(--font-display); font-size: 1.08rem; color: var(--site-ink);
}
.path-card h3 a, .loan-card h3 a { color: inherit; text-decoration: none; }
.path-card p, .loan-card p { margin: 0; font-size: .9rem; color: var(--site-ink-faint); flex-grow: 1; }
.path-card__cta { margin-top: auto; font-weight: 700; font-size: .86rem; color: var(--site-blaze-dark); }
.place-lists {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(20px, 4vw, 40px);
}
.place-lists h3 {
  margin: 0 0 12px;
  font-family: var(--font-display);
  font-size: 1.05rem;
}
.place-lists__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.place-lists__chips a {
  display: inline-block;
  padding: 8px 12px;
  background: var(--site-white);
  border: 1px solid var(--site-line);
  box-shadow: var(--site-shadow);
  color: inherit;
  text-decoration: none;
  font-weight: 600;
  font-size: .9rem;
}
.place-lists__chips a:hover { border-color: var(--site-line-strong); }
@media (max-width: 720px) {
  .place-lists { grid-template-columns: 1fr; }
  .path-grid--four { grid-template-columns: 1fr 1fr; }
}
.loan-card__icon { display: none; }

.steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 24px; }
.step { padding: 22px; background: #fff; border: 1px solid var(--site-line); }
.step__num {
  display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center;
  background: var(--site-blaze); color: #fff; font-weight: 800; font-size: .88rem; margin-bottom: 12px;
}
.step h3 { margin: 0 0 6px; font-family: var(--font-display); font-size: 1.05rem; }
.step p { margin: 0; font-size: .92rem; color: var(--site-ink-faint); }

.cta-banner, .cta-band {
  background: var(--site-ink);
  color: rgba(255,255,255,.88);
}
.cta-band { padding: clamp(48px, 7vw, 72px) 0; text-align: center; }
.cta-band h2, .cta-banner h2 { color: #fff; margin: 0 0 10px; font-family: var(--font-display); font-size: clamp(1.6rem, 3vw, 2.2rem); }
.cta-band p, .cta-banner p { margin: 0 auto 22px; max-width: 560px; }
.cta-band__actions, .cta-banner__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.cta-banner {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: 18px; padding: 32px; text-align: left;
}
.cta-banner p { margin: 6px 0 0; }

.testimonials, .quote-runway { /* testimonials alias */ }
.testimonials {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px;
}
.testimonial {
  margin: 0; padding: 22px; background: #fff; border: 1px solid var(--site-line);
  display: flex; flex-direction: column;
}
.testimonial blockquote { margin: 0; font-size: .95rem; color: var(--site-ink-soft); flex-grow: 1; }
.testimonial footer { margin-top: 14px; font-weight: 700; color: var(--site-ink); font-size: .86rem; }
.testimonial footer small { display: block; font-weight: 500; color: var(--site-ink-faint); }

.site-question {
  max-width: 720px; margin: 0 auto; text-align: center;
  padding: 36px 28px; background: #fff; border: 1px solid var(--site-line);
  border-left: 4px solid var(--site-blaze);
}

/* Inner pages */
.site-page-hero {
  position: relative; isolation: isolate; overflow: hidden;
  padding: clamp(36px, 6vw, 64px) 0 clamp(32px, 5vw, 52px);
  background:
    linear-gradient(120deg, rgba(238,242,245,.97) 0%, rgba(238,242,245,.88) 50%, rgba(224,120,48,.10) 100%),
    radial-gradient(900px 420px at 100% 0%, rgba(30,58,95,.12), transparent 55%);
  border-bottom: 1px solid var(--site-line);
}
.site-page-hero--photo {
  color: #fff;
  background: #152433;
  border-bottom: 0;
  padding: clamp(44px, 7vw, 76px) 0 clamp(40px, 6vw, 64px);
}
.site-page-hero--photo::before {
  content: "";
  position: absolute; inset: 0; z-index: -2;
  background: var(--hero-photo) center 42% / cover no-repeat;
}
.site-page-hero--photo::after {
  content: "";
  position: absolute; inset: 0; z-index: -1;
  background:
    linear-gradient(100deg,
      rgba(12, 22, 34, 0.88) 0%,
      rgba(12, 22, 34, 0.70) 38%,
      rgba(12, 22, 34, 0.38) 72%,
      rgba(12, 22, 34, 0.22) 100%),
    linear-gradient(180deg, rgba(12, 22, 34, 0.18) 0%, rgba(12, 22, 34, 0.42) 100%);
}
.site-page-hero--skyline { --hero-photo: url("/assets/img/hero-1920.webp"); }
.site-page-hero--homes { --hero-photo: url("/assets/img/hero-homes-1920.webp"); }
.site-page-hero--downtown { --hero-photo: url("/assets/img/hero-downtown-1920.webp"); }
.site-page-hero--valley { --hero-photo: url("/assets/img/hero-valley-1920.webp"); }
.site-page-hero--area-hub { --hero-photo: url("/assets/img/areas/hub-hero-1600.webp"); }
.site-page-hero--area-edmonton { --hero-photo: url("/assets/img/areas/edmonton-hero-1600.webp"); }
.site-page-hero--area-st-albert { --hero-photo: url("/assets/img/areas/st-albert-hero-1600.webp"); }
.site-page-hero--area-sherwood-park { --hero-photo: url("/assets/img/areas/sherwood-park-hero-1600.webp"); }
.site-page-hero--area-spruce-grove { --hero-photo: url("/assets/img/areas/spruce-grove-hero-1600.webp"); }
.site-page-hero--area-beaumont { --hero-photo: url("/assets/img/areas/beaumont-hero-1600.webp"); }
.site-page-hero--area-leduc { --hero-photo: url("/assets/img/areas/leduc-hero-1600.webp"); }
.site-page-hero--area-fort-saskatchewan { --hero-photo: url("/assets/img/areas/fort-saskatchewan-hero-1600.webp"); }
.site-page-hero--area-stony-plain { --hero-photo: url("/assets/img/areas/stony-plain-hero-1600.webp"); }
.site-page-hero--area-calgary { --hero-photo: url("/assets/img/areas/calgary-hero-1600.webp"); }
.site-page-hero--area-airdrie { --hero-photo: url("/assets/img/areas/airdrie-hero-1600.webp"); }
.site-page-hero--area-chestermere { --hero-photo: url("/assets/img/areas/chestermere-hero-1600.webp"); }
.site-page-hero--area-cochrane { --hero-photo: url("/assets/img/areas/cochrane-hero-1600.webp"); }
.site-page-hero--area-okotoks { --hero-photo: url("/assets/img/areas/okotoks-hero-1600.webp"); }
.site-page-hero--area-red-deer { --hero-photo: url("/assets/img/areas/red-deer-hero-1600.webp"); }
.site-page-hero--area-lacombe { --hero-photo: url("/assets/img/areas/lacombe-hero-1600.webp"); }
.site-page-hero--area-sylvan-lake { --hero-photo: url("/assets/img/areas/sylvan-lake-hero-1600.webp"); }
.site-page-hero--area-camrose { --hero-photo: url("/assets/img/areas/camrose-hero-1600.webp"); }
.site-page-hero--area-wetaskiwin { --hero-photo: url("/assets/img/areas/wetaskiwin-hero-1600.webp"); }
.site-page-hero--area-lethbridge { --hero-photo: url("/assets/img/areas/lethbridge-hero-1600.webp"); }
.site-page-hero--area-medicine-hat { --hero-photo: url("/assets/img/areas/medicine-hat-hero-1600.webp"); }
.site-page-hero--area-brooks { --hero-photo: url("/assets/img/areas/brooks-hero-1600.webp"); }
.site-page-hero--area-high-river { --hero-photo: url("/assets/img/areas/high-river-hero-1600.webp"); }
.site-page-hero--area-strathmore { --hero-photo: url("/assets/img/areas/strathmore-hero-1600.webp"); }
.site-page-hero--area-canmore { --hero-photo: url("/assets/img/areas/canmore-hero-1600.webp"); }
.site-page-hero--area-grande-prairie { --hero-photo: url("/assets/img/areas/grande-prairie-hero-1600.webp"); }
.site-page-hero--area-fort-mcmurray { --hero-photo: url("/assets/img/areas/fort-mcmurray-hero-1600.webp"); }
.site-page-hero--area-cold-lake { --hero-photo: url("/assets/img/areas/cold-lake-hero-1600.webp"); }
.site-page-hero--area-lloydminster { --hero-photo: url("/assets/img/areas/lloydminster-hero-1600.webp"); }
.site-page-hero--who-hub { --hero-photo: url("/assets/img/who/hub-1600.webp"); }
.site-page-hero--who-priya-dev-first-home { --hero-photo: url("/assets/img/who/priya-dev-first-home-1600.webp"); }
.site-page-hero--who-hannah-later-first-home { --hero-photo: url("/assets/img/who/hannah-later-first-home-1600.webp"); }
.site-page-hero--who-wei-anna-new-to-canada { --hero-photo: url("/assets/img/who/wei-anna-new-to-canada-1600.webp"); }
.site-page-hero--who-cole-maya-move-up { --hero-photo: url("/assets/img/who/cole-maya-move-up-1600.webp"); }
.site-page-hero--who-derek-renewal { --hero-photo: url("/assets/img/who/derek-renewal-1600.webp"); }
.site-page-hero--who-nadia-equity-refinance { --hero-photo: url("/assets/img/who/nadia-equity-refinance-1600.webp"); }
.site-page-hero--who-samir-debt-consolidation { --hero-photo: url("/assets/img/who/samir-debt-consolidation-1600.webp"); }
.site-page-hero--who-lena-self-employed { --hero-photo: url("/assets/img/who/lena-self-employed-1600.webp"); }
.site-page-hero--who-jess-first-responder { --hero-photo: url("/assets/img/who/jess-first-responder-1600.webp"); }
.site-page-hero--who-travis-industrial { --hero-photo: url("/assets/img/who/travis-industrial-1600.webp"); }
.site-page-hero--who-kyle-rental-investor { --hero-photo: url("/assets/img/who/kyle-rental-investor-1600.webp"); }
.site-page-hero--who-aileen-metis-assistance { --hero-photo: url("/assets/img/who/aileen-metis-assistance-1600.webp"); }
.site-page-hero--who-gordon-pat-right-size { --hero-photo: url("/assets/img/who/gordon-pat-right-size-1600.webp"); }
.site-page-hero--photo[class*="area"]::after,
.site-page-hero--photo[class*="who"]::after {
  background:
    linear-gradient(100deg,
      rgba(12, 22, 34, 0.72) 0%,
      rgba(12, 22, 34, 0.48) 42%,
      rgba(12, 22, 34, 0.18) 100%),
    linear-gradient(180deg, rgba(12, 22, 34, 0.12) 0%, rgba(12, 22, 34, 0.28) 100%);
}

.area-landmark {
  margin: 28px 0 32px;
}
.area-landmark img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: var(--site-radius-lg);
}
.area-landmark figcaption {
  margin-top: 10px;
  color: var(--site-ink-faint);
  font-size: .92rem;
}
.area-hub__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 8px 18px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}
.area-hub__list a {
  display: block;
  padding: 10px 0;
  text-decoration: none;
  color: var(--site-ink);
}
.area-hub__list a:hover { color: var(--site-blaze-dark); }
.area-hub__list strong { display: block; }
.area-hub__list span {
  display: block;
  color: var(--site-ink-faint);
  font-size: .88rem;
}
.who-group { margin: 0 0 36px; }
.who-group > p { color: var(--site-ink-faint); margin: 0 0 16px; }
.who-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
  margin: 0 0 8px;
}
.who-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--site-line);
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: border-color .2s ease, transform .2s ease;
}
.who-card:hover { border-color: var(--site-line-strong); box-shadow: var(--site-shadow-lg); transform: translateY(-2px); }
.who-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.who-card__body { display: flex; flex-direction: column; gap: 8px; padding: 16px 16px 18px; flex-grow: 1; }
.who-card h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 1.12rem;
  color: var(--site-ink);
}
.who-card p { margin: 0; font-size: .9rem; color: var(--site-ink-faint); flex-grow: 1; }
.who-card__cta { margin-top: auto; font-weight: 700; font-size: .86rem; color: var(--site-blaze-dark); }
.who-related { display: flex; flex-wrap: wrap; gap: 8px 18px; padding-left: 0; list-style: none; }
.who-related li { margin: 0; }
.site-page-hero--photo .site-page-hero__eyebrow {
  color: #f3b27a;
  text-shadow: 0 1px 8px rgba(8, 14, 22, 0.4);
}
.site-page-hero.site-page-hero--photo h1 {
  color: #fff;
  text-shadow: 0 2px 16px rgba(8, 14, 22, 0.55), 0 1px 2px rgba(8, 14, 22, 0.4);
}
.site-page-hero--photo .site-page-hero__lead {
  color: rgba(255,255,255,.94);
  text-shadow: 0 1px 10px rgba(8, 14, 22, 0.45);
}
.site-page-hero--photo .site-breadcrumbs,
.site-page-hero--photo .site-breadcrumbs [aria-current="page"] { color: rgba(255,255,255,.82); }
.site-page-hero--photo .site-breadcrumbs a { color: #fff; }
.site-page-hero--photo .site-breadcrumbs li + li::before { color: rgba(255,255,255,.45); }
.site-page-hero--photo .site-btn--secondary {
  color: #fff;
  background: rgba(12, 22, 34, 0.28);
  border: 1px solid rgba(255,255,255,.55);
  backdrop-filter: blur(6px);
}
.site-page-hero--photo .site-btn--secondary:hover {
  background: rgba(12, 22, 34, 0.5);
}
@media (max-width: 900px) {
  .site-page-hero--photo::after {
    background:
      linear-gradient(180deg,
        rgba(12, 22, 34, 0.72) 0%,
        rgba(12, 22, 34, 0.58) 50%,
        rgba(12, 22, 34, 0.78) 100%);
  }
}
.site-page-hero__eyebrow {
  margin: 14px 0 10px; color: var(--site-blaze-dark);
  font-size: .78rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}
.site-page-hero h1 {
  margin: 0; color: var(--site-ink); font-family: var(--font-display);
  font-size: clamp(2rem, 4.4vw, 3.1rem); line-height: 1.08; letter-spacing: -.02em;
  max-width: 18ch; text-wrap: balance;
}
.site-page-hero__lead {
  margin: 16px 0 0; max-width: 62ch; color: var(--site-ink-soft);
  font-size: clamp(1.02rem, 1.5vw, 1.15rem); line-height: 1.6;
}
.site-page-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }

.site-breadcrumbs {
  display: flex; flex-wrap: wrap; gap: 4px 6px;
  margin: 0; padding: 0; list-style: none;
  font-size: .82rem; color: var(--site-ink-faint);
}
.site-breadcrumbs li + li::before { content: "/"; margin: 0 6px; color: rgba(21,36,51,.35); }
.site-breadcrumbs a { color: var(--site-navy); text-decoration: none; }
.site-breadcrumbs a:hover { text-decoration: underline; }
.site-breadcrumbs [aria-current="page"] { color: var(--site-ink); font-weight: 600; }

.site-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: clamp(28px, 4vw, 56px);
  align-items: start;
}
.site-layout--single { grid-template-columns: minmax(0, 820px); justify-content: center; }
.site-layout--calc {
  grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
  gap: clamp(20px, 3vw, 36px);
}
.site-layout--calc .site-content { max-width: none; }

.site-rates-card {
  background: #fff;
  border: 1px solid var(--site-line);
  padding: 18px 16px 16px;
  position: sticky;
  top: 96px;
}
.site-rates-card h2 {
  margin: 0 0 12px;
  font-family: var(--font-display);
  font-size: 1.15rem;
  color: var(--site-ink);
}
.site-rates-card__wrap { overflow-x: auto; }
.site-rates-table {
  width: 100%;
  border-collapse: collapse;
  font-size: .82rem;
}
.site-rates-table th,
.site-rates-table td {
  padding: 8px 6px;
  text-align: left;
  border-bottom: 1px solid var(--site-line);
  vertical-align: top;
}
.site-rates-table thead th {
  color: var(--site-blaze-dark);
  font-size: .72rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-weight: 700;
}
.site-rates-table tbody th {
  font-weight: 600;
  color: var(--site-ink);
}
.site-rates-table tbody td:last-child {
  font-weight: 700;
  color: var(--site-blaze-dark);
}
.site-rates-card__note {
  margin: 12px 0 14px;
  font-size: .72rem;
  line-height: 1.45;
  color: var(--site-ink-faint);
}
.site-rates-card__cta .site-btn {
  width: 100%;
  justify-content: center;
}
@media (max-width: 960px) {
  .site-rates-card { position: static; }
}
.site-content { max-width: 72ch; }
.site-content--wide { max-width: none; }
.blog-year-list { list-style: none; padding: 0; margin: 0 0 1.6em; }
.blog-year-list li {
  display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: baseline;
  padding: 10px 0; border-bottom: 1px solid var(--site-line);
}
.blog-year-list a { font-weight: 700; text-decoration: none; }
.blog-year-list a:hover { color: var(--site-blaze-dark); text-decoration: underline; }
.blog-year-list time { font-size: .86rem; color: var(--site-ink-faint); }

.blog-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 32px);
  align-items: center;
  margin: 0 0 2.2em;
  padding: 18px;
  text-decoration: none;
  color: inherit;
  background:
    linear-gradient(165deg, #fff 0%, var(--site-frost) 100%);
  border: 1px solid var(--site-line);
  box-shadow: var(--site-shadow);
  transition: border-color .2s ease, transform .2s ease;
}
.blog-feature:hover {
  border-color: var(--site-blaze);
  transform: translateY(-2px);
}
.blog-feature img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  background: var(--site-mist);
}
.blog-feature__kicker {
  display: block;
  margin: 0 0 10px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--site-blaze-dark);
}
.blog-feature strong {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 2.4vw, 1.85rem);
  line-height: 1.2;
  color: var(--site-ink);
}
.blog-feature__excerpt {
  display: block;
  margin: 12px 0 16px;
  color: var(--site-ink-soft);
  line-height: 1.55;
}
.blog-feature__cta {
  font-weight: 700;
  color: var(--site-blaze-dark);
}
.blog-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0 0 2.4em;
}
.blog-card {
  display: grid;
  gap: 12px;
  text-decoration: none;
  color: inherit;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--site-line);
  transition: color .15s ease;
}
.blog-card img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  background: var(--site-mist);
}
.blog-card strong {
  display: block;
  font-size: 1.02rem;
  line-height: 1.35;
  color: var(--site-ink);
}
.blog-card time {
  display: block;
  margin-top: 6px;
  font-size: .82rem;
  color: var(--site-ink-faint);
}
.blog-card:hover strong { color: var(--site-blaze-dark); }
.blog-card__cat {
  display: block;
  margin-bottom: 6px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--site-blaze-dark);
}
.blog-browse { padding: clamp(28px, 4vw, 40px) 0; }
.blog-browse__label {
  margin: 0 0 12px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--site-ink-faint);
}
.blog-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.blog-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid var(--site-line-strong);
  border-radius: var(--site-radius);
  background: #fff;
  color: var(--site-ink);
  text-decoration: none;
  font-weight: 700;
  font-size: .9rem;
}
.blog-chip span {
  color: var(--site-blaze-dark);
  font-size: .78rem;
}
.blog-chip:hover {
  border-color: var(--site-blaze);
  color: var(--site-blaze-dark);
}
.blog-topic { margin: 2.8em 0 0; }
.blog-topic__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 14px;
}
.blog-topic__head h2 { margin: 0; }
.blog-topic__head a {
  font-weight: 700;
  font-size: .9rem;
  color: var(--site-blaze-dark);
  text-decoration: none;
}
.blog-topic__head a:hover { text-decoration: underline; }
.blog-year-list__cat {
  display: inline-block;
  min-width: 7.5rem;
  margin-right: 10px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--site-ink-faint);
}
@media (max-width: 900px) {
  .blog-feature { grid-template-columns: 1fr; }
  .blog-card-grid { grid-template-columns: 1fr 1fr; }
  .blog-year-list__cat { display: block; margin: 0 0 2px; }
}
@media (max-width: 640px) {
  .blog-card-grid { grid-template-columns: 1fr; }
  .blog-feature:hover { transform: none; }
}
.site-content > p, .site-content > ul, .site-content > ol {
  color: #2a3340; font-size: 1.04rem; line-height: 1.72;
}
.site-content h2 {
  font-family: var(--font-display); color: var(--site-ink);
  font-size: clamp(1.4rem, 2.4vw, 1.85rem); margin: 1.8em 0 .5em; letter-spacing: -.01em;
}
.site-content h2:first-child { margin-top: 0; }
.site-content h3 { color: var(--site-ink); font-size: 1.12rem; margin: 1.5em 0 .4em; }
.site-content ul, .site-content ol { padding-left: 1.2em; }
.site-content li { margin: .35em 0; }
.site-content li::marker { color: var(--site-blaze); font-weight: 700; }
.about-portrait {
  margin: 0 0 1.4em;
  max-width: 280px;
  border-radius: 50%;
  background: var(--site-blaze);
  padding: 4px;
  box-shadow: none;
}
.about-portrait img {
  display: block; width: 100%; height: auto; border-radius: 50%;
  border: 0; background: transparent;
}

.site-callout {
  margin: 1.6em 0; padding: 18px 20px;
  background: var(--site-mist); border-left: 4px solid var(--site-blaze);
  font-size: .98rem; line-height: 1.6;
}
.site-callout strong {
  display: block; color: var(--site-blaze-dark);
  font-size: .78rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; margin-bottom: 6px;
}
.site-callout--gold { background: var(--site-blaze-soft); }

.site-apply-embed {
  margin: 1.2em 0 1.8em;
  min-height: 0;
  border: 0;
  background: transparent;
  padding: 0;
}
.site-apply-embed #brokertools-MortgageApplication {
  min-height: 0;
}

.site-table-wrap { overflow-x: auto; margin: 1.4em 0; border: 1px solid var(--site-line); }
.site-table { width: 100%; border-collapse: collapse; font-size: .92rem; background: #fff; }
.site-table th, .site-table td { padding: 12px 14px; text-align: left; border-bottom: 1px solid var(--site-line); vertical-align: top; }
.site-table thead th { background: var(--site-ink); color: #fff; font-weight: 700; }
.site-table tbody tr:nth-child(even) { background: rgba(238,242,245,.65); }
.site-table td:first-child { font-weight: 600; color: var(--site-ink); }

.site-faq { margin: 1em 0 0; }
.site-faq details {
  border: 1px solid var(--site-line); background: #fff; margin-bottom: 10px; overflow: hidden;
}
.site-faq summary {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  padding: 16px 18px; cursor: pointer; list-style: none;
  font-weight: 700; color: var(--site-ink); font-size: 1rem;
}
.site-faq summary::-webkit-details-marker { display: none; }
.site-faq summary::after {
  content: ""; flex-shrink: 0; width: 10px; height: 10px;
  border-right: 2px solid var(--site-blaze); border-bottom: 2px solid var(--site-blaze);
  transform: rotate(45deg); transition: transform .15s ease; margin-top: -4px;
}
.site-faq details[open] summary::after { transform: rotate(-135deg); margin-top: 4px; }
.site-faq details[open] summary { border-bottom: 1px solid var(--site-line); }
.site-faq .site-faq__a { padding: 14px 18px 18px; font-size: .96rem; line-height: 1.65; color: #2a3340; }
.site-faq .site-faq__a p { margin: 0 0 .8em; }
.site-faq .site-faq__a p:last-child { margin-bottom: 0; }

.site-sidebar { position: sticky; top: 88px; display: grid; gap: 14px; }
.site-side-card, .site-card {
  padding: 22px 20px; background: #fff; border: 1px solid var(--site-line);
}
.site-side-card--navy, .site-card--ink {
  background: var(--site-ink); color: rgba(255,255,255,.92); border: 0;
}
.site-side-card__photo {
  width: 88px; height: 88px; border-radius: 50%; object-fit: cover;
  margin: 0 0 14px; border: 0; padding: 3px; background: var(--site-blaze);
  box-sizing: content-box;
}
.site-side-card h2, .site-card h2 {
  margin: 0 0 6px; font-family: var(--font-display); font-size: 1.15rem; color: var(--site-ink);
}
.site-side-card--navy h2,
.site-card--ink h2 {
  color: #fff;
}
.site-side-card--navy p,
.site-card--ink p {
  color: rgba(255,255,255,.88);
}
.site-side-card p, .site-card p { margin: 0 0 14px; font-size: .9rem; }
.site-side-card .site-btn, .site-card .site-btn { width: 100%; margin-top: 8px; min-height: 46px; }
.site-side-card__phone {
  display: block; margin: 4px 0 2px;
  font-family: var(--font-display); font-size: 1.3rem; font-weight: 700;
  color: inherit; text-decoration: none;
}
.site-side-card--navy .site-side-card__phone { color: #fff; }
.site-side-links, .site-card ul { margin: 0; padding: 0; list-style: none; }
.site-side-links li + li, .site-card li + li { border-top: 1px solid var(--site-line); }
.site-side-links a, .site-card li a {
  display: block; padding: 10px 2px; font-size: .92rem; font-weight: 600;
  color: var(--site-ink); text-decoration: none;
}
.site-side-links a:hover, .site-card li a:hover { color: var(--site-blaze-dark); }

.site-related-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-top: 14px; }
.site-related-card {
  display: block; padding: 16px 18px; background: var(--site-mist);
  border: 1px solid var(--site-line); text-decoration: none; transition: border-color .15s ease;
}
.site-related-card:hover { border-color: var(--site-blaze); }
.site-related-card h3 { margin: 0 0 4px; font-size: .98rem; color: var(--site-ink); font-family: var(--font-display); }
.site-related-card p { margin: 0; font-size: .84rem; color: var(--site-ink-faint); }

.contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.contact-grid .site-card {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.contact-grid .site-card a {
  display: inline-block;
  max-width: 100%;
  font-size: clamp(.92rem, 1.4vw, 1.05rem);
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.contact-card {
  padding: 24px 22px; background: #fff; border: 1px solid var(--site-line); text-align: center;
}
.contact-card h3 { margin: 0 0 4px; font-family: var(--font-display); color: var(--site-ink); font-size: 1.1rem; }
.contact-card p { margin: 0 0 12px; font-size: .88rem; color: var(--site-ink-faint); }
.contact-card a.big {
  font-family: var(--font-display); font-size: 1.2rem; font-weight: 700;
  color: var(--site-ink); text-decoration: none;
}
.contact-card a.big:hover { color: var(--site-blaze-dark); }

.blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.blog-card {
  display: flex; flex-direction: column; overflow: hidden; background: #fff;
  border: 1px solid var(--site-line);
}
.blog-card__body { display: flex; flex-direction: column; padding: 20px; flex-grow: 1; }
.blog-card__kicker {
  color: var(--site-blaze-dark); font-size: .76rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; margin-bottom: 8px;
}
.blog-card h2, .blog-card h3 {
  margin: 0 0 8px; font-family: var(--font-display); font-size: 1.15rem; line-height: 1.3;
}
.blog-card h2 a, .blog-card h3 a { color: var(--site-ink); text-decoration: none; }
.blog-card p { margin: 0 0 14px; font-size: .9rem; color: var(--site-ink-faint); flex-grow: 1; }

.trust-links { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.trust-link {
  display: block; padding: 16px 18px; background: #fff; border: 1px solid var(--site-line);
  text-decoration: none; transition: border-color .15s ease;
}
.trust-link:hover { border-color: var(--site-blaze); }
.trust-link strong { display: block; color: var(--site-ink); font-size: .95rem; }
.trust-link span { display: block; margin-top: 3px; font-size: .8rem; color: var(--site-ink-faint); }

.calc-shell {
  margin: 1.4em 0; padding: 22px; background: #fff; border: 1px solid var(--site-line);
}
.calc-shell h3 { margin: 0 0 8px; font-family: var(--font-display); }
.calc-note { font-size: .86rem; color: var(--site-ink-faint); margin: 12px 0 0; }
.calc-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.calc-grid label { display: block; font-weight: 600; font-size: .88rem; margin-bottom: 4px; }
.calc-grid input, .calc-grid select {
  width: 100%; padding: 11px 12px; border: 1px solid var(--site-line-strong);
  border-radius: var(--site-radius); font: inherit;
}
.calc-result {
  margin-top: 16px; padding: 16px; background: var(--site-mist);
  border-left: 4px solid var(--site-blaze);
}
.calc-result strong { display: block; font-family: var(--font-display); font-size: 1.6rem; }

/* Interactive Canadian mortgage calculators */
.site-calc {
  margin: 1.5em 0 2em;
  border: 1px solid var(--site-line);
  background:
    linear-gradient(165deg, rgba(255,255,255,.96) 0%, rgba(247,249,251,.98) 55%, rgba(238,242,245,.95) 100%),
    radial-gradient(1200px 420px at 0% 0%, rgba(21,36,51,.04), transparent 55%);
  box-shadow: var(--site-shadow);
  overflow: hidden;
}
.site-calc__workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .95fr);
  gap: 0;
  min-height: 420px;
}
.site-calc__controls {
  padding: clamp(22px, 3vw, 32px);
  border-right: 1px solid var(--site-line);
}
.site-calc__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  padding: 7px 12px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--site-navy);
  background: rgba(30, 58, 95, .08);
  border-left: 3px solid var(--site-blaze);
}
.site-calc__presets {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
}
.site-calc__presets button {
  appearance: none;
  border: 1px solid var(--site-line-strong);
  background: #fff;
  color: var(--site-ink-soft);
  font: inherit;
  font-size: .86rem;
  font-weight: 600;
  padding: 8px 12px;
  border-radius: var(--site-radius);
  cursor: pointer;
  transition: border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}
.site-calc__presets button:hover {
  border-color: var(--site-blaze);
  color: var(--site-ink);
  transform: translateY(-1px);
}
.site-calc__presets button.is-active {
  border-color: var(--site-blaze);
  background: var(--site-blaze-soft);
  color: var(--site-ink);
}
.site-calc__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 14px;
}
.site-calc__grid--compare {
  grid-template-columns: 1fr;
  gap: 22px;
}
.site-calc__scenario {
  padding: 16px;
  background: rgba(255,255,255,.72);
  border: 1px solid var(--site-line);
}
.site-calc__scenario h3 {
  margin: 0 0 14px;
  font-family: var(--font-display);
  font-size: 1rem;
  color: var(--site-navy);
}
.site-calc__scenario-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.site-calc__field { min-width: 0; }
.site-calc__field--wide { grid-column: 1 / -1; }
.site-calc__field label {
  display: block;
  margin: 0 0 6px;
  font-size: .88rem;
  font-weight: 700;
  color: var(--site-ink);
}
.site-calc__money {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: stretch;
  border: 1px solid var(--site-line-strong);
  border-radius: var(--site-radius);
  background: #fff;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.site-calc__money:focus-within {
  border-color: var(--site-blaze);
  box-shadow: 0 0 0 3px rgba(224, 120, 48, .18);
}
.site-calc__money > span {
  display: grid;
  place-items: center;
  min-width: 42px;
  padding: 0 10px;
  font-weight: 700;
  color: var(--site-ink-faint);
  background: var(--site-mist);
  border-right: 1px solid var(--site-line);
}
.site-calc__money input,
.site-calc__field > input,
.site-calc__field > select {
  width: 100%;
  min-height: 48px;
  padding: 11px 14px;
  border: 0;
  border-radius: var(--site-radius);
  background: #fff;
  font: inherit;
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--site-ink);
}
.site-calc__field > input,
.site-calc__field > select {
  border: 1px solid var(--site-line-strong);
}
.site-calc__field > input:focus,
.site-calc__field > select:focus {
  border-color: var(--site-blaze);
  box-shadow: 0 0 0 3px rgba(224, 120, 48, .18);
  outline: none;
}
.site-calc__money input:focus { outline: none; }
.site-calc__hint {
  margin: 6px 0 0;
  font-size: .8rem;
  color: var(--site-ink-faint);
  line-height: 1.4;
}
.site-calc__freq {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 18px;
}
.site-calc__freq legend {
  grid-column: 1 / -1;
  margin: 0 0 4px;
  font-size: .88rem;
  font-weight: 700;
}
.site-calc__freq label {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 8px 12px;
  border: 1px solid var(--site-line-strong);
  border-radius: var(--site-radius);
  background: #fff;
  font-size: .9rem;
  font-weight: 600;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.site-calc__freq label:hover {
  border-color: var(--site-blaze);
  transform: translateY(-1px);
}
.site-calc__freq input {
  accent-color: var(--site-blaze);
  width: 16px;
  height: 16px;
}
.site-calc__freq label:has(input:checked) {
  border-color: var(--site-blaze);
  background: var(--site-blaze-soft);
}
.site-calc__panel {
  padding: clamp(24px, 3.2vw, 36px);
  background:
    linear-gradient(180deg, rgba(21,36,51,.96), rgba(30,58,95,.94));
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.site-calc__panel::before {
  content: "";
  position: absolute;
  inset: auto -20% -30% auto;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(224,120,48,.35), transparent 68%);
  pointer-events: none;
}
.site-calc__panel > * { position: relative; }
.site-calc__panel-label {
  margin: 0 0 8px;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(255,255,255,.7);
}
.site-calc__hero-num {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(2.1rem, 4.2vw, 2.85rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -.02em;
  color: #fff;
}
.site-calc__hero-num.is-updating {
  animation: calcPop .45s ease;
}
.site-calc__freq-label {
  margin: 8px 0 0;
  font-size: 1rem;
  font-weight: 600;
  color: rgba(255,255,255,.78);
}
.site-calc__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin: 22px 0 0;
  padding: 0;
}
.site-calc__stats > div {
  padding: 12px 14px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}
.site-calc__stats dt {
  margin: 0;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(255,255,255,.62);
}
.site-calc__stats dd {
  margin: 6px 0 0;
  font-family: var(--font-display);
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
}
.site-calc__diff {
  margin: 18px 0 0;
  padding: 14px 16px;
  background: rgba(224,120,48,.18);
  border-left: 3px solid var(--site-blaze);
}
.site-calc__diff p {
  margin: 0 0 6px;
  font-size: .92rem;
  font-weight: 600;
  color: #fff;
}
.site-calc__diff p:last-child { margin-bottom: 0; }
.site-calc__compare {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 18px;
}
.site-calc__compare article {
  padding: 14px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}
.site-calc__compare h3 {
  margin: 0 0 10px;
  font-size: .78rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(255,255,255,.65);
}
.site-calc__compare strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.35rem;
  margin-bottom: 8px;
}
.site-calc__compare p {
  margin: 0 0 4px;
  font-size: .82rem;
  color: rgba(255,255,255,.75);
}
.site-calc__footnote {
  margin: 18px 0 0;
  font-size: .8rem;
  line-height: 1.45;
  color: rgba(255,255,255,.62);
}
.site-calc__cta {
  margin-top: 18px;
}
.site-calc__cta .site-btn--primary {
  width: 100%;
}
.site-calc__cta .site-btn--secondary {
  width: 100%;
  margin-top: 8px;
  color: #fff;
  background: transparent;
  border-color: rgba(255,255,255,.35);
}
.site-calc__cta .site-btn--secondary:hover {
  background: rgba(255,255,255,.08);
}
@keyframes calcPop {
  0% { transform: scale(.985); opacity: .75; }
  60% { transform: scale(1.015); opacity: 1; }
  100% { transform: scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  .site-calc__hero-num.is-updating { animation: none; }
  .site-calc__presets button:hover,
  .site-calc__freq label:hover { transform: none; }
}
@media (max-width: 900px) {
  .site-calc__workspace { grid-template-columns: 1fr; }
  .site-calc__controls { border-right: 0; border-bottom: 1px solid var(--site-line); }
}
@media (max-width: 640px) {
  .site-calc__grid,
  .site-calc__scenario-grid,
  .site-calc__freq,
  .site-calc__stats,
  .site-calc__compare { grid-template-columns: 1fr; }
}

.sitemap-cols {
  display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px;
}
.sitemap-cols h2 { font-size: 1.1rem; margin: 0 0 10px; }
.sitemap-cols ul { margin: 0; padding: 0; list-style: none; }
.sitemap-cols li { margin: 0 0 8px; }
.sitemap-cols a { text-decoration: none; font-weight: 600; }
.sitemap-cols a:hover { color: var(--site-blaze-dark); text-decoration: underline; }

.site-form { display: grid; gap: 14px; }
.site-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.site-form label { display: block; font-weight: 600; font-size: .9rem; color: var(--site-ink); margin-bottom: 5px; }
.site-form input, .site-form select, .site-form textarea {
  width: 100%; padding: 12px 14px; border-radius: var(--site-radius);
  border: 1px solid var(--site-line-strong); background: #fff; font: inherit;
}
.site-form textarea { min-height: 130px; resize: vertical; }
.site-form__hp {
  position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden;
}
.site-contact-form { max-width: 720px; margin: 22px 0 8px; position: relative; }
.site-contact-form__actions { display: flex; justify-content: flex-start; margin-top: 4px; }
.site-contact-form__success {
  margin: 0 0 16px; padding: 12px 14px; border-radius: var(--site-radius);
  background: rgba(20, 120, 80, .08); color: #0f5a3a; font-weight: 600;
}
.site-contact-form__error {
  margin: 0 0 16px; padding: 12px 14px; border-radius: var(--site-radius);
  background: rgba(160, 40, 40, .08); color: #8a1f1f; font-weight: 600;
}
.site-form--contact input,
.site-form--contact select,
.site-form--contact textarea {
  background: #f3f4f6; border-color: transparent;
}
.site-form--contact input:focus,
.site-form--contact select:focus,
.site-form--contact textarea:focus {
  outline: 2px solid rgba(224, 120, 48, .45); background: #fff;
}

.grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.icon { width: 22px; height: 22px; stroke: var(--site-blaze); fill: none; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }

/* Footer */
.site-footer { background: var(--site-ink); color: rgba(255,255,255,.78); font-size: .9rem; }
.site-footer a { color: #fff; text-decoration: none; }
.site-footer a:hover { color: var(--site-blaze); text-decoration: underline; }
.site-footer__main {
  display: grid; grid-template-columns: 1.3fr 1fr 1fr 1.1fr;
  gap: clamp(24px, 4vw, 48px); padding: clamp(40px, 6vw, 60px) 0 32px;
}
.site-footer__brand img { width: 216px; height: auto; margin-bottom: 14px; }
.site-footer__brand p { margin: 0 0 14px; line-height: 1.6; color: rgba(255,255,255,.7); }
.site-footer h2 {
  margin: 0 0 14px; font-family: var(--font-display); font-size: .95rem;
  color: var(--site-blaze); letter-spacing: .06em; text-transform: uppercase;
}
.site-footer ul { margin: 0; padding: 0; list-style: none; }
.site-footer li { margin: 0 0 9px; }
.site-footer__legal {
  border-top: 1px solid rgba(255,255,255,.12); padding: 22px 0 30px;
  font-size: .78rem; line-height: 1.6; color: rgba(255,255,255,.55);
}
.site-footer__legal p { margin: 0 0 8px; }

@media (max-width: 960px) {
  .site-layout { grid-template-columns: 1fr; }
  .site-sidebar { position: static; }
  .site-footer__main { grid-template-columns: 1fr 1fr; }
  .path-grid, .loan-grid, .testimonials, .steps, .blog-grid, .trust-links, .contact-grid, .sitemap-cols { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .site-footer__main, .path-grid, .loan-grid, .testimonials, .steps, .blog-grid, .trust-links, .contact-grid, .sitemap-cols, .site-related-grid, .site-form__row, .grid-2, .calc-grid { grid-template-columns: 1fr; }
  .home-hero__actions { display: grid; }
  .home-hero__actions .site-btn { width: 100%; }
}


/* Agency invent 2026-09-24 */
.home-first { display: flex; flex-direction: column; min-height: 100svh; }
.trust-bar { background: #1b3a4b; color: #f4f7f8; padding: 0.85rem 1.25rem; }
.trust-bar ul { list-style: none; margin: 0 auto; padding: 0; display: flex; flex-wrap: wrap; gap: 1rem 1.75rem; max-width: 1100px; justify-content: center; }
.trust-bar li { font-size: 0.92rem; }
.trust-bar span { display: block; opacity: 0.75; font-size: 0.72rem; letter-spacing: 0.04em; text-transform: uppercase; }
.split-band { display: grid; grid-template-columns: 1fr 1fr; min-height: 28rem; }
.split-band--flip .split__media { order: 2; }
.split__media { margin: 0; overflow: hidden; }
.split__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.split__copy { padding: clamp(1.5rem, 4vw, 3rem); display: flex; flex-direction: column; justify-content: center; gap: 0.75rem; background: #e8eef1; color: #14252f; }
.split-band--ink .split__copy { background: #1b3a4b; color: #f4f7f8; }
.split-band--mist .split__copy { background: #d9e4ea; color: #14252f; }
.split__eyebrow { text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.75rem; margin: 0; opacity: 0.8; }
.split__copy h2 { margin: 0; font-size: clamp(1.4rem, 2.4vw, 2rem); }
.split__copy p { margin: 0; max-width: 36rem; }
.split__copy a { color: inherit; text-decoration: underline; }
@media (max-width: 800px) {
 .home-first { min-height: 0; }
 .split-band { grid-template-columns: 1fr; }
 .split-band--flip .split__media { order: 0; }
 .split__media img { min-height: 16rem; }
}
