* {
    margin: 0;
    padding: 0;
}

body {
    background-color: #333;
    font-family: TT-Octosquares-Trial-Bold;
}

.page {
    display: flex;
}

@font-face {
    font-family: ethnocentric-rg-it;
    src: url(Font/ethnocentric-rg-it.woff);
    font-weight: bold;
}

@font-face {
    font-family: Dune_Rise_1;
    src: url(Font/Dune_Rise_1.woff);
    font-weight: bold;
}

@font-face {
    font-family: TT-Octosquares-Trial-Bold;
    src: url(Font/TT-Octosquares-Trial-Bold.woff);
    font-weight: bold;
}

/*********BARRE DE NAVIGATION*****/

.navbar {
    background-color: #333;
    color: #fff;
    width: 100%;
    z-index: 1000;
    border-bottom: #26caf8 solid 5px;
    margin-bottom: 10px;
}

.container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px;
    font-size: large;
    text-align: center;
    font-family: Dune_Rise_1;
}

.container a {
    list-style-type: none;
    text-decoration: none;
    color: #fff;
    margin: 0;
    padding: 0;
    display: flex;
}

.container .logo {
    font-family: ethnocentric-rg-it;
    font-size:xx-large;
}

nav ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
}

nav ul li {
    margin: 0 10px;
}


nav ul li a {
    text-decoration: none;
    color: #fff;
    transition: 0.1s ease;
}

nav ul li a:hover {
    color: #27d86c;
    border: #27d86c solid 2px;
    border-radius: 5px;
    padding-top: 5px;
    padding-left: 2px;
    padding-right: 2px;
    box-shadow: 10px 5px 5px rgba(39, 216, 108, .50);
}

.content {
    padding-top: 50px;
    padding-left: 20px;
    padding-right: 20px;
}

/***********EXPLICATIONS GENRES*************/

.dropdown-expli{
    min-width: 50em;
    position: relative;
    margin: 2em;
    
}

.dropdown-expli *{
    box-sizing: border-box;
}

.select-expli {
    background: #333;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 3px black solid;
    border-radius: 0.5em;
    padding: 1em;
    cursor: pointer;
    transition: background 0.3s;
    transition: 0.3s ease;
}

.select-clicked-expli{
    border: 2px rebeccapurple solid;
    box-shadow: 0 0 0.8em rebeccapurple;
}

select-expli:hover {
    background: #323741;
}

.caret-expli{
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #fff;
    transition: 0.3s;
}

.caret-rotate-expli {
    transform: rotate(180deg);
}

.menu-expli{
 list-style: none;
    padding: 0.2rem 0.5rem;
    background: #323741;
    border: 3px #363a43 solid;
    box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.2);
    border-radius: 0.5em;
    color: #9fa5b5;
    position: absolute;
    top: 100%; /* Modifier cette ligne */
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    opacity: 0;
    display: none;
    transition: 0.2s;
    z-index: 1;
}

.menu-expli li{
    padding: 0.7em 0.5em;
    margin: 0.5em 0;
    border-radius: 0.5em;
    cursor: pointer;
}

.menu-expli li:hover{
    background: #2a2d35;
}

.active{
    background: #23242a;
}

.menu-open-expli {
    display: block;
    opacity: 1;
}

.select-expli:hover{
    border: rgb(38, 202, 248) solid 3px;
}

.page-expli li:hover {
    border: rgb(38, 202, 248) solid 1px;
}


/*********COLONNE FILTRES*********/

.left-column {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: fit-content;


    border:#000 solid 5px;
    background-color: #fff;
    margin: 0 5px 0 5px;
    padding-top: 20px;
    text-align: center;
}

.sep{
    width: 80%; 
    border: #000 solid 2px;
    margin: 10px;
}

.left-column h2{
    margin: 5px;
}

/***barre de recherche***/

.search{
    width: max-content;
    display: flex;
    align-items: center;
    padding: 14px;
    border: #000 solid 3px;
    border-radius: 0.5em;
    background: #333;
    transition: 0.3s ease;
    margin: 5px;
    }
    

.champ-recherche{
        margin-left: 14px;
        outline: none;
        border: none;
        background: none;
        color: #ffffff
    }
    
.search-input::placeholder {
        color: rgba(0, 0, 0, 0.25);
    }

input {
    font-family: TT-Octosquares-Trial-Bold;
    font-size: medium;
}

.search:hover {
    border: rgb(38, 202, 248) solid 3px;
}

button {
    font-family: TT-Octosquares-Trial-Bold;
    background: transparent;
    border: rgb(0, 0, 0) solid 3px;
    color: rgb(255, 255, 255);
    margin-top: 10px;
    /* Ajout de marge en haut */
    padding: 10px 20px;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    font-size: 1.5rem;
    transition: all .2s;
    z-index: 2;
    
}

button::after {
    content: "";
    width: 400px;
    height: 400px;
    background: linear-gradient(225deg, #27d86c 0%, #26caf8 50%, #c625d0 100%);
    position: absolute;
    top: -25px;
    left: -120px;
    z-index: -1;
    transition: all .5s;
}

button:hover::after {
    transform: rotate(150deg);
}

button:hover {
    transform: translate(0, -6px);
    box-shadow: 10px -10px 25px 0 rgba(143, 64, 248, .50), -10px 10px 25px 0 rgba(39, 200, 255, .50);
}


/***filtre***/

.dropdown{
    min-width: 15em;
    position: relative;
    margin: 2em;
    
}

.dropdown *{
    box-sizing: border-box;
}

.select {
    background: #333;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 3px black solid;
    border-radius: 0.5em;
    padding: 1em;
    cursor: pointer;
    transition: background 0.3s;
    transition: 0.3s ease;
}

.select-clicked{
    border: 2px rebeccapurple solid;
    box-shadow: 0 0 0.8em rebeccapurple;
}

select:hover {
    background: #323741;
}

.caret{
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #fff;
    transition: 0.3s;
}

.caret-rotate {
    transform: rotate(180deg);
}

.menu{
    list-style: none;
    padding: 0.2rem 0.5rem;
    background: #323741;
    border: 3px #363a43 solid;
    box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.2);
    border-radius: 0.5em;
    color: #9fa5b5;
    position: absolute;
    top: 3em;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    opacity: 0;
    display: none;
    transition: 0.2s;
    z-index: 1;
}

.menu li{
    padding: 0.7em 0.5em;
    margin: 0.5em 0;
    border-radius: 0.5em;
    cursor: pointer;
}

.menu li:hover{
    background: #2a2d35;
}

.active{
    background: #23242a;
}

.menu-open {
    display: block;
    opacity: 1;
}

.select:hover{
    border: rgb(38, 202, 248) solid 3px;
}

.page li:hover {
    border: rgb(38, 202, 248) solid 1px;
}

/**********************DESCRIPTION************************/

details {
    font-family: TT-Octosquares-Trial-Bold;
    width: 90%;
    background: white;
    border: rgb(0, 0, 0) solid 3px;
    color: rgb(0, 0, 0);
    margin: 0 auto;
    padding: 10px 20px;

    position: relative;
    overflow: hidden;
    border-radius: 20px;
    font-size: 1.5rem;
    transition: all .2s;
    z-index: 2;

}

details[open]::after {
    opacity: 0;
}

details::after {
    content: "";
    width: 2100px;
    height: 2100px;
    background: linear-gradient(225deg, #27d86c 0%, #26caf8 50%, #c625d0 100%);
    position: absolute;
    top: -410px;
    left: -210px;
    z-index: -1;
    transition: all .5s;
}

details:hover::after {
    transform: rotate(150deg);
}

details:hover {
    transform: translate(0, -6px);
    box-shadow: 10px -10px 25px 0 rgba(143, 64, 248, .50), -10px 10px 25px 0 rgba(39, 200, 255, .50);
}

.warning{
    width: 90%;
    font-size: x-large;
    margin: 0 auto;
    padding: 2% 0 3% 0;
}
    
.warning .sep{
    width: 80%; 
    border: #000000 solid 2px;
    margin: 0 auto;
}

.warning p{
    margin-bottom: 1%;
}

details p{
    width: 90%;
    font-size: medium;
    margin: 0 auto;
    padding-bottom: 1%;
}

/*Verion responsive
details {
    font-family: TT-Octosquares-Trial-Bold;
    width: 90%;
    background: transparent;
    border: rgb(0, 0, 0) solid 3px;
    color: rgb(255, 255, 255);
    margin: 0 auto;
    padding: 10px 20px;

    position: relative;
    overflow: hidden;
    border-radius: 20px;
    font-size: 1.5rem;
    transition: all .2s;
    z-index: 2;
}

details[open]::after {
    opacity: 0;
}

details::after {
    content: "";
    width: 1100px;
    height: 1100px;
    background: linear-gradient(225deg, #27d86c 0%, #26caf8 50%, #c625d0 100%);
    position: absolute;
    top: -210px;
    left: -110px;
    z-index: -1;
    transition: all .5s;
}

details:hover::after {
    transform: rotate(150deg);
}

details:hover {
    transform: translate(0, -6px);
    box-shadow: 10px -10px 25px 0 rgba(143, 64, 248, .50), -10px 10px 25px 0 rgba(39, 200, 255, .50);
}
*/


/**********************CARTES************************/


.scroller {
    position: relative;
    width: auto;
    height: 55vh;
    overflow-y: scroll;
    scrollbar-width: thin;
    border-bottom: #000 solid 5px;
    border-top: #000 solid 5px; 
    border-left: #000 solid 5px; 
    margin-top: 3%;
    background-image: url(images/AccueilBlur.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}


a{
    text-decoration: none;
    color: black;
}

ul a{
    color: white;
}

.title-column{
    display:flex;
    flex-direction: column;
    text-align: center;
    margin-top: 20px;
    width: 100%;
}

.title-column h1{
color: white;
margin-bottom: 3%;
}


.right-column {
    display: flex;
}


.comments .heading_container {
    margin-bottom: 30px;
}

.comments .box {
    display: flex;
    flex-direction: column;
    margin: 15px;
}

.comments .img-box {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 220px;
    margin-bottom: -40px;
    margin-left: 25px;
    z-index: 5;
}

.comments .img-box img {
    border-radius: 100%;
    border: #000 solid 5px;
}

.comments .client_id {
    display: flex;
    justify-content: space-between;
}

.comments .client_info h6 {
    font-weight: 600;
    margin-bottom: 5px;
}

.comments .client_info p {
    margin-bottom: 10px;
    font-size: 14px;
    /* Taille de police unique */
}

.comments .detail-box {
    background-color: #fff;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
    padding: 75px 25px 25px 25px;
}

.comments .detail-box i {
    color: #00204a;
    margin-bottom: 10px;
}

.comments .owl-carousel .owl-nav {
    display: flex;
    justify-content: center;
    margin-top: 45px;
}

.comments .owl-carousel .owl-nav .owl-prev,
.comments .owl-carousel .owl-nav .owl-next {
    width: 55px;
    height: 55px;
    background-color: #fff;
    color: #000;
    outline: none;
    font-size: 24px;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
}

.comments .owl-carousel .owl-nav .owl-prev:hover,
.comments .owl-carousel .owl-nav .owl-next:hover {
    color: #00204a;
}


.comments .container {
    width: 80%;
    max-width: 1200px;
}

.carousel-wrap {
    display: flex;
    justify-content: center;
}

.client_owl-carousel {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 55px;
    margin-top: 50px;
}

.item {
    width: 300px;
    margin: 15px;
}

.card{
    display: grid;
    grid-template-columns: 400px;
    grid-template-rows: 180px 180px 70px;
    grid-template-areas: "image" "text" "stats";

    border: 5px solid black;
    border-radius: 18px;
    background-color: rgb(255, 255, 255);
    box-shadow: 5px 5px 15px rgb(0, 0, 0, 0.9);
    text-align: center;

    transition: 0.5s ease;
    cursor: pointer;

    transform-style: preserve-3d;
    perspective: 1000px;
    height: 60%;

    margin-bottom: 55px;
}


.card-image1{
    grid-area: image;
    border-bottom: 5px solid black;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    background-image: url(images/cosmo-canyon.jpg);
    background-size: cover;
}

.card-image2{
    grid-area: image;
    border-bottom: 5px solid black;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    background-image: url(images/re8-castle.jpg);
    background-size: cover;
}


.card-image3{
    grid-area: image;
    border-bottom: 5px solid black;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    background-image: url(images/heaven-mount.jpg);
    background-size: cover;
}


.card-image4{
    grid-area: image;
    border-bottom: 5px solid black;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    background-image: url(images/true-lab.jpg);
    background-size: cover;
}


.card-image5{
    grid-area: image;
    border-bottom: 5px solid black;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    background-image: url(images/hyrule-castle.jpg);
    background-size: cover;
}


.card-text{
    grid-area: text ;
    margin: 15px;
    transform: translateZ(30px);
    overflow: hidden;
}

.card-text .date{
    color: #c625d0;
    font-size: 1rem;
}

.comment1{
    color: grey;
    font-size: 0.7rem;
    font-weight: 400px;
}

.comment2{
    color: grey;
    font-size: 0.9rem;
    font-weight: 400px;
}

.comment3{
    color: grey;
    font-size: 0.9rem;
    font-weight: 400px;
}

.comment4{
    color: grey;
    font-size: 0.9rem;
    font-weight: 400px;
}

.comment5{
    color: grey;
    font-size: 0.9rem;
    font-weight: 400px;
}

.card-text h2{
    margin-top: 0px;
    font-size: 1.2rem;
}

.card-stats{
    grid-area: stats;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    border-top: 5px solid black;
    border-bottom-left-radius: 13px;
    border-bottom-right-radius: 13px;
    background: linear-gradient(to right, #c625d0, #26caf8, #27d86c);
}

.card-stats .stat{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding-top: 0px;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-right: 5px;
    color: white;
    transform: translateZ(30px);
}

.card-stats .type{
    font-size: 0.8rem;
    font-weight: 300px;
    text-transform: uppercase;
    transform: translateZ(30px);
}

.card-stats .value{
    font-size: 1rem;
    transform: translateZ(30px);
}

.card-stats .value sup{
    font-size: 1rem;
}

.card:hover{
    transform: scale(1.2);
    box-shadow: 5px 5px 15px rgb(0, 0, 0, 0.6);

}

/*********BAS DE PAGE*****/


footer {
    display: flex;
    flex-direction: column;
}

footer a{
    color: #000;
    text-decoration: none;
}

footer a:hover{
    text-decoration: underline;
}

.foot-container {
    background-color: #ccc;
    border: #000 solid 5px;
    display: flex;
    justify-content: space-around;

}

.contacts h1 {
    font-family: ethnocentric-rg-it;
    font-size: x-large;
    color: #000;
}

.contacts,
.events,
.Category,
.About {
    flex: 1;
    max-width: 300px;
    padding: 10px;
}

.contacts,
.events,
.Category {
    margin-right: 10px;
    border-right: #000 solid 5px;
    text-align: left;
}


@media (width <=910px) {

    .container li {
     font-size: 1rem;        
    }

    .container .logo{
        display: none;
    }
    .reservation {
        gap: 20px;
    }

}


/*************************************************************/

@media (width <=1039px) {

    .page {
        display: flex;
        flex-direction: column;
    }

    .left-column {
        display: flex;
        flex-direction: column;
        width: 100%;
    
    
        border:#000 solid 5px;
        background-color: #fff;
        margin: 0 5px 0 5px;
        padding-top: 20px;
    }

}

