/* ---------- PEPP 2025 ----------- */
body {
    font-family: 'Montserrat', sans-serif;
}

ol, li, td, tr, th {
    font-family: 'Roboto Flex', sans-serif;
}

.w-80 {
    width: 80%;
}

.green-label {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    text-align: left;
    color: #71a300;
}

h1 {
    font-family: "Playfair Display", serif;
    font-size: 72px;
    /* font-size: min(72px, 10vw); */
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.11;
    letter-spacing: -2.16px;
    text-align: left;
    color: #0f4f99;
}

h2 {
    font-family: "Playfair Display", serif;
    font-size: 48px;
    /* font-size: min(48px, 8vw); */
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.17;
    letter-spacing: -1.44px;
    text-align: left;
    color: #0f4f99;
    margin-bottom: 32px;
}

h3 {
    font-family: "Playfair Display", serif;
    font-size: 40px;
    /* font-size: min(40px, 7vw); */
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: -1.2px;
    text-align: left;
    color: #0f4f99;
    margin-bottom: 32px;
}

h4 {
    font-family: "Playfair Display", serif;
    font-size: 32px;
    /* font-size: min(32px, 6vw); */
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.13;
    letter-spacing: -0.96px;
    text-align: left;
    color: #0f4f99;
    margin-bottom: 32px;
}

h5 {
    font-family: 'Montserrat', sans-serif;;
    font-size: 24px;
    /* font-size: min(24px, 4vw); */
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: left;
    color: #0f4f99;
}

/* 
h6 {

} */

p {
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
    /* font-size: 24px; */
    font-size: min(24px, 4vw);
}

/* ---------- GENERIC ----------- */
.ff-mon {
    font-family: 'Montserrat', sans-serif;
}

.ff-rob {
    font-family: 'Roboto Flex', sans-serif;
}

.ff-pf {
    font-family: "Playfair Display", serif;
}

.fs-18 {
    font-size: 18px !important;
}

.fs-20 {
    font-size: 20px !important;
}

.fs-24 {
    font-size: 24px;
}

.fw-500 {
    font-weight: 500;
}

.f-pepp-blue {
    color: #0f4f99 !important;
}

.f-pepp-lblue {
    color: #2075d6 !important;
}

.f-pepp-grey {
    color: #2f3031 !important;
}

.f-pepp-green {
    color: #71a300 !important;
}

.border-blue {
    border: 1px solid #2075d6;
    border-radius: 24px;
}

a.underline {
    text-decoration: underline !important;
}

.bg-pepp-orange {
    background: #ffd8ba;
    border-color: #ffd8ba;
}

.bg-pepp-blue {
    background: #d5eded;
}

.bg-pepp-yellow {
    background: #fff1a6;
}

.bg-pepp-green {
    background: #ddff91;
    border-radius: 24px;
}

.fa-file-pdf {
    color: #fd6f01;
}

blockquote {
    position: relative;
    padding: 1.5rem 0;
    margin: 2rem 0;
}

blockquote::before {
  content: "\201C";
  position: absolute;
  top: -40px;
  left: -5px;
  font-size: 8rem;
  font-family: 'Montserrat', sans-serif;
  color: #93d500;
  line-height: 1;
}

blockquote > p {
    font-family: 'Montserrat', sans-serif;
    font-size: 32px !important;
    font-weight: 600 !important;
    font-stretch: normal !important;
    font-style: normal !important;
    line-height: normal !important;
    letter-spacing: -0.96px !important;
    text-align: left !important;
    color: #0f4f99 !important;
}

/* ---------- LAYOUT ----------- */
.pepp-container {
    margin: 0 60px;
}

/* SEARCH */

.search-container {
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
  margin-right: 20px;
}

.form-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 32px;
  background: #e9edf2;
  transition: all 0.3s;
}

.form-item > div {
    margin-bottom: 0 !important;
}

.form-item:focus-within {
    box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
    background: #fff;
}

.form-item input.form-control {
  flex: 1;
  padding: 12px 16px;
  border: none;
  background: transparent;
  font-size: 16px;
  outline: none;
}

.form-item input.form-control:focus {
    box-shadow: none;
}

.form-item input.form-control::placeholder {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #2f3031;
}

.search-submit-btn {
  padding: 12px 12px;
  background: #2075d6;
  color: #fff;
  border: none;
  border-radius: 24px;
  cursor: pointer;
  transition: background 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-right: 7px;
}

.search-submit-btn:hover {
  background: #0056b3;
}

.search-submit-btn i {
  font-size: 16px;
}

.search-container label {
    display: none;
}

#collapseSearchInner {
    justify-content: center;
    padding-left: 20px;
}

#collapseSearchInner > div {
    flex: 1;
}

#collapseSearchInner .form-item{
    background: #fff;
}

#collapseSearchInner .search-container {
    max-width: unset;
}

/* ---------- MENUS ----------- */
.top-bar-menu .nav-link,
.mega-menu .menu-level-0 > li > a {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.71;
    letter-spacing: 0.28px;
    color: #fff;
}

.main-menu .nav-link {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.72px;
    color: #0f4f99;
    padding: 0 22px;
}

.top-bar-menu li:first-child a,
.main-menu li:first-child a,
.mega-menu .menu-level-0 > .menu-item:first-child {
    padding-left: 0 !important;
}

.mega-menu {
    position: relative;
}

.mega-menu .menu-level-0 {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
}

.mega-menu .menu-level-0 > .menu-item {
    position: relative;
    padding: 8px 12px;
}

.mega-menu .mega-menu-content {
    position: absolute;
    top: 100%;
    left: 0;
    background: #7356d9;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    min-width: 415px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    z-index: 1000;
    padding-top: 32px;
}

.mega-menu .menu-item--expanded:hover {
    background: #7356d9;
}

.mega-menu .menu-item:hover > .mega-menu-content {
    opacity: 1;
    visibility: visible;
}

.mega-menu .menu-level-1 {
    flex-direction: column;
    list-style: none;
    padding: 32px 32px 16px 32px;
    border-top: 2px solid #ffffff66;
}

.mega-menu .menu-level-1 .menu-link__text {
    display: inline-block;
}

.mega-menu .menu-level-1 .menu-item {
    padding: 0;
}

.mega-menu .menu-level-1 a {
    text-decoration: none;
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: 0.36px;
    color: #fff;
    display: inline-block;
}

.mega-menu .menu-level-1 .menu-item {
    margin-bottom: 16px;
}

.mega-menu .menu-level-1 .menu-item:nth-child(3n+1) a span {
    padding-bottom: 3px;
    border-bottom: 2px solid #9acabc;
    margin-right: 10px;
}

.mega-menu .menu-level-1 .menu-item:nth-child(3n+2) a span{
    padding-bottom: 3px;
    border-bottom: 2px solid #faa958;
    margin-right: 10px;
}

.mega-menu .menu-level-1 .menu-item:nth-child(3n) a span{
    padding-bottom: 3px;
    border-bottom: 2px solid #5c79ff;
    margin-right: 10px;
}

.mega-menu-top {
    padding: 0 32px 32px 32px;
}

.mega-menu-top span {
    display: inline-block;
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: left;
    color: #cccccc;
}

.mega-menu-top img {
    max-width: 140px;
}

.mega-menu .menu-item--expanded > .menu-link {
  pointer-events: none; 
}

.mega-menu .menu-item--expanded {
  pointer-events: auto;
}

/* ---------- HEADER ----------- */
.header-wrapper {
    padding-top: 32px;
}

.navbar-brand img {
    width: 104px;
    height: 56px;
}

.main-nav-wrapper {
    padding: 40px 0 30px 0;
    border-bottom: 1px solid #c9cdd1;
}

.header-items {
    display: flex;
    justify-content: space-between;
    align-items: anchor-center;
}

.header-right {
    display: flex;
    align-items: anchor-center;
}

/* ---------- FOOTER ----------- */
.footer {
    margin-bottom: 5rem;
}

.footer-contact p {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    line-height: 1.33;
    color: #2f3031;
    margin-bottom: 3px;
}

.footer-contact > div {
    margin-bottom: 2rem;
}

.footer ul.nav > li > a,
.footer ul.nav > li .nav-title .nav-item {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 1;
    color: #0f4f99;
}

.footer ul.nav ul.menu {
    padding-left: 0;
}

.footer ul.nav ul.menu li {
    list-style: none;
}

.footer ul.nav ul.menu li a {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0.32px;
    color: #0f4f99;
}

footer.sub-footer {
    background-color: #fff;
}

.sub-footer-text {
    font-size: 12px;
    line-height: 2.67;
    letter-spacing: 0.24px;
    color: #2f3031;
}

.sub-footer-logo img {
    max-width: 175px;
}

.footer ul.nav .nav-title svg { 
    display: none;
}

.footer ul.nav .nav-title .nav-item {
    border: 0;
    background: transparent;
    padding: 0.5rem;
}

#accordionFooter .accordion-button:not(.collapsed),
#accordionFooter .accordion-button {
    border: 0;
    border-bottom: 1px solid #2075d6;
    background-color: #fff;
}

#accordionFooter .accordion-body .nav {
    flex-direction: column;
}

.sm-icon .icon-bg {
    color: #e9f4ff;
}

.sm-icon .icon-brand {
    color: #0f4f99;
}

.sm-icon svg.fa-youtube {
    margin-left: -5px;
}

/* ---------- HOME ----------- */
.section-text {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    line-height: 1.33;
    color: #2f3031;
    margin-bottom: 3rem;
    display: block;
}

.section-link {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.33;
    letter-spacing: 0.36px;
    color: #0f4f99;
}

.section-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.33;
    color: #0f4f99;
    margin-bottom: 2rem;
}

.home-section-title {
    font-family: "Playfair Display", serif;
    font-size: min(72px, 5vw);
    font-weight: 600;
    line-height: 1.11;
    letter-spacing: -2.16px;
    color: #0f4f99;
    margin-bottom: 4rem;
}

.home-header {
    padding-top: 230px;
    margin-bottom: 210px;
}

h1.home-title {
    font-size: min(96px, 6vw);
    font-weight: 600;
    line-height: 1;
    letter-spacing: -3.12px;
    color: #0f4f99;
}

.inner-section-wrapper {
    padding: 60px 50px;
    border-radius: 24px;
}

.home-cards {
    margin-bottom: 5rem;
}

.home-cards .card {
    padding: 40px 32px;
    border-left: 16px solid;
    border-radius: 24px;
}

.blue-buttress {
    background-size: cover;
    background-image: url("/themes/custom/pepp_2025/images/bg/ic-graphic-frame.webp");
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

.bg-wrapper {
    background-size: contain;
    background-image: url("/themes/custom/pepp_2025/images/home/Home-Hero-Lockup-2.png");
    background-position: top right;
    background-repeat: no-repeat;
}

.green-bg-wrapper {
    background-size: cover;
    background-image: url("/themes/custom/pepp_2025/images/bg/vector.webp");
    background-position: top right;
    background-repeat: no-repeat;
}

.home-retirement .ad-wrapper {
    padding-bottom: 0;
}

.home-retirement .ad-wrapper .home-calc-bg {
    background-size: contain;
    background-image: url("/themes/custom/pepp_2025/images/home/retirement-calc-couple.webp");
    background-position: bottom right;
    background-repeat: no-repeat;
    overflow: hidden;
}

.home-retirement .ad-wrapper .home-calc-bg img { 
    transform-origin: bottom;
    margin-top: 25px;
    transform: translateY(75px) scale(0.9);
}

#main > div > main {
    padding: 0;
}

.home-cards #cardContainer > div:nth-child(3n+1) .card {
    border-color: #3dc9c9;
}

.home-cards #cardContainer > div:nth-child(3n+2) .card {
    border-color: #ff9a4d;
}

.home-cards #cardContainer > div:nth-child(3n) .card {
    border-color: #0098c8;
}

.home-cards .card .card-title {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.19;
    color: #0f4f99;
    margin-bottom: 2rem;
}

.home-cards .card .card-text {
    font-size: 18px;
    line-height: 1.33;
    color: #2f3031;
    margin-bottom: 4rem;
}

.home-cards .card a {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.33;
    letter-spacing: 0.36px;
    color: #0f4f99;
}

.home-cards .card-footer {
    text-align: right;
    border: 0;
    background-color: inherit;
}

.home-section-header {
    font-size: 72px;
    font-weight: 600;
    line-height: 1.11;
    letter-spacing: -2.16px;
    color: #0f4f99;
}

.node--home section {
    margin-bottom: 2rem;
}

.member-update-outer {
    background: #ddff91;
    border: 1px solid #ddff91;
    border-radius: 24px;
}

.update-wrapper {
    padding: 38px 0;
    border-bottom: 1px solid #2075d6;
}

.update-wrapper:last-child {
    border-bottom: 0;
}

.update-wrapper span {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
}


.featured-insight {
    display: flex;
    flex-direction: column;
}

.featured-insight img {
    border-radius: 24px;
    margin-bottom: 32px;
}

.home--insight-title {
    font-size: 32px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.19;
    letter-spacing: normal;
    color: #0f4f99;
    margin-bottom: 8px;
}

.home--insight-date {
    font-size: 14px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.71;
    letter-spacing: 0.28px;
    color: #6e7073;
}

.home--insight-img {
    flex-shrink: 0;
    max-width: 164px;
    height: 100%;
    overflow: hidden;
    border-radius: 24px;
}

.home--insight-details {
    padding-left: 20px;
}

.insight-list {
    display: flex;
    flex-direction: row;
    padding-bottom: 39px;
    border-bottom: 1px solid #2075d6;
}

.insight-list:last-child {
    border: 0;
}

.insight-list:not(:first-child) {
    margin-top: 40px;
}

.insight-list .home--insight-title {
    font-size: 24px;
}

.home--ac-link {
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: 0.4px;
    color: #0f4f99;
    padding: 16px;
    background: #f5faff;
    border-radius: 16px;
    margin-bottom: 16px;
    align-items: anchor-center;
}

.home--ac-link:hover {
    color: #fff;
    background: #2075d6;
}

.node--toc-item a {
    justify-content: space-between;
    align-items: anchor-center;
}

.home--ac-link svg,
.node--toc-item a svg {
    opacity: 0;
    /* transition: opacity 0.2s ease; */
}

.home--ac-link:hover svg,
.node--toc-item a:hover svg {
    opacity: 1;
}

.ad-wrapper {
    background: #ffd8ba;
    border-radius: 24px;
}

.home-team .team-grid,
.node--learning-team .team-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 160px));
    gap: 48px;
    justify-content: center;
}

.home-team .team-grid .grid-item,
.node--learning-team .team-grid .grid-item,
.team-item {
    width: 100%;
    aspect-ratio: 1 / 1;
    position: relative;
    border-radius: 24px;
    overflow: hidden;
}

.home-team .team-grid .grid-item img,
.node--learning-team .team-grid .grid-item img,
.team-item img {
    width: 100%;
} 

.team-item {
    max-width: 160px;
}

/* .home-team .team-grid .grid-item,
.node--learning-team .team-grid .grid-item {
    border-radius: 32px;
    text-align: center;
    overflow-x: clip;
    max-width: 160px;
} */

/* .home-team .team-grid .grid-item img,
.node--learning-team .team-grid .grid-item img {
    transform: scale(1.1);
    transform-origin: bottom;
    border-radius: 0 0 32px 15px;
} */

/* .home-team .team-grid,
.node--learning-team .team-grid  {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 160px));
    gap: 48px;
    justify-content: center;
}

.home-team .team-grid .grid-item,
.node--learning-team .team-grid .grid-item {
    width: 100%;
    aspect-ratio: 1 / 1;
    position: relative;
    border-radius: 32px;
    overflow: hidden;
}

.home-team .team-grid .grid-item img,
.node--learning-team .team-grid .grid-item img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; 
    transform: scale(1.1);
    transform-origin: bottom;
    border-radius: 0 0 32px 15px;
} */

.fund-control-wrapper {
    padding-right: 50px;
}

.fund-dropdown {
    margin-bottom: 16px;
}

.fund-select__control   .fund-select__value-container {
    padding: 18px 16px;
}

.fund-select__value-container .fund-select__single-value {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: 0.36px;
    text-align: left;
    color: #0f4f99;
}

.fund-select__indicator-separator,
.fund-select__clear-indicator {
    display: none;
}

.fund-select__indicators .fund-select__indicator {
    color: #0f4f99;
}

.home--arlo-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}

#pepp-arlo-home .arlo-item {
    padding: 32px;
    border-radius: 24px;
    border: 1px solid #2075d6;
    background: #fff;
}

#pepp-arlo-home .arlo-item span {
    display: inline-block;
}

#pepp-arlo-home .arlo-item .event-banner {
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: 0.4px;
    color: #71a300;
    margin-bottom: 8px;
}

#pepp-arlo-home .arlo-item .event-name {
    font-size: 24px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.08;
    letter-spacing: normal;
    color: #0f4f99;
    margin-bottom: 16px;
}

#pepp-arlo-home .arlo-item .event-date,
#pepp-arlo-home .arlo-item .event-location {
    font-size: 14px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.29;
    letter-spacing: normal;
    color: #404040;
    margin-bottom: 8px;
}

#pepp-arlo-home .arlo-item .event-title {
    font-size: 40px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: -1.2px;
    color: #0f4f99;
    margin-bottom: 24px;
}

#pepp-arlo-home .arlo-item .event-callout {
    font-size: 20px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 2;
    letter-spacing: 0.4px;
    color: #0f4f99;
    display: inline-block;
    padding: 5px 16px;
    border: 1px transparent;
    border-radius: 20px;
    background: #e0efff;
    margin-bottom: 10px;
}

#pepp-arlo-home .arlo-item .event-for {
    font-size: 14px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.71;
    letter-spacing: 0.28px;
    text-align: left;
    color: #6e7073;
}

#pepp-arlo-home .arlo-item .event-detail {
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
    margin-bottom: 40px;
}

.home-cards #cardContainer,
#pepp-arlo-home #eventCC {
    -ms-overflow-style: none;
    scrollbar-width: none;
    margin-bottom: 24px;
    overflow: auto;
    /* overflow-x: auto;
    -webkit-overflow-scrolling: touch; 
    scroll-snap-type: x mandatory;  */
}

.home-cards #cardContainer > *,
#eventCC > * {
    padding-right: calc(var(--bs-gutter-x) * .5);
    padding-left: calc(var(--bs-gutter-x) * .5);
}

.uv-chart-legend {
    margin-left: 35px;
}

.uv-chart-legend .card-title {
    position: relative;
    padding-top: 12px;
    font-family: 'Roboto Flex', sans-serif !important;
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: 0.36px;
    color: #2f3031;
}

.uv-chart-legend .card-title::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 15%;
    height: 4px;
}

.uv-chart-legend .legend-0 .card-title::before {
    background: #2075d6
}

.uv-chart-legend .legend-1 .card-title::before {
    background: #71a300
}

.uv-chart-legend .legend-2 .card-title::before {
    background: #fd6f01
}

.home-full-ad .ad-wrapper {
    margin-top: 50px;
}

.home-full-ad .ad-wrapper img {
    transform: scale(1.1);
    transform-origin: bottom;
    object-fit: contain;
}

/* ---------- BASIC PAGE ----------- */
ol.breadcrumb {
    display: inline-flex;
    align-items: anchor-center;
    padding: 8px 16px;
    border: 1px solid #2075d6;
    border-radius: 32px;
    margin: 24px 0 72px 0;
}

ol.breadcrumb .breadcrumb-item ,
ol.breadcrumb .breadcrumb-item a,
ol.breadcrumb .breadcrumb-item span {
    font-family: 'Roboto Flex', sans-serif;
    /* font-variation-settings: 'wdth' 130; */
    font-weight: 600;
    font-stretch: 130%;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    font-size: 14px;
    color: #0f4f99;
    text-decoration: none;
    padding-left: 0;
}

ol.breadcrumb .breadcrumb-item span.breadcrumb-separator {
    padding: 0 8px 0 6px;
}

ol.breadcrumb > * {
    margin-bottom: 0 !important;
}

.breadcrumb-item+.breadcrumb-item::before {
    content: none;
}

.node--basic-menu-title {
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: #71a300;
}

.left-navigation ul.nav {
    flex-direction: column;
    padding: 0;
}

.left-navigation ul.nav > li {
    margin-top: 24px;
    /* border-left: 4px solid transparent; */
}

.left-navigation ul.nav a {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.4px;
    color: #2075d6;
    text-decoration: none;
    padding: 4px 0;
}

.left-navigation ul.nav > li.menu-item--active-trail {
    padding: 16px;
    background: #e9f4ff;
    border-left: 8px solid #2075d6;
    border-radius: 8px;
    
}

.left-navigation ul.nav li.menu-item--active-trail a.is-active {
    color: #0f4f99;
    font-weight: 600;
    padding: 16px 0;
}

@media (max-width: 1199.98px) {
    .left-navigation nav {
        display: none;
    }

    #select-nav {
        display: block;
        margin-bottom: 35px;
    }
}

@media (min-width: 1200px) {
    .left-navigation nav {
        display: block;
    }

    #select-nav {
        display: none;
    }
}

.page--basic-page p,
.page--basic-page ul li,
.page--basic-page ol li,
.content ol li,
.content ul li {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    letter-spacing: normal;
    line-height: 1.33;
    color: #2f3031;
    /* list-style: none; */
    margin-bottom: 8px;
}

.page--basic-page p {
    margin-bottom: 32px;
}

.page--basic-page a {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: 0.4px;
    color: #2075d6;
    text-decoration: underline;
}

.page--basic-page ul {
    margin-bottom: 32px;
}

.page--basic-page ul.menu {
    margin-bottom: 0;
}

.page--basic-page img {
    max-width: 100%;
    height: auto;
}

.in-pdf {
    color: #fd6f01;
}

.right-rail-box {
    padding: 40px 32px;
    border-radius: 24px;
    margin-bottom: 32px;
}

.related-links-box {
    background: #ddff91;
}

.related-files-box {
    background: #e9f4ff;
}

.related-files-box .bp-rel-file,
.related-links-box .related-links-links a {
    display: flex;
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.1;
    letter-spacing: 0.4px;
    color: #2075d6;
    text-decoration: none;
    margin-bottom: 10px;
}

.video-container {
    background: #f5f7fa;
}

.video-container .lb-video-title {
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
}

.right-rail-box .bp-box-title {
    font-size: 32px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.13;
    letter-spacing: -0.96px;
    color: #0f4f99;
}

.right-rail-box .bp-box-text,
.field--name-field-bp-link-desc,
.field--name-field-bp-file-desc {
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
    margin-bottom: 24px;
}

/* ---------- INSIGHTS ----------- */
.node--insight-title {
    margin-bottom: 16px;
}

.node--insight-date {
    margin-bottom: 32px;
}

.node--insight-hero {
    margin-bottom: 114px;
    max-height: 750px;
    overflow: hidden;
    border: 1px transparent;
    border-radius: 24px;
}

/* ---------- TOC ----------- */
.node--toc-breadcrumb ol.breadcrumb{
    margin: 48px 0 66px 0;
}

.node--toc-header,
.node--learning-header {
    height: 520px;
    text-align: center;
    justify-content: end;
    margin-bottom: 110px;
    /* background-color: #ffd8ba; */
    border-radius: 24px;
    background-size: contain;
    /* background-image: url("/themes/custom/pepp_2025/images/bg/ic-graphic-frame.webp"); */
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

.node--toc-header .toc-header-img,
.node--learning-header .learning-header-img {
    border-radius: 24px;
}

.node--toc-content {
    margin-bottom: 110px;
    font-size: 32px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.5;
    letter-spacing: normal;
    color: #2f3031;
}

.node--toc-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
}

.node--toc-grid .node--toc-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    border-radius: 24px;
    padding: 40px;
    border: 1px solid transparent;
}

.node--toc-grid .node--toc-item:hover {
    border-color: #2075d6;
}

.node--toc-grid .node--toc-item:nth-child(4n + 1) {
    background-color: #f7ffe5;
}

.node--toc-grid .node--toc-item:nth-child(4n + 2) {
    background-color: #edfbff;
}

.node--toc-grid .node--toc-item:nth-child(4n + 3) {
    background-color: #f5faff;
}

.node--toc-grid .node--toc-item:nth-child(4n) {
    background-color: #fff7f0;
}

.node--toc-grid .node--toc-item a {
    display: flex;
    font-size: 28px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.17;
    letter-spacing: -0.84px;
    margin-bottom: 24px;
}

.node--toc-item-text {
    font-size: 18px;
    font-stretch: 130%;
    line-height: 1.33;
}

.node--toc-grid .node--toc-item a span {
    margin: auto 0 auto 0;
}

/* ---------- INSIGHTS ----------- */
.node--insight-landing .node--insight-title {
    margin-top: 64px;
    margin-bottom: 49px;
}

.node--insights-landing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.node--insights-landing-grid .grid-item {
    padding: 32px;
    background: #f5faff;
    border-radius: 24px;
}

.node--insights-landing-grid .grid-item a {
    font-size: 32px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.19;
    letter-spacing: normal;
    text-align: left;
    color: #0f4f99;
    margin-bottom: 8px;
}

.node--insights-landing-grid .grid-item img {
    border-radius: 24px;
    margin-bottom: 32px;
}

.node--insights-landing-grid .grid-item .insight-category,
.node--insight-category,
.node--insights-featured .insight-category,
.home--insight-category {
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    text-align: left;
    color: #71a300;
    margin-bottom: 8px;
}

.node--insights-landing-grid .grid-item .insight-date,
.node--insights-featured .insight-date {
  font-size: 14px;
  font-weight: 500;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.71;
  letter-spacing: 0.28px;
  text-align: left;
  color: #6e7073;
}

.node--insights-featured .insight-date {
    color: #c9cdd1;
}

.node--insights-featured-wrapper {
    margin-bottom: 80px;
}

.node--insights-featured {
    padding: 64px;
    border-radius: 24px;
    background: #0f4f99;
    height: 100%;
}

.node--insights-featured a {
    font-size: 80px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.1;
    letter-spacing: -2.4px;
    color: #fff;
    margin-bottom: 24px;
    display: block;
}

.node--insights-featured-img {
    overflow: hidden;
}

.node--insights-featured-img img {
    border-radius: 24px;
}

.node--insights-featured .insight-date {
    margin-bottom: 32px;
}

.node--insights-featured .insight-excerpt {
    font-size: 24px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #fff;
    margin-bottom: 84px;
}

.node--insights-featured .insight-cta {
    font-size: 18px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: 0.36px;
    color: #fff;
}

.node--insights-featured .insight-cta svg { 
    margin-left: 10px;
}

/* ACCOUNT CHANGES */
.page-ac-wrapper,
.page-insights-wrapper {
    background-size: cover;
    background-image: url("/themes/custom/pepp_2025/images/bg/vector.webp");
    background-position: top right;
    background-repeat: no-repeat;
}

.node--account-changes h3 {
    margin-bottom: 24px;
    padding-left: 16px;
}

.node--account-changes section {
    padding: 48px 32px 0 32px;
    margin-bottom: 48px;
    border: 1px solid #2075d6;
    border-radius: 24px;
    background: #fff;
}

.node--account-changes .ac-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding-bottom: 1px;
    margin-bottom: -2px;
    overflow: hidden;
}

.node--account-changes .ac-grid .grid-item { 
    border-bottom: 1px solid #2075d6;
    padding: 40px 16px 39px 16px;
}

.node--account-changes .ac-wrapper a {
    align-items: anchor-center;
    font-size: 24px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #0f4f99;
    margin-bottom: 24px;
}

.node--account-changes .ac-wrapper a:hover {
    color: #2075d6;
}

.node--account-changes .ac-wrapper a svg {
    transition: transform 0.25s;
}

.node--account-changes .ac-wrapper a:hover svg {
    transform: rotate(45deg);
    transition: transform 0.25s;
}

.node--account-changes .ac-wrapper span {
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
}

.node--account-change {
    margin-bottom: 50px;
}

.node--account-change .inner-wrapper {
    padding: 48px;
}

.node--account-change .row > div {
    margin-bottom: 24px;
}

.node--account-change .recommended {
    margin-bottom: 32px;
}

.node--account-change .ac-sub-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: left;
    color: #0f4f99;
    margin-bottom: 16px;
}

.node--account-change .ac-details-section {
    margin-bottom: 2rem;
}

.node--account-change .ac-overview {
    margin-bottom: 48px;
}

.node--account-change .ac-overview p,
.node--account-change .ac-options p,
.node--account-change .ac-details p,
.node--account-change .ac-details ol li,
.node--account-change .ac-details ul li {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: normal;
    font-stretch: 130%;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
}

.node--account-change a,
.node--account-change .ac-details a {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: 500;
    font-stretch: 130%;
    font-style: normal;
    line-height: 1.78;
    letter-spacing: 0.36px;
    text-align: left;
}

.node--account-change a .field__item,
.node--account-change .ac-details a .field__item {
    text-decoration: underline;
}

.node--account-change .ac-options.recommended p {
    margin-bottom: 32px;
}

.node--account-change div.option-wrapper:not(:last-child) {
    margin-bottom: 64px;
}

.node--account-change .option-btn a {
    display: flex;
    color: #2075d6;
    background-color: #fff;
    border: 1px solid #0f4f99;
    border-radius: 32px;
    padding: 12px 24px;
    justify-content: center;
}

.node--account-change .ac-options .icon svg {
    color: #0f4f99;
}

/* .node--account-change .ac-options .icon {
    margin-right: 16px;
} */

.node--account-change .ac-options .option-grid {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-areas:
    "option-icon option-title"
    ".    option-detail";
    gap: 16px 16px;
    align-items: center;
}

.node--account-change .ac-options .option-grid .ac-sub-title {
    margin-bottom: 0;
}

.node--account-change .ac-options .option-grid .option-detail {
    grid-area: 2 / 2;
}

/* FUND */
.node--perf-listing .node--fund-summary {
    font-size: 24px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: -0.48px;
    color: #2f3031;
    margin-bottom: 64px;
}

.node--perf-listing .fundlist-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    margin-bottom: 80px;
}

.node--perf-listing .fundlist-grid .card-body > div:not(:last-child) {
    margin-bottom: 24px;
}

.node--perf-listing .fundlist-grid .fund-title,
.node--perf-listing .fundlist-grid .fund-icon {
    font-family: "Playfair Display", serif;
    font-size: 32px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.13;
    letter-spacing: -0.96px;
    text-align: left;
    color: #0f4f99;
}

.node--perf-listing .fundlist-grid .fund-value {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
}

.node--perf-listing .fundlist-grid .fund-value-icon {
    margin-right: 16px;
}

.node--perf-listing .fundlist-grid .fund-value-icon svg {
    color: #0f4f99;
}

.node--perf-listing .fundlist-grid .card {
    border: 1px solid #f7ffe5;
    border-radius: 24px;
}

.node--perf-listing .fundlist-grid .card-body {
    padding: 32px;
}

.node--perf-listing .fundlist-grid .card:hover {
    border: 1px solid #2075d6;
}

.node--perf-listing .fundlist-grid .card:hover .fund-title, 
.node--perf-listing .fundlist-grid .card:hover .fund-icon {
    color: #2075d6;
}

.node--perf-listing .fundlist-grid .fund-icon {
    display: none;
}

.node--perf-listing .fundlist-grid .card:hover .fund-icon {
    display: block;
}

/* INDIVIDUAL */
/* .node--fund ol.breadcrumb {
    margin-bottom: 64px;
} */

.node--fund .section-link {
    display: block;
    margin-bottom: 64px;
}

.node--fund .fund-info-btns {
    gap: 16px;
}

.node--fund .node--fund-overview {
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: #71a300;
    margin-bottom: 16px;
}

.node--fund .footnote {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 14px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    color: #6e7073;
}

.node--fund .fund-info-btn span {
    display: block;
    padding: 24px 40px;
    border: 1px solid #acaeb2;
    border-radius: 40px;
    font-size: min(18px, 3vw);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
}

.node--fund .fund-container {
    padding: 48px;
    border: 1px solid #2075d6;
    border-radius: 24px;
    margin-top: 32px;
}

.node--fund .fund-desc {
    font-size: min(24px, 4vw);
    margin-bottom: 80px;
}

.node--fund .fundtbl-text {
    font-size: min(18px, 3vw);
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2f3031;
    margin-bottom: 40px;
    display: block;
}

.node--fund .fund-docs p {
    margin-bottom: 40px;
}

.node--fund .fund-docs .doc-wrapper {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 40px;
}

.node--fund .fund-docs svg {
    font-size: min(20px, 3.5vw);
}

.node--fund .fund-docs a {
    font-family: 'Roboto Flex', sans-serif;
    /* font-size: 20px; */
    font-size: min(20px, 3.5vw);
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: 0.4px;
    text-align: left;
    text-decoration: underline;
    color: #2075d6;
}

/* MOBILE MENU */
.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    z-index: 998;
}

.overlay.active {
    opacity: 1;
    visibility: visible;
}

.side-menu {
    position: fixed;
    top: 0;
    left: -90vw;
    width: 90vw;
    height: 100%;
    background-color: #fff;
    transition: left 0.3s ease;
    z-index: 999;
    overflow-y: auto;
    overflow-x: hidden;
}

.side-menu.active {
    left: 0;
}

.mobile-logo {
    padding: 30px 24px;
    border-bottom: 1px solid #c9cdd1;
}

.main-menu-mobile ul {
    flex-direction: column;
}

.main-menu-mobile ul .nav-link {
    font-size: 16px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: -0.48px;
    color: #0f4f99;
    padding: 16px 24px;
    border-bottom: 1px solid #c9cdd1;
}

.mobile-menu-wrapper .top-bar-wrapper .mega-menu-content {
    position: fixed;
    top: 40px;
    left: 0;
    width: 90vw;
    box-sizing: border-box;
    /* max-width: 90vw;
    box-sizing: border-box; */
}

.mobile-menu-wrapper .header-ext {
    text-align: center;
    margin-bottom: 32px;
}

.mobile-menu-wrapper .header-ext a.button {
    width: 80%;
    justify-content: center;
}



/**
* Site Notice
*/
.update-banner {
    padding: 20px 0;
    text-align: center;
}

.update-banner--default,
.update-banner--notice {
    background: #d6f5ff;
}

.update-banner--warning {
    background: #fff7c9;
}

.update-banner--alert {
    background: #cc3a27;
}

.update-banner__text,
.update-banner__link {
    font-family: 'Roboto Flex', sans-serif;
    font-size: min(16px, 2vw);
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.5;
    letter-spacing: 0.32px;
}

.update-banner--default .update-banner__text,
.update-banner--notice .update-banner__text,
.update-banner--default .update-banner__link,
.update-banner--notice .update-banner__link {
    color: #0f4f99;
}

.update-banner--warning .update-banner__text,
.update-banner--warning .update-banner__link {
    color: #233c4b;
}

.update-banner--alert .update-banner__text,
.update-banner--alert .update-banner__link {
    color: #fff;
}

/* LEARNING EVENTS */
.node--learning-events section {
    margin-bottom: 32px;
}

a.page-anchor {
    display: flex;
    justify-content: space-between;
    align-items: anchor-center;
    padding: 16px;
    background: #f7fbff;
    margin-bottom: 16px;
    font-size: 20px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.6;
    letter-spacing: 0.4px;
    color: #0f4f99;
    border: 1px transparent;
    border-radius: 16px;
}

a.page-anchor:hover {
    background: #2075d6;
    color: #fff;
}

a.page-anchor svg {
    opacity: 0;
}

a.page-anchor:hover svg {
    opacity: 1;
}

.node--learning-header {
    margin-bottom: 100px;
}

.node--learning-content {
    margin-bottom: 100px;
}

.node--updates-archive .update-section {
    margin-bottom: 55px;
}

.node--updates-archive .update {
    max-width: 1100px;
    padding: 32px 110px 32px 40px;
    border: 1px solid;
    border-left: 12px solid;
    border-radius: 24px;
    margin-bottom: 32px;
}

.node--updates-archive .update time {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 14px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.71;
    letter-spacing: 0.28px;
    text-align: left;
    color: #6e7073;
    display: block;
    margin-bottom: 16px;
}

.node--updates-archive .update span {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    color: #2075d6;
    text-align: left;
    display: block;
}

.node--updates-archive .update a {
    font-family: 'Roboto Flex', sans-serif;
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: left;
    color: #0f4f99;
    display: inline-block;
    margin-top: 16px;
    text-decoration: underline !important;
}

.node--updates-archive .update.update--notice,
.node--updates-archive .update.update--default {
    border-color: #a5e6fa;
}

.node--updates-archive .update.update--warning {
    border-color: #ddff91;
}

.node--updates-archive .update.update--alert {
    border-color: #ff9a4d;
}

/* SEARCH */
#main .views-exposed-form {
    margin-top: 50px;
}

#main .search-container {
    margin: 0;
}

.view-search-results .view-header {
    margin: 30px 0;
}

.view-search-results .views-row {
    padding: 24px;
    border: 1px solid #2075d6;
    border-radius: 24px;
    margin-bottom: 20px;
}

.view-search-results .views-row .views-field-title a {
    font-size: 22px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 3.18;
    letter-spacing: -0.44px;
    text-align: left;
    color: #0f4f99;
}

@media (max-width: 1799.98px) {
    .main-menu .nav-link {
        font-size: 22px;
        padding: 0 18px;
    }
}

@media (max-width: 1719.98px) {
    .bg-wrapper {
        background-position: 0 200px;
    }
}

@media (max-width: 1599.98px) {
    .main-menu .nav-link {
        font-size: 21px;
        padding: 0 15px;
    }

    .home-header {
        padding-top: 125px;
        margin-bottom: 150px;
    }
    
    .home-retirement .ad-wrapper .home-calc-bg img {
        transform-origin: bottom;
        margin-top: 25px;
        transform: translateY(125px) translateX(-40px) scale(0.9);
    }

    .home-full-ad .ad-wrapper img {
        transform: none;
        border-radius: 0 0 24px 0;
    }

    .home-full-ad .ad-wrapper .inner-section-wrapper {
        padding: 20px 30px;
    }
}

@media (max-width: 1499.98px) {
    .main-menu .nav-link {
        font-size: 19px;
        padding: 0 15px;
    }
}
/* ==========================================================================
   XL Devices (Desktops, < 1400px)
   @media (max-width: 1399.98px)
   ========================================================================== */

@media (max-width: 1399.98px) {
    .pepp-container {
        margin: 0 40px;
    }

    .main-menu .nav-link {
        font-size: 19px;
        padding: 0 12px;
    }

    /* HOME */
    .home-header {
        padding-top: 125px;
    }

    .home-retirement .ad-wrapper .home-calc-bg img {
        transform: translateY(100px) scale(0.8);
    }

    /* TOC */
    .node--toc-header, .node--learning-header {
        height: 300px;
    }
}

@media (max-width: 1299.98px) {
    .main-menu .nav-link {
        font-size: 17px;
        padding: 0 10px;
    }
}



/* ==========================================================================
   Large Devices (Desktops, < 1200px)
   @media (max-width: 1199.98px)
   ========================================================================== */

@media (max-width: 1199.98px) {
    .pepp-container {
        margin: 0 20px;
    }

    .main-menu .nav-link {
        font-size: 16px;
        padding: 0 10px;
    }

    .inner-section-wrapper {
        padding: 45px 35px;
    }

    /* HOME */
    .home-cards .card .card-text {
        margin-bottom: 2rem;
    }

    .node--home button:disabled {
        opacity: 0.5;
    }

    /* #scrollLeft, #scrollRight,
    #eventScrollLeft, #eventScrollRight {
        background: transparent;
        border: 0;
    }

    #scrollLeft svg, #scrollRight svg,
    #eventScrollLeft svg, #eventScrollRight svg {
        color: #6e7073;
    }

    #scrollLeft, #eventScrollLeft {
        margin-right: 8px;
    } */

    .home-retirement .ad-wrapper .home-calc-bg {
        background-position: center;
    }

    #eventCC {
        margin-bottom: 24px;
    }

    .section-link-wrapper {
        margin-bottom: 48px;
    }

    .fund-control-wrapper {
        padding-right: 0;
    }

    .home-full-ad .ad-wrapper img {
        transform: none;
        border-radius: 0 0 24px 24px;
    }
}

@media (max-width: 1099.98px) {
    .main-menu .nav-link {
        font-size: 15px;
        padding: 0 10px;
    }
}

/* ==========================================================================
   Medium Devices (Tablets, < 992px)
   @media (max-width: 991.98px)
   ========================================================================== */

@media (max-width: 991.98px) {
    /* General */
    .pepp-container {
        margin: 0 16px;
    }
    
    .navbar-brand {
        padding: 0;
        padding-left: 14px;
    }

    .inner-section-wrapper {
        padding: 32px 25px;
    }

    /* HEADER */
    .header-wrapper { 
        padding-bottom: 24px;
        border-bottom: 1px solid #c9cdd1;
    }

    #header > .top-bar-wrapper {
        position: relative;
    }

    #header > .top-bar-wrapper .menu-item--expanded {
        position: static;
    }

    #header > .top-bar-wrapper .mega-menu-content {
        position: absolute;
        left: -16px;
    }
    
    .mega-menu .mega-menu-content { 
        min-width: unset;
    }

    /* FOOTER */
    .footer ul.nav .nav-title svg {
        color: #2075d6;
    }

    .footer ul.nav ul.menu {
        display: block;
    }

    .footer ul.nav > li > a {
        font-size: 18px;
    }

    .footer .accordion-body ul.nav > li > a {
        font-size: 16px;
    }

    /* Breadcrumb */
    .node--toc-breadcrumb ol.breadcrumb {
        margin: 40px 0;
        padding: 8px 16px;
    }

    /* TOC */
    .node--toc-title h1 {
        font-size: 40px;
        margin-bottom: 44px;
    }

    .node--toc-header {
        height: 162px;
        margin-bottom: 64px;
    }

    .node--toc-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 32px;
    }

    .node--toc-grid .node--toc-item a {
        font-size: 32px;
    }

    .node--toc-item-text {
        font-size: 20px;
    }

    .node--toc-content {
        font-size: 32px;
        margin-bottom: 64px;
    }

    /* INSIGHTS */
    .node--insights-landing-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .node--insights-featured-img {
        margin-top: 24px;
    }

    .node--insights-featured .insight-excerpt {
        margin-bottom: 48px;
    }

    /* HOME */
    .home-header {
        padding-top: 32px;
        margin-bottom: 250px;
    }

    .bg-wrapper {
        background-position: 0 150px;
    }

    .main-menu .nav-link {
        font-size: 18px;
        padding: 0 10px;
    }

    .home-updates .row > div:first-child,
    .home-retirement .row > div:first-child {
        margin-bottom: 24px;
    }

    .home--ac-link:last-child {
        margin-bottom: 48px;
    }

    .home-team .team-grid,
    .node--learning-team .team-grid  {
        gap: 20px;
    }

    .home-updates .featured-insight {
        margin-bottom: 48px;
    }

    .home-retirement .ad-wrapper .home-calc-bg {
        background-position: center;
    }

    .home-retirement .ad-wrapper .home-calc-bg img {
        transform: translateY(75px) translateX(-15px) scale(0.8);
    }

    .home-section-title {
        font-size: 48px;
    }

    .uv-chart-legend {
        flex-direction: column;
    }

    .timeline-label {
        font-size: 12px !important;
        white-space: unset !important;
        text-align: center !important;
    }

    .node--account-changes .ac-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .node--fund .fund-info-btns {
        flex-direction: column;
    }
}

/* ==========================================================================
   Small Devices (Landscape Phones, < 768px)
   @media (max-width: 767.98px)
   ========================================================================== */

@media (max-width: 767.98px) {
    /* GENERIC */
    h1 {
        font-size: 40px;
    }

    h3 {
        font-size: 24px;
        margin-bottom: 24px;
    }

    .node--account-changes h3 {
        font-size: 30px;
    }

    /* FOOTER */
    .footer ul.nav .nav-title {
        padding: 9px 16px;
        border-bottom: 1px solid #2075d6;
        align-items: anchor-center;
    }
    
    .footer ul.nav .nav-title svg {
        transition: transform 0.3s ease;
        display: block;
    }

    .footer ul.nav .nav-title svg.active {
        transform: rotate(180deg);
    }

    .footer ul.nav ul.menu {
        display: none;
    }

    .footer ul.nav ul.menu.active {
        display: block;
    }

    .sub-footer > div > div {
        flex-direction: column;
    }

    .accordion-body .nav a {
        font-family: 'Roboto Flex', sans-serif;
        font-size: 16px;
        font-weight: 500;
        font-stretch: normal;
        font-style: normal;
        line-height: 2;
        letter-spacing: 0.32px;
        color: #0f4f99;
    }

    .accordion-body .nav .nav-item {
        margin-bottom: 8px;
    }

    .accordion-body .nav .nav-item:last-child {
        margin-bottom: 32px;
    }

    .accordion-collapse

    /* BASIC PAGE */
    .left-navigation ul.nav a {
        font-size: 16px;
    }

    .page--basic-page p, .page--basic-page ul li, .page--basic-page ol li {
        font-size: 16px;
    }

    .page--basic-page a {
        font-size: 16px;
    }

    ol.breadcrumb {
        padding: 8px 16px;
        margin-bottom: 32px;
    }

    ol.breadcrumb .breadcrumb-item ,
    ol.breadcrumb .breadcrumb-item a,
    ol.breadcrumb .breadcrumb-item span {
        font-size: 12px;
    }

    /* INSIGHTS */
    .node--insights-landing-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .node--insights-featured a {
        font-size: 40px;
    }

    .node--insights-landing-grid .grid-item a {
        font-size: 24px;
    }

    /* HOME */
    .home-retirement .ad-wrapper .home-calc-bg img {
        transform: translateY(75px) translateX(-15px) scale(0.8);
    }

    .home-title {
        font-size: 45px;
    }

    h1.home-title {
        font-size: 48px;
    }

    .bg-wrapper {
        background-position: 0 100px;
    }

    .node--learing-header {
        margin-bottom: 25px;
    }

    .node--account-changes .ac-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .node--account-changes .ac-wrapper a {
        font-size: 20px;
    }

    /* RETIREMENT */
    .field--name-field-ri-supporting-msgs {
        flex-direction: column;
        row-gap: 30px;
    }

    .ret-inner-section-wrapper {
        padding: 24px;
        flex-direction: column;
    }

    .node--fund .fund-container {
        padding: 24px;
    }
    
    .ret-overlay-image {
        left: 50px !important;
        max-width: 200px !important;
    }

    .node--perf-listing .fundlist-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    #unit-value-fundcht .pill-btn { 
        padding: 5px 12px;
        font-size: 10px;
    }

    .nav-tabs > .nav-item > .nav-link {
        font-size: 14px;
        padding: 16px;
    }
}

@media (max-width: 650px) {
    .mega-menu .mega-menu-content {
        position: fixed;
        top: 40px;
        left: 0;
        width: 95vw;
        /* max-width: 95vw;
        box-sizing: border-box; */
    }
}

/* ==========================================================================
   Extra Small Devices (Portrait Phones, < 576px)
   @media (max-width: 575.98px)
   ========================================================================== */

@media (max-width: 575.98px) {
    /* HEADER */
    .navbar-brand img {
        width: 74px;
        height: 40px;
    }

    /* TOC */
    .node--toc-content {
        font-size: 24px;
    }

    /* HOME */
    .home-retirement .ad-wrapper .home-calc-bg {
        background-position: right;
    }

    .home-retirement .ad-wrapper .home-calc-bg img {
        transform: translateY(100px) translateX(-50px) scale(0.8);
    }

    h1.home-title {
        font-size: 40px;
    }

    /* HOME */
    .home-header {
        padding-top: 32px;
        margin-bottom: 150px;
    }

    .bg-wrapper {
        background-position: 0 150px;
    }

    .home-cards .card .card-title {
        font-size: 24px;
    }

    .insight-list .home--insight-title {
        font-size: 20px;
    }

    .node--perf-listing .fundlist-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .node--learning-header {
        margin-bottom: 25px;
    }

    #unit-value-fundcht .pill-btn {
        padding: 5px 6px;
    }
}

/* ==========================================================================
   Custom (Portrait Phones, < 400px)
   @media (max-width: 399.98px)
   ========================================================================== */

@media (max-width: 399.98px) {
    .bg-wrapper {
        background-position: 0 200px;
    }

    .home-header {
        margin-bottom: 100px;
    }
}