.container_img_mobile {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh; 
    overflow: hidden;
  }

  .container_img_mobile img {
    object-fit: cover;
    height: 100%;
    width: 100%;
  }

.form-element-error {
    color: red;
    font-size: 0.8rem;
}

.wrapper {
    padding: 150px 12px 0 12px;
}

.img-thumb {
    height: 3rem;
}

.inbox-widget .inbox-item .inbox-item-img img {
    width: 40px;
    height: 40px;
}

.bg-white {
    background-color: white;
}

.bg-white .desc_title {
    color: #060e0e;
}

.grey .title_1, .grey .title_2, .service_label, .controller_text {
    color: #060e0e;
}

.menu_controller, #scroll_down, #menu_side {
    display: none;
}

.paragraph_normal {
    /*margin-top: 3.5vw;*/
    /*margin-bottom: 7.5vw;*/
    /*margin-left: 6.5vw;*/
    /*margin-right: 6.5vw;*/
    padding: 30px 80px 50px 80px;
}

@keyframes jumpInfinite {
  0% {
    margin-top: 0;
  }
  50% {
    margin-top: 20px;
  }
  100% {
    margin-top: 0;
  }
}

@media (max-width: 960px) {
	.cta.full_pic.no_overflow,
    .row.stripe>a,
    .row.stripe>p{
        margin-left: 20px;
        overflow: visible;
    }
    .row.stripe>a img{
        margin-left: -20px;
    }


    .paragraph_normal {
        /*margin-top: 3.5vw;*/
        /*margin-bottom: 7.5vw;*/
        /*margin-left: 2.5vw;*/
        /*margin-right: 7.5vw;*/
        padding: 20px 10px;
        padding-bottom: 40px;
    }

	.down-arrow {
	  position: absolute;
	  top: calc(82%);
      left: calc(49%);
	  width: 0;
	  height: 30px;
	  border: 2px solid;
	  border-radius: 2px;
      animation: jumpInfinite 1.5s infinite;
	}

	.down-arrow:after {
	  content: " ";
	  position: absolute;
	  top: 12px;
	  left: -10px;
	  width: 16px;
	  height: 16px;
	  border-bottom: 4px solid;
	  border-right: 4px solid;
	  border-radius: 4px;
	  transform: rotateZ(45deg);
	}


}

.logo_mobile_text {
    transform: rotate(-90deg) translateX(-60px);
    white-space: nowrap;
    font-family: 'De Valencia', sans-serif, monospace;
    font-size: 24px;
}

.language_selector {
    margin: 0;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: rotateZ(-90deg) translateY(-50%);
    font-size: 15px;
}


#side_mobile .book_now {
    color: white;
    white-space: nowrap;
}


/* Language selector */
.lang_selector{
    padding-left: 2px;
    margin-bottom: 26px;
}



.lang_selector.desktop {
    padding: 16px;
    display: flex;
    justify-content: flex-end;
    overflow: hidden; /* Ensure no horizontal overflow causes wrapping */
}

.lang_selector.desktop a {
    margin-left: 5px; 
    z-index: 100;
}

.lang_selector.desktop a:hover img{
    opacity: 0.8;
}



.lang_menu--url img{
    width: 35px;
}

/* animated line button */
.button__transition{
    transition: background 0.3s, 
                border 0.3s, 
                border-radius 0.3s, 
                box-shadow 0.3s,
                transform var(--e-transform-transition-duration, 400ms);

                animation-name: bounceInDown;
}

@media (max-width: 960px){
    .button_container{
        width: 100%;
        display: block;
        text-align: center;
    }
}


.button_container {
  top: -50px; /* Set an initial position above the page */
  transition: top 0.3s ease-in-out;
}

.button_container.show {
  top: 0;
}

.button__transition {
  display: inline;
}





#scroll-container {
    position: relative;
    height: 0vh; /* Adjust the height based on your content */
/*    top: -84px;*/

    margin-top: -120px;
    margin-bottom: 40px;
}

.button_container {
    position: relative;
    top: -50px; /* Adjust the initial position above the page */
    left: 50%; /* Adjust the left position based on your design */
    left: 90px;
    transform: translateX(-50%);
    opacity: 0; /* Start with opacity 0 */
}

.button_container.show {
    top: 60px; /* Adjust the final position at the top of the page */
    bottom: 50px; /* Adjust the final position at the top of the page */
    opacity: 1; /* Start with opacity 1 when shown */
    animation: bounceDown 4s ease; /* Add bounce animation */
}

@keyframes bounceDown {
    0% {
        top: 0px;
        opacity: 0; /* Start with opacity 0 for a fade-in effect */
    }
    20%, 50%, 80%, 100% {
        top: 60px;
        opacity: 1; /* Fade in during the animation */
    }
    40% {
        top: 35px;
    }
    60% {
        top: 45px;
    }
}


/* Center the button horizontally on mobile */
@media (max-width: 960px) {
    #scroll-container{
        margin-top: -89px;
        margin-bottom: 55px;
    }
    .button_container{
        left: 50%;
    }
}






/* video container */
#video .iframe_fix{
    width: 100%;
    aspect-ratio: 16 / 9;
}

#video .iframe_fix iframe{
    height: 96%;
}

@media (max-width: 960px){
    
    #video .iframe_fix iframe{
        height: 100%;
    }   
}
	
@media (max-width: 960px) {
    #side_mobile .book_now {
        transform: rotateZ(-90deg) translateX(100px) translateY(-1px);
        width: 125px;
        font-size: 15px;
		font-family: Geometria;
    }
}

.book_now_top {

    left: 48%;

}


.logo .logo-lg-text-light {
    font-weight: 400;
    font-size: 18px;
}




@media (max-width: 960px) {
    #understated_pic {
        margin-bottom: 2rem;
    }

    .lang_selector.desktop {
        display: none;
    }
}

.row.stripe .full_pic img {
    width: 100vw !important;
}

#right_panel {
    right: 0;
}


#side_mobile {

    min-height: 500px;
}




.container_line_button {
  position: relative;
  height: 300px; /* Adjust height as needed */
}

.animated-line-button {
  position: absolute;
  top: -100px; /* Initial position above screen */
  left: 50%; /* Center horizontally */
  transform: translateX(-50%);
  animation: bounce 2s ease infinite;
}

@keyframes bounce {
  0%, 100% {
    transform: translateY(-100px); /* Bounce up and down */
  }
  50% {
    transform: translateY(50px); /* Bounce down */
  }
}

.animated-line-button img {
  display: block;
  width: 100px; /* Adjust width and height as needed */
  height: 100px;
}

video {
  width: 100% !important;
  height: auto !important;
}

.link_blue {
  color: #00FFFF !important;
}

/* General mobile */
@media (max-width: 960px){
    #concept{
        scroll-margin-top: 50px;        
    }
}


#price-list {
	padding: 0 30px 30px 30px;
    background-color: #000; /* Black background au lieu de #fff; */ 
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin: 0 auto 20px;
    max-width: 900px;
}

.section-title {
    font-size: 24px;
    text-align: center;
    margin-bottom: 20px;
    color: #d4a017; /* Gold accent color */
    text-transform: uppercase;
}

.category-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
	text-transform: uppercase;
    margin-bottom: 10px;
    color: #d4a017; /*#000;*/ /*#333;*/
    border-bottom: 2px solid #d4a017;
    padding-bottom: 5px;
}

.price-table {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 20px;
    border-collapse: collapse;
    table-layout: auto;
    background-color: #000; /* Black background for the table */
}

.price-table thead {
    background-color: #000; /*#f5f5f5;*/
}

.price-table th, .price-table td {
    border: 1px solid #ddd;
    padding: 12px 8px;
    font-size: 14px;
    text-align: left;
    color: #fff; /* White text for readability */
}

.price-table th {
    font-weight: bold;
    color: #d4a017; /* Gold text for headers */
    text-transform: uppercase;
}

.price-table tr {
    background-color: #000; /* Ensure all rows have a black background */
}

.price-table tr:hover {
    background-color: #222; /* Slightly lighter black for hover effect */
}

.price-table td:last-child {
    text-align: left;
    /*font-weight: bold;*/
}
