/* Styles globaux */
* { box-sizing: border-box; }
body { margin: 0; }

/* Vidéo plein écran en arrière-plan */
.video-bg {
  position: fixed;
  right: 0;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  background: rgba(0, 0, 0, 0.8);
}

/* Contenu principal */
.page {
  position: fixed;
  bottom: 0;
  width: 100%;
  padding: 20px;
}

.hero-container {
  display: grid;
  min-height: 100vh;
  place-items: center;
}

/* Utilitaires */
.text-center { text-align: center; }

/* Titres */
h1,
h2 {
  font-family: 'Lato', sans-serif;
  font-weight: 300;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
  color: #fff;
}

h1 { font-size: 1.5em; }
h2 { font-size: 0.8em; }

/* Liens */
.link-muted,
.mail_dustfolio {
  color: #bbb;
  font-family: 'Lato', sans-serif;
  margin-top: 38px;
  display: block;
  text-align: center;
}

.mail_dustfolio { margin-top: 4px; }

/* Logos */
.logo_ub {
  margin-top: 50px;
  max-width: 130px;
  filter: invert(200%) contrast(200%);
}

/* Variation de taille pour certains visuels */
.logo-lg { max-width: 220px; }

/* Sections et espacements */
.spaced-b24 { padding-bottom: 24px; }
.section-sep { border-top: 1px solid #aaa; padding-top: 0; padding-bottom: 24px; }
.section-sep-lg { border-top: 1px solid #aaa; padding-top: 44px; padding-bottom: 24px; }

/* Ligne de lien avec icône/visuel */
.link-row { display: flex; align-items: center; gap: 12px; color: #fff; text-decoration: none; }
.link-row span { font-weight: 400; color: #fff; font-size: 1.2rem; }
.logo-inline { height: 45px; width: auto; }
