#container, #header, #middle, #footer { min-width: 320px; width: 100%; max-width: 1000px; }
div.topBrowserShadow { min-width: 320px; width: 100%; max-width: 985px; }
div.topBrowserShadow img { width: 100%; height: auto; top: -1px; position: relative; }
#header { box-sizing: border-box; }
.center { text-align: center; }
#jThumbnail { width: 100%; overflow: hidden; }
.jThumbnailScroller { width: calc(100% - 43px - 43px); }
#footer .content { width: 100%; box-sizing: border-box; }
#footer table { width: 100%; }
#footer table td:first-child { width: 160px !important; }
#footer table td { width: 218px; }
#footer table td:last-child { width: auto; }
#footer #carte { width: 90% !important; margin-left: 10% !important; }
#middle div.searchFormBlock { z-index: 9900; }
.topNav { z-index: 9800; }

.mobile, .topNavMobile { display: none; }

@media screen and (max-width: 840px) {
	#middle div.searchFormBlock { position: relative !important; top: -403px; left: 40%; width: 370px !important; height: 155px; -moz-column-count: 2; -moz-column-gap: 10px; -webkit-column-count: 2; -webkit-column-gap: 10px; column-count: 2; column-gap: 10px; padding: 10px 10px 10px 12px !important; }
	p.rechercheTxt { margin-bottom: 4px; top: 0 !important; }
	
	#middle .content { margin-top: -170px; padding: 40px; }
}
@media screen and (max-width: 715px) {
	#middle div.searchFormBlock { position: fixed !important; background: #fff; z-index: 9999; -webkit-box-shadow: 0 0 20px 0 rgba(0,0,0,0.5); box-shadow: 0 0 20px 0 rgba(0,0,0,0.5); -webkit-border-radius: 0px 5px 5px 0px; border-radius: 0px 5px 5px 0px; top: 270px !important; left: -240px; width: 190px !important; -moz-column-count: 1 !important; -webkit-column-count: 1 !important; height: auto !important; padding: 10px 5px 10px 17px !important; }
	#middle div.searchFormBlock.removePosAbs { left: 18px !important; }
	.blockNavLeft { margin-left: 18px !important; }
	#middle div.searchFormBlock p.mobile { background: #005a84; color: #fff; font-size: 22px; display: block; text-align: center; position: absolute; top: 30px; left: 212px; -webkit-border-radius: 0px 5px 0px 0px; border-radius: 0px 5px 0px 0px; }
	#middle div.searchFormBlock p.mobile .fa-search { padding: 16px 16px 16px 38px; }
	#middle div.searchFormBlock p.mobile .fa-angle-left { padding: 16px; }
	
	#header { height: 270px; }
	.logo { height: 100px; }
	.halo { height: 320px; }
	.logo img, .halo img { height: 100%; width: auto; }
	
	#middle .content { margin-top: 0; padding: 20px; }
	
	div.topBrowserShadow { height: 15px; }
	
	#footer .content { padding: 20px; }
	#footer .content td { line-height: 22px; }
	#footer .footerBigTxt { font-size: 17px !important; }
	#footer table td:first-child { width: 140px !important; }
	#footer table td img { width: 20px; }
	#footer #carte { width: 95% !important; margin-left: 5% !important; }
}
@media screen and (max-width: 620px) {
	.textAccroche { font-size: 40px; right: 15px; }
	div.topNav { right: 10px; }
	div.topNav a { font-size: 14px; width: 100px; }
	
	#footer #carte { width: 100% !important; margin-left: 0 !important; }
}
@media screen and (max-width: 480px) {
	table.homepage-presentation tr {
		display: flex;
		flex-direction: column;
	}
	table.homepage-presentation img {
		margin-top: 25px;
	}
	.logo { width: 280px; }
	.jThumbnailScroller .jTscroller .thumbjTscroller { width: 188px; }
	.jThumbnailScroller .jTscroller .thumbjTscroller .imgSize, .jThumbnailScroller .jTscroller .thumbjTscroller .linkjTscroller { margin-left: 9px; }
	.textAccroche { font-size: 30px; }
	.halo { height: 300px; }
	.topNav, .textAccroche { display: none; }
	#header { height: 150px; background-position: center 20% !important; }
	#middle div.searchFormBlock { top: 110px !important; }
	div.blockTxt { padding: 10%; width: 80%; }
	
	#header div.mobile { display: block; color: #fff; background: #005a84; font-size: 22px; position: absolute; text-align: center; top: 114px; -webkit-border-radius: 0px 0px 5px 0px; border-radius: 0px 0px 5px 0px; left: 290px; z-index: 10; border-top: 1px solid #fff; }
	#header div.mobile .fa-bars { padding: 16px 16px 16px 22px; }
	#header div.mobile .fa-angle-left { padding: 16px; }
	.topNavMobile { -webkit-box-shadow: 0 0 20px 0 rgba(0,0,0,0.5); box-shadow: 0 0 20px 0 rgba(0,0,0,0.5); -webkit-border-radius: 0px 5px 5px 0px; border-radius: 0px 5px 5px 0px; display: block; background: #fff; position: fixed; top: 80px; left: -300px; z-index: 10000; width: 290px; }
	.topNavMobile a { font-size: 20px; font-family: 'Averia Serif Libre', cursive; color: #005a84; display: block; padding: 10px 15px; text-decoration: none; font-weight: bold; text-transform: capitalize; }
	.topNavMobile a.sousLink { font-size: 16px; font-family: 'Averia Serif Libre', cursive; color: #005a84; display: block; padding: 5px 30px; text-decoration: none; font-weight: normal; text-transform: capitalize; }
}