/***** custom *****/
.sous_titre                         { color: #fff; }
.bg_dark                            { padding-top: 140px; }


/***** link back *****/
.link_back							{ display: inline-block; font-size: 14px; line-height: 24px; margin: 50px 0 40px; color: var(--bleu); position: relative; letter-spacing: 0.5px; }

@media (min-width:1201px) {
.link_back:hover					{ color: #fff;}
}
@media (max-width:1200px) { 
.link_back							{ margin: 50px 0;}
}
@media (max-width:1000px) { 
.link_back							{ margin: 30px 0;}
}
@media (max-width:700px) { 
.bottom .link_back					{ margin: 0 0; font-size: 12px;}
.link_back							{ margin: 30px 0 20px; font-size: 12px;}
}




.price           		            { font-weight: 700; color: var(--bleu); }



.statut                             { margin-bottom: 20px; position: relative; top: inherit; left: inherit;}



.flag                               { position: absolute; top: -90px; right: 0; width: 29%; }
.flag:after                         { content: ""; position: absolute; width: 12px; height: 12px; transform: rotate(45deg) translateX(50%); top: 50px; left: 50%; background-color: var(--bleu);}
.flag p                             { line-height: 58px; height: 60px;background-color: var(--bleu); border-radius: 5px; text-align: center;}

@media (max-width:1200px) { 
    
}
@media (max-width:1000px) { 
.flag                               { width: 45%; }
}
@media (max-width:700px) { 
.flag                               { position: relative; top: 0; right: 0; width: 100%; margin-bottom: 25px; }
.flag:after                         { top: 35px; }
.flag p                             { line-height: 44px; height: 46px;}
}



/* TOP FICHE */
.top_fiche  			  	 		{ position: relative; margin-bottom: 100px; border-radius: 60px 60px 0 0; background-color: var(--dark);}

.top_fiche .titre:not(.titre .price) { font-size: 30px; line-height: 40px; font-weight: 400; margin-bottom: 40px; display: inline-block; position: relative;}
.top_fiche .photos                  { position: relative;}
.top_fiche .photos                  { position: relative;}
.top_fiche .photos .swiper          { width: 100vw; }
.top_fiche .photos .swiper-nav      { position: absolute; display: block; z-index: 40;}
.top_fiche .photos .swiper-arrow    { position: absolute; width: 50px; height: 50px; border-radius: 50%; top: calc(50% - 25px); background-color: #fff; z-index: 20; transition: all 300ms ease-in-out;}
.top_fiche .photos .swiper-arrow-prev { left: 20px; background: url("../images/arrow_prev_small_orange.svg") 50% no-repeat #fff;}
.top_fiche .photos .swiper-arrow-next { left: calc(30vw - 25px); background: url("../images/arrow_next_small_orange.svg") 50% no-repeat #fff;}

.top_fiche .photos .item img         { border-radius: 20px; display: block; width: 100%; height: auto;}
.top_fiche .photos .item a:after	 { border-radius: 20px; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: url("../images/loupe_white.svg") 50% 60% no-repeat rgba(0,0,0,0.5); opacity: 0; content:""; }


@media (max-width:2000px) { 
.top_fiche .photos .swiper-arrow-next { left: calc(50vw - 80px); }
}

@media (min-width:1201px) {
.top_fiche .photos .item a:hover:after	{ opacity: 1; background-position: 50%;}
.top_fiche .photos .swiper-arrow:hover  { background-color: var(--bleu); cursor: pointer;}    
}

@media (max-width:1200px) { 
.top_fiche  			  	 		{ margin-bottom: 80px; border-radius: 40px;}
}

@media (max-width:1000px) { 
.top_fiche  			  	 		{  border-radius: 20px;}
}

@media (max-width:700px) {
.top_fiche  			  	 		{ position: relative; margin-bottom: 50px; border-radius: 15px}
.top_fiche .titre 					{ font-size: 28px; line-height: 38px; margin-bottom: 15px;}
.top_fiche .titre .price         	{ display: block; margin: 0 0 10px 0; }
.top_fiche .titre .price:before		{ display: none;}
.top_fiche .titre:not(.titre .price) { margin-bottom: 20px;}
    
.top_fiche .localisation			{ font-size: 16px; line-height: 24px;}

.top_fiche .photos .swiper          { width: 100%; }
.top_fiche .photos .swiper-arrow    { width: 44px; height: 44px;}
.top_fiche .photos .swiper-arrow-prev { left: 0; background: url("../images/arrow_prev_white.svg") 50% no-repeat;}
.top_fiche .photos .swiper-arrow-next { left: inherit; right: 0; background: url("../images/arrow_next_white.svg") 50% no-repeat;}
 
.top_fiche .photos .item img         { border-radius: 10px;}
}



.grid_duo                             { display: grid; grid-template-columns: auto auto; justify-content: space-between;}



.share 					{ font-size: 0; letter-spacing: 0; }
.share a 				{ width: 40px; height: 40px; display: inline-block; vertical-align: top; margin-left: 10px; border-radius: 50%; cursor: pointer;}
.share .facebook			{ background:url(../images/share_facebook.svg) 50% no-repeat #fff;}
.share .twitter			{ background:url("../images/icon_twitter.svg") 50% no-repeat #fff;}
.share .whatsapp			{ background:url("../images/tel_bleu.svg") 50% no-repeat #fff;}
.share .whatsapp:after 	{ width: 0; height: 0; border-style: solid; border-width: 0 15px 13px 0; border-color: transparent #fff transparent transparent; position: absolute; left: -4px; bottom: 3px; transform: rotate(75deg); content: "";}
.share .email			{ background:url("../images/icon_linkedin.svg") 50% no-repeat #fff;}

@media (min-width:1201px) {
.share a:hover 			{ background-color: var(--bleu);}  			
.share a:hover:after 	{ border-color: transparent #fff transparent transparent;}
}
@media (max-width:1200px) { 
.share 					{ top: 170px;}
}
@media (max-width:1000px) { 
.share 					{ position: relative; right: inherit; top: inherit; margin-bottom: 0;}
.share a 				{ margin-right: 10px; margin-left: 0 ; }
}






/***** top fiche *****/
.apercu 								{ display:grid; grid-template-columns: 1fr 29%; grid-template-rows: 1fr 1fr; grid-gap:30px;}
.apercu img								{ width:100%; height:100%; display:block; position:relative; object-fit:cover;}
/*
.apercu a								{ display:block; height:100%; z-index:5;}
.apercu a.loupe:after					{ width:100%; height:100%; position:absolute; left:0; top:0; background:url("../images/icon_search.svg") 50% 60% no-repeat rgba(0,0,0,0.5); opacity:0; content:"";}
*/
.apercu .item							{ position:relative; border-radius: 20px; overflow: hidden;}
.apercu .item:not(.item.main) img		{ filter: brightness(0.65);}
.apercu .main							{ grid-row:span 2;}
.apercu .main .link.visite_virtuelle	{ height: 70px; line-height: 68px; position: absolute; bottom: 50px; right: 50%; transform: translateX(50%); padding: 0 30px 0 85px; background: url("../images/icon_visitevirtuelle.svg") 25px 50% no-repeat #fff; color: var(--dark);}
.apercu .more a:after					{ opacity:1; background:rgba(0,0,0,0.65);}
.apercu .more .number					{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font-size:35px; line-height:40px; color:#fff; padding:0 10px 5px 0; z-index:10;}
.apercu .more .hide						{ display:none;}

.apercu .visit_video                    { position: absolute; bottom: 30px; left: 30px; z-index: 10;}
.apercu .visit_video a                  { width: 70px; height: 70px; border-radius: 50%; display: inline-block; margin-right: 10px;}
.apercu .video                          { background: url(../images/video.svg) no-repeat center #fff;}

.apercu .portrait img.photo             { width: auto; height: 100%; margin: 0 auto; position: absolute; left: 0; right: 0; top: 0; z-index: 10;}

@media (min-width:1201px) {
.apercu a:hover:after					{ opacity:1; background-position:50%;}
.apercu .more a:hover:after 			{ background:rgba(0,0,0,0.35);}
.apercu .video:hover                    { filter: invert(1);}
}
@media (max-width:1200px) {
.apercu 								{ grid-gap:20px;}
.apercu .item							{ border-radius: 15px; }
}
@media (max-width:1000px) {
.apercu .main							{ grid-column: span 2; grid-row: span 1;}
.apercu 								{ grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 35%;}
.apercu .item							{ border-radius: 10px; }
}
@media (max-width:600px) {
.apercu 								{ grid-gap:10px;}
.apercu a								{ height:auto;}
.apercu .more .number					{ font-size:25px;}
.apercu .item							{ border-radius: 8px; }
}




.line                               { width: 100%; height: 1px; display: block; background-color: #535353; margin: 30px 0; }





/***** resume *****/
.resume 							{ display: grid; grid-template-columns: 1fr auto; grid-gap: 80px; align-items: start; margin-bottom: 80px;}
.resume .left .link					{ margin-top: 30px; }
.resume .right 						{ position: sticky; top: 110px;}

@media (max-width:1200px) {
.resume 							{ grid-gap: 60px;  margin-bottom: 60px}
.resume .right						{ grid-area: 1; position: relative; top: auto;}
}
@media (max-width:1000px) {
.resume 							{ grid-template-columns: 1fr;  margin-bottom: 50px}
}
@media (max-width:600px) {
.resume 							{ grid-gap: 40px; margin-bottom: 40px}
.resume .right                      { display: none}
}


/* icones */
.icones								{ margin: 40px 0; display: flex; gap: 40px; }
.icones .item 						{ display: flex; align-items: center; grid-gap: 15px; text-align: center; justify-items: center;}

@media (max-width:1200px) {
.icones								{ margin: 30px 0;}
}
@media (max-width:700px) {
.icones								{ grid-template-columns: 1fr 1fr; grid-gap: 10px 40px;}
.icones .item 						{ grid-template-columns: auto 1fr; justify-items: start; align-items: center;}
.icones img 						{ width: 50px; height: 50px;}
}
@media (max-width:450px) {
.icones								{ grid-template-columns: 1fr; grid-gap: 10px;}
}


.agent                              { text-align: center;}
.agent .sous_titre                  { margin-bottom: 10px; color: #fff!important;}
.agent img                          { display: block; width: 100%; height: 100%; border-radius: 500px; max-width: 200px; max-height: 200px; margin: 0 auto 20px; border: 3px solid #fff;  }

.middle.agent                       { margin: 80px auto ;}
@media (max-width:1200px) {
.middle.agent                       { margin: 70px auto ;}
}
@media (max-width:1000px) {
.middle.agent                       { margin: 50px auto ;}
}
@media (max-width:700px) {
.middle.agent                       { margin: 30px auto ;}

}



.map iframe                         { border-radius: 30px; }
@media (max-width:1000px) {
.map iframe                         { border-radius: 20px; }

}
@media (max-width:1000px) {
.map iframe                         { border-radius: 15px; }

}
@media (max-width:600px) {
.map iframe                         { border-radius: 8px; }

}


/***** onglets *****/
.onglets  							{ position:relative; z-index:10; margin: 60px auto;}
.onglets .nav_onglets 				{ margin-bottom:40px;}
.onglets .nav_onglets .link         { background-color: #404040; height: 50px; line-height: 48px; margin: 0 5px 0 0 ; cursor:pointer; position:relative; overflow: visible; transition: background-color 300ms ease-in-out;}
.onglets .nav_onglets .link:after	{ width:12px; height: 12px; background:transparent; transform: rotate(45deg) translateX(-50%); content:""; position:absolute; left:50%; top:35px; z-index: -1;}
.onglets .nav_onglets .link.active			{ color:#fff; background-color: #1ca18e;  }
.onglets .nav_onglets .link.active:after	{ top: 48px; background-color: #1ca18e; }

.onglets .nav_onglets .link.download { background-color: #fff; color: #404040;}

@media (min-width:1201px) {
.onglets  							{ margin: 50px auto;}    
.onglets .nav_onglets .link:not(.active):hover { background-color: var(--bleu); color: #fff;}
.onglets .nav_onglets .link.active:hover { cursor: default;}
}
@media (max-width:1000px) {
.onglets  							{ margin: 40px auto;}    
}
@media (max-width:700px) {
.onglets  							{ margin: 30px auto;}    
.onglets .nav_onglets .link			{ margin: 0 0 5px 0;}
.onglets .nav_onglets .link:after	{ display: none}
}



/***** description *****/
ul.list_details li					{ display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid #404040; padding: 10px 0 12px 0; }
@media (max-width:1000px) {
ul.list_details li					{ grid-template-columns: 1fr auto; }
}




/***** PEB *****/
.peb  								{ margin-top: 40px; max-width: 420px;}
.peb .peb_item						{ font-size: 14px; line-height: 30px; color: #000; margin-top: 10px; text-align: right; font-weight: 400; overflow: hidden; position: relative;}
.peb .peb_item b					{ height: 30px; display: block; padding: 0 12px; font-weight: 400; position: relative; border-radius: 8px; z-index: 10;}
.peb .peb_item span					{ height: 30px; display: block; padding: 0 12px; position: absolute; right: 0; top: 0; border-radius: 8px; z-index: 5;}
.peb .peb_item span:before			{ width: 500px; height: 2px; background: #ccc; position: absolute; right: 100%; top: 50%; margin-top: -1px; z-index: 0; content: "";}
.peb .peb_a b						{ width: 16%; background: #33a357;}
.peb .peb_a span, 
.peb .peb_a span:before				{ background: #33a357;}
.peb .peb_b b						{ width: 24%; background: #79b752;}
.peb .peb_b span, 
.peb .peb_b span:before				{ background: #79b752;}
.peb .peb_c b						{ width: 32%; background: #c3d545;}
.peb .peb_c span,					 
.peb .peb_c span:before				{ background: #c3d545;}
.peb .peb_d b						{ width: 40%; background: #fff12c;}
.peb .peb_d span, 
.peb .peb_d span:before				{ background:#fff12c;}
.peb .peb_e b						{ width: 48%; background: #edb731;}
.peb .peb_e span, 
.peb .peb_e span:before				{ background:#edb731;}
.peb .peb_f b						{ width: 56%; background: #d66f2c;}
.peb .peb_f span, 
.peb .peb_f span:before				{ background:#d66f2c;}
.peb .peb_g b						{ width: 64%; background: #cc232a;}
.peb .peb_g span, 
.peb .peb_g span:before				{ background: #cc232a;}

@media (max-width:1000px) {
.peb .peb_a b						{ width: 25%;}
.peb .peb_b b						{ width: 30%;}
.peb .peb_c b						{ width: 35%;}
.peb .peb_d b						{ width: 40%;}
.peb .peb_e b						{ width: 45%;}
.peb .peb_f b						{ width: 50%;}
.peb .peb_g b						{ width: 55%;}
}



.bloc_contact                       { margin: 70px auto;}
@media (max-width:1000px) {
.bloc_contact                       { margin: 50px auto;}
}
@media (max-width:700px) {
.bloc_contact                       { margin: 40px auto;}
}



/***** custom fancybox *****/
.fancybox-bg									{ background: #fff;}
.fancybox-is-open .fancybox-bg					{ opacity: 1;}
.fancybox-button,
.fancybox-infobar__body 						{ background: none; color: var(--bleu); font: 400 18px/50px "Barlow"; letter-spacing: 0.3px;}
.fancybox-infobar 								{ top: 30px; left: auto; right: 90px; margin-left: 0;}
.fancybox-infobar button						{ display: none;}
.fancybox-toolbar 								{ top: 30px; right: 30px;}
.fancybox-show-nav .fancybox-arrow 				{ opacity: 1; transition: all 400ms ease-in-out;}
.fancybox-button--close 						{ width: 50px; height: 50px; background: var(--bleu); border-radius: 50%; transition: all 400ms ease-in-out;}
.fancybox-button--close:before					{ width: 18px; left: calc(50% - 9px); background: #fff;}
.fancybox-button--close:after					{ width: 18px; left: calc(50% - 9px); background: #fff;}
.fancybox-arrow 								{ width: 50px; height: 50px; background: url("../images/arrow_next_white.svg") 50% no-repeat var(--bleu); margin-top: -30px;  border-radius: 50%;}
.fancybox-arrow:after							{ display: none;}
.fancybox-arrow--right 							{ right: 30px;}
.fancybox-arrow--left 							{ left: 30px;}

@media (min-width:1201px) { 
.fancybox-button:hover:not([disabled]) 			{ background-color: var(--bleu);} 
.fancybox-button--close:hover:before			{ background: #fff;}
.fancybox-button--close:hover:after				{ background: #fff;}
.fancybox-arrow:hover:not([disabled])  			{ background-color: var(--bleu);}
}
@media (max-width:1200px) { 
.fancybox-arrow			 						{ border: none;}
}
@media (max-width:700px) { 
.fancybox-button,
.fancybox-infobar__body 						{ line-height: 40px;}
.fancybox-infobar 								{ top: 7.5vw; left: 7.5vw;}
.fancybox-toolbar 								{ top: 7.5vw; right: 7.5vw;}
.fancybox-button--close 						{ width: 40px; height: 40px;}
.fancybox-button--close:before					{ width: 20px; left: calc(50% - 10px);}
.fancybox-button--close:after					{ width: 20px; left: calc(50% - 10px);}
.fancybox-arrow 								{ width: 40px; height: 40px; margin-top: -20px; background-size: 20% auto;}
.fancybox-arrow--right 							{ right: 7.5vw;}
.fancybox-arrow--left 							{ left: 7.5vw;}
} 
