/*
Theme Name: WpRentals Child theme
Theme URI: http://themeforest.net/user/wpestate
Description: Ultimate WordPress Theme created by WpEstate for accommodation booking. WpRentals is clean, flexible, fully responsive and retina Ready. Its smart settings allow you to build outstanding renting websites easily and fast.
Version: 2.7
Author: wpestate.org
Author URI: http://themeforest.net/user/annapx
Tags: white, one-column, two-columns,left-sidebar, right-sidebar, fluid-layout , custom-menu, theme-options, translation-ready
License: GNU General Public License v2.0
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: wprentals

-------------------------------------------------------------- */


@import url('https://fonts.googleapis.com/css2?family=Sacramento&display=swap');

@font-face {
font-family: 'Pouler';
src: url('https://www.villaalbertine.com/wp-content/uploads/fonts/Pouler.woff2') format('woff2'),
url('https://www.villaalbertine.com/wp-content/uploads/fonts/Pouler.woff') format('woff');
font-weight: normal;
font-style: normal;
}

@font-face {
font-family: 'Just Breathe';
src: url('https://www.villaalbertine.com/wp-content/uploads/fonts/Just_Breathe.woff2') format('woff2'),
url('https://www.villaalbertine.com/wp-content/uploads/fonts/Just_Breathe.woff') format('woff');
font-weight: normal;
font-style: normal;
}


figure.tpstyle-14 .tpstyle-14-author{

    margin-top: -66px !important;
}




.tpstyle-14-info{
	min-height: 220px !important;
    background-color: transparent !important;
    border: 1px solid #8A5139 !important;
}

.read_more_testimonial{
	position: absolute;
    right: 55px;
    top: 38%;
    border: 1px solid;
    padding: 0 8px 2px 8px;
    border-radius: 9px;
    color: #8A5139;
}

.d-none {
  display: unset !important;
} 

.calendar-legend-past {
  background-color: #F7E8DD !important;
}

figure.tpstyle-14 .tpstyle-14-author h3, figure.tpstyle-15 .tpstyle-15-author h3{
	    bottom: 30% !important;
}

.tpstyle-14-info .fab, .tpstyle-14-info .far{
	color: #8a5139;
}

.ex-social-account{
	position: absolute !important;
    left: 5% !important;
}

figure.tpstyle-14 .tpstyle-14-author h3, figure.tpstyle-14 .tpstyle-14-author h5, figure.tpstyle-15 .tpstyle-15-author h3, figure.tpstyle-15 .tpstyle-15-author h5{
	    left: 30% !important;
}

figure.tpstyle-14 .tpstyle-14-author h5{
	top: 32px !important;
}

.page-id-2328 .video-container{
	height: 621px !important;
}

figure.tpstyle-14 .custom-bg-circle, figure.tpstyle-15 .custom-bg-circle{
	right: auto !important;
    height: 60px !important;
    width: 60px !important;
}

.exp-lightbox-meta{
	display: none !important;
}

figure.tpstyle-14 p {
    color: #8a5139 !important;
}
    

.single-content p{	
	color : #000 !important;
}

#access ul.menu >li>a{
	font-size: 14px !important;
}
#access a{
	padding: 13px 13px !important;
}


.hover_type_3 .customnav #access .menu > li:hover>a, .hover_type_5 .customnav #access .menu > li:hover>a, .hover_type_6 .customnav #access .menu > li:hover>a {
	line-height: unset!important;
}

.hover_type_6 #access .menu > li:hover>a, #access .menu li:hover>a {
	color: #5D635E!important;
}

.page-id-73 .wpestate_testimonial_slider .item_testimonial_content{
	    width: 70%;
	    padding: 20px;
}

.wpestate_testimonial_slider button.slick-prev.slick-arrow, .wpestate_testimonial_slider button.slick-next.slick-arrow{
	background-color : #8A5139 !important;
}

.page-id-73 .wpestate_testimonial_slider .item_testimonial_title,.page-id-73 .wpestate_testimonial_slider .item_testimonial_text{
	margin-bottom: 10px;
}

.page-id-73 .wpestate_testimonial_slider .item_testimonial_name{
	color : #8A5139 !important;
	font-family: "Belleza", Sans-serif;
}

.page-id-73 .item_testimonal_image{
	    width: 30%;
}


/* .single-estate_property .category_details_wrapper{
	display: none;
} */

html {
	scroll-snap-type: y mandatory;
  }
  .link-1 {
	scroll-snap-align: start;
	height: 100vh;
  }





h3 {
  font-family: 'Philosopher', sans-serif!important;
}

.single-content li{
	font-size: 20px !important;
    font-weight: 300 !important;
    line-height: 25px !important;
	margin-top : 10px;
	margin-bottom : 10px;
    color: #000 !important;
}

.category_wrapper {
    padding-left: 25px;
}


.cost_row_instant{
	display : none;
}

#submit_booking_front_instant_wrap:after{
	display :none;
}

#submit_booking_front_instant:hover{
	color : #8a5139;
}

#booking_form_request .form-control{
	color : #8a5139;
	font-family: 'Roboto';
	font-size : 15px;
}

#booking_guest_no_wrapper .text_selection{
	text-transform : none;
	font-family: 'lato';
}

.cost_explanation , .cost_value {
	color : #e88c4d;
}

.invoice_reseration_fee_req, .depozit_show, .invoice_balance_owed, .balance_show{
	display : none;
}

.page-template-advanced_search_results .col-xs-12.col-md-4.widget-area-sidebar {
	display: none;
}

.page-template-advanced_search_results .col-md-8 {
	width: 100%;
}   

.page-template-advanced_search_results .property_unit_v2 {
	width: 33%!important;
}

#listing_description .panel-body{
	max-height : auto !important;
}

.daterangepicker {
    top: calc(50% - -463px)!important;
    left: calc(50% - 63px)!important;
}

/* loader css */ 

#loading-animation {

	margin-top: 30px;
	height:500PX;
	width: 100%;
	display: block;
  }
  
  #loading-animation.hidden {
	display: none ;
  
  }
  
  .loader {
	position: absolute;
	top: calc(50% - 32px);
	left: calc(50% - 32px);
	width: 64px;
	height: 64px;
	border-radius: 50%;
	perspective: 800px;
  }

.gallery-caption, .wp-caption-text{
		font-size: 7px;
    color: #9e9e9e9e;
    margin-top: -13px;
    text-align: center;
}
  
  
  .inner {
	position: absolute;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	border-radius: 50%;  
  }
  
  .inner.one {
	left: 0%;
	top: 0%;
	animation: rotate-one 1s linear infinite;
	border-bottom: 3px solid #000;
  }
  
  .inner.two {
	right: 0%;
	top: 0%;
	animation: rotate-two 1s linear infinite;
	border-right: 3px solid #000;
  }
  
  .inner.three {
	right: 0%;
	bottom: 0%;
	animation: rotate-three 1s linear infinite;
	border-top: 3px solid #000;
  }
  
  .blog-header{
	background-color: rgba(0, 0, 0, 0.5);
  }

  .home .master_header{
  	position: absolute;
  }

/* Fond transparent au départ, puis blanc au scroll avec transition douce */
.header_wrapper {
    transition: background-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out !important;
}

/* Notre classe personnalisée qui s'activera au scroll */
.header_wrapper.menu-scrolled {
    background-color: #f6eee3 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important; 
}

  .property_knowledge .list-none li {
    font-size: 14px !important;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400 !important;
}

#listing_description_content p {
  font-size: 16px !important;

}
  
   .property_knowledge .list-none li .fa,.property_knowledge .list-none li .fa-regular,.property_knowledge .list-none li .fa-solid{
   	margin-right: 10px;color: #8a5139;font-size: 15px;
   }
  
  @keyframes rotate-one {
	0% {
	  transform: rotateX(35deg) rotateY(-45deg) rotateZ(0deg);
	}
	100% {
	  transform: rotateX(35deg) rotateY(-45deg) rotateZ(360deg);
	}
  }
  
  @keyframes rotate-two {
	0% {
	  transform: rotateX(50deg) rotateY(10deg) rotateZ(0deg);
	}
	100% {
	  transform: rotateX(50deg) rotateY(10deg) rotateZ(360deg);
	}
  }
  
  @keyframes rotate-three {
	0% {
	  transform: rotateX(35deg) rotateY(55deg) rotateZ(0deg);
	}
	100% {
	  transform: rotateX(35deg) rotateY(55deg) rotateZ(360deg);
	}
  }
  
  /**************************************/
  
  .contact-list-text {
	margin-left: 15px;
	font-size: 15px;
	font-weight: 600;
	color: #333;
	font-family: 'Agrandir-Thin';
  }
  
  /* Blog CSS */

  #realisation {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
  }

.realisation:first-child { 
	border-top: 0px;
	margin-top: 15px;
  }
  
  #realisation .realisation {
	margin-top: 30px;
	margin-left: 20px;
	padding-top: 30px;
	width: 31%;
	
  }
  
  
  
  #realisation .realisation .realisation-content {
	margin-top: 15px;
	box-shadow: 0px 0px 11px -4px #0132B5;
	background-color: white;
	border-radius: 5px;
	height: 100%;
  }

  #realisation .realisation .realisation-content:hover {
	transform: scale(1.02);
	transition: 0.3s;
  }
  
   .realisation-content .realisation-images{ 
	display: flex;
	flex-wrap: wrap;
  
  }
  
   .realisation-images img {
	width: 32%;
	margin-left: 1.2%;
	margin-bottom: 15px;
	height: 300px!important;
    width: 100%;
  }

  .realisation-image img {
	object-fit: cover;
	height: 300px!important;
    width: 100%;
  }

  .realisation-header {
	padding: 15px 20px;
  }
  
   .realisation-content .realisation-text {
	width: 32%;
	margin-left: 1.2%;
	display: flex;
	align-self: center;
	flex-direction: column;
  }
  
  .realisation-content .realisation-text H2 { 
	font-size: 25px;
  }
  
  #filter-category {
	margin-left: 1.2%;
	display: flex;
	justify-content: center;
  }
  
  #filter-category:first-child {
	margin-left: 0;
  
  }
  
  .wp-spaios-slider .swiper-slide .wp-spaios-img-link .wp-spaios-slider-image {
	width: 550PX!important;
	height: 552px!important;
  }
  
  #filter-category a {
	background-color: #0132b5;
	border: 2px #0132b5 solid;
	color: white;
	font-size: 17px;
	margin-left: 1%;
	font-weight: 600;
	border-radius: 4px;
	padding: 5px 16px;
  }
  
  .swiper-slide.swiper-slide-active {
  overflow: hidden;
  }
  
  #filter-category a:hover {
	cursor: pointer;
	background-color: white;
	border: 2px #0132b5 solid;
	color: #0132b5;
  }
  
  .default.active {
	background-color: white!important;
	border: 2px #0132b5 solid!important;
	color: #0132b5!important;
  }
  
  .button-ateliers {
	text-align: center;
	margin-top: 30px;
  }
  
  .button-ateliers.flex {
	display: flex;
	justify-content: center;
  }
  
  .button-ateliers .notify {
	color: #EA434F;
	text-align: center;
	margin-bottom: 25px;
  }
  
  .button-ateliers a{
	background-color: #0132b5;
	border: 2px #0132b5 solid;
	color: white;
	font-size: 17px;
	margin-left: 2%;
	font-weight: 600;
	border-radius: 36px;
	padding: 8px 35px;
  }
  
  .button-ateliers.complet a{
	margin-left: 0;
  }
  
  /**************************************/
  
  
  #articles-content {
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* Crée trois colonnes de taille égale */
	grid-gap: 20px; /* Espacement entre les colonnes */
  }
  
  .article {
	background: #f9f9f9; /* Couleur de fond pour chaque article */
	padding: 20px; /* Padding à l'intérieur de chaque article */
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Ombre optionnelle pour chaque article */
  }
  

  
  .form-contact .submit-button-form {
	background-color: #0132B5!important;
	color: white!important;
	border: 1px solid #0132B5!important;
	WIDTH: 100%!important;
  }
  
  .form-contact .submit-button-form:hover {
	background-color: white!important ;
	color: #0132B5!important;
  }
  
  
  /* Media queries */
  
  @media screen and (max-width: 1240px) { 
	.faq-shape.elementor-shape.elementor-shape-bottom-header {
	  top: unset!important;
	  bottom: unset!important;
	  transform: rotate(0deg) translateY(-70px);
	}
  }
  
  @media screen and (max-width: 1192px) { 
	.ateliers_creatif-template-default .content .wrapper {
	  width: 100%;
	  margin: 40px 0;
	  padding: 0 30px;
  }


  
  .faq .flex {
	width: 100%;
  }
  
  .faq .presentation_artiste {
	margin-right: 15px;
  }
  }
  
  @media screen and (max-width: 960px) { 
	h1 {
	  font-size: 40px;
	}

	.single-estate_property #primary{
  	display: none !important;
  }

	figure.tpstyle-14 .tpstyle-14-author h3{
		font-size: 16px !important;
		left : 100px !important;
	}

	figure.tpstyle-14 .tpstyle-14-author h5{
		font-size: 12px !important;
		left : 100px !important;
	}
  
	#heading .title-page .title {
	  font-size: 38px !important;
	  line-height: 38px !important;
	  
	  font-family: 'Roboto' !important;
  }
  
  }
  
  @media screen and (max-width: 1100PX) { 
	.faq .col.background-white.presentation_artiste {
	  padding: 30px 23px;
	}
  
	.block_question {
	  width: 50%;
	}

	.daterangepicker {
		top: calc(50% - -780px)!important;
		left: calc(50% - 174PX)!important;
	}
  }
  
  @media screen and (max-width: 960px) {  
	.ateliers_creatif-template-default .flex {
	  flex-direction: column;
	}
  
	.ateliers_creatif-template-default .social-media .flex {
	  flex-direction: row;
	}
  
	.ateliers_creatif-template-default .flex .col{
	  width: 100%!important;
	  margin-bottom: 20px;
	}
  
	.ateliers_creatif-template-default .flex .col .wp-spaios-slider-wrap {
	  margin-top: 36px;
	}
  
	.faq .flex {
	  flex-direction: column;
	  padding: 0 30px;
	}
  
	.faq .bloc-question-creative {
	  flex-direction: column;
	}
  
	.block_question {
	  width: 336px;
	  HEIGHT: 423PX;
	  align-self: center;
	}
  
	.faq .img-qui {
	  margin-bottom: 45px;
	  width: 100%;
	  border-radius: 20px;
	  object-fit: cover;
	  height: 407px;
  }
   
  }
  
  .content_wrapper.row  {
	padding:0px!important;
  }
  
  /********************************/

/* Home page */

.ninja-form-contact label {
	font-family: 'Montserrat', sans-serif!important;
	font-size: 15px!important;
	font-weight: 400 !important;
}

.ninja-form-contact .nf-form-fields-required {
	display: none!important;
}

.ninja-form-contact .nf-field-element input,
.ninja-form-contact .nf-field-element textarea  {
	background-color: white!important;
	color: #8A5139!important;
	font-family: 'Montserrat', sans-serif!important;
	font-size: 15px!important;
}

.category_tagline.map_icon,
.category_tagline.actions_icon,
.property_unit_action {
	display: none!important;
}

.header_wrapper.customnav, .header_wrapper.header_type1.customnav .header_wrapper_inside, .header_wrapper.customnav.header_type2 .header_wrapper_inside, .header_wrapper.customnav.header_type2 .header_wrapper_inside, .header_wrapper.customnav.header_type2, .header_wrapper.customnav.header_type1, .header_wrapper.customnav.header_type2 .user_loged, .header_wrapper.customnav.header_type1 .user_loged {
	height: 75px!important;
}

.title-container .category_name {
	margin-top: 15px;
}


#view_more_desc {
	display: none!important;
}

.ninja-form-contact .field-wrap.submit-wrap.textbox-wrap input
{
	background-color: #8A5139!important;
	color: white!important;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;

}

.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
	display: none;
}

.home .daterangepicker {
    top: 35% !important;
    left: 35% !important;
} 

.elementor-element-d559fa5 .elementor-shape.elementor-shape-top {
	background-color: #F2D9D5;
}

#colophon .social_sidebar_internal a {
	background-color: #85756e!important;
}

.link-1::after {
	content: "";
    position: absolute;
    bottom: 0px;
    left: calc(50% - 350px);
    width: 700px;
    height: 300px;
    border-left: 3.5px dashed #8A5139;
    border-bottom: 3.5px dashed #8A5139;
    z-index: 0;
    transform: translate(34px, 106px);
}



.link-2::after {
	content: "";
    position: absolute;
    bottom: 0px;
    left: calc(50% - 350px);
    width: 700px;
    height: 300px;
    border-left: 3.5px dashed #8A5139;
    border-bottom: 3.5px dashed #8A5139;
    z-index: 0;
	transform: translate(-30px, 106px) rotateY(180deg);
}

.link-3::after {
	content: "";
    position: absolute;
    bottom: 0px;
    left: calc(50% - 350px);
    width: 700px;
    height: 300px;
    border-left: 3.5px dashed #8A5139;
    border-bottom: 3.5px dashed #8A5139;
    z-index: 0;
    transform: translate(34px, 106px);
}

.link-4::after {
	content: "";
    position: absolute;
    bottom: 0px;
    left: calc(50% - 350px);
    width: 700px;
    height: 300px;
    border-left: 3.5px dashed #8A5139;
    border-bottom: 3.5px dashed #8A5139;
    z-index: 0;
    transform: translate(-30px, 106px) rotateY(180deg);
}

.link-5::after {
	content: "";
    position: absolute;
    bottom: 0px;
    left: calc(50% - 350px);
    width: 700px;
    height: 300px;
    border-left: 3.5px dashed #8A5139;
    border-bottom: 3.5px dashed #8A5139;
    z-index: 0;
    transform: translate(34px, 82px);
}


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


  /* Media queries */

  @media screen and (max-width: 1024px) { 
	#realisation .realisation {
		width: 46%;
  }
}

  @media screen and (max-width: 768px) {

	.home .has_calendar.calendar_icon.padding-datepicker {
		width: 100%!important;
		margin-bottom: 10px!important;
		margin-left: 5px;
        margin-right: 5px;
	}

	.home .daterangepicker {
        top: 50px !important;
        left: 70px !important;
        position: fixed;
	}


	.link-1::after, .link-2::after, .link-3::after, .link-4::after, .link-5::after {
		display: none;
	}

	#realisation .realisation {
	  width: 100%;
	  margin-left: 0;
	}

	#filter-category {
		flex-direction: column;
	}


	#filter-category a {
		margin-left: 0;
		margin-bottom: 15px;
		text-align: center;
	}

	.estate_property-template-default .daterangepicker {
		left: 3%!important
	}

}
  
@media screen and (max-width: 568px) { 
	.home .daterangepicker {
        top: 50px !important;
        left: 17px !important;
        position: fixed;
    }
}


#search_locationshortcode_autointernal {
	display: none;
}


#check_in_shortcode, #check_out_shortcode {
	width: 100%!important;
	display: none;
}

.advanced_search_shortcode {
	border: 0px;
	background-color: #fff;
}

/* Form Container */
#booking-details-form {
    max-width: 600px;
    margin: 0 auto;
    background-color: #f9f9f9;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    font-family: Arial, sans-serif;
}

/* Form Heading */
#booking-details-form h4 {
    margin-bottom: 15px;
    font-size: 20px;
    color: #333;
    text-align: center;
}

/* Form Group */
#booking-details-form .guest,
#booking-details-form div {
    margin-bottom: 20px;
}

#booking-details-form .guest  {
    padding-bottom: 20px;
    border-bottom: 1px solid;
}

/* Labels */
#booking-details-form label {
    display: block;
    font-size: 14px;
    color: #666;
    margin-bottom: 5px;
}

/* Inputs and Selects */
#booking-details-form input[type="text"],
#booking-details-form input[type="date"],
#booking-details-form input[type="time"],
#booking-details-form input[type="number"],
#booking-details-form select,
#booking-details-form textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
    background-color: #fff;
    box-sizing: border-box;
    transition: border-color 0.3s ease;
}

/* Textarea */
#booking-details-form textarea {
    resize: vertical;
}

/* Input Focus State */
#booking-details-form input[type="text"]:focus,
#booking-details-form input[type="date"]:focus,
#booking-details-form input[type="time"]:focus,
#booking-details-form input[type="number"]:focus,
#booking-details-form select:focus,
#booking-details-form textarea:focus {
    border-color: #007cba;
    outline: none;
}

/* Checkbox Styles */
#booking-details-form input[type="checkbox"] {
    margin-right: 10px;
}

/* Submit Button */
#booking-details-form button[type="submit"] {
    width: 100%;
    padding: 12px 20px;
    background-color: #007cba;
    border: none;
    border-radius: 4px;
    color: #fff;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

/* Submit Button Hover State */
#booking-details-form button[type="submit"]:hover {
    background-color: #005a8e;
}

.form-confirmation {
    max-width: 600px;
    margin: 20px auto;
    padding: 20px;
    background-color: #e6f7e6;
    border: 1px solid #a3d4a3;
    color: #2f662f;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
}

/* Responsive Design */
@media (max-width: 768px) {
    #booking-details-form {
        padding: 15px;
    }
    #booking-details-form h4 {
        font-size: 18px;
    }
    #booking-details-form button[type="submit"] {
        font-size: 14px;
    }
}


/* Styles personnalisés pour Leaflet */

.leaflet-popup-content {
    font-family: 'Arial', sans-serif;
    color: #ffffff; /* Texte blanc pour contraste */
}

.custom-icon {
    border-radius: 50%;
    width: 20px !important;
    height: 20px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    font-size: 14px;
}

.custom-icon.red-marker {   
	width: 28px !important;
    height: 28px !important;
}

.gite-icon {
    background-color: #5D635E;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    font-size: 14px;
}

.leaflet-popup-content p {
	margin: 0!important;
	color: #924324;
}

.leaflet-popup-content {
	padding: 0!important;
}

.leaflet-popup-content .markertext-content {
	padding: 10px;
}

.leaflet-popup-content .markertext-content h3 {
	font-size: 20px;
	font-family: 'Caladea bold';
}

.custom-scrollbar {
    scrollbar-width: thin;
    scrollbar-color: #924324 #D5DBEF; /* Couleur de la barre de défilement et arrière-plan */
}

/* Pour les navigateurs Webkit comme Chrome, Safari et Opera */
.custom-scrollbar::-webkit-scrollbar {
    width: 8px; /* Largeur de la barre de défilement */
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #D5DBEF; /* Couleur de l'arrière-plan */
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background-color: #924324; /* Couleur de la barre de défilement */
    border-radius: 10px; /* Bord arrondi de la barre de défilement */
    border: 2px solid #D5DBEF; /* Bord autour de la barre de défilement */
}

.list-activite a {
	color: #924324!important;
}

.list-activite h3 {
	font-family: 'Caladea bold';
	margin-bottom: 10px;
}

.list-activite a:hover,
.list-activite a:hover h3,
.list-activite a:hover a {
	color: #D6DFD6!important;
}

#post-list .post-item.list-activite:last-child {
	margin-bottom: 30px!important;
}


.logo_footer {
  position: absolute;
  right: -40px;
  width: 250px;
  bottom: -184px;
}


.custom-scrollbar {
    scrollbar-width: thin;
    scrollbar-color: #924324 #D5DBEF; /* Couleur de la barre de défilement et arrière-plan */
}

/* Pour les navigateurs Webkit comme Chrome, Safari et Opera */
.custom-scrollbar::-webkit-scrollbar {
    width: 8px; /* Largeur de la barre de défilement */
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #D5DBEF; /* Couleur de l'arrière-plan */
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background-color: #924324; /* Couleur de la barre de défilement */
    border-radius: 10px; /* Bord arrondi de la barre de défilement */
    border: 2px solid #D5DBEF; /* Bord autour de la barre de défilement */
}

/* Styles pour le loader */
#loader img {
    width: 50px; /* Ajustez la taille de l'image si nécessaire */
}












.lds-roller,
.lds-roller div,
.lds-roller div:after {
  box-sizing: border-box;
}
.lds-roller {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}
.lds-roller div {
  animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  transform-origin: 40px 40px;
}
.lds-roller div:after {
  content: " ";
  display: block;
  position: absolute;
  width: 7.2px;
  height: 7.2px;
  border-radius: 50%;
  background: #924324;
  margin: -3.6px 0 0 -3.6px;
}
.lds-roller div:nth-child(1) {
  animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
  top: 62.62742px;
  left: 62.62742px;
}
.lds-roller div:nth-child(2) {
  animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
  top: 67.71281px;
  left: 56px;
}
.lds-roller div:nth-child(3) {
  animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
  top: 70.90963px;
  left: 48.28221px;
}
.lds-roller div:nth-child(4) {
  animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
  top: 72px;
  left: 40px;
}
.lds-roller div:nth-child(5) {
  animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
  top: 70.90963px;
  left: 31.71779px;
}
.lds-roller div:nth-child(6) {
  animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
  top: 67.71281px;
  left: 24px;
}
.lds-roller div:nth-child(7) {
  animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
  top: 62.62742px;
  left: 17.37258px;
}
.lds-roller div:nth-child(8) {
  animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
  top: 56px;
  left: 12.28719px;
}
@keyframes lds-roller {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#filters {
	display: flex;
    align-items: center;
	margin-bottom: 20px;
}

#activite_filtrable {
	padding: 10px 10px;
    border-radius: 8px;
    border-color: #924324;
    color: #924324;
    background-color: #FFF;
    font-family: 'Montserrat';
}

#filters .radio-button {
    margin-left: 20px;
}

#filters .radio-button label {
    margin-left: 15px;
}

#filters .radio-button input[type="radio"] {
    display: none;
}

#filters .radio-button input[type="radio"] + label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 18px;
    height: 18px;
    border: 2px solid #924324;
    border-radius: 50%;
    background-color: white;
}

.localisation_text a{
	color: #924324!important	;
	text-decoration: underline!important;
}

#filters .radio-button input[type="radio"] + label {
    position: relative;
    padding-left: 25px;
    cursor: pointer;
    font-size: 14px;
    color: #924324;
    user-select: none;
	-webkit-user-select: none;
}

#filters .radio-button input[type="radio"]:checked + label:before {
    background-color: #924324;
    border: 2px solid #924324;
}

#filters .radio-button input[type="radio"]:checked + label:after {
    content: "";
    position: absolute;
    left: 6px;
    top: 6px;
    width: 8px;
    height: 8px;
    background-color: white;
    border-radius: 50%;
}

@media screen and (max-width: 768px) {
	#map-container {
		flex-direction: column-reverse;
	}

	#map-container #map {
		width: 100%!important	;
		
	}

	#map-container #post-list {
		width: 100% !important;
		
	}
	#activite_filtrable {
		width: 175px;
	}
}


.logo img{
	max-width: 232px;
	max-height: 96px !important;
	min-height: 81px !important;

}



#access .sub-menu .current-menu-item > a:before{
	display: none;
}

.wpcf7-validates-as-tel {
    width: 100%;
    height: 50px;
    border: 1px solid #e7e9ef;
}

.content-wide {
  width: 100%;
  margin: 0 auto;
}

.sidebar_post.widget-area-sidebar {
    display: none;
}




/* Conteneur principal */
.yannjarno_article {
  display: flex;
  flex-wrap: wrap; 
  gap: 20px; 
}

/* Colonnes */
.blog_featured {
  flex: 1 1 calc(33.333% - 20px);
  max-width: calc(33.333% - 20px);
}

.property_pictogramme {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px; 
    width: 100%;
    margin-top: 5px;
    padding: 10px;
}

.property_pictogramme img {
    width: 100%;
    max-width: 90px;
    height: auto;
    aspect-ratio: 1/1; 
    object-fit: contain;
    margin-right: 0; 
    justify-self: center; 
}


@media (max-width: 768px) {
  .blog_featured {
    flex: 1 1 calc(50% - 20px); 
    max-width: calc(50% - 20px);
  }
}

@media (max-width: 480px) {
  .blog_featured {
    flex: 1 1 100%;
    max-width: 100%;
  }

     .property_pictogramme {
        gap: 10px;
        padding: 5px;
    }
    
    .property_pictogramme img {
        max-width: 70px;
    }
}

@media (min-width: 768px) {
    .property_pictogramme {
        display: flex;
        flex-direction: row;
        gap: 8px; /* Espacement réduit comme dans votre CSS original */
    }
    
    .property_pictogramme img {
        max-width: 90px;
        flex: 0 0 auto;
    }
}


@media screen and (max-width: 530px) {
    .property_pictogramme {
        gap: 10px;
        padding: 5px;
    }
    
    .property_pictogramme img {
        max-width: 70px;
    }

  .sub_footer{
  	padding: 15px;
    padding-bottom: 80px;
  }
}

.sub_footer_content{
	overflow: unset !important;
}



.wpcf7-form-control.wpcf7-submit.has-spinner {
  background-color: #924324!important;
  border: 1px solid #924324!important;
}

#listing_ammenities h3{
	font-size: 20px !important;
    font-weight: 600 !important;
    font-family: 'Philosopher', sans-serif;
}

.listing_detail {
	font-size: 16px;
}

.feature_chapter_name{
	color: #924324 !important;
	font-weight: 600 !important;
}

.all-front-calendars  .has_future, .all-front-calendars  .has_past {
  background-color: #F7E8DD;
}

.all-front-calendars .start_reservation{
	background : linear-gradient(135deg,  #F7E8DD 0%,#F7E8DD 50%,#924324 51%,#924324 100%)!important;
}

.all-front-calendars .end_reservation { 
  background: linear-gradient(135deg, #924324 0%, #924324 49%, #F7E8DD 50%, #F7E8DD 100%)!important;
}

.panel-wrapper.property_knowledge .list-none li{
 font-size: 16px!important;
}

.calendar-reserved, .calendar-reserved .wprentals_front_calendar_price, .calendar-free.has_future.end_reservation {
  color: white!important;
}

.category_details_wrapper .no_link_details.custom_prop_header {
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  color : #636572;
  font-weight: normal;
}

.menu-item-link {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
}

.content_wrapper_dashboard {
    width: 100%;
    max-width: 100%;
}

body {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.6em;
}

.gites_text_tarif {
  font-family: "Sacramento", cursive!important;
  font-size: 30px!important;  
  font-weight: 400!important;
  font-style: normal!important;
  text-align: center;
}

.property_knowledge h4 {
	font-size: 20px;
	font-weight: 600;
    font-family: 'Philosopher', sans-serif;
}

.single-content p{
	font-size: 16px;
}

.mobile-trigger-user{
	display: none !important;
}

.header_wrapper.header_type1.header_align_center.customnav .logo img{
	padding-left: 0px !important;
}

/*.header_wrapper.customnav {
margin-top: 40px;
}

.top_bar_wrapper {
position: fixed;
}*/

.element-is-sticky{
	background-color: #fff;
}

.transparent_header {
  background-color: transparent !important;
  transition: background-color 0.3s ease;
}

.logged-in .element-is-sticky{
margin-top: 80px !important;
}

.hover_type_6 #access .menu > li:hover>a, #access .menu li:hover>a {
    color: #f9b4c2 !important;
}

.header_wrapper.header_wide_yes{
	border-bottom: 1px solid #f9b4c2;
}

.menu-item-link{
	font-family: "Pouler";	
  letter-spacing: 2px;
}

#access ul.menu >li>a{
	font-size: 26px !important;
}

.menu-item{
	margin-right: 4%;
    margin-left: 4%;
}
    

.page-id-42 .logo {
	display: none;
}

.main_text_slider p{
	font-family: "Pouler";
}

.pouler h2{
	font-family: "Pouler" !important;
	font-size: 30px;
  letter-spacing: 2px;
}

.btn_sur_rose .elementor-button, .btn_sur_rose {
    font-family: "Just Breathe" !important;
    letter-spacing: 0px;
    color: #000 !important;
    background-color: transparent !important;
    text-decoration: underline !important;
    font-weight: 300 !important;
    font-size: 19px;
    border-radius: 15px;
    padding: 0px;
}



.breathe p{
	font-family: "Just Breathe";
	    letter-spacing: 0.222em;
}


.header_wrapper.header_type2 #access{
	    height: 45px !important;
}

.header_wrapper.header_type2 .header_wrapper_inside, .header_wrapper .header_type1 .header_wrapper_inside {
    height: 50px !important;
}

.header_wrapper_inside{
	min-height: 50px !important;
}

.menu-item {
    margin-right: 15px;
    margin-left: 15px;
}

#access{
	text-align: center;
}


.page-template h3{
		text-align: center;
    font-family: "Libre Bodoni", Sans-serif !important;
    font-size: 19px;
    font-weight: 400;
    line-height: 19px;
    color: #000;
    margin-top: 20px;
    margin-bottom: 20px;
}

/*.elementor-element-e393ca1 h3{
	font-size: 28px;
}*/


.page-template .content_wrapper li {
	    margin-top: 10px;
    margin-bottom: 10px;
}

/* Désactive la pause au survol */
.swiper-wrapper {
  transition-timing-function: linear !important;
}

/* Force le défilement sans accoups */
.elementor-widget-image-carousel .swiper-wrapper,
.elementor-widget-testimonial-carousel .swiper-wrapper {
  transition-timing-function: linear !important;
}


/* ===== FOOTER VILLA ALBERTINE ===== */

/* Séparateur du haut */
.site-footer,
#colophon {
  background-color: #f5ede6;
  padding: 40px 60px;
}

.site-footer::before,
#colophon::before {
  content: '';
  display: block;
  width: 90%;
  height: 1px;
  background-color: #F9B4C2;
  margin: 0 auto 40px auto;
}

/* 1. Couleur forcée sur toutes les pages sauf l'accueil au chargement */
/*body:not(.home) .element-is-not-sticky #access ul.menu li a.menu-item-link, body:not(.home) .element-is-not-sticky .current-menu-item >a {
    color: #fff !important; 
}

/* OU si la classe est sur un parent plus haut */
/*body:not(.home) .element-is-sticky .menu-item-link {
    color: #F9B4C2 !important;
}*/

.header_type2 .logo{
	display: none !important;
}

#footer-widget-area{
	padding: 0px;
}

/* Grille 3 colonnes du footer */
.footer-widgets-area,
.footer-widget-area {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  gap: 0;
}

#colophon #first{
	width: 30%;
}

#colophon #second{
	width: 20%;
}

#colophon #third{
	width: 50%;
}

/* ===== ZONE 3 : contenu ===== */
.va-footer-content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 32px;
}

/* Bouton Réserver */


/* Bloc bas : nav + divider + contact */
.va-footer-bottom {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 24px;
}

.va-footer-reserver{
	width: 150px;
    margin-bottom: 50px;
}

/* Navigation */
.va-footer-nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#colophon .xoxo{
	padding-top: 0px;
}

.va-footer-nav a, #colophon a, #colophon li a {
  font-family: "Libre Bodoni", Sans-serif;
  font-weight: bold;
  font-size: 14px;
  color: #5D3800;
  text-decoration: none;
  line-height: 1.6;
}

.va-footer-nav a:hover {
  color: #F9B4C2;
}

/* Séparateur vertical */
.va-footer-divider {
  width: 1px;
  background-color: #F9B4C2;
  align-self: stretch;
  margin: 0 8px;
}

/* Bloc contact */
.va-footer-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}

.va-footer-contact a {
  font-family: 'Georgia', serif;
  font-weight: bold;
  font-size: 13px;
  color: #7a4a3a;
  text-decoration: none;
  line-height: 1.6;
}

.va-footer-contact a:hover {
  color: #c8706a;
}

.va-footer-instagram {
  margin-top: 4px;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
  .footer-widgets-area,
  .footer-widget-area {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .va-footer-content {
    align-items: center;
  }

  .va-footer-bottom {
    flex-direction: column;
    align-items: center;
  }

  .va-footer-divider {
    width: 60px;
    height: 1px;
    align-self: auto;
  }

  .va-footer-contact {
    align-items: center;
  }

  .elementor-42 .elementor-element.elementor-element-79b5144{
  	margin-top: 0px !important;
  }

  .elementor-element-4c2dd18{
  	display: none;
  }

  .elementor-element-5766d3d{
  	display: none !important;
  }

  .elementor-element-903446d.e-con{
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
  --padding-right: 0px;
  --row-gap: 0px;
  --column-gap: 0px;

}

.elementor-element-0dafaa3.e-con{
 --padding-top: 10px;
  --padding-bottom: 10px;
  --padding-left: 0px;
  --padding-right: 0px;
  --row-gap: 0px;
  --column-gap: 0px;
}

.elementor-element-4e6a6cc.e-con {
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
  --padding-right: 0px;
  --row-gap: 0px;
  --column-gap: 0px;
}

.elementor-element-0809b3d.e-con {
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
  --padding-right: 0px;
  --row-gap: 0px;
  --column-gap: 0px;
}

.elementor-42 .elementor-element.elementor-element-ef0f490 {
  --margin-top: 0px;
  --margin-bottom: 0px;
  --margin-left: 0px !important;
  --margin-right: 0px !important;
}

.elementor-42 .elementor-element.elementor-element-ef0f490.e-con-full {
  --padding-top: 0px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  --padding-right: 0px !important;
  --margin-top: 0px !important;
  --margin-bottom: 0px !important;
  --margin-left: 0px !important;
  --margin-right: 0px !important;
  max-width: 100% !important;
}

.elementor-element-903446d{
	margin-bottom: 20px;
}

.elementor-element-d19c6c5, .elementor-element-e30fe3a{
	margin-bottom: 25px !important;
}

.elementor-element-f40dcee, .elementor-element-98f1b42, .elementor-element-d8ea1e3, .elementor-element-a74d65a, .elementor-element-e3c3b93,.elementor-element-03c6c03, .elementor-element-45da253{
	padding-left: 25px;
	padding-right: 25px;
}

	.elementor-element-3da3e78, .elementor-element-cecca53, .elementor-element-c76e4b7, .elementor-element-73922af{
		margin: 0;
  padding-left: 25px;
  padding-right: 25px;
	}
	

.elementor-element-e3c3b93,.elementor-element-f40dcee{
	padding-bottom: 25px;
}

#colophon #first, #colophon #third{
	width: 100%;
}

.copyright{
	text-align: center;
	float: none;
}

.elementor-element-eddd110 h2{
	margin-bottom: 20px;
}

.copyright p a{
	font-size: 12px !important;
}



}

.single-content h1{
    font-family: "Libre Bodoni", Sans-serif !important;
    font-size: 19px;
    font-weight: 400;
    line-height: 19px;
    color: #000;    
}

.page-id-479 .main_wrapper, .page-id-479 .content_wrapper{
	background-color: #F6EEE3 !important;
}


/* Cache le texte "Accueil" */
#menu-item-1982 a.menu-item-link {
  display: block;
  text-indent: -9999px;
  background-image: url('https://www.villaalbertine.com/wp-content/uploads/2026/05/logo-alternatif-sans-fond-1.png');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 150px;  /* adapte à ton logo */
  height: 50px;  /* adapte à ton logo */
  overflow: hidden;
  margin: 0 !important;
}

/* Aligner tous les items du menu sur le même axe */
#access li{
	vertical-align: top;
}

#menu-item-1982{
	width: 100px;
	text-align: center;
	margin-top: -3px;
}

.home #menu-item-1982{
  	display: none;
  }

@media (max-width: 768px) {
  .mobile-nav {
    display: none;
    flex-direction: column;
    background: #F9B4C2; 
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 999;
    box-shadow: 0 4px 15px rgba(0,0,0,0.12);
    padding: 10px 0;
  }

  

  .mobile-nav.is-open {
    display: flex;
  }

  .mobile-nav a {
    padding: 14px 24px;
    border-bottom: 1px solid #f0f0f0;
    color: #fff !important; 
    font-family: "Pouler" !important;	
  	letter-spacing: 2px;
    text-decoration: none;
    font-size: 15px;
  }

  .mobile-nav a:last-child {
    border-bottom: none;
  }

 
  .mobile-nav a:hover {
    background: #ffffff;
    color: #F9B4C2 !important; 
  }

  .mobile_header i {
    color: #F9B4C2 !important; /* L'icône du menu burger en rose */
  }

  .mobile-logo img {
    margin: 0px auto;
    max-height: 118px;
  }
}