@import url('https://fonts.googleapis.com/css?family=Fira+Sans');

/* Variables */
/* Les variables SCSS sont remplacées par leurs valeurs directement dans le CSS */

/* Mixins */
/* Les mixins SCSS sont transformés en media queries CSS classiques */

/* Extends */
/* Les extends SCSS sont transformés en regroupements de sélecteurs CSS */

/* Main Layout Styles */


.text-404 {
    font-family: "Fira Sans", sans-serif;
    color: #f5f6fa;
    /* $white */
}

.background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(#0C0E10, #446182);
    /* $black, $blue */
}

.background .ground {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 25vh;
    background: #0C0E10;
    /* $black */
}

@media (max-width: 770px) {
    .background .ground {
        height: 0vh;
    }
}

.container {
    position: relative;
    margin: 0 auto;
    width: 85%;
    height: 100vh;
    padding-bottom: 25vh;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

@media (max-width: 770px) {
    .container {
        flex-direction: column;
        padding-bottom: 0vh;
    }
}

.left-section,
.right-section {
    position: relative;
}

/* Left Section Styles */
.left-section {
    width: 40%;
}

@media (max-width: 770px) {
    .left-section {
        width: 100%;
        height: 40%;
        position: absolute;
        top: 0;
    }
}

.left-section .inner-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

@media (max-width: 770px) {
    .left-section .inner-content {
        position: relative;
        padding: 1rem 0;
    }
}

.heading {
    text-align: center;
    font-size: 9em;
    line-height: 1.3em;
    margin: 2rem 0 0.5rem 0;
    padding: 0;
    text-shadow: 0 0 1rem #fefefe;
}

@media (max-width: 770px) {
    .heading {
        font-size: 7em;
        line-height: 1.15;
        margin: 0;
    }
}

.subheading {
    text-align: center;
    max-width: 480px;
    font-size: 1.5em;
    line-height: 1.15em;
    padding: 0 1rem;
    margin: 0 auto;
}

@media (max-width: 770px) {
    .subheading {
        font-size: 1.3em;
        line-height: 1.15;
        max-width: 100%;
    }
}

/* Right Section Styles */
.right-section {
    width: 50%;
}

@media (max-width: 770px) {
    .right-section {
        width: 100%;
        height: 60%;
        position: absolute;
        bottom: 0;
    }
}

.svgimg {
    position: absolute;
    bottom: 0;
    padding-top: 10vh;
    padding-left: 1vh;
    max-width: 100%;
    max-height: 100%;
}

@media (max-width: 770px) {
    .svgimg {
        padding: 0;
    }
}

.svgimg .bench-legs {
    fill: #0C0E10;
    /* $black */
}

.svgimg .top-bench,
.svgimg .bottom-bench {
    stroke: #0C0E10;
    /* $black */
    stroke-width: 1px;
    fill: #5B3E2B;
}

.svgimg .bottom-bench path:nth-child(1) {
    fill: #4a3526;
    /* darken(#5B3E2B,7%) */
}

.svgimg .lamp-details {
    fill: #202425;
    /* $gray */
}

.svgimg .lamp-accent {
    fill: #2a2e30;
    /* lighten($gray, 5%) */
}

.svgimg .lamp-bottom {
    fill: linear-gradient(#202425, #0C0E10);
    /* linear-gradient($gray, $black) */
}

.svgimg .lamp-light {
    fill: #EFEFEF;
}

@keyframes glow {
    0% {
        text-shadow: 0 0 1rem #fefefe;
    }

    50% {
        text-shadow: 0 0 1.85rem #ededed;
    }

    100% {
        text-shadow: 0 0 1rem #fefefe;
    }
}

.heading {
    /* Appliquer l'animation au heading car c'est là qu'elle était utilisée */
    animation: glow 1.5s ease-in-out infinite alternate;
}