/**
 * WEBSITE: https://themefisher.com
 * TWITTER: https://twitter.com/themefisher
 * FACEBOOK: https://facebook.com/themefisher
 * GITHUB: https://github.com/themefisher/
 */

/*!------------------------------------------------------------------
[MAIN STYLESHEET]

PROJECT:	Biztrox | Business HTML5 Template
VERSION:	1.0.0
-------------------------------------------------------------------*/
/*------------------------------------------------------------------
[TABLE OF CONTENTS]

1. BASE

    1.1. Typography
    1.2. Common Styles
        1.2.1 Page Title
        1.2.1 404 page
    1.3 Button Style

2. NAVIGATION

3. HERO AREA

4. SKILL SECTION

    4.1. fun-facts
    4.2. counter

5. PROGRESS SECTION

    5.1. progressbar title
    5.2. progressbar value

6. MISSION SECTION

    6.1. card header
    6.2. card body

7. PROMO VIDEO SECTION

8. TESTIMONIAL SECTION

    8.1. testimonial slider
    8.2. testimonial content

9. CONTACT

    9.1. Address Item
    9.2. Google Map
    9.3. COntact Form

10. CLIENT LOGO SLIDER

11. FUN-FACTS SECTION

12. CONSULTATION SECTION

    12.1 background image
    12.2 form-control

13. ABOUT SECTION

    13.1 about content
    13.2 about item
    13.3 about content 2
    13.4 about video
    13.5 about content 3
    13.6 about slider
    13.7 philosophy
    13.8 ceo

        13.8.1 ceo item
        13.8.1 ceo content
        13.8.1 ceo content-2


14. SERVICE SECTION

    14.1 service item
    14.2 service item 2
    14.3 clients
    14.4 Process
    14.5 service menu
    14.6 service brochure
    14.7 service schedule
    14.8 service consultation
    14.9 service single

        14.9.1 service single image
        14.9.2 service single content
        14.9.3 service single list
        14.9.4 service single benefit
        14.9.5 widget

15. WORK SECTION

    15.1 work slider
    15.2 slick dots

16. CALL TO ACTION

17. TEAM SECTION

    17.1 team item
    17.2 team content
    17.3 team member
    17.4 team single

        17.4.1 team member info item
        17.4.2 team member details

18. PRICING SECTION

    18.1 pricing item

19. PROJECT SECTION

    19.1 project menu
    19.2 project item
    19.3 project single

        19.3.1 project overview
        19.3.2 case study
        19.3.3 project single content

    19.4 nav-tabs
    19.5 tab content

20. FAQ SECTION

21. BLOG SECTION

    21.1 blog item
    21.2 blog content
    21.3 blog content 2
    21.4 blog post

        21.4.1 post slider
        21.4.2 post video
        21.4.3 pagination
        21.4.4 sidebar

    21.5 blog single

        21.5.1 blog single container
        21.5.2 blog single content
        21.5.3 blog single list
        21.5.4 blog single testimonial
        21.5.5 share tags
        21.5.6 comments
        21.5.7 blog-sidebar

22. CONTACT SECTION

    22.1 contact item
    22.2 contact form
    22.3 google map

23. SIGNUP WRAPPER

    23.1 signup greetngs
    23.2 signup form

24. COMMING SOON

    24.1 SYOtimer

25. FOOTER SECTION

    25.1 social link
    25.2 footer link
    25.3 subcription
    25.4 copyright
    25.5 back to top
-------------------------------------------------------------------*/
/* 1.1 typography */
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600,700|Poppins:300,400,500,600,700|Work+Sans:400,500,600");
body {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  font-size: 15px;
}

p, .paragraph {
  font-weight: 400;
  color: #666;
  font-size: 14px;
  line-height: 25px;
  font-family: "Open Sans", sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  color: #222;
  font-weight: 500;
  font-family: "Poppins", sans-serif;
}

h1, .h1 {
  font-size: 60px;
}
@media (max-width: 400px) {
  h1, .h1 {
    font-size: 30px;
  }
}

h2, .h2 {
  font-size: 36px;
}

h3, .h3 {
  font-size: 30px;
}

h4, .h4 {
  font-size: 20px;
}

h5, .h5 {
  font-size: 18px;
}

h6, .h6 {
  font-size: 14px;
}

/* 1.3 Button style */
.btn {
  font-size: 14px;
  font-family: "Open Sans", sans-serif;
  text-transform: capitalize;
  padding: 16px 44px;
  border-radius: 35px;
  font-weight: 600;
  white-space: nowrap;
  border: 0;
  position: relative;
  z-index: 1;
  transition: 0.2s ease;
}
.btn:focus {
  outline: 0;
  box-shadow: none !important;
}
.btn:active {
  box-shadow: none;
}

.btn-primary {
  background: #e84444;
  color: #fff;
}
.btn-primary:active {
  background: #e84444 !important;
}
.btn-primary:hover {
  background: #ee7171;
}

.btn-secondary {
  background: #303032;
  color: #fff;
}
.btn-secondary:active {
  background: #e84444 !important;
}
.btn-secondary:hover {
  background: #e84444 !important;
  background: #ee7171;
}

.btn-light {
  background: #fff;
  color: #222;
  border: 2px solid #fff;
}
.btn-light:hover {
  background: transparent;
  border: 2px solid #fff;
  color: #fff;
}

.btn-outline {
  background: transparent;
  color: #222;
  border: 2px solid #303032;
}
.btn-outline:hover {
  background: #303032;
  color: #fff;
}

.btn-sm {
  padding: 13px 40px !important;
}

/* 1.2 common style */
body {
  background-color: #fff;
  overflow-x: hidden;
}

::-moz-selection {
  background: #ee7171;
  color: #fff;
}

::selection {
  background: #ee7171;
  color: #fff;
}

/* preloader */
.preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}

ol,
ul {
  list-style-type: none;
  margin: 0px;
}

img {
  vertical-align: middle;
  border: 0;
}

a,
a:hover,
a:focus {
  text-decoration: none;
}

a {
  transition: 0.2s ease;
}
a:hover {
  color: #e84444;
}

a.text-dark:hover,
a.text-white:hover {
  color: #e84444 !important;
}

a,
button {
  cursor: pointer;
}

.outline-0 {
  outline: 0;
}

.d-unset {
  display: unset !important;
}

.slick-slide {
  outline: 0;
}

.centralized {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.hilighted {
  background: #303032;
  color: #919E4D;
  border-radius: 3px;
  padding: 2px 5px;
}

.section {
  padding: 100px 0;
}
@media (max-width: 575px) {
  .section {
    padding: 80px 0;
  }
}
.section-sm {
  padding: 80px 0;
}
.section-title {
  margin-bottom: 55px;
}

.section-title-sm {
  margin-bottom: 10px;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  color: #666;
}

.overlay {
  position: relative;
}
.overlay::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: #000;
  opacity: 0.6;
}
.overlay-dark {
  position: relative;
}
.overlay-dark::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: #000;
  opacity: 0.8;
}
.overlay-primary {
  position: relative;
}
.overlay-primary::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: #e84444;
  opacity: 0.6;
}
.overlay-white {
  position: relative;
}
.overlay-white::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background: #fff;
  opacity: 0.7;
}
.overlay-rounded::before {
  border-radius: 5px;
}

.section-title-border {
  position: relative;
}
.section-title-border::before {
  position: absolute;
  content: "";
  height: 2px;
  width: 120px;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: #e84444;
}
.section-title-border::after {
  position: absolute;
  content: "";
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #e84444;
  box-shadow: 0 0 0 5px #fff;
  bottom: -14px;
  left: 50%;
  transform: translateX(-50%);
}

.section-title-border-gray {
  position: relative;
}
.section-title-border-gray::before {
  position: absolute;
  content: "";
  height: 2px;
  width: 120px;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: #e84444;
}
.section-title-border-gray::after {
  position: absolute;
  content: "";
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: #f5f5f5;
  border: 2px solid #e84444;
  box-shadow: 0 0 0 5px #f5f5f5;
  bottom: -14px;
  left: 50%;
  transform: translateX(-50%);
}

.section-title-border-half {
  position: relative;
}
.section-title-border-half::before {
  position: absolute;
  content: "";
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: transparent;
  border: 2px solid #e84444;
  bottom: -14px;
  left: 0;
}
.section-title-border-half::after {
  position: absolute;
  content: "";
  height: 2px;
  width: 50px;
  left: 15px;
  bottom: -10px;
  background: #e84444;
}
.section-title-border-half-white {
  position: relative;
}
.section-title-border-half-white::before {
  position: absolute;
  content: "";
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: transparent;
  border: 2px solid #fff;
  bottom: -14px;
  left: 0;
}
.section-title-border-half-white::after {
  background: #fff;
  position: absolute;
  content: "";
  height: 2px;
  width: 50px;
  left: 15px;
  bottom: -10px;
}

/* 1.2.1 page title */
.page-title {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 160px 0 100px;
}

/* breadcrumb */
.breadcrumb {
  background-color: transparent !important;
  justify-content: center;
}
.breadcrumb li,
.breadcrumb a {
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-size: 12px;
  margin: 0 10px;
}
.breadcrumb a {
  position: relative;
}
.breadcrumb a::before {
  position: absolute;
  content: "/";
  right: -17px;
  top: 2px;
  height: 12px;
}

/* 1.2.2 404 page start */
.page-404 {
  padding: 600px 0 60px;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (max-width: 767px) {
  .page-404 {
    padding: 450px 0 50px;
  }
}
@media (max-width: 575px) {
  .page-404 {
    padding-top: 250px;
  }
}
@media (max-width: 400px) {
  .page-404 {
    padding-top: 150px;
  }
}
.page-404 h1 {
  font-size: 40px;
}

/* 404 page end */
/* play-icon */
.play-icon {
  width: 85px;
  height: 85px;
  border: 3px solid #fff;
  border-radius: 50%;
  display: block;
  text-align: center;
}
.play-icon:focus {
  outline: 0;
}
.play-icon i {
  line-height: 79px;
  display: block;
  font-size: 30px;
  color: #fff;
}

/* round icon */
.round-icon {
  height: 70px;
  min-width: 70px;
  max-width: 70px;
  border-radius: 50%;
  border: 1px solid #e5e5e5;
  background: #fff;
  text-align: center;
  line-height: 70px;
  font-size: 30px;
  color: #e84444;
  display: inline-block;
}

/* 18. squre icon */
.square-icon {
  height: 65px;
  width: 65px;
  background: #e84444;
  color: #fff;
  font-size: 35px;
  line-height: 65px;
  border-radius: 5px;
  text-align: center;
  display: inline-block;
}

/* team social icon */
.social-icon-lg {
  height: 50px;
  width: 50px;
  border-radius: 50%;
  line-height: 50px;
  text-align: center;
  color: #fff;
  font-size: 25px;
  display: inline-block;
}
.social-icon-lg i {
  margin: 0;
  color: #fff;
}

.box-shadow {
  box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
}

.golden {
  color: #efaf27 !important;
}

.bg-gray {
  background-color: #f5f5f5;
}

.bg-primary {
  background-color: #e84444 !important;
}

.bg-secondary {
  background-color: #303032 !important;
}

.text-primary {
  color: #e84444 !important;
}

.bg-facebook {
  background-color: #4267b2;
}

.bg-twitter {
  background-color: #449de8;
}

.bg-linkedin {
  background-color: #2f6ea3;
}

.bg-google {
  background-color: #e62211;
}

.text-color {
  color: #666;
}

.text-dark {
  color: #222;
}

.text-underline {
  text-decoration: underline;
}
.text-underline:hover {
  text-decoration: underline;
}

.font-primary {
  font-family: "Poppins", sans-serif;
}

.font-secondary {
  font-family: "Open Sans", sans-serif;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-50 {
  margin-bottom: 50px;
}

@media (max-width: 991px) {
  .mb-md-50 {
    margin-bottom: 50px;
  }
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-70 {
  margin-bottom: 70px;
}

.mb-80 {
  margin-bottom: 80px;
}

.mb-90 {
  margin-bottom: 90px;
}

.mb-100 {
  margin-bottom: 100px;
}

.py-10 {
  padding: 10px 0;
}

.py-50 {
  padding: 50px 0;
}

.py-100 {
  padding-top: 100px;
  padding-bottom: 100px;
}

.py-160 {
  padding: 160px 0;
}

.ml-65 {
  margin-left: 65px;
}

.pb-xl-200-lg-100 {
  padding-bottom: 200px;
}
@media (max-width: 1199px) {
  .pb-xl-200-lg-100 {
    padding-bottom: 100px;
  }
}

.mb-xl-150-lg-100 {
  margin-bottom: 150px;
}
@media (max-width: 1199px) {
  .mb-xl-150-lg-100 {
    margin-bottom: 100px;
  }
}

.translateY-25 {
  transform: translateY(25px);
}

.translateY-10 {
  transform: translateY(-10px);
}

.translateY-33 {
  transform: translateY(-33px);
}

/* 2. Navigation */
.top-header {
  background: #303032;
}
@media (max-width: 575px) {
  .top-header ul {
    text-align: center;
  }
}
.top-header ul li {
  margin: 15px 0;
}
@media (max-width: 575px) {
  .top-header ul li {
    margin: 10px 0;
  }
}
.top-header ul li a {
  display: inline-block;
  padding: 0 20px;
  border-right: 1px solid #e5e5e5;
  color: #bcbcbd;
}
@media (max-width: 575px) {
  .top-header ul li a {
    border: 0;
  }
}
.top-header ul li a span {
  color: #e84444;
}
.top-header ul li:last-child a {
  padding-right: 0;
  border-right: 0;
}

.navigation .navbar {
  padding: 0;
  background: #fff !important;
  position: relative;
}

.navigation .navbar-brand {
  position: absolute;
  left: 0;
  top: -52px;
  height: 170px;
  width: 220px;
  background: #fff;
  text-align: center;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
  z-index: 9;
}
@media (max-width: 991px) {
  .navigation .navbar-brand {
    position: relative;
    height: unset;
    width: unset;
    box-shadow: none;
    top: 24px;
    background: none;
  }
  .navigation .navbar-brand img {
    height: 50px;
    width: auto;
  }
}
.navigation .navbar-brand img {
  position:relative;
  top: 50%;
  transform: translateY(-50%);
}
.navigation .navbar .nav-item {
  padding: 28px 0;
}
@media (max-width: 991px) {
  .navigation .navbar .nav-item {
    padding: 0;
  }
}
.navigation .navbar .nav-item .nav-link {
  padding: 15px 10px;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  color: #222;
  text-transform: uppercase;
  transition: 0.2s ease;
  font-size: 14px;
}
@media (max-width: 1199px) {
  .navigation .navbar .nav-item .nav-link {
    font-size: 12px;
    padding: 15px 6px;
  }
}
@media (max-width: 991px) {
  .navigation .navbar .nav-item .nav-link {
    padding: 15px 0;
    font-size: 14px;
    text-align: center;
  }
}
.navigation .navbar .nav-item .nav-link:hover {
  color: #e84444;
}
.navigation .navbar .nav-item.nav-button {
  padding: 28px 0 28px 30px;
}
@media (max-width: 991px) {
  .navigation .navbar .nav-item.nav-button {
    padding: 0;
    margin-bottom: 20px;
  }
}
.navigation .navbar .nav-item.nav-button .nav-link {
  color: #fff;
}
.navigation .navbar .nav-item.nav-button .nav-link.pgactive {
  color: #e84444;
}
.navigation .navbar .nav-item.active .nav-link {
  color: #e84444;
}
.navigation .navbar .dropdown:hover .dropdown-menu {
  visibility: visible;
  opacity: 1;
  transform: scaleY(1);
}
.navigation .navbar .dropdown-menu {
  box-shadow: 0px 3px 9px 0px rgba(0, 0, 0, 0.12);
  padding: 40px 30px;
  border: 0;
  border-radius: 0;
  top: 80%;
  left: -20px;
  display: block;
  visibility: hidden;
  transition: 0.3s ease;
  opacity: 0;
  transform: scaleY(0);
  transform-origin: top;
}
@media (max-width: 991px) {
  .navigation .navbar .dropdown-menu {
    display: none;
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
    transform-origin: unset;
  }
}
.navigation .navbar .dropdown-menu.show {
  visibility: visible;
  opacity: 1;
  transform: scaleY(1);
}
@media (max-width: 991px) {
  .navigation .navbar .dropdown-menu.show {
    display: block;
  }
}
.navigation .navbar .dropdown-item {
  position: relative;
  color: #848484;
  transition: 0.2s ease;
}
.navigation .navbar .dropdown-item:not(:last-child) {
  margin-bottom: 20px;
}
.navigation .navbar .dropdown-item:hover {
  color: #e84444;
  text-decoration: underline;
  background: transparent;
}
.navigation .navbar .dropdown-item::before {
  position: absolute;
  content: "";
  left: 5px;
  top: 12px;
  height: 4px;
  width: 4px;
  border-radius: 50%;
  background: #848484;
  border: 1px solid #fff;
  display: inline-block;
  box-shadow: 0 0 0 2px #848484;
}
@media (max-width: 991px) {
  .navigation .navbar .dropdown-item {
    text-align: center;
  }
  .navigation .navbar .dropdown-item::before {
    display: none;
  }
}

.navbar-toggler-icon {
  background-color: transparent;
}

.navbar-toggler {
  border: none;
  box-shadow: none;
  outline: none;
  background: none;
}

.navbar-toggler-icon {
  background-image: none; /* enlève l’icône par défaut si nécessaire */
  width: 24px;
  height: 2px;
  background-color: #333; /* une couleur discrète */
  display: block;
  position: relative;
}
.navbar-toggler-icon::before,
.navbar-toggler-icon::after {
  content: "";
  background-color: #333;
  width: 24px;
  height: 2px;
  position: absolute;
  left: 0;
}
.navbar-toggler-icon::before {
  top: -8px;
}
.navbar-toggler-icon::after {
  top: 8px;
}



/* 2.3. Search Form */
.search-form {
  padding: 230px 0;
  background: #303032;
  position: absolute;
  width: 100%;
  top: -800px;
  z-index: 10;
  transition: 0.3s ease-in;
}
.search-form .close {
  position: absolute;
  top: 30px;
  right: 30px;
  color: #fff;
}
.search-form .close i {
  transition: 0.3s ease;
  display: inline-block;
}
.search-form .close:hover i {
  transform: rotate(90deg);
}
.search-form.open {
  top: 0;
}
.search-form .form-control {
  background: transparent;
  border: 1px solid #e5e5e5;
  border-radius: 0;
  font-size: 20px;
  transition: 0.3s ease;
  position: relative;
  color: #fff;
  height: 130px;
  padding: 30px 40px;
}
.search-form h3 {
  font-size: 35px;
  color: #fff;
  margin-bottom: 35px;
}
.search-form .input-wrapper {
  position: relative;
}
.search-form .input-wrapper button {
  background: none;
  border: 0;
  position: absolute;
  font-size: 20px;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  cursor: pointer;
  padding: 20px;
}
.search-form .input-wrapper button i {
  color: #fff;
}

/* 3. hero area */
.hero-slider.slick-slider {
  margin-bottom: 80px;
}
.hero-slider [data-animation-in] {
  opacity: 0;
}
.hero-slider-item {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  outline: 0;
}
.hero-slider .prevArrow,
.hero-slider .nextArrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9;
  height: 70px;
  width: 70px;
  border-radius: 50%;
  background: rgba(48, 48, 50, 0.5);
  color: #fff;
  border: 0;
  font-size: 25px;
  line-height: 70px;
  opacity: 0;
  transition: all linear 0.2s;
}
@media (max-width: 575px) {
  .hero-slider .prevArrow,
.hero-slider .nextArrow {
    display: none;
  }
}
.hero-slider .prevArrow:focus,
.hero-slider .nextArrow:focus {
  outline: 0;
}
.hero-slider .prevArrow:hover,
.hero-slider .nextArrow:hover {
  background: rgba(232, 68, 68, 0.5);
}
.hero-slider .prevArrow {
  left: 20px;
}
.hero-slider .nextArrow {
  right: 20px;
}
.hero-slider:hover .prevArrow,
.hero-slider:hover .nextArrow {
  opacity: 1;
}
.hero-slider .slick-dots {
  bottom: -81px;
  padding-left: 0;
  text-align: center;
  border-bottom: 1px solid #e5e5e5;
}
.hero-slider .slick-dots li {
  width: 295px;
  height: 80px;
  background: #fff;
  margin: 0;
  display: inline-block;
  position: relative;
  /* @include mobile-xs {
                  width: 50px;
              } */
}
@media (max-width: 1199px) {
  .hero-slider .slick-dots li {
    width: 230px;
  }
}
@media (max-width: 991px) {
  .hero-slider .slick-dots li {
    width: 180px;
  }
}
@media (max-width: 767px) {
  .hero-slider .slick-dots li {
    width: 120px;
  }
}
@media (max-width: 575px) {
  .hero-slider .slick-dots li {
    width: 25%;
  }
}
.hero-slider .slick-dots li::before {
  position: absolute;
  content: "";
  left: 50%;
  top: -12px;
  height: 25px;
  width: 25px;
  background: #303032;
  transform: translateX(-50%) rotate(-45deg);
  opacity: 0;
}
.hero-slider .slick-dots li a {
  display: block;
  position: relative;
  text-align: center;
  transition: 0.3s ease;
  color: #303032;
}
.hero-slider .slick-dots li a i {
  display: inline-block;
  font-size: 30px;
  line-height: 80px;
  margin-right: 15px;
  vertical-align: middle;
}
@media (max-width: 991px) {
  .hero-slider .slick-dots li a i {
    font-size: 20px;
    margin-right: 5px;
  }
}
@media (max-width: 767px) {
  .hero-slider .slick-dots li a i {
    margin: 0;
  }
}
.hero-slider .slick-dots li a span {
  font-size: 18px;
  font-weight: 500;
  line-height: 80px;
}
@media (max-width: 991px) {
  .hero-slider .slick-dots li a span {
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .hero-slider .slick-dots li a span {
    display: none;
  }
}
.hero-slider .slick-dots li.slick-active {
  background: #303032;
}
.hero-slider .slick-dots li.slick-active a {
  color: #fff;
}
.hero-slider .slick-dots li.slick-active::before {
  opacity: 1;
}
.hero-content h4 {
  letter-spacing: 2px;
}

/*--------------------------------------------------------------
	swipwe slider
--------------------------------------------------------------*/
.swiper {
  /* slider dots */
  /* slider arrows */
}
.swiper-slider {
  width: 100%;
  min-height: calc(100vh - 150px);
  display: flex;
  position: relative;
  z-index: 0;
}
.swiper-container {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.swiper-slide {
  overflow: hidden;
}
.swiper-slide .slide-inner {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  text-align: center;
  line-height: 12px;
  font-size: 12px;
  color: #000;
  opacity: 1;
  background: rgba(232, 68, 68, 0.2);
}
.swiper-pagination-bullet-active {
  color: #fff;
  background: #e84444;
  width: 15px;
  height: 15px;
  text-align: center;
  line-height: 15px;
}
.swiper-button-prev, .swiper-button-next {
  background: transparent;
  width: auto;
  height: auto;
  opacity: 0.3;
  text-align: center;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .swiper-button-prev, .swiper-button-next {
    display: none;
  }
}
.swiper-button-prev:hover, .swiper-button-next:hover {
  opacity: 1;
}
.swiper-button-prev {
  left: 25px;
}
.swiper-button-prev::before {
  font-family: "themify";
  content: "\e64a";
  font-size: 40px;
  color: #e84444;
}
.swiper-button-next {
  right: 25px;
}
.swiper-button-next::before {
  font-family: "themify";
  content: "\e649";
  font-size: 40px;
  color: #e84444;
}

/* 5. progrgess bar start */
.progressbar-title {
  font-size: 17px;
  font-family: "Open Sans", sans-serif;
  margin-bottom: 7px;
  color: #222 !important;
}

.progress {
  border-radius: 35px;
  overflow: visible;
  margin-bottom: 35px;
  /* 5.2 progressbar value */
}
.progress-bar {
  background-color: #303032;
  border-radius: 35px;
  position: relative;
}
.progress-bar-value {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  color: #fff;
  background: #303032;
  padding: 5px 9px;
  position: absolute;
  top: -35px;
  right: -15px;
  border-radius: 5px;
}
.progress-bar-value::before {
  position: absolute;
  content: "";
  bottom: -5px;
  left: 50%;
  background: #303032;
  height: 10px;
  width: 10px;
  transform: translateX(-50%) rotate(-45deg);
}

/* progrgess bar End */
/* 6. mission section start */
.card-header:first-child {
  border-radius: 35px;
}

/* 7. promo video section start */
.promo-video {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.promo-video p {
  font-family: "Work Sans", sans-serif;
}

/* promo video section end */
/* 8. testimonial section start */
.testimonial-slider {
  box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
  position: relative;
}
.testimonial-slider .prevArrow,
.testimonial-slider .nextArrow {
  position: absolute;
  top: 85px;
  border: 0;
  font-size: 20px;
  background: transparent;
  color: #e84444;
  z-index: 9;
}
.testimonial-slider .prevArrow:focus,
.testimonial-slider .nextArrow:focus {
  outline: 0;
}
.testimonial-slider .prevArrow {
  right: 90px;
}
.testimonial-slider .nextArrow {
  right: 50px;
}
.testimonial-slider .slick-disabled {
  color: #e5e5e5;
}
.testimonial-icon {
  height: 80px;
  width: 80px;
  border-radius: 50%;
  background: #f5f5f5;
  color: #e84444;
  font-size: 25px;
  line-height: 80px;
  display: inline-block;
  text-align: center;
  margin-bottom: 25px;
}

/* testimonial section end */
/* 10. client logo slider start */
.client-logo-slider .slick-track {
  display: flex;
  align-items: center;
}

/* client logo slider end */
/* 11. fun-facts section start */
.fun-facts {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

/* fun-facts section end */
/* 12. consultation section start */
.consultation {
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* consultation section end */
/* 16. call to action start */
.cta {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* card */
.card-img-wrapper {
  position: relative;
}
.card-img-wrapper::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 100%;
  background: #000;
  opacity: 0;
  top: 0;
  left: 0;
  transition: 0.2s;
}
.card-body-2 {
  position: relative;
  transition: 0.2s ease;
  border-radius: 0 0 5px 5px;
}
.card-body-2::before {
  position: absolute;
  content: "";
  height: 30px;
  width: 30px;
  background: #fff;
  top: -15px;
  left: 50%;
  transform: translateX(-50%) rotate(-45deg);
  transition: 0.2s ease;
}
.card:hover .card-img-wrapper::before {
  opacity: 0.4;
}
.card:hover .card-body-2 {
  background: #e84444;
}
.card:hover .card-body-2 h5,
.card:hover .card-body-2 h6,
.card:hover .card-body-2 a {
  color: #fff;
}
.card:hover .card-body-2::before {
  background: #e84444;
}

/*Mon ajout pour gérer les formations*/
/* ====== CARD FORMATION MODERNE ====== */

.formation-card {
  border: 1px solid #eee;
  border-radius: 0.5rem;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  background: #fff;
}

.formation-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.12);
}

/* Image de couverture + Prix */
.formation-thumb {
  position: relative;
  overflow: hidden;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

.formation-thumb img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.formation-price {
  position: absolute;
  top: 15px;
  right: 15px;
  background-color: #e84444;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  padding: 5px 12px;
  border-radius: 4px;
  font-family: "Poppins", sans-serif;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

/* Titre + stats */
.formation-card h5 {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 5px;
  color: #222;
}

.formation-card h5 a {
  color: #222;
  text-decoration: none;
}
.formation-card h5 a:hover {
  color: #e84444;
}

.formation-card ul.list-inline {
  margin-bottom: 0;
  font-size: 13px;
  font-family: "Open Sans", sans-serif;
  color: #999;
}

.formation-card ul.list-inline li {
  margin-right: 10px;
}

/* Avatar */
.formation-card img.rounded-circle {
  width: 40px;
  height: 40px;
  object-fit: cover;
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px #eee;
}

/* Description */
.formation-card p {
  font-size: 14px;
  color: #666;
  line-height: 22px;
  font-family: "Open Sans", sans-serif;
}

/* Détails (durée, salle, séances) */
.formation-details {
  margin-top: 15px;
  border-top: 1px solid #eee;
  padding-top: 12px;
}

.formation-details li {
  flex: 1;
  text-align: center;
  padding: 0 5px;
  border-right: 1px solid #eee;
}

.formation-details li:last-child {
  border-right: none;
}

.formation-details p {
  margin-bottom: 3px;
  font-size: 12px;
  color: #999;
}

.formation-details strong {
  font-weight: 600;
  color: #303032;
  font-family: "Poppins", sans-serif;
}


/* Bloc stats (reviews, likes, comments) */
.formation-details .stats {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;   /* espace entre reviews, likes et comments */
  flex: 1;
}

.formation-details .stats span {
  display: flex;
  align-items: center;
  gap: 5px;
}

/* étoiles */
.formation-details .rating-stars {
  color: #f1c40f;
  font-size: 1rem;
}






/* Bouton */
.formation-card .btn {
  padding: 10px 30px;
  font-size: 14px;
  border-radius: 30px;
}

.fa-heart:hover,
.fa-comment:hover {
  transform: scale(1.2);
  transition: 0.2s ease-in-out;
}

.icon-red {
  color: #e84444; /* rouge doux */
}

/*Fin style formations*/


/*Début style description formations*/

.dark-box {
  background-color: #303032; /* noir profond, mais pas absolu */
  color: #f5f5f5;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* Assure que les textes à l'intérieur soient lisibles */
.dark-box p,
.dark-box strong,
.dark-box span,
.dark-box i {
  color: #ffffff !important;
}

/* Icônes de type fa-heart ou fa-comment */
.dark-box .fa {
  color: #ff4d4d; /* rouge vif pour ressortir sur fond noir */
}

/* Étoiles en jaune */
.dark-box .text-warning {
  color: #e84444 !important;
}



a.formation-title {
  color: #e84444;               /* Couleur par défaut */
  text-decoration: none;
  transition: color 0.3s ease;
}

a.formation-title:hover {
  color: #303032;              /* Couleur au survol */
}

/*Sidebar 1 */
/* Structure générale du sidebar */
.sidebar {
  background: #fff;
  padding: 20px;
  border: 1px solid #eee;
  border-radius: 6px;
}

/* Chaque bloc widget dans le sidebar */
.sidebar .widget {
  margin-bottom: 30px;
  padding: 20px;
  border: 1px solid #f0f0f0;
  border-radius: 6px;
  background: #fafafa;
}

/* Titre du widget */

.sidebar .widget {
  background: #111;          /* fond blanc */
  border: 1px solid #e5e5e5; /* contour léger gris */
  border-radius: 6px;        /* coins arrondis */
  padding: 20px;
  margin-bottom: 25px;       /* espace entre widgets */
  box-shadow: 0 2px 4px rgba(0,0,0,0.05); /* petite ombre subtile */
}

.sidebar .widget .widget-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 15px;
  border-bottom: 2px solid #e84444; /* couleur accent */
  padding-bottom: 5px;
  text-align: center;
}

/* Auteur / formateur */
.widget-instructor .post-author-info {
  text-align: center;
}

.widget-instructor .thumb img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  margin-bottom: 10px;
}

.widget-instructor h5 {
  font-size: 16px;
  font-weight: bold;
  margin: 10px 0 5px;
}

.widget-instructor p {
  font-size: 14px;
  color: #666;
  line-height: 1.4;
}

/* Réseaux sociaux */
.widget-instructor .social {
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 10px;
}

.widget-instructor .social li a {
  color: #444;
  font-size: 16px;
  transition: color 0.3s;
}

.widget-instructor .social li a:hover {
  color:   #e84444 !important;
;
}


/*Sidebar 2 */
/* Style général du widget Offre */
.widget-offer {
  background: #111; /* fond sombre */
  border-radius: 6px;
  padding: 25px;
  text-align: center;
  color: #fff;
  margin-bottom: 25px;
  position: relative;
  overflow: hidden;
}

.sidebar .widget.widget-offer {
  background: #111 !important; /* le !important force la priorité */
  color: #fff;
}

/* Titre du widget */
.widget-offer .widget-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 15px;
  text-align: center;
  color: #fff; /* blanc au lieu de #222 */
}

/* Contenu texte */
.widget-offer .wd-offer .text h4 {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 15px;
  color: #fff; /* blanc au lieu de #222 */
}

/* Bouton */
.widget-offer .wd-offer .text a {
  display: inline-block;
  padding: 10px 20px;
  background: #e84444;   /* orange accent */
  color: #fff;
  font-weight: 600;
  border-radius: 4px;
  text-decoration: none;
  transition: background 0.3s ease;
}

.widget-offer .wd-offer .text a:hover {
  background: #e68900; /* un peu plus foncé au hover */
}



/*Formations récentes*/

/* Bloc Formations récentes */
.widget-recent-courses {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  padding: 20px;
  margin-bottom: 25px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

/* Titre du widget */
.widget-recent-courses .widget-title {
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 15px;
  border-bottom: 2px solid #e84444; /* accent */
  padding-bottom: 5px;
}

/* Liste */
.recent-courses-list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 0;
  list-style: none;
}

/* Chaque item */
.recent-course-item a {
  display: flex;
  align-items: center;
  text-decoration: none;
  gap: 12px;
  color: inherit; /* corrige le bleu par défaut */
}

.recent-course-item .thumb img {
  width: 65px;
  height: 65px;
  object-fit: cover;
  border-radius: 6px;
  border: 1px solid #ddd;
}

.recent-course-item .info {
  display: flex;
  flex-direction: column;
  flex: 1; /* garde le texte sur la même ligne que l'image */
}

.recent-course-item .info .title {
  font-size: 14px;
  font-weight: 600;
  color: #333;
  margin-bottom: 4px;
  transition: color 0.3s;
}

.recent-course-item .info .date {
  font-size: 12px;
  color: #888;
}

/* Hover */
.recent-course-item:hover .title {
  color: #e84444;
}

/* Gestion des stats de formations */

/* étoiles dorées + lisibles */
.formation-details .rating-stars {
  color: #f1c40f;    /* or gold */
  font-size: 1rem;   /* adapte si besoin */
  letter-spacing: 2px;
  line-height: 1;
}

/* état désactivé du bouton like */
.btn-like.disabled {
  pointer-events: none;
  opacity: .6;
}

.like-toast {
    top: 120%;                  /* sous le bouton */
    z-index: 1050;
    padding: 6px 12px;
    background-color: #198754;  /* vert success */
    color: #fff;
    border-radius: 4px;
    font-size: 0.85rem;
    opacity: 0;
    transform: translateY(0);
    transition: opacity 0.5s ease, transform 0.5s ease;
    white-space: nowrap;
    pointer-events: none;
}
.like-toast.show {
    opacity: 1;
    transform: translateY(-10px) translateX(-100px); /* décale légèrement vers la gauche et un peu vers le haut */
}
.like-toast.error {
    background-color: #dc3545; /* rouge danger */
}

/* reviews */
.widget-review {
  background-color: #fff;       /* Couleur fond du widget */
  border: 1px solid #ddd;       /* Bordure légère */
  border-radius: 10px;          /* Coins arrondis */
  padding: 20px;                /* Padding interne */
  max-width: 300px;             /* Largeur similaire aux sidebar */
  margin: 0 auto;               /* Centrer horizontalement */
  box-shadow: 0 2px 6px rgba(0,0,0,0.1); /* Légère ombre */
}

.widget-review .rating-select {
  font-size: 1.5rem;            /* Taille étoiles */
}

.widget-review .btn {
  margin-top: 10px;
}



/*Tabs*/

/* Conteneur principal des tabs */
.tabs {
  background-color: #303032;
  border-radius: 10px;
  padding: 20px;
  margin-top: 20px;
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.tabs .tab-links {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
  border-bottom: 1px solid #444;
}

.tabs .tab-links li {
  margin-right: 15px;
}

.tabs .tab-links a {
  display: block;
  padding: 10px 16px;
  font-weight: 500;
  color: #ffffff;
  background-color: transparent;
  border-radius: 6px 6px 0 0;
  text-decoration: none;
  transition: all 0.3s ease;
}

.tabs .tab-links .active a,
.tabs .tab-links a:hover {
  background-color: #e84444;
  color: #ffffff;
}

.tab-content {
  display: none;
  color: #000;
}

.tab-content.active {
  display: block;
}


.tab-content ul {
  padding-left: 20px;
   list-style-type: disc; /* ✅ Affiche les puces classiques */
}

.tab-content li {
  margin-bottom: 8px;
}

.comment-info-inner {
  display: flex;
  gap: 15px;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 20px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 15px;
}

.comment-thumb img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  flex-shrink: 0;
}

.comment-content {
  background: #f8f9fa;
  padding: 15px 20px;
  border-radius: 8px;
  flex: 1;
}

.comment-content h4 {
  margin-top: 0;
  margin-bottom: 5px;
  font-size: 1rem;
  font-weight: 600;
}

/* Réponses */
.children {
  padding-left: 25px; /* ✅ léger décalage visuel */
  margin-top: -10px;
  border-left: 2px solid #eee;
}

.children .comment-info-inner {
  border-bottom: none;
  border-top: 1px dashed #ccc;
  margin-top: 10px;
  padding-top: 10px;
}

.children .comment-thumb img {
  width: 40px;
  height: 40px;
}

.children .comment-content {
  background: #f1f1f1;
}

/*Formulaire de commentaire*/

.leave-comment-area {
  background-color: #f9f9f9;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.leave-comment-area h4.comment-title {
  margin-bottom: 20px;
  font-weight: bold;
}

.leave-comment-area input,
.leave-comment-area textarea {
  width: 100%;
  padding: 12px 15px;
  margin-top: 15px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 14px;
}

.leave-comment-area textarea {
  height: 140px;
  resize: vertical;
}

.leave-comment-area button {
  margin-top: 20px;
  padding: 10px 25px;
  font-size: 15px;
}

.overlay-rounded-top::before {
  border-radius: 5px 5px 0 0;
}

/*Inscription de formations*/
/* Section globale */
.form-section {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 50px 15px;
  background: #f5f5f5;
}

/* Conteneur du formulaire */
.form-container {
  background: #2f2f2f; /* gris foncé style carte */
  padding: 30px;
  border-radius: 8px;
  width: 100%;
  max-width: 900px; /* plus large pour l’horizontal */
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  color: #fff;
}

/* Titre */
.form-container h3 {
  margin-bottom: 20px;
  font-weight: bold;
  text-align: center;
}

/* Mise en page en grille */
.form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 colonnes */
  gap: 20px;
}

.form-group {
  display: flex;
  flex-direction: column;
}

.form-group.full-width {
  grid-column: span 2; /* bouton ou grands champs */
}

/* Styles des champs */
.form-container label {
  display: block;
  margin: 8px 0 5px;
  font-weight: 500;
}

.form-container input,
.form-container select {
  width: 100%;
  padding: 10px;
  border: none;
  border-radius: 5px;
  background: #444;
  color: #fff;
  transition: 0.3s;
}

.form-container input:focus,
.form-container select:focus {
  outline: none;
  border: 2px solid #e74c3c;
  background: #555;
}

/* Bouton */
.btn-submit {
  display: block;
  width: 100%;
  padding: 12px;
  background: #e74c3c; /* rouge vif */
  border: none;
  border-radius: 5px;
  color: #fff;
  font-weight: bold;
  cursor: pointer;
  transition: 0.3s;
}

.btn-submit:hover {
  background: #c0392b;
}

/* Responsive : revient en 1 colonne sur petit écran */
@media (max-width: 768px) {
  .form-grid {
    grid-template-columns: 1fr; /* une seule colonne */
  }

  .form-group.full-width {
    grid-column: span 1;
  }
}


/*Fin style description formations*/







/* 13. about section */
.about {
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  /* 13.4 about video */
  /* 13.6 about slider */
}
.about-video {
  min-height: 300px;
}
.about-slider {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
.about-slider .prevArrow,
.about-slider .nextArrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9;
  height: 55px;
  width: 55px;
  border-radius: 50%;
  border: 0;
  line-height: 55px;
  text-align: center;
  background: #fff;
  transition: 0.2s ease;
}
.about-slider .prevArrow:focus,
.about-slider .nextArrow:focus {
  outline: 0;
}
.about-slider .prevArrow:hover,
.about-slider .nextArrow:hover {
  background: #e84444;
  color: #fff;
}
.about-slider .prevArrow {
  left: 25px;
}
.about-slider .nextArrow {
  right: 25px;
}

/* 13.8 ceo section start */
.ceo-image {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  min-height: 400px;
}

/* ceo section end */
/* 14.3 clients */
.clients {
  background-position: center right;
  background-size: 50%;
  background-repeat: no-repeat;
}
@media (max-width: 991px) {
  .clients {
    background-size: cover !important;
    background-position: center center;
    text-align: center;
  }
}
.clients ul li {
  height: 66px;
}
.clients ul li img {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
}

/* 14.4 process */
.process-item {
  width: 330px;
}
@media (max-width: 1199px) {
  .process-item {
    width: unset;
  }
}
.process-item-number {
  position: absolute;
  left: -35px;
  top: -35px;
  height: 70px;
  width: 70px;
  line-height: 70px;
  border-radius: 50%;
  text-align: center;
  background: #fff;
  box-shadow: -5px 0px 40px 0px rgba(0, 0, 0, 0.1);
  font-family: "Open Sans", sans-serif;
  font-weight: 700;
  font-size: 32px;
  color: #222;
}
@media (max-width: 1199px) {
  .process-item-number {
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
  }
}
.process-item h5 {
  margin-bottom: 5px;
  color: #e84444;
}

img.arrow-top {
  position: absolute;
  top: 220px;
  right: 250px;
}
@media (max-width: 1199px) {
  img.arrow-top {
    display: none;
  }
}

img.arrow-bottom {
  position: absolute;
  bottom: 100px;
  left: 250px;
}
@media (max-width: 1199px) {
  img.arrow-bottom {
    display: none;
  }
}

/*Ressources*/

.resource-card {
  transition: background 0.3s ease, box-shadow 0.3s ease;
}
.resource-card:hover {
  background-color: #f8f9fa;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}


/*Produits numériques*/

.products-section {
  padding: 60px 0;
  background-color: #f9f9f9;
}

.section-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #222;
}

.product-card {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 8px 20px rgb(0 0 0 / 0.1);
  overflow: hidden;
  transition: transform 0.3s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.product-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 30px rgb(0 0 0 / 0.15);
}

.product-image {
  width: 100%;
  object-fit: contain;
  height: 180px;
  background-color: #fff;
  padding: 20px;
}

.product-info {
  padding: 15px 20px 25px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.product-name {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: #333;
}

.product-license,
.product-platform {
  font-size: 0.9rem;
  color: #666;
  margin-bottom: 0.3rem;
}

.product-price {
  font-size: 1.15rem;
  font-weight: 700;
  
  margin: 15px 0;
}

.btn.btn-primary {
  align-self: flex-start;
  padding: 0.375rem 1rem;
  font-size: 0.9rem;
  font-weight: 600;
  border-radius: 4px;
  text-decoration: none;
  color: white;
  border: none;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.btn.btn-primary:hover {
  background-color: #c73737;
}

/* Responsive */
@media (max-width: 767px) {
  .product-card {
    height: auto;
  }
}


/* service single start */
.service-menu li.active {
  position: relative;
}
.service-menu li.active a {
  background: #303032;
  color: #fff !important;
}
.service-menu li.active::before {
  position: absolute;
  content: "";
  height: 15px;
  width: 15px;
  background: #303032;
  top: 50%;
  right: -7px;
  transform: translateY(-50%) rotate(-45deg);
}
@media (max-width: 991px) {
  .service-menu li.active::before {
    display: none;
  }
}
.service-menu li:hover a {
  color: #fff !important;
  background: #303032;
}

/* service single end */
/* 15. work section */
.work {
  /* 15.1 work slider */
}
.work-slider {
  /* 15.2 slick dots */
}
.work-slider-image {
  position: relative;
}

.work-slider-image img {
  width: 387px;
  height: 387px;
  object-fit: cover;  /* garde le bon ratio en recadrant */
  display: block;
  margin: 0 auto;     /* optionnel : centre l'image si besoin */
}

.work-slider-image .image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.75);
  height: 100%;
  width: 100%;
  padding: 15px 25px;
  opacity: 0;
  transition: 0.2s;
}
.work-slider-image .image-overlay i {
  position: absolute;
  color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-block;
  font-size: 24px;
  transition: 0.2s ease;
  padding: 10px;
}
.work-slider-image .image-overlay i:hover {
  font-size: 30px;
}
.work-slider-image .image-overlay a.h4 {
  position: absolute;
  bottom: 50px;
  color: #fff;
  transition: 0.2s ease;
  transform: translateY(20px);
  opacity: 0;
}
.work-slider-image .image-overlay a.h4:hover {
  color: #e84444;
}
.work-slider-image .image-overlay p {
  position: absolute;
  bottom: 15px;
  color: #fff;
  transform: translateY(10px);
  opacity: 0;
  transition: 0.3s ease;
  transition-delay: 0.1s;
}
.work-slider-image:hover .image-overlay {
  opacity: 1;
}
.work-slider-image:hover a.h4,
.work-slider-image:hover p {
  transform: translateY(0);
  opacity: 1;
}
.work-slider .slick-dots {
  padding-left: 0;
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
}
.work-slider .slick-dots li {
  margin: 0 14px;
}
@media (max-width: 400px) {
  .work-slider .slick-dots li {
    margin: 0 2px;
  }
}
.work-slider .slick-dots li:first-child {
  margin-left: 0;
}
.work-slider .slick-dots li button {
  height: 10px;
  width: 40px;
  border-radius: 25px;
  color: transparent;
  overflow: hidden;
  border: 0;
  border: 2px solid #e5e5e5;
  background: transparent;
  outline: 0;
  display: block;
}
.work-slider .slick-dots li button::before {
  display: none;
}
@media (max-width: 400px) {
  .work-slider .slick-dots li button {
    width: 10px;
  }
}
.work-slider .slick-dots li.slick-active button {
  border-color: #e84444;
}

}
.project-menu ul li {
  padding: 5px 20px;
  border-radius: 35px;
  color: #222;
  font-size: 16px;
  font-weight: 400;
  border: 1px solid #e5e5e5;
  cursor: pointer;
  background: #f5f5f5;
  margin: 0 10px 25px;
}
.project-menu ul li.active {
  background: #e84444;
  color: #fff;
}
.project-info {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: 0.2s ease;
}
.project-info a {
  color: #fff;
  position: absolute;
  left: 30px;
  bottom: 40px;
  transform: translateY(20px);
  opacity: 0;
}
.project-info a:hover {
  color: #e84444;
}
.project-info p {
  position: absolute;
  left: 25px;
  bottom: 0;
  color: #fff;
  transition: 0.2s ease;
  transform: translateY(20px);
  opacity: 0;
  transition-delay: 0.1s;
}
.project-info p i {
  margin-right: 5px;
}
.project-info:hover {
  opacity: 1;
}
.project-info:hover a {
  transform: translateY(0);
  opacity: 1;
}
.project-info:hover p {
  transform: translateY(0);
  opacity: 0.7;
}

/* 19.3 project single page start */
/* 19.4 nav tabs */
.nav-tabs {
  border: 0;
  margin-bottom: 30px;
}
@media (max-width: 991px) {
  .nav-tabs {
    justify-content: center;
  }
}
.nav-tabs .nav-item:not(:last-child) {
  margin-right: 10px;
}
@media (max-width: 575px) {
  .nav-tabs .nav-item {
    margin-bottom: 10px;
  }
}
.nav-tabs .nav-item .nav-link {
  padding: 10px 30px;
  border: 1px solid #e5e5e5;
  background: #f5f5f5;
  border-radius: 45px;
  text-align: center;
  vertical-align: middle;
  color: #222;
  transition: 0.2s ease;
  font-size: 16px;
  font-family: "Poppins", sans-serif;
}
.nav-tabs .nav-item .active {
  background: #fff;
  color: #e84444;
  border-color: #e84444;
}

/* 19.5 tab content */
.tab-content {
  padding: 40px;
  margin-bottom: 60px;
  border-radius: 5px;
  background: #fff;
  border: 1px solid #e5e5e5;
}
.tab-content-item {
  margin-left: 20px;
}
.tab-content-item:not(:last-child) {
  margin-bottom: 45px;
}
.tab-content-item h6 {
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: #222;
  margin-bottom: 25px;
  position: relative;
}
.tab-content-item h6::before {
  position: absolute;
  content: "\e65d";
  font-family: "themify";
  top: 0;
  left: -20px;
  color: #e84444;
}
.tab-content-item p {
  margin-bottom: 0;
}

/* project single page end */
/* 21.4.3 pagination */
.pagination .page-item .page-link {
  background: transparent;
  border: none;
  color: #000;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  transition: 0.3s ease;
}
.pagination .page-item .page-link:hover {
  color: #e84444;
}
.pagination .page-item.active .page-link {
  color: #e84444;
}
.pagination .prev,
.pagination .next {
  border: 1px solid #e5e5e5;
  border-radius: 30px;
  padding: 5px 10px;
  transition: 0.3s ease;
}
.pagination .prev:hover,
.pagination .next:hover {
  border-color: #e84444;
}
.pagination .prev:hover .page-link,
.pagination .next:hover .page-link {
  color: #e84444;
}
.pagination .prev {
  margin-right: 30px;
}
.pagination .next {
  margin-left: 30px;
}

/* 21.4.1 post slider */
.post-slider {
  position: relative;
}
.post-slider .prevArrow,
.post-slider .nextArrow {
  position: absolute;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  line-height: 50px;
  top: 50%;
  border: 0;
  font-size: 20px;
  background: transparent;
  color: #e84444;
  z-index: 9;
  background: rgba(255, 255, 255, 0.8);
  transition: 0.3s ease;
}
.post-slider .prevArrow:focus,
.post-slider .nextArrow:focus {
  outline: 0;
}
.post-slider .prevArrow:hover,
.post-slider .nextArrow:hover {
  background: rgba(232, 68, 68, 0.25);
}
.post-slider .prevArrow {
  left: 40px;
}
.post-slider .nextArrow {
  right: 40px;
}
.post-slider .slick-disabled {
  color: #e5e5e5;
}

/* 21.4.4 sidebar */
.search-wrapper {
  position: relative;
}
.search-wrapper input {
  background: #f5f5f5;
  border-radius: 30px;
  font-weight: 400;
  height: 40px;
  line-height: 40px;
  padding: 0 25px;
  font-size: 13px;
}
.search-wrapper::before {
  content: "\e610";
  font-family: "themify";
  position: absolute;
  top: 50%;
  right: 20px;
  color: #666;
  transform: translateY(-50%);
}

ul.tag-list li {
  margin-bottom: 7px;
}
ul.tag-list li a {
  color: #666;
  padding: 10px 12px;
  display: block;
  border: 1px solid #e5e5e5;
  border-radius: 30px;
  font-size: 13px;
  transition: 0.3s ease;
}
ul.tag-list li a:hover {
  background: #e84444;
  border-color: #e84444;
  color: #fff;
}

.newsletter .form-control {
  font-weight: 400;
  padding: 0 20px;
  height: 40px;
  line-height: 40px;
  border-radius: 30px;
  font-size: 13px;
}

/* 21.5 blog single start */
/* share icon */
.share-icon {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  line-height: 40px;
  text-align: center;
  font-size: 16px;
  display: inline-block;
}
.share-icon i {
  color: #fff;
}

/* 21.5.7 blog sidebar */
.sidebar-box-shadow {
  box-shadow: -3px 0px 3px 0px rgba(0, 0, 0, 0.06);
}

/* blog single end */
/* 22. contact section */
.form-control {
  border-radius: 5px;
  padding: 0 15px 2px;
  height: 40px;
  margin-bottom: 15px;
  border: 1px solid #e5e5e5;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: #666;
}
.form-control:focus {
  border-color: #e84444;
  box-shadow: none !important;
}
.form-control::-moz-placeholder {
  color: #666;
}
.form-control::placeholder {
  color: #666;
}

/* 22.3 google map */
.map {
  position: relative;
}
.map #map_canvas {
  height: 450px;
}

/* 23.1 signup greetings */
.signup {
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0px 10px 35px 0px rgba(0, 0, 0, 0.1);
  /* 23.2 signup form */
}
.signup-greeting {
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 70px 0 140px;
  text-align: center;
}
@media (max-width: 1199px) {
  .signup-greeting {
    padding-bottom: 80px;
  }
}
@media (max-width: 767px) {
  .signup-greeting {
    padding-top: 200px;
  }
}
@media (max-width: 575px) {
  .signup-greeting {
    padding-top: 400px;
  }
}
.signup-greeting img {
  margin-bottom: 50px;
  position: relative;
  z-index: 9;
}
.signup-greeting h4 {
  color: #fff;
  margin-bottom: 20px;
  position: relative;
  z-index: 9;
}
.signup-greeting p {
  color: #fff;
  position: relative;
  z-index: 9;
  margin: 0 40px;
}
.signup-form {
  padding: 50px 50px 50px 35px;
}
@media (max-width: 1199px) {
  .signup-form {
    padding: 50px 15px 50px 0;
  }
}
@media (max-width: 767px) {
  .signup-form {
    padding: 50px;
  }
}
@media (max-width: 575px) {
  .signup-form {
    text-align: center;
  }
}
.signup-form h4 {
  float: left;
  font-size: 26px;
  margin-bottom: 35px;
}
@media (max-width: 575px) {
  .signup-form h4 {
    float: unset;
  }
}
.signup-form a {
  color: #e84444;
}
.signup-form .btn {
  margin-top: 30px;
}
.signup-form p.signup-with {
  display: inline-block;
  margin-top: 42px;
}
.signup-form ul {
  margin-top: 37px;
  display: inline-block;
}
.signup-form ul li a {
  height: 30px;
  width: 30px;
  line-height: 30px;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 24. comming soon */
.comming-soon {
  height: 100vh;
  background-size: cover;
  display: flex;
  align-items: center;
}
.comming-soon h1 {
  font-size: 50px;
  font-weight: 600;
}
@media (max-width: 575px) {
  .comming-soon h1 {
    font-size: 30px;
  }
}
.comming-soon .form-control {
  height: 45px;
  border-radius: 45px;
  position: relative;
  background: transparent;
  border: 1px solid #e5e5e5;
  color: #fff;
  margin-bottom: 40px;
}
.comming-soon .form-control::-moz-placeholder {
  color: #666;
}
.comming-soon .form-control::placeholder {
  color: #666;
}
.comming-soon .btn-email {
  position: absolute;
  top: 0;
  right: 15px;
  background: #fff;
  border: 0;
  color: #e84444;
  border-radius: 45px;
  height: 45px;
  padding: 0 50px;
}
@media (max-width: 575px) {
  .comming-soon .btn-email {
    padding: 0 10px;
  }
}
.comming-soon i {
  color: #5c5c5c;
  margin: 0 15px;
  transition: 0.2s ease;
  font-size: 24px;
}
.comming-soon i:hover {
  color: #e84444;
}

/* 24.1 syotimer */
.syotimer {
  text-align: center;
  margin: 0 auto 40px;
}
.syotimer-cell:last-child .syotimer-cell__value::before {
  opacity: 0;
}
.syotimer-cell {
  display: inline-block;
  margin: 0 25px;
}
@media (max-width: 1199px) {
  .syotimer-cell {
    margin: 0 20px;
  }
}
@media (max-width: 575px) {
  .syotimer-cell {
    margin: 0 10px;
  }
}
@media (max-width: 400px) {
  .syotimer-cell {
    margin: 0 5px;
  }
}
.syotimer-cell__value {
  font-size: 60px;
  font-weight: 600;
  color: #fff;
  position: relative;
}
@media (max-width: 1199px) {
  .syotimer-cell__value {
    font-size: 50px;
  }
}
@media (max-width: 575px) {
  .syotimer-cell__value {
    font-size: 30px;
  }
}
@media (max-width: 400px) {
  .syotimer-cell__value {
    font-size: 24px;
  }
}
.syotimer-cell__value::before {
  position: absolute;
  content: ":";
  height: 30px;
  color: #fff;
  right: -30px;
  top: 0;
}
@media (max-width: 575px) {
  .syotimer-cell__value::before {
    right: -20px;
  }
}
@media (max-width: 400px) {
  .syotimer-cell__value::before {
    right: -12px;
  }
}
.syotimer-cell__unit {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 16px;
  color: #fff;
}

/* 25.1 social link */
.social-icon-outline {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid #fff;
  text-align: center;
  transition: 0.2s ease;
  display: inline-block;
}
.social-icon-outline i {
  line-height: 40px;
  color: #fff;
  font-size: 14px;
}
.social-icon-outline:hover {
  border-color: #e84444;
}

/* 25.2 footer link */
.footer-links {
  padding-left: 18px;
}
.footer-links li {
  margin-bottom: 20px;
  position: relative;
}
.footer-links li::before {
  position: absolute;
  font-family: "themify";
  content: "\e649";
  top: 0;
  left: -20px;
  height: 12px;
  width: auto;
  color: #fff;
}
.footer-links li a {
  color: #fff;
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  transition: 0.2s ease;
  display: block;
}
.footer-links li a:hover {
  text-decoration: underline;
  color: #e84444;
}

/* 25.3 subcription */
.form-control.subscribe {
  width: 100%;
  border-radius: 35px;
  border: 0;
  padding: 0 20px !important;
  height: 50px;
}

/* subscribe button */
.btn-subscribe {
  position: absolute;
  right: 5px;
  top: 5px;
  border: 0;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  color: #fff;
  background: #e84444;
  transition: all linear 0.2s;
}
.btn-subscribe:hover {
  padding-left: 15px;
}
.btn-subscribe:focus {
  outline: 0;
}

/* back to top button */
.back-to-top {
  position: absolute;
  height: 50px;
  width: 50px;
  border-radius: 50%;
  color: #fff;
  background: #303032;
  top: -25px;
  right: 10px;
  border: 1px solid #454547;
  text-align: center;
  display: block;
  transition: 0.2s ease;
}
.back-to-top i {
  line-height: 50px;
}
.back-to-top:hover {
  border-color: #e84444;
}
.back-to-top:focus {
  outline: 0;
}

/****************************************************************************************\
|FORMULAIRE DE DEMANDE DE SERVICES                                                       |
*******************************************************************************************/
.dark-box {
  background: rgba(0, 0, 0, 0.8);
  background-image: url('/OBA_AFRIKA/assets/images/demande-bg.jpg');
  background-size: cover;
  background-position: center;
  position: relative;
}

.dark-box::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background-color: rgba(0, 0, 0, 0.6); /* overlay sombre */
  z-index: 0;
}
.dark-box > * {
  position: relative;
  z-index: 1;
}

.form-control {
  background-color: #fff;
  border: 1px solid #444;
  color: white;
}

.form-control::placeholder {
  color: #aaa;
}

.btn-primary {
  background-color: #e84444;
  border-color: #e84444;
}

.btn-primary:hover {
  background-color: #c73434;
  border-color: #c73434;
}

/****************************************************************************************\
|ADMIN DASHBOARD                                                    |
*******************************************************************************************/

/*Produits numériques*/
/* Section Produits */
.products-section {
  padding: 60px 0;
}

.product-card {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.product-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}

.product-image {
  width: 100%;
  height: 200px; /* fixe la hauteur */
  object-fit: cover; /* couvre toute la zone */
  border-bottom: 1px solid #eee;
}

.product-info {
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* espace entre le contenu et le bouton */
  align-items: center; /* centre horizontalement tout le contenu */
  height: 100%; /* pour que space-between fonctionne sur toute la hauteur */
  text-align: center;
}

.product-name {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #2c3e50;
}

.product-license,
.product-platform {
  font-size: 14px;
  color: #7f8c8d;
  margin: 0;
}

.product-price {
  font-size: 20px;
  font-weight: 700;
  color: #27ae60;
  margin: 15px 0;
}

/* Boutons dans product-info */
.product-info .btn {
  display: block;   /* pour que margin auto fonctionne */
  margin: 15px auto 0;        /* espace au-dessus du bouton */
  border-radius: 8px;
  padding: 8px 14px;
  font-weight: 500;
  transition: all 0.3s ease;
}

/* Bouton primaire */
.product-info .btn-primary {
  background: #3498db;
  border: none;
  color: #fff;
}

.product-info .btn-primary:hover {
  background: #2980b9;
}

/* Bouton secondaire */
.product-info .btn-secondary {
  background: #bdc3c7;
  border: none;
  color: #2c3e50;
}

.product-info .btn-secondary:hover {
  background: #95a5a6;
}

/* Blogs */
.article-content ol,
.article-content ul {
  margin: 1rem 0 1rem 1.5rem; 
  padding-left: 1.2rem;      
}

.article-content ol {
  list-style-type: decimal;  
}

.article-content ul {
  list-style-type: disc;      
}

.article-content li {
  margin-bottom: 0.5rem;      
}


/*Events*/


/*# sourceMappingURL=style.css.map */
