:root {
  --primary: rgb(252, 214, 89);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "Raleway", sans-serif;
  background-color: rgb(255, 255, 255);
}

li {
  list-style: none;
}

a {
  text-decoration: none;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/*----------------------header-----------------------*/
header {
  background-color: var(--primary);

  /* box-shadow: inset; */
  /* position: fixed; */
  /* width: 100%; */
}

nav {
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.menu_container ul {
  display: flex;
  flex-direction: column;

  /* gap: 1px; */
}
@media screen and (min-width: 680px) {
  .menu_container ul {
    flex-direction: row;

    gap: 30px;
  }
}

.menu_container a {
  text-decoration: none;
  color: rgb(26, 25, 25);
}
.menu_container a:hover {
  color: rgb(246, 246, 248);
}

.menu_container li {
  padding: 10px 20px;
  display: flex;

  /* background-color: rgb(68, 68, 68);
  border-radius: 10%; */
}

.bouton {
  padding: 10px 15px;
  display: flex;
  border: 1px solid black;
  border-radius: 10px;
  color: white;

  background-color: black;
  text-decoration: none;
  /* transition: background-color 0.3s, color 0.3s; */
  transition: 0.3s ease;
}
.bouton:hover {
  /* background-color: black;
  color: white; */
  transform: scale(1.08);
}
/*-----------------hero-----------------*/
.hero {
  background-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0.4) 0%,
      rgba(0, 0, 0, 0.4) 99%
    ),
    url("../image/12.png");
  min-height: 70vh;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
}
.hero-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin: 0 20px;
}
h1 {
  color: white;
  font-variation-settings: "XROT" 0, "YROT" 0;
  font-size: 32px;
  font-family: "Nunito", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
@media screen and (min-width: 980px) {
  h1 {
    /* font-variation-settings: "wght" 700, "wdth" 75; */
    font-size: 100px;
    font-weight: 800;
  }
}
h1 span {
  display: block;
}
.hero-span {
  font-family: "Tilt Neon", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color: rgb(238, 238, 238);
  font-size: 1.5rem;
}

.hero-links {
  padding: 30px 0px;
  border-radius: 4px;
  font-size: 1.2rem;
  display: flex;
  gap: 20px;
}

.hero-link {
  display: block;
  width: fit-content;
}

/* @media screen and (max-width: 400px) {
  .hero-links {
    flex-direction: column;
    gap: 15px;
  }
} */

.hero-links a:first-child {
  background-color: var(--primary);
  color: black;
  padding: 10px 20px;
  border-radius: 4px;
  /* transition: transform 0.3s ease; */
}
.hero-links a:first-child:hover {
  /* transform: scale(1.08); */
  background-color: rgb(109, 108, 108);
}

.hero-links a:last-child:hover {
  /* transform: scale(1.08); */
  background-color: rgb(109, 108, 108);
}
.hero-links a:last-child {
  background-color: black;
  color: white;
  border-radius: 4px;
  padding: 10px 20px;
}

.a-propos-image img {
  height: auto;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border-radius: 4px;
  object-fit: cover;
}
.a-propos {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.a-propos__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  gap: 30px;
}
.a-propos__content .scroll-container {
  max-height: 220px;
  overflow-y: auto;
}
@media screen and (min-width: 980px) {
  .a-propos__content {
    flex-direction: row;
    text-align: start;
  }
}

.a-propos,
#nos-cours .test {
  flex-direction: column;
  margin: 50px auto;
  padding: 50px;
  background-color: rgb(248, 247, 243);
  width: 70%;
  height: auto;
  border-radius: 30px;
  box-shadow: 0px 4px 10px rgb(83, 83, 83);
}
h2 {
  padding: 20px;
  text-align: center;
}
.nos-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 30px;
  text-align: center;
  gap: 10px;
}
.a-propos p {
  color: rgb(0, 0, 0);
}

.cours-chiot {
  margin: 50px;
  padding: 0;
  /* gap: 70px; */
  width: 250px;
  background-color: rgb(252, 253, 255);
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  border-radius: 3%;
  overflow: hidden; /* Assure que l'image respecte les coins arrondis */
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
}
.cours-chiot span {
  margin: 5px auto;
  padding: 5px;
  width: 100px;
  display: block;
  background-color: var(--primary);
  color: rgb(252, 248, 248);
  border-radius: 10%;
}
.cours-chiot .six-mois span {
  margin: 5px auto;
  padding: 5px;
  width: 100px;
  display: block;
  background-color: rgb(11, 94, 247);
  color: rgb(248, 246, 246);
  border-radius: 10%;
}
.cours-chiot .deux-ans span {
  margin: 5px auto;
  padding: 5px;
  width: 100px;
  display: block;
  background-color: rgb(2, 119, 37);
  color: rgb(248, 246, 246);
  border-radius: 10%;
}
/* .cours-chiot img {
  height: 50%;
  width: 100%;

  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
} */

.divtest {
  overflow: hidden;
  height: 150px;
}

.imgtest {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.cours-chiot img:hover {
  transform: scale(1.1); /* Zoom léger au survol */
}
.cours-chiot .jeun {
  text-align: center;
  padding: 10px;
}
.cours-chiot h3 {
  margin: 5px;
  font-size: 18px;
}
.cours-chiot p {
  margin: 10px 0;
  text-align: center;
  font-size: 14px;
  color: rgb(56, 56, 3);
}
.cours-chiot .bouton-jeun {
  /* display: flex; */
  text-align: center;
  margin: 10px;
  padding: 20pxs;
}
.cours-chiot .bouton-jeun a {
  padding: 15px;
  background-color: rgb(109, 107, 107);
  display: inline-block;
  color: white;
  text-decoration: none;
  border-radius: 10px;
  transition: background-color 0.3s, color 0.3s;
}
.cours-chiot .bouton-jeun a:hover {
  background-color: black;
  color: white;
}
/*---------------------------footer-------------------*/
footer {
  /* background-color: var(--primary); */
  background-color: rgb(56, 55, 55);
  width: 100%;
  height: 15%;
}

.footer-section {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 980px) {
  .footer-section {
    justify-content: space-around;
    flex-direction: row;

    /* flex-wrap: wrap; */
  }
}
.footer-section-1 {
  margin: 40px;
  padding: 10px;
  color: var(--primary);
  background-color: rgb(61, 60, 60);
  width: 75%;
  /* height: ; */
  border-radius: 10px;
  /* box-shadow: ; */
  display: flex;
  flex-direction: column;
}
.footer-section-1 h3 {
  margin-bottom: 10px;
}

.footer-section-1 p {
  line-height: 25px;
}
/*---------------------------footer---fin----------------*/
/*-----------login------*/

.login,
.signup {
  width: 100%;
  max-width: 500px;
  margin: 100px auto;
  border-radius: 30px;
  box-shadow: 0px 4px 10px rgb(83, 83, 83);
  background-color: white;
  padding: 40px;
}

.login__title {
  /* padding: 20px; */
  /* text-align: center; */
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}
.signup__title {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
}
.signup__title-connect {
  margin-bottom: 30px;
  padding-bottom: 10px;
}
.login__title-connect {
  color: var(--primary);
  text-decoration: none;
  padding-bottom: 10px;
  font-size: 25px;
  display: inline-block;
  position: relative;
  /* margin: 25px auto; */
  border-bottom: 3px solid var(--primary);
  /* width: fit-content; */
}
.signup__title-connect {
  color: var(--primary);
  border-bottom: 3px solid var(--primary);
  /* position: relative; */
  font-size: 25px;
  display: flex;
  justify-content: center;
  /* text-align: center; */
}
/* .login__title-connect::after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background-color: var(--primary);
  position: absolute;
  left: 0;
  bottom: -7px;
} */
.login__title-connect:hover {
  color: rgb(134, 134, 134);
}
.login__title-register {
  font-size: 1.4rem;
  color: black;
  text-decoration: none;
  padding: 25px;
}
.login__title-register:hover {
  color: rgb(122, 122, 122);
}
.login__title-inscription:hover {
  color: rgb(134, 134, 134);
}
/* .login__form-wrapper {
  display: inline-block;
  padding: 10px;
  margin: 10px;
  margin-top: 20px;
  text-align: left;
} */
.formulaire {
  width: 90%;
  /* padding: 20px; */
  margin: auto;
}

input {
  padding: 10px auto;
  margin: 30px auto;
  width: 100%;
  border: none;
  border-bottom: 2px solid grey;
  outline: none;
  border-radius: 10px;
}
input:focus {
  border-bottom-color: var(--primary);
  background-color: rgb(241, 241, 239);
  height: 30px;
}
.login-action {
  margin: 0 50px;
  display: flex;
  /* justify-content: left; */
  /* align-items: center;*/
  flex-direction: column;
  /* margin-top: 10px; */
}

.login-button {
  background-color: var(--primary);
  color: black;
  border: none;
  margin: 30px;
  padding: 10px 15px;
  border-radius: 5px;
  width: 80%;
  cursor: pointer;
  display: flex;
  justify-content: center;
}
button:hover {
  background-color: black;
  color: rgb(250, 215, 101);
}

.option {
  padding: 10px 15px;
  margin: 30px;
  /* padding-left: 100px; */
  text-decoration: none;
  color: black;
  padding: 10px 15px;

  width: 100%;
}
.option:hover {
  color: var(--primary);
  border: none;
  /* margin: 10px; */
  padding: 10px 15px;
  width: 100%;
}
/*------------------page client----------------------*/
.titl h1 {
  color: black;
  font-size: 1.5em;
}
.client-form__header {
  display: flex;
  justify-content: space-around;
  border-bottom: 2px solid var(--primary);
}
.client-form__form {
  margin: 50px 100px;
  padding: 10px 15px;
  width: 35%;
  /* height: 500px; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: white;
}
.form-error {
  padding: 10px 15px;
  color: rgb(250, 250, 250);
  background-color: rgb(220, 53, 69);
  width: auto;
  /* height: fit-content; */
  border-radius: 5px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  animation: fadeIn 0.4s ease-in-out;
}

.menu {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
  /* align-items: center;
  /* gap: 15px;
  margin: 0 30px; */
}

@media (max-width: 980px) {
  .menu {
    flex-direction: column;

    /* border-bottom: 1px solid var(--primary); */
  }
}

.client-menu {
  margin: 10px;
  padding: 5px;
  /* box-sizing: border-box; */
  /* width: auto; */
  color: var(--primary);
  /* box-shadow: 0px 4px 10px rgb(124, 124, 124); */
  border-radius: 10px;
  border-bottom: 2px solid var(--primary);
}
.client-menu:hover {
  background-color: rgb(236, 236, 235);
  transition: background-color 0.3s ease;
}
.client-menu__link a {
  color: black;
}

.list-dog {
  padding: 30px;
  display: flex;
  justify-content: center;
}
.table {
  padding: 20px;
  display: block;
  overflow: hidden;
  box-shadow: 1px 4px 10px rgba(0, 0, 0, 0.05);
  border-radius: 10px;
  /* background-color: rgb(228, 227, 225); */
  /* border: 1px solid; */
  /* box-sizing: border-box; */
  /* border-collapse: collapse; */
}

.table-titre th {
  padding: 10px;
  background-color: var(--primary);
  border-radius: 10px;
}
.table-text td {
  padding: 10px;
  border-bottom: 1px solid var(--primary);
  border-radius: 10px;
}
.table tr:hover {
  background-color: rgb(236, 236, 235);
  transition: background-color 0.3s ease;
}
.table-text a {
  color: rgb(83, 83, 82);
  font-size: 18px;
}
.table-text a:hover {
  color: black;
}

.container-cours {
  margin: 20px;
  background-color: rgb(219, 216, 216);
  width: 75%;
  box-sizing: border-box;
  box-shadow: 1px 4px 10px rgba(0, 0, 0, 0.05);
  border-radius: 15px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 15px;
}

/* ------------cours -------------*/

h1 .titre {
  text-align: center;
  font-size: 2.5rem;
  margin-bottom: 50px;
  color: black;
}

#cours-chiot {
  margin: auto 10%;
  background-color: #f0f0f0;
  padding: 40px 20px;
  border-radius: 10px;
  width: 80%;
}

#cours-chiot h2 {
  text-align: center;
  font-size: 2rem;
  margin-bottom: 30px;
}
.course-age {
  padding: 40px;
}
.cartes-cours {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: center;
}

.carte-cours {
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  max-width: 500px;
  flex: 1 1 300px;
  display: flex;
  flex-direction: column;
}


.carte-cours img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.contenu-cours {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}


.contenu-cours h3 {
  font-size: 1.5rem;
  color: rgb(2, 119, 37);
}

.infos-cours,
.tarif,
.horaire {
  font-weight: bold;
  font-size: 0.95rem;
  color: #666;
}

.description {
  font-size: 1rem;
  line-height: 1.6;
}


.btn-inscription {
  margin-top: auto;
  display: inline-block;
  background-color: #444;
  color: #fff;
  text-decoration: none;
  padding: 10px 20px;
  text-align: center;
  border-radius: 8px;
  transition: background-color 0.3s ease;
}

.btn-inscription:hover {
  background-color: rgb(2, 119, 37);
}

/* Responsive (mobile) */
@media (max-width: 768px) {
  .cartes-cours {
    flex-direction: column;
    align-items: center;
  }

  .carte-cours {
    max-width: 90%;
  }
}
