@import "style.css";

:root {
    --content-width: 1100px;
}

html {
    font-family: "sans-serif";
}

body {
    margin: 0;

    &>* {
        padding-inline: calc((100vw - var(--content-width)) / 2);
    }
}

header {
    background-color: var(--main-color);
    color: var(--background-color);
    padding-block: 1rem;
    display: flex;
    align-items: center;
    gap: 2rem;

    .photo {
        width: 150px;
    }

    h1 {
        font-size: 3rem;
    }

    .subtitle {
        font-size: 1.5rem;
    }

    nav {
        margin-left: auto;
        ul {
            padding: 0;
            list-style: none;
            display: flex;
            justify-content: space-around;
            a {
                svg, img {
                    width: 32px;
                }
            }
        }

        .dispo {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            align-items: stretch;
            gap: 1px;
            border-radius: 5px;
            overflow: hidden;

            &>div {
                color: var(--main-color);
                background-color: var(--background-color);
                margin: 0;
                padding: .4rem;
                display: flex;
                justify-content: center;
                align-items: center;

                p {
                    margin: 0;
                    text-align: center;
                }
            }
        }
    }
}

main {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: var(--main-color);

    section {
        padding-inline: calc((100vw - var(--content-width)) / 2);
        padding-block: 32px;

        &:nth-child(odd) {
            background-color: var(--gray-background-color);
        }
    }

    .presentation-quote {
        position: relative;

        &::before {
            content: "\201c";
            font-size: 7.5rem;
            position: absolute;
            top: -50px;
            left: -20px;
        }

        p {
            margin-block: 0 1em;
            text-indent: 2em;
        }
    }

    h2 {
        margin-top: 0;
        font-size: 2rem;
    }

    h3 {
        margin-top: 0;
    }

    .expertises {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        column-gap: 3rem;
        row-gap: 1rem;

        .expertise {
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
            border: 1px solid #ddd;
            border-radius: 8px;
            overflow: hidden;
            padding: 1rem;
        }
    }

    .experiences {
        display: grid;
        grid-template-columns: 1fr 60px 1fr;

        .experience {
            background: var(--background-color);
            border-radius: 12px;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
            border: 1px solid #ddd;
            padding: 1rem;
            position: relative;

            &:nth-child(odd)::after {
                content: "";
                position: absolute;
                right: -20px;
                top: calc(50% - 20px);
                border-left: 20px solid var(--background-color);
                border-top: 20px solid transparent;
                border-bottom: 20px solid transparent;
            }

            &:nth-child(even)::before {
                content: "";
                position: absolute;
                left: -20px;
                top: calc(50% - 20px);
                border-right: 20px solid var(--background-color);
                border-top: 20px solid transparent;
                border-bottom: 20px solid transparent;
            }

            .separator {
                height: 1px;
                background-color: var(--main-color);
            }

            .date {
                font-size: 1.2rem;
                letter-spacing: .8mm;
            }

            .lieu {
                color: var(--secondary-color);
            }
        }

        .frise {
            grid-column: 2;
            display: flex;
            flex-direction: column;
            align-items: center;
            .rond {
                width: 18px;
                aspect-ratio: 1;
                border: 3px solid var(--main-color);
                border-radius: 10px;
            }

            .trait {
                flex: 1;
                width: 2px;
                background: var(--secondary-color);
            }
        }
    }
}
