/* =========================================================================
   base.css : Variables globales, reset, structure générale, wrappers, titres,
   responsive. À importer en premier dans le HTML.
   ======================================================================== */
/* -------------------- VARIABLES -------------------- */
:root {
  --orange: #ff6600;
  --orange2: #f7931e;
  --white: #ffffff;
  --dark: #232323;
  --light-gray: #e0e0e0;
  --gray-bg: #44464a;
  --font: 'Segoe UI', Arial, sans-serif;
  --max-width: 1300px;
}

/* -------------------- BASE -------------------- */
html, body {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  font-family: var(--font);
  font-style: normal; /* Force normal font style by default */
  color: var(--dark);
  background: var(--gray-bg);
  overflow-x: hidden;
}

/* Ensure all form elements use the same font and style */
input, select, textarea, button, label {
  font-family: var(--font);
  font-style: normal;
  outline: none;
  border: none;
}

body {
  min-height: 100vh;
}

/* -------------------- WRAPPER -------------------- */
.page-wrapper {
  width: 100%;
  max-width: var(--max-width);
  min-width: 320px;
  margin: 0 auto;
  background: none;
  padding: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.wrapper {
  width: 100%;
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 1em;
  box-sizing: border-box;
}

/* -------------------- TITRES -------------------- */
h2 {
  font-size: 2em;
  font-weight: 700;
  text-align: center;
  margin-bottom: 1em;
  color: var(--orange);
  letter-spacing: 1px;
  text-transform: uppercase;
  line-height: 1.3;
}
h3 {
  font-size: 1.2em;
  font-weight: 600;
  color: #232323;
  margin-top: 0.8em;
}

/* --- Utilitaires couleurs et poids --- */
.text-orange { color: var(--orange) !important; }
.text-white { color: var(--white) !important; }
.text-dark { color: var(--dark) !important; }

/* --- Icon Sizes (utilitaires globaux) --- */
.icon-sm { width: 28px !important; height: 28px !important; }
.icon-md { width: 36px !important; height: 36px !important; }
.icon-lg { width: 60px !important; height: 60px !important; }
.icon-xl { width: 100px !important; height: 100px !important; }
