/* Responsive WebcamDial — applied below 1024px. Desktop (>=1025px) untouched. */

@media (max-width: 1024px) {
	/* Global guards */
	body { overflow-x: hidden; }
	div#header { max-width: 100%; }
	a#logoSite { float: none; margin: 0 auto; max-width: 280px; height: auto; }
	div#header a#logoSite img { max-width: 100%; height: auto; }

	/* Login box */
	div.accountBox { float: none; margin: 6px auto 10px; width: 96%; max-width: 480px; height: auto; box-sizing: border-box; }
	div.accountBoxContent { height: auto; padding: 10px; text-align: center; }
	div.accountBoxContent input.loginField { width: 100%; box-sizing: border-box; margin: 2px 0; display: block; }

	/* Headline */
	div#headline, div#headline.headlineAB { width: auto; max-width: 100%; margin: 4px 4px 0; height: auto; border-radius: 8px; }
	div#bigPhotoHome, div.bigPhotoHomeAB { float: none; width: 100%; height: auto; }
	div.photosHome { width: 100%; }
	div.photosHome img.imgf1 { width: 100%; height: auto; display: block; }
	div.coverPhotosHome, div.coverPhotosHomeAB { display: none; }
	.photoCoverHack { display: none; }
	div.bannerTop { width: 100%; }
	div.bannerBottom, div.bannerBottomAB { width: 100%; position: static; height: auto; padding: 12px 0 14px; }
	div.bannerBottom div.h1, div.bannerTopAB div.h1 { margin: 0; padding: 0 10px; font-size: 17px; text-align: center; }
	div.bannerBottomAB div.h3 { font-size: 14px; margin: 4px 10px 0; text-align: center; }

	/* Formular inscriere */
	div.inscriptionHome, div.inscriptionHomeAB { float: none; width: auto; margin: 0; padding: 12px 14px 16px; }
	div.inscriptionHome table { width: 100%; }
	div.inscriptionHome table tr { display: block; }
	div.inscriptionHome table td { display: block; width: 100%; box-sizing: border-box; padding: 4px 0; }
	div.inscriptionHome table td.campText { padding: 8px 0 0; }
	div.inscriptionHome .inscriptionField { width: 100%; box-sizing: border-box; font-size: 16px; }
	div.inscriptionHome select.inscriptionDate { width: 32%; box-sizing: border-box; }
	div.disclamerInscription, div.disclamerInscriptionAB { padding: 8px 6px; }
	div.disclamerInscription p { float: none; }
	div.inscriptionHome > div:has(#captcha_image) { text-align: center; }
	div.inscriptionHome > div:has(#captcha_image) input[name="captcha"] { width: 150px; }
	p.butonInscription, p.butonInscriptionAB { text-align: center; }
	p.butonInscription input[type="submit"], p.butonInscriptionAB input[type="submit"] { width: 100%; max-width: 340px; padding: 12px 0; font-size: 16px; }

	/* Auxiliary */
	div.auxiliary { width: auto; max-width: 100%; margin: 11px 4px 0; height: auto; padding-bottom: 16px; }
	div.lesInscrites { float: none; width: 100%; }
	div.inscritesPhotos { width: auto; margin: 0 8px; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
	div.inscritesPhotos img { margin: 0; }
	div.confidentialite, div.rencontreWebcam { float: none; width: auto; margin: 10px 0 0; box-sizing: border-box; }
}

@media (max-width: 767px) {
	div#headline, div#headline.headlineAB { margin: 4px 0 0; border-radius: 0; }
	div.inscriptionHome div.h2AB { font-size: 24px; text-align: center; padding-left: 0; }
	div.topRibbon { transform: scale(.8); transform-origin: top left; }
	div.inscritesPhotos img { width: 80px; height: 70px; }
}

@media (max-width: 480px) {
	div.inscriptionHome select.inscriptionDate { width: 100%; margin: 2px 0; display: block; }
	a#logoSite { max-width: 220px; }
}
