
  @font-face {
  font-family: 'Cairo';
  font-style: normal;
  font-weight: 400; /* For Regular weight */
  src: url(https://fonts.gstatic.com/s/cairo/v18/SLXGc1gY6pXPvbg_b_Yy_04J_FpY.woff2) format('woff2');
  unicode-range: U+0600-06FF, U+200C-200E, U+2010-2011, U+FB50-FDFF, U+FE80-FEFC, U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


 .cool-split {
  color: rgba(255, 255, 255, 0.125);
  transition: color 0.3s;
} 
ul{
    padding-inline-start:24px;
}  
*{
    margin: 0;
    box-sizing: border-box;
    font-family: 'Cairo', sans-serif;
}
body{
    background-color: #fefefe;
    font-weight: 500;
}
.flex{
    display: flex;
}
#right{
    text-align: right;
}
.a1Cont h1{
    font-size: 48px;
}
.a3Cont h3{
    font-size: 48px;
}
h2{
    font-size: 60px;
    font-weight: 700;
    color: #0F0F0F;
}
h2.right{
    font-size: 48px;
}
.aboutEnd h2{
    font-size: 32px;
}
.sec3 h2{
    text-align: center;
    font-size:60x;
}
.sec3.right h2{
    text-align: right;
}
.sec3.right{
    text-align: right !important;
    align-items: start;
}
@media (max-width  :550px){
    h2{
        font-size: 28px;
        text-align: center;
    }
}
.aboutEnd h2{
    text-align: center;
    padding-top: 60px;
    padding-bottom: 40px;
}
h3{
    font-size: 32px;
}
@media (min-width:550px) and (max-width:1130px){
    h3{font-size: 1.5rem;}
}
p{
    font-size: 20px;
    font-weight: 400;
    color: #0F0F0F;
    
}
.logo{
    width: 111px;
}
header{
   display: flex;
   justify-content: space-between;
   /* padding-left: max(24px, 5% );
    padding-right: max(24px, 5% ); */
   margin: auto;
   padding-top: 20px;
   align-items: center;
   margin-bottom: -150px;
   z-index: 10;
}
li{
    transition: 0.5s ease-in-out;
}
header li:hover{
    transform: scale(1.02W);
}
@media (max-width:550px){
    header{
        margin-bottom:-110px
    }
}
.nav-cont{
    /* width: 477px;
    height: 70px; */
    background-image: url("../../assets/uploads/header-border.png");
    padding: 12px 15px;
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
}
.nav-cont.second{
     background-image: url("../../assets/uploads/header-border-2.png");
}
.nav-cont.second .pcNav{
    background-color: #CFCFCF;
}
.blurred{
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.pcNav{
    display: flex;
    background-color: #ffffff50;
    padding: 0 0 0 0;
    border-radius: 6px;
}
@media (max-width: 840px) {
    .nav-cont{
        display:none;
    }
     .logo{
        width: 75px;
    }
}
.pcNav ul{
    display: flex;
    column-gap: 30px;
    list-style: none;   
    justify-content: center;
}

.pcNav li {
    padding: 10px 0;
}

.pcNav li a{
    font-size: 14px;
}

.burger {
  position: relative;
  width: 50px;
  height: 50px;
  background: transparent;
  cursor: pointer;
  display: block;
  background-image: url(../../assets/uploads/mobileNav.png);
  background-position: center;
  background-size: cover;
}

.burger.scndry{
    background-image: url(../../assets/uploads/mobileNavScndry.png);
}

.burger input {
  display: none;
}

.burger span {
    /* display: none; */
    margin: 0 12px;
  display: block;
  position: absolute;
  height: 3px;
  width: 50%;
  background: white;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: .25s ease-in-out;
}

.burger.scndry span{
     background: black;
}

.burger span:nth-of-type(1) {
  top: 25%;
  transform-origin: left center;
}

.burger span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
  transform-origin: left center;
}

.burger span:nth-of-type(3) {
  top: 75%;
  transform-origin: left center;
  transform: translateY(-100%);
}

.burger input:checked ~ span:nth-of-type(1) {
  transform: rotate(45deg);
  top: 14px;
  left: 4px;
}

.burger input:checked ~ span:nth-of-type(2) {
  width: 0%;
  opacity: 0;
}

.burger input:checked ~ span:nth-of-type(3) {
  transform: rotate(-45deg);
  top: 32px;
  left: 4px;
}

@media (min-width:840px){
    .burger{
        display: none;
    }
}
    .mobile-nav-menu {
                position: fixed;
                top: 0;
                right: 0;
                width: 80%; /* Adjust width as needed, e.g., 80% or 300px */
                max-width: 320px; /* Max width for larger screens */
                height: 100vh;
                background-color: #fff;
                box-shadow: -5px 0 15px rgba(0, 0, 0, 0.1);
                transform: translateX(100%); /* Initially off-screen to the right */
                transition: transform 0.3s ease-in-out;
                z-index: 999; /* Ensure it's above other content */
                padding-top: 80px; /* Space for fixed header/status bar */
                overflow-y: auto; /* Enable scrolling for long menus */
            }

        /* Show menu when checkbox is checked */
        .burger input:checked ~ .mobile-nav-menu {
            transform: translateX(0); /* Slide into view */
        }

        .menu-overlay {
                    position: fixed;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    background-color: rgba(0, 0, 0, 0.5);
                    z-index: 998; /* Below menu, above content */
                    opacity: 0.5;
                    visibility: hidden;
                    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
                }

                body.menu-open .menu-overlay {
            opacity: 1;
            visibility: visible;
        }

        body.menu-open .mobile-nav-menu {
            transform: translateX(0); /* Slide into view */
        }

        .burger input:checked ~ .menu-overlay {
            opacity: 1;
            visibility: visible;
        }

        /* Prevent body scrolling when menu is open */
        body.no-scroll {
            overflow: hidden;
        }

        .mobile-nav-menu ul{
           list-style-type: none; 
           font-size: 24px;
           padding-inline-start: 10px;
           padding-inline-end: 10px;
        }
        
        .mobile-nav-menu ul li{
           padding:8px 16px;
           
           border-radius: 6px;
        }
        .mobile-nav-menu ul li:hover{
           background-color:rgba(237, 237, 237, 0.8);
        }
/* end of burger menu */
/* .langSelector{
    padding-right: 30px !important;
    padding-left: 30px !important;
    background-color: #0F0F0F;
    color: white; 
    border-radius:6px 0 0 6px;
}
.langSelector a{
    color: white;
} */

/* Example CSS for the new anchor tag */

 /* start of language selector */
.langSelector {
    padding-right: 30px !important;
    padding-left: 30px !important;
    background-color: #0F0F0F;
    color: white;
    border-radius: 6px 0 0 6px;

    position: relative; /* Crucial for positioning the dropdown */
    display: inline-block; /* Allows the li to size correctly and act as positioning parent */
    cursor: pointer; /* Indicates interactivity */
    /* Add a background for the whole hover area if needed for debugging */
    /* background-color: #0F0F0F; */
}

.langSelector a { /* Styling for the main "عربي" link */
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
    gap: 5px;
    /* Important: Ensure this area covers the entire hover trigger area. */
    /* You might need to add a bit of vertical padding here if it's too tight. */
    padding-top: 0; /* Example: Adjust vertical padding to cover the space */
    padding-bottom: 0; /* Example: Adjust vertical padding to cover the space */
}


/* Style for the flag icons (if you use them for the main language as well) */
.langSelector .flag-icon {
    font-size: 1.2em;
    line-height: 1;
}

/* Rotate chevron on hover for the main selector */
.langSelector .fa-chevron-down {
    transition: transform 0.3s ease;
}

/* DROPDOWN STYLING */
.lang-dropdown {
    display: none; /* Hidden by default */
    position: absolute; /* Positioned relative to .langSelector */
    top: 100%; /* Position exactly at the bottom edge of .langSelector */
    left: 0; /* Align to the left edge of .langSelector */
    background-color: #fff; /* Dropdown background */
    box-shadow: 0 2px 5px rgba(0,0,0,0.2); /* Subtle shadow */
    min-width: 110px; /* Minimum width for the dropdown */
    z-index: 1000; /* Ensure it appears above other content */
    border-radius: 4px;
    overflow: hidden; /* Ensures rounded corners apply to content */
    /* REMOVED: margin-top: 5px; <--- This was the problem! */

    /* If you want it aligned to the right edge for RTL context */
    /* right: 0; */
    /* left: auto; /* Use with right: 0 */
}

.lang-dropdown ul {
    list-style: none;
    padding: 10px;
    margin: 0;
}

.lang-dropdown li {
    padding: 0;
    margin: 0;
}

.lang-dropdown a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 8px;
    text-decoration: none;
    color: #333;
    white-space: nowrap;
}

a {
    text-decoration: none;
    color: white;
}

.lang-dropdown a .flag-icon {
    font-size: 1.2em;
}

.lang-dropdown a:hover {
    background-color: #f0f0f0;
    color: #0f0f0f;
}

/* HOVER EFFECT */
.langSelector:hover .lang-dropdown {
    display: block; /* Show the dropdown on hover */
}

.langSelector:hover .fa-chevron-down {
    transform: rotate(180deg);
}
 /* end of lang slector */
.maxed{
    max-width: min(1300px, 90%);
}
.heroSection{
    min-height: 100dvh;
    background-image: url(../../assets/uploads/EBF-cover.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 80px;
   /* padding-left: max(24px, 5% );
    padding-right: max(24px, 5% ); */
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
    z-index: 2;
}

.heroCont{
    gap: 4px;
    display: flex;
    flex-direction: column;
    justify-content: end; 
    width: 100%;
}

.heroSection h1{
    font-size: 48px;
    color: white;
    font-weight: 700;
}
.heroSection p{
    font-size: 20px;
    color: white;
    font-weight: 500;
    max-width: 800px;
}
@media (max-width:550px) {
    .heroSection{
        background-image: url("../../assets/uploads/EBF-cover-mobile.png");
        background-position: top center;
        background-size: cover;
    }
    .heroSection h1{
        font-size: 32px;
        line-height: 1.5em;
    }
    .heroSection p{
        font-size: 16px;
    }
}
.twoButtons{
    display: flex;
    gap: 0;
    padding-top: 16px;
}
.twoButtons.centered{
    justify-content: center;
}
button{
    border: none;  
    padding: 8px 20px;
    color: white;
}
.button1{
    background-color: #0F0F0F;
    border-radius: 0 6px 6px 0;
    font-size: 16px;
}
.button2{
    background-color: #ffffff50;
    border-radius: 6px 0 0 6px;
     font-size: 16px;
}
.button3{
    background-color: #fff;
    border-radius: 6px 0 0 6px;
    color: #0F0F0F;
    border:1px solid rgba(15, 15, 15, 0.2);
     font-size: 16px;
}

/* new sec 2 */

.lineCont{
    position: absolute;
    top: 0;
    margin: auto;
    z-index: -1;
}
.line{
    width: 1px;
    height: 1100px;
    background-color: #7B7B7B;
}
.lineCont3{
    
    top: 0;
    margin: auto;
    z-index: -1;
}
.line3{
    width: 1px;
    height: 343px;
    background-color: #7B7B7B;
}
.rand-cont{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.lineCont2{
   padding-top: 20px;
    margin: auto;
    z-index: -1;
}
.line2{
    width: 1px;
    height: 350px;
    background-color: #7B7B7B;
}
.row{
    display: flex;
    flex-direction: row;
    gap: 0;
}
.column{
    display: flex;
    justify-content: center;
    align-items: center;
}
.elemCont{
    display: flex;
    justify-content: center;
    background-color: green;
}
.HlineCont{
    background-color: #8B8080;
    min-width: 25px;
    height: 1px;
    flex-grow: 1;
}
@media (max-width:550px){
    .line{
        height: 1250px;
    }
    .line3{
        height: 120px;
    }
}
/* end of new sec2 */
/* sec-2 css */
.green{
    background-color:green;
}
.red{
    background-color: red;
}
.yellow{
    background-color: yellow;
}
.white{
    background-color: white;
}
.sec2Cont{
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    align-items: center;
}

.sec2{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding-top: 155px;
    gap: 35px;
    padding-bottom: 200px;
    max-width: min(1300px, 90%);
}
@media(max-width:550px){
    .sec2{
        gap: 170px;
        padding-bottom: 90px;
    }
}
.textBoxCont{
    display: flex;
    align-items: center;
    gap: 0px;
    width: 50%;
}
.textBoxCont:nth-child(1){
     transform: translate(19px);
}
.textBoxCont:nth-child(2){
     transform: translate(-19px);
}
.textBox{
    max-width: 500px;
    gap:8px;
    padding: 16px;
    border-radius: 6px;
    background-color: #ffffff;
}

@media (max-width:800px){
    .textBoxCont.left{
        margin:auto;
    }
    .textBoxCont{
        width: 100%;
        flex-direction: column;
    }
    .textBoxCont:nth-child(2){
        flex-direction: column-reverse;
    }
    .HlineCont{
       display: none;
    }
    .textBoxCont:nth-child(1), .textBoxCont:nth-child(2) {
        transform: translate(0);
    }
    
}

.left{
    margin: 0 auto 0 0;
}
.mRight{
    margin-left: auto;
}
.linesCont{
    /* background-color: black; */
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    z-index: 10;
    align-items: center;
}
@media(max-width:550px){
    /* .line{
        display: none;
    } */
    .linesCont{
        display: none;
    }
    .sec2{
        padding-top: 170px;
    }
    
}

.lineOne{
    height: 1000px;
}

.mobileLines{
    display: flex;
    flex-direction: column;
    align-items: center;
    }

@media (min-width :550px){
    .mobileLines{
        display: none;
    }
    .mPcLines{
        padding-bottom: 32px;
    }
}
.mPcLines{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 12px;
}

@media(max-width:550px){
    .lineOne{
    height: 180px;
    }
}

.circle{
    width: 30px;
}
.circleBox{
    width: 38px;
    height: 38px;
    border-radius: 50%;
    z-index: 10;
    background-color: white;
}

.circleBox{
    animation: rotate 10s linear infinite;
}

@keyframes rotate {
    to{
        transform: rotate(360deg);
    }
}
/* end of sec2 */

/* start of sec3 */

.sec3Cont{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.sec3{
    position: relative;
    padding-top: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap:32px;
    max-width: min(1300px, 90%);
}
.init{
    display: flex;
    flex-direction: row;
    width: 100%;
    padding: 32px 20px;
    gap: 16px;
    border-radius: 6px;
    background-color: rgba(237, 237, 237, 0.8);
    cursor: pointer;
    
}
.twoTitles{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center ;
   
}
@media (min-width:550px){
    .twoTitles p{
        max-width: 400px;
        min-width: clamp(400px, 450px, 500px);
    }
    .footerCont .row:nth-child(2){
    height: 240px;
    }
}  

    @media (max-width:550px){
        .sec3{
            gap: 20px;
        }
        .twoTitles{
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            align-items: start ;
            gap: 16px;
        }
    }
    .sec4Cont{
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom:100px ;
    }
    .sec4{
        max-width: min(700px, 90%);
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
    }
    .sec4 .twoButtons{
        padding-top: 16px;
    }
    .sec4 p{
        text-align: center;
    }
    footer{
        padding-bottom: 24px;    
        /* position: sticky;
        bottom: 0;
        z-index: 1; */
    }

    .footerCont{
         max-width: min(1500px, 90%);
         background-color:rgba(159, 159, 159, 0.2) ;
         border-radius: 6px;
         padding: 20px 36px;
         margin:0 auto;
         display: flex;
         flex-direction: column;
         gap: 24px;
    }
    .row {
        display: flex;
        justify-content: space-between;
    }

    
    .row:nth-child(1){
        align-items: center;
    }
    .row:nth-child(2){
            align-items: start;
            flex-grow: 1;
            
    }
    .row:nth-child(3){
            align-items: center;
    }

    #miniPadTop .sec3{
        gap: 4px;
    }
    @media (max-width:550px){
        .listContainer.padTop{
        padding-top: 120px ;
    }
    }
 
    footer h5{
        color:rgba(15, 15, 15, 0.5);
        font-size: 14px;
        padding-bottom: 12px;
        margin-bottom: 12px;
        border-bottom: 1px;
        border-bottom-color: #0F0F0F50  ;
        border-bottom-style: solid;
    }
    .footermenu  a{
        display: block;
        padding-top:4px ;
        font-size: 14px;
        color: #0F0F0F;
        text-decoration: none;
    }
    .thrd .footerLink{
        padding-left: 36px;
    }
    #hidden {
        color: #ffffff00;
    }
    .Footermenu.fourth{
        display: flex;
        flex-direction: column;
    }
    .mediaIconCont{
        display: flex;
        flex-direction: row-reverse;
        justify-content: center;
        align-items: center;
        gap: 24px;
    }
    @media (min-width: 550px){
        .mediaIconCont{
        justify-content: end;
    }
}
    .mediaIcon a{
        padding: 0 !important;
    }
    header a{
        text-decoration: none;
        color: #0F0F0F;
    }
    header .langSelector{
        color: white;
    }

    .footermenu{
        width:min(100%, 350px) ;
    }
    .Footermenu{
        width: 50%;
    }
    .Footermenu  a{
        /* padding:0 0 0 36px ; */
        font-size: 14px;
        color: #0F0F0F;
        text-decoration: none;
    }
    .footerLink{
        font-family: 'Cairo', 'sans-serif';
    }

    .toTop{
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        width: 80px;
        height: 80px;
        transition: 0.3s ease-out;
        cursor: pointer;
    }
    .toTop:hover{
    /* background-color: #c9c9c9; */
    box-shadow: 0 0 2px 2px #0002;
    transform: translateY(-5px);
    }
    @media (max-width :550px){
        .row:nth-child(2){
            flex-direction: column;
        }
        .row:nth-child(3){
            flex-direction: column;
        }
        .Footermenu  a{
            display: flex;
        }
        .Footermenu{
        width: 100%;
        }
        .footerCont{
            padding: 36px 12px;
        }
        .toTop{width :50px;
            height: 50px;}
    }

    
    
    /* about us page */

    .parentCont{
       padding-top: 250px;
       padding-bottom: 116px;
       display: flex;
       justify-content: center;

    }
    .a1Cont{
    display: flex;
    flex-direction: column;
    width: 100%;
    gap:4px;
    max-width: min(1300px, 90%);
    }
    .pCont{
        display: flex;
        flex-direction: column;
        gap: 24px ;
       
    }

    /* carouselle section */

    .carousel-container{
        overflow: hidden; 
        width: 100%; 
        position: relative;
    }

    .carousel-track{
        display: flex; 
        white-space: nowrap; 
        min-height: calc(26vw + 36px); 
        padding: 18px 0;
        background-color: rgba(159, 159, 159, 0.2);
        width: calc(200px * 12);
    }

    .carousel-image{
        position: absolute;
        right: -26vw;
        animation:toRight 20s linear infinite;
        width: 26vw;
    }
    @media (max-width:550px){
        .carousel-image{
            width:65vw;
            animation:toRightMobile 20s linear infinite;
        }
        .carousel-track{
        min-height: calc(65vw + 24px);
        padding: 12px 0;
        }
        .carousel-image:nth-child(1) {
        animation-delay: -20s; 
        }

        .carousel-image:nth-child(2) {
        animation-delay: -16s; 
        }

        .carousel-image:nth-child(3) {
        animation-delay: -12s; 
        }

        .carousel-image:nth-child(4) {
        animation-delay: -8s;
        }

        .carousel-image:nth-child(5) {
        animation-delay: -4s;
        }
        .carousel-image:nth-child(6) {
        animation-delay: 0s;
        }
    }
   
    .carousel-image:nth-child(1) {
        animation-delay: -20s; 
    }

    .carousel-image:nth-child(2) {
    animation-delay: -16s; 
    }

    .carousel-image:nth-child(3) {
    animation-delay: -12s; 
    }

    .carousel-image:nth-child(4) {
    animation-delay: -8s;
    }

    .carousel-image:nth-child(5) {
    animation-delay: -4s;
    }
    .carousel-image:nth-child(6) {
    animation-delay: 0s;
    }


    @keyframes toRight{
        to{
            right: calc(125vw);
        }
    }

    @keyframes toRightMobile{
        to{
            right: calc(60vw * 6);
        }
    }

    /* carouselle section */
    .a2Cont{
       padding-top: 145px;
       padding-bottom: 148px;
    }
    .a2{
        max-width: min(1100px, 90%) ;
        display: flex;
        min-height: 370px;
        margin: auto;
        justify-content: center;
        flex-wrap: wrap;
    }
    .proofCont{
        width: 270px;
        height: 270px;
        background-image: url(/assets/uploads/proof.svg);
        border-radius: 50%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin-left: -35px;
        margin-right: -35px;
    }
    .proofCont:nth-child(even){
        margin-top: 90px;
    }
    .counter{
        color: #0F0F0F;
        font-size: 48px;
        font-weight: 700;
    }
    .counter h5{
        color: #0F0F0F;
        font-size: 20px;
    }
    @media(max-width:550px){
        .proofCont{
            width: 160px;
            height: 160px;
            background-size: contain;
            margin-left: -16px;
            margin-right: -16px;
        }
        .proofCont:nth-child(even){
        margin-top: 30px;
        }
        .a2Cont{
            padding-top: 68px;
            padding-bottom: 68px;
        }
    }
    /* sec3 */
    .a3Cont{
       
       padding-bottom: 150px;
    }
    .a3{
        max-width: min(1300px, 90%);
        display: flex;
        flex-direction: column;
        margin: auto;
        gap:56px
    }
    .row1{
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        gap: 8px;
    }
    
    .aboutP {
        max-width: 600px;
    }
    .row2{
        display: flex;
        flex-direction: column;
        gap: 44px;
    }
    .goal{
        display: flex;
        flex-direction: row;
        gap:20px;
        align-items: center;
    }
    .goal .num{
        font: 30px;
        font-weight: 700;
        width: 30px;
        height: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        background-image: url(/assets/uploads/proof.svg);
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
    }

    .sep{
        display: flex;
        flex-direction: row;
        justify-content: center;
        padding-bottom: 180px;
    }
    .sep h4{
        background-color: rgba(159, 159, 159, 0.2);
        padding: 12px 28px;
        border-radius: 50px;
        font-size: 24px;
        font-weight: 700;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        margin: 0 -12px;
    }

    @media (max-width :550px){
        .row1, .goal{
            flex-direction: column;
        }
        .goal p{
            text-align: center;
        }
        .sep{
            padding-bottom: 68px;
        }
        .sep h4{
            padding: 12px 16px;
            font-size: 18px;
            margin: 0 -5px;
        }
        .row2{
            gap:32px;
        }
        .goal{
            gap: 12px;
        }
    }

    .boardMemb-cont{
        max-width: min(1300px , 90%);
        margin: auto;
        padding-bottom: 136px;
    }
    @media (max-width:550px){
         .boardMemb-cont{padding-bottom: 36px;
         }
    }
    .row1 p{
        max-width: 500px;
    }
    .block1{
        display: flex;
        flex-direction: column;
        gap: 28px;
    }
    .block1 h3{
        font-size: 48px;
    }
    .pBlock{
       display: flex;
       flex-direction: row;
       gap: 24px;
    }
    .block1 h4{
        padding: 12px 24px;
        border-radius: 50px;
        font-size: 20px;
        font-weight: 700;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        transition: 5s ease;
    }
    .pBlock.forMobile{
        padding-top: 72px;
    }
    @media(min-width:550px){
        .pBlock.forMobile{
            display: none;
        }
    }
    .pBlock.forMobile h4{
        background-color: rgba(159, 159, 159, 0.2);
        padding: 12px 24px;
        border-radius: 50px;
        font-size: 16px;
        font-weight: 700;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }
    @media (max-width:550px){
        .block1 h3{
            font-size: 28px;
        }
        .pBlock.mobileHidden{
            display: none;
        }
        .pBlock h4{
            font-size: 16px;
        }
    }
    /* memCarCont members-carousel memCar-1 memCard memName memTag */
    /* Custom styles for the carousel */
        /* Custom styles for the carousel */
        .memCarCont {
            width: 100%;
            max-width: 1300px;
            margin: auto;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column; /* To stack the carousel if you add titles/etc. above it */
        }
        #second
        {
            margin-top: -485px;
           
        }
        .members-carousel{
           overflow: hidden;
            display: flex;
            flex-direction: column; /* Children (.memCar-1) will stack vertically */
            gap: 32px;
            align-items: center;
            width: 100%;
            transition: 0.5s ease-out;
        }
        
        .docs-1, .docs-2{
             box-shadow: 0px 0px 0px 0px #00000040;
            transition:0.5s ease-out;
            background-color: #9F9F9F33;
            cursor: pointer;
        }
        .docs-1:hover{
            opacity: 0;
        }
        .docs-2:hover{
            box-shadow: 0px 0px 0px 0px #00000040;
        }
        .docs-1.selected, .docs-2.selected{
            box-shadow: 0px 6px 14.1px 0px #00000040;
            background-color: #9F9F9F66;

        }
        
        .memCar-1, .memCar-2, .memCar-3{ 
            width:min(100%, 1300px); 
            min-height: 140px;
            justify-content: center;
            /* white-space: nowrap;  */
            position: relative; 
        }

        /* .memCar-1::before, .memCar-2::before, .memCar-3::before{
            content: "";
            width: 25px;
            height: 100%;
            background: #FFFFFF;
            background: linear-gradient(270deg, #FFFFFF, #FFFFFF00);
            position: absolute;
            right: 0;
            z-index: 10;
        }
        .memCar-1::after, .memCar-2::after, .memCar-3::after{
            content: "";
            width: 25px;
            height: 100%;
            background: #FFFFFF;
            background: linear-gradient(90deg, #FFFFFF, #FFFFFF00);
            position: absolute;
            left: 0;
            z-index: 10;
        } */
        
       .memCarCont .memCard{
            border-radius: 6px;
            background-color: rgba(159, 159, 159, 0.2);
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            padding: 32px 20px;
            position: absolute;
            animation: toRight2 25s linear infinite;
        }
        
        .members-carousel.dark .memCard{
            background-color:#0f0f0f ;
        }
         .members-carousel.dark .memName {
            color: hsl(0, 17%, 93%);
        }

        .memCarCont{
            clip-path: circle(90.6% at 50% 52%);
            transition: 0.5s ease-out;
           
        }
        .memCarCont.clipped{
           clip-path: circle(0% at 100% 0);
        }

        .memCard h4{
            text-align: center;
        }
        
        .memCar-1 .memCard, .memCar-3 .memCard{
            left: -250px;
        }


        @keyframes toRight2 {
            from{
                right: -250px;
            }
            to{
                right: 1300px;
            }
        }
        @keyframes toRight2Mobile{
            from{
                right: -200px;
            }
            to{
            right: 1000px;
            }
        }

        .memCar-2 .memCard{
            animation: toLeft2 25s linear infinite;
            left:-250px;
        }
        @keyframes toLeft2 {
            from{
                left: -250px;
            }
            to{
                left: 1300px;
            }
        }
        @keyframes toLeft2Mobile{
            from{
                left: -200px;
            }
            to{
            left: 1100px;
            }
        }

        .carousel-card:nth-child(1) { animation-delay: -20s; }
        .carousel-card:nth-child(2) { animation-delay: -15s; }
        .carousel-card:nth-child(3) { animation-delay: -10s; }
        .carousel-card:nth-child(4) { animation-delay: -5s; }
        .carousel-card:nth-child(5) { animation-delay: 0s; }

        @media (max-width:550px){
            .carousel-card{
                animation:toRight2Mobile 14s infinite linear;
            }
            
            .carousel-card:nth-child(1) { animation-delay: -20s; }
            .carousel-card:nth-child(2) { animation-delay: -15s; }
            .carousel-card:nth-child(3) { animation-delay: -10s; }
            .carousel-card:nth-child(4) { animation-delay: -5s; }
            .carousel-card:nth-child(5) { animation-delay: 0s; }
        }

        .memName {
            font-size: 16px; /* text-xl */
            font-weight: 700; /* font-semibold */
            color: #333; /* Darker text */
            margin-bottom: 6px;
        }

        .memTag {
            font-size: 12px; /* text-base */
            color: #666; /* Slightly lighter text */
        }

        /* Responsive adjustments for card width */
        /* Mobile: default w-[200px] */
        .memCard {
            width: 250px; /* Default for mobile */
        }

        @media (min-width: 640px) { /* sm breakpoint */
            .memCard {
                width: 250px; /* Slightly larger on small tablets */
            }
        }

        @media (min-width: 768px) { /* md breakpoint */
            .memCard {
                width: 250px; /* Larger on desktops */
            }
        }
    

    /* about Us Page */

    .topPad{
        padding-top: 280px;
    }
    @media (max-width:550px){
        .topPad{
        padding-top: 120px;
    }
    }
    .full{
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .cart-btn{
        color: black;
        font-size: 16px;
        background-color: white;
    }
    .cart-btn i{
        font-size: 18px
    }
    .right{
        text-align: start;
    }
    .contactCont{
        margin-top:48px ;
        border-top:1px solid rgba(159, 159, 159, 1);
        border-bottom:1px solid rgba(159, 159, 159, 1);
    }
    .contactInfo{
        max-width: min(1300px, 90%);
        margin: auto;
        border-right: 1px solid rgba(159, 159, 159, 1);
        display: flex;
        flex-direction: column;
        gap:60px ;
        padding: 60px 0;
    }
    .contactRow{
        display: flex;
        gap: 14px;
        margin-right: -13px; 
        align-items: center;
    }

    .contactRow a{
        text-decoration: none;
        color: rgba(15, 15, 15, 1);
        font-family: Cairo;
        font-weight: 500;
        font-size: 20px;
        line-height: 1.5em;
    }

    .contactRow h5{
        text-decoration: none;
        color: rgba(15, 15, 15, 1);
        font-family: 'Cairo','sans-serif';
        font-weight: 700px;
        font-size: 24px;
        line-height: 1.5em;
    }

    

    @media (max-width:550px){
        #miniPadTop{
            padding-top: 100px;
            
            padding-bottom: 40px;

        }
        #miniMargin{
            padding-top: 40px;
            padding-bottom: 32px;
        }
        .contactRow:nth-child(3) h5:nth-child(3) {
        margin-bottom: -50px;
        }
    }
    .contactCont{
        /* clip-path: polygon(100% 0, 100% 0, 100% 0, 100% 0); */
        transition: 0.8s ease-in-out;
    }
     .contactCont.shown{
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); 
    }
    .contactRow img{
        width: 26px;
        height: 26px;
        object-fit: contain;
        background-color: white;
        transition: 0.3s ease-in-out;
    }
    .contactRow:hover img{
        
        animation: rotate 5s infinite;
    }

    .contactRow a{
        transition: 0.5s ease-in-out;
    }

    .contactRow:hover a{
        font-weight: 700;
    }
    .formParent{
        border-bottom: 1px solid #9F9F9F;
        margin-bottom: 64px;
    }
    .formCont{
        padding-top: 100px;
        padding-bottom: 84px;
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        max-width: min(1300px, 90%);
        margin:20px auto;
        justify-content: space-between;
    }
    .formCol div{
        background-color: rgba(15, 15, 15, 0.2);
        padding: 15px 12px 15px 24px;
        margin-bottom: 36px;
        border-radius: 6px;
    }
    .formCol h5{
        font-weight: 500;
        font-size: 14px;
    }
    .formCol2{
        width: 100%;
        max-width: 760px;
    }
    
    #phone{
        text-align: end;
    }
    .formInfo{
        padding-bottom: 28px;
        
        flex-grow: 1;
    }
    .asterisk{
        color: red;
        padding-left: 4px;
        font-size: 20px;
        font-weight: 700;
    }
    .formLabel{
        display: block;
        padding-bottom: 12px;
        font-weight: 700;
        font-size: 20px;
    }

    .form-control{
        width: 100%;
        font-size: 16px;
        font-weight: 700;
        padding: 14px 16px;
        border: 0;
        border-radius: 6px;
        background-color: rgba(159, 159, 159, 0.2);
        resize: vertical;
    }
    .btn-send-message i{
        width: 24px;
        height: 24px;  
    }

    .btn i{
        width: 24px;
        height: 24px;  
    }
    .btn-send-message{
        background-color: #0f0f0f;
        font-size: 14px;
        font-weight:400 ;
        padding: 12px 32px 12px 24px;
        border-radius: 6px;
    }
    
    .multiStepForm{ 
        margin: 60px auto;
        padding-top: 64px;
        border-top: 1px solid #0F0F0F;
    }

    /* .multiStepForm form{
        max-width: min(90%, 1300px);
        margin: auto;
    } */

    .pagination{
        display: flex;
        gap: 8px;
        padding-bottom:84px
    }

    .pagination .title{
        font-weight: 500;
        font-size: 16px;
        color: #0F0F0F33;
        padding: 8px;
        border-radius: 8px;
    }
    .pagination .title.active{
        background-color: #0F0F0F33;
        color: #0F0F0F;
        font-weight: 700;
    }

    /* New: Styles for the container holding the checkbox and its inline text */
    .checkbox-group-wrapper {
        display: flex; /* Makes items (checkbox and label) align horizontally */
        align-items: center; /* Vertically centers the checkbox with the text */
        direction: rtl; /* For right-to-left layout */
        gap: 8px; /* Space between the checkbox and its text */
        /* Add padding here if you want the whole line to align with other inputs' padding */
        padding: 0 5px; /* Example padding to match input text alignment */
    }

    /* Styles for the checkbox input itself */
    .form-control[type="checkbox"] {
        width: auto; /* Prevent stretching of the checkbox */
        height: auto; /* Prevent stretching */
        padding: 0; /* Remove any padding applied by .form-control */
        border: none; /* Remove border if .form-control adds one to checkboxes */
        margin: 0; /* Remove any default margins */
        flex-shrink: 0; /* Prevent the checkbox from shrinking */
        /* You might want to scale the native checkbox for better visibility */
        /* transform: scale(1.2); /* Example: Makes the checkbox 20% larger */
        /* margin-left: 5px; /* Adjust if scaling moves it too close to the text */
    }

    /* Styles for the text directly next to the checkbox */
    .acknowledgment-text {
        font-size: 14px; /* Adjust to match the size of your body text */
        color: #555; /* A common color for explanatory text */
        line-height: 1.5; /* Improve readability for longer text */
        text-align: right; /* For RTL text */
        flex-grow: 1; /* Allows the text to take up available space */
    }

    
    .sep-2{
        background-color: #0F0F0F;
        min-height: 1px;
        margin: 60px 0 24px 0;
    }

   .container {
            margin: auto;
            width: min(1300px, 90%);
            background: white;
            padding-bottom: 40px;
            border-radius: 20px;
            /* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04); */
        }

        .progress-bar {
            display: flex;
            justify-content: space-between;
            margin-bottom: 40px;
            position: relative;
            /* padding: 0 40px; */
             padding: 0;
        }

        .progress-bar::before {
            content: '';
            position: absolute;
            height: 3px;
            width: calc(100% - 80px);
            background: #f0f0f0;
            top: 50%;
            left: 40px;
            transform: translateY(-50%);
            z-index: 0;
        }

        .progress-step {
            width: 40px;
            height: 40px;
            background: white;
            border: 2px solid #f0f0f0;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 700;
            position: relative;
            z-index: 1;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .progress-step.active {
            border-color: #000;
            background: #CFCFCF;
            color: white;
        }

        .progress-step.completed {
            border-color: #000;
            background: #000;
            color: white;
        }

        .form-step {
            display: none;
            padding: 0 20px;
        }

        .form-step.active {
            display: flex;
            flex-direction: column;
            gap: 36px;
            animation: fadeIn 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        }

        @keyframes fadeIn {
            from {
                opacity: 0;
                transform: translateY(20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .container h2 {
            font-size: 1.75rem;
            color: #1a1a1a;
            margin-bottom: 30px;
            font-weight: 700;
            flex-grow: 3;
        }
        .flex{
            display: flex;
            flex-direction: row;
            gap: 20px;
            flex-wrap: wrap;
        }
        .form-group {
            display: flex;
            flex-direction: column;
            justify-content: end;
            width: max(32%, 328px);
            flex-grow: 1;
        }



        .btn-group {
            display: flex;
            justify-content: space-between;
            gap: 15px;
            margin-top: 40px;
            flex-grow: 3;
        }

        .btn {
            padding: 12px 28px;
            border: none;
            border-radius: 6px;
            font-size: 1rem;
            font-weight: 700;
            cursor: pointer;
            transition: all 0.3s ease;
        }

        .btn-prev {
            background: #f3f4f6;
            color: #4b5563;
        }

        .btn-next {
            background: #0F0F0F;
            color: white;
        }

        .btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(99, 102, 241, 0.15);
        }
        .donate-btn{
            cursor: pointer;
            padding: 16px 20px;
            font-size: 14px;
            font-weight: 400;
            color: white;
            background-color: #0F0F0F;
            border-radius: 6px;
        }

        .course-option {
            border: 2px solid #e5e7eb;
            padding: 20px;
            border-radius: 16px;
            margin-bottom: 15px;
            cursor: pointer;
            transition: all 0.3s ease;
            background: #f9fafb;
        }

        .course-option:hover {
            border-color: #6366f1;
            background: white;
        }

        .course-option.selected {
            border-color: #6366f1;
            background: #eef2ff;
        }

        .course-option h3 {
            color: #1a1a1a;
            margin-bottom: 10px;
            font-size: 1.2rem;
        }

        .course-option p {
            color: #4b5563;
            margin-bottom: 8px;
            font-size: 0.95rem;
        }

        .payment-option {
            display: flex;
            align-items: center;
            gap: 15px;
            padding: 20px;
            border: 2px solid #e5e7eb;
            border-radius: 16px;
            margin-bottom: 15px;
            cursor: pointer;
            transition: all 0.3s ease;
            background: #f9fafb;
        }

        .payment-option:hover {
            border-color: #6366f1;
            background: white;
        }

        .payment-option.selected {
            border-color: #6366f1;
            background: #eef2ff;
        }

        .payment-option label {
            font-weight: 500;
            color: #1a1a1a;
            font-size: 1rem;
        }

        .summary-item {
            display: flex;
            justify-content: space-between;
            padding: 15px 0;
            border-bottom: 2px solid #f3f4f6;
        }

        .summary-item span:first-child {
            color: #4b5563;
            font-weight: 500;
        }

        .summary-item span:last-child {
            color: #1a1a1a;
            font-weight: 700;
        }

        .success-message {
            text-align: center;
            padding: 40px 20px;
        }

        .success-message h2 {
            color: #6366f1;
            margin-bottom: 20px;
        }

        .success-message p {
            color: #4b5563;
            font-size: 1.1rem;
            line-height: 1.6;
        }

        @media (max-width: 640px) {
            .container {
                padding: 20px;
            }

            .progress-bar {
                /* padding: 0 20px; */
                padding: 0;
            }

            .btn-group {
                flex-direction: column;
            }

            .btn {
                width: 100%;
            }
        }

        .file-upload-wrapper {
    position: relative;
    display: block;
    cursor: pointer;
    width: 100%;
}

.file-upload-wrapper input[type="file"] {
    position: absolute;
    left: 0;
    top: 0;
    opacity:0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 1;
   
}

.custom-file-upload-button {
    display: flex;
    align-items: center;
    justify-content: flex-start; /* Align content to the start (right for RTL) */
    width: 100%;
    padding: 10px 15px;
    background-color: #f8f9fa; /* Light grey background to match your form */
    color: #F8F9FA;
    border: 1px solid #ddd;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.2s ease, border-color 0.2s ease;
    box-sizing: border-box;
    text-align: right; /* For RTL */
    direction: rtl; /* Set text direction to right-to-left */
}

.custom-file-upload-button:hover {
    background-color: rgb(105, 105, 105);
    border-color: #ccc;
}

.custom-file-upload-button .icon {
    margin-left: 8px; /* Space between text and icon in RTL */
    margin-right: 0;
    font-size: 20px;
    flex-shrink: 0;
}

/* .file-upload-wrapper {
    position: relative;
    display: block; 
    cursor: pointer;
    width: 100%;
    overflow: hidden; 
} */

.file-upload-wrapper input[type="file"] {
    position: absolute; /* Positions it over the label */
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0; /* Makes it invisible */
    cursor: pointer;
    z-index: 1; /* Ensures it's above the label */
    background-color: #f8f9fa;
}

.custom-file-upload-button {
    /* Your styling for the visible button */
    display: flex;
    align-items: center;
    justify-content: flex-start; /* For RTL */
    width: 100%;
    padding: 10px 15px;
    background-color: #f8f9fa;
    color: #333;
    border: 1px solid #ddd;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
    box-sizing: border-box;
    text-align: right;
    direction: rtl;
}
.file-upload-wrapper {
    position: relative;
    display: inline-block; /* Or 'block' depending on your layout needs */
    overflow: hidden; /* Crucial: Hides any overflow from the absolute input */
    width: 100%; /* Make it fill its container */
    cursor: pointer;
    box-sizing: border-box; /* Include padding and border in the element's total width and height */
}

/* This is the actual file input. We hide it completely. */
.file-upload-wrapper input[type="file"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0; /* Makes it completely invisible */
    cursor: pointer;
    z-index: 1; /* Ensures it's on top of the custom button for clicks */
    /* Remove any default styling that might make it visible or affect layout */
    padding: 0;
    margin: 0;
    border: none;
    outline: none;
}

/* This is your custom styled button/label */
.custom-file-upload-button {
    display: flex; /* Use flexbox for easy alignment */
    align-items: center; /* Vertically center content */
    justify-content: flex-start; /* Align content to the right for RTL */
    background-color: #f8f9fa; /* Your desired background */
    color: #333; /* Your desired text color */
    padding: 10px 15px; /* Adjust padding as needed */
    border: 1px solid #ddd; /* Your desired border */
    border-radius: 8px; /* Rounded corners */
    cursor: pointer;
    font-size: 16px;
    width: 100%; /* Make it fill its container */
    box-sizing: border-box;
    text-align: right; /* For RTL text */
    direction: rtl; /* Ensure text direction is right-to-left */
    /* Position relative to ensure z-index works, though wrapper handles it too */
    position: relative;
    z-index: 0; /* Ensures it's below the hidden input */
}

.custom-file-upload-button .icon {
    margin-left: 8px; /* Space between text and icon in RTL */
    margin-right: 0;
    font-size: 1.2em; /* Adjust icon size */
}

/* This is the span where the file name is displayed by JavaScript */
.file-name-display {
    display: block; /* Ensures it takes its own line below the button */
    margin-top: 5px; /* Some space from the button */
    font-size: 14px;
    color: #555;
    text-align: right; /* Align text to the right for RTL */
    direction: rtl;
    overflow: hidden; /* Hide overflow if file name is too long */
    text-overflow: ellipsis; /* Add ellipsis for long file names */
    white-space: nowrap; /* Keep text on a single line */
}

/* To hide the default text inside the label when a file is selected */
.custom-file-upload-button span:last-child {
    flex-grow: 1; /* Allows the "اختر ملف" text to take available space */
}

/* This is a common trick to make the "اختر ملف" text disappear when a file is selected.
   You would need to add a class to the .file-upload-wrapper or the .custom-file-upload-button
   when a file is chosen, and then use CSS to hide the span inside.
   However, a simpler approach is to completely hide the native input,
   and have the JS *replace* the content of your custom label.
*/

/* products list & product details page */

.listContainer{
    width: min(1300px, 90%);
    margin: auto;
    text-align: center;
    padding-top: 10px;
}
.listContainer.padBot{
    padding-bottom: 160px;
}
@media (min-width :550px){
.listContainer.padTop{
    padding-top: 280px;
}
}
.title{
    font-size: xx-large;
    padding: 20px 0;
}
.listProduct .item img{
    width: 100%;
    z-index: 1;
    object-fit: cover;
}
.listProduct{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding-top: 60px;
}
.listProduct .item{
    overflow: hidden;
    border-radius: 10px;
    position: relative;
    aspect-ratio: calc(424/460);
}

.listProduct .item:hover .prodDetails{
    bottom: 0;
}
.prodDetails{
    position: absolute;
    bottom: -6.5em;
    width: 100%;
    background-color: #9F9F9F33;
    backdrop-filter: blur(10px);
    padding: 18px 0 20px 0;
    z-index: 20;
    transition: 0.3s ease-out;
    border-radius: 10px 10px 0 0;
}
.prodPrice{
    padding: 8px 0 16px 0;
}
.listProduct .item h2{
    color: white;
    font-weight: 700;
    font-size: 20px;
}
.listProduct .prodDetails .prodPrice{
    font-size: 16x !important;
    color: white;
    font-weight: 400;
}


.listProduct .item .prodPrice, .listProduct .item .add2Cart{
    transform: translateY(20px);
    opacity: 0;
    transition: 0.3s ease-out;
}
.listProduct .item:hover .prodPrice, .listProduct .item:hover .add2Cart{
    transform: translateY(0px);
    opacity: 1;
}
.listProduct .item h5{
    transition-delay: 0.1s;
}
.listProduct .item .add2Cart{
    transition-delay: 0.2s;
}
.add2Cart{
    padding: 16px 20px;
    background-color: #9F9F9F33;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    display: inline-block;
    border-radius: 6px;
    color: white;
    font-size: 14px;
    font-weight: 300;
}
/* detail page */

.detail{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
    text-align: right;
}
@media (max-width:550px){
    .detail{
        gap: 8px;
    }
}
.detail .image img{
    width: 100%;
}
.detail .image{
    position: relative;
}

.detail .name{
    font-size: 32px;
    color: #0f0f0f;;
    
}
.detail .price{
   font-size: 32px;
    color: #0F0F0FB2;
    font-weight: 700;
    
}
.prodSep{
    min-height: 1px;
    background-color: #9F9F9F33;
    margin: 12px 0;
}

.detail .buttons{
    display: flex;
    gap: 20px;
   border-radius: 6px;
}
.detail .buttons button{
    border: none;
    padding: 17px 20px;
}
.detail .buttons svg{
    width: 15px;
}
.detail .buttons span{
    background-color: #555454;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    margin-left: 20px;
}
.detail .buttons button:nth-child(2){
    background-color: #2F2F2F;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #eee;
}
.detail .description{
    font-weight: 300;
}
.content{
    font-size: 16px;
    font-weight: 700;
    color: #0F0F0FB2;
    display: flex;
    gap: 16px;
    flex-direction: column;
}
@media (max-width:550px){
    .content{gap:0px}
}
.qty-input {
    color: #000; /* $black */
    background: #fff; /* $white */
    display: flex;
    align-items: center;
    overflow: hidden;
    border: 1px solid #9F9F9F33;
    border-radius: 6px;
}

.qty-input .product-qty,
.qty-input .qty-count {
    background: transparent;
    color: inherit;
    font-weight: bold;
    font-size: 20px;
    border: none;
    display: inline-block;
    min-width: 50px;
    line-height: 1;
}

.qty-input .product-qty:focus,
.qty-input .qty-count:focus {
    outline: none;
}

.qty-input .product-qty {
    width: 50px;
    min-width: 0;
    display: inline-block;
    text-align: center;
    appearance: textfield;
}

.qty-input .product-qty::-webkit-outer-spin-button,
.qty-input .product-qty::-webkit-inner-spin-button {
    appearance: none;
    margin: 0;
}

.qty-input .qty-count {
    padding: 0;
    cursor: pointer;
    width: 2.5rem;
    font-size: 1.25em;
    text-indent: -100px;
    overflow: hidden;
    position: relative;
}

.qty-input .qty-count:before,
.qty-input .qty-count:after {
    content: "";
    height: 2px;
    width: 10px;
    position: absolute;
    display: block;
    background: #000; /* $black */
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.qty-input .qty-count--minus {
    border-right: 1px solid #e2e2e2; /* $smoke */
}

.qty-input .qty-count--add {
    border-left: 1px solid #e2e2e2; /* $smoke */
}

.qty-input .qty-count--add:after {
    transform: rotate(90deg);
}

.qty-input .qty-count:disabled {
    color: #ccc; /* $gray */
    background: #f2f2f2; /* $disable */
    cursor: not-allowed;
    border-color: transparent;
    border: 1px solid #f2f2f2;
}

.qty-input .qty-count:disabled:before,
.qty-input .qty-count:disabled:after {
    background: #ccc; /* $gray */
}



.qty-input {
    border-radius: 4px;
    
    transform: scale(1);
}

/* // ipad */
@media only screen and (max-width: 992px) {
    .listProduct{
        grid-template-columns: repeat(3, 1fr);
    }
    .detail{
        grid-template-columns:  40% 1fr;
    }
}


/* mobile */
@media only screen and (max-width: 768px) {
    .listProduct{
        grid-template-columns: repeat(2, 1fr);
    }
    .detail{
        text-align: start;
        grid-template-columns: 1fr;
    }
    
    .detail .name{
        font-size: x-large;
        margin: 0;

    }
    .detail .buttons button{
        font-size: small;
    }
    .detail .buttons{
        justify-content: center;
        padding-top: 16px;
        justify-content: space-between;
    }
}


/*  */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
}

.pagination button {
    padding: 8px 15px;
    margin: 0 5px;
    
    /*background-color: #f0f0f0; */
    cursor: pointer;
    border-radius: 4px;
    color: #0f0f0f;
}

/* .pagination button:hover:not(:disabled) {
    background-color: #ddd;
} */

.pagination button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-number{
    background-color: white;
    color:#9F9F9F;
    font-size: 16px;
    border-radius: 50%;
    background-image: url("../../assets/uploads/pagination-bg.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 0%;
    background-position: center;
    transition: 0.3s ease;
}
.page-number:hover{
    background-size: contain;
}
.pagination .page-number.active {
    background-image: url("../../assets/uploads/pagination-bg.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    color: #0f0f0f;
    border-color: #007bff;
}

#pageNumbers {
    display: flex;
    margin: 0 10px;
}
/* CART */
.cartContainer{
    margin: auto;
    max-width: min(1300px, 90%);
    }
    .cartContainer h1{
      border-bottom: 1px solid #9F9F9F33;
      margin-bottom: 48px; 
       padding-bottom: 60px;
    }
.cart-layout {
    display: flex;
    gap: 10%;
    flex-wrap: wrap; /* Allow wrapping on smaller screens */
    margin-bottom: 72px;    
}

        .cart-products {
            min-width: 45%
        }

        .cart-summary {
            min-width: 45%;
            padding: 20px;
            /* background-color: #f8f9fa; */
            border-radius: 8px;
            
            box-shadow: inset 0 0 8px rgba(0,0,0,0.05);
            
        }

        .product-item {
            display: flex;
            
            gap: 20px;
            margin-bottom: 20px;
            padding-bottom: 20px;
            border-bottom: 1px solid #eee;
        }

        .product-item:last-child {
            border-bottom: none;
            margin-bottom: 0;
            padding-bottom: 0;
        }

        
        .product-item .image img {
            width: 15vw;
            border-radius: 8px;
            object-fit: cover;
            border: 1px solid #ddd;
        }

        .product-item .details {
             min-width: 45%;
        }

        .product-item .details h3 {
            margin: 0 0 5px 0;
            font-size: 1.2em;
            color: #333;
        }

        .product-item .details .price {
            font-size: 1.3em;
            color: #0F0F0FB2;
            font-weight: 700;
        }
        @media(max-width :925px){
            .product-item .image {
            width: 15vw;
            }
          
            .product-item .image img {
            width: 15vw;
            }
             
        /* .product-item .details {
             min-width: 100%;
        } */
        .cart-summary {
            min-width: 100%;
        }
        .cart-products {
            min-width: 40%
        }
    }

        .qty-control {
            display: flex;
            align-items: center;
            border: 1px solid #ddd;
            border-radius: 5px;
            overflow: hidden;
            width: fit-content;
           
        }

        .qty-control button {
            background-color: #f0f0f0;
            border: none;
            padding: 8px 12px;
            cursor: pointer;
            font-size: 1em;
            color: #333;
            transition: background-color 0.2s ease;
        }
        .qty-remove-group{
            margin-top: 24px;
            display: flex;
            flex-direction: row;

        }
        .qty-control button:hover {
            background-color: #e0e0e0;
        }

        .qty-control input {
            border: none;
            width: 40px;
            text-align: center;
            font-size: 1em;
            -moz-appearance: textfield; /* Hide arrows for Firefox */
        }

        .qty-control input::-webkit-outer-spin-button,
        .qty-control input::-webkit-inner-spin-button {
            -webkit-appearance: none; /* Hide arrows for Chrome, Safari, Edge */
            margin: 0;
        }

        .remove-item-btn {
            background-color: #0f0f0f;
            color: #fff;
            border: none;
            padding: 8px 32px;
            border-radius: 5px;
            cursor: pointer;
            font-size: 0.9em;
            transition: background-color 0.2s ease;
            margin-right: 15px; /* Space from quantity control */
        }

        .remove-item-btn:hover {
            background-color: #c82333;
        }

        /* Cart Summary Styles */
        .cart-summary h2 {
            text-align: start;
            margin-bottom: 25px;
            font-size: 32px;
            border-bottom: 1px solid #9F9F9F33;
            padding-bottom: 12px;
        }

        .summary-row {
            display: flex;
            justify-content: space-between;
            padding: 10px 0;
            border-bottom: 1px dotted #eee;
            font-size: 1.1em;
        }

        .summary-row:last-of-type {
            border-bottom: none;
            margin-bottom: 20px;
        }

        .summary-row.total {
            font-weight: bold;
            font-size: 1.3em;
            color: #333;
            border-top: 1px solid #9F9F9F33;
            padding-top: 15px;
            margin-top: 15px;
        }

        .form-group { /* Reusing from form styles */
            margin-bottom: 15px;
        }
        .formLabel { /* Reusing from form styles */
            display: block;
            margin-bottom: 8px;
            font-weight: bold;
            color: #555;
            text-align: right;
            font-size: 0.95em;
        }
        .form-control { /* Reusing from form styles */
            width: 100%;
            padding: 12px 15px;
            border: 1px solid #ddd;
            border-radius: 8px;
            background-color: #f8f9fa;
            box-sizing: border-box;
            font-size: 1em;
            color: #333;
            text-align: right;
            transition: border-color 0.2s ease, box-shadow 0.2s ease;
        }
        .form-control:focus {
            outline: none;
            border-color: #0F0F0F;
            box-shadow: 0 0 0 0.2rem rgba(53, 54, 54, 0.25);
        }

        .btn-checkout {
            width: 100%;
            padding: 15px;
            background-color: white;
            color: #0f0f0f;
            border: 1px solid #0F0F0F33;
            border-radius: 8px;
            cursor: pointer;
            font-size: 1.2em;
            font-weight: 600;
            transition: background-color 0.3s ease;
        }

        .btn-checkout:hover {
            background-color: #0f0f0f;
            color: white;
        }

        .empty-cart-message {
            text-align: center;
            font-size: 1.3em;
            color: #666;
            padding: 50px 0;
        }

        @media (max-width: 768px) {
            .product-item .image{
                width: 50px;
            }
            .cart-layout {
                flex-direction: column;
            }
            .cart-products, .cart-summary {
                min-width: unset;
                width: 100%;
            }
            .product-item {
                flex-direction: row;
                text-align: right;
            }
            .product-item .image img {
                margin-bottom: 15px;
            }
            .qty-remove-group {
                width: 100%;
                display: flex;
                margin-top: 4px;
                gap: 8px;
                margin-bottom: 24px;
            }
        }
        .cart-summary .form-group{
            width: 100%;
        }
         .oval-bg{
            position: absolute;
            animation: float 4s infinite alternate;
            opacity: 0.32;
        }

        .oval-inner{
            position: relative;
            width: 400px;
            height: 312px;
            opacity: 0.3;
           background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #0D7C3E 100%);
           border-radius: 50%;
           filter: blur(25px);
           
        }
       
        @media (max-width:768px){
            .oval-bg{
            position: absolute;
            animation: float-mini 4s infinite alternate;
        }
            .oval-inner{
            width: 150px;
            height: 152px;
            }
        }
        .sec2 .oval-bg{
            bottom: 0;
            right: calc(100% - 1300px);
        }
        .sec3 .oval-bg{
            top: 50%;
            left: 0;
        }

        .sec2, .sec3, footer{
            overflow: hidden;
        }
        footer{
            position: relative;
        }
        footer .oval-bg{
            top: 10%;
            right: 10%;
        }

        footer .second{
            top: 80%;
            right: 80%;
        }
        @keyframes float {
            to{
                transform: scale(2) translate(-20px, -20px);     
            }
        }

        @keyframes float-mini {
            to{
                transform: scale(1.5);     
            }
        }
