/* Polices du site : voir css/polices.css */
@import url("/css/polices.css");

.tk-source-sans-pro {
	font-family: "source-sans-pro", sans-serif;
}


/* cyrillic-ext */
body {
	font-family: source-sans-pro, Arial, Helvetica, sans-serif !important;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-style: normal;
	font-weight: 200;
}

/* Container */
.container {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}



header {
	width: 100%;
	height: auto;
	border: none;
	/* Bannière dessinée en dégradés (2026-10-04), à la place de images/abidexbanniere.jpg et abidexbannieretactile.jpg */
	background-image: url("../images/banniere_degrade.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: initial;
	font-family: source-sans-pro, sans-serif;
}

@media (max-width: 900px) {
	header {
		/* Même bannière que sur ordinateur : le SVG se recadre de lui-même (images/banniere_degrade.svg) */
		text-align: center;
	}
}

#comproduits {
	font-size: inherit;
	margin-block-start: 1em;
	margin-block-end: 1em;
	margin-inline-start: 0px;
	margin-inline-end: 0px;
	font-weight: inherit;
}

#solutionseau {
	font-size: inherit;
	margin-block-start: 0.67em;
	margin-block-end: 0.67em;
	margin-inline-start: 0px;
	margin-inline-end: 0px;
	font-weight: inherit;
}

/* Slogan de l'en-tête (ordinateur) : texte blanc, sans fond, graisse 400 (2026-10-07), comme sur qrcode.abidex.ch */
h1#comproduits,
h1#solutionseau {
	color: #ffffff;
	font-weight: 400;
}

#commercialisation {
	font-weight: 500;
	margin-block-start: inherit;
	margin-block-end: inherit;
	margin-inline-start: inherit;
	margin-inline-end: inherit;
	padding-bottom: 2%;
	margin: auto;
	margin-bottom: -1px;
	font-size: 2.8vw;
	text-transform: uppercase;
	color: white;
}

@media (min-width: 901px) {
	#commercialisation {
		display: none;
	}
}

@media (max-width: 650px) {
	#commercialisation {
		padding-bottom: 3%;
	}
}

@media (max-width: 500px) {
	#commercialisation {
		padding-bottom: 3.5%;
	}
}


.bannieretexte {
	float: right;
	padding-right: 10.5%;
	padding-top: 3.3%;
	font-size: 38px;
	text-transform: uppercase;
	letter-spacing: 2.5px;
	text-align: center;
	color: rgba(0, 56, 136, 1.00);
}

@media (min-width: 3000px) {
	.bannieretexte {
		padding-right: 30% !important;
		font-size: 55px !important;
		padding-top: 0.5% !important;
	}
}

@media (min-width: 2000px) {
	.bannieretexte {
		padding-right: 14.5%;
		font-size: 40px;
		padding-top: 3%;
	}
}

@media (min-width: 2200px) {
	.bannieretexte {
		padding-right: 18%;
	}
}

@media (min-width: 2500px) {
	.bannieretexte {
		padding-right: 25%;
	}
}

@media (max-width: 1750px) {
	.bannieretexte {
		padding-right: 12%;
		font-size: 34px;
		padding-top: 4.5%;
	}
}

@media (max-width: 1500px) {
	.bannieretexte {
		padding-right: 9.5%;
	}
}

@media (max-width: 1355px) {
	.bannieretexte {
		padding-right: 8%;
		font-size: 30px;
	}
}

@media (max-width: 1300px) {
	.bannieretexte {
		padding-top: 6%;
		font-size: 29px;
		padding-right: 7%;
	}
}

@media (max-width: 1250px) {
	.bannieretexte {
		font-size: 27px;
		padding-right: 10%;
		padding-top: 6%;
	}
}

@media (max-width: 1200px) {
	.bannieretexte {
		padding-right: 7%;
		font-size: 25px;
	}
}

@media (max-width: 1150px) {
	.bannieretexte {
		padding-right: 5.5%;
	}
}

@media (max-width: 1120px) {
	.bannieretexte {
		padding-right: 7%;
		font-size: 23px;
		padding-top: 8%;
	}
}

@media (max-width: 1070px) {
	.bannieretexte {
		padding-right: 6%;
		font-size: 20px;
		padding-top: 9.5%;
	}
}

@media (max-width: 950px) {
	.bannieretexte {
		padding-right: 5.5%;
		font-size: 18px;
		padding-top: 10%;
	}
}

@media (max-width: 900px) {
	.bannieretexte {
		display: none;
	}
}

.logoabidex {
	width: auto;
	height: 280px;
	padding-bottom: 15px;
	padding-top: 18px;
	padding-left: 5%;
}

@media (max-width: 1000px) {
	.logoabidex {
		height: 250px;
	}
}

@media (max-width: 900px) {
	.logoabidex {
		padding-left: 0%;
		padding-bottom: 12px;
	}
}

@media (max-width: 500px) {
	.logoabidex {
		height: 200px;
		padding-bottom: 9px;
	}
}

@media (max-width: 450px) {
	.logoabidex {
		padding-bottom: 7px;
	}
}

@media (max-width: 400px) {
	.logoabidex {
		height: 160px;
		padding-bottom: 6px;
	}
}

@media (max-width: 230px) {
	.logoabidex {
		height: 100px;
		max-width: 100%
	}
}

.imgchapitre:hover {
	transform: rotate(15deg) scale(.8);
	transition: .3s ease-in-out;
}

.blocimgtxt2:hover {
	cursor: pointer;
	background-color: rgba(204, 204, 204, 1);
}

@media (min-width: 1000px) {
	.blocimgtxt2 span {
		cursor: pointer;
		display: inline-block;
		position: relative;
		transition: 0.5s;
	}
}

@media (min-width: 1000px) {
	.blocimgtxt2 span:after {
		content: '\00bb';
		position: absolute;
		opacity: 0;
		top: 0;
		right: -20px;
		transition: 0.5s;
	}
}

@media (min-width: 1000px) {
	.blocimgtxt2:hover span {
		padding-right: 25px;
	}
}

@media (min-width: 1000px) {
	.blocimgtxt2:hover span:after {
		opacity: 1;
		right: 0;
	}
}

.hero_header {
	text-align: center;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	letter-spacing: 4px;
	line-height: 22px;
	padding-left: 5px;
    padding-right: 5px;
}


.footer_column {
	width: 50%;
	text-align: center;
	padding-top: 30px;
	float: left;
}

.button {
	width: 200px;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: auto;
	margin-left: auto;
	padding-top: 20px;
	padding-right: 10px;
	padding-bottom: 20px;
	padding-left: 10px;
	text-align: center;
	vertical-align: middle;
	border-radius: 0px;
	text-transform: uppercase;
	letter-spacing: 2px;
	border: 3px solid #FFFFFF;
	transition: all 0.3s linear;
	max-width: 80%;
	background-color: #DCDCDC;
	-webkit-appearance: none;
}

/*
 * Deux boutons côte à côte (largeurs 50 % et 25 % écrites dans le HTML, pages d'accueil et de solutions DE et EN) :
 * sous 1024 px, le texte du grand bouton passe sur plusieurs lignes et les deux hauteurs diffèrent ;
 * chaque bouton prend alors sa propre ligne. !important : l'emporte sur la largeur écrite dans le HTML.
 */
@media (max-width: 1023px) {
	.boutonPaire {
		display: block;
		width: 80% !important;
	}
}

.button a {
	color: inherit;
	cursor: inherit;
	text-decoration: inherit;
}

/*
 * Liens présentés comme des boutons (<a class="button">) : vrais liens, suivis par Google, au lieu de
 * <button onclick="window.location…"> ; même police et même taille qu'un <button>. Affichage et couleur par défaut
 * dans :where() (priorité nulle) : les règles des pages l'emportent toujours (couleur .buttonb, .green ; boutons
 * masqués selon l'écran, ex. .imgTop / .imgBas de solutions).
 */
a.button {
	box-sizing: border-box;
	font: 13.3333px Arial, sans-serif;
	line-height: normal;
	text-decoration: none;
}

:where(a.button) {
	display: inline-block;
	color: black;
}

a.buttonb {
	color: white;
}

.button:hover {
	background-color: #FEFEFE;
	color: #C4C4C4;
	cursor: pointer;
}

/*
 * Toutes les icônes du pied de page ont la même taille (réseaux sociaux en carrés comme les autres depuis le 2026-10-04) :
 * tailles et décalages de l'ancienne règle des icônes de droite (40 px, puis 35, 30 et 25 px selon la largeur).
 */
.imglogobas {
	width: auto;
	height: 40px;
	padding-left: 22px;
	padding-right: 22px;
	transform: translateY(25%);
	/* tir� de la moiti� de sa propre hauteur */
}

@media (max-width: 1455px) {
	.imglogobas {
		padding-left: 10px;
		padding-right: 10px;
	}
}

@media (max-width: 1000px) {
	.imglogobas {
		height: 35px;
		transform: translateY(35%);
	}
}

@media (max-width: 950px) {
	.imglogobas {
		padding-left: 5px;
		padding-right: 5px;
		height: 30px;
		transform: translateY(45%);
	}
}

@media (max-width: 867px) {
	.imglogobas {
		transform: translateY(65%);
	}
}

@media (max-width: 700px) {
	.imglogobas {
		height: 25px;
		transform: translateY(85%);
	}
}

@media (max-width: 611px) {
	.imglogobas {
		padding-left: 3px;
		padding-right: 3px;
	}
}

@media (max-width: 550px) {
	.imglogobas {
		float: left;
		transform: translateY(0%);
	}
}

@media (max-width: 550px) {
	#fax {
		display: none;
	}
}

div#divcachetexte {
	display: none;
}

@media (max-width: 550px) {
	div#divcachetexte {
		padding-top: 0px;
		padding-bottom: 5px;
		float: left;
		width: 100%;
		height: auto;
		background-color: #717070;
		text-align: center;
		text-transform: uppercase;
		font-weight: lighter;
		letter-spacing: 2px;
		display: inline-block;
	}
}

div#divcachelogo {
	display: none;
}

@media (max-width: 550px) {
	div#divcachelogo {
		padding-top: 8px;
		float: left;
		width: 100%;
		height: auto;
		background-color: #717070;
		display: inline-block;
	}
}

.lienbas {
	color: transparent;
}

div#contenu {
	padding-top: 15px;
	padding-bottom: 15px;
	float: left;
	width: 100%;
	height: auto;
	background-color: #717070;
	text-align: center;
	text-transform: uppercase;
	font-weight: lighter;
	letter-spacing: 2px;
}

@media (max-width: 550px) {
	div#contenu {
		display: none;
	}
}

div#bloc_droite {
	float: right;
	width: 20%;
	height: auto;
}

div#bloc_gauche {
	float: left;
	height: auto;
	width: 20%;
}

.bannerbas {
	color: white;
	padding-top: 3px;
}

@media (max-width: 600px) {
	.bannerbas {
		font-size: 12px;
	}
}

@media (max-width: 550px) {
	.bannerbas {
		font-size: 10px;
		padding-top: 7px;
		margin-block-start: 0.8em;
		margin-block-end: 0.8em;
	}
}

.footer_banner {
	background-color: #B3B3B3;
	padding-top: 35px;
	padding-bottom: 35px;
	margin-top: 15px;
	margin-bottom: 0px;
	color: black;
}

@media (max-width: 550px) {
	.footer_banner {
		margin-bottom: -2px;
	}
}

@media (max-width: 500px) {
	.footer_banner {
		margin-bottom: -1px;
	}
}

.blocimgtxt2 {
	background-image: linear-gradient(#FFFFFF, #C0C0C0, #A9A9A9, #708090);	
	width: 85%;
	margin: auto;
	/* background-color: rgb(255, 204, 0); */
	border-radius: 4px;
	cursor: pointer;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.blocimgtxt2 a {
	color: inherit;
	cursor: inherit;
	text-decoration: inherit;
}

@media (max-width: 900px) {
	.blocimgtxt2 {
		width: 92%;
	}
}

@media (max-width: 610px) {
	.blocimgtxt2 {
		width: 85%;
	}
}

@media (min-width: 3900px) {
	.blocimgtxt {
		font-size: 25px;
	}
}

h2 {
	display: inherit;
	font-size: inherit;
	margin-block-start: inherit;
	margin-block-end: inherit;
	margin-inline-start: inherit;
	margin-inline-end: inherit;
	font-weight: inherit;
	margin: inherit;
}

.bloctxt {
	/* background-color: rgb(190, 190, 190); */
	background-color: transparent;
	font-family: source-sans-pro, sans-serif;
	font-size-adjust: 0.52;
	font-weight: 700;
	font-style: normal;
	color: rgb(0, 56, 136);
	padding-bottom: 3.5px;
	padding-top: 3.5px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	border: none;
	text-align: center;
	transition: all 0.5s;
	cursor: pointer;
	font-size: 16px;
}

@media (max-width: 770px) {
	.bloctxt {
		font-size: 15px;
	}
}

@media (max-width: 715px) {
	.bloctxt {
		font-size: 13px;
	}
}

@media (max-width: 630px) {
	.bloctxt {
		font-size: 12.5px;
	}
}

@media (min-width: 615px) {
	.bloctxt {
		white-space: nowrap;
		overflow: hidden
	}
}

@media (max-width: 350px) {
	.bloctxt {
		font-size: 12px;
	}
}

@media (max-width: 330px) {
	.bloctxt {
		font-size: 11px;
	}
}

@media (max-width: 300px) {
	.bloctxt {
		font-size: 10px;
	}
}

.millieupage {
	clear: both;
	display: inline-block;
	padding-top: 20px;
	padding-bottom: 22px;
	width: 95%;
	font-family: Roboto, sans-serif;
}

@media (max-width: 500px) {
	.millieupage {
		padding-top: 10px;
		padding-bottom: 15px;
	}
}

.imgchapitre {
	width: 90%;
	text-align: center;
}

.blocimgtxt {
	float: left;
	width: 33.333%;
	text-align: center;
	display: block;
	padding-top: 20px;
}

@media (min-width: 2500px) {
	.blocimgtxt {
		width: 25%;
	}
}

@media (max-width: 1300px) {
	.blocimgtxt {
		width: 50%;
	}
}

@media (max-width: 615px) {
	.blocimgtxt {
		width: 100%;
	}
}

.logobashorizontal {
	width: auto;
	height: 25px;
	padding-right: 10px;
	padding-left: 10px;
	transform: translateY(30%);
}

@media (max-width: 400px) {
	.logobashorizontal {
		height: 20px;
	}
}
/* Main sur les boutons cliquables (les navigateurs affichent la flèche par défaut). */
button:not(:disabled),
input[type="submit"]:not(:disabled),
input[type="button"]:not(:disabled) {
	cursor: pointer;
}
