*{
    overflow: auto;
}

body{
    background-color: #8ba1bb;
    font-family: Arial;
    margin: 0;
}

/* CATEGORIE*/
p.categorie{
    background-color: black;
    color: white;
    display: inline-block;
    margin-top: -15px;
    margin-bottom: 0;
    padding: 8px 18px;
    font-weight: bold;
    font-size: 16px;
}
div.categorie{
    margin-top: 0px;
    margin-bottom: 0px;
    overflow: visible;
}

/* CONTENU */
div.contenu{
    background-color: white;
    margin: 40px 8px 40px 8px;
    padding: 0 8px 20px 8px;
    box-shadow: 0 0 8px 8px rgba(0, 0, 0, 0.1); /* droite/gauche(offset x), haut/bas(offset y), blur-radius, spread-radius puis color */
    overflow: visible;
}
h1{
    text-align: center;
    margin: 11px 0; /*11 en haut/bas et 0 sur droite/gauche*/
}
p.description{
    text-align: center;
    max-width: 400px;
    display: inline-block;
    font-size: 14px;
}
.centre{
    text-align: center;
    width: 100%;
}
div.separateur{
    height: 1px;
    width: 100px;
    background-color: black;
    margin: 0 auto; /*0 en haut/bas et auto(centre) sur droite/gauche*/
}

/* INFOS */
div.infos{
    position: relative;
}
table.infos{
    position: absolute;
    bottom: 0;
    width: 100%;
    color: white;
    background-color: #6c829dC0; /* pour ajouter de l'opacité à une couleur hexa-décimale, on ajoute 2 charactères qui représente l'alpha. ici C0 = un peu opaque (envion 70%) */
    height: 50px;
}
table.infos td{
    text-align: center;
    font-size: 12px;
    vertical-align: top;
}
table.infos th{
    font-size: 14px;
    vertical-align: bottom;
    padding-bottom: 8px;
}
img.infos{
    display: block;
    max-height: 400px;
    object-fit: cover;
    min-height: 200px;
    background-color: lightgrey;
}

/* INGREDIENTS ET PREPARATION */
div.colonne{
    width: 100%;
    margin-top: 20px;
}
div.colonne h2{
    text-align: center;
    text-transform: uppercase;
    font-size: 15px;
    border-bottom: 5px solid #6c829d;
    padding-bottom: 5px;
}

div.colonne1{
    display: inline-block;
}

div.ingredients p{
    text-align: center;
    border: 1px solid lightgrey;
    margin: 4px 0;
    padding: 8px 0;
    font-size: 14px;

}
table.preparation p.numero{
    background-color: #6c829d;
    color: white;
    text-align: center;
    width: 25px;
    height: 25px;
    font-size: 14px;
    font-weight: bold;
    padding: 4px;
    box-sizing: border-box;
    border-radius: 50%;
    margin: 0;
}
table.preparation td{
    vertical-align: top;
}
table.preparation td.preparation-etape{
    font-size: 14px;
    padding-left: 10px;
    padding-bottom: 10px;
}
table.preparation tr{
    height: 40px;
}

/* STYLE POUR ORDINATEUR */
@media only screen and (min-width: 768px) {
    div.contenu{
        margin: 60px 10% 80px 10%;
        padding: 0 30px 30px 30px;
        min-width: 350px;
    }

    /* INFOS */
    table.infos{
        height: 80px;
    }
    table.infos td{
        font-size: 14px;
    }
    table.infos th{
        font-size: 16px;
    }

    /* INGREDIENTS ET PREPARATION */
    div.colonne{
        width: 45%;
    }  
    div.colonne1{
        margin-right: 10%;
    }
    
    div.colonne2{
        float: right;
    }
}

/* POUR GRAND ECRANS */
@media only screen and (min-width: 900px) {
    div.contenu{
        margin-left: auto;
        margin-right: auto;
        width: 645px;
    }
}