:root {
   --white: #FFFFFF;
   --blue: #006B9A;
   --yellow: #FAC61A;
   --black: #191617;
}

.text-yellow {color: var(--yellow);}
.text-blue {color: var(--blue);}
.text-black {color: var(--black);}

.bg-yellow {background-color: var(--yellow);}
.bg-blue {background-color: var(--blue);}
.bg-black {background-color: var(--black);}

.fw-extrabold {font-weight: 800}
.fw-black {font-weight: 900}

.ws-nw {
   white-space: nowrap
}

.hidden {
   display: none !important;
}

.text-white {
   color: #FFFFFF;
}

.text-white-green {
   color: #E4F0E980;
}

.text-green {
   color: #139259;
}

.text-black {
   color: #000000;
}

.text-red {
   color: var(--red);
}

.text-light-blue {
   color: #0067B3;
}

.text-white3B {
   color: #FFFFFF3B;
}

.text-dark-red {
   color: #BE3112;
}

.text-grey {
   color: #00000029;
}

.text-light-red {
   color: #E33F48;
}

.text-dark-blue {
   color: #00529F;
}

.text-light-green {
   color: #1392594D;
}

.text-dark-grey {
   color: #00000040;
}

.text-green {
   color: var(--blue);
}

.bg-white {
   background-color: #FFFFFF;
}

.bg-white-green {
   background-color: #E4F0E980;
}

.bg-green {
   background-color: #139259;
}

.bg-black {
   background-color: #191617;
}

.bg-red {
   background-color: var(--red);
}

.bg-light-blue {background-color: #0067B3;}
.bg-white3B {background-color: #FFFFFF3B;}
.bg-dark-red {background-color: #BE3112;}
.bg-grey {background-color: #00000029;}
.bg-light-red {background-color: #E33F48;}
.bg-dark-blue {background-color: #00529F;}
.bg-light-green {background-color: #1392594D;}
.bg-dark-grey {background-color: #00000040;}

body {
   font-family: "Open Sans", sans-serif;
   color: var(--black);
   line-height: 1.3;
   margin: 0;
   padding: 0;
   
   @media (min-width: 1200px) {
      font-size: 18px;
   }

   @media (min-width: 1400px) {
      font-size: 20px;
   }
}

.btn-yellow {
   background-color: var(--yellow);
   border: 0;
   color: var(--black);
   transition: all 0.3s ease;
   font-weight: 800;
   border-radius: 10px;
   font-size: 16px;
   /* font-size: 26px; */
   padding: 12px 24px;

   &:hover,
   &:active {
      background-color: var(--yellow) !important;
      color: var(--blue) !important;
   }
}

header.scrolled .btn-yellow {
   background-color: var(--yellow) !important;
   color: var(--black) !important;

   &:hover,
   &:active {
      background-color: var(--yellow) !important;
      color: var(--blue) !important;
   }
}

/* HEADER */
header,
header.nav-head,
.nav-head {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   z-index: 1000;
   background-color: transparent !important;
   transition: all 0.3s ease;
   padding: 0 20px;
}

header.scrolled,
header.nav-head.scrolled,
.nav-head.scrolled {
   background-color: var(--blue) !important;
   box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

header nav {
   padding: 10px 0;
}

header .logo {
   height: 60px;
   transition: all 0.3s ease;
}

.donate-heart-btn {
   height: 80px;
   transition: all 0.3s ease;
}

header.scrolled .logo {
   height: 40px;
}

header.scrolled .donate-heart-btn {
   height: 35px;
}

@media (min-width: 1200px) {

   header,
   header.nav-head,
   .nav-head {
      padding: 0 40px;
   }

   header nav {
      padding: 12px 0;
   }

   header .logo {
      height: 80px;
   }

   .donate-heart-btn {
      height: 120px;
   }

   header.scrolled .logo {
      height: 42px;
   }

   header.scrolled .donate-heart-btn {
      height: 38px;
   }
}

@media (min-width: 1400px) {

   header,
   header.nav-head,
   .nav-head {
      padding: 0 80px;
   }

   header nav {
      padding: 16px 0;
   }

   header .logo {
      height: 100px;
   }

   .donate-heart-btn {
      height: 150px;
   }

   header.scrolled .logo {
      height: 45px;
   }

   header.scrolled .donate-heart-btn {
      height: 40px;
   }
}

/* Styles pour l'image du bouton donate supprimés car on utilise maintenant une image */

/* HERO SECTION */
.hero-section {
   height: 70vh;
   min-height: 500px;
   background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%), url('../img/header-background.jpg');
   background-size: cover;
   background-position: 35%;
   background-repeat: no-repeat;
   position: relative;
   overflow: hidden;
   display: flex;
   align-items: end;
   padding: 120px 0 80px 0;

   h1{
      font-size: 50px;
      line-height: 50px;
      
      &+p{
         font-size: 20px;
         line-height: 28px;
      }
   }

   @media (min-width: 768px) {
      background-position: 40%;
      align-items: center;

      h1{
         font-size: 70px;
         line-height: 70px;
      }
   }

   @media (min-width: 992px) {
      background-position: center;  
      
      h1{
         font-size: 80px;
         line-height: 80px;
         &+p{
            font-size: 26px;
            line-height: 32px;
         }
      }
   }
   
   @media (min-width: 1200px) {
   }
   
   @media (min-width: 1400px) {
   }
   
   @media (min-width: 1600px) {   
      h1{         
         line-height: 95px;
         &+p{
            font-size: 32px;
            line-height: 37px;
         }
      }  
   }
}

.vision-section {
   padding: 24px 0;

   @media (min-width: 992px) {
      padding: 24px 80px;
   }
}


h2{
   font-size: 32px;
   line-height: 37px;

   @media (min-width: 1200px) {
      font-size: 48px;
      line-height: 53px;
   }

   @media (min-width: 1400px) {
      font-size: 48px;
      line-height: 56px;
   }
}


/* INTRO SECTION */
.intro-section {
   /* padding: 40px 0; */
   background-color: white;
   min-height: 400px;
   display: flex;
   align-items: center;

   .row{
      min-height: 400px;
      align-items: stretch;

      .col-12.col-lg-6 {
         display: flex;
         align-items: center;
      }
   }

   @media (min-width: 992px) {
      padding: 40px 0;
   }
   @media (min-width: 1200px) {
      padding: 0;
   }
}

.intro-section,
.present-section{
   @media screen and (min-width: 1200px) {
      .container{
         margin: 0;
      }
   }

   @media (min-width: 1400px) {
      .container{
         margin: auto;
      }
   }
}

/* Background images pour les sections */
.intro-bg {
   background-image: url('../img/lame-1.jpg');
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
   min-height: 400px;
}

.after-bg {
   background-image: url('../img/lame-3.jpg');
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
   min-height: 400px;
}

.intro-content .btn-yellow {
   margin-top: 16px;
}

/* DONATION SECTION */
.donation-section {
   padding: 40px 0;
   background-color: var(--blue);

   p{
      &.last{
         font-size: 20px;
      }
   }
}

.filters {
   display: flex;
   justify-content: center;
   gap: 16px;
   margin-bottom: 32px;
}

.filters button {
   background-color: var(--yellow);
   border-radius: 0;
   color: #000000;
   border: 0;
   font-weight: 700;
   font-size: 20px;
   padding: 16px 24px;
   transition: all 0.3s ease;
   line-height: 1.15;
   opacity: 0.5;
}

.filters button.active {
   opacity: 1;
   background-color: var(--yellow);
}

.filters button:hover {
   /* background-color: var(--blue); */
   opacity: .9;
}

.iscalcul {
   display: none;
   gap: 16px;
   row-gap: 16px;
}

.iscalcul.active {
   display: flex;
}

.iscalcul input[type="radio"] {
   display: none;
}

.iscalcul label,
.freeHolder {
   width: 48%;
   color: var(--blue);
   background-color: var(--white);
   line-height: 1.15;
   text-align: center;
   padding: 16px;
   border-radius: 0;
   cursor: pointer;
   transition: all 0.3s ease;
   border: 1px solid var(--blue);
}

.freeHolder {
   color: var(--blue);
}

@media (max-width: 1199px) {
   .iscalcul {
      flex-direction: column;
      align-items: stretch;
      gap: 15px;
      padding: 0 20px;
   }

   .iscalcul label,
   .freeHolder {
      width: 100%;
      flex: 1;
      padding: 24px 20px;
      min-height: 100px;
      box-sizing: border-box;
   }

   .iscalcul label .amount {
      font-size: 52px;
      margin-bottom: 8px;
   }

   .iscalcul label .helvetica {
      font-size: 16px;
      font-weight: 600;
      line-height: 1.3;
   }

   .freeHolder input {
      font-size: 52px;
      margin-bottom: 8px;
   }

   .freeHolder span:not(:first-child) {
      font-size: 16px;
      line-height: 1.3;
   }

   .filters button {
      font-size: 18px;
      padding: 14px 24px;
   }
}

.iscalcul input[type="radio"]:checked+label {
   background-color: var(--blue);
   color: var(--white);
   border: 1px solid var(--white);
}

.iscalcul input[type="radio"]+label {
   color:  var(--blue);
}

.iscalcul label:hover,
.freeHolder:hover {
   opacity: .9;
}

.iscalcul label .amount {
   font-size: 60px;
   display: block;
   margin-bottom: 8px;
}

.iscalcul label .helvetica,
.freeHolder #pfreeSale,
.freeHolder #mfreeSale {
   font-size: 14px;
   font-weight: 600;
}

.freeHolder {
   display: flex;
   align-items: center;
   flex-direction: column;
   justify-content: center;
   min-height: 100px;
}

.freeHolder .freeimput{
   font-size: 60px;
   font-weight: bold;

   @media (min-width: 1200px) {
      margin-bottom: 8px;
   }

   @media (min-width: 1400px) {
      margin-bottom: 12px;
   }
}

.freeHolder input {
   background-color: transparent;
   border: none;
   color: var(--blue);
   text-align: center;
   font-weight: bold;
   font-size: 60px;
   outline: none;
   width: 120px;
   margin-bottom: 8px;
}

.freeHolder input::placeholder {
   color: var(--blue);
}

.freeHolder.active {
   background-color: var(--blue);
   color: white;
   border: 1px solid var(--white);
}

.freeHolder.active input {
   color: white;
}

/* PRESENT SECTION */
.present-section {
   padding: 0;
   background-color: white;
   min-height: 400px;
   display: flex;
   align-items: center;
}

.present-section .row {
   min-height: 400px;
   align-items: stretch;
}

.present-section .col-12.col-lg-6 {
   display: flex;
   align-items: center;
}

.present-bg {
   background-image: url('../img/lame-2.jpg');
   background-size: cover;
   background-position: center;
   background-repeat: no-repeat;
   min-height: 400px;
}

/* COMBAT SECTION */
.combat-section {
   padding: 80px 0;
   background-color: #f8f9fa;
}

.combat-section .container {
   max-width: 100%;
   padding: 0 20px;
}

.combat-section h2 {
   font-size: 36px;
   margin-bottom: 48px;
   line-height: 1.1;
}

/* Assurer que les colonnes desktop ont la même hauteur */
@media (min-width: 1200px) {
   .combat-section .row {
      display: flex;
      align-items: stretch;
   }

   .combat-section .col-4 {
      display: flex;
   }
   .btn-yellow,
   .intro-content .btn-yellow,
   .present-content .btn-yellow{
      font-size: 26px!important;
   }
}

@media (max-width: 1199px) {
   .combat-section {
      padding: 50px 0;
   }

   .combat-section h2 {
      font-size: 28px;
      margin-bottom: 30px;
      padding: 0 20px;
   }

   .action .content {
      padding: 24px 20px;
      min-height: auto;
   }

   .action .content .title {
      font-size: 20px;
      margin-bottom: 16px;
   }

   .action .content p {
      font-size: 13px;
      margin-bottom: 12px;
   }

   .action .content .btn-yellow {
      font-size: 16px;
      padding: 10px 20px;
   }
}

.logo-alto{
   height: 40px;
}

.action {
   background-color: white;
   /* border-radius: 12px; */
   overflow: hidden;
   box-shadow: 0 0 15px rgba(0, 0, 0, 0.25);
   height: 100%;
   display: flex;
   flex-direction: column;
}

.action .img-holder {
   height: 220px;
   background-size: cover;
   background-position: center;
}

.action .content {
   padding: 32px 24px;
   text-align: center;
   flex-grow: 1;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   min-height: 420px;
}

.action .content .title {
   font-size: 24px;
   line-height: 1.1;
   margin-bottom: 20px;
   text-transform: uppercase;
}

.action .content p {
   font-size: 14px;
   line-height: 1.5;
   margin-bottom: 16px;
   text-align: left;
}

/* Styles pour centrer le contenu de la section combat */
.combat-section .content.text-center {
   text-align: center;
}

.combat-section .content.text-center p {
   text-align: center;
}

.combat-section .content.text-center .title {
   text-align: center;
}

.action .content .btn-yellow {
   margin-top: 20px;
   align-self: center;
   flex-shrink: 0;
}

/* Wrapper pour le contenu textuel */
.action .content .text-content {
   flex-grow: 1;
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
}

/* MERCI SECTION */
.merci-section {
   padding: 0 0 20px;
   
   .row,
   .merci-swiper{
      row-gap: var(--bs-gutter-x);
   
      .box{
         height: 100%;
         border: 3px solid var(--blue);
         display: flex;
         flex-direction: column;         

         .content{
            padding: 16px;
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
            flex-grow: 1;
            
            h3{
               color: var(--blue);
               font-weight: 700;
            }

            p{
               margin-bottom: 20px;
            }

            a{
               margin-top: auto;
            }
         }
      }
   }

   @media (min-width: 1200px) {
      padding: 40px 0 20px;
   }
   @media (min-width: 1400px) {
      padding: 40px 0;

      .container{
         max-width: 80%;
         .row{

            .box{
   
               .content{
                  padding: 40px 80px;                     
   
                  h3, p{
                     margin-bottom: 24px;
                  }
               }
            }
         }
      }
   }

   @media (min-width: 1600px) {
      .container{
         max-width: 1428px;

         .row{

            .box{
   
               .content{
                  padding: 40px 116px;
               }
            }
         }
      }
   }
}

/* DERNIERE SECTION */
.derniere-section {
   padding: 20px 0 40px;
}

/* FOOTER */
footer {
   background-color: var(--black);
   padding: 30px 0 90px;
   color: white;

   .footer-content {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: center;
      gap: 30px;
      min-height: 60px;

      .footer-left-section {
         display: flex;
         flex-direction: column;
         align-items: center;
         gap: 20px;
         flex: 1;

         .footer-logo-section {
            display: flex;
            justify-content: flex-start;
            align-items: center;
            flex: 0 0 auto;

            .footer-logo {
               height: 80px;
               max-width: 250px;
               object-fit: contain;
            }
         }
         
         .footer-social-section {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 60px;
            flex: 0 0 auto;

            .social-content {
               display: flex;
               align-items: center;
               gap: 30px;

               .follow {
                  font-size: 14px;
                  margin: 0;
                  font-weight: 500;
                  white-space: nowrap;
               }

               .social-icons {
                  display: flex;
                  gap: 8px;
                  align-items: center;
                  justify-content: center;

                  .social-link {
                     display: flex;
                     align-items: center;
                     justify-content: center;
                     width: 35px;
                     height: 35px;
                     border-radius: 50%;
                     transition: all 0.3s ease;
                     text-decoration: none;

                     &:hover {
                        background-color: var(--blue);
                        transform: translateY(-2px);
                     }

                     img {
                        height: 20px;
                        width: 20px;
                        object-fit: contain;
                        object-position: center;
                     }
                  }
               }            
            }
            
            .footer-links {
               display: flex;
               flex-direction: column;
               gap: 16px;
               align-items: center;

               .footer-link {
                  color: white;
                  text-decoration: none;
                  font-size: 14px;
                  font-weight: 500;
                  transition: color 0.3s ease;
                  white-space: nowrap;
                  
                  &:hover {
                     color: var(--blue);
                     text-decoration: underline;
                  }
               }
            }
         }
      }
   }

   @media (min-width: 992px) {
      padding: 30px 0;

      .footer-content {
         flex-direction: row;

         .footer-left-section {
            flex-direction: row;

            .footer-social-section {
               flex-direction: row;

               .social-content {
                  flex-direction: row;
               }

               .footer-links {
                  flex-direction: row;
               }
            }
         }
      }
   }

   @media (min-width: 1200px) {

      .footer-content {

         .footer-left-section {

            .footer-social-section {
            

               .social-content {
                  
               }

               .footer-links {
                  gap: 40px;
               }
            }
         }
      }
   }
}


.footer-credit {
   display: flex;
   justify-content: flex-end;
   align-items: center;
   flex: 0 0 auto;
}

.credit {
   font-size: 16px;
   font-weight: 700;
   opacity: 0.9;
}

/* STICKY BUTTON */
.sticky-button {
   background-color: var(--yellow);
   color: var(--black);
   border: none;
   padding: 16px 32px;
   font-weight: 700;
   text-decoration: none;
   text-transform: uppercase;
   bottom: 0;
   left: 0;
   right: 0;
   z-index: 999;
   text-align: center;
   border-radius: 0;
}

/* RESPONSIVE HERO SECTION */

/* Mobile - jusqu'à 1199px */
@media (max-width: 1199px) {
   .hero-section {
      height: 90vh;
      min-height: 350px;
      padding: 80px 0 30px 0;
   }

   .hero-container {
      padding: 0 20px;
      max-width: 100%;
   }

   /* Fix pour le logo sur mobile */
   header .logo {
      height: 50px !important;
      width: auto !important;
      max-width: 200px;
   }

   header.scrolled .logo {
      height: 35px !important;
      width: auto !important;
      max-width: 150px;
   }

   .hero-text-content {
      padding: 15px 10px 20px 10px;
      text-align: center;
      min-height: 150px;
   }

   .geometric-hexagon {
      display: none;
   }

   .alzheimer-tag {
      font-size: 22px;
      margin-bottom: 10px;
   }

   .main-title {
      font-size: 32px;
      line-height: 1.1;
      margin-bottom: 20px;
   }

   .hero-subtitle-container {
      margin-top: 20px;
      position: static;
      text-align: center;
   }

   .hero-subtitle {
      font-size: 18px;
      padding: 8px 16px;
      display: block;
      width: fit-content;
      margin: 0 auto;
   }

   .iscalcul label {
      width: 100%;
   }
}




/* Large Desktop - 1200px à 1400px */
@media (min-width: 1200px) and (max-width: 1399px) {
   .hero-section {
      height: 70vh;
      min-height: 600px;
      padding: 120px 0 0 0;
   }

   .hero-container {
      padding: 0 35px;
      max-width: 1200px;
      padding: 0 200px;
   }

   .hero-text-content {
      padding: 40px 35px 55px 35px;
      text-align: left;
      min-height: 300px;
   }

   .geometric-hexagon {
      left: -85px;
      top: -55px;
      background-size: 350px;
   }

   .alzheimer-tag {
      font-size: 30px;
   }

   .main-title {
      font-size: 80px;
      line-height: 1.0;
      margin-bottom: 24px;
   }

   .hero-subtitle-container {
      margin-top: 24px;
      position: absolute;
      bottom: 12px;
      left: 290px;
   }

   .hero-subtitle {
      font-size: 36px;
      padding: 11px 22px;
   }
}

/* Extra Large Desktop - 1400px à 1800px */
@media (min-width: 1400px) and (max-width: 1799px) {
   .hero-section {
      height: 75vh;
      min-height: 650px;
      padding: 120px 0 0 0;
   }

   .hero-container {
      padding: 0 40px;
      max-width: 1400px;
   }

   .hero-text-content {
      padding: 45px 40px 60px 40px;
      text-align: left;
      min-height: 320px;
   }

   .geometric-hexagon {
      left: -95px;
      top: -40px;
      background-size: 350px;
   }

   .alzheimer-tag {
      font-size: 32px;
   }

   .main-title {
      font-size: 75px;
      line-height: 1.0;
      margin-bottom: 25px;
   }

   .hero-subtitle-container {
      margin-top: 25px;
      position: absolute;
      bottom: 5px;
      left: 260px;
   }

   .hero-subtitle {
      font-size: 32px;
      padding: 12px 24px;
   }
}

/* Ultra Large Desktop - 1800px+ : utilise le design de base défini ci-dessus */

/* AUTRES SECTIONS RESPONSIVE */
@media (max-width: 1199px) {

   .present-section {
      padding: 0;
      min-height: auto;
   }
}

.pastille {
   position: absolute;
   bottom: 60px;
   right: 0;
   width: 100px;
   height: 100px;
   display: none;
}

/* Media query spécifique pour les très petits écrans (téléphones) */
@media (max-width: 576px) {

   /* Logo encore plus petit sur très petits écrans */
   header .logo {
      height: 40px !important;
      max-width: 150px;
   }

   header.scrolled .logo {
      height: 30px !important;
      max-width: 120px;
   }
}

.present-section .row {
   min-height: auto;
   
}
.intro-bg,
.after-bg,
.present-bg {
   order: 1;
}
@media (min-width: 991px) {
   h1{
      font-size: 70px;
      line-height: 70px;
   }

   .intro-bg,
   .after-bg,
   .present-bg {
      order: unset;
   }
}

@media (max-width: 1199px) {

   .intro-bg,
   .after-bg,
   .present-bg {
      min-height: 250px;   
   }

   .intro-content,
   .present-content {
      order: 2;
   }
}

/* .present-content h2 {
   font-size: 28px;
   margin-bottom: 20px;
   line-height: 1.2;
} */

/* .present-content p { */
   /* font-size: 15px; */
   /* line-height: 1.5;
   margin-bottom: 16px;
} */

.present-content .btn-yellow {
   margin-top: 20px;
   padding: 12px 24px;
   font-size: 18px;
}

.intro-section .col-12.col-lg-6:not(.no-padding),
.present-section .col-12.col-lg-6:not(.no-padding) {
   display: block;
}

@media (min-width: 1200px) {
   /* Hero styles gérés dans les media queries dédiées ci-dessus */
   h1{
      font-size: 90px;
      line-height: 90px;
   }
   h1+p{
      font-size: 18px;
      line-height: 28px;
   }
   .pastille {
      display: block;
      height: 150px;
      width: 150px;
      right: 70px;
   }
   .iscalcul label,
   .freeHolder {
      width: 23%;
   }

   .iscalcul label .amount {
      font-size: 60px;
   }

   .freeHolder input {
      font-size: 60px;
   }

   .intro-content,
   .present-content {
      padding: 70px 50px;
   }

   .intro-content h2,
   .present-content h2 {
      font-size: 42px;
   }

   .combat-section h2 {
      font-size: 42px;
   }

   .action .content .title {
      font-size: 28px;
   }

   .action .content p {
      font-size: 15px;
   }
}

/* Media queries pour la section combat avec conteneur centré */
@media (min-width: 1200px) {
   .combat-section .container {
      max-width: 540px;
      margin: 0 auto;
   }
}

@media (min-width: 1400px) {
   .hero-section {
      position: relative;
      height: 90vh;
      padding-bottom: 0;
   }
   .pastille {
      right: -100px;
   }
   .hero-image {
      position: absolute;
      bottom: 0;
      right: 0;
      width: 300px;
      height: 300px;
      object-fit: cover;
   }

   h1{
      font-size: 87px;
      line-height: 95px;
   }

   h1+p{
      font-size: 32px;
      line-height: 37px;
   }

   .combat-section .container {
      max-width: 720px;
   }
}

@media (min-width: 1600px) {
   .pastille {
      height: 200px;
      width: 200px;
      right: -200px;
   }
   .hero-container {
      width: 1230px;
   }
   h1{
      font-size: 87px;
      line-height: 87px;
   }
   h1+p{
      font-size: 23px;
      line-height: 34px;
   }
   .container {
      max-width: 1200px;
   }

   .combat-section .container {
      max-width: 960px;
   }
}

/* Anciens styles hero supprimés - remplacés par les media queries détaillées ci-dessus */


.hero-image {
   display: none;
}

.intro-section,
.present-section {
   min-height: 500px;
}

.intro-section .row,
.present-section .row {
   min-height: 500px;
}

.intro-bg,
.after-bg,
.present-bg {
   min-height: 500px;
}

/* Footer responsive styles */
@media (max-width: 1199px) {
   .footer-content {
      flex-direction: column;
      align-items: center;
      gap: 25px;
      text-align: center;
      min-height: auto;
   }

   .footer-left-section {
      flex-direction: column;
      align-items: center;
      gap: 25px;
      width: 100%;
   }

   .footer-logo {
      height: 50px;
      max-width: 180px;
   }

   .footer-social-section {
      flex-direction: column;
      align-items: center;
      gap: 20px;
      width: 100%;
   }

   .social-content {
      flex-direction: column;
      align-items: center;
      gap: 20px;
   }

   .social-content .follow {
      font-size: 16px;
      margin-bottom: 10px;
   }

   .social-icons {
      justify-content: center;
      gap: 20px;
   }

   /* .footer-links {
      flex-direction: column;
      align-items: center;
      gap: 15px;
      width: 100%;
   } */

   /* .footer-link {
      font-size: 15px;
   } */

   .footer-credit {
      align-self: center;
      margin-top: 10px;
   }

   .credit {
      font-size: 12px;
   }
}



@media (min-width: 1200px) {
   .footer-content {
      gap: 50px;
   }

   .footer-left-section {
      gap: 60px;
   }

   .footer-logo {
      height: 80px;
      max-width: 250px;
   }

   .footer-social-section {
      gap: 60px;
   }

   .social-content {
      gap: 30px;
      align-items: center;
   }

   .footer-links {
      gap: 40px;
   }

   .credit {
      font-size: 16px;
   }
}

.sticky-button {
   display: block;
}

@media (min-width: 1200px) {


   .sticky-button {
      display: none;
   }
}

.iscalcul {
   gap: 8px;
   row-gap: 8px;
}

.iscalcul label .amount {
   font-size: 60px;
}

.freeHolder input {
   font-size: 60px;
}

@media (min-width: 1200px) {

   .iscalcul label,
   .freeHolder {
      width: 18%;
   }

   .container {
      max-width: 1400px;
   }

   .intro-content,
   .present-content {
      padding: 100px 80px;
   }

   /* Hero styles gérés dans les media queries dédiées ci-dessus */


   .intro-content h2,
   .present-content h2,
   .combat-section h2 {
      font-size: 48px;
   }

   .action .content .title {
      font-size: 32px;
   }

   .iscalcul label .amount {
      font-size: 60px;
   }

   .freeHolder input {
      font-size: 60px;
   }
}

@media (min-width: 1200px) {
   .combat-section .container {
      max-width: 1140px;
   }
}

@media (min-width: 1400px) {
   .container {
      max-width: 1600px;
   }

   .combat-section .container {
      max-width: 1320px;
   }
   footer{
      padding: 30px;
   }

   .footer-social-section {
      margin: 0 auto;
   }
}

@media (min-width: 1600px) {
   .container {
      max-width: 1800px;
   }

   .combat-section .container {
      max-width: 1500px;
   }   
}

/* SWIPER STYLES */
.swiper-wrapper{
   padding-bottom: 40px;
}

.swiper-pagination {
   bottom: 10px !important;
}

.sections-swiper .swiper-pagination {
   bottom: 545px !important;
}

.swiper-pagination-bullet {
   background-color: var(--blue);
   opacity: 0.5;
}

.swiper-pagination-bullet-active {
   opacity: 1;
}

/* Form styles */
input[type=number] {
   appearance: textfield;
   -moz-appearance: textfield;
}

input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
   -webkit-appearance: none;
   margin: 0;
}

.section-title {
   font-weight: 700;
   text-transform: uppercase;
}

/* Classe conservée pour d'autres images du site */
.img-cover {
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center;
}