 * {
     -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
     box-sizing: border-box;
 }

 a {
     text-decoration: none;
     transition: all .2s ease-in-out;
     color: inherit;
 }

 a,
 button,
 input[type="button"] {
     cursor: pointer;
     transition: all .2s ease-in-out;
 }

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

 button {
     background: transparent;
     border: none;
 }

 button:focus {
     outline: none
 }

 .list-inline-item:not(:last-child),
 ul {
     margin-right: 0;
 }

 ul {
     padding-left: 0;
     padding-right: 0;
     transition: all .4s ease-in-out;
     margin: 0;
 }

 ul li {
     list-style-type: none
 }

 :focus {
     outline: none;
 }

 .text-center {
     text-align: center;
 }

 .text-right {
     text-align: right
 }

 .text-left {
     text-align: left
 }

 .padd-0 {
     padding-left: 0;
     padding-right: 0
 }

 .padd-5 {
     padding-left: 5px;
     padding-right: 5px
 }

 .sec-marg {
     margin-top: 30px;
     margin-bottom: 30px
 }

 .sec-padd {
     padding-top: 40px;
     padding-bottom: 40px;
 }

 .pl-10 {
     padding-left: 10px;
 }

 .pr-10 {
     padding-right: 10px;
 }

 .pt-10 {
     padding-top: 10px;
 }

 .pb-10 {
     padding-bottom: 10px;
 }

 .pl-20 {
     padding-left: 20px;
 }

 .pr-20 {
     padding-right: 20px;
 }

 .pt-20 {
     padding-top: 20px;
 }

 .pb-20 {
     padding-bottom: 20px;
 }

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

 .mr-10 {
     margin-right: 10px;
 }

 .mt-10 {
     margin-top: 10px;
 }

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

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

 .mr-20 {
     margin-right: 20px;
 }

 .mt-20 {
     margin-top: 20px;
 }

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

 .m-20 {
     margin: 20px;
 }

 .p-15 {
     padding: 15px;
 }

 .r-0 {
     border-radius: 0 !important;
 }

 .p-0 {
     padding: 0 !important;
 }

 .f-b {
     font-weight: 600;
 }


 .mx-1 {
     margin-left: .25rem !important;
 }

 :focus {
     box-shadow: none !important;
     border-color: inherit;
 }

 .d-none {
     display: none
 }

 .d-block {
     display: block
 }

 .owl-carousel {
     direction: ltr
 }

 .dropdown-toggle::after {
     display: none
 }

 .dropdown {
     display: inline-block;
 }

 .dropdown-menu {
     float: none;
     text-align: start;
 }

 select.form-control:not([size]):not([multiple]) {
     height: calc(2.6rem + 5px);

 }

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

 p {
     margin: 0;
     line-height: 1.7;
 }

 .flex-grow-1 {
     flex-grow: 1
 }

 input[type=checkbox],
 input[type=radio] {
     position: relative;
     width: 20px;
     height: 20px;
     vertical-align: middle;
 }

 input[type=checkbox]:before {
     top: 0;
     left: 0;
     width: 20px;
     height: 20px;
     border: 1px solid var(--main);
     content: "";
     position: absolute;
     background: var(--main);
     border-radius: 3px;
 }

 input[type=checkbox]:checked::after {
     background: transparent;
     border: 2px solid #fff;
     top: 0px;
     left: 7px;
     width: 7px;
     height: 15px;
     /* border: 1px solid #000; */
     content: "";
     position: absolute;
     border-top-color: transparent;
     border-left-color: transparent;
     transform: rotate(45deg);
 }

 input[type=radio]:before {
     top: 0;
     left: 0;
     width: 20px;
     height: 20px;
     border: 1px solid var(--main);
     content: "";
     position: absolute;
     background: #fff;
     border-radius: 50%;
 }

 input[type=radio]:checked::after {
     top: 50%;
     left: 50%;
     width: 12px;
     height: 12px;
     content: "";
     position: absolute;
     transform: translate(-50%, -50%);
     background: var(--main);
     border-radius: 50%;
 }

 :root {
     --main: #0F1F3C;
     --main2: #F0B429;
     --white: #ffffff;
     --gray: #7C7B7B;
 }


 .main-color {
     color: var(--main) !important;
 }

 .grey-color {
     color: var(--gray);
 }

 .font-11 {
     font-size: 11px;
 }

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

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

 .under-line {
     text-decoration: underline;
 }

 .btn-main {
     display: block;
     background: var(--main);
     color: var(--white) !important;
     width: 180px;
     max-width: 100%;
     padding: 0;
     border-radius: 4px;
     text-align: center;
     text-shadow: 0 0;
     margin: 20px auto;
     height: 48px;
     line-height: 48px;
     border: 1px solid var(--main);
 }



 .btn-main-w {
     background: #fff;
     color: var(--main) !important;
 }

 textarea {
     resize: none;
 }

 @font-face {
     font-family: "myFont";
     src: url(../fonts/JF-Flat-regular.ttf);

 }

 .rounded {
     border-radius: .25rem !important;
 }

 .po_R {
     position: relative
 }

 .gap-1 {
     gap: 12px
 }

 body {
     direction: rtl;
     text-align: right;
     font-family: "myFont";
     word-spacing: 1px;
     background: #FFFFFF;
     color: #1D1E1E;
     font-size: 15px;
 }



 .profix-header {
     background: rgba(12, 49, 113, 0.85);
     box-shadow: 0px 4px 15px 0px rgba(0, 0, 0, 0.2);
     width: 100%;
     z-index: 1000;
     top: 0;
     left: 0;
     position: fixed;
     padding: 0;
 }

 .logo-box {
     background: linear-gradient(180deg, #E2E8F0 0%, #CBD5E1 100%);
     padding: 10px 80px;
     height: 80px;
     display: flex;
     align-items: center;
     justify-content: center;
     box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);
 }

 .profix-header .the_logo {
     max-width: 90px;
     max-height: 60px;
 }

 .profix-header .nav_bar {
     display: flex;
     flex-grow: 1;
     align-items: center;
     justify-content: flex-start;
     gap: 35px;
     padding-inline-start: 40px;
     color: #fff;
     margin: 0;
     list-style: none;
 }

 .profix-header .nav_bar li {
     margin: 0;
 }

 .profix-header .nav_bar a {
     color: #94A3B8;
     font-size: 15px;
     font-weight: 500;
     transition: all 0.3s ease;
 }

 .profix-header .nav_bar a:hover,
 .profix-header .nav_bar a.active {
     color: #fff;
 }

 .social_media li {
     margin-inline-end: 10px;
 }

 .social_media li img {
     width: 40px;
     height: 40px;
     border-radius: 50%;
 }

 .profix-header .top_link {
     gap: 12px;
 }

 .profix-header .btn-main-outline {
     background: transparent;
     color: #fff !important;
     border: 1px solid rgba(255, 255, 255, 0.2);
     padding: 8px 25px;
     border-radius: 6px;
     font-size: 14px;
     transition: all 0.3s ease;
 }

 .profix-header .btn-main-outline:hover {
     background: rgba(255, 255, 255, 0.1);
     border-color: #fff;
 }

 .profix-header .lang {
     padding: 8px 15px;
 }

 .close-open-nav {
     width: 25px;
     height: 25px;
     position: relative;
     display: none;
 }

 .close-open-nav>div {
     display: flex;
     flex-direction: column;
     justify-content: space-around;
     width: 100%;
     height: 100%;
     cursor: pointer;
 }

 .close-open-nav>div span {
     width: 100%;
     height: 3px;
     background: #fff;
     border-radius: 20px;
     display: block;
     transition: all 0.3s linear 0s;
 }

 .close-open-nav.active span:first-of-type {
     transform: translateY(7px) rotate(45deg);
 }

 .close-open-nav.active span:nth-child(2) {
     opacity: 0;
 }

 .close-open-nav.active span:last-of-type {
     transform: translateY(-9px) rotate(-45deg);
 }


 /* Hero Section Styles */
 .hero-section {
    position: relative;
    min-height: 100vh;
    background-image: url(../imgs/photo.png);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    margin-top: 0;
    padding-top: 100px;
    padding-bottom: 10px;
 }

 .hero-overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: linear-gradient(90deg, rgba(15, 31, 60, 0.95) 0%, rgba(15, 31, 60, 0.8) 50%, rgba(15, 31, 60, 0.4) 100%);
     z-index: 1;
 }

 .hero-section .container {
     z-index: 2;
 }

 .hero-content {
     color: #ffffff;
 }

 .hero-content .subtitle {
     font-size: 16px;
     color: #e0e0e0;
     margin-bottom: 10px;
 }

 .hero-content .title {
     font-size: 48px;
     font-weight: 700;
     line-height: 1.4;
     margin-bottom: 20px;
 }

 .hero-content .highlight {
     color: var(--main2);
 }

 .hero-content .description {
     font-size: 17px;
     color: #dcdcdc;
     margin-bottom: 25px;
     max-width: 600px;
 }

 .apps-buttons {
     display: flex;
     gap: 20px;
 }

 .app-btn {
     display: flex;
     align-items: center;
     background: rgba(255, 255, 255, 0.1);
     border: 1px solid rgba(255, 255, 255, 0.2);
     border-radius: 8px;
     padding: 10px 20px;
     color: #ffffff !important;
     transition: all 0.3s ease;
     backdrop-filter: blur(5px);
 }

 .app-btn:hover {
     background: rgba(255, 255, 255, 0.2);
     color: #ffffff;
     transform: translateY(-3px);
 }

 .app-btn i {
     font-size: 28px;
     margin-inline-end: 15px;
 }

 .app-btn-text {
     display: flex;
     flex-direction: column;
 }

 .app-btn-text span {
     font-size: 10px;
     text-transform: uppercase;
     letter-spacing: 1px;
 }

 .app-btn-text strong {
     font-size: 16px;
     font-family: Arial, sans-serif;
 }

 .hero-stats {
     display: flex;
     /*justify-content: center;*/
     align-items: center;
     padding: 0 15px;
     max-width: 900px;
     margin: 0 auto;
     border-top: 1px solid rgba(255, 255, 255, 0.1);
     padding-top: 24px;
     z-index: 2;
 }

 .stat-box {
     text-align: center;
     color: #ffffff;
     flex: 1;
 }

 .stat-val {
     font-size: 24px;
     font-weight: bold;
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 8px;
     margin-bottom: 5px;
 }

 .stat-val .highlight {
     color: #f0b429;
     border: none;
     padding: 0;
 }

 .stat-label {
     font-size: 14px;
     color: #e0e0e0;
 }

 .stat-divider {
     width: 1px;
     height: 40px;
     background: rgba(255, 255, 255, 0.1);
 }

 @media (max-width: 991px) {
     .hero-content .title {
         font-size: 36px;
     }

     .hero-stats {
         flex-wrap: wrap;
         border-top: none;
         padding: 0;
     }

     .stat-box {
         flex: 0 0 50%;
         margin-bottom: 20px;
     }

     .stat-divider {
         display: none;
     }
 }

 @media (max-width: 767px) {
     .apps-buttons {
         gap: 10px;
     }
 }

 .service-card {
     background-color: #ffffff;
     border-radius: 20px;
     padding: 30px;
     height: 100%;
     position: relative;
     box-shadow: 5px 5px 30px 0 rgba(0, 0, 0, 0.05);
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 .service-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
 }

 .service-title {
     color: var(--main);
     font-weight: 700;
     font-size: 22px;
     margin-bottom: 15px;
 }

 .service-desc {
     color: #6c757d;
     font-size: 14px;
     line-height: 1.8;
     margin-bottom: 20px;
 }

 .service-list {
     list-style: none;
     padding: 0;
     margin-bottom: 60px;
     /* space for icon */
 }

 .service-list li {
     font-size: 14px;
     color: #495057;
     margin-bottom: 10px;
     display: flex;
     align-items: center;
     gap: 8px;
 }

 .service-list li i {
     color: #4a6fa5;
     /* RTL margin */
     font-size: 12px;
 }

 .service-icon {
     position: absolute;
     bottom: 30px;
     left: 30px;
     width: 60px;
     height: 60px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 24px;
 }

 .stats-banner {
     background-color: #3b4d6b;
     border-radius: 15px;
     padding: 30px 20px;
     color: #ffffff;
 }

 .banner-stat-item {
     position: relative;
 }

 @media (min-width: 768px) {
     .banner-stat-item:not(:first-child)::after {
         content: "";
         position: absolute;
         right: 0;
         top: 10%;
         height: 80%;
         width: 1px;
         background-color: rgba(255, 255, 255, 0.1);
     }
 }

 .banner-stat-item .val {
     color: #f0b429;
     font-size: 28px;
     font-weight: 700;
 }

 .banner-stat-item .icon {
     color: #f0b429;
     font-size: 20px;
     margin-right: 8px;
     /* RTL spacing */
 }

 .banner-stat-item .label {
     font-size: 14px;
     color: #e0e0e0;
 }

 /* Features Section Styles */
 #Academy_system {
     background-color: #f8f9fa;
 }

 .feature-card {
     border-radius: 20px;
     box-shadow: 0 5px 20px rgba(0, 0, 0, 0.03);
     transition: transform 0.3s ease, box-shadow 0.3s ease;
     border: 1px solid rgba(0, 0, 0, 0.02);
 }

 .feature-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
 }

 .feature-icon {
     width: 70px;
     height: 70px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 28px;
 }

 .feature-title {
     color: var(--main);
     font-size: 18px;
     font-weight: bold;
 }

 .feature-desc {
     font-size: 14px;
     line-height: 1.6;
 }

 /* CTA Section Styles */
 .cta-section {
     position: relative;
     padding: 80px 0;
     background-color: var(--main);
     background-position: 5% center;
     background-size: contain;
     background-repeat: no-repeat;
     overflow: hidden;
 }

 .cta-overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: linear-gradient(to left, rgba(15, 31, 60, 1) 40%, rgba(15, 31, 60, 0.8) 70%, rgba(15, 31, 60, 0.1) 100%);
     z-index: 1;
 }

 .cta-content {
     position: relative;
     z-index: 2;
     color: #ffffff;
 }

 @media (max-width: 991px) {
     .cta-section {
         background-position: center;
     }

     .cta-overlay {
         background: linear-gradient(to top, rgba(15, 31, 60, 1) 50%, rgba(15, 31, 60, 0.8) 80%, rgba(15, 31, 60, 0.4) 100%);
     }
 }

 /* Registration Steps Styles */
 .steps-list {
     position: relative;
 }

 .step-item {
     position: relative;
     padding-inline-start: 60px;
     /* Space for the number in RTL */
 }

 .step-item:not(:last-child)::before {
     content: '';
     position: absolute;
     top: 40px;
     right: 19px;
     /* centered under the 40px circle */
     width: 2px;
     height: calc(100% - 20px);
     background-color: #e5e7eb;
     z-index: 1;
 }

 .step-number {
     position: absolute;
     right: 0;
     top: 0;
     width: 40px;
     height: 40px;
     border-radius: 50%;
     background-color: var(--main);
     color: white;
     display: flex;
     align-items: center;
     justify-content: center;
     font-weight: bold;
     font-size: 18px;
     z-index: 2;
 }

 .app-btn.dark-btn {
     background-color: var(--main);
     border-color: var(--main);
     color: #fff !important;
 }

 .app-btn.dark-btn:hover {
     background-color: #0d1a33;
 }

 .app-mockup-container img {
     filter: drop-shadow(0 20px 30px rgba(0, 0, 0, 0.15));
 }

 /* Floating Boxes for App Mockup */
 .app-mockup-container {
     z-index: 1;
 }

 .floating-box {
     position: absolute;
     display: flex;
     align-items: center;
     background: #ffffff;
     padding: 12px 15px;
     border-radius: 12px;
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
     z-index: 5;
     gap: 12px;
 }

 .box-top-left {
     top: 15%;
     left: -15%;
 }

 .box-bottom-right {
     bottom: 15%;
     right: -25%;
     background: #f0b429;
 }

 .floating-box .box-text {
     text-align: right;
 }

 .floating-box .box-text h6 {
     font-size: 13px;
     font-weight: 700;
     color: var(--main);
 }

 .floating-box .box-text span {
     font-size: 11px;
     color: #888;
 }

 .box-bottom-right .box-text h6,
 .box-bottom-right .box-text span {
     color: #1a202c !important;
 }

 .floating-box .box-icon {
     width: 35px;
     height: 35px;
     display: flex;
     align-items: center;
     justify-content: center;
     border-radius: 8px;
     font-size: 16px;
 }

 .box-top-left .box-icon {
     background-color: #eaf0fa;
 }

 .box-bottom-right .box-icon {
     font-size: 20px;
     color: #1a202c;
 }

 @media (max-width: 991px) {
     .box-top-left {
         left: 0;
     }

     .box-bottom-right {
         right: 0;
     }
 }

 /* App Pages Carousel Styles */

 .mockup-frame {
     background: #ffffff;
     border-radius: 20px;
     padding: 8px;
     display: inline-block;
     position: relative;
     max-width: 220px;
 }

 .mockup-frame img {
     border-radius: 16px;
     width: 100%;
     height: auto;
 }

 .page-label {
     color: #ffffff;
     font-size: 14px;
     font-weight: bold;
     padding: 8px 18px;
     border-radius: 5px;
     display: inline-block;
 }

 .page-desc {
     font-size: 13px;
     line-height: 1.5;
     max-width: 200px;
     margin: 0 auto;
 }

 /* Testimonial Card Styles */


 /*----------------------*/


 .testimonial-card {
     border-radius: 20px;
     border: 1px solid #F1F5F9;
     background: #F8FAFF;
     box-shadow: 0 2px 16px 0 rgba(15, 31, 60, 0.06);
     margin: 15px 5px;
     padding: 20px;
     transition: transform 0.3s ease;
 }

 .testimonial-card:hover {
     transform: translateY(-5px);
 }

 .testimonial-text {
     font-size: 14px;
     color: #4a5568;
     line-height: 1.8;
     margin-bottom: 20px;
 }

 .testimonial-stars {
     margin-bottom: 15px;
 }

 .testimonial-stars i {
     font-size: 13px;
     color: #f59e0b;
     margin-left: 2px;
 }

 .testimonial-divider {
     border-top: 1px solid #edf2f7;
     margin: 20px 0 15px 0;
 }

 .user-avatar {
     width: 50px !important;
     height: 50px !important;
     object-fit: cover;
 }

 .user-name {
     color: var(--main);
     font-size: 15px;
 }

 .user-role {
     font-size: 12px;
 }

 /* Contact Us Styles */

 #contact_us .badge-primary {
     background: rgba(15, 31, 60, 0.05) !important;
     color: var(--main) !important;
     font-size: 14px !important;
     border-radius: 20px;
     border: none;
 }


 .contact-info-card {
     border-radius: 15px;
     border: 1px solid #E5E7EB;
     background: #F8FAFF;
     padding: 20px 25px;
     transition: all 0.3s ease;
 }

 .contact-info-card:hover {
     transform: translateY(-3px);
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
 }

 .contact-info-card .info-content span.text-muted {
     font-size: 12px;
     display: block;
     margin-bottom: 2px;
 }

 .contact-info-card .info-content h6 {
     color: var(--main);
     font-size: 17px;
 }

 .contact-info-card .info-icon {
     width: 45px;
     height: 45px;
     border-radius: 12px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 18px;
 }

 .contact-info-card .info-icon.icon-phone {
     background: rgba(15, 31, 60, 0.05);
     color: var(--main);
 }

 .contact-info-card .info-icon.icon-email {
     background: rgba(240, 180, 41, 0.1);
     color: #f0b429;
 }

 .contact-info-card .info-icon.icon-address {
     background: rgba(239, 68, 68, 0.08);
     color: #ef4444;
 }

 .contact-info-card .info-icon.icon-hours {
     background: rgba(16, 185, 129, 0.08);
     color: #10b981;
 }

 .social-contact-card {
     background: var(--main);
     border-radius: 16px;
     padding: 25px;
     margin-top: auto;
 }

 .social-contact-card h6 {
     font-size: 15px;
     color: #ffffff;
 }

 .social-icon-btn {
     background: rgba(255, 255, 255, 0.08);
     border-radius: 10px;
     width: 42px;
     height: 42px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     transition: all 0.3s ease;
     text-decoration: none;
 }

 .social-icon-btn:hover {
     opacity: 0.9;
     transform: translateY(-3px);
 }

 .social-icon-btn img {
     width: 22px;
     height: 22px;
     object-fit: contain;
 }

 .contact-form-container {
     border: 1px solid #E5E7EB;
     background: #F8FAFF;
     border-radius: 20px;
     padding: 40px;
 }

 .contact-form-container h4 {
     color: var(--main);
     font-size: 24px;
 }

 .contact-form-container p.text-muted {
     font-size: 14px;
 }

 .contact-form-container label.form-label {
     font-size: 13px;
     color: var(--main);
 }

 .contact-input {
     text-align: right;
     border: 1px solid #E5E7EB;
     background: #EBF0FF;
     border-radius: 8px;
     padding: 12px 16px;
     font-size: 14px;
     color: var(--main);
     transition: all 0.3s ease;
     height: auto;
 }

 .contact-input:focus {
     background-color: #ffffff;
     border-color: var(--main);
     box-shadow: 0 0 0 3px rgba(15, 31, 60, 0.1);
     outline: none;
 }

 .custom-select {
     appearance: none;
     background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
     background-repeat: no-repeat;
     background-position: left 0.75rem center;
     background-size: 16px 12px;
     padding-top: 6px;
     padding-bottom: 6px;
 }

 .btn-submit-contact {
     background-color: var(--main);
     border-radius: 12px;
     border: none;
     transition: all 0.3s ease;
     font-size: 16px;
 }

 .btn-submit-contact:hover {
     background-color: #0d1a33;
     transform: translateY(-2px);
     box-shadow: 0 5px 15px rgba(15, 31, 60, 0.2);
 }





 .icon_whatsapp {
     position: fixed;
     z-index: 9;
     bottom: 40px;
     right: 30px;
     background: #25D366;
     color: #FFF !important;
     display: flex;
     justify-content: center;
     align-items: center;
     width: 55px;
     height: 55px;
     font-size: 30px;
     border-radius: 50%;
 }

 .icon_whatsapp:after,
 .icon_whatsapp:before {
     content: "";
     position: absolute;
     display: block;
     width: 100%;
     height: 100%;
     top: 0;
     left: 0;
     border-radius: 50%;
     border: 1px solid #25D366;
     animation: swap 1s linear 0s infinite;
 }

 .icon_whatsapp:before {
     animation: swap 2s linear 0s infinite;
 }


 @keyframes swap {

     100% {
         transform: scale(1.8);
         opacity: 0
     }

 }




 .profix-footer {
     background: linear-gradient(90deg, #0A1628 0%, #2F67BC 100%);
     color: #fff;
     position: relative;
     overflow: hidden;
 }

 .footer-logo {
     width: 80px;
 }

 .footer-desc {
     font-size: 13px;
     line-height: 2;
     color: #cbd5e1;
     max-width: 90%;
 }


 .footer-title {
     font-size: 16px;
     font-weight: 600;
     color: #fff;
     display: flex;
     /* align-items: center; */
     flex-direction: column;
     gap: 8px;
 }

 .footer-title::after {
     content: '';
     flex-grow: 1;
     height: 1px;
     background-color: rgba(255, 255, 255, 0.08);
     max-width: 150px;
 }

 .footer-links {
     padding: 0;
     list-style: none;
     margin: 0;
 }

 .footer-links li {
     margin-bottom: 12px;
 }

 .footer-links a {
     color: #94a3b8;
     font-size: 14px;
     display: inline-flex;
     align-items: center;
     transition: all 0.3s ease;
 }

 .footer-links a i {
     font-size: 9px;
     color: #64748b;
     transition: transform 0.3s ease;
 }

 .footer-links a:hover {
     color: #fff;
     padding-right: 5px;
 }

 .footer-links a:hover i {
     color: #fff;
     transform: translateX(-3px);
 }

 .footer-bottom {
     border-top: 1px solid rgba(255, 255, 255, 0.05);
 }

 .copyright {
     font-size: 13px;
     color: #64748b;
 }

 .footer-bottom-links a {
     color: #64748b;
     font-size: 13px;
     transition: color 0.3s ease;
 }

 .footer-bottom-links a:hover {
     color: #fff;
 }


 .back-to-top {
     position: fixed;
     width: 40px;
     height: 40px;
     border-radius: 50px;
     left: 20px;
     bottom: 50px;
     background: var(--main);
     color: #fff !important;
     text-align: center;
     line-height: 40px;
     transition: all 0.5s ease-in-out 0s;
     z-index: 99999;
     transform: scale(0);
     border: 1px solid #fff;
 }

 .back-to-top.active {
     transform: scale(1);
 }




 /*Extra small devices (portrait phones, less than 576px)*/
 @media (max-width: 575.98px) {

     .sec-marg {
         margin-top: 20px;
         margin-bottom: 20px
     }

 }

 /*Small devices (landscape phones, less than 768px)*/
 @media (max-width: 767.98px) {}

 /*Medium devices (tablets, less than 992px)*/

 @media (max-width: 991.98px) {
     .close-open-nav {
         display: block;
     }

     .nav_bar {
         display: block !important;
         position: fixed;
         right: 0;
         top: 0;
         width: 300px;
         height: 100%;
         background: #343a40;
         z-index: 120;
         color: #FFFFFF;
         transform: translateX(100%);
         overflow: auto;
         padding: 20px !important;
     }

     .nav_bar.active {
         transform: translateX(0px)
     }

     .nav_bar li {
         margin-bottom: 20px !important;
         transition: all 0.2s linear 0s
     }

     .nav_bar li:hover {
         padding-inline-start: 5px
     }

 }

 /*Large devices (desktops, less than 1200px)*/
 @media (max-width: 1199.98px) {}

 /*============================ start loader================================== */

 .loader {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     z-index: 9999999999;
     background: #FFFFFF;
     overflow: hidden;
     display: -webkit-flex;
     display: -moz-flex;
     display: -ms-flex;
     display: -o-flex;
     display: flex;
     -ms-align-items: center;
     align-items: center;
     justify-content: center;
 }

 .loader img {
     animation: logoeffect2 3s linear 0s infinite;
     position: relative;
     max-width: 180px
 }

 @keyframes logoeffect2 {
     100% {
         transform: scale(1.3);
         opacity: 0
     }
 }


 /*============================ end loader================================== */
 ::-webkit-scrollbar,
 body::-webkit-scrollbar,
 .scroll::-webkit-scrollbar {
     width: 6px;
     height: 6px;

 }

 ::-webkit-scrollbar-track,
 body::-webkit-scrollbar-track,
 .scroll::-webkit-scrollbar-track {
     box-shadow: inset 0 0 6px #FFFFFF;
     background: #FFFFFF
 }

 ::-webkit-scrollbar-thumb,
 body::-webkit-scrollbar-thumb,
 .scroll::-webkit-scrollbar-thumb {
     background: rgba(0, 0, 0, 0.3);
     border-radius: 20px;
 }

 ::-webkit-scrollbar-thumb:hover,
 body::-webkit-scrollbar-thumb:hover,
 .scroll::-webkit-scrollbar-thumb:hover {
     background: rgba(0, 0, 0, 0.5);
 }