@import url('https://fonts.googleapis.com/css2?family=Bentham&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');

/* grille Bootstrap */
*,
*::before,
*::after {
    box-sizing: border-box;
}
/* grille Bootstrap */

/* PARTIE GENERALE */

body {
    margin: 0;
    padding: 0;
    background-image: url('../images/bg/magasin2.jpg') ;
    background-repeat: no-repeat;
    background-size: cover;

}

.fond_blanc {
    background-color: white;
}

.barre_nav, .footer_site {
    padding: 1rem;
    background-color: black;
    color: white;
}

.footer_site span {
    font-size: 1.4em;
}

.footer_site a {
    color: white;
    text-decoration: none;
    font-family: "DM Sans", "sans-serif";
    transition: color 0.5s;
}

.footer_site a:hover {
    color: #d49f8c;
}

i {
    background-color: white;
    border-radius: 20px;
}

nav {
    padding: 2%;
}

a, h1, h2, legend {
    text-decoration: none;
    font-family: "Bentham", "sans-serif";
}

div, p, table {
    font-family: "DM Sans", "sans-serif";
}

.btn_menu {
    font-size: 2em;
    text-align: center;
    transition: color 0.5s;
}

.btn_menu span{
    color: white;
    transition: color 0.5s;
}

.btn_menu span:hover {
    color: #d49f8c;
}

/* PARTIE ACCUEIL */

.photo_boite {
    background-size: contain;
    background-repeat: no-repeat;
    width: 55%;
    height: 29.7em;
    border-radius: 20px;
}

#artisant {
    background-image: url('../images/accueil/artisant_petit.jpg') ;
    margin-left: auto;
    transform: translateX(0px);
    transition : transform 1s linear 0s;
}

#artisant:hover {
    transform: translateX(-585px);
}

#sourire {
    background-image: url('../images/accueil/homme_sourire.jpg') ;
    transform: translateX(0px);
    transition : transform 1s linear 0s;
}

#sourire:hover {
    transform: translateX(585px);
}

h2 {
    text-align: center;
    margin-top: 2.3em;
}

#curseur {
    height: 34px;
    width: 20px;
    animation: CurseurRectangle 5s linear infinite;
}

/* PARTIE SHOP */

h1 {
    font-size: 2.5em;
}

[class*="product-"] {
    text-align: center;
    padding: 0.3em;
}

.product-img img {
    width: 500px;
    height: 281px;
    border: 3px solid black;
    border-radius: 15px;
    transform: scale(1);
    transition : transform 0.3s
}

.product-img img:hover {
    transform: scale(1.05);
}

.btn_produit {
    border: none;
    background: none;
    padding: 0;
}

[class*="product-"] > span {
    font-size: 1.1em;
}

.product {
    border: 3px solid black;
    border-radius: 10px;
    margin-bottom: 10px;
    background-color: #fcf5f2;
}

.product-name {
    font-weight: bold;
}

.product-price {
    font-size: 2em;
    color: #ff4c4c;
}

.product-tags {
    font-style: italic;
}

.ajouter_panier {
    background-color: red;
    border: none;
    padding: 0.7em;
    border-radius: 10px;
    color: white;
    transition: background-color 0.2s;
}

.ajouter_panier:hover {
    background-color: darkred;
}

/* PARTIE CONTACT */

fieldset {
    background-color: #fcf5f2;
}

legend {
    text-align: center;
    font-size: 1.5em;
}

.bouton {
    font-size: 1.2em;
    font-family: "DM Sans", "sans-serif";
    cursor: pointer;
}

/* PARTIE PANIER */

.btn_panier {
    margin-top: 20px;
}

table {
    background-color: #fcf5f2;;
    border-collapse: collapse;
}

th, td {
    text-align: center;
    font-size: large;
    border-bottom: 1px solid black;
}

td img {
    width: 400px;
    height: 225px;
}

thead, tfoot {
    border: 1px solid black;
    font-weight: bold;
    background-color: #f2e6e1;
}

/* PARTIE PAGE PRODUITS */

#champ_avis {
    background-color: #fcf5f2;
    padding-bottom: 5em;
    border-radius: 10px;
    margin-bottom: 20px;
    border: 1px solid black;
    font-style: italic;
}


@keyframes CurseurRectangle {
    0% {
        top: 0;
        left: 0;
    }
    25% {
        top: 0;
        left: 80em;
        transform: translateX(80em);
    }
    50% {
        top: 6em;
        left:80em;
        transform: translate(80em, -6em);
    }
    75% {
        top: 6em;
        left: 0;
        transform: translateY(-6em);
    }
    100% {
        top: 0;
        left: 0;
    }
}