
.bottom_window {
	display:none;
	position:fixed;
	z-index:51;
	top:50%;
	left:calc(50vw - 5px);
	background-color:#fff;
	border-radius:12px;
	padding:0;
	transform:translate(-50%,-50%) scale(0.95);
	width:460px;
	max-width:80%;
	transition: opacity ease 0.1s, transform ease 0.15s;
	opacity:0;
}
.bottom_window.active {
	transform:translate(-50%,-50%) scale(1);
	transition: opacity ease 0.2s, transform ease 0.15s;
	opacity:1;
}
.bottom_window .content {
	padding:30px;
}

.bottom_window_close{
	content:"";
	position:absolute;
	top:0px;
	right:0px;
	width:44px;
	height:44px;
	background-color: rgba(0, 0, 0, 0.9);
    background-image: url(../img/close_white.svg);
    background-position: center center;
	background-size:auto 15px;
	z-index:2;
	border-radius:50%;
	transform:translate(50%,-50%);
	cursor:pointer;
	scale:1;
}
.bottom_window_close:hover {
	background-color:rgba(0, 0, 0, 1);
	transform:translate(50%,-50%) scale(1.1);
}


.shadow {
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:50;
	background:rgba(55, 59, 23, 0.7);
	background:rgba(0, 0, 0, 0.5);
	visibility:hidden;
	opacity:0;
	transition:opacity ease 0.2s;
	display: flex;
	align-items: center;
	justify-content: center;
}
.shadow.active {
	visibility:visible;
	opacity:1;
	right:-40px;
}

#cerca_bottom_bar {
	display:none;
}



/* Portatil */
@media (max-width: 1450px) {
	
	.bottom_window {
		top:50%;
	}

}

/* Mobil */
@media (max-width: 767px) {
	
    
	
	.shadow {
		position:absolute;
		top:0;
		bottom:0;
		left:0;
		width:100%;
		z-index:50;
		background:rgba(55, 59, 23, 0.7);
		background:rgba(0, 0, 0, 0.5);
		visibility:hidden;
		opacity:0;
		transition:opacity ease 0.2s;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.shadow.active {
		visibility:visible;
		opacity:1;
	}


	.bottom_window {
		display:none;
		position:fixed;
		z-index:51;
		top:auto;
		bottom:0;
		left:0;
		width:100%;
		max-width:100%;
		padding: 35px 17px 20px 17px;
		border-radius: 13px 13px 0px 0px;
		-webkit-transform: translateY(100%);
		transform: translateY(130%);
		transition: transform cubic-bezier(0.42, 0, 0.58, 1) 0.2s;
		opacity:1;
	}

	.bottom_window.active {
		transition: transform ease-out 0.2s;		  
		transform: translateY(0);
	}

	.bottom_window.dragging {
		transition: none; 
	}
	
	.bottom_window:after {
		content:"";
		position:absolute;
		top:12px;
		width:60px;
		height:4px;
		border-radius:8px;
		background-color:#cacaca;
		left:50%;
		margin-left:-30px;
	}

	.bottom_window_close{
		content:"";
		position:absolute;
		top:0px;
		right:0px;
		width:50px;
		height:50px;
		background-image: url(../img/close.svg);
		background-position: center center;
		background-size:auto 15px;
		background-color: transparent;
		z-index:2;
		border-radius:0;
		cursor:pointer;
		opacity:0.5;
		transform:scale(1);
		scale:1;	
	}
	.bottom_window_close:hover {
		opacity:0.8;
		transform:scale(1);
		background-color: transparent;
	}

	.bottom_window_close:active {
		transform:scale(1.05);
		background-color: transparent;
	}



	.bottom_window .content {
		padding:0;	
	}

	.bottom_window .header {
		position:relative;
	}

	.bottom_window .footer {
		border-top:1px solid #ddd;
		padding:17px 0 0 0;
	}


	.bottom_window .main {	
		overflow:hidden;
		padding:0;
		position:relative;
		margin-left:-17px;
		margin-right:-17px;
		padding-left:17px;
		padding-right:17px;

	}
	
	.bottom_window .main.no_drag {
		overflow-x: hidden;
		overflow-y: scroll;
		-webkit-overflow-scrolling: none;
	}

	.bottom_window p.titol {
		font-family: var(--poppins);
		font-weight:600;
		font-size:19px;
		margin: 0 0 13px 0;
	}	
	


/****************/
/* CERCA MOBILE */
/****************/

	.m_hostes_line {
		display:grid;
		grid-template-columns:1fr 170px;
		gap:20px;
		padding:15px 0;
		border-bottom:1px solid #ddd;
		align-items: center;
	}

	.m_hostes_line:last-of-type {
		border:0;
	}
	.m_hostes_line .info {
		display:flex;
		gap:3px;
		flex-direction:column;
	}
	.m_hostes_line .info p {
		margin:0;
		font-family: var(--poppins);
		font-weight:600;
		font-size:16px;
	}
	.m_hostes_line .info span {
		color:#6b6b6b;
		display:block;
		font-size:14px;
	}
	

	.bottom_window .buttons {
		display:flex;
		gap:20px;
		align-items: center;
    	justify-content: space-between;

	}

	.bottom_window .footer .dates {
		width:100%;
		display:flex;
		justify-content:center;
		align-items:center;
		height:58px;
		border-bottom:1px solid #ddd;
		margin:-17px 0 17px 0;
		color:#888;
		font-size:15px;
		gap:7px;
	}
	.bottom_window .footer .dates.active {
		font-family: var(--poppins);
		font-weight:600;
		font-size:16px;
		color:#000;
	}
	.bottom_window .footer .dates.active span {
		font-family: var(--open);
		font-weight:400;
		font-size:14px;
		color:#444;
	}
	

	.bottom_window .btn {
		font-weight:600;
		font-size:15px;
		display:inline-block;
		padding:8px 18px 9px 18px;
		border:2px solid #69912f;
		color:#69912f;
		border-radius:6px;
		user-select:none;
	}
	.bottom_window .btn.disabled {
		opacity:0.5;
	}
	.bottom_window .btn:active {
		color:#fff;
		background-color:#69912f;
	}
	.bottom_window .btn.secundary {
		padding:10px 0px;
		color:#999;
		border-color:#fff;
		background-color:#fff;
		margin-top:-1px;
	}
	.bottom_window .btn.secundary:active {
		background-color:#fff;
		color:#000;
	}

	.m_hostes_line .m_pax_swiper {
		height:60px;
		width:100%;
		position: relative;
		display: flex;
		box-sizing: content-box;
		overflow:hidden;
	}
	.m_hostes_line .m_pax_swiper:after {
		content:'';
		position:absolute;
		top:50%;
		left:50%;
		width:46px;
		height:46px;
		border-radius:100%;
		transform:translate3d(-50%,-50%,0);
		border: 2px solid #8ac93d;
	}

	.pax_number {
		position:relative;
		width:34px;
		height:60px;
		margin:0;
		display: flex;
		align-items: center;
		justify-content: center;
		opacity:0.3;
		font-size:14px;
	}
	.pax_number.swiper-slide-active {
		opacity:1;
		font-size:16px;
		font-weight:600;
	}
	.pax_number.swiper-slide-next,
	.pax_number.swiper-slide-prev {
		opacity:0.7;
		font-size:15px;
	}
	
	.pax_number.ad_1:after {
		content:'0';
		position:absolute;
		top:50%;
		left:0;
		width:34px;
		text-align:center;
		transform:translate3d(-100%,-50%,0);
		color:#aaa;
		font-weight:400;
		font-size:14px;
	}
	
	#m_search_loc_input {	
		width: 100%;
		font-weight: 600;
		text-transform: capitalize;
		background-color: #f5f5f5;
		border-radius: 4px;
		border: 1px solid #ccc;
		height: 50px;
		line-height: 26px;
		padding: 10px 10px 10px 46px;
		font-size: 15px;
		margin:0 0 20px 0;
		background-image:url(../img/lupa_grey.svg);
		background-position: center left 12px;
		background-size:auto 22px;
	}
	#m_search_loc_input::placeholder {
		font-weight:400;
	}

	#m_search_loc_remove {
		display:none;
		position:absolute;
		bottom: 20px;
    	right: 0;
		height:50px;
		width:50px;
		background:transparent;
		z-index:10;
	}
	#m_search_loc_remove.active {
		display:block;
	}	
	#m_search_loc_remove:after {
		content:"";
		position:absolute;
		top:50%;
		z-index:1;
		left:50%;
		height: 24px;
   		width: 24px;
		background-color: #b2b6b9;
    	border-radius: 100%;
		transform:translate3d(-50%,-50%,0);
	}
	#m_search_loc_remove:before {
		content:"";
		position:absolute;
		top:50%;
		z-index:2;
		left:50%;
		height: 10px;
   		width: 10px;
		transform:translate3d(-50%,-50%,0);
		background-image: url(../img/close_grey2.svg);
   		background-size: 10px auto;
		background-position:center center;
	}

	#m_window_destins {
		/*
		height:calc(100vh - 250px) !important;
		max-height:calc(100vh - 250px) !important;

		height: calc((var(--vh, 1vh) * 100) - 180px) !important;	
		max-height: calc((var(--vh, 1vh) * 100) - 180px) !important;		
		*/

		height:calc(100svh - 180px) !important;
		max-height:calc(100svh - 180px) !important;

		padding-top:10px;
	}

	#m_mesos {
		height:calc(100svh - 280px) !important;
		max-height:calc(100svh - 280px) !important;
	}
	
	
	
	#m_window_destins p.window_titol {
		font-size: 17px;
		font-weight: 600;
		margin: 7px 0 15px 0;

	}

	#m_desti_window {
		padding-bottom:0;
	}
	#m_desti_window .header {
		border-bottom:1px solid #ccc;
	}



	.bottom_window .cal_day_names {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(1px, 1fr));
		border-bottom:1px solid #ddd;
		padding-bottom:8px;
		gap:0px;
	}
	.bottom_window .cal_day_names span {
		text-align:Center;
		color:#6e8c0b;
		text-transform:uppercase;
		font-weight:400;
		font-size:14px;
	}


	.bottom_window #m_mesos {
		padding-top:20px;
	}	


	#m_mesos p {
		font-family: var(--poppins);
		font-weight:500;
		font-size:16px;
		color:#000;
		margin:0 0 10px 0;
	}
	#m_mesos .mes {
		display:grid;
		grid-template-columns: repeat(7,1fr);
		margin:0 0 30px 0;
	}	
	#m_mesos .mes:last-of-type {
		margin:0 0 20px 0;
	}	

	#m_mesos .mes .mc_d {
		text-align:center;
		font-weight:500;
		font-size:15px;
		line-height:42px;
		position:relative;
	}	


	#m_mesos .mes .mc_d.dis {
		color:#fff;
	}

	#m_mesos .mes .mc_d.old {
		color:#bbb !important;
		text-decoration:line-through;
		background-image:none !important;
		background-color:#fff !important;
	}
	
	/* dies ocupats i mitjos  */
	#m_mesos.mostra_ocupacio .mes .mc_d.busy {
		background-color:#e0a3a1;
		color:#9b4444;
	}
	#m_mesos.mostra_ocupacio .mes .mc_d.busy_start,
	#m_mesos.mostra_ocupacio .mes .mc_d.busy_end {
		color:#9b4444;	
		border-radius:0;
		background-size: 100% 100%;
		background-position:center center;
		background-repeat:no-repeat;
	}
	#m_mesos.mostra_ocupacio .mes .mc_d.busy_start{
		background-image:url(../img/day_start.png);
		background-position:bottom right;
	}
	#m_mesos.mostra_ocupacio .mes .mc_d.busy_end{
		background-image:url(../img/day_end.png);
		background-position:top left;
	}


	#m_mesos .mes .mc_d.avui:before {
		content:"";
		position:absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
		background-color:#f1f1f1;	
		z-index:-1;
		border-radius:8px;
	}

	#m_mesos .mes .mc_d.selected {
		
	}
	#m_mesos .mes .mc_d.selected:before {
		content:attr(num);	
		position:absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
		background-color:#d1e5a3;	
		z-index:1;
		opacity: 0.5;
		color: #434343;
	}
	#m_mesos .mes .mc_d.selected.start:before {
		border-top-left-radius:6px;
		border-bottom-left-radius:6px;
		border-top-right-radius:0px;
		border-bottom-right-radius:0px;
		background-color:#5A9900;
		color: #fff;
		opacity:0.6;
	}
	#m_mesos .mes .mc_d.selected.end:before {
		border-top-right-radius:6px;
		border-bottom-right-radius:6px;
		border-top-left-radius:0px;
		border-bottom-left-radius:0px;
		background-color:#5A9900;
		opacity:0.6;
		color: #fff;
	}




	#m_mesos .mes .mc_d.selected.start,
	#m_mesos .mes .mc_d.selected.end {
		color:#fff;	
	}


	#m_mesos .mes .d_7.selected:not(.end):after {
		content:"";
		position:absolute;
		right:-20px;
		top:0;
		bottom:0;
		width:20px;
		background-color:#d1e5a3;	
		opacity: 0.5;
	}

	#m_mesos .mes .d_1.selected:not(.start):after {
		content:"";
		position:absolute;
		left:-20px;
		top:0;
		bottom:0;
		width:20px;
		background-color:#d1e5a3;	
		opacity: 0.5;
	}


	#m_mesos.mostra_ocupacio .mes .d_7.busy :not(.end):after {
		content:"";
		position:absolute;
		right:-20px;
		top:0;
		bottom:0;
		width:20px;
		background-color:#e0a3a1;	
	}

	#m_mesos.mostra_ocupacio .mes .d_1.busy :not(.start):after {
		content:"";
		position:absolute;
		left:-20px;
		top:0;
		bottom:0;
		width:20px;
		background-color:#e0a3a1;	
	}



	#m_mesos p.limit {
		font-family: var(--open);
		font-weight:400;
		font-size:14px;
		line-height:1.5;
		color:#000;
		margin:0 0 20px 0;
		padding:12px;
		background-color: #fcf8e3;
		border-color: #f2cf87;
		color: #8a6d3b;
		border-radius:4px;
		text-align:center;
	}




	#m_buscador_window {

	}
	#m_buscador_window .header {
		display:flex;
		flex-direction:column;
		gap:7px;
		padding:0 0 18px 0;
	}
	#m_buscador_window .main {
		display:flex;
		flex-direction:column;
		gap:8px;
	}
	#m_buscador_window .footer {
		padding:18px 0 0 0;
		border:0;
	}

	#m_buscador_window p.titol {
		font-size:17px;
		margin:0;
	}
	#m_buscador_window p.sub {
		color:#5d5d5d;
		font-family:var(--open);
		font-size:14px;
		margin:0;
	}

	#m_search_go {
		width: 100%;
		line-height: 50px;
		background-color: var(--groc1);
		font-size: 18px;
		color: #fff;
		text-align: center;
		font-weight: 500;
		padding: 0 15px 1px 15px;
		border-radius: 6px;
		position: relative;
		font-family:var(--poppins);
		overflow: hidden;
		position:relative;
	}

	#m_search_go:hover {
		background-color: var(--groc2);
	}
	#m_search_go.loading:after {
		content:"";
		position:absolute;
		z-index:2;
		top:0;
		left:0;
		right:0;
		bottom:0;
		background-color:var(--groc2);		
	}
	#m_search_go.loading:before {
		content:"";
		position:absolute;
		top:50%;
		left:50%;
		z-index:3;
		border: 2px solid rgba(255, 255, 255, 0.5);
		border-top: 2px solid #fff;
		border-radius: 50%;
		width: 28px;
		height: 28px;
		animation: spin 1s linear infinite;	
		margin:-14px 0 0 -14px;
	}

	.m_search_filtre {
		width:100%;
		background-color:#fff;
		border-radius:6px;
		border:1px solid #ccc;
		padding: 0 0 0 65px;	
		height:70px;
		display:flex;
		flex-direction:column;
		justify-content:center;
		position:relative;
		background-image: url(../img/down_grey.svg);
		background-position: center right 18px;
		background-repeat: no-repeat;
		background-size: auto 10px;
	}
	.m_search_filtre.active {

	}

	.m_search_filtre:before {
		content:"";
		position:absolute;
		top:0;
		left:0;
		bottom:0;
		width:62px;
		z-index:1;
		background-size: 24px auto;
		background-position: center center;
		background-repeat:no-repeat;
	}

	.m_search_filtre.m_search_filtre_loc:before {
		background-image:url(../img/pointer_green.svg);
	}
	.m_search_filtre.m_search_filtre_dates:before {
		background-image:url(../img/cal_green3.svg);
	}
	.m_search_filtre.m_search_filtre_pax:before {
		background-image:url(../img/family_green.svg?v=1);
		background-size: 30px auto;
	}
	.m_search_filtre p {
		margin:0;
		line-height: 1.4;
		font-weight: 600;
		color: #000;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		font-size: 16px;
		margin:1px 0 0 0;
	}
	.m_search_filtre span {
		margin:0;
		font-weight: 600;
    	font-size: 18px;
		color: var(--verd2);
	}

	.m_search_filtre_pax span,
	.m_search_filtre_loc span,
	.m_search_filtre.active span {
		color:#666;
		font-size:14px;
		font-weight:400;
	}

	.m_search_filtre p span {
		display:inline-block;
		width: 4px;
		height: 4px;
		background-color: #555;
		border-radius: 100px;
		margin: 0 8px 1px 7px;
		vertical-align: middle;
		padding: 0;
		background-image: none;
	}

	.m_search_close {
		display:none;
		position:absolute;
		border-radius:10px;
		background-color:#fff;
		top:0;
		right:0;
		bottom:0;
		width:48px;
		background-size: 16px auto;
		background-position:center right 19px;
		background-image: url(../img/close_grey.svg);
	}

	.m_search_filtre.active .m_search_close {
		display:block;
	}

	#cerca_bottom_bar {
		display:block;
		position:fixed;
		bottom:0;
		left:0;
		right:0;
		height:55px;
		background-color:#fff;
		z-index:99;
		box-shadow:0 -2px 4px 0 rgba(0, 0, 0, 0.15);
		box-shadow: 0 0 3px rgba(0, 0, 0, 0.4);
		padding:0 53px 0 50px;
		display:flex;
		align-items:center;
		gap:0;
		align-content: center;
		background-image:url(../img/casa_green.svg);
		background-position:bottom 18px left 13px;
		background-repeat:no-repeat;
		background-size:23px auto;
	}

	#cerca_bottom_bar.active {
		padding:0 53px 0 0px;
		background-image:none;
		display:grid;
		grid-template-columns: 1fr 125px 85px;
	}

	#cerca_bottom_bar:hover {
		background-color:#f1f1f1;
	}

	#cerca_bottom_bar:after {
		content:"";
		position:absolute;
		top:10px;
		right:0;
		bottom:10px;
		width:53px;
		border-left:1px solid #ccc;
		background-image:url(../img/lupa_verda.svg);
		background-position:top 4px right 17px;
		background-repeat:no-repeat;
		background-size:22px auto;
	}


	#cerca_bottom_bar label {
		color:#777;
		font-size:14px;
		font-weight:400;
		margin:0 0 2px 0;	
	}
	#cerca_bottom_bar.active label {
		display:none;
	}

	#cerca_bottom_bar .bloc {
		color:#888;
		font-weight:400;
		font-family: var(--open);
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
		position:relative;
		height:26px;
		line-height:24px;
		gap:7px;
		text-align:center;
		position:relative;
		border-right:1px solid #ddd;
		padding:0 9px;
		font-size:13px;
		display:none;
	}
	#cerca_bottom_bar.active .bloc {
		display:block;
	}
	
	#cerca_bottom_bar .bloc:last-of-type {
		border:0;
	}
	#cerca_bottom_bar .bloc:first-of-type {	
		padding:0 7px 0 10px;
	}
	#cerca_bottom_bar .bloc.active {
		color:#000;
		font-weight:500;
		line-height:26px;
		font-family: var(--poppins);
	}

	#cerca_bottom_bar .bloc span {
		color:#888;
		font-size:12px;
		font-weight:400;
		font-family: var(--open);
		display:inline-block;
		padding-left:7px;
	}






}
