.heading {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.heading--center {
    text-align: center;
    align-items: center;
}

.heading--left {
    text-align: left;
    align-items: flex-start;
}

.heading--right {
    text-align: right;
    align-items: flex-end;
}

.heading__title {
    font-size: 52px;
    font-family: var(--font-helvetica);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-hero);
}

.heading__subtitle {
    font-size: 22px;
    font-family: var(--font-rubik);
    font-weight: 500;
    line-height: var(--line-height-subheading);
    text-shadow: 0px 1px 4px rgba(0, 0, 0, 0.85);
}

.heading--white .heading__title,
.heading--white .heading__subtitle {
    color: var(--white);
}

.heading--dark1 .heading__title,
.heading--dark1 .heading__subtitle {
    color: var(--dark1);
}

@media (max-width: 900px) {
    .heading__title {
        font-size: 36px;
        line-height: 48px;
    }

    .heading__subtitle {
        font-size: var(--font-size-medium);
        line-height: var(--line-height-body);
    }
}

@media (max-width: 480px) {
    .heading__title {
        font-size: 28px;
        line-height: 38px;
    }
}
