.T5479 .box {
	box-shadow: 0 2px 4px rgba(0,0,0,.2),0 4px 16px rgba(0,0,0,.1);
	border: 1px solid rgba(0,0,0,.1);
	background: #fff;
	color: #333;
	display: grid;
	grid-template-columns: 300px auto minmax(220px,min-content);
	margin-bottom: 20px;
}

.T5479 .box .image {
	grid-column: 1;
}
.T5479 .box .image img { width: 300px; }	
.T5479 .box .infos {
	grid-column: 2;
	padding: 40px;
}

.T5479 .box .booking {
	grid-column: 3;
	padding: 40px 40px 40px 0;
	display: flex;
	flex-direction: column;
	justify-content: end;
}


.T5479 .box .booking .available { margin-bottom: 10px; }
.T5479 .box .booking .booking_button a{ 
	box-sizing: border-box;
	min-height: 3rem;
	border: 1px solid transparent;
	font-weight: 700;
	color: #fff;
	font-size: 1rem;
	background: #7e7645;
	padding: 15px 20px;
	cursor: pointer;
	transition: all .2s;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;	
}@media all and (min-width: 838px) and (max-width: 1279px) {
	.T5479 .box {
		-ms-grid-columns: 300px 1fr;
		grid-template-columns: 300px 1fr;
		-ms-grid-rows: auto auto;
		grid-template-rows: repeat(2,auto);
		grid-template-areas:
  		"image main-info" 
 		"image price-and-selection";
	}

	.T5479 .box .image {grid-column: 1;}	
	.T5479 .box .infos { grid-column: 2; grid-row: 1; }	
	.T5479 .box .booking {
		-ms-grid-column: 2;
		grid-column: 2;
		-ms-grid-row: 2;
		grid-row: 2;
		flex-direction: row;
		justify-content: flex-end;
		align-items: flex-end;
	}
	.T5479 .box .booking .selection { display: flex; flex-direction: column; margin-right: 20px; }

}


@media all and (max-width: 838px) {
	.T5479 .box {
		grid-template-columns: 1fr;
	}

	.T5479 .box .image { grid-row: 1; grid-column: 1; }	
	.T5479 .box .image img { width: 100%; }	
	.T5479 .box .infos { grid-column: 1; grid-row: 2; padding: 40px; }	
	.T5479 .box .booking { grid-column: 1; grid-row: 3; padding-left: 40px; padding-top: 0; }
	.T5479 .box .booking .selection { 
		display: flex;
		flex-direction: column;
		margin-bottom: 10px;
		width: 200px;
		align-self: start;
	}


}
