/*fern-site-stylesheet*/@font-face {
    font-family: 'Manulife Body';
    src: url('/_fern-files/manulife.ferndocs.com/461b9f7e88e53bd893528c8755c26c8998cd6f4dbfc86742016a8812c3f818fe/assets/ManulifeJHSans-Optimized.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0100-01B0, U+0218-0237, U+02C7-02DD, U+0300-0328, U+03C0, U+1E80-1EF9, U+2070-2089, U+2113-212E, U+2150-215E, U+2202-2265, U+25CA, U+2713, U+2764, U+FB01-FB02;
}
@font-face {
    font-family: 'Manulife Body';
    src: url('/_fern-img/461b9f7e88e53bd893528c8755c26c89-v1.latin.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    unicode-range: U+000D, U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+2215;
}
@font-face {
    font-family: 'Manulife Title';
    src: url('/_fern-files/manulife.ferndocs.com/b3066170640e2b8e8ea5157807bf0817f40ebf15761b6d0e9c22eb8afeb22bb3/assets/ManulifeJHSans-Optimized-Bold.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0100-01B0, U+0218-0237, U+02C7-02DD, U+0300-0328, U+03C0, U+1E80-1EF9, U+2070-2089, U+2113-212E, U+2150-215E, U+2202-2265, U+25CA, U+2713, U+2764, U+FB01-FB02;
}
@font-face {
    font-family: 'Manulife Title';
    src: url('/_fern-img/b3066170640e2b8e8ea5157807bf0817-v1.latin.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    unicode-range: U+000D, U+0020-007E, U+00A0-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+2122, U+2212, U+2215;
}
@font-face {
    font-family: 'Manulife Body Fallback';
    src: local('Arial'), local('ArialMT'), local('Liberation Sans'), local('Arimo');
    size-adjust: 92.87%;
    ascent-override: 113.71%;
    descent-override: 30.37%;
    line-gap-override: 0.00%;
}
@font-face {
    font-family: 'Manulife Title Fallback';
    src: local('Arial'), local('ArialMT'), local('Liberation Sans'), local('Arimo');
    size-adjust: 103.19%;
    ascent-override: 102.34%;
    descent-override: 27.33%;
    line-gap-override: 0.00%;
}

:root {
  --header-height: 64px;
  --header-height-real: 64px;
  --mobile-header-height-real: 64px;
  --content-width: 640px;
  --sidebar-width: 288px;
  --page-width: 100vw;
  --logo-height: 40px;
  --font-body: 'Manulife Body', 'Manulife Body Fallback', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-heading: 'Manulife Title', 'Manulife Title Fallback', 'Manulife Body', 'Manulife Body Fallback', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-code: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
}

:root {
  --typography-body-font-family: var(--font-body);
  --typography-heading-font-family: var(--font-heading);
  --typography-code-font-family: var(--font-code);
}


.light, :root {
  --accent-1: #fafefb;
  --accent-2: #f4fbf6;
  --accent-3: #e5f8ea;
  --accent-4: #d5f2dc;
  --accent-5: #c1ebcb;
  --accent-6: #a8e0b7;
  --accent-7: #85d29c;
  --accent-8: #4bbd75;
  --accent-9: #00aa59;
  --accent-10: #009c4f;
  --accent-11: #00823d;
  --accent-12: #183d25;

  --accent-a1: #00cc3305;
  --accent-a2: #00a32f0b;
  --accent-a3: #00bb321a;
  --accent-a4: #00b12b2a;
  --accent-a5: #00ad2a3e;
  --accent-a6: #00a52c57;
  --accent-a7: #01a1317a;
  --accent-a8: #00a23cb4;
  --accent-a9: #00aa59;
  --accent-a10: #009c4f;
  --accent-a11: #00823d;
  --accent-a12: #00290ee7;

  --accent-contrast: #fff;
  --accent-surface: #f1faf4cc;
  --accent-indicator: #00aa59;
  --accent-track: #00aa59;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --accent-1: oklch(99.4% 0.0061 152.7);
      --accent-2: oklch(98.2% 0.0105 152.7);
      --accent-3: oklch(96.1% 0.0266 152.7);
      --accent-4: oklch(93.4% 0.0424 152.7);
      --accent-5: oklch(90.1% 0.0605 152.7);
      --accent-6: oklch(85.8% 0.0815 152.7);
      --accent-7: oklch(79.8% 0.1084 152.7);
      --accent-8: oklch(71.6% 0.1481 152.7);
      --accent-9: oklch(64.7% 0.1677 152.7);
      --accent-10: oklch(60.7% 0.1616 152.7);
      --accent-11: oklch(52.7% 0.149 152.7);
      --accent-12: oklch(32.7% 0.061 152.7);

      --accent-a1: color(display-p3 0.0235 0.7569 0.0235 / 0.016);
      --accent-a2: color(display-p3 0.0235 0.6118 0.1216 / 0.04);
      --accent-a3: color(display-p3 0.0118 0.6431 0.102 / 0.087);
      --accent-a4: color(display-p3 0.0078 0.6157 0.0902 / 0.142);
      --accent-a5: color(display-p3 0.0039 0.6118 0.0784 / 0.212);
      --accent-a6: color(display-p3 0.0039 0.5647 0.0863 / 0.295);
      --accent-a7: color(display-p3 0.0039 0.549 0.0902 / 0.408);
      --accent-a8: color(display-p3 0 0.5412 0.1176 / 0.581);
      --accent-a9: color(display-p3 0 0.5098 0.1176 / 0.702);
      --accent-a10: color(display-p3 0 0.4588 0.098 / 0.73);
      --accent-a11: color(display-p3 0 0.3608 0.0627 / 0.781);
      --accent-a12: color(display-p3 0 0.1176 0.0235 / 0.867);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.9529 0.9804 0.9569 / 0.8);
      --accent-indicator: oklch(64.7% 0.1677 152.7);
      --accent-track: oklch(64.7% 0.1677 152.7);
    }
  }
}


.light, :root {
  --grayscale-1: #fcfdfc;
  --grayscale-2: #f8faf8;
  --grayscale-3: #eff1ef;
  --grayscale-4: #e7e9e7;
  --grayscale-5: #dfe2df;
  --grayscale-6: #d7dad7;
  --grayscale-7: #cccfcc;
  --grayscale-8: #b9bcb8;
  --grayscale-9: #898e87;
  --grayscale-10: #7f847d;
  --grayscale-11: #60655f;
  --grayscale-12: #1d211c;

  --grayscale-a1: #00550003;
  --grayscale-a2: #00490007;
  --grayscale-a3: #00200010;
  --grayscale-a4: #00160018;
  --grayscale-a5: #00180020;
  --grayscale-a6: #00140028;
  --grayscale-a7: #000f0033;
  --grayscale-a8: #040f0047;
  --grayscale-a9: #050f0078;
  --grayscale-a10: #040e0082;
  --grayscale-a11: #020a00a0;
  --grayscale-a12: #010600e3;

  --grayscale-contrast: #000;
  --grayscale-surface: #ffffffcc;
  --grayscale-indicator: #898e87;
  --grayscale-track: #898e87;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --grayscale-1: color(display-p3 0.989 0.992 0.989);
      --grayscale-2: color(display-p3 0.974 0.98 0.973);
      --grayscale-3: color(display-p3 0.939 0.945 0.937);
      --grayscale-4: color(display-p3 0.907 0.914 0.905);
      --grayscale-5: color(display-p3 0.878 0.885 0.875);
      --grayscale-6: color(display-p3 0.846 0.855 0.843);
      --grayscale-7: color(display-p3 0.803 0.812 0.8);
      --grayscale-8: color(display-p3 0.727 0.738 0.723);
      --grayscale-9: color(display-p3 0.541 0.556 0.532);
      --grayscale-10: color(display-p3 0.5 0.515 0.491);
      --grayscale-11: color(display-p3 0.38 0.395 0.374);
      --grayscale-12: color(display-p3 0.117 0.129 0.111);

      --grayscale-a1: #00550003;
      --grayscale-a2: #00490007;
      --grayscale-a3: #00200010;
      --grayscale-a4: #00160018;
      --grayscale-a5: #00180020;
      --grayscale-a6: #00140028;
      --grayscale-a7: #000f0033;
      --grayscale-a8: #040f0047;
      --grayscale-a9: #050f0078;
      --grayscale-a10: #040e0082;
      --grayscale-a11: #020a00a0;
      --grayscale-a12: #010600e3;

      --grayscale-contrast: #000;
      --grayscale-surface: color(display-p3 1 1 1 / 80%);
      --grayscale-indicator: color(display-p3 0.541 0.556 0.532);
      --grayscale-track: color(display-p3 0.541 0.556 0.532);
    }
  }
}


.dark {
  --accent-1: #0c130e;
  --accent-2: #131a15;
  --accent-3: #182b1d;
  --accent-4: #173b23;
  --accent-5: #1c492c;
  --accent-6: #225935;
  --accent-7: #27693f;
  --accent-8: #2b7c4a;
  --accent-9: #00aa59;
  --accent-10: #009d4d;
  --accent-11: #52d582;
  --accent-12: #b4f3c5;

  --accent-a1: #00bb0003;
  --accent-a2: #45f7470a;
  --accent-a3: #51fe6f1c;
  --accent-a4: #33ff6e2d;
  --accent-a5: #40ff7d3c;
  --accent-a6: #49fd834e;
  --accent-a7: #4cfd8a5f;
  --accent-a8: #4bff8d73;
  --accent-a9: #00ff80a4;
  --accent-a10: #00ff7696;
  --accent-a11: #60ff9ad2;
  --accent-a12: #bcfecef3;

  --accent-contrast: #fff;
  --accent-surface: #15231780;
  --accent-indicator: #00aa59;
  --accent-track: #00aa59;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --accent-1: oklch(17.9% 0.0161 152.7);
      --accent-2: oklch(20.9% 0.0163 152.7);
      --accent-3: oklch(26.7% 0.035 152.7);
      --accent-4: oklch(31.9% 0.0603 152.7);
      --accent-5: oklch(36.6% 0.0713 152.7);
      --accent-6: oklch(41.6% 0.0828 152.7);
      --accent-7: oklch(46.8% 0.0958 152.7);
      --accent-8: oklch(52.4% 0.1116 152.7);
      --accent-9: oklch(64.7% 0.1677 152.7);
      --accent-10: oklch(60.7% 0.1677 152.7);
      --accent-11: oklch(78% 0.1646 152.7);
      --accent-12: oklch(91.1% 0.0898 152.7);

      --accent-a1: color(display-p3 0 0.9412 0 / 0.009);
      --accent-a2: color(display-p3 0.3765 0.9961 0.2824 / 0.038);
      --accent-a3: color(display-p3 0.4588 0.9961 0.4667 / 0.11);
      --accent-a4: color(display-p3 0.4078 0.9961 0.4863 / 0.173);
      --accent-a5: color(display-p3 0.4588 1 0.549 / 0.232);
      --accent-a6: color(display-p3 0.4902 1 0.5608 / 0.299);
      --accent-a7: color(display-p3 0.5059 1 0.5922 / 0.366);
      --accent-a8: color(display-p3 0.5137 1 0.6039 / 0.442);
      --accent-a9: color(display-p3 0.4353 1 0.5608 / 0.631);
      --accent-a10: color(display-p3 0.4196 1 0.5294 / 0.58);
      --accent-a11: color(display-p3 0.5647 1 0.6471 / 0.811);
      --accent-a12: color(display-p3 0.8 1 0.8314 / 0.942);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.0863 0.1333 0.0863 / 0.5);
      --accent-indicator: oklch(64.7% 0.1677 152.7);
      --accent-track: oklch(64.7% 0.1677 152.7);
    }
  }
}


.dark {
  --grayscale-1: #111113;
  --grayscale-2: #18191b;
  --grayscale-3: #212225;
  --grayscale-4: #272a2d;
  --grayscale-5: #2e3135;
  --grayscale-6: #363a3f;
  --grayscale-7: #43484e;
  --grayscale-8: #5a6169;
  --grayscale-9: #696e77;
  --grayscale-10: #777b84;
  --grayscale-11: #b0b4ba;
  --grayscale-12: #edeef0;

  --grayscale-a1: #00000000;
  --grayscale-a2: #d8f4f609;
  --grayscale-a3: #ddeaf814;
  --grayscale-a4: #d3edf81d;
  --grayscale-a5: #d9edfe25;
  --grayscale-a6: #d6ebfd30;
  --grayscale-a7: #d9edff40;
  --grayscale-a8: #d9edff5d;
  --grayscale-a9: #dfebfd6d;
  --grayscale-a10: #e5edfd7b;
  --grayscale-a11: #f1f7feb5;
  --grayscale-a12: #fcfdffef;

  --grayscale-contrast: #fff;
  --grayscale-surface: rgba(0, 0, 0, 0.05);
  --grayscale-indicator: #696e77;
  --grayscale-track: #696e77;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --grayscale-1: color(display-p3 0.067 0.067 0.074);
      --grayscale-2: color(display-p3 0.095 0.098 0.105);
      --grayscale-3: color(display-p3 0.13 0.135 0.145);
      --grayscale-4: color(display-p3 0.156 0.163 0.176);
      --grayscale-5: color(display-p3 0.183 0.191 0.206);
      --grayscale-6: color(display-p3 0.215 0.226 0.244);
      --grayscale-7: color(display-p3 0.265 0.28 0.302);
      --grayscale-8: color(display-p3 0.357 0.381 0.409);
      --grayscale-9: color(display-p3 0.415 0.431 0.463);
      --grayscale-10: color(display-p3 0.469 0.483 0.514);
      --grayscale-11: color(display-p3 0.692 0.704 0.728);
      --grayscale-12: color(display-p3 0.93 0.933 0.94);

      --grayscale-a1: #00000000;
      --grayscale-a2: #d8f4f609;
      --grayscale-a3: #ddeaf814;
      --grayscale-a4: #d3edf81d;
      --grayscale-a5: #d9edfe25;
      --grayscale-a6: #d6ebfd30;
      --grayscale-a7: #d9edff40;
      --grayscale-a8: #d9edff5d;
      --grayscale-a9: #dfebfd6d;
      --grayscale-a10: #e5edfd7b;
      --grayscale-a11: #f1f7feb5;
      --grayscale-a12: #fcfdffef;

      --grayscale-contrast: #fff;
      --grayscale-surface: color(display-p3 0 0 0 / 5%);
      --grayscale-indicator: color(display-p3 0.415 0.431 0.463);
      --grayscale-track: color(display-p3 0.415 0.431 0.463);
    }
  }
}

.light, :root {
  color-scheme: light;
  --accent: rgba(0, 170, 89, 1);
  --background: rgba(255, 255, 255, 1);
  --border: initial;
  --sidebar-background: initial;
  --header-background: color-mix(in srgb, var(--background), transparent 30%);
  --card-background: initial;
  --theme-color: #fff;
}

.dark {
  color-scheme: dark;
  --accent: rgba(0, 170, 89, 1);
  --background: rgba(17, 17, 19, 1);
  --border: initial;
  --sidebar-background: initial;
  --header-background: color-mix(in srgb, var(--background), transparent 30%);
  --card-background: initial;
  --theme-color: #111113;
}

:root {
  --radius: 0px;
}

/* Subtle linear gradient background */
/* .fern-background-image {
  background-image: linear-gradient(180deg, color-mix(in srgb, var(--accent) 15%, transparent) 0%, transparent 50%);
} */

/* ── Hide tab row on the landing page ── */

.mnlf-anchor ~ .fern-tabs,
body:has(.mnlf-anchor) .fern-tabs,
body:has(.mnlf-anchor) [class*="fern-tab-bar"],
body:has(.mnlf-anchor) [class*="TabBar"],
body:has(.mnlf-anchor) nav[class*="tabs"] {
  display: none !important;
}

/* ── Hero section ── */

body:has(.mnlf-hero) .fern-tabs,
body:has(.mnlf-hero) [class*="fern-tab-bar"],
body:has(.mnlf-hero) [class*="TabBar"],
body:has(.mnlf-hero) nav[class*="tabs"] {
  display: none !important;
}

.mnlf-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #003d1f 0%, #005c2e 40%, #006b35 100%);
  padding: 64px 0 48px;
  color: #fff;
}



.mnlf-hero-content {
  position: relative;
  z-index: 1;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 24px;
}

.mnlf-hero-label {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.75;
  margin-bottom: 16px;
}

.mnlf-hero-title {
  font-size: 3rem;
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 16px;
  color: #fff;
  pointer-events: none;
}

.mnlf-hero-title a,
.mnlf-hero-title [class*="anchor"] {
  display: none !important;
}

.mnlf-hero-subtitle {
  font-size: 1rem;
  line-height: 1.6;
  opacity: 0.85;
  max-width: 480px;
  margin-bottom: 32px;
}

.mnlf-hero-buttons {
  display: flex;
  gap: 12px;
  margin-bottom: 48px;
  flex-wrap: wrap;
}

.mnlf-btn-primary {
  display: inline-block;
  padding: 10px 24px;
  background-color: #00aa59;
  color: #fff;
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
  border-radius: 4px;
  transition: background-color 0.2s ease;
}

.mnlf-btn-primary:hover {
  background-color: #008a48;
}
.mnlf-btn-primary:focus-visible {
  background-color: #008a48;
}

.mnlf-btn-secondary {
  display: inline-block;
  padding: 10px 24px;
  background-color: transparent;
  color: #fff;
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
  border: 2px solid rgba(255, 255, 255, 0.6);
  border-radius: 4px;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

.mnlf-btn-secondary:hover {
  border-color: #fff;
  background-color: rgba(255, 255, 255, 0.08);
}
.mnlf-btn-secondary:focus-visible {
  border-color: #fff;
  background-color: rgba(255, 255, 255, 0.08);
}

.mnlf-hero-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.mnlf-hero-card {
  display: block;
  padding: 20px 24px;
  background-color: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 8px;
  text-decoration: none;
  color: #fff;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.mnlf-hero-card:hover {
  background-color: rgba(0, 0, 0, 0.35);
  border-color: rgba(255, 255, 255, 0.4);
}
.mnlf-hero-card:focus-visible {
  background-color: rgba(0, 0, 0, 0.35);
  border-color: rgba(255, 255, 255, 0.4);
}

.mnlf-hero-card,
.mnlf-hero-card:visited,
.mnlf-hero-card:hover,
.mnlf-hero-card:focus {
  color: #fff !important;
}
.mnlf-hero-card:focus-visible {
  color: #fff !important;
}

.mnlf-hero-card .mnlf-card-category {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #7eedb8 !important;
  margin-bottom: 8px;
}

.mnlf-hero-card .mnlf-card-title {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 6px;
  color: #fff !important;
}

.mnlf-hero-card .mnlf-card-desc {
  font-size: 0.85rem;
  opacity: 0.9;
  line-height: 1.4;
  color: #e0f5ec !important;
}

@media (max-width: 640px) {

  .mnlf-hero {
    padding: 48px 0 40px;
  }
  .mnlf-hero-title {
    font-size: 2rem;
  }
  .mnlf-hero-cards {
    grid-template-columns: 1fr;
  }

}

.mnlf-anchor .landing-help,
.landing-bottom-section .landing-help {
  margin-top: 64px;
}

.landing-bottom-section {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 24px 64px;
  text-align: center;
}

/* ── Product browser section on landing page ── */

.landing-products-section {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 24px 64px;
}
