/* ================================================================
     OVERVIEW PAGE (EARLY CAREER & INTERNSHIPS) - STYLES
     ================================================================
     This contains the CSS for the Overview page.
     Last update: 2026-04-21 19:34
     
     IMPORTANT: This file requires careers-variables.css (global tokens)
     Sitecore Media Library Path: TBD
     
     Note: !important declarations are intentional to override site CSS
     ================================================================ */

/* Import global design tokens */
@import url('/v2/careers/-/media/0D5C608917CC413498E8ABCDEFBED589');

/* ================================================================
     ACCESSIBILITY IMPROVEMENTS
     ================================================================ */
/* Respect user's motion preferences */
@media (prefers-reduced-motion: reduce) {

     *,
     *::before,
     *::after {
          animation-duration: 0.01ms !important;
          animation-iteration-count: 1 !important;
          transition-duration: 0.01ms !important;
          scroll-behavior: auto !important;
     }
}

/* Enhanced focus indicators for keyboard navigation ONLY */
.overview-page-v2 a:focus-visible,
.overview-page-v2 button:focus-visible,
.overview-page-v2 [role="button"]:focus-visible {
     outline: 1px solid #1262B2 !important;
     outline-offset: 1px !important;
     box-shadow: 0 0 0 3px rgba(18, 98, 178, 0.2) !important;
}

/* For main navigation items, apply focus to parent container */
.overview-page-v2 .secondary-nav-button-v2:focus-within {
    outline: 1px solid #1262B2 !important;
    outline-offset: 1px !important;
    box-shadow: 0 0 0 3px rgba(18, 98, 178, 0.2) !important;
}

/* Remove outline from main nav link only (not submenu) when parent has focus-within */
.overview-page-v2 .secondary-nav-button-v2:focus-within .nav-link-wrapper a:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

/* Ensure NO outline for mouse clicks */
.overview-page-v2 a:focus:not(:focus-visible),
.overview-page-v2 button:focus:not(:focus-visible),
.overview-page-v2 [role="button"]:focus:not(:focus-visible) {
     outline: none !important;
     box-shadow: none !important;
}

/* High contrast mode support */
@media (prefers-contrast: high) {

     .overview-page-v2 .hero-description,
     .overview-page-v2 .program-card-description {
          font-weight: 500;
     }
}

* {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
}

/* Override tagbox list padding */
.tag-box-content ul li,
.tag-box-content ol li {
     padding: 0;
}

.container-fluid.overview-page-v2 .yellow-nav-links li {
     padding: 0;
     margin: 0;
}

body {
     font-family: var(--font-family-sans);
     line-height: var(--line-height-base);
     color: var(--color-neutral-body-text);
     background-color: var(--color-core-white);
}

.overview-page-v2 {
     padding-left: 0 !important;
     padding-right: 0 !important;
}

/* ================================================================
    SECTION 1: HERO SECTION (Teal background with chevron)
    ================================================================ */
.container-fluid.overview-page-v2 .header-image-chevron {
     display: flex;
     width: 100vw;
     min-width: 991px;
     height: 522px !important;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     background: var(--color-core-teal);
     overflow: hidden;
     margin-left: calc(-50vw + 50%);
     margin-right: calc(-50vw + 50%);
}

.container-fluid.overview-page-v2 .hero-content-container {
     display: inline-grid;
     max-width: var(--layout-max-width);
     height: 100%;
     padding: 0 var(--layout-content-padding);
     column-gap: var(--spacing-3xl);
     align-self: stretch;
     grid-template-rows: repeat(1, fit-content(100%));
     grid-template-columns: repeat(12, minmax(0, 1fr));
     margin: 0 auto;
     width: 100%;
     position: relative;
}

.container-fluid.overview-page-v2 .content-container {
     display: flex;
     min-height: 350px;
     padding: var(--spacing-4xl) 0;
     flex-direction: column;
     justify-content: center;
     align-items: flex-start;
     grid-row: 1 / span 1;
     grid-column: 1 / span 7;
     justify-self: stretch;
}

.container-fluid.overview-page-v2 .header-container {
     display: flex;
     padding-bottom: var(--spacing-2xl);
     flex-direction: column;
     align-items: flex-start;
     gap: var(--spacing-lg);
     align-self: stretch;
}

.container-fluid.overview-page-v2 .title-container {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     align-self: stretch;
}

/* Breadcrumb link */
.container-fluid.overview-page-v2 .breadcrumb-link {
     display: flex;
     align-items: center;
     gap: 5px;
     color: var(--color-core-white);
     font-family: var(--font-family-sans);
     font-size: 14px;
     font-weight: 400;
     line-height: 20px;
     text-decoration: underline;
     text-decoration-style: solid;
     text-decoration-skip-ink: none;
     text-underline-offset: auto;
     text-underline-position: from-font;
     transition: opacity var(--transition-normal);
}

.container-fluid.overview-page-v2 .breadcrumb-link:hover {
     opacity: 0.8;
     text-decoration: underline;
}

.container-fluid.overview-page-v2 .hero-header {
     align-self: stretch;
     color: var(--color-core-white);
     font-family: var(--font-family-serif);
     font-size: var(--font-size-display);
     font-weight: 700;
     line-height: var(--line-height-display);
     text-decoration: none;
     display: block;
}

.container-fluid.overview-page-v2 .hero-description {
     color: var(--color-core-white);
     font-family: var(--font-family-sans);
     font-size: var(--font-size-body-lg);
     font-weight: 400;
     line-height: var(--line-height-body);
}

.container-fluid.overview-page-v2 .hero-description p {
     margin-bottom: var(--spacing-lg);
     color: var(--color-core-white);
}

.container-fluid.overview-page-v2 .hero-description p:last-child {
     margin-bottom: 0;
}

.container-fluid.overview-page-v2 .image-position-container {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     gap: var(--spacing-sm);
     align-self: stretch;
     grid-row: 1 / span 1;
     grid-column: 8 / span 5;
     justify-self: stretch;
     position: relative;
}

.container-fluid.overview-page-v2 .image-container {
     display: flex;
     align-items: flex-start;
     flex: 1 0 0;
     opacity: var(--opacity-hero-image);
     width: 100%;
     height: 100%;
     align-self: stretch;
     position: relative;
}

.container-fluid.overview-page-v2 .hero-chevron-svg {
     width: auto;
     height: 100%;
     max-width: none;
     display: block;
     min-width: 576px;
}

.container-fluid.overview-page-v2 .hero-rect-img {
     display: none;
     width: 100%;
     height: 100%;
     object-fit: cover;
}

/* ================================================================
    SECTION 2: YELLOW NAVIGATION (Reusing careers styles)
    ================================================================ */
.container-fluid.overview-page-v2 .careers-yellow-nav {
     display: flex;
     height: auto;
     min-height: var(--layout-nav-height);
     min-width: 991px;
     justify-content: space-between;
     align-items: center;
     flex-shrink: 0;
     align-self: stretch;
     border-top: var(--border-width-thick) solid var(--color-core-white);
     border-bottom: var(--border-width-thick) solid var(--color-core-white);
     background: var(--color-core-yellow);
     position: sticky;
     top: 0;
     z-index: var(--z-index-sticky-nav);
     width: 100vw;
     margin-left: calc(-50vw + 50%);
     margin-right: calc(-50vw + 50%);
}

.container-fluid.overview-page-v2 .nav-container {
     display: flex;
     max-width: var(--layout-max-width);
     padding: 0 var(--layout-content-padding);
     justify-content: space-between;
     align-items: center;
     flex: 1 0 0;
     margin: 0 auto;
     width: 100%;
     position: relative;
}

.container-fluid.overview-page-v2 .yellow-nav-links {
     display: flex;
     align-items: center;
     gap: 0;
     list-style: none;
     margin: 0;
     padding: 0;
}

.container-fluid.overview-page-v2 .yellow-nav-links a {
     display: flex;
     height: 52px;
     padding: 10px 15px;
     align-items: center;
     gap: var(--spacing-sm);
     color: var(--color-core-black);
     text-decoration: none;
     font-family: var(--font-family-sans);
     font-size: var(--font-size-body-md);
     font-weight: 400;
     line-height: var(--line-height-body-sm);
     transition: background-color var(--transition-normal);
     cursor: pointer;
     border: none;
     background: transparent;
}

.container-fluid.overview-page-v2 .yellow-nav-links a:hover {
     background-color: var(--color-accent-yellow-light);
}

.container-fluid.overview-page-v2 .divider-container {
     display: flex;
     align-items: center;
     align-self: stretch;
     margin-right: -1px;
}

.container-fluid.overview-page-v2 .divider {
     width: 2px;
     height: 18px;
     background: var(--color-accent-yellow-dark);
}

.container-fluid.overview-page-v2 .secondary-nav-cta-button-v2 {
     display: flex;
     padding: 8px 16px;
     flex-direction: column;
     justify-content: center;
     align-items: flex-start;
     gap: var(--spacing-sm);
     background: var(--color-core-blue);
     border: none;
     cursor: pointer;
     transition: background-color var(--transition-slow);
     flex-shrink: 0;
     white-space: nowrap;
     text-decoration: none;
}

.container-fluid.overview-page-v2 .secondary-nav-cta-button-v2:hover {
     background-color: var(--color-accent-blue-dark);
}

.container-fluid.overview-page-v2 .secondary-nav-cta-button-v2 span {
     color: var(--color-core-white);
     text-align: center;
     font-family: var(--font-family-serif);
     font-size: var(--font-size-body-lg);
     font-weight: 700;
     line-height: var(--line-height-body);
}

/* Mobile menu (hidden on desktop) */
.container-fluid.overview-page-v2 .secondary-menu-button-wrapper {
     display: none;
     position: relative;
}

/* Navigation button active/hover states */
.container-fluid.overview-page-v2 .secondary-nav-button-v2 {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     gap: 0;
     background: transparent;
     position: relative;
}

.container-fluid.overview-page-v2 .secondary-nav-button-v2.active,
.container-fluid.overview-page-v2 .secondary-nav-button-v2:hover {
     background: var(--color-accent-yellow-light);
}

.container-fluid.overview-page-v2 .secondary-nav-button-v2.active .nav-link-wrapper,
.container-fluid.overview-page-v2 .secondary-nav-button-v2:hover .nav-link-wrapper {
     border-bottom: 4px solid var(--color-accent-yellow-darkest);
}

.container-fluid.overview-page-v2 .nav-link-wrapper {
     display: flex;
     height: 52px;
     padding: 10px 15px;
     align-items: center;
     gap: var(--spacing-sm);
     align-self: stretch;
     transition: background-color var(--transition-normal), border-bottom var(--transition-normal);
     border-bottom: 4px solid transparent;
}

.container-fluid.overview-page-v2 .nav-link-wrapper a {
     color: var(--color-core-black);
     text-decoration: none;
     font-family: var(--font-family-sans);
     font-size: var(--font-size-body-md);
     font-weight: 400;
     line-height: var(--line-height-body-sm);
     padding: 0;
     height: auto;
     border: none;
}

/* Submenu styles */
.container-fluid.overview-page-v2 .submenu {
     display: none;
     flex-direction: column;
     align-items: flex-start;
     background: var(--color-core-yellow);
     border: var(--border-width-thin) solid var(--color-accent-yellow-dark);
     box-shadow: var(--box-shadow-dropdown);
     position: absolute;
     top: 62px;
     left: 0;
     min-width: 250px;
     z-index: var(--z-index-sticky-nav);
}

.container-fluid.overview-page-v2 .submenu.open {
     display: flex !important;
}

.container-fluid.overview-page-v2 .submenu a {
     display: flex;
     width: 100%;
     padding: 12px 20px;
     color: var(--color-core-black);
     text-decoration: none;
     font-family: var(--font-family-sans);
     font-size: var(--font-size-body-md);
     font-weight: 400;
     line-height: var(--line-height-body-sm);
     background: transparent;
     border: none;
     height: auto;
     transition: background-color var(--transition-normal), border-bottom var(--transition-normal);
     border-bottom: var(--border-width-thin) solid transparent;
}

.container-fluid.overview-page-v2 .submenu a:hover {
     background: var(--color-accent-yellow-light);
     border-bottom: var(--border-width-focus) solid var(--color-core-black);
}

.container-fluid.overview-page-v2 .submenu a.active {
     background: var(--color-accent-yellow-light);
     border-bottom: var(--border-width-focus) solid var(--color-core-black);
     /* font-weight: 700; */
}

.container-fluid.overview-page-v2 .chevron-container {
     display: flex;
     width: 20px;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     gap: var(--spacing-sm);
     cursor: pointer;
}

.container-fluid.overview-page-v2 .chevron-svg {
     width: 11.775px;
     height: 20px;
     transform: rotate(0deg);
     fill: var(--color-core-black);
     transition: transform var(--transition-slow);
}

.container-fluid.overview-page-v2 .chevron-svg.open {
     transform: rotate(180deg);
}

/* Mobile menu button and dropdown */
.container-fluid.overview-page-v2 .secondary-menu-button {
     display: flex;
     height: 52px;
     padding: 10px 15px;
     align-items: center;
     justify-content: space-between;
     gap: var(--spacing-sm);
     width: 100%;
     color: var(--color-core-black);
     background: transparent;
     border: none;
     font-family: var(--font-family-sans);
     font-size: var(--font-size-body-md);
     font-weight: 400;
     line-height: var(--line-height-body-sm);
     cursor: pointer;
     transition: background-color var(--transition-normal);
}

.container-fluid.overview-page-v2 .secondary-menu-button:hover {
     background-color: transparent;
}

.container-fluid.overview-page-v2 .secondary-menu-button.open {
     background: var(--color-accent-yellow-light);
     border-bottom: 4px solid var(--color-accent-yellow-darkest);
}

.container-fluid.overview-page-v2 .menu-chevron-svg {
     width: 11.775px;
     height: 20px;
     transform: rotate(0deg);
     fill: var(--color-core-black);
     transition: transform var(--transition-slow);
}

.container-fluid.overview-page-v2 .secondary-menu-button.open .menu-chevron-svg {
     transform: rotate(180deg);
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown {
     display: none;
     flex-direction: column;
     align-items: flex-start;
     background: var(--color-accent-yellow-light);
     border: var(--border-width-thin) solid var(--color-accent-yellow-dark);
     box-shadow: var(--box-shadow-dropdown);
     position: absolute;
     top: 100%;
     left: 0;
     z-index: var(--z-index-dropdown);
     margin-top: var(--spacing-sm);
     gap: 0;
     min-width: 250px;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown.open {
     display: flex !important;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a {
     display: flex;
     width: 100%;
     padding: 0;
     color: var(--color-core-black);
     text-decoration: none;
     font-family: var(--font-family-sans);
     font-size: var(--font-size-body-md);
     font-weight: 400;
     line-height: var(--line-height-body-sm);
     background: transparent;
     transition: background-color var(--transition-normal);
     white-space: nowrap;
     flex-direction: column;
     align-items: flex-start;
     gap: var(--spacing-sm);
     align-self: stretch;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a>span,
.container-fluid.overview-page-v2 .secondary-menu-dropdown a:not(:has(span)) {
     display: flex;
     height: 52px;
     padding: 10px 15px;
     align-items: center;
     gap: var(--spacing-sm);
     width: 100%;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a:hover>span,
.container-fluid.overview-page-v2 .secondary-menu-dropdown a:hover {
     background: transparent;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a.active {
     background: var(--color-accent-yellow-light);
     font-weight: 700;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a.active>span {
     border-bottom: 4px solid var(--color-accent-yellow-darkest);
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a:hover {
     background-color: transparent;
}

/* Mobile nested menu items */
.container-fluid.overview-page-v2 #early-career-mobile-submenu {
     display: none;
     width: 100%;
}

.container-fluid.overview-page-v2 #early-career-mobile-submenu a {
     background: #FFDB66;
     white-space: nowrap;
}

.container-fluid.overview-page-v2 #early-career-mobile-submenu a span {
     padding-left: 35px;
}

.container-fluid.overview-page-v2 #early-career-mobile-submenu a.active {
     font-weight: 700;
}

/* Early Career parent link - override flex-direction to keep chevron on same line */
.container-fluid.overview-page-v2 .secondary-menu-dropdown a[onclick*="toggleEarlyCareerMobile"] {
     flex-direction: row !important;
     justify-content: space-between !important;
     align-items: center !important;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a[onclick*="toggleEarlyCareerMobile"] span {
     flex: 1;
     padding: 0;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown a[onclick*="toggleEarlyCareerMobile"] .menu-chevron-svg {
     flex-shrink: 0;
}

.container-fluid.overview-page-v2 .mobile-search-button-wrapper {
     display: flex;
     width: 100%;
     padding: 10px 0;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     gap: var(--spacing-sm);
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown .mobile-search-button {
     display: flex;
     padding: 12px 20px;
     justify-content: center;
     align-items: center;
     background: var(--color-core-blue);
     color: var(--color-core-white);
     text-align: center;
     font-family: var(--font-family-serif);
     font-size: var(--font-size-body-lg);
     font-weight: 700;
     line-height: var(--line-height-body);
     border: none;
     cursor: pointer;
     transition: background-color var(--transition-slow);
     white-space: nowrap;
     width: 100%;
}

.container-fluid.overview-page-v2 .secondary-menu-dropdown .mobile-search-button:hover {
     background-color: var(--color-accent-blue-dark);
}

/* ================================================================
    SECTION 3: INTERNSHIP PROGRAMS SECTION
    ================================================================
    NOTE: Layout and responsive behavior TBD - placeholder styles
    ================================================================ */
.container-fluid.overview-page-v2 .internship-programs-section {
     display: flex;
     max-width: 1200px;
     padding: 64px 40px;
     flex-direction: column;
     align-items: center;
     gap: 40px;
     align-self: stretch;
     background: var(--color-core-white);
     margin: 0 auto;
}

.container-fluid.overview-page-v2 .programs-intro {
     display: flex;
     width: 100%;
     flex-direction: column;
     align-items: flex-start;
     gap: 16px;
}

.container-fluid.overview-page-v2 .programs-title-container {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     gap: 5px;
     align-self: stretch;
}

.container-fluid.overview-page-v2 .programs-title {
     align-self: stretch;
     color: var(--color-core-blue);
     text-align: left;
     font-family: var(--font-family-serif);
     font-size: 32px;
     font-weight: 700;
     line-height: 40px;
}

.container-fluid.overview-page-v2 .programs-content-grid {
     display: inline-grid;
     width: 100%;
     row-gap: 40px;
     column-gap: 40px;
     align-self: stretch;
     grid-template-rows: repeat(3, fit-content(100%));
     grid-template-columns: repeat(12, minmax(0, 1fr));
}

/* Desktop Large: Image containers */
.container-fluid.overview-page-v2 .program-image-container {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     gap: 10px;
     justify-self: stretch;
     overflow: hidden;
}

.container-fluid.overview-page-v2 .program-image-1 {
     grid-row: 1 / span 1;
     grid-column: 1 / span 5;
}

.container-fluid.overview-page-v2 .program-image-2 {
     grid-row: 2 / span 1;
     grid-column: 1 / span 5;
}

.container-fluid.overview-page-v2 .program-image-3 {
     grid-row: 3 / span 1;
     grid-column: 1 / span 5;
}

.container-fluid.overview-page-v2 .program-image {
     width: 100%;
     height: 100%;
     object-fit: cover;
}

/* Desktop Large: Program cards */
.container-fluid.overview-page-v2 .program-card {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     gap: 16px;
     justify-self: stretch;
}

.container-fluid.overview-page-v2 .program-card-1 {
     grid-row: 1 / span 1;
     grid-column: 6 / span 7;
}

.container-fluid.overview-page-v2 .program-card-2 {
     grid-row: 2 / span 1;
     grid-column: 6 / span 7;
}

.container-fluid.overview-page-v2 .program-card-3 {
     grid-row: 3 / span 1;
     grid-column: 6 / span 7;
}

.container-fluid.overview-page-v2 .program-card-title {
     color: var(--color-core-black);
     font-family: var(--font-family-serif);
     font-size: 20px;
     font-weight: 700;
     line-height: 30px;
     margin: 0;
}

.container-fluid.overview-page-v2 .program-card-description {
     color: var(--color-core-black);
     font-family: var(--font-family-sans);
     font-size: 16px;
     font-weight: 400;
     line-height: 24px;
     margin: 0;
     margin-bottom: 16px;
}

.container-fluid.overview-page-v2 .program-card-description:last-child {
     margin-bottom: 0;
}

/* ================================================================
    SECTION 5: CHOOSE YOUR NEXT ROLE (Reusing Early Career structure from Explore)
    ================================================================ */
.container-fluid.overview-page-v2 .choose-role-section {
     display: flex;
     padding: var(--spacing-4xl) 50px;
     align-items: stretch;
     align-self: stretch;
     background: #F8F1FF;
     position: relative;
}

.container-fluid.overview-page-v2 .choose-role-image-container {
     display: flex;
     flex: 1;
     min-height: 400px;
     justify-content: center;
     align-items: center;
     background: linear-gradient(0deg, rgba(107, 61, 153, 0.25) 0%, rgba(107, 61, 153, 0.25) 100%),
          url('2648F7117F084489858A20ACB558A532') lightgray 50% / cover no-repeat;
     background-size: cover;
     background-position: center;
     position: relative;
}

.container-fluid.overview-page-v2 .choose-role-chevron {
     width: 79px;
     height: 93.364px;
     position: absolute;
     left: calc(100% - 12px);
     top: 50%;
     transform: translate(-31.6px, -50%);
     z-index: 10;
}

.container-fluid.overview-page-v2 .choose-role-content-container {
     display: flex;
     flex: 1;
     padding: 80px 60px;
     flex-direction: column;
     justify-content: center;
     align-items: flex-start;
     gap: var(--spacing-xl);
     background: var(--color-core-purple);
}

.container-fluid.overview-page-v2 .choose-role-text-container {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     gap: 17px;
}

.container-fluid.overview-page-v2 .choose-role-title {
     align-self: stretch;
     color: var(--color-core-white);
     font-family: var(--font-family-serif);
     font-size: var(--font-size-headline-lg);
     font-weight: 700;
     line-height: var(--line-height-headline-md);
}

.container-fluid.overview-page-v2 .discover-roles-button {
     display: flex;
     padding: var(--spacing-button-padding-v) var(--spacing-button-padding-h);
     flex-direction: column;
     align-items: flex-start;
     gap: var(--spacing-sm);
     background: var(--color-core-white);
     border: none;
     cursor: pointer;
     transition: background-color var(--transition-slow);
}

.container-fluid.overview-page-v2 .discover-roles-button-text {
     align-self: stretch;
     color: var(--color-accent-purple-dark);
     text-align: center;
     font-family: var(--font-family-serif);
     font-size: var(--font-size-body-lg);
     font-weight: 700;
     line-height: var(--line-height-body);
}

.container-fluid.overview-page-v2 .discover-roles-button:hover,
.container-fluid.overview-page-v2 .discover-roles-button:active,
.container-fluid.overview-page-v2 .discover-roles-button:focus {
     background-color: var(--color-accent-plum-lighter);
}

.container-fluid.overview-page-v2 .discover-roles-button:hover .discover-roles-button-text,
.container-fluid.overview-page-v2 .discover-roles-button:active .discover-roles-button-text,
.container-fluid.overview-page-v2 .discover-roles-button:focus .discover-roles-button-text {
     color: var(--color-accent-plum-dark);
}

/* ================================================================
    SECTION 4: RESEARCH ASSOCIATE PROGRAM CTA
    ================================================================ */
.container-fluid.overview-page-v2 .research-associate-cta-section {
     display: flex;
     width: 100vw;
     min-height: 275px;
     padding: 56px 0;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     gap: 16px;
     align-self: stretch;
     background-image: linear-gradient(rgba(18, 98, 178, 0.85), rgba(18, 98, 178, 0.85)), url('CF7708FCACFD4D9E807AE37EAB0E5515');
     background-color: var(--color-core-blue);
     background-size: cover;
     background-position: center;
     margin-left: calc(-50vw + 50%);
     margin-right: calc(-50vw + 50%);
}

.container-fluid.overview-page-v2 .research-associate-content-grid {
     display: flex;
     width: 100%;
     max-width: 1200px;
     padding: 0 40px;
     flex-direction: column;
     align-items: center;
     gap: 10px;
     align-self: stretch;
     margin: 0 auto;
}

.container-fluid.overview-page-v2 .research-associate-cta-container {
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: flex-start;
     gap: 24px;
     align-self: stretch;
     text-align: left;
}

.container-fluid.overview-page-v2 .research-associate-text-content {
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     gap: 16px;
     align-self: stretch;
}

.container-fluid.overview-page-v2 .research-associate-title {
     align-self: stretch;
     color: var(--color-core-white);
     text-align: left;
     font-family: var(--font-family-serif);
     font-size: 32px;
     font-weight: 700;
     line-height: 40px;
}

.container-fluid.overview-page-v2 .research-associate-description {
     align-self: stretch;
     color: var(--color-core-white);
     text-align: left;
     font-family: var(--font-family-sans);
     font-size: 16px;
     font-weight: 400;
     line-height: 24px;
     margin: 0;
}

.container-fluid.overview-page-v2 .research-associate-button {
     display: flex;
     padding: 15px 25px;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     gap: 10px;
     background: var(--color-core-white);
     border: none;
     cursor: pointer;
     transition: background-color var(--transition-slow);
}

.container-fluid.overview-page-v2 .research-associate-button-text {
     color: var(--color-accent-blue-dark);
     text-align: center;
     font-family: var(--font-family-serif);
     font-size: 16px;
     font-weight: 700;
     line-height: 24px;
}

.container-fluid.overview-page-v2 .research-associate-button:hover {
     background-color: var(--color-accent-blue-light);
}

/* ================================================================
    RESPONSIVE DESIGN
    ================================================================ */

/* Desktop Small - 1200px and below */
@media (max-width: 1200px) {

     /* Hero adjustments */
     .container-fluid.overview-page-v2 .header-image-chevron {
          min-width: auto;
     }

     /* Choose Role adjustments */
     .container-fluid.overview-page-v2 .choose-role-section {
          padding: var(--spacing-4xl) 40px;
     }
}

/* Tablet - 991px */
@media (max-width: 991px) {
     .container-fluid.overview-page-v2 .header-image-chevron {
          min-width: 768px;
          max-width: 990px;
          height: auto !important;
          min-height: 250px;
     }

     .container-fluid.overview-page-v2 .hero-content-container {
          min-height: 250px;
          grid-template-rows: repeat(2, fit-content(100%));
          grid-template-columns: repeat(8, minmax(0, 1fr));
          padding: 0;
     }

     .container-fluid.overview-page-v2 .content-container {
          min-height: 250px;
          padding: var(--spacing-3xl);
          grid-row: 2 / span 1;
          grid-column: 1 / span 8;
     }

     .container-fluid.overview-page-v2 .image-position-container {
          grid-row: 1 / span 1;
          grid-column: 1 / span 8;
     }

     .container-fluid.overview-page-v2 .hero-chevron-svg {
          display: none;
     }

     .container-fluid.overview-page-v2 .hero-rect-img {
          display: block;
          opacity: var(--opacity-hero-image);
     }

     .container-fluid.overview-page-v2 .careers-yellow-nav {
          min-width: auto;
     }

     .container-fluid.overview-page-v2 .nav-container {
          padding: 0 20px;
          gap: var(--spacing-sm);
     }

     /* Internship Programs - Tablet */
     .container-fluid.overview-page-v2 .internship-programs-section {
          padding: 64px 20px;
     }

     /* Choose Role - Tablet */
     .container-fluid.overview-page-v2 .choose-role-section {
          flex-direction: row;
          padding: var(--spacing-4xl) 50px;
     }

     .container-fluid.overview-page-v2 .choose-role-image-container {
          min-height: 280px;
     }

     .container-fluid.overview-page-v2 .choose-role-chevron {
          display: block;
          width: 51px;
          height: 60.273px;
          left: calc(100% - 12px);
          top: 50%;
          transform: translate(-16px, -50%);
     }

     .container-fluid.overview-page-v2 .choose-role-content-container {
          padding: 50px var(--spacing-3xl);
     }

     .container-fluid.overview-page-v2 .choose-role-title {
          font-size: var(--font-size-headline-md);
     }

     /* Research Associate - Tablet */
     .container-fluid.overview-page-v2 .research-associate-cta-section {
          padding: 64px 20px;
     }

     .container-fluid.overview-page-v2 .research-associate-content-grid {
          padding: 0 20px;
     }
}

/* Small Tablet - 765px */
@media (max-width: 765px) {
     .container-fluid.overview-page-v2 .header-image-chevron {
          min-width: 320px;
          max-width: 767px;
     }

     .container-fluid.overview-page-v2 .hero-content-container {
          grid-template-columns: repeat(4, minmax(0, 1fr));
          padding: 0;
     }

     .container-fluid.overview-page-v2 .content-container {
          padding: 20px var(--spacing-3xl);
          grid-column: 1 / span 4;
     }

     .container-fluid.overview-page-v2 .image-position-container {
          grid-column: 1 / span 4;
     }

     .container-fluid.overview-page-v2 .hero-header {
          font-size: 36px;
          line-height: 42px;
     }

     /* Show mobile menu */
     .container-fluid.overview-page-v2 .secondary-menu-button-wrapper {
          display: block;
          flex: 1;
     }

     .container-fluid.overview-page-v2 .nav-container {
          width: auto;
          flex: 0 0 auto;
          justify-content: flex-start;
          margin: 0;
     }

     .container-fluid.overview-page-v2 .yellow-nav-links {
          display: none;
     }

     .container-fluid.overview-page-v2 .button-container {
          display: none;
     }

     /* Internship Programs - Mobile */
     .container-fluid.overview-page-v2 .internship-programs-section {
          padding: 64px 20px;
          gap: 20px;
     }

     .container-fluid.overview-page-v2 .programs-content-grid {
          grid-template-rows: repeat(6, fit-content(100%));
          grid-template-columns: repeat(4, minmax(0, 1fr));
          column-gap: 20px;
     }

     .container-fluid.overview-page-v2 .program-image-1 {
          grid-row: 1 / span 1;
          grid-column: 1 / span 4;
          height: 157px;
     }

     .container-fluid.overview-page-v2 .program-card-1 {
          grid-row: 2 / span 1;
          grid-column: 1 / span 4;
     }

     .container-fluid.overview-page-v2 .program-image-2 {
          grid-row: 3 / span 1;
          grid-column: 1 / span 4;
          height: 157px;
     }

     .container-fluid.overview-page-v2 .program-card-2 {
          grid-row: 4 / span 1;
          grid-column: 1 / span 4;
     }

     .container-fluid.overview-page-v2 .program-image-3 {
          grid-row: 5 / span 1;
          grid-column: 1 / span 4;
          height: 157px;
     }

     .container-fluid.overview-page-v2 .program-card-3 {
          grid-row: 6 / span 1;
          grid-column: 1 / span 4;
     }

     /* Choose Role - Mobile */
     .container-fluid.overview-page-v2 .choose-role-section {
          flex-direction: column;
          padding: 0;
     }

     .container-fluid.overview-page-v2 .choose-role-image-container {
          min-height: 250px;
          position: relative;
     }

     .container-fluid.overview-page-v2 .choose-role-chevron {
          display: block;
          width: 51px;
          height: 60.273px;
          left: 20px;
          top: 100%;
          transform: translateY(-30px);
     }

     .container-fluid.overview-page-v2 .choose-role-content-container {
          padding: 20px;
          align-items: flex-start;
          text-align: left;
     }

     .container-fluid.overview-page-v2 .choose-role-title {
          font-size: 26px;
          line-height: 32px;
     }

     .container-fluid.overview-page-v2 .discover-roles-button {
          width: 100%;
     }

     /* Research Associate - Mobile */
     .container-fluid.overview-page-v2 .research-associate-cta-section {
          padding: 40px 20px;
     }

     .container-fluid.overview-page-v2 .research-associate-content-grid {
          padding: 0 20px;
     }
}

/* Mobile - 346px */
@media (max-width: 346px) {
     .container-fluid.overview-page-v2 .hero-header {
          font-size: 28px;
          line-height: 34px;
     }

     .container-fluid.overview-page-v2 .nav-container {
          padding: 0 15px;
     }

     .container-fluid.overview-page-v2 .internship-programs-section {
          padding: 40px 15px;
     }

     .container-fluid.overview-page-v2 .choose-role-content-container {
          padding: 30px 20px;
     }

     .container-fluid.overview-page-v2 .research-associate-cta-section {
          padding: 30px 15px;
     }

     .container-fluid.overview-page-v2 .research-associate-content-grid {
          padding: 0 15px;
     }
}