/* Created by Jonathan Roux - Utilisation interdite dans une autre formation*/
/* Modified by François LANDRY-BARTHE  for BIM-Building Sàrl*/

body {
  margin: 0;
  line-height: normal;
  display: flex;
  flex-direction: column;
  position: relative;
  background-color: var(--color-white);
  width: 100%;
  overflow-x: hidden;
  align-items: center;
  justify-content: flex-start;
  gap: var(--gap-mini);
  text-align: left;
  font-size: var(--font-size-3xl);
  color: var(--color-white);
  font-family: var(--font_nom-marque);
}
:root {

  /* Paramètres */
  --nom-marque: 'BIM-Building';
  --taille-logo: 90px;
  --fichier-logo: url("https://bim-building.ch/Pictures/BIM-B_Profile.png");
  --year: "2025";
  --font_nom-marque: "Helvetica Neue";
  --devise: "CHF";
  --version: "1.0";

  /* font sizes */
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-mini: 15px;
  --font-size-base: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-3xl: 22px;
  --font-size-10xl: 28px;
  --font-size-11xl: 30px;
  --font-size-14xl: 33px;
  --font-size-15xl: 36px;
  --font-size-23xl: 42px;

  /* Colors */
  --color-white: #fff;
  --color-black: #000;
  --color-gray-100: rgba(255, 255, 255, 0.8);
  --color-darkblue: #070044;
  --color-accent:#4f46e5;
  --color-warning:#eab308;
  --color-bg:#0b0c10;
  --color-muted:#1a1f2a;
  --color-bim-building-blue: #3E497C;
  --color-bim-building-grey: #B4B5B4;

  /* Gaps */
  --gap-0: 0px;
  --gap-7xs: 6px;
  --gap-3xs: 10px;
  --gap-sm: 14px;
  --gap-mini: 15px;
  --gap-md: 18px;
  --gap-13xl: 32px;
  --gap-16xl: 35px;
  --gap-21xl: 40px;
  --gap-27xl: 46px;
  --gap-41xl: 60px;

  /* Paddings */
  --padding-0: 0px;
  --padding-10xs: 3px;
  --padding-7xs: 6px;
  --padding-3xs: 10px;
  --padding-1xs: 12px;
  --padding-sm: 14px;
  --padding-mini: 15px;
  --padding-md: 16px;
  --padding-lg: 18px;
  --padding-3xl: 22px;  
  --padding-5xl: 24px;
  --padding-8xl: 27px;
  --padding-21xl: 40px;
  --padding-27xl: 46px;
  --padding-31xl: 50px;
  --padding-42xl: 61px;
  
    /* Margins */
  --margin-0:0px;
  --margin-10xs: 3px;
  --margin-9xs: 4px;
  --margin-7xs: 6px;
  --margin-5xs: 8px;
  --margin-3xs: 10px;
  --margin-mini: 15px;
  --margin-lg: 18px;
  --margin-3xl: 22px;  
  --margin-5xl: 24px;
  --margin-8xl: 27px;
  --margin-17xl: 36px;
  --margin-21xl: 40px;
  --margin-27xl: 46px;
  --margin-31xl: 50px;
  --margin-42xl: 61px;
  --margin-61xl: 80px;

  /* border radiuses */
  --br-8xs: 5px;
  --br-mini: 15px;
  --br-lg: 18px;
  --br-maxi: 999px;
  
}

h1 { 
  margin: var(--margin-0);
  font-size: 50px;
}

h2, h3 {
  margin: var(--margin-0);
}

.marque {
  position: relative;
  line-height: 168.6%;
  font-weight: 800;
}

.marque::after {
  content: var(--nom-marque);
}

.logo {
  flex: 1;
  display: flex;
  flex-direction: row;
  padding: var(--padding-0) var(--padding-mini);
  align-items: center;
  justify-content: flex-start;
  gap: var(--gap-mini);
  text-decoration: none;
  color: white;
}

.logo-image {
  background-image: var(--fichier-logo);
  background-size: cover;
  width: var(--taille-logo);
  height: var(--taille-logo);
}

div.menu a {
  position: relative;
  line-height: 44px;
  cursor: pointer;
  text-decoration: none;
  color: var(--color-bim-building-grey);
}

div.menu a:hover {
  color: white;
}

.menu {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.menu {
  padding: var(--padding-0) var(--padding-21xl);
  justify-content: flex-end;
  gap: var(--gap-16xl);
  text-align: center;
  font-size: var(--font-size-lg);
  color: var(--color-bim-building-grey);
}

#header {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
  height: 42.6px;
  padding: var(--padding-0) var(--padding-mini);
  box-sizing: border-box;
  justify-content: center;
  margin-top: 20px;
}

.couleur-accent {
  color: var(--color-bim-building-grey);
}

.logo2 {
  flex: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: var(--gap-mini);
}

.termes-et-conditions {
  margin: var(--margin-0);
  text-decoration: none;
  color: var(--color-white);
}
.termes-et-conditions-container {
  position: relative;
  font-size: var(--font-size-base);
  line-height: 245.1%;
  font-weight: 500;
  text-align: right;
}
.footercontent {
  align-self: stretch;
  display: flex;
  flex-direction: row;
  padding: var(--padding-27xl) var(--padding-0);
  align-items: center;
  justify-content: flex-start;
  gap: var(--gap-sm);
}

.bim-building-droits {
  position: relative;
  font-size: var(--font-size-sm);
  line-height: 245.1%;
  font-weight: 500;
  color: var(--color-gray-100);
  text-align: center;
}

.bim-building-droits::before {
  content: '© ' var(--nom-marque)
}

.bim-building-droits::after {
  content: ' ' var(--year)
}

#footer {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  background-color: var(--color-black);
  padding: var(--padding-lg) var(--padding-21xl);
  align-items: flex-start;
  justify-content: center;
  gap: var(--gap-3xs);
}

.space {
  align-self: stretch;
  height: 42px;
}

.container{
  max-width:1000px;
  margin-inline:auto;
  padding:var(--padding-21xl) var(--padding-lg)
}

.badge{
  display:inline-flex;
  gap:var(--gap-7xs);
  align-items:center;
  font-size:var(--font-size-xs);
  line-height:1;
  border:1px solid var(--color-muted);
  padding:var(--padding-7xs) var(--padding-3xs);
  border-radius:var(--br-maxi);
  color:var(--color-bim-building-grey);
  background:rgba(255,255,255,0.02)
}

p.lead{
  font-size:var(--font-size-base);
  color:var(--color-bim-building-grey);
  max-width:70ch;
  margin:var(--margin-0)
}

.card{
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));
  border:1px solid var(--color-x);
  border-radius:var(--br-lg);
  padding:var(--padding-3xl)
}

.grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--gap-mini)
}



@media screen and (max-width: 580px) {
  .footercontent, .logo2 {
    align-items: center;
    justify-content: flex-start;
  }
  .logo2 {
    flex-direction: row;
    gap: var(--gap-mini);
    flex: unset;
    align-self: stretch;
  }
  .footercontent {
    flex-direction: column;
    gap: var(--gap-21xl);
  }
}

@media screen and (max-width: 620px) {
  .logo {
    flex-direction: row;
    gap: var(--gap-mini);
    align-items: center;
    justify-content: flex-start;
    flex: unset;
    align-self: stretch;
  }
  .menu {
    display: none;
  }
  
  #header {
    flex-direction: column;
    gap: var(--gap-0);
    align-items: center;
    justify-content: center;
  }
}

@media screen and (max-width: 960px) {
  .bim-building{
    font-size: var(--font-size-xl);
  }
}

