.home-page-body .site-header {
    position: fixed;
    right: 0;
    left: 0;
    background: transparent;
}

.home-page-body .site-header.site-header--solid {
    background: var(--utef-header);
    box-shadow: 0 0.75rem 2rem rgba(0, 21, 33, 0.2);
}

.home-page-body .site-header .site-mega-menu {
    background: var(--utef-header);
}

.home-page-body .site-header-border {
    background: rgba(255, 255, 255, 0.45);
}

.home-page-body .site-header.site-header--solid .site-header-border {
    background: var(--utef-header-border);
}

.home-page-body .site-main {
    min-height: 0;
}

.home-page-body .site-main > .container {
    width: 100%;
    max-width: none;
    padding-inline: 0;
}

.home-page {
    width: 100%;
    overflow: hidden;
    color: var(--utef-ink);
}

.home-hero {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    background-color: #001723;
    color: #fff;
}

.home-hero--no-image {
    background-image:
        linear-gradient(135deg, rgba(0, 53, 83, 0.95), rgba(0, 18, 30, 0.96));
}

.home-hero__slides,
.home-hero__slide {
    position: absolute;
    inset: 0;
}

.home-hero__slides {
    z-index: 0;
    background: #001723;
}

.home-hero__slides::after {
    position: absolute;
    inset: 0;
    background: #000;
    content: "";
    opacity: 0;
    pointer-events: none;
    transition: opacity 450ms ease;
}

.home-hero.is-blackout .home-hero__slides::after {
    opacity: 1;
}

.home-hero__slide {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
}

.home-hero__slide.is-active {
    opacity: 1;
}

.home-hero--effect-opacity .home-hero__slide {
    transition: opacity 900ms ease;
}

.home-hero--effect-fade_to_black .home-hero__slide {
    transition: none;
}

.home-hero--effect-slide_left .home-hero__slide,
.home-hero--effect-slide_right .home-hero__slide {
    opacity: 1;
    transition: transform 900ms ease;
}

.home-hero--effect-slide_left .home-hero__slide {
    transform: translateX(100%);
}

.home-hero--effect-slide_left .home-hero__slide.is-active {
    transform: translateX(0);
}

.home-hero--effect-slide_left .home-hero__slide.is-leaving {
    transform: translateX(-100%);
}

.home-hero--effect-slide_right .home-hero__slide {
    transform: translateX(-100%);
}

.home-hero--effect-slide_right .home-hero__slide.is-active {
    transform: translateX(0);
}

.home-hero--effect-slide_right .home-hero__slide.is-leaving {
    transform: translateX(100%);
}

.home-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(0, 16, 27, 0.62) 0%, rgba(0, 16, 27, 0.28) 52%, rgba(0, 16, 27, 0.42) 100%),
        rgba(0, 0, 0, var(--home-hero-overlay-opacity, 0.4));
}

.home-hero__inner,
.home-section__inner {
    box-sizing: border-box;
    width: 100%;
    max-width: 1320px;
    margin-inline: auto;
    padding-inline: 0.75rem;
}

.home-hero__inner {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: 100vh;
    align-items: center;
    padding-top: clamp(9rem, 16vh, 13.5rem);
    padding-bottom: clamp(3rem, 8vh, 6rem);
}

@media (prefers-reduced-motion: reduce) {
    .home-hero__slides::after,
    .home-hero__slide {
        transition: none;
    }
}

.home-hero__content {
    width: 100%;
    max-width: none;
}

.home-hero h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(2.7rem, 5.2vw, 5.2rem);
    font-weight: 700;
    line-height: 1.05;
    text-shadow: 0 0.2rem 1.3rem rgba(0, 0, 0, 0.36);
}

.home-hero__lead {
    margin: clamp(2rem, 4vw, 3.4rem) 0 0;
    color: #fff;
    font-size: clamp(1.2rem, 1.5vw, 1.5rem);
    font-weight: 700;
    line-height: 1.25;
    text-shadow: 0 0.16rem 0.8rem rgba(0, 0, 0, 0.42);
}

.home-hero__body {
    margin-top: 1.6rem;
    color: rgba(255, 255, 255, 0.86);
    font-size: 1.02rem;
    line-height: 1.45;
    text-shadow: 0 0.16rem 0.8rem rgba(0, 0, 0, 0.42);
}

.home-hero__body > :last-child {
    margin-bottom: 0;
}

.home-hero__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 10rem;
    min-height: 3.7rem;
    margin-top: clamp(2rem, 4vw, 3.2rem);
    padding: 0.9rem 2rem;
    background: #fff;
    color: #003553;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
}

.home-hero__cta:hover,
.home-hero__cta:focus {
    background: var(--utef-nav-underline);
    color: #fff;
    text-decoration: none;
}

.home-section {
    width: 100%;
}

.home-section__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: clamp(2rem, 4vw, 3.5rem);
}

.home-section__header h2 {
    margin: 0;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 700;
    line-height: 1.08;
}

.home-section__link {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    margin-top: 0.45rem;
    color: var(--utef-link);
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
}

.home-section__link span:first-child {
    border-bottom: 1px solid currentColor;
    padding-bottom: 0.45rem;
}

.home-section__link:hover,
.home-section__link:focus {
    color: var(--utef-accent);
    text-decoration: none;
}

.home-section__empty {
    margin: 0;
    color: var(--utef-muted);
}

.home-updates {
    padding-block: clamp(4.5rem, 8vw, 7.5rem);
    background: var(--text-content-blue-tint, #eff4f7);
}

.home-updates__grid {
    display: grid;
    grid-template-columns: repeat(var(--home-updates-columns, 3), minmax(0, 1fr));
    gap: clamp(1rem, 1.6vw, 1.35rem);
}

.home-update-card {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 1.15rem;
}

.home-update-card__media {
    position: relative;
    display: block;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
}

.home-update-card__image {
    display: block;
    width: 100%;
    aspect-ratio: 1.16 / 1;
    object-fit: cover;
}

.home-update-card__body {
    display: grid;
    align-content: start;
    gap: 0.85rem;
}

.home-update-card__title {
    margin: 0;
    color: #003553;
    font-size: clamp(1.08rem, 1.35vw, 1.35rem);
    font-weight: 700;
    line-height: 1.22;
}

.home-update-card__title a {
    color: inherit;
    text-decoration: none;
}

.home-update-card__title a:hover,
.home-update-card__title a:focus,
.home-update-card__media:hover + .home-update-card__body .home-update-card__title a,
.home-update-card__media:focus + .home-update-card__body .home-update-card__title a {
    color: var(--utef-link);
    text-decoration: none;
}

.home-update-card__teaser {
    margin: 0;
    color: var(--utef-muted);
    line-height: 1.5;
}

.home-research {
    padding-block: clamp(4.5rem, 8vw, 7.25rem);
    background: #00131d;
    color: #fff;
}

.home-research .home-section__header h2,
.home-offers .home-section__header h2 {
    color: #fff;
}

.home-research__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
}

.home-research-card {
    min-height: clamp(18rem, 27vw, 28rem);
    background-color: #0f344b;
    background-image:
        linear-gradient(0deg, rgba(0, 16, 27, 0.78), rgba(0, 16, 27, 0.12)),
        var(--home-card-image);
    background-position: center;
    background-size: cover;
}

.home-research-card--no-image {
    background-image: linear-gradient(135deg, rgba(21, 81, 109, 0.96), rgba(0, 19, 29, 0.98));
}

.home-research-card__link {
    position: relative;
    display: flex;
    width: 100%;
    min-height: inherit;
    align-items: flex-end;
    color: #fff;
    text-decoration: none;
}

.home-research-card__link:hover,
.home-research-card__link:focus {
    color: #fff;
    text-decoration: none;
}

.home-research-card__content {
    display: grid;
    width: 100%;
    gap: 0.9rem;
    padding: clamp(1.25rem, 2.4vw, 2rem);
}

.home-research-card__title {
    max-width: 30rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.52);
    font-size: clamp(1.3rem, 1.8vw, 1.8rem);
    font-weight: 700;
    line-height: 1.15;
}

.home-research-card__teaser {
    max-width: 30rem;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.45;
}

.home-research-card__cta {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    justify-content: center;
    min-height: 2.7rem;
    margin-top: 0.2rem;
    border: 1px solid rgba(255, 255, 255, 0.78);
    padding: 0.7rem 1.2rem;
    color: #fff;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.home-research-card__link:hover .home-research-card__cta,
.home-research-card__link:focus .home-research-card__cta {
    background: #fff;
    color: #003553;
}

.home-offers {
    padding-block: clamp(3rem, 5.5vw, 5rem);
    background: #15516d;
    color: #fff;
}

.home-offers .home-section__header {
    margin-bottom: 2rem;
}

.home-offers__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
    gap: 1.5rem;
}

.home-offer-link {
    display: flex;
    min-height: 4.1rem;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1rem 1.4rem;
    background: #fff;
    color: #003553;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
}

.home-offer-link span:last-child {
    color: var(--utef-link);
    font-size: 1.8rem;
    line-height: 0.8;
}

.home-offer-link:hover,
.home-offer-link:focus {
    background: var(--utef-nav-underline);
    color: #fff;
    text-decoration: none;
}

.home-offer-link:hover span:last-child,
.home-offer-link:focus span:last-child {
    color: #fff;
}
