@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&display=swap');


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


:root {
    --Txt-marron: #412520;

    --Lora: "Lora", serif;
    --Inter: "Inter", sans-serif;

    --semi-bold: 600;
    --medium: 500;
    --regular: 400;
}


html,
body {
    width: 100%;
    min-height: 100%;
}


body {
    min-height: 100vh;

    background-color: #FCFDFD;

    color: var(--Txt-marron);
}


/* ========================= */
/* PAGE */
/* ========================= */

.maintenance-page {
    min-height: 100vh;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 40px 24px;
}


/* ========================= */
/* CARTE */
/* ========================= */

.maintenance-content {
    width: 100%;
    max-width: 650px;

    padding: 46px 40px 50px;

    background: #FCF8F6;

    border-radius: 8px;

    text-align: center;
}


/* ========================= */
/* LOGO */
/* ========================= */

.maintenance-logo {
    display: flex;
    justify-content: center;

    margin-bottom: 28px;
}


.maintenance-logo img {
    display: block;

    width: 90px;
    height: auto;
}


/* ========================= */
/* PETIT TITRE */
/* ========================= */

.maintenance-label {
    display: block;

    margin-bottom: 12px;

    font-family: var(--Inter);
    font-size: 12px;
    font-weight: var(--medium);

    text-transform: uppercase;

    letter-spacing: 2.5px;

    color: #9b6b55;
}


/* ========================= */
/* TITRE PRINCIPAL */
/* ========================= */

.maintenance-content h1 {
    font-family: var(--Lora);

    font-size: 38px;
    line-height: 1.2;

    font-weight: var(--semi-bold);

    color: #6A3924;
}


/* ========================= */
/* SEPARATEUR */
/* ========================= */

.maintenance-separator {
    width: 180px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    margin: 28px auto;
}


.maintenance-separator > span:not(.maintenance-diamond) {
    flex: 1;

    height: 1px;

    background: #ead5ca;
}


.maintenance-diamond {
    width: 7px;
    height: 7px;

    background: #d6b6a5;

    transform: rotate(45deg);
}


/* ========================= */
/* TEXTE */
/* ========================= */

.maintenance-description {
    max-width: 470px;

    margin: 0 auto;

    font-family: var(--Inter);
    font-size: 14px;
    font-weight: var(--regular);

    line-height: 1.8;

    color: #704b3e;
}


.maintenance-soon {
    margin-top: 18px;

    font-family: var(--Lora);
    font-size: 18px;
    font-style: italic;

    color: #6A3924;
}


/* ========================= */
/* CONTACT */
/* ========================= */

.maintenance-contact {
    margin-top: 34px;

    padding-top: 25px;

    border-top: 1px solid #ead5ca;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 8px;
}


.maintenance-contact p {
    margin-bottom: 5px;

    font-family: var(--Inter);
    font-size: 12px;

    line-height: 1.6;

    color: #704b3e;
}


.maintenance-contact a {
    font-family: var(--Inter);

    font-size: 13px;
    font-weight: var(--medium);

    color: #6A3924;

    text-decoration: none;
}


.maintenance-contact a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}


/* ========================= */
/* TABLETTE */
/* ========================= */

@media (max-width: 768px) {

    .maintenance-page {
        padding: 30px 22px;
    }

    .maintenance-content {
        padding: 42px 30px 45px;
    }

    .maintenance-content h1 {
        font-size: 34px;
    }

}


/* ========================= */
/* MOBILE */
/* ========================= */

@media (max-width: 520px) {

    .maintenance-page {
        padding: 16px;
    }

    .maintenance-content {
        padding: 34px 20px 38px;
    }

    .maintenance-logo {
        margin-bottom: 23px;
    }

    .maintenance-logo img {
        width: 72px;
    }

    .maintenance-label {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .maintenance-content h1 {
        font-size: 28px;
    }

    .maintenance-separator {
        width: 140px;

        margin: 24px auto;
    }

    .maintenance-description {
        font-size: 13px;

        line-height: 1.7;
    }

    .maintenance-soon {
        font-size: 16px;
    }

    .maintenance-contact {
        margin-top: 28px;

        padding-top: 22px;
    }

    .maintenance-contact p {
        font-size: 11px;
    }

    .maintenance-contact a {
        font-size: 12px;
    }

}


/* ========================= */
/* PETITS MOBILES */
/* ========================= */

@media (max-width: 360px) {

    .maintenance-page {
        padding: 10px;
    }

    .maintenance-content {
        padding: 30px 15px 34px;
    }

    .maintenance-content h1 {
        font-size: 25px;
    }

    .maintenance-description {
        font-size: 12px;
    }

}