/**
 * Title Section Component
 * Uses CSS variables from _variables.css
 */

.title-section {
    display: flex;
    flex-direction: column;
}

.container {
    z-index: 990;
    position: relative;
}

.title-section-center {
    align-items: center;
}

.title-section-left {
    align-items: flex-start;
}

.title-section-left .title-section__titre {
    text-align: left;
}

.title-section-left .title-section__sous-titre {
    text-align: left;
}

.title-section-right {
    align-items: flex-end;
}

.title-section__label {
    margin-bottom: var(--spacing-md);
    font-family: var(--font-body-medium);
    font-size: var(--font-size-md);
}

.title-section__titre {
    max-width: 900px;
    text-align: center;
}

.title-section__titre * {
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: var(--font-size-2xl);
    line-height: 1.4;
        color: var(--color-text-inverse);
}

.title-section-center .title-section__titre * {
    text-align: center;
}

.title-section__sous-titre {
    margin-top: var(--spacing-md);
    max-width: 900px;
    text-align: center;
}

.title-section__sous-titre * {
    font-family: var(--font-body-light);
    font-size: var(--font-size-md);
}

.title-section-center .title-section__sous-titre * {
    text-align: center;
    line-height: var(--line-height-tight);
}

.title-section__cta {
    margin-top: var(--spacing-xl);
}

.section_bg {
    background-color: var(--color-primary-light);
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 30%;
    z-index: 980;
}

@media all and (max-width: 900px) {
    .section_bg {
        bottom: 20%;
    }
}

@media all and (max-width: 650px) {
    .title-section__titre * {
        font-size: var(--font-size-xl);
    }
}
