
/* DEFAULT------------------------------------- */
*{	margin: 0px;
	padding: 0px;
	font-family: "roboto slab", serif;
    font-optical-sizing: auto;
	font-weight: 400; /* texte courant */
	text-decoration: none;
}

h1, h2, h3, .titleClass {
	font-weight: 700; /* titres en gras pour les différencier */
}

.titleClass {
	font-size: 22px;
}

body {
	background-color:#f9f7f3;
}

.underline {
  text-decoration: underline;
}	

a {
	color: rgb(0,0,0);
}

section {
	color : rgb(35,33,38);
	/* background-color: rgb(242,240,239); */
	background-color: #f9f7f3;
	padding : 40px;
}

section p{
	color:rgb(0,0,0);
}

.globalContainer {
	/* max-width : 1200px; */
	margin: 0 auto;
	width: 100%;
}

/* HEADER------------------------------------------------------------------------------------------- */
.head1{
	color : rgb(242,240,239);
	background-color: rgb(145,108,43);
	text-align: center;
	text-transform: uppercase;
	
	padding : 5px;	
	padding-bottom: 0px;
	
	/* Alignement horizontal */
	display: flex;
	align-items: center;        
	justify-content: space-between; 
	gap: 20px;   
}

.head1 img {
	max-height: 100px; 
	max-width: 129px;
}

.head1 button {
	margin: 20px;
	padding: 10px;
	border-radius: 10px;
	color : rgb(255,255,255);
	background-color: rgb(255,9,9);
	font-size : 16px;
	cursor: pointer;
	border-style: solid;
	border-color: #FFFFFF;
	height: 46px;
	border-radius: 10px;
}

.head1 a:hover{
	transform: scale(0.95);
}

.head1 button:hover{
	transform: scale(0.95);
}

.phoneButton {
	display: flex;
	align-items: center; 
	justify-content: center;
	gap: 0px;          
	text-decoration: none;
}

.phoneButton img{
	display: flex;
	align-items: center; 
	justify-content: center;
	gap: 0px;          
	text-decoration: none;
	max-height: 54px;
}

.smartphoneButtonClass{
	display: none;
	
	position: sticky;
	top : 100px;
	
}

.smartphoneButtonClass img {
	margin: 10px;
	padding: 0px;
	max-height: 54px;
	background-color: rgb(255,9,9);
	border-radius: 15px;

	margin-top: -35px;

	box-shadow: 5px 10px 18px #888888;	

}

.smartphoneButtonClass img:hover{
	transform: scale(0.95);
}

/* A PROPOS----------------------------------------------------------------------------------- */

.aProposClass {
	font-size : 19px;
	color : rgb(35,33,38);
	background-color: rgb(145,108,43);

	display: flex;
	justify-content: center;
	height : 40px;
	margin-top: -25px;

}

.aProposClass img {
	border-radius: 0px;
	/* max-width: calc(100vw - 80px); */
	padding:0px;
	margin:0px;

}

.aProposContentClass {
	display: flex;
	flex-direction: row; 
	gap: 75px;
	max-width: 920px;
	margin: auto;		
	background-color: rgb(242, 230, 210);	
	padding: 10px;
	box-shadow: 5px 10px 18px #888888;
}


.aProposContentClass img{
	border-radius: 0px;
	max-height : 207px;
	max-width: 267px;
}

/* Style du drapeau de la Savoie inline */
.flag-icon {
    display: inline-block;
    height: 0.9em;             /* S'adapte à la hauteur du texte */
    width: auto;
    vertical-align: middle;    /* Aligne le drapeau avec le texte */
    margin-left: 4px;          /* Petit espace avant le drapeau */
    margin-right: 2px;
    border-radius: 2px;        /* Coins légèrement arrondis pour la finition */
}

/* SERVICES ----------------------------------------------------------------------------------- */
.serviceClass {
    display: flex;
	flex-flow: row wrap;
	justify-content :center;
    gap: 40px;
    font-size: 16px;
}

.serviceClass img{
	border-radius: 15px;
	max-height: 300px;
	max-width: 300px;
} 

/* CHANTIERS ----------------------------------------------------------------------------------- */
.chantiersClass {
	display: flex;
	flex-flow: row wrap;
	justify-content :center;
	gap : 5px;
}

.chantiersClass img{
	max-height: 300px;
	border-radius: 15px;
	
}

/* DEVIS --------------------------------------------------------------------------------------------- */
.wholeDevisClass{
	color : rgb(242,240,239);
	background-color: rgb(145,108,43);
	text-align: center;
	text-transform: uppercase;
	padding : 40px;		
}


.wholeDevisClass button{
	padding: 20px;
	margin-top : 10px;
	text-align: center;
	max-width: 400px;
	width: 100%;
	
	align-self: center;
	
	border-radius: 10px;
	color : rgb(255,255,255);
	background-color: rgb(255,9,9);
	font-size : 18px;
	cursor: pointer;
	border-style: solid;
	border-color: #FFFFFF;
}

.wholeDevisClass button:hover{
	transform: scale(0.95);
}

#devisFormID {
	display: flex;
	flex-direction: column;
	gap: 15px;
	align-items: center;
}

#devisNameID, #devisTelID, #devisEmailID, #devisMessageID {
	width: 400px;
	text-align: left;
}

#devisFormID input[type="text"], input[type="tel"], input[type="email"]{
	width : 400px;
	height : 25px;
}

#devisFormID textarea{
	width : 400px;
	height : 150px;
}

/* CONTACT--ADDRESS----MAP----------------------------------------------------------------------------- */
address {
	background-color: #f9f7f3;
	padding: 40px 20px;	
	font-style: normal;
	margin-bottom: 40px;

	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 60px;
	flex-wrap: wrap;
}

/* Style du conteneur et du Iframe de la carte */
.mapClass {
	width: 320px;
	height: 180px;
}

.mapClass iframe {
	width: 100%;
	height: 100%;
	border-radius: 15px;
	box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
}

/* Conteneur des coordonnées */
.contactInfoClass {
	display: flex;
	flex-direction: column;
	gap: 15px;
	text-align: left;
}

/* Chaque ligne avec icône + texte */
.contact-item {
	display: flex;
	align-items: center;
	gap: 15px;
	font-size: 16px;
	font-style: italic;
}

.contact-item p {
	color:rgb(0,0,0);
	font-style: normal;
	font-size : 20px;

}

.contact-item img {
	width: 24px;
	height: 24px;
	object-fit: contain;
	padding: 0;
}

.contact-item a, 
.contact-item span {
	color: #000000;
	text-decoration: none;
}

.contact-item a:hover {
	text-decoration: underline;
}

/* FOOTER----MENTIONS LEGALES ------------------------------------------------------------------------------------- */
footer {

	/* background-color: rgb(145, 108, 43); */
	background-color: #222222;
	padding : 20px;	
	font-size: 12px;
	
	display: flex;
	align-items: center; 
	justify-content: center;
	gap: 100px;
}

footer a,p{
	color:#f9f7f3;
}



@media screen and (max-width: 960px){ 
	section {
		padding-top :10px;
	}
	
	.head1{
		padding-bottom: 30px;
	}
	
	.head1 a{
		display: none;
	}
	
	.head1 img{
		display: none;
	}
	
	.head1 h1{
		align-items:center;
		font-size: 45px;
	}

	.smartphoneButtonClass{
	display: block;
	}
	
	.aProposContentClass {
		display: flex;
		flex-direction: column;
		align-items : center;
	}

	#devisNameID, #devisTelID, #devisEmailID, #devisMessageID {
		width: 250px;
		text-align: left;
	}

	#devisFormID input[type="text"], input[type="tel"], input[type="email"]{
		width : 250px;
		height : 25px;
	}

	#devisFormID textarea{
		width : 250px;
		height : 75px;
	}
	
	footer {
	padding : 20px;	
	
	display: flex;
	align-items: center; 
	justify-content: center;
	gap: 12px;
}
}



/* ----------------------------------------------------------------------------------------------------------- */
/* ------------------------------- MENTIONS LEGALES ----------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------- */
.homeButton {
	display: flex;
	align-items: center; 
	justify-content: center;
	gap: 0px;          
	text-decoration: none;
	max-height: 54px;
}

.mentionsLegalesID {
	color : rgb(35,33,38);
	/* background-color: rgb(242,240,239); */
	background-color: #f9f7f3;
	font-size: 14px;
	padding : 40px;
	
}
.mentionsLegalesID a{
	text-align: center;
}

.mentionsLegalesID a:hover{
	color : rgb(0,0,255);
}
	


