/* =======================
   Base Styles
   ======================= */
body {
  font-family: "Poppins", sans-serif;
  /* margin-left moved to .with-sidebar utility */
}

@media (max-width: 768px) {
  body {
    margin-left: 0;
    margin-top: 60px;
  }
}

/* =======================
   Icônes
   ======================= */
.icon img {
  display: inline-block;
  vertical-align: middle;
}
.icon-home img           { width: 33px; height: 28px; }
.icon-entreprise img     { width: 37px; height: 32px; }
.icon-realisationpro img { width: 37px; height: 35px; }
.icon-veilletechno img   { width: 37px; height: 36px; }
.icon-skills img         { width: 37px; height: 35px; }
.icon-outils img         { width: 40px; height: 37px; }

/* =======================
   Titres & Barres
   ======================= */
.Titre {
  background-image: url('../images/Veille_technologique/veille_technologie1.jpg');
  background-color: rgb(0, 0, 0);
  background-size: cover;
  background-position: 0 0px;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding-bottom: 24%;
  padding-top: 10%;
}
.Titre_pro {
  text-align: center;
  padding-top: 15%;
  line-height: 130%;
  font-size: 300%;
  color: #fff;
}
@media (max-width: 900px) {
  .Titre_pro { font-size: 200%; }
}
#hr1 {
  background-color: white;
  width: 40%;
  margin-left: 40%;
  margin-right: 40%;
  border: solid 4px white;
  border-radius: 10px;
}
#hr2 {
  background-color: rgb(0, 0, 0);
  border: solid 2px rgb(0, 0, 0);
  border-radius: 10px;
  margin-left: 30%;
  margin-right: 30%;
}
.titres {
  padding: 2%;
  font-size: x-large;
}

/* =======================
   Search Bar
   ======================= */
.search__container {
  text-align: center;
  padding-left: 10%;
}
.search__title {
  font-size: 22px;
  font-weight: 800;
  text-align: center;
  color: #000;
  padding-bottom: 10px;
}
.search__input {
  width: 430px;
  padding: 12.5px 24px;
  background-color: transparent;
  transition: transform 250ms ease-in-out;
  font-size: 14px;
  line-height: 18px;
  color: #575756;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z'/%3E%3Cpath d='M0 0.menu_titre4v24H0z' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 18px 18px;
  background-position: 95% center;
  border-radius: 50px;
  border: 1px solid #575756;
  transition: all 250ms ease-in-out;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}
.search__input::placeholder {
  color: rgba(87, 87, 86, 0.8);
  text-transform: uppercase;
  letter-spacing: 1.5px;
}
.search__input:hover,
.search__input:focus {
  padding: 12px 0;
  outline: 0;
  border: 1px solid transparent;
  border-bottom: 1px solid #575756;
  border-radius: 0;
  background-position: 100% center;
}
.credits__container { margin-top: 24px; }
.credits__text {
  text-align: center;
  font-size: 13px;
  line-height: 18px;
}
.credits__link {
  color: #ff8b88;
  text-decoration: none;
  transition: color 250ms ease-in;
}
.credits__link:hover,
.credits__link:focus {
  color: rgb(191, 137, 135);
}

/* =======================
   Menu déroulant
   ======================= */
.menu_button {
  padding: 0;
  margin-left: 10px;
  background: #2d2f31;
  color: #fff;
  font-size: 1.2em;
  font-variant: small-caps;
  cursor: pointer;
  border-radius: 50px;
  width: 8em;
  height: 2.3em;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  outline: 0;
  font: inherit;
  width: 12em;
  height: 2.7em;
  margin-left: 10px;
  padding: 0 4em 0 1em;
  background: url('https://upload.wikimedia.org/wikipedia/commons/9/9d/Caret_down_font_awesome_whitevariation.svg') no-repeat right 0.8em center/1.4em, linear-gradient(to left, #5e6266 3em, #2d2f31 3em);
  color: #fff;
  border-radius: 50px;
  cursor: pointer;
}
select option {
  color: inherit;
  background-color: #320a28;
}
select:focus { outline: none; }
select::-ms-expand { display: none; }

/* =======================
   Scroll Top Button
   ======================= */
#myBtn {
  background-image: url('../images/arrow-up-outline.svg');
  background-size: 25px;
  background-repeat: no-repeat;
  background-position: center;
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 99;
  border: none;
  outline: none;
  background-color: rgb(139, 139, 139);
  cursor: pointer;
  padding: 19px;
  border-radius: 4px;
}

/* =======================
   Description & Blocks
   ======================= */
.description_veille {
  background-color: rgb(235, 235, 235);
  padding-left: 5%;
  padding: 1%;
  text-align: center;
  font-size: large;
  line-height: 140%;
}
#block {
  text-align: center;
  color: #000;
  padding: 2%;
  font-size: x-large;
}
#chain {
  text-align: center;
  padding: 1%;
}

/* =======================
   Container & Headings
   ======================= */
.container {
  margin: 0 auto;
  width: 100%;
  text-align: center;
}
h1 {
  text-transform: uppercase;
  font-size: 0.8rem;
  margin-bottom: 2rem;
  color: #777;
}

/* =======================
   Articles & Grille
   ======================= */
.articles_veille {
  background-color: rgb(235, 235, 235);
  position: relative;
  display: flex;
  flex-wrap: wrap;
  text-align: center;
}
.grid {
  display: grid;
  margin-left: 0;
  grid-template-columns: repeat(auto-fill, minmax(300px, 2fr));
  background-color: rgb(235, 235, 235);
  grid-gap: 50px;
  padding: 2%;
  align-items: stretch;
  text-align: center; /* Correction ici */
}
.grid > article {
  border: 1px solid #ccc;
  box-shadow: 2px 2px 6px 0px rgba(0, 0, 0, 0.3);
  max-width: 350px;
  transition: transform 0.2s, box-shadow 0.2s;
}
.grid > article:hover {
  transform: scale(1.03);
  box-shadow: 0 4px 16px rgba(33,150,243,0.15);
}
.grid > article img {
  max-width: 100%;
  height: 200px;
  align-items: center;
}
.grid > article address {
  text-align: center;
  vertical-align: bottom;
}
.grid .text { padding: 20px; }
.grid > article p,
.grid > article h3 { margin-bottom: 0; }
.grid > article div a { text-align: center; }

/* =======================
   Étoiles & Boutons
   ======================= */
.checked { color: orange; }
.btn-primary {
  color: #fff;
  background: linear-gradient(90deg, orange 0%,  #00a028  40%, #2196f3 100%);
  border: none;
}
.btn-primary:hover {
  color: #fff;
  background: linear-gradient(90deg, #ff9800 0%, #2196f3 100%);
  border: none;
}

.btn-block {
  display: block;
  position: relative;
  width: 100%;
}
.btn-block + .btn-block { margin-top: .5rem; }
input[type=button].btn-block,
input[type=reset].btn-block,
input[type=submit].btn-block { width: 100%; }
.btn {
  text-decoration: none;
  border-radius: 5px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin-top: 5px;
}