/*
 Theme Name:   Twenty Twenty Training Academy
 Description:  Thème enfant pour le thème Twenty Twenty
 Author:       Level Up Cluster
 Template:     twentytwenty
 Version:      1.0.0
 Text Domain:  twentytwenty-trainingacademy
*/

@font-face {
    font-family: 'Unbounded';
    src: url('./assets/fonts/Unbounded/Unbounded-VariableFont_wght.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('./assets/fonts/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

body {
    font-family: 'Unbounded', sans-serif;
}

.site-main {
    max-width: 1400px;
    margin: 8rem auto 0 auto;
    padding: 0 4rem;
}

.page-title {
    text-align: center;
    padding: 20px 0px 50px 0px;
    margin: 0;
    color: #232323;
    font-size: 40px;
    font-weight: 600;
}

/* Footer positioning overrides for all pages including Elementor */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* Ensure main content area grows to push footer down */
main.site-main,
#main,
.elementor-location-single,
.elementor-page,
.elementor-page .elementor,
.elementor-page .elementor .elementor-inner,
.elementor-page .elementor .elementor-inner .elementor-section-wrap {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

/* Ensure Elementor content takes full height */
.elementor-page .elementor .elementor-inner .elementor-section-wrap {
    flex-grow: 1;
}

/* Force footer to bottom */
.site-footer {
    margin-top: auto;
    flex-shrink: 0;
}

/* Additional overrides for Elementor specific layouts */
.elementor-page .site-main {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.elementor-page .elementor {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

/* Ensure Elementor sections don't interfere with footer positioning */
.elementor-section {
    flex-shrink: 0;
}

/* Override any Elementor height settings that might interfere */
.elementor-page .elementor .elementor-inner {
    min-height: auto;
    height: auto;
}