/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
:root {
  --default-font: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --heading-font: "Montserrat", sans-serif;
  --nav-font: "Roboto", sans-serif;
}


.section-padding {
  padding: 60px 0;
}

body {

  overflow-x: hidden;
  
}

.transition-mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: 9999;
}

.transition-layer {
  position: absolute;
  width: 120%;
  height: 120%;
  background: #fff;
  /* ألوان مريحة */
  transform: scale(0);
  top: -10%;
  left: -10%;
  z-index: 1;
}

.transition-mask img {
  position: relative;
  z-index: 2;
  width: 500px;
  opacity: 0;
  transform: scale(0.6);
  transition: transform 0.5s ease, opacity 0.5s ease;
}

/* Global Colors - The following color variables are used throughout the website. Updating them here will change the color scheme of the entire website */
:root {
  --background-color: #ffffff;
  /* Background color for the entire website, including individual sections */
  --default-color: #444444;
  /* Default color used for the majority of the text content across the entire website */
  --heading-color: #012970;
  /* Color for headings, subheadings and title throughout the website */
  --accent-color: #384dff;
  /* Accent color that represents your brand on the website. It's used for buttons, links, and other elements that need to stand out */
  --surface-color: #ffffff;
  /* The surface color is used as a background of boxed elements within sections, such as cards, icon boxes, or other elements that require a visual separation from the global background. */
  --contrast-color: #ffffff;
  /* Contrast color for text, ensuring readability against backgrounds of accent, heading, or default colors. */
}

:root {

  --nav-color: #012970;
  /* The default color of the main navmenu links */
  --nav-hover-color: #012970;
  /* Applied to main navmenu links when they are hovered over or active */
  --nav-mobile-background-color: #ffffff;
  /* Used as the background color for mobile navigation menu */
  --nav-dropdown-background-color: #ffffff;
  /* Used as the background color for dropdown items that appear when hovering over primary navigation items */
  --nav-dropdown-color: #212529;
  /* Used for navigation links of the dropdown items in the navigation menu. */
  --nav-dropdown-hover-color: #012970;

}


.light-background {
  --background-color: #f9f9f9;
  --surface-color: #ffffff;
}

.dark-background {
  --background-color: #060606;
  --default-color: #ffffff;
  --heading-color: #ffffff;
  --surface-color: #252525;
  --contrast-color: #ffffff;
}

/* Smooth scroll */
:root {
  scroll-behavior: smooth;
}

/*--------------------------------------------------------------
# General Styling & Shared Classes
--------------------------------------------------------------*/
* {
  box-sizing: border-box;
}

body {
  color: var(--default-color);
  background-color: var(--background-color);
  font-family: var(--default-font);

}

a {
  color: var(--accent-color);
  text-decoration: none;
  transition: 0.3s;
}

a:hover {
  color: color-mix(in srgb, var(--accent-color), transparent 25%);
  text-decoration: none;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--heading-color);
  font-family: var(--heading-font);
}

p {
  color: #5f5f5f;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.2px;
  font-family: 'Catamaran', sans-serif;
  margin-bottom: 15px;
}

.main-banner-content .banner-btn {
  margin-top: 25px;
}

.default-btn-one {
  position: relative;
  z-index: 1;
  overflow: hidden;
  color: #012970;
  font-size: 16px;
  font-weight: 600;
  padding-left: 35px;
  padding-right: 35px;
  padding-top: 13px;
  padding-bottom: 13px;
  border-radius: 5px;
  text-align: center;
  display: inline-block;
  background-color: #ffffff;
  box-shadow: 0 7px 25px rgb(123, 104, 238, 0.25);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border: none;
  margin-top: 5px;
  margin-right: 20px;
}

.default-btn-one span {
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
  display: block;
  border-radius: 30px;
  background-color: #012970;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
  transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
}

.default-btn-two {
  position: relative;
  z-index: 1;
  overflow: hidden;
  color: #ffffff;
  font-weight: 600;
  font-size: 16px;
  padding-left: 35px;
  padding-right: 35px;
  padding-top: 13px;
  padding-bottom: 13px;
  text-align: center;
  border-radius: 5px;
  display: inline-block;
  background-color: #012970;
  box-shadow: 0 7px 25px rgb(123, 104, 238, 0.25);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border: none;
  margin-top: 5px;
  margin-right: 20px;
}

.default-btn-two span {
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
  display: block;
  border-radius: 30px;
  background-color: #ffffff;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
  transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
}

.default-btn-two:hover,
.default-btn-two:focus {
  color: #012970;
}

.default-btn-two:hover span,
.default-btn-two:focus span {
  width: 200%;
  height: 500px;
}

.default-btn-one:hover,
.default-btn-one:focus {
  color: #ffffff;
}

.default-btn-one:hover span,
.default-btn-one:focus span {
  width: 200%;
  height: 500px;
}



.go-top.active {
  top: 98%;
  -webkit-transform: translateY(-98%);
  transform: translateY(-98%);
  opacity: 1;
  visibility: visible;
}

.go-top {
  color: #ffffff;
  position: fixed;
  z-index: 4;
  top: 0;
  right: 15px;
  width: 45px;
  height: 45px;
  opacity: 0;
  visibility: hidden;
  text-align: center;
  line-height: 45px;
  border-radius: 5px;
  background-color: #012970;
  -webkit-transition: .9s;
  transition: .9s;
  cursor: pointer;
}

img {
  max-width: 100%;
  height: auto;
  margin-bottom: 15px;
}

@media (max-width: 776px) { 
    .default-btn-one  {
        margin-right: 0;
    }
}

/* PHP Email Form Messages
------------------------------*/
.php-email-form .error-message {
  display: none;
  background: #df1529;
  color: #ffffff;
  text-align: left;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.php-email-form .sent-message {
  display: none;
  color: #ffffff;
  background: #059652;
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.php-email-form .loading {
  display: none;
  background: var(--surface-color);
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
}

.php-email-form .loading:before {
  content: "";
  display: inline-block;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  margin: 0 10px -6px 0;
  border: 3px solid var(--accent-color);
  border-top-color: var(--surface-color);
  animation: php-email-form-loading 1s linear infinite;
}

@keyframes php-email-form-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* ========================================
   MTB Modern Top Bar Styles
   ======================================== */

/* Main Top Bar Container */
.mtb-topbar {
  background: #012970;
  padding: 0 0;
  position: relative;
  z-index: 999;
  border-bottom: 2px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.mtb-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

/* Left Side - Contact Info */
.mtb-left {
  flex: 1;
}

.mtb-contact-items {
  display: flex;
  align-items: center;
  gap: 25px;
  flex-wrap: wrap;
}

.mtb-contact-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  padding: 6px 12px;
  border-radius: 25px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}

.mtb-contact-item::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.1);
  transition: left 0.3s ease;
  z-index: 0;
}

.mtb-contact-item:hover::before {
  left: 0;
}

.mtb-contact-item:hover {
  color: #ffffff;
 
  background: rgba(255, 255, 255, 0.15);
}

.mtb-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 50%;
  flex-shrink: 0;
  transition: all 0.3s ease;
  z-index: 1;
  position: relative;
}

.mtb-contact-item:hover .mtb-icon {
  background: rgba(255, 255, 255, 0.25);
  transform: rotate(360deg);
}

.mtb-icon i {
  font-size: 14px;
  color: #012970;
}

.mtb-text {
  position: relative;
  z-index: 1;
}

/* Email Specific */
.mtb-email .mtb-icon {
  background: #ddd;
}

/* Phone Specific */
.mtb-phone .mtb-icon {
  background: #fff;
}

/* Right Side - Social Media */
.mtb-right {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}

.mtb-social-wrapper {
  display: flex;
  align-items: center;
  gap: 15px;
}

.mtb-social-label {
  color: rgba(255, 255, 255, 0.9);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.5px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.mtb-social-label::after {
  content: '';
  width: 30px;
  height: 2px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.5), transparent);
  border-radius: 2px;
}

.mtb-social-links {
  display: flex;
  align-items: center;
  gap: 10px;
}

.mtb-social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
  border-radius: 50%;
  text-decoration: none;
  font-size: 16px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  border: 2px solid transparent;
}

.mtb-social-link::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background: #ffffff;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.4s ease;
}

.mtb-social-link:hover::before {
  width: 100%;
  height: 100%;
}

.mtb-social-link i {
  position: relative;
  z-index: 1;
  transition: all 0.3s ease;
}

.mtb-social-link:hover {
  
  border-color: rgba(255, 255, 255, 0.3);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}



/* Social Link Colors on Hover */
.mtb-social-link:nth-child(1):hover {
  background: #1877f2; /* Facebook */
  border-color: #1877f2;
}

.mtb-social-link:nth-child(1):hover i {
  color: #ffffff;
}

.mtb-social-link:nth-child(2):hover {
  background: #1da1f2; /* Twitter */
  border-color: #1da1f2;
}

.mtb-social-link:nth-child(2):hover i {
  color: #ffffff;
}

.mtb-social-link:nth-child(3):hover {
  background: linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%); /* Instagram */
  border-color: #e1306c;
}

.mtb-social-link:nth-child(3):hover i {
  color: #ffffff;
}

.mtb-social-link:nth-child(4):hover {
  background: #0077b5; /* LinkedIn */
  border-color: #0077b5;
}

.mtb-social-link:nth-child(4):hover i {
  color: #ffffff;
}

.mtb-social-link:nth-child(5):hover {
  background: #ff0000; /* YouTube */
  border-color: #ff0000;
}

.mtb-social-link:nth-child(5):hover i {
  color: #ffffff;
}

.mtb-social-link:nth-child(6):hover {
  background: #25d366; /* WhatsApp */
  border-color: #25d366;
}

.mtb-social-link:nth-child(6):hover i {
  color: #ffffff;
}

/* Tooltip Effect */
.mtb-social-link::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: -35px;
  left: 50%;
  transform: translateX(-50%) scale(0);
  background: rgba(0, 0, 0, 0.9);
  color: #ffffff;
  padding: 5px 12px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0;
  transition: all 0.3s ease;
  pointer-events: none;
  z-index: 10;
}

.mtb-social-link:hover::after {
  transform: translateX(-50%) scale(1);
  opacity: 1;
  bottom: -40px;
}

/* Animation */
@keyframes mtbSlideDown {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.mtb-topbar {
  animation: mtbSlideDown 0.5s ease forwards;
}

/* Responsive Styles */
@media (max-width: 1199px) {
  .mtb-contact-items {
    gap: 15px;
  }
  
  .mtb-social-wrapper {
    gap: 12px;
  }
  
  .mtb-social-link {
    width: 34px;
    height: 34px;
    font-size: 15px;
  }
}

@media (max-width: 991px) {
  .mtb-wrapper {
    flex-direction: column;
    gap: 0;
    padding: 0 0;
  }
  
  .mtb-left,
  .mtb-right {
    width: 100%;
    justify-content: center;
  }
  
  .mtb-contact-items {
    justify-content: center;
  }
  
  .mtb-social-wrapper {
    justify-content: center;
  }
  
  .mtb-social-label {
    display: none;
  }
}

@media (max-width: 767px) {
  .mtb-topbar {
    padding: 10px 0;
  }
  
  .mtb-contact-items {
    flex-direction: column;
    gap: 0;
  }
  
  .mtb-contact-item {
    width: 100%;
    justify-content: center;
    padding: 0 0 10px;
  }
  
  .mtb-text {
    font-size: 13px;
  }
  
  .mtb-social-links {
    gap: 8px;
  }
  
  .mtb-social-link {
    width: 32px;
    height: 32px;
    font-size: 14px;
  }
}

@media (max-width: 576px) {
  .mtb-contact-item {
    font-size: 13px;
  }
  
  .mtb-icon {
    width: 28px;
    height: 28px;
  }
  
  .mtb-icon i {
    font-size: 12px;
  }
  
  .mtb-social-link::after {
    display: none;
  }
}

/* Dark Mode Support (Optional) */
@media (prefers-color-scheme: dark) {
  .mtb-topbar {
   
  }
}

/* Print Styles */
@media print {
  .mtb-topbar {
    display: none;
  }
}
.mtb-social-link:hover i {
  color: #012970 !important;
  transform: scale(1.1);
}

/*--------------------------------------------------------------
# Global Header
--------------------------------------------------------------*/
.header {
  color: var(--default-color);
  padding: 10px 0;
  transition: all 0.5s;
  z-index: 997;
  background: rgba(255, 255, 255, .8);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 4px 20px rgba(0, 0, 0, .1);
  transition: .3s ease-in-out;
  border-radius: 0 0 12px 12px;
}

.header .logo {
  line-height: 1;
}

.header .logo img {
  max-height: 60px;
  margin-right: 8px;
  margin-bottom: 0;
}

.header .logo h1 {
  font-size: 30px;
  margin: 0;
  font-weight: 700;
  color: var(--heading-color);
}

.header .btn-getstarted,
.header .btn-getstarted:focus {
  color: var(--contrast-color);
  background: #012970;
  font-size: 15px;
  padding: 8px 25px;
  margin: 0 0 0 30px;
  border-radius: 4px;
  transition: 0.3s;
  font-weight: 500;
}

.header .btn-getstarted:hover,
.header .btn-getstarted:focus:hover {
  color: var(--contrast-color);
  background: color-mix(in srgb, #011f4d, transparent 15%);
}

@media (max-width: 1200px) {
  .header .logo {
    order: 1;
  }

  .header .btn-getstarted {
    order: 2;
    margin: 0 15px 0 0;
    padding: 6px 15px;
    text-align: center;
  }

  .header .navmenu {
    order: 3;
  }
}

.scrolled .header {
  box-shadow: 0px 0 18px rgba(0, 0, 0, 0.1);
}


#header {
  position: relative;
  width: 100%;
  transition: all 0.4s ease; 
  z-index: 9999;
}

/* الحالة بعد السكرول */
#header.header-scrolled {
  position: fixed;
  top: -70px; 
  left: 0;
  width: 100%;
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
  border-bottom: 4px solid #012970;
  animation: slideDown 0.3s forwards;
}


@keyframes slideDown {
  from { top: -70px; }
  to { top: 0; }
}

/* Index Page Header
------------------------------*/
.index-page .header {
  background-color: #ffffff;
}

/* Index Page Header on Scroll
------------------------------*/
.index-page.scrolled .header {
  --background-color: #ffffff;
}

/* Topbar initial */
#topbar {
  position: relative;
  z-index: 1000;
  transition: all 0.3s ease;
}





/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/
/* Navmenu - Desktop */
@media (min-width: 1200px) {
  .navmenu {
    padding: 0;
  }

  .navmenu ul {
    margin: 0;
    padding: 0;
    display: flex;
    list-style: none;
    align-items: center;
  }

  .navmenu li {
    position: relative;
  }

  .navmenu a,
  .navmenu a:focus {
    color: var(--nav-color);
    padding: 18px 12px;
    font-size: 15px;
    font-family: var(--nav-font);
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    white-space: nowrap;
    transition: 0.3s;
    position: relative;
  }

  .navmenu a i,
  .navmenu a:focus i {
    font-size: 12px;
    line-height: 0;
    margin-left: 5px;
    transition: 0.3s;
  }

  .navmenu li:last-child a {
    padding-right: 0;
  }

  .navmenu li:hover>a,
  .navmenu .active,
  .navmenu .active:focus {
    color: var(--nav-hover-color);
  }

  .navmenu .dropdown ul {
    margin: 0;
    padding: 10px 0;
    background: var(--nav-dropdown-background-color);
    display: block;
    position: absolute;
    visibility: hidden;
    left: 14px;
    top: 130%;
    opacity: 0;
    transition: 0.3s;
    border-radius: 4px;
    z-index: 99;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
    width: 300px;
  }

  .navmenu .dropdown ul li {
    min-width: 200px;
  }

  .navmenu .dropdown ul a {
    padding: 10px 20px;
    font-size: 15px;
    text-transform: none;
    color: var(--nav-dropdown-color);
  }

  .navmenu .dropdown ul a i {
    font-size: 12px;
  }

  .navmenu .dropdown ul a:hover,
  .navmenu .dropdown ul .active:hover,
  .navmenu .dropdown ul li:hover>a {
    color: var(--nav-dropdown-hover-color);
  }
.navmenu .dropdown ul li {
    border-bottom:1px solid #0d6efd;
}
.navmenu .dropdown ul li:last-child{
    border-bottom: 0px solid #0d6efd; 
}
  .navmenu .dropdown:hover>ul {
    opacity: 1;
    top: 100%;
    visibility: visible;
  }

  .navmenu .dropdown .dropdown ul {
    top: 0;
    left: -90%;
    visibility: hidden;
  }

  .navmenu .dropdown .dropdown:hover>ul {
        opacity: 1;
        top: 0;
        left: -101%;
        visibility: visible;
        width: 300px;
        overflow: hidden;
  }
}

/* Navmenu - Mobile */
@media (max-width: 1199px) {
  .mobile-nav-toggle {
    color: var(--nav-color);
    font-size: 28px;
    line-height: 0;
    margin-right: 10px;
    cursor: pointer;
    transition: color 0.3s;
  }

  .navmenu {
    padding: 0;
    z-index: 9997;
  }

  .navmenu ul {
    display: none;
    list-style: none;
    position: absolute;
    inset: 60px 20px 20px 20px;
    padding: 10px 0;
    margin: 0;
    border-radius: 6px;
    background-color: var(--nav-mobile-background-color);
    overflow-y: auto;
    transition: 0.3s;
    z-index: 9998;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
  }

  .navmenu a,
  .navmenu a:focus {
    color: var(--nav-dropdown-color);
    padding: 10px 20px;
    font-family: var(--nav-font);
    font-size: 17px;
    font-weight: 500;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    white-space: nowrap;
    transition: 0.3s;
  }

  .navmenu a i,
  .navmenu a:focus i {
    font-size: 12px;
    line-height: 0;
    margin-left: 5px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: 0.3s;
    background-color: color-mix(in srgb, var(--accent-color), transparent 90%);
  }

  .navmenu a:hover,
  .navmenu .active,
  .navmenu .active:focus {
    color: var(--nav-dropdown-hover-color);
  }

  .navmenu .active i,
  .navmenu .active:focus i {
    background-color: var(--accent-color);
    color: var(--contrast-color);
  }
  .navmenu a i:hover,
  .navmenu a:focus i:hover {
    background-color: var(--accent-color);
    color: var(--contrast-color);
    transform: rotate(180deg);
  }
  .navmenu .dropdown ul {
    position: static;
    display: none;
    z-index: 99;
    padding: 10px 0;
    margin: 10px 20px;
    background-color: var(--nav-dropdown-background-color);
    border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
    box-shadow: none;
    transition: all 0.5s ease-in-out;
      }

  .navmenu .dropdown ul ul {
    background-color: rgba(33, 37, 41, 0.1);
  }

  .navmenu .dropdown>.dropdown-active {
    display: block;
    background-color: rgba(33, 37, 41, 0.03);
  }

  .mobile-nav-active {
    overflow: hidden;
  }

  .mobile-nav-active .mobile-nav-toggle {
    color: #fff;
    position: absolute;
    font-size: 32px;
    top: 15px;
    right: 15px;
    margin-right: 0;
    z-index: 9999;
  }

  .mobile-nav-active .navmenu {
    position: fixed;
    overflow: hidden;
    inset: 0;
    background: rgba(33, 37, 41, 0.8);
    transition: 0.3s;
    height: 100vh;
  }

  .mobile-nav-active .navmenu>ul {
    display: block;
  }
}

/* Listing Dropdown - Desktop */
@media (min-width: 1200px) {
  .navmenu .listing-dropdown {
    position: static;
  }

  .navmenu .listing-dropdown ul {
    margin: 0;
    padding: 10px;
    background: var(--nav-dropdown-background-color);
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
    position: absolute;
    top: 130%;
    left: 0;
    right: 0;
    visibility: hidden;
    opacity: 0;
    display: flex;
    transition: 0.3s;
    border-radius: 4px;
    z-index: 99;
  }

  .navmenu .listing-dropdown ul li {
    flex: 1;
  }

  .navmenu .listing-dropdown ul li a,
  .navmenu .listing-dropdown ul li:hover>a {
    padding: 10px 20px;
    font-size: 15px;
    color: var(--nav-dropdown-color);
    background-color: var(--nav-dropdown-background-color);
  }

  .navmenu .listing-dropdown ul li a:hover,
  .navmenu .listing-dropdown ul li .active,
  .navmenu .listing-dropdown ul li .active:hover {
    color: var(--nav-dropdown-hover-color);
    background-color: var(--nav-dropdown-background-color);
  }

  .navmenu .listing-dropdown:hover>ul {
    opacity: 1;
    top: 100%;
    visibility: visible;
  }
}

/* Listing Dropdown - Mobile */
@media (max-width: 1199px) {
  .navmenu .listing-dropdown ul {
    position: static;
    display: none;
    z-index: 99;
    padding: 10px 0;
    margin: 10px 20px;
    background-color: var(--nav-dropdown-background-color);
    border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
    box-shadow: none;
    transition: all 0.5s ease-in-out;
  }

  .navmenu .listing-dropdown ul ul {
    background-color: rgba(33, 37, 41, 0.1);
  }

  .navmenu .listing-dropdown>.dropdown-active {
    display: block;
    background-color: rgba(33, 37, 41, 0.03);
  }
  }
  
  
  #topbar {
  position: relative;
  width: 100%;
  transition: transform 0.3s ease, opacity 0.3s ease;
  z-index: 1000;
}

#header {
  position: relative;
  width: 100%;
  transition: all 0.3s ease;
  z-index: 1001;
}

/* Header عند السكرول */
#header.header-scrolled {
  position: fixed;
  top: 0;
  left: 0;
  background: #fff;
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
}

/* ========================================
   Navigation Hover & Active Effects
   ======================================== */

/* Main Navigation Links - Underline Effect */
@media (min-width: 1200px) {
  .navmenu > ul > li > a {
    position: relative;
  }

  .navmenu > ul > li > a::after {
    content: '';
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 3px;
    background: linear-gradient(90deg, #012970, #0d47a1);
    border-radius: 2px;
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* Show underline on hover */
  .navmenu > ul > li:hover > a::after {
    width: 70%;
  }

  /* Show underline on active/current page */
  .navmenu > ul > li.current-menu-item > a::after,
  .navmenu > ul > li.current_page_item > a::after,
  .navmenu > ul > li.current-menu-ancestor > a::after,
  .navmenu > ul > li.current_page_ancestor > a::after {
    width: 70%;
  }

  /* Color change on hover and active */
  .navmenu > ul > li:hover > a,
  .navmenu > ul > li.current-menu-item > a,
  .navmenu > ul > li.current_page_item > a,
  .navmenu > ul > li.current-menu-ancestor > a,
  .navmenu > ul > li.current_page_ancestor > a {
    color: #012970;
  }
}

/* Dropdown Menu - Background Effect */
@media (min-width: 1200px) {
  /* Dropdown item hover background */
  .navmenu .dropdown ul li:hover {
    background: linear-gradient(90deg, rgba(1, 41, 112, 0.08) 0%, rgba(13, 71, 161, 0.05) 100%);
  }

  /* Dropdown link hover with slide effect */
  .navmenu .dropdown ul li a {
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
  }

  .navmenu .dropdown ul li a::before {
    content: '';
    position: absolute;
    left: -100%;
    top: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, #012970, #0d47a1);
    transition: left 0.3s ease;
  }

  .navmenu .dropdown ul li:hover a::before {
    left: 0;
  }

  .navmenu .dropdown ul li:hover a {
    padding-left: 30px;
    color: #012970;
  }

  /* Active dropdown item */
  .navmenu .dropdown ul li.current-menu-item,
  .navmenu .dropdown ul li.current_page_item {
    background: rgba(1, 41, 112, 0.08);
  }

  .navmenu .dropdown ul li.current-menu-item a::before,
  .navmenu .dropdown ul li.current_page_item a::before {
    left: 0;
  }

  .navmenu .dropdown ul li.current-menu-item a,
  .navmenu .dropdown ul li.current_page_item a {
    padding-left: 30px;
    color: #012970;
    font-weight: 600;
  }
}

/* Mobile Navigation Effects */
@media (max-width: 1199px) {
  /* Mobile menu item hover/active background */
  .navmenu a:hover,
  .navmenu .current-menu-item > a,
  .navmenu .current_page_item > a {
    background: linear-gradient(90deg, rgba(1, 41, 112, 0.08) 0%, transparent 100%);
    color: #012970;
    padding-left: 25px;
  }

  /* Left border indicator for mobile */
  .navmenu a {
    position: relative;
    transition: all 0.3s ease;
  }

  .navmenu a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 60%;
    background: linear-gradient(180deg, #012970, #0d47a1);
    border-radius: 0 4px 4px 0;
    transition: width 0.3s ease;
  }

  .navmenu a:hover::before,
  .navmenu .current-menu-item > a::before,
  .navmenu .current_page_item > a::before {
    width: 4px;
  }

  /* Dropdown items in mobile */
  .navmenu .dropdown ul li:hover,
  .navmenu .dropdown ul li.current-menu-item,
  .navmenu .dropdown ul li.current_page_item {
    background: rgba(1, 41, 112, 0.05);
  }
}

/*--------------------------------------------------------------
# Global Footer
--------------------------------------------------------------*/
.footer {
  color: var(--default-color);
  background-color: var(--background-color);
  font-size: 14px;
  padding-bottom: 50px;
  position: relative;
}

.footer .footer-newsletter {
  background-color: color-mix(in srgb, var(--accent-color), transparent 97%);
  border-top: 1px solid color-mix(in srgb, var(--accent-color), transparent 85%);
  border-bottom: 1px solid color-mix(in srgb, var(--accent-color), transparent 85%);
  padding: 50px 0;
}

.footer .footer-newsletter h4 {
  font-size: 24px;
}

.footer .footer-newsletter .newsletter-form {
  margin-top: 30px;
  margin-bottom: 15px;
  padding: 6px 8px;
  position: relative;
  background-color: color-mix(in srgb, var(--background-color), transparent 50%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
  box-shadow: 0px 2px 25px rgba(0, 0, 0, 0.1);
  display: flex;
  transition: 0.3s;
  border-radius: 4px;
}

.footer .footer-newsletter .newsletter-form:focus-within {
  border-color: var(--accent-color);
}

.footer .footer-newsletter .newsletter-form input[type=email] {
  border: 0;
  padding: 4px;
  width: 100%;
  background-color: color-mix(in srgb, var(--background-color), transparent 50%);
  color: var(--default-color);
}

.footer .footer-newsletter .newsletter-form input[type=email]:focus-visible {
  outline: none;
}

.footer .footer-newsletter .newsletter-form input[type=submit] {
  border: 0;
  font-size: 16px;
  padding: 0 20px;
  margin: -7px -8px -7px 0;
  background: var(--accent-color);
  color: var(--contrast-color);
  transition: 0.3s;
  border-radius: 0 4px 4px 0;
}

.footer .footer-newsletter .newsletter-form input[type=submit]:hover {
  background: color-mix(in srgb, var(--accent-color), transparent 20%);
}

.footer .footer-top {
  padding-top: 50px;
}

.footer .footer-top .logo {
  width: 200px;
}

.footer .social-links a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 4px;
  background-color: color-mix(in srgb, var(--accent-color), transparent 97%);
  border: 1px solid color-mix(in srgb, var(--accent-color), transparent 85%);
  font-size: 16px;
  color: var(--accent-color);
  margin-right: 10px;
  transition: 0.3s;
}

.footer .social-links a:hover {
  color: var(--contrast-color);
  background-color: var(--accent-color);
}

.footer h4 {
  font-size: 16px;
  font-weight: bold;
  position: relative;
  padding-bottom: 12px;
}

.footer .footer-links {
  margin-bottom: 30px;
}

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

.footer .footer-links ul i {
  margin-right: 3px;
  font-size: 14px;
  line-height: 0;
  color: var(--accent-color);
}

.footer .footer-links ul li {
  padding: 10px 0;
  display: flex;
  align-items: center;
}

.footer .footer-links ul li:first-child {
  padding-top: 0;
}

.footer .footer-links ul a {
  display: inline-block;
  color: #000;
  font-size: 14px;
  line-height: 1;
}

.footer .footer-links ul a:hover {
  color: var(--accent-color);
}

.footer .footer-about a {
  color: var(--heading-color);
  font-size: 24px;
  font-weight: 600;
  font-family: var(--heading-font);
}

.footer .footer-contact {
  display: flex;
  flex-direction: column;
}

.footer .footer-contact a {
  margin-top: 0 !important;
}

.footer .footer-contact p,
.footer .footer-contact a {
  margin-bottom: 5px;
  color: #000;
  font-family: "Roboto", sans-serif;
  font-size: clamp(15px, 0.833vw, 62px);
  font-style: normal;
  font-weight: 400;
  line-height: 175%;
}
.footer .footer-contact a:hover {
  color: #012970;

}
.footer .copyright {
  padding-top: 25px;
    border-top: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
}

.footer .copyright p {
  margin-bottom: 0;
}

.footer .credits {
  margin-top: 6px;
  font-size: 13px;
}

/*--------------------------------------------------------------
# Scroll Top Button
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Disable aos animation delay on mobile devices
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  [data-aos-delay] {
    transition-delay: 0 !important;
  }
}

/*--------------------------------------------------------------
# Fresh & Joyful Page Title - Clean White Design 🌟
--------------------------------------------------------------*/
.page-title {
  background: url(../img/header.svg);
  overflow: hidden;
  position: relative;
}
.page-title:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
      background: url(../img/ttl-bg-shp.png);
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
  animation: floatUpDown 3s ease-in-out infinite;
  z-index: -1;
  opacity: 0.3;
}

@keyframes floatUpDown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
  }
}

.page-title .page-title-image {
position: absolute;
bottom: 0;

 z-index: -1;
  width: 100%;

}
.page-title .page-title-image img {
  width: 100%;
      opacity: 0.08;
}
/* ===== BRIGHT HERO SECTION ===== */
.page-title .heading {
  padding: 30px 0 15px 0;
  position: relative;

}



.page-title .heading .container {
  position: relative;
  z-index: 2;
}

/* ===== BEAUTIFUL TITLE ===== */
.page-title .heading h1 {
  font-size: 40px;
  font-weight: 800;
  color: #1e293b;
  letter-spacing: -1.5px;
  margin-bottom: 20px;
  line-height: 1.2;
  position: relative;
  animation: slideUp 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Colorful highlight */
.page-title .heading h1 span {
  background: linear-gradient(135deg, #012970 0%, #011f4d 50%, #006dba 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  position: relative;
  display: inline-block;
}

/* Simple decorative line */
/*.page-title .heading h1::after {*/
/*  content: "";*/
/*  position: absolute;*/
/*  bottom: -12px;*/
/*  left: 50%;*/
/*  transform: translateX(-50%);*/
/*  width: 100px;*/
/*  height: 4px;*/
/*  background: linear-gradient(90deg, #012970, #011f4d, #006dba);*/
/*  border-radius: 2px;*/
/*  animation: expandLine 0.8s ease-out 0.3s backwards;*/
/*}*/

@keyframes expandLine {
  from { width: 0; }
  to { width: 100px; }
}

/* SUBTITLE - Clean & Modern */
.page-title .heading p {
  color: #475569;
  font-size: clamp(16px, 2.2vw, 22px);
  font-weight: 400;
  line-height: 1.7;
  max-width: 700px;
  margin: 0 auto;
  animation: slideUp 0.8s ease-out 0.2s backwards;
}

/* ===== COLORFUL BADGE (H5) ===== */
.page-title h5 {
  font-size: clamp(15px, 1.8vw, 18px);
  font-weight: 700;
  color: #1e293b;
  margin-top: 35px;
  letter-spacing: 0.5px;
  
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
  display: inline-block;
  padding: 16px 40px;
  border-radius: 50px;
  
  border: 2px solid transparent;
  background-image: 
    linear-gradient(white, white),
    linear-gradient(135deg, #012970, #011f4d, #006dba);
  background-origin: border-box;
  background-clip: padding-box, border-box;
  
  box-shadow: 
    0 8px 30px rgba(59, 130, 246, 0.15),
    0 4px 10px rgba(0, 0, 0, 0.05);
  
  transition: all 0.4s ease;
  animation: slideUp 0.8s ease-out 0.4s backwards;
}

.page-title h5:hover {
  transform: translateY(-4px);
  box-shadow: 
    0 12px 40px rgba(59, 130, 246, 0.25),
    0 6px 15px rgba(0, 0, 0, 0.08);
}

.page-title h5 span {
  background: linear-gradient(135deg, #012970, #011f4d, #006dba);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 800;
}

/* ===== CLEAN BREADCRUMBS ===== */
.page-title nav {
  padding: 0 0;
  position: relative;
}

/* Subtle gradient accent */
/* .page-title nav::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #012970 0%, #011f4d 50%, #006dba 100%);
  opacity: 0.6;
} */

/* BREADCRUMB LIST - Modern & Clean */
.page-title nav ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0 0 0 0;
  margin-bottom: 42px;
  font-size: 15px;
  font-weight: 600;
  gap: 12px;
      justify-content: center;
}
@media (min-width: 991px) { 
    .page-title nav ol {
      margin-bottom: 0;
       padding: 0 0 74px 0;
}}

.page-title nav ol li {
  color: #64748b;
}

.page-title nav ol li a {
  color: #012970;
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 12px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  transition: all 0.3s ease;
  display: inline-block;
}

.page-title nav ol li a:hover {
  color: #012970;
  background: #eff6ff;
  border-color: #0095ce;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(59, 130, 246, 0.15);
}

/* Colorful dot separator */
.page-title nav ol li + li::before {
  content: "●";
  color: #012970;
  margin: 0 4px;
  font-size: 8px;
  opacity: 0.5;
}

/* CURRENT PAGE - Gradient Style */
.page-title nav ol li.current {
  color: #ffffff;
  font-weight: 700;
  padding: 10px 24px;
  border-radius: 12px;
  background: linear-gradient(135deg, #012970 0%, #011f4d 100%);
  box-shadow: 
    0 8px 25px rgba(1, 41, 112, 0.3),
    0 4px 10px rgba(1, 31, 77, 0.2);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
  .page-title .heading {
    padding: 80px 0 15px 0;
  }
  
  .page-title .heading h1 {
    font-size: 28px;
    margin-bottom: 16px;
  }
  
  .page-title .heading h1::after {
    width: 70px;
  }
  
  .page-title .heading p {
    font-size: 17px;
  }
  
  .page-title h5 {
    font-size: 15px;
    padding: 14px 32px;
    margin-top: 28px;
  }
  
  .page-title nav {
    padding: 0 0;
  }
  
  .page-title nav ol {
    font-size: 14px;
    gap: 10px;
  }
  
  .page-title nav ol li a,
  .page-title nav ol li.current {
    padding: 8px 16px;
  }
}

@media (max-width: 480px) {
  .page-title .heading {
    padding: 85px 20px 15px ;
  }
  
  .page-title .heading h1 {
    font-size: 22px;
  }
  
  .page-title h5 {
    font-size: 14px;
    padding: 12px 24px;
  }
  
  .page-title nav ol {
    gap: 8px;
    font-size: 13px;
  }
}

/*--------------------------------------------------------------
# Global Sections
--------------------------------------------------------------*/
section,
.section {
  color: var(--default-color);
  background-color: var(--background-color);
  padding: 60px 0;
  scroll-margin-top: 98px;
  overflow: clip;
}

@media (max-width: 1199px) {

  section,
  .section {
    scroll-margin-top: 56px;
  }
}

/*--------------------------------------------------------------
# Global Section Titles
--------------------------------------------------------------*/
.section-title {
  text-align: center;
  padding-bottom: 60px;
  position: relative;
}

.section-title h2 {
  font-size: 13px;
  letter-spacing: 1px;
  font-weight: 700;
  padding: 8px 20px;
  margin: 0;
  background: color-mix(in srgb, var(--accent-color), transparent 90%);
  color: var(--accent-color);
  display: inline-block;
  text-transform: uppercase;
  border-radius: 50px;
  font-family: var(--default-font);
}

.section-title p {
  color: var(--heading-color);
  margin: 10px 0 0 0;
  font-size: 32px;
  font-weight: 700;
  font-family: var(--heading-font);
}

.section-title p .description-title {
  color: var(--accent-color);
}




/*--------------------------------------------------------------
# Home page index-1
--------------------------------------------------------------*/

.home-section.index-1 {
  overflow: hidden;
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  min-height: 90vh;
  background: -webkit-gradient(linear, left top, left bottom, from(#370b6f), color-stop(#00429b), color-stop(#006dba), color-stop(#0095ce), to(#2dbcdc));
  background: linear-gradient(to bottom, #012970, #012970, rgb(5, 68, 114), #012970, #0095ce);
}

#particles-js {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  pointer-events: none;
}

.d-table-cell {
  vertical-align: middle;
}

.main-banner-content {
  padding-top: 50px;
}

.main-banner-content .social-icon-list {
  padding: 0;
  list-style: none;
  margin: 0;
  margin-bottom: 15px;
}

.main-banner-content .social-icon-list li {
  display: inline-block;
  margin: 5px 5px;
}

.main-banner-content .social-icon-list li a {
  color: #fff;
  font-size: 18px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border: 1px solid rgb(255, 255, 255, 0.2);
  background-color: transparent;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.main-banner-content .social-icon-list li a:hover {
  color: #012970;
  border: 1px solid #fff;
  background-color: #fff;
}

.main-banner-content h1 {
  color: #ffffff;
  font-size: 40px;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.main-banner-content p {
  color: #ffffff;
  font-size: 18px;
  margin: 0 0 0 0;
}

.home-section .banner-image {
  text-align: center;
  padding-top: 50px;
  animation: floatUpDown 3s ease-in-out infinite;
}

@keyframes floatUpDown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
  }
}


.home-section .creative-shape {
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: -15px;
  width: 100%;
  height: auto;
}

/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
.hero {
  width: 100%;
  min-height: 100vh;
  position: relative;
  padding: 80px 0 60px 0;
  display: flex;
  align-items: center;
  background: url(../img/hero-bg.png) top center no-repeat;
  background-size: cover;
}

.hero h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
}

.hero p {
  color: color-mix(in srgb, var(--default-color), transparent 30%);
  margin: 5px 0 30px 0;
  font-size: 20px;
  font-weight: 400;
}

.hero .btn-get-started {
  color: var(--contrast-color);
  background: var(--accent-color);
  font-family: var(--heading-font);
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 1px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 40px;
  border-radius: 4px;
  transition: 0.5s;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.hero .btn-get-started i {
  margin-left: 5px;
  font-size: 18px;
  transition: 0.3s;
}

.hero .btn-get-started:hover {
  color: var(--contrast-color);
  background: color-mix(in srgb, var(--accent-color), transparent 15%);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.hero .btn-get-started:hover i {
  transform: translateX(5px);
}

.hero .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  color: var(--default-color);
  font-weight: 600;
}

.hero .btn-watch-video i {
  color: var(--accent-color);
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

.hero .btn-watch-video:hover {
  color: var(--accent-color);
}

.hero .btn-watch-video:hover i {
  color: color-mix(in srgb, var(--accent-color), transparent 15%);
}

.hero .animated {
  animation: up-down 2s ease-in-out infinite alternate-reverse both;
}

@media (max-width: 640px) {
  .hero h1 {
    font-size: 28px;
    line-height: 36px;
  }

  .hero p {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }
}

@keyframes up-down {
  0% {
    transform: translateY(10px);
  }

  100% {
    transform: translateY(-10px);
  }
}

/*--------------------------------------------------------------
# About Section
--------------------------------------------------------------*/
.about-area {
  position: relative;
  overflow: hidden;
}

.about-left {
  position: relative;
}

.about-right {
  position: relative;
  display: block;
  padding-left: 30px;
}

.site-heading {
  margin-bottom: 50px;
  position: relative;
  font-family: 'Quicksand', sans-serif;
  z-index: 1;
}

.site-title-tagline {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 18px;
  font-weight: 700;
  color: #000;
  position: relative;
}

.site-title {
  font-weight: 700;
  text-transform: capitalize;
  font-size: 44px;
  color: #000;
  margin-bottom: 0;
}

.site-title span {
  color: #012970;
}

.about-list-wrapper {
  position: relative;
  display: block;
  margin-top: 20px;
  margin-bottom: 10px;
}

.about-list {
  position: relative;
  display: block;
}

.about-list li {
  position: relative;
  padding-left: 25px;
  margin-top: 10px;
  font-weight: bold;
  color: #1E1D1D;
  margin-right: 30px;
}

.about-list li::before {
  content: "\F231";
  position: absolute;
  left: 0;
  top: 0;
  font-family: "bootstrap-icons";
  color: #012970;
}

/*--------------------------------------------------------------
# Services Section
--------------------------------------------------------------*/
.service-area {
  position: relative;
  display: block;
  overflow: hidden;
}

.service-item {
  position: relative;
  padding: 20px;
  margin-bottom: 25px;
  border-radius: 8px;
  background: #fff;
  text-align: center;
  overflow: hidden;
  transition: all .5s ease-in-out;
  z-index: 1;
}
.service-item ul {
  position: relative;
  display: block;
  list-style: none;
  padding-left: 8px;
}
.service-item ul li {
  position: relative;
  padding-left: 25px;
  margin-top: 10px;
  font-weight: bold;
  color: #000;
  margin-right: 30px;
  font-size: 14px;
}

.service-item ul li::before {
  content: "\F231";
  position: absolute;
  left: 0;
  top: 0;
  font-family: "bootstrap-icons";
  color: #012970;
}

.service-icon {
  width: 80px;
  height: 80px;
  line-height: 90px;
  background: linear-gradient(to top left, #0e429d 0%, #012970 100%);
  border-radius: 50%;
  margin: 0 auto;
  position: relative;
  box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);
  transition: all .5s ease-in-out;
  margin-bottom: 20px;
}

.service-icon::before {
  content: "";
  position: absolute;
  left: -8px;
  top: -8px;
  right: -8px;
  bottom: -8px;
  border: 3px solid #012970;
  border-radius: 50%;
}

.service-icon i {
  color: #fff;
  font-size: 45px;
}

.service-content {
  position: relative;
}


.service-title a {
  font-size: 24px;
  margin-top: 25px;
  font-weight: 700;
  margin-bottom: 10px;
  color: #1e1d1d;
  line-height: 1.2;
}

.service-arrow {
  margin-top: 25px;
}

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

.service-item:hover {
  background: linear-gradient(to top left, #384dff 0%, #012970 100%);
}

.service-item:hover .service-icon {
  transform: rotateY(360deg);
}

.service-item:hover .service-icon::before {
  border-color: #fff;
}

.service-item:hover .service-icon i {
  color: #012970;
}

.service-item:hover .service-icon::before {
  border-color: #fff;
}

.service-item:hover .service-icon {
  background: #fff;
}

.service-item:hover p,
.service-item:hover .service-title a ,.service-item:hover ul li , .service-item:hover ul li::before{
  color: #fff;
}

.service-arrow a {
  font-weight: 600;
    color: #012970;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    transition: all 0.3s ease;

}
.service-arrow a i {
  margin-left: 8px;
  display: flex;
      display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    transition: all 0.3s ease;
}

.service-item:hover .service-arrow a {
  color: #fff;
}


.service-arrow a:hover i {
  margin-left: 12px;
}


/*--------------------------------------------------------------
# Packages Section
--------------------------------------------------------------*/
.packages-service {
  position: relative;
  padding: 20px 0;
  overflow: hidden;
}

.packages-service .site-title-tagline,
.packages-service .site-title span {
  color: #012970;
}

.packages-service .packages-bg {
  position: absolute;
  inset: 0;
  /* background: url("../img/p1.jpg") center/cover no-repeat; */
  z-index: 0;
  filter: blur(0) ;
  transform: scale(1.1);
}

/* ====== Glassmorphism Cards ====== */
.packages-service .glass-card {
  position: relative;
  z-index: 1;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 24px;
  padding: 32px;
  color: #fff;
  transition: all 0.4s ease;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}

.packages-service .glass-card:hover {
  transform: translateY(-8px) scale(1.02);
  background: rgba(255, 255, 255, 0.18);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4);
}

/* ====== Image Style & Hover Effect ====== */
.packages-service .glass-card img {
  border-radius: 16px;
  width: 100%;
  height: 220px;
  object-fit: contain;
  margin-bottom: 24px;
  transition: all 0.5s ease;
  transform: scale(1);
  filter: brightness(0.95);
}

.packages-service .glass-card:hover img {
  transform: scale(1.08) rotate(0.5deg);
  filter: brightness(1.1) saturate(120%);
}

/* تأثير إضافي خفيف فوق الصورة */
.packages-service .glass-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 220px;
  border-radius: 16px 16px 0 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.15), transparent);
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 2;
}

.packages-service .glass-card:hover::before {
  opacity: 1;
}

/* ====== Card Content ====== */
.packages-service .glass-card .card-content {
  color: #fff;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.packages-service .glass-card .title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #012970;
  text-decoration: none;
  transition: color 0.3s ease;
  margin-bottom: 8px;
}

.packages-service .glass-card .title:hover {
  color: #000;
}

.glass-card p {
  color: #000;
  font-size: 15px;
  line-height: 1.6;
  flex-grow: 1;
}

/* ====== Button ====== */
.glass-card .card-btn {
  display: inline-block;
  background: linear-gradient(90deg, #0072ff, #012970);
  color: #fff;
  padding: 10px 22px;
  border-radius: 50px;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.8s ease;
  align-self: flex-start;
}

.packages-service .glass-card .card-btn:hover {
  background: linear-gradient(90deg, #012970, #0072ff);
  transform: scale(1.01);
  box-shadow: 0 0 12px #012a7098;
}

/* ====== Equal Height Columns ====== */
.packages-service .row.row-gap-4 {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.packages-service .col-lg-4,
.packages-service .col-md-6 {
  display: flex;
}

.packages-service .glass-card {
  flex: 1;
}

/* ====== Optional Glow Hover ====== */
.packages-service .glass-card:hover::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 24px;
  background: radial-gradient(circle at top right,
      rgba(0, 198, 255, 0.3),
      transparent 70%);
  z-index: -1;
  opacity: 1;
  transition: opacity 0.4s ease;
}

/*--------------------------------------------------------------
# USPs Section
--------------------------------------------------------------*/
.choose-area {
  position: relative;
  z-index: 1;
}

.choose-item {
  display: flex;
  align-items: center;
  gap: 25px;
  margin-top: 20px;
  padding: 10px 15px 10px 10px;
  font-size: 20px;
  background: #fff;
  border-radius: 8px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);
  z-index: 1;
  height: 86px;
}

.choose-item::before {
  content: "";
  position: absolute;
  width: 83px;
  height: 83px;
  background: linear-gradient(to top left, #384dff 0%, #012970 100%);
  border-radius: 50px;
  /* top: -10px; */
  left: -30px;
  z-index: -1;
}

.choose-item i {
  color: #fff;
  font-weight: 600;
  font-size: 30px;
}

.choose-img {
  position: relative;
  z-index: 1;
  padding: 20px;
}
.choose-item strong {
  color: #012970;
font-weight: 600;
}
.choose-item p {
  margin: 0;
  font-size: 15px;
  font-weight: 400;
  color: #000;
}
/*--------------------------------------------------------------
# main Features Section
--------------------------------------------------------------*/
.features-section {
  background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
  position: relative;
  overflow: hidden;
}

.features-section::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(0, 114, 123, 0.05) 0%, transparent 70%);
  border-radius: 50%;
  z-index: 0;
}

.features-section .section-header .badge {
  background: #012970 !important;
  font-size: 0.875rem;
  letter-spacing: 1.5px;
  font-weight: 600;
}

/* Process Cards */
.features-section .process-card {
  background: #fff;
  padding: 2.5rem 2rem;
  border-radius: 20px;
  box-shadow: 0 5px 30px rgba(0, 0, 0, 0.08);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid #f0f0f0;
  position: relative;
  overflow: hidden;
}

.features-section .process-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 0;
  background: linear-gradient(to bottom, #012970, #1f5bc2ff);
  transition: height 0.4s ease;
}

.features-section .process-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 50px rgba(1, 41, 112, 0.15);
  border-color: #012970;
}

.features-section .process-card:hover::before {
  height: 100%;
}

/* Step Badge */
.features-section .step-badge {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  background: linear-gradient(135deg, #012970 0%, #1f5bc2ff 100%);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 15px #01297033;
  transform: rotate(-15deg);
  transition: transform 0.3s ease;
}

.features-section .process-card:hover .step-badge {
  transform: rotate(0deg) scale(1.1);
}

.features-section .step-number {
  color: #fff;
  font-size: 1.25rem;
  border: 0;
  background: transparent;
  font-weight: 700;
}

/* Process Icon */
.features-section .process-icon {
  width: 80px;
  height: 80px;
  background: linear-gradient(135deg, #01297015 0%, #01297005 100%);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.features-section .process-icon i {
  font-size: 2.5rem;
  color: #012970;
  transition: transform 0.3s ease;
}

.features-section .process-card:hover .process-icon {
  background: #012970;
  transform: scale(1.1) rotate(5deg);
}

.features-section .process-card:hover .process-icon i {
  color: #fff;
  transform: scale(1.1);
}

/* Process Content */
  .features-section .process-title {
  color: #1a1a1a;
  line-height: 1.4;
  transition: color 0.3s ease;
}

.features-section .process-card:hover .process-title {
  color: #012970;
}

.features-section .process-text {
  font-size: 0.95rem;
  line-height: 1.7;
}

.features-section .process-text ul {
  padding-left: 1.2rem;
  margin-top: 1rem;
  list-style: none;
}

.features-section .process-text ul li {
  margin-bottom: 0.5rem;
  position: relative;
  padding-left: 0.5rem;
  color: #000;
}
.features-section .process-text ul li::before {
  content: "\F231";
  position: absolute;
  left: -7%;
  top: 0;
  font-family: "bootstrap-icons";
  color: #012970;
}



/* Card Arrow */
.features-section .card-arrow {
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  background: #f8f9fa;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: translateX(-10px);
  transition: all 0.3s ease;
}

.features-section .card-arrow i {
  color: #fff;
  font-size: 1.2rem;
}

.features-section .process-card:hover .card-arrow {
  opacity: 1;
  transform: translateX(0);
  background: #012970;
}

.features-section.process-card:hover .card-arrow i {
  color: #fff;
}

/* Showcase Section */
.features-section .process-showcase {
  position: relative;
}

.features-section .showcase-wrapper {
  position: relative;
  z-index: 2;
  box-shadow: 0 20px 60px rgba(0,0,0,0.15);
  border-radius: 20px;
  width: 100%;
  padding: 10px 20px;
}

.features-section .showcase-image {
  position: relative;
  z-index: 1;
  transition: transform 0.5s ease;
}

.features-section.showcase-image:hover {
  transform: scale(1.05);
}

/* Decorative Elements */
.features-section .showcase-decoration {
  position: absolute;
  border-radius: 50%;
  z-index: 0;
}

.features-section .decoration-1 {
  width: 150px;
  height: 150px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.1), transparent);
  top: -30px;
  left: -30px;
  animation: float 6s ease-in-out infinite;
}

.features-section .decoration-2 {
  width: 100px;
  height: 100px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.08), transparent);
  bottom: -20px;
  right: -20px;
  animation: float 8s ease-in-out infinite reverse;
}

.features-section .decoration-3 {
  width: 80px;
  height: 80px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.06), transparent);
  top: 50%;
  right: -40px;
  animation: float 7s ease-in-out infinite;
}

@keyframes float {
  0%, 100% { transform: translateY(0px) scale(1); }
  50% { transform: translateY(-20px) scale(1.1); }
}

/* Button */
.features-section .btn-primary {
  background: linear-gradient(135deg, #012970 0%, #1f5bc2ff 100%);
  border: none;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px #01297033;
}

.features-section .btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px #01297066;
  background: linear-gradient(135deg, #012970 0%, #1f5bc2ff 100%);
}

/* Responsive */
@media (max-width: 991px) {
  .features-section .process-card {
    padding: 2rem 1.5rem;
  }
  
  .features-section .process-icon {
    width: 70px;
    height: 70px;
  }
  
  .features-section .process-icon i {
    font-size: 2rem;
  }
}

@media (max-width: 767px) {
  .features-section .step-badge {
    width: 45px;
    height: 45px;
  }
  
  .features-section .step-number {
    font-size: 1.1rem;
  }
  
  .features-section .showcase-image {
    max-width: 100% !important;
  }
  
  .features-section .decoration-1, .features-section .decoration-2, .features-section .decoration-3 {
    display: none;
  }
}

/*--------------------------------------------------------------
# Alt Features Section
--------------------------------------------------------------*/
.alt-features .icon-box {
  display: flex;
}

.alt-features .icon-box h4 {
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 10px 0;
}

.alt-features .icon-box i {
  font-size: 44px;
  line-height: 44px;
  color: #012970;
  margin-right: 15px;
}

.alt-features .icon-box p {
  font-size: 14px;
  color: #000;
  margin-bottom: 0;
}


.alt-features ul {
  position: relative;
  display: block;
  list-style: none;
  padding-left: 8px;
}

.alt-features ul li {
  position: relative;
  padding-left: 25px;
  margin-top: 10px;
  font-weight: bold;
  color: #1E1D1D;
  margin-right: 30px;
  font-size: 14px;
}

.alt-features ul li::before {
  content: "\F231";
  position: absolute;
  left: 0;
  top: 0;
  font-family: "bootstrap-icons";
  color: #012970;
}



/*--------------------------------------------------------------
# Pricing Section
--------------------------------------------------------------*/
.pricing .pricing-tem {
  background-color: var(--surface-color);
  box-shadow: 0px 0 30px rgba(0, 0, 0, 0.1);
  padding: 40px 20px;
  text-align: center;
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  transition: 0.3s;
  height: 100%;
}

@media (min-width: 1200px) {
  .pricing .pricing-tem:hover {
    transform: scale(1.1);
    box-shadow: 0px 0 30px rgba(0, 0, 0, 0.1);
  }
}

.pricing h3 {
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 15px;
}

.pricing .price {
  font-size: 36px;
  color: var(--heading-color);
  font-weight: 600;
  font-family: var(--heading-font);
}

.pricing .price sup {
  font-size: 20px;
  top: -15px;
  left: -3px;
}

.pricing .price span {
  color: color-mix(in srgb, var(--default-color), transparent 50%);
  font-size: 16px;
  font-weight: 300;
}

.pricing .icon {
  padding: 20px 0;
}

.pricing .icon i {
  font-size: 48px;
}

.pricing ul {
  padding: 0;
  list-style: none;
  color: var(--default-color);
  text-align: center;
  line-height: 26px;
  font-size: 16px;
  margin-bottom: 25px;
}

.pricing ul li {
  padding-bottom: 10px;
}

.pricing ul .na {
  color: color-mix(in srgb, var(--default-color), transparent 70%);
  text-decoration: line-through;
}

.pricing .btn-buy {
  display: inline-block;
  padding: 8px 40px 10px 40px;
  border-radius: 50px;
  color: var(--accent-color);
  transition: none;
  font-size: 16px;
  font-weight: 400;
  font-family: var(--heading-font);
  font-weight: 600;
  transition: 0.3s;
  border: 1px solid var(--accent-color);
}

.pricing .btn-buy:hover {
  background: var(--accent-color);
  color: var(--contrast-color);
}

.pricing .featured {
  width: 200px;
  position: absolute;
  top: 18px;
  right: -68px;
  transform: rotate(45deg);
  z-index: 1;
  font-size: 14px;
  padding: 1px 0 3px 0;
  background: var(--accent-color);
  color: var(--contrast-color);
}

/*--------------------------------------------------------------
# Faq Section
--------------------------------------------------------------*/
.faq .faq-container .faq-item {
  position: relative;
  padding: 20px 0;
  border-bottom: 1px solid color-mix(in srgb, var(--default-color), transparent 85%);
  overflow: hidden;
}

.faq .faq-container .faq-item:last-child {
  margin-bottom: 0;
}

.faq .faq-container .faq-item h3 {
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  margin: 0 30px 0 0;
  transition: 0.3s;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.faq .faq-container .faq-item h3 .num {
  color: var(--accent-color);
  padding-right: 5px;
}

.faq .faq-container .faq-item h3:hover {
  color: var(--accent-color);
}

.faq .faq-container .faq-item .faq-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: 0.3s ease-in-out;
  visibility: hidden;
  opacity: 0;
}

.faq .faq-container .faq-item .faq-content p {
  margin-bottom: 0;
  overflow: hidden;
}

.faq .faq-container .faq-item .faq-toggle {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 16px;
  line-height: 0;
  transition: 0.3s;
  cursor: pointer;
}

.faq .faq-container .faq-item .faq-toggle:hover {
  color: var(--accent-color);
}

.faq .faq-container .faq-active h3 {
  color: var(--accent-color);
}

.faq .faq-container .faq-active .faq-content {
  grid-template-rows: 1fr;
  visibility: visible;
  opacity: 1;
  padding-top: 10px;
}

.faq .faq-container .faq-active .faq-toggle {
  transform: rotate(90deg);
  color: var(--accent-color);
}

/*--------------------------------------------------------------
# Testimonials Section
--------------------------------------------------------------*/
.testimonials .testimonial-item {
  background-color: var(--surface-color);
  box-shadow: 0px 0 20px rgba(0, 0, 0, 0.1);
  box-sizing: content-box;
  padding: 30px;
  margin: 40px 30px;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  text-align: center;
  transition: 0.3s;
}

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

.testimonials .testimonial-item .stars i {
  color: #ffc107;
  margin: 0 1px;
}

.testimonials .testimonial-item .testimonial-img {
  width: 90px;
  border-radius: 50%;
  border: 4px solid var(--background-color);
  margin: 0 auto;
}

.testimonials .testimonial-item h3 {
  font-size: 18px;
  font-weight: bold;
  margin: 10px 0 5px 0;
}

.testimonials .testimonial-item h4 {
  font-size: 14px;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  margin: 0;
}

.testimonials .testimonial-item p {
  font-style: italic;
  margin: 0 auto 15px auto;
}

.testimonials .swiper-wrapper {
  height: auto;
}

.testimonials .swiper-pagination {
  margin-top: 20px;
  position: relative;
}

.testimonials .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background-color: color-mix(in srgb, var(--default-color), transparent 85%);
  opacity: 1;
}

.testimonials .swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--accent-color);
}

.testimonials .swiper-slide {
  opacity: 0.3;
}

@media (max-width: 1199px) {
  .testimonials .swiper-slide-active {
    opacity: 1;
  }

  .testimonials .swiper-pagination {
    margin-top: 0;
  }

  .testimonials .testimonial-item {
    margin: 40px 20px;
  }
}

@media (min-width: 1200px) {
  .testimonials .swiper-slide-next {
    opacity: 1;
    transform: scale(1.12);
  }
}


/*--------------------------------------------------------------
# Clients Section
--------------------------------------------------------------*/
.clients .swiper-slide img {
  transition: 0.3s;
  opacity: 0.5;
}

.clients .swiper-slide img:hover {
  opacity: 1;
}

.clients .swiper-wrapper {
  height: auto;
}

.clients .swiper-pagination {
  margin-top: 20px;
  position: relative;
}

.clients .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  opacity: 1;
  background-color: color-mix(in srgb, var(--default-color), transparent 80%);
}

.clients .swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--accent-color);
}

/*--------------------------------------------------------------
# Recent Posts Section
--------------------------------------------------------------*/
.recent-posts .post-item {
  background-color: var(--surface-color);
  box-shadow: 0px 2px 20px rgba(0, 0, 0, 0.1);
  transition: 0.3s;
}

.recent-posts .post-item .post-img img {
  transition: 0.5s;
}

.recent-posts .post-item .post-date {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: var(--accent-color);
  color: var(--contrast-color);
  text-transform: uppercase;
  font-size: 13px;
  padding: 6px 12px;
  font-weight: 500;
}

.recent-posts .post-item .post-content {
  padding: 30px;
}

.recent-posts .post-item .post-title {
  color: var(--heading-color);
  font-size: 20px;
  font-weight: 700;
  transition: 0.3s;
  margin-bottom: 15px;
}

.recent-posts .post-item .meta i {
  font-size: 16px;
  color: var(--accent-color);
}

.recent-posts .post-item .meta span {
  font-size: 15px;
  color: color-mix(in srgb, var(--default-color), transparent 50%);
}

.recent-posts .post-item hr {
  color: color-mix(in srgb, var(--default-color), transparent 80%);
  margin: 20px 0;
}

.recent-posts .post-item .readmore {
  display: flex;
  align-items: center;
  font-weight: 600;
  line-height: 1;
  transition: 0.3s;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.recent-posts .post-item .readmore i {
  line-height: 0;
  margin-left: 6px;
  font-size: 16px;
}

.recent-posts .post-item:hover .post-title,
.recent-posts .post-item:hover .readmore {
  color: var(--accent-color);
}

.recent-posts .post-item:hover .post-img img {
  transform: scale(1.1);
}

/*--------------------------------------------------------------
# Contact Section
--------------------------------------------------------------*/
.contact .info-item {
  background: color-mix(in srgb, var(--default-color), transparent 96%);
  padding: 30px;
}

.contact .info-item i {
  font-size: 38px;
  line-height: 0;
  color: var(--accent-color);
}

.contact .info-item h3 {
  font-size: 20px;
  font-weight: 700;
  margin: 20px 0 10px 0;
}

.contact .info-item p {
  padding: 0;
  line-height: 24px;
  font-size: 14px;
  margin-bottom: 0;
}

.contact .php-email-form {
  background: color-mix(in srgb, var(--default-color), transparent 96%);
  padding: 30px;
  height: 100%;
}

.contact .php-email-form input[type=text],
.contact .php-email-form input[type=email],
.contact .php-email-form textarea {
  font-size: 14px;
  padding: 10px 15px;
  box-shadow: none;
  border-radius: 0;
  color: var(--default-color);
  background-color: color-mix(in srgb, var(--background-color), transparent 50%);
  border-color: color-mix(in srgb, var(--default-color), transparent 80%);
}

.contact .php-email-form input[type=text]:focus,
.contact .php-email-form input[type=email]:focus,
.contact .php-email-form textarea:focus {
  border-color: var(--accent-color);
}

.contact .php-email-form input[type=text]::placeholder,
.contact .php-email-form input[type=email]::placeholder,
.contact .php-email-form textarea::placeholder {
  color: color-mix(in srgb, var(--default-color), transparent 70%);
}

.contact .php-email-form button[type=submit] {
  background: var(--accent-color);
  color: var(--contrast-color);
  border: 0;
  padding: 10px 30px;
  transition: 0.4s;
  border-radius: 4px;
}

.contact .php-email-form button[type=submit]:hover {
  background: color-mix(in srgb, var(--accent-color), transparent 20%);
}

/*--------------------------------------------------------------
# Call To Action Section
--------------------------------------------------------------*/
.cta-area {
  background: linear-gradient(to left, #65a1fe 0%, #384dff 100%);
  position: relative;
  z-index: 1;
  padding: 80px 0;
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
}

.cta-area::before {
  content: "";
  position: absolute;
  background: url(../img/p1.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0px;
  z-index: -1;
}

.cta-divider {
  position: relative;
}

.cta-divider::before {
  position: absolute;
  content: close-quote;
  width: 2px;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.3);
  right: -117px;
  top: 0;
}

.cta-text h2 {
  color: #fff;
  font-size: 50px;
  text-transform: capitalize;
  margin-bottom: 15px;
}

.cta-text p {
  color: #fff;
}

.cta-border-btn {
  font-size: 32px;
  color: #fff !important;
          word-wrap: break-word;
  font-weight: 700;
}

.cta-border-btn {
  font-size: 32px;
  color: #fff !important;
  font-weight: 700;
}

.cta-border-btn i {
  margin-right: 15px;
}

/*--------------------------------------------------------------
# Responsive — Keep Original Style
--------------------------------------------------------------*/

/* Large Tablets & Small Laptops */
@media (max-width: 1200px) {
  .cta-text h2 {
    font-size: 42px;
  }

  .cta-border-btn {
    font-size: 28px;
  }
}

/* Tablets */
@media (max-width: 992px) {
  .cta-area {
    padding: 60px 0;
  }

  .cta-text h2 {
    font-size: 36px;
  }

  .cta-border-btn {
    font-size: 26px;
  }

  .cta-divider::before {
    right: -60px;
  }
}

/* Large Phones */
@media (max-width: 768px) {
  .cta-area {
    text-align: center;
  }

  .cta-divider::before {
    display: none;
  }

  .cta-text h2 {
    font-size: 32px;
  }

  .cta-text p {
    font-size: 16px;
  }

  .cta-border-btn {
    margin-top: 20px;
    font-size: 24px;
  }
}

/* Small Phones */
@media (max-width: 480px) {
  .cta-text h2 {
    font-size: 26px;
    line-height: 1.3;
  }

  .cta-border-btn {
    font-size: 20px;
            word-wrap: break-word;
  }

  .cta-text p {
    font-size: 15px;
  }
}

@media (max-width: 576px) {
  .cta-text,
  .cta-text p,
  .cta-text a {
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-all;
  }

  .cta-text a {
    display: block;
    font-size: 16px;
  }
}

/*--------------------------------------------------------------
# Portfolio Details Section
--------------------------------------------------------------*/
.portfolio-details .portfolio-details-slider img {
  width: 100%;
}

.portfolio-details .portfolio-details-slider .swiper-pagination {
  margin-top: 20px;
  position: relative;
}

.portfolio-details .portfolio-details-slider .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background-color: color-mix(in srgb, var(--default-color), transparent 85%);
  opacity: 1;
}

.portfolio-details .portfolio-details-slider .swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--accent-color);
}

.portfolio-details .portfolio-info {
  background-color: var(--surface-color);
  padding: 30px;
  box-shadow: 0px 0 30px rgba(0, 0, 0, 0.1);
}

.portfolio-details .portfolio-info h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid color-mix(in srgb, var(--default-color), transparent 85%);
}

.portfolio-details .portfolio-info ul {
  list-style: none;
  padding: 0;
  font-size: 15px;
}

.portfolio-details .portfolio-info ul li+li {
  margin-top: 10px;
}

.portfolio-details .portfolio-description {
  padding-top: 30px;
}

.portfolio-details .portfolio-description h2 {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 20px;
}

.portfolio-details .portfolio-description p {
  padding: 0;
  color: color-mix(in srgb, var(--default-color), transparent 30%);
}

/*--------------------------------------------------------------
# Service Details Section
--------------------------------------------------------------*/
.service-details .sidebar-toggle {
  position: fixed;
  left: -15px;
  top: 50%;
  transform: translateY(-50%);
  background: #012970;
  color: #fff;
  border: none;
  font-size: 26px;
  padding: 10px 8px 10px 15px;
  border-radius: 5px;
  cursor: pointer;
  z-index: 1100;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  animation: arrowPulse 1.5s infinite ease-in-out;
  transition: all 0.3s ease;
}

/* حركة السهم */
@keyframes arrowPulse {
  0% {
    transform: translateY(-50%) translateX(0);
  }

  50% {
    transform: translateY(-50%) translateX(6px);
  }

  100% {
    transform: translateY(-50%) translateX(0);
  }
}

.sidebar-toggle:hover {
  animation-play-state: paused;
  transform: translateY(-50%) scale(1.1);
  background: #012970;
}

.close-sidebar {
  background: none;
  border: 0;
  background-color: #012970;
  border-radius: 50%;
  font-size: 28px;
  color: #fff;
  position: absolute;
  top: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: auto;

  transition: color 0.3s ease;
}

.close-sidebar:hover {
  color: #007bff;
  background-color: #e1e1e1;
}

.service-details .sidebar-toggle:hover {
  background: #0056b3;
}

.service-details .side-bar {
  position: fixed;
  top: 0;
  left: -100%;
  width: 425px;
  height: 100%;
  background: #fff;
  box-shadow: 4px 0 15px rgba(0, 0, 0, 0.1);
  z-index: 2000;
  overflow-y: auto;
  padding: 30px;
  transition: all 0.4s ease;
}

@media (max-width: 768px) {
  .service-details .side-bar {
    width: 75%;
  }
}

.side-bar.active {
  left: 0;
}

.sidebar-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 1500;
  display: none;
}

.sidebar-overlay.active {
  display: block;
}

.service-details .side-bar::-webkit-scrollbar {
  width: 8px;
}

.service-details .side-bar::-webkit-scrollbar-track {
  background: #f0f0f0;
  border-radius: 10px;
}

.service-details .side-bar::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #012970, #011f4d);
  border-radius: 10px;
  transition: background 0.3s ease;
}

.service-details .side-bar::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #012970, #011f4d);
}

/* دعم Firefox */
.service-details .side-bar {
  scrollbar-width: thin;
  scrollbar-color: #012970 #f0f0f0;
}

.service-details .service-box {
  background-color: var(--surface-color);
  padding: 20px;
  box-shadow: 0px 2px 20px rgba(0, 0, 0, 0.1);
}

.service-details .service-box+.service-box {
  margin-top: 30px;
}

.service-details .service-box h4 {
  font-size: 20px;
  font-weight: 700;
  border-bottom: 2px solid color-mix(in srgb, var(--default-color), transparent 92%);
  padding-bottom: 15px;
  margin-bottom: 15px;
}

.service-details .services-list {
  background-color: var(--surface-color);
}

.service-details .services-list a {
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  background-color: color-mix(in srgb, var(--default-color), transparent 96%);
  display: flex;
  align-items: center;
  padding: 12px 15px;
  margin-top: 15px;
  transition: 0.3s;
}

.service-details .services-list a:first-child {
  margin-top: 0;
}

.service-details .services-list a i {
  font-size: 16px;
  margin-right: 8px;
  color: #012970;
}

.service-details .services-list a.active {
  color: var(--contrast-color);
  background-color: #012970;
}

.service-details .services-list a.active i {
  color: var(--contrast-color);
}

.service-details .services-list a:hover {
  background-color: color-mix(in srgb, #012970, transparent 95%);
  color: #012970;
  padding-left: 25px;
}

.service-details .download-catalog a {
  color: var(--default-color);
  display: flex;
  align-items: center;
  padding: 10px 0;
  transition: 0.3s;
  border-top: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
}

.service-details .download-catalog a:first-child {
  border-top: 0;
  padding-top: 0;
}

.service-details .download-catalog a:last-child {
  padding-bottom: 0;
}

.service-details .download-catalog a i {
  font-size: 24px;
  margin-right: 8px;
  color: #012970;
}

.service-details .download-catalog a:hover {
  color: #012970;
}

.service-details .help-box {
  background-color: #012970;
  color: var(--contrast-color);
  margin-top: 30px;
  padding: 30px 15px;
}

.service-details .help-box .help-icon {
  font-size: 48px;
}

.service-details .help-box h4,
.service-details .help-box a {
  color: var(--contrast-color);
}

.service-details .services-img {
  margin-bottom: 20px;
}

.service-details h3 {
  font-size: 26px;
  font-weight: 700;
}

.service-details p {
  font-size: 15px;
}

.service-details ul {
  list-style: none;
  padding: 0;
  font-size: 15px;
}

.service-details ul li {
  padding: 5px 0;
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 30px !important;
  margin-bottom: 8px;
  line-height: 1.6;
  flex-wrap: wrap;
}

.service-details .tab-solution-content ul li::before {
  content: "\f26b";
  font-family: "bootstrap-icons";
  font-size: 20px;
  margin-right: 8px;
  color: #012970;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 18px;
}

.service-details ul i {
  font-size: 20px;
  margin-right: 8px;
  color: #012970;
}

/*--------------------------------------------------------------
# Starter Section Section
--------------------------------------------------------------*/
.starter-section {
  /* Add your styles here */
}

/*--------------------------------------------------------------
# Blog Posts Section
--------------------------------------------------------------*/
.blog-posts article {
  background-color: var(--surface-color);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  padding: 30px;
  height: 100%;
}

.blog-posts .post-img {
  max-height: 440px;
  margin: -30px -30px 0 -30px;
  overflow: hidden;
}

.blog-posts .title {
  font-size: 24px;
  font-weight: 700;
  padding: 0;
  margin: 30px 0;
}

.blog-posts .title a {
  color: var(--heading-color);
  transition: 0.3s;
}

.blog-posts .title a:hover {
  color: var(--accent-color);
}

.blog-posts .meta-top {
  margin-top: 20px;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.blog-posts .meta-top ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  align-items: center;
  padding: 0;
  margin: 0;
}

.blog-posts .meta-top ul li+li {
  padding-left: 20px;
}

.blog-posts .meta-top i {
  font-size: 16px;
  margin-right: 8px;
  line-height: 0;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
}

.blog-posts .meta-top a {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  font-size: 14px;
  display: inline-block;
  line-height: 1;
}

.blog-posts .content {
  margin-top: 20px;
}

.blog-posts .content .read-more {
  text-align: right;
}

.blog-posts .content .read-more a {
  background: var(--accent-color);
  color: var(--contrast-color);
  display: inline-block;
  padding: 8px 30px;
  transition: 0.3s;
  font-size: 14px;
  border-radius: 4px;
}

.blog-posts .content .read-more a:hover {
  background: color-mix(in srgb, var(--accent-color), transparent 20%);
}

/*--------------------------------------------------------------
# Blog Pagination Section
--------------------------------------------------------------*/
.blog-pagination {
  padding-top: 0;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.blog-pagination ul {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
}

.blog-pagination li {
  margin: 0 5px;
  transition: 0.3s;
}

.blog-pagination li a {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  padding: 7px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.blog-pagination li a.active,
.blog-pagination li a:hover {
  background: var(--accent-color);
  color: var(--contrast-color);
}

.blog-pagination li a.active a,
.blog-pagination li a:hover a {
  color: var(--contrast-color);
}

/*--------------------------------------------------------------
# Blog Details Section
--------------------------------------------------------------*/
.blog-details {
  padding-bottom: 30px;
}

.blog-details .article {
  background-color: var(--surface-color);
  padding: 30px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.blog-details .post-img {
  margin: -30px -30px 20px -30px;
  overflow: hidden;
}

.blog-details .title {
  color: var(--heading-color);
  font-size: 28px;
  font-weight: 700;
  padding: 0;
  margin: 30px 0;
}

.blog-details .content {
  margin-top: 20px;
}

.blog-details .content h3 {
  font-size: 22px;
  margin-top: 30px;
  font-weight: bold;
}

.blog-details .content blockquote {
  overflow: hidden;
  background-color: color-mix(in srgb, var(--default-color), transparent 95%);
  padding: 60px;
  position: relative;
  text-align: center;
  margin: 20px 0;
}

.blog-details .content blockquote p {
  color: var(--default-color);
  line-height: 1.6;
  margin-bottom: 0;
  font-style: italic;
  font-weight: 500;
  font-size: 22px;
}

.blog-details .content blockquote:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background-color: var(--accent-color);
  margin-top: 20px;
  margin-bottom: 20px;
}

.blog-details .meta-top {
  margin-top: 20px;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.blog-details .meta-top ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  align-items: center;
  padding: 0;
  margin: 0;
}

.blog-details .meta-top ul li+li {
  padding-left: 20px;
}

.blog-details .meta-top i {
  font-size: 16px;
  margin-right: 8px;
  line-height: 0;
  color: color-mix(in srgb, var(--default-color), transparent 40%);
}

.blog-details .meta-top a {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  font-size: 14px;
  display: inline-block;
  line-height: 1;
}

.blog-details .meta-bottom {
  padding-top: 10px;
  border-top: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
}

.blog-details .meta-bottom i {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  display: inline;
}

.blog-details .meta-bottom a {
  color: color-mix(in srgb, var(--default-color), transparent 40%);
  transition: 0.3s;
}

.blog-details .meta-bottom a:hover {
  color: var(--accent-color);
}

.blog-details .meta-bottom .cats {
  list-style: none;
  display: inline;
  padding: 0 20px 0 0;
  font-size: 14px;
}

.blog-details .meta-bottom .cats li {
  display: inline-block;
}

.blog-details .meta-bottom .tags {
  list-style: none;
  display: inline;
  padding: 0;
  font-size: 14px;
}

.blog-details .meta-bottom .tags li {
  display: inline-block;
}

.blog-details .meta-bottom .tags li+li::before {
  padding-right: 6px;
  color: var(--default-color);
  content: ",";
}

.blog-details .meta-bottom .share {
  font-size: 16px;
}

.blog-details .meta-bottom .share i {
  padding-left: 5px;
}

/*--------------------------------------------------------------
# Blog Author Section
--------------------------------------------------------------*/
.blog-author {
  padding: 10px 0 40px 0;
}

.blog-author .author-container {
  background-color: var(--surface-color);
  padding: 20px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.blog-author img {
  max-width: 120px;
  margin-right: 20px;
}

.blog-author h4 {
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 0px;
  padding: 0;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
}

.blog-author .social-links {
  margin: 0 10px 10px 0;
}

.blog-author .social-links a {
  color: color-mix(in srgb, var(--default-color), transparent 60%);
  margin-right: 5px;
}

.blog-author p {
  font-style: italic;
  color: color-mix(in srgb, #012970, transparent 30%);
  margin-bottom: 0;
}

/* ===================================
   WordPress Comments Styling - #012970
   =================================== */

/* Comments Section */
.blog-comments.section,
#comments {
  padding: 60px 0;
  background: #f8f9fa;
}

.comments-count,
.comments-title {
  font-size: 24px;
  font-weight: 700;
  color: #012970;
  margin-bottom: 30px;
  padding-bottom: 15px;
  border-bottom: 3px solid #012970;
}



/* Comment List */
.commentlist,
.comment-list,
ol.commentlist {
  list-style: none;
  padding: 0;
  margin: 0;
  height: 500px;
  overflow: auto;
}

.commentlist,
.comment-list,
ol.commentlist {
  list-style: none;
  padding: 0;
  margin: 0;
  height: 500px;
  overflow: auto;

  /* Scroll styling */
  scrollbar-width: thin;
  /* Firefox */
  scrollbar-color: #888 #f1f1f1;
  /* Firefox */
}

/* Chrome, Edge, Safari */
.commentlist::-webkit-scrollbar {
  width: 10px;
}

.commentlist::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 5px;
}

.commentlist::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #6a11cb, #2575fc);
  border-radius: 5px;
}

.commentlist::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #2575fc, #6a11cb);
}

/* Single Comment */
.comment,
li.comment {
  background: #ffffff;
  padding: 20px;
  margin-bottom: 15px;
  border-radius: 10px;
  border-left: 4px solid #012970;
  box-shadow: 0 2px 8px rgba(1, 41, 112, 0.08);
  list-style: none;
}

.comment-body {
  display: flex;
  flex-direction: column;
}

/* Avatar */
.comment-author.vcard {
  flex-shrink: 0;
}

.comment-author.vcard img.avatar {
  border-radius: 50%;
  width: 50px !important;
  height: 50px !important;
  border: 3px solid #ddd;
}

/* Hide "says:" text */
.comment-author .says {
  display: none;
}

/* Author Name */
.comment-author .fn,
.comment-author .fn a {
  font-size: 17px;
  font-weight: 600;
  color: #012970;
  text-decoration: none;
  display: block;
  margin-bottom: 5px;
}

.comment-author .fn a:hover {
  color: #011f4d;
}

/* Comment Meta (Date/Time) */
.comment-meta,
.commentmetadata {
  font-size: 13px;
  color: #6c757d;
  margin-bottom: 12px;
}

.comment-meta a,
.commentmetadata a {
  color: #6c757d;
  text-decoration: none;
}

.comment-meta a:hover,
.commentmetadata a:hover {
  color: #012970;
}

/* Awaiting Moderation Message */
.comment-awaiting-moderation {
  display: inline-block;
  background: #fff3cd;
  color: #856404;
  padding: 5px 12px;
  border-radius: 5px;
  font-size: 13px;
  margin-bottom: 10px;
  font-style: normal;
  border: 1px solid #ffeaa7;
}

/* Comment Content/Text */
.comment-body>div:not(.comment-author):not(.comment-meta):not(.commentmetadata):not(.reply),
.comment-content {
  flex: 1;
}

.comment-body p {
  color: #333;
  line-height: 1.7;
  font-size: 15px;
  margin: 10px 0;
}

/* Reply Link */
.reply {
  margin-top: 10px;
}

.reply a,
.comment-reply-link {
  color: #012970;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  padding: 6px 16px;
  border: 1px solid #012970;
  border-radius: 20px;
  display: inline-block;
  transition: all 0.3s ease;
}

.reply a:hover,
.comment-reply-link:hover {
  background: #012970;
  color: #ffffff;
}

/* Nested Comments (Children/Replies) */
.children,
ul.children {
  list-style: none;
  padding: 0;
  margin: 15px 0 0 0;
  padding-left: 20px;
  border-left: 3px solid #012970;
}

.children .comment,
.children li.comment {
  background: #e8f4ff;
  border-left: 3px solid #012970;
}

.children .comment-author img.avatar {
  width: 45px !important;
  height: 45px !important;
}

/* Level 2 Nested */
.children .children {
  border-left: 3px solid #0159a8;
}

.children .children .comment {
  background: #d4e9ff;
  border-left: 3px solid #0159a8;
}

.children .children .comment-author img.avatar {
  width: 40px !important;
  height: 40px !important;
}

/* Level 3 Nested */
.children .children .children {
  border-left: 3px solid #0180db;
}

.children .children .children .comment {
  background: #c0dfff;
  border-left: 3px solid #0180db;
}

/* Comment Navigation */
.comment-navigation,
.navigation.comment-navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  gap: 15px;
}

.comment-navigation a {
  color: #012970;
  text-decoration: none;
  font-weight: 600;
  padding: 12px 24px;
  background: #ffffff;
  border: 2px solid #012970;
  border-radius: 25px;
  transition: all 0.3s ease;
}

.comment-navigation a:hover {
  background: #012970;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(1, 41, 112, 0.25);
}

/* ===================================
   Comment Form
   =================================== */

.comment-form.section,
#respond {
  padding: 60px 0;
  background: #ffffff;
}

.comment-form h4,
#reply-title {
  font-size: 26px;
  font-weight: 700;
  color: #012970;
  margin-bottom: 20px;
}

.comment-notes,
.comment-form-comment label,
.comment-form-author label,
.comment-form-email label,
.comment-form-url label {
  color: #6c757d;
  font-size: 14px;
  margin-bottom: 8px;
  display: block;
}

/* Hide Logged In Message */
.logged-in-as {
  display: none !important;
}

/* Form Fields */
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea,
.form-control {
  width: 100%;
  padding: 14px 18px;
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  font-size: 15px;
  background: #f8f9fa;
  transition: all 0.3s ease;
  font-family: inherit;
}

.comment-form input:focus,
.comment-form textarea:focus,
.form-control:focus {
  outline: none;
  border-color: #012970;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(1, 41, 112, 0.1);
}

.comment-form textarea,
textarea.form-control {
  resize: vertical;
  min-height: 120px;
}

/* Form Groups */
.comment-form-author,
.comment-form-email,
.comment-form-url,
.comment-form-comment,
.form-group {
  margin-bottom: 20px;
}

/* Flex layout for Name & Email on desktop */
@media (min-width: 768px) {

  .comment-form-author,
  .comment-form-email {
    display: inline-block;
    vertical-align: top;
  }

  .comment-form-author {
    margin-right: 4%;
  }

  .comment-form-email {
    margin-right: 0;
  }
}

/* Checkbox */
.comment-form-cookies-consent {
  margin: 15px 0;
}

.comment-form-cookies-consent label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #555;
  cursor: pointer;
}

.comment-form-cookies-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  cursor: pointer;
  accent-color: #012970;
}

/* Submit Button */
.form-submit,
.text-center {
  margin-top: 20px;
  text-align: center;
}

.submit,
.btn.btn-primary,
input[type="submit"] {
  background: #012970;
  color: #ffffff;
  padding: 14px 40px;
  border: none;
  border-radius: 25px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 3px 12px rgba(1, 41, 112, 0.3);
}

.submit:hover,
.btn.btn-primary:hover,
input[type="submit"]:hover {
  background: #011f4d;
  transform: translateY(-2px);
  box-shadow: 0 5px 18px rgba(1, 41, 112, 0.4);
}

.submit:active,
.btn.btn-primary:active,
input[type="submit"]:active {
  transform: translateY(0);
}

/* Cancel Reply Link */
#cancel-comment-reply-link {
  color: #012970;
  text-decoration: none;
  font-size: 14px;
  margin-left: 15px;
}

#cancel-comment-reply-link:hover {
  text-decoration: underline;
}

/* No Comments */
.no-comments,
.nocomments {
  padding: 40px;
  text-align: center;
  background: #f8f9fa;
  border-radius: 10px;
  color: #6c757d;
  font-size: 16px;
}

/* ===================================
   Responsive
   =================================== */

@media (max-width: 768px) {

  .comment,
  li.comment {
    padding: 15px;
  }

  .comment-body {}

  .comment-author img.avatar {
    width: 45px !important;
    height: 45px !important;
  }

  .children .comment-author img.avatar {
    width: 40px !important;
    height: 40px !important;
  }

  .children {
    padding-left: 15px;
  }

  .comments-count,
  .comments-title,
  #reply-title {
    font-size: 22px;
  }
}

@media (max-width: 576px) {

  .blog-comments.section,
  .comment-form.section,
  #comments,
  #respond {
    padding: 40px 0;
  }

  .comment,
  li.comment {
    padding: 12px;
  }

  .comment-author img.avatar {
    width: 40px !important;
    height: 40px !important;
  }

  .children .comment-author img.avatar {
    width: 36px !important;
    height: 36px !important;
  }

  .children {
    padding-left: 12px;
  }

  .comment-navigation {
    flex-direction: column;
  }

  .comment-author .fn,
  .comment-author .fn a {
    font-size: 15px;
  }
}



/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widgets-container {
  background-color: var(--surface-color);
  padding: 30px;
  margin: 60px 0 30px 0;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.widget-title {
  color: var(--heading-color);
  font-size: 20px;
  font-weight: 700;
  padding: 0;
  margin: 0 0 20px 0;
}

.widget-item {
  margin-bottom: 40px;
}

.widget-item:last-child {
  margin-bottom: 0;
}

.search-widget form {
  background: var(--background-color);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 70%);
  padding: 3px 10px;
  position: relative;
  transition: 0.3s;
}

.search-widget form input[type=text] {
  border: 0;
  padding: 4px;
  border-radius: 4px;
  width: calc(100% - 40px);
  background-color: var(--background-color);
  color: var(--default-color);
}

.search-widget form input[type=text]:focus {
  outline: none;
}

.search-widget form button {
  background: var(--accent-color);
  color: var(--contrast-color);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  border: 0;
  font-size: 16px;
  padding: 0 15px;
  margin: -1px;
  transition: 0.3s;
  border-radius: 0 4px 4px 0;
  line-height: 0;
}

.search-widget form button i {
  line-height: 0;
}

.search-widget form button:hover {
  background: color-mix(in srgb, var(--accent-color), transparent 20%);
}

.search-widget form:is(:focus-within) {
  border-color: var(--accent-color);
}

.categories-widget ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.categories-widget ul li {
  padding-bottom: 10px;
}

.categories-widget ul li:last-child {
  padding-bottom: 0;
}

.categories-widget ul a {
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  transition: 0.3s;
}

.categories-widget ul a:hover {
  color: var(--accent-color);
}

.categories-widget ul a span {
  padding-left: 5px;
  color: color-mix(in srgb, var(--default-color), transparent 50%);
  font-size: 14px;
}

.recent-posts-widget .post-item {
  display: flex;
  margin-bottom: 15px;
}

.recent-posts-widget .post-item:last-child {
  margin-bottom: 0;
}

.recent-posts-widget .post-item img {
  width: 80px;
  margin-right: 15px;
}

.recent-posts-widget .post-item h4 {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 5px;
}

.recent-posts-widget .post-item h4 a {
  color: var(--default-color);
  transition: 0.3s;
}

.recent-posts-widget .post-item h4 a:hover {
  color: var(--accent-color);
}

.recent-posts-widget .post-item time {
  display: block;
  font-style: italic;
  font-size: 14px;
  color: color-mix(in srgb, var(--default-color), transparent 50%);
}

.tags-widget {
  margin-bottom: -10px;
}

.tags-widget ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.tags-widget ul li {
  display: inline-block;
}

.tags-widget ul a {
  color: color-mix(in srgb, var(--default-color), transparent 30%);
  font-size: 14px;
  padding: 6px 14px;
  margin: 0 6px 8px 0;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 60%);
  display: inline-block;
  transition: 0.3s;
}

.tags-widget ul a:hover {
  background: var(--accent-color);
  color: var(--contrast-color);
  border: 1px solid var(--accent-color);
}

.tags-widget ul a span {
  padding-left: 5px;
  color: color-mix(in srgb, var(--default-color), transparent 60%);
  font-size: 14px;
}


/*--------------------------------------------------------------
# About Us Page Start styles
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# about Section
--------------------------------------------------------------*/

/*.about-page .slider-area {*/
/*  background: linear-gradient(to bottom, #00429b, #00429b, #00429b, #012970, #012970);*/
/*  background-size: cover;*/
/*  background-position: center center;*/
/*  background-repeat: no-repeat;*/
/*  height: 900px;*/
/*  position: relative;*/
/*}*/

/*.about-page .slider-area .wave {*/
/*  position: absolute;*/
/*  bottom: -30px;*/
/*  width: 100%;*/
/*}*/

/*.about-page .single-slider-box {*/
/*  position: relative;*/
/*  z-index: 10;*/
/*}*/

/*.about-page .slider-img {*/
/*  margin: -4px 15px 0 0;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: flex-start;*/
/*  align-content: center;*/
/*  flex-wrap: wrap;*/
/*  margin-top: 20px;*/
/*}*/

/*.about-page .slider-img img {*/
/*  margin-right: 10px;*/

/*}*/

/*.about-page .slider-text h2 {*/
/*  font-size: 16px;*/
/*  font-weight: 600;*/
/*  color: #fff;*/
/*  text-transform: uppercase;*/
/*}*/

/*.about-page .slide-title h1 {*/
/*  font-size: 35px;*/
/*  font-weight: 600;*/
/*  color: #fff;*/
/*  line-height: 35px;*/
/*  margin-top: 10px;*/
/*}*/

/*.about-page .slide-title p {*/
/*  font-size: 16px;*/
/*  font-weight: 400;*/
/*  color: #fff;*/
/*  font-family: "Rubik", sans-serif;*/
/*  margin: 0 0 35px 0;*/
/*}*/

/*.about-page .slider-box {*/
/*  position: relative;*/
/*}*/



/*.about-page .shap-img {*/
/*  position: absolute;*/
/*  top: -93px;*/
/*  right: 120px;*/
/*}*/

/*.about-page .shaps-img {*/
/*  position: absolute;*/
/*  top: -112px;*/
/*  left: 125px;*/
/*}*/

/*.about-page .shapes-imge {*/
/*  position: absolute;*/
/*  top: 10px;*/
/*  left: -95px;*/
/*}*/





/* bounce-animate */
/*.about-page .bounce-animate {*/
/*  animation-name: float-bob;*/
/*  animation-duration: 2s;*/
/*  animation-iteration-count: infinite;*/
/*  animation-timing-function: linear;*/
/*  -moz-animation-name: float-bob;*/
/*  -moz-animation-duration: 2s;*/
/*  -moz-animation-iteration-count: infinite;*/
/*  -moz-animation-timing-function: linear;*/
/*  -ms-animation-name: float-bob;*/
/*  -ms-animation-duration: 2s;*/
/*  -ms-animation-iteration-count: infinite;*/
/*  -ms-animation-timing-function: linear;*/
/*  -o-animation-name: float-bob;*/
/*  -o-animation-duration: 2s;*/
/*  -o-animation-iteration-count: infinite;*/
/*  -o-animation-timing-function: linear;*/
/*}*/

/*@-webkit-keyframes float-bob {*/
/*  0% {*/
/*    -webkit-transform: translateY(-30px);*/
/*    transform: translateY(-30px);*/
/*  }*/

/*  50% {*/
/*    -webkit-transform: translateY(-15px);*/
/*    transform: translateY(-15px);*/
/*  }*/

/*  100% {*/
/*    -webkit-transform: translateY(-30px);*/
/*    transform: translateY(-30px);*/
/*  }*/
/*}*/


/* rotateme*/
/*.about-page .rotateme {*/
/*  -webkit-animation-name: rotateme;*/
/*  animation-name: rotateme;*/
/*  -webkit-animation-duration: 20s;*/
/*  animation-duration: 20s;*/
/*  -webkit-animation-iteration-count: infinite;*/
/*  animation-iteration-count: infinite;*/
/*  -webkit-animation-timing-function: linear;*/
/*  animation-timing-function: linear;*/
/*}*/

/*@keyframes rotateme {*/
/*  from {*/
/*    -webkit-transform: rotate(0deg);*/
/*    transform: rotate(0deg);*/
/*  }*/

/*  to {*/
/*    -webkit-transform: rotate(360deg);*/
/*    transform: rotate(360deg);*/
/*  }*/
/*}*/

/*.about-page .macbook {*/
/*  padding: 4% 6%;*/
/*  margin: 0 auto;*/
/*  max-width: 800px;*/
/*}*/

/*.about-page .screen {*/
/*  background: #000;*/
/*  border-radius: 3% 3% 0.5% 0.5% / 5%;*/
/*  margin: 0 auto;*/
  /* for aspect ratio */
/*  position: relative;*/
/*  width: 80%;*/
/*}*/

/*.about-page .screen:before {*/
/*  border: 2px solid #cacacc;*/
/*  border-radius: 3% 3% 0.5% 0.5% / 5%;*/
/*  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.8) inset, 0 0 1px 2px rgba(255, 255, 255, 0.3) inset;*/
/*  content: "";*/
/*  display: block;*/
  /* for aspect ratio ~67:100 */
/*  padding-top: 67%;*/
/*}*/

/*.about-page .screen:after {*/
/*  content: "";*/
/*  border-top: 2px solid rgba(255, 255, 255, 0.15);*/
/*  position: absolute;*/
/*  bottom: 0.75%;*/
/*  left: 0.5%;*/
/*  padding-top: 1%;*/
/*  width: 99%;*/
/*}*/

/*.about-page .viewport {*/
/*  position: absolute;*/
/*  bottom: 0;*/
/*  left: 0;*/
/*  right: 0;*/
/*  top: 0;*/
/*      margin: 2.3% 2.2%;*/
/*    border-radius: 8px;*/
/*  background: #333;*/
/*}*/

/*.about-page .base {*/
  /* for aspect ratio */
/*  position: relative;*/
/*  width: 100%;*/
/*}*/

/*.about-page .base:before {*/
/*  content: "";*/
/*  display: block;*/
  /* for aspect ratio ~33:1000*/
/*  padding-top: 3.3%;*/
  /* stylin */
/*  background: linear-gradient(#eaeced, #edeef0 55%, #fff 55%, #8a8b8f 56%, #999ba0 61%, #4B4B4F 84%, #262627 89%, rgba(0, 0, 0, .01) 98%);*/
/*  border-radius: 0 0 10% 10%/ 0 0 50% 50%;*/
/*}*/

/*.about-page .base::after {*/
/*  background: linear-gradient(90deg, rgba(0, 0, 0, 0.5), rgba(255, 255, 255, 0.8) 0.5%, rgba(0, 0, 0, 0.4) 3.3%, transparent 15%, rgba(255, 255, 255, 0.8) 50%, transparent 85%, rgba(0, 0, 0, 0.4) 96.7%, rgba(255, 255, 255, 0.8) 99.5%, rgba(0, 0, 0, 0.5) 100%);*/
/*  content: "";*/
/*  height: 53%;*/
/*  position: absolute;*/
/*  top: 0;*/
/*  width: 100%;*/
/*}*/

/*.about-page .notch {*/
/*  background: #ddd;*/
/*  border-radius: 0 0 7% 7% / 0 0 95% 95%;*/
/*  box-shadow: -5px -1px 3px rgba(0, 0, 0, 0.2) inset, 5px -1px 3px rgba(0, 0, 0, 0.2) inset;*/
/*  margin-left: auto;*/
/*  margin-right: auto;*/
/*  margin-top: -3.5%;*/
/*  z-index: 2;*/
  /* for aspect ratio */
/*  position: relative;*/
/*  width: 14%;*/
/*}*/

/*.about-page .notch:before {*/
/*  content: "";*/
/*  display: block;*/
  /* for aspect ratio ~1:10 */
/*  padding-top: 10%;*/
/*}*/



/*.about-page .macbook .viewport {*/
/*  transition: background-position 20s linear;*/
/*  background-position: 0 0;*/
/*  background-size: 100% auto;*/
/*  overflow: hidden;*/
/*  cursor: pointer;*/
/*}*/

/*.about-page .macbook:hover .viewport {*/
/*  background-position: 0 100%;*/
/*}*/

/*.about-page .macbook .viewport:after {*/
/*  background: radial-gradient(circle at right bottom, transparent 75%, rgba(255, 255, 255, 0.05) 75%, transparent);*/
/*  bottom: 0;*/
/*  content: "";*/
/*  left: 0;*/
/*  position: absolute;*/
/*  right: 0;*/
/*  top: 0;*/
/*}*/



/* ========================================
   NMA Modern About Section Styles
   ======================================== */

/* Main Section */
.nma-about-section {
  overflow: hidden;
   position: relative;
}

/* Particles Background */


.nma-wave-wrapper {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  opacity: 0.1;
}

.nma-wave {
  width: 100%;
  height: auto;
}

.nma-about-section .container {
  position: relative;
  z-index: 2;
}

/* Background Elements */
.nma-bg-elements {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
  pointer-events: none;
}

.nma-gradient-1 {
  position: absolute;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(1, 41, 112, 0.08) 0%, transparent 70%);
  top: -200px;
  right: -200px;
  border-radius: 50%;
}

.nma-gradient-2 {
  position: absolute;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(16, 216, 118, 0.06) 0%, transparent 70%);
  bottom: -150px;
  left: -150px;
  border-radius: 50%;
}

/* ========== Image Column ========== */
.nma-image-wrapper {
  position: relative;
  padding: 40px 20px;
  min-height: 500px;
}

/* Main Device Frame */
.nma-main-device {
  position: relative;
  z-index: 3;
}

.nma-device-frame {
  position: relative;
  background: linear-gradient(145deg, #1a1a2e 0%, #16213e 100%);
  border-radius: 20px;
  padding: 15px;
  box-shadow: 
    0 25px 50px rgba(1, 41, 112, 0.2),
    0 10px 20px rgba(0, 0, 0, 0.15),
    inset 0 -2px 8px rgba(255, 255, 255, 0.1);
  transition: transform 0.4s ease;
}

.nma-device-frame:hover {
  transform: translateY(-10px) scale(1.02);
}

.nma-screen {
  position: relative;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
  aspect-ratio: 16/10;
  box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.5);
}

.nma-screen-img {
  width: 100%;
  height: 700%;
  object-fit: cover;
  display: block;
  transition: transform 20s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform: translateY(0);
}

.nma-device-frame:hover .nma-screen-img {
  transform: translateY(-85.5%);
}

.nma-device-base {
  width: 120%;
  height: 8px;
  background: linear-gradient(to bottom, #2a2a3e 0%, #1a1a2e 100%);
  margin: 10px auto 0;
  border-radius: 0 0 15px 15px;
  position: relative;
  left: -10%;
}

/* Floating Shapes */
.nma-floating-shapes {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
}

.nma-shape {
  position: absolute;
  animation: nmaFloat 6s ease-in-out infinite;
}

.nma-shape img {
  width: 100%;
  height: auto;
  filter: drop-shadow(0 10px 20px rgba(1, 41, 112, 0.15));
}

.nma-shape-1 {
  width: 80px;
  top: 10%;
  right: -20px;
  animation-delay: 0s;
}

.nma-shape-2 {
  width: 100px;
  bottom: 15%;
  left: -30px;
  animation-delay: 1s;
  animation-duration: 8s;
}

.nma-shape-3 {
  width: 60px;
  top: 50%;
  right: 10%;
  animation-delay: 2s;
  animation-duration: 7s;
}

@keyframes nmaFloat {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-20px) rotate(5deg);
  }
}

/* Decoration Background */
.nma-decoration-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}

.nma-circle-1,
.nma-circle-2 {
  position: absolute;
  border-radius: 50%;
  opacity: 0.4;
}

.nma-circle-1 {
  width: 300px;
  height: 300px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.1) 0%, rgba(16, 216, 118, 0.1) 100%);
  top: -50px;
  left: -50px;
  animation: nmaPulse 4s ease-in-out infinite;
}

.nma-circle-2 {
  width: 200px;
  height: 200px;
  background: linear-gradient(135deg, rgba(16, 216, 118, 0.08) 0%, rgba(1, 41, 112, 0.08) 100%);
  bottom: 50px;
  right: 30px;
  animation: nmaPulse 5s ease-in-out infinite;
}

@keyframes nmaPulse {
  0%, 100% {
    transform: scale(1);
    opacity: 0.3;
  }
  50% {
    transform: scale(1.1);
    opacity: 0.5;
  }
}

.nma-dots {
  position: absolute;
  width: 100px;
  height: 100px;
  top: 30%;
  right: 10%;
  background-image: radial-gradient(circle, #012970 2px, transparent 2px);
  background-size: 15px 15px;
  opacity: 0.2;
}

/* ========== Content Column ========== */
.nma-content-wrapper {
  padding: 20px 40px;
}

/* Section Badge */
.nma-section-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.08) 0%, rgba(16, 216, 118, 0.08) 100%);
  padding: 10px 25px;
  border-radius: 50px;
  margin-bottom: 20px;
  border: 2px solid rgba(1, 41, 112, 0.1);
}

.nma-badge-icon {
  width: 24px;
  height: 24px;
  margin-bottom: 0;
  animation: nmaRotate 3s linear infinite;
}

/*@keyframes nmaRotate {*/
/*  from { transform: rotate(0deg); }*/
/*  to { transform: rotate(360deg); }*/
/*}*/

.nma-badge-text {
  font-size: 14px;
  font-weight: 600;
  color: #012970;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Main Heading */
.nma-main-heading {
  font-size: 48px;
  font-weight: 800;
  color: #012970;
  line-height: 1.2;
  margin-bottom: 25px;
  position: relative;
  display: inline-block;
}

.nma-main-heading::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 80px;
  height: 4px;
  background: linear-gradient(90deg, #012970 0%, #10d876 100%);
  border-radius: 2px;
}
.nma-content-wrapper h2 {
    font-size: 24px;
}

/* Description */
.nma-description {
  font-size: 17px;
  line-height: 1.8;
  color: #000;
  margin-bottom: 30px;
}

.nma-description p {
  margin-bottom: 15px;
}

.nma-description p:last-child {
  margin-bottom: 0;
}

/* Features List */
.nma-features-list {
  margin-bottom: 35px;
}

.nma-features-list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.nma-features-list li {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 12px 0;
  font-size: 16px;
  color: #2c3e50;
  transition: transform 0.3s ease;
}

.nma-features-list li:hover {
  transform: translateX(5px);
}

.nma-features-list li i {
  font-size: 20px;
  color: #10d876;
  flex-shrink: 0;
}

/* CTA Buttons */
.nma-cta-wrapper {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

.nma-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  color: #ffffff;
  padding: 16px 35px;
  border-radius: 50px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 
    0 8px 20px rgba(1, 41, 112, 0.25),
    0 2px 8px rgba(1, 41, 112, 0.15);
  position: relative;
  overflow: hidden;
}

.nma-btn-primary::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  transform: translate(-50%, -50%);
  transition: width 0.6s, height 0.6s;
}

.nma-btn-primary:hover::before {
  width: 300px;
  height: 300px;
}

.nma-btn-primary:hover {
  transform: translateY(-3px);
  box-shadow: 
    0 12px 30px rgba(1, 41, 112, 0.35),
    0 4px 12px rgba(1, 41, 112, 0.2);
  color: #ffffff;
}

.nma-btn-text {
  position: relative;
  z-index: 1;
}

.nma-btn-icon {
  position: relative;
  z-index: 1;
  transition: transform 0.3s ease;
}

.nma-btn-primary:hover .nma-btn-icon {
  transform: translateX(5px);
}

.nma-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #012970;
  padding: 16px 30px;
  border-radius: 50px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border: 2px solid #012970;
  transition: all 0.3s ease;
}

.nma-btn-secondary:hover {
  background: #012970;
  color: #ffffff;
  transform: translateY(-2px);
}

/* Stats Cards */
.nma-stats-wrapper {
  padding-top: 20px;
}

.nma-stat-card {
  text-align: center;
  padding: 20px 15px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.05) 0%, rgba(16, 216, 118, 0.05) 100%);
  border-radius: 15px;
  margin-bottom: 20px;
  transition: all 0.3s ease;
  border: 2px solid transparent;
}

.nma-stat-card:hover {
  transform: translateY(-5px);
  border-color: rgba(1, 41, 112, 0.2);
  box-shadow: 0 10px 25px rgba(1, 41, 112, 0.1);
}

.nma-stat-number {
  font-size: 36px;
  font-weight: 800;
  color: #012970;
  margin: 0 0 5px 0;
}

.nma-stat-label {
  font-size: 14px;
  color: #5a6c7d;
  margin: 0;
  font-weight: 500;
}

/* Responsive Styles */
@media (max-width: 1199px) {
  .nma-main-heading {
    font-size: 42px;
  }
  
  .nma-content-wrapper {
    padding: 20px 20px;
  }
}

@media (max-width: 991px) {
  .nma-about-section {
    
  }
  
  .nma-image-wrapper {
    margin-bottom: 50px;
    min-height: auto;
  }
  
  .nma-main-heading {
    font-size: 36px;
  }
  
  .nma-description {
    font-size: 16px;
  }
  
  .nma-content-wrapper {
    padding: 0 15px;
  }
}

@media (max-width: 767px) {
  .nma-about-section {
  
  
  }
  
  .nma-main-heading {
    font-size: 32px;
  }
  
  .nma-cta-wrapper {
    flex-direction: column;
    align-items: stretch;
  }
  
  .nma-btn-primary,
  .nma-btn-secondary {
    justify-content: center;
    width: 100%;
  }
  
  .nma-stat-card {
    margin-bottom: 15px;
  }
  
  .nma-shape-1,
  .nma-shape-2,
  .nma-shape-3 {
    width: 50px;
  }
}

@media (max-width: 576px) {
  .nma-main-heading {
    font-size: 28px;
  }
  
  .nma-description {
    font-size: 15px;
  }
  
  .nma-features-list li {
    font-size: 15px;
  }
  
  .nma-image-wrapper {
    padding: 20px 10px;
  }
}
/*--------------------------------------------------------------
# Our About
--------------------------------------------------------------*/


/*.about-page .services-card-item-style3 {*/
/*  border: 1px solid #e1e1e1;*/
/*  position: relative;*/
/*  z-index: 1;*/
/*  padding: 50px 30px;*/
/*  padding-top: 50px;*/
/*  padding-right: 25px;*/
/*  z-index: 1;*/
/*  overflow: hidden;*/
/*  height: 100%;*/
/*  transition: all 0.3s ease-out 0s;*/
/*}*/

/*.about-page .services-card-item-style3 .services__shape-1 {*/
/*  position: absolute;*/
/*  top: -40px;*/
/*  right: 0;*/
/*  visibility: hidden;*/
/*  opacity: 0;*/
/*  z-index: 111;*/
/*}*/

/*.about-page .services-card-item-style3 .services__shape-2 {*/
/*  position: absolute;*/
/*  top: 0;*/
/*  right: -30px;*/
/*  visibility: hidden;*/
/*  opacity: 0;*/
/*  z-index: 11;*/
/*}*/

/*.about-page .services-card-item-style3 .icon {*/
/*  margin-bottom: 25px;*/
/*}*/

/*.about-page .services-card-item-style3 .icon i {*/
/*  font-size: 45px;*/
/*  color: #012970;*/
/*  line-height: 1.1;*/
/*}*/

/*.about-page .services-card-item-style3 .content h2 {*/
/*  font-size: 22px;*/
/*  margin-bottom: 1rem;*/
/*}*/

/*.about-page .services-card-item-style3 .content p {*/
/*  margin-bottom: 20px;*/
/*  font-size: 16px;*/
/*}*/

/*.about-page .services-card-item-style3:hover {*/
/*  background: linear-gradient(to bottom, #012970, #012970, #012970, #00429b, #00429b);*/
/*  border-color: #012970;*/
/*}*/

/*.about-page .services-card-item-style3:hover .services__shape-1 {*/
/*  top: 0;*/
/*  visibility: visible;*/
/*  opacity: 1;*/
/*}*/

/*.about-page .services-card-item-style3:hover .services__shape-2 {*/
/*  right: 0;*/
/*  visibility: visible;*/
/*  opacity: 1;*/
/*}*/

/*.about-page .services-card-item-style3:hover .icon i,*/
/*.about-page .services-card-item-style3:hover .content h2,*/
/*.about-page .services-card-item-style3:hover .content p {*/
/*  color: #fff;*/
/*}*/

/*.about-page .services-card-item-style3.active {*/
/*  background: linear-gradient(to bottom, #012970, #012970, #012970, #00429b, #00429b);*/
/*  border-color: #012970;*/
/*}*/

/*.about-page .services-card-item-style3.active .services__shape-1 {*/
/*  top: 0;*/
/*  visibility: visible;*/
/*  opacity: 1;*/
/*}*/

/*.about-page .services-card-item-style3.active .services__shape-2 {*/
/*  right: 0;*/
/*  visibility: visible;*/
/*  opacity: 1;*/
/*}*/

/*.about-page .services-card-item-style3.active .icon i,*/
/*.about-page .services-card-item-style3.active .content h2,*/
/*.about-page .services-card-item-style3.active .content p {*/
/*  color: #fff;*/
/*}*/


/* ========================================
   Our Story Section - Enhanced Light Design
   Main Color: #012970
   ======================================== */

.our-story-section {
  position: relative;
  background: #ffffff;
  overflow: hidden;
}

.our-story-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.our-story-grid {
  position: relative;
  z-index: 1;
}

/* ========================================
   Story Card - Clean & Bright Design
   ======================================== */

.story-card {
  position: relative;
  background: #ffffff;
  border-radius: 20px;
  padding: 40px 32px;
  height: 100%;
  min-height: 400px;
  display: flex;
  flex-direction: column;
  box-shadow: 
    0 1px 3px rgba(1, 41, 112, 0.06),
    0 8px 30px rgba(1, 41, 112, 0.08);
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
  overflow: hidden;
  border: 1px solid rgba(1, 41, 112, 0.08);
}

.story-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #012970 0%, #1e88e5 100%);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.5s ease;
}

.story-card:hover {
  transform: translateY(-8px);
  box-shadow: 
    0 4px 10px rgba(1, 41, 112, 0.1),
    0 15px 40px rgba(1, 41, 112, 0.15);
  border-color: rgba(1, 41, 112, 0.12);
}

.story-card:hover::before {
  transform: scaleX(1);
}

/* ========================================
   Decorative Shapes - Light & Subtle
   ======================================== */

.story-card__shapes {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0.35;
  transition: opacity 0.4s ease;
  z-index: 0;
}

.story-card:hover .story-card__shapes {
  opacity: 0.5;
}

.shape-circle {
  position: absolute;
  top: -30px;
  right: -30px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: linear-gradient(135deg, 
    rgba(1, 41, 112, 0.06) 0%, 
    rgba(30, 136, 229, 0.08) 100%);
  transition: all 0.6s ease;
}

.story-card:hover .shape-circle {
  transform: scale(1.2) rotate(45deg);
  background: linear-gradient(135deg, 
    rgba(1, 41, 112, 0.08) 0%, 
    rgba(30, 136, 229, 0.12) 100%);
}

.shape-dots {
  position: absolute;
  bottom: 20px;
  left: 20px;
  width: 60px;
  height: 60px;
  background-image: radial-gradient(
    circle, 
    rgba(1, 41, 112, 0.12) 2px, 
    transparent 2px
  );
  background-size: 12px 12px;
  transition: all 0.6s ease;
  opacity: 0.5;
}

.story-card:hover .shape-dots {
  transform: scale(1.1) rotate(10deg);
  opacity: 0.7;
}

/* ========================================
   Icon Section - Modern & Clean
   ======================================== */

.story-card__icon {
  position: relative;
  width: 72px;
  height: 72px;
  margin-bottom: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #012970 0%, #1565c0 100%);
  border-radius: 16px;
  box-shadow: 
    0 6px 20px rgba(1, 41, 112, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.15);
  transition: all 0.4s ease;
  z-index: 2;
}

.story-card__icon::after {
  content: '';
  position: absolute;
  inset: -2px;
  background: linear-gradient(135deg, #012970, #1e88e5);
  border-radius: 18px;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.story-card:hover .story-card__icon {
  transform: scale(1.1) rotate(-3deg);
  box-shadow: 
    0 10px 28px rgba(1, 41, 112, 0.3),
    inset 0 2px 0 rgba(255, 255, 255, 0.2);
}

.story-card:hover .story-card__icon::after {
  opacity: 1;
}

.story-card__icon i {
  font-size: 32px;
  color: #ffffff;
  transition: all 0.3s ease;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.15));
}

.story-card:hover .story-card__icon i {
  transform: scale(1.08);
}

/* ========================================
   Content Section - Clean Typography
   ======================================== */

.story-card__content {
  position: relative;
  z-index: 2;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.story-card__title {
  font-size: 24px;
  font-weight: 700;
  color: #012970;
  margin-bottom: 20px;
  line-height: 1.4;
  letter-spacing: -0.3px;
  transition: all 0.3s ease;
  position: relative;
  padding-bottom: 12px;
}

.story-card__title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 45px;
  height: 2.5px;
  background: #012970;
  border-radius: 2px;
  transition: all 0.4s ease;
}

.story-card:hover .story-card__title {
  color: #1565c0;
  transform: translateX(3px);
}

.story-card:hover .story-card__title::after {
  width: 70px;
  background: linear-gradient(90deg, #012970 0%, #1e88e5 100%);
}

/* ========================================
   Description Content - Readable & Clean
   ======================================== */

.story-card__description {
  font-size: 15px;
  line-height: 1.8;
  color: #475569;
  flex-grow: 1;
  position: relative;
}

.story-card__description p {
  margin-bottom: 15px;
  line-height: 1.8;
  color: #475569;
}

.story-card__description p:last-child {
  margin-bottom: 0;
}


.story-card__description p {
  text-align: left;
}

/* ========================================
   List Styling - Clean Bullets
   ======================================== */

.story-card__description ul,
.story-card__description ol {
  margin: 18px 0;
  padding-left: 0;
  list-style: none;
}

.story-card__description ul li,
.story-card__description ol li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 12px;
  color: #475569;
  line-height: 1.75;
  transition: all 0.3s ease;
}

.story-card__description ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 7px;
  height: 7px;
  background: #012970;
  border-radius: 50%;
  transition: all 0.3s ease;
}

.story-card:hover .story-card__description ul li::before {
  transform: scale(1.25);
  box-shadow: 0 0 0 3px rgba(1, 41, 112, 0.08);
}

.story-card__description ul li:hover {
  color: #012970;
  transform: translateX(4px);
}

.story-card__description p strong {
  color: #012970;
  font-weight: 700;
  display: block;
  margin-bottom: 10px;
  font-size: 15.5px;
}

/* ========================================
   Hover Overlay - Subtle Light Effect
   ======================================== */

.story-card__overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
  background: linear-gradient(
    to top, 
    rgba(1, 41, 112, 0.02) 0%, 
    transparent 100%
  );
  transition: height 0.4s ease;
  pointer-events: none;
  z-index: 1;
}

.story-card:hover .story-card__overlay {
  height: 100%;
}

/* ========================================
   No Content Message
   ======================================== */

.no-content-message {
  font-size: 17px;
  color: #94a3b8;
  padding: 70px 20px;
  text-align: center;
  font-weight: 500;
}

/* ========================================
   Scrollable Content
   ======================================== */

.story-card__description {
  max-height: 260px;
  overflow-y: auto;
  padding-right: 8px;
}

.story-card__description::-webkit-scrollbar {
  width: 5px;
}

.story-card__description::-webkit-scrollbar-track {
  background: rgba(1, 41, 112, 0.04);
  border-radius: 10px;
}

.story-card__description::-webkit-scrollbar-thumb {
  background: #012970;
  border-radius: 10px;
  transition: background 0.3s ease;
}

.story-card__description::-webkit-scrollbar-thumb:hover {
  background: #1565c0;
}

/* ========================================
   Checklist Style
   ======================================== */

.story-card__description ul.checklist li::before {
  content: '✓';
  width: 22px;
  height: 22px;
  background: #012970;
  color: #ffffff;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: bold;
  top: 1px;
}

.story-card:hover .story-card__description ul.checklist li::before {
  transform: scale(1.08);
  box-shadow: 0 3px 10px rgba(1, 41, 112, 0.2);
}

/* ========================================
   Better Text Styling
   ======================================== */

.story-card__description p + p {
  margin-top: 13px;
}

.story-card__description strong,
.story-card__description b {
  color: #012970;
  font-weight: 700;
}

.story-card:hover .story-card__description strong {
  color: #1565c0;
}

.story-card__description p + ul,
.story-card__description p + ol {
  margin-top: 16px;
}

.story-card__description li + li {
  margin-top: 9px;
}

.story-card__description a {
  color: #012970;
  text-decoration: none;
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
  font-weight: 600;
}

.story-card__description a:hover {
  color: #1e88e5;
  border-bottom-color: #1e88e5;
}

.story-card__description blockquote {
  border-left: 3px solid #012970;
  padding-left: 18px;
  margin: 18px 0;
  font-style: italic;
  color: #64748b;
}

/* ========================================
   Responsive Design
   ======================================== */

@media (max-width: 1199px) {
  .story-card {
    padding: 36px 28px;
    min-height: 360px;
  }
  
  .story-card__icon {
    width: 68px;
    height: 68px;
    margin-bottom: 24px;
  }
  
  .story-card__icon i {
    font-size: 30px;
  }
  
  .story-card__title {
    font-size: 22px;
    margin-bottom: 18px;
  }
  
  .story-card__description {
    font-size: 14.5px;
  }
}

@media (max-width: 991px) {
  .our-story-section {
    padding: 80px 0;
  }
  
  .story-card {
    padding: 34px 26px;
    min-height: 340px;
    margin-bottom: 28px;
  }
  
  .story-card__icon {
    width: 64px;
    height: 64px;
    margin-bottom: 22px;
  }
  
  .story-card__icon i {
    font-size: 28px;
  }
  
  .story-card__title {
    font-size: 21px;
    margin-bottom: 16px;
  }
  
  .story-card__description {
    font-size: 14px;
    line-height: 1.75;
  }
  
  .shape-circle {
    width: 110px;
    height: 110px;
    top: -25px;
    right: -25px;
  }
  
  .shape-dots {
    width: 55px;
    height: 55px;
  }
}

@media (max-width: 767px) {
  .our-story-section {
    padding: 60px 0;
  }
  
  .story-card {
    padding: 32px 24px;
    min-height: 320px;
    margin-bottom: 24px;
  }
  
  .story-card__icon {
    width: 60px;
    height: 60px;
    margin-bottom: 20px;
    border-radius: 14px;
  }
  
  .story-card__icon i {
    font-size: 26px;
  }
  
  .story-card__title {
    font-size: 20px;
    margin-bottom: 14px;
    padding-bottom: 10px;
  }
  
  .story-card__title::after {
    width: 38px;
    height: 2px;
  }
  
  .story-card__description {
    font-size: 13.5px;
    line-height: 1.7;
  }
  
  .story-card__description ul li {
    padding-left: 26px;
    margin-bottom: 11px;
  }
  
  .story-card__description ul li::before {
    top: 7px;
    width: 6px;
    height: 6px;
  }
  
  .shape-circle {
    width: 100px;
    height: 100px;
    top: -22px;
    right: -22px;
  }
  
  .shape-dots {
    width: 50px;
    height: 50px;
    bottom: 18px;
    left: 18px;
  }
}

@media (max-width: 575px) {
  .our-story-section {
    padding: 50px 0;
  }
  
  .story-card {
    padding: 28px 20px;
    min-height: 300px;
    border-radius: 18px;
  }
  
  .story-card__icon {
    width: 56px;
    height: 56px;
    margin-bottom: 18px;
    border-radius: 12px;
  }
  
  .story-card__icon i {
    font-size: 24px;
  }
  
  .story-card__title {
    font-size: 18px;
    margin-bottom: 12px;
  }
  
  .story-card__description {
    font-size: 13px;
    line-height: 1.65;
  }
  
  .story-card__description ul li {
    padding-left: 24px;
    margin-bottom: 9px;
  }
}

/* ========================================
   Animation Enhancements
   ======================================== */

.story-card {
  animation: cardEntrance 0.5s ease-out backwards;
}

@keyframes cardEntrance {
  from {
    opacity: 0;
    transform: translateY(25px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.col-lg-4:nth-child(1) .story-card {
  animation-delay: 0.1s;
}

.col-lg-4:nth-child(2) .story-card {
  animation-delay: 0.2s;
}

.col-lg-4:nth-child(3) .story-card {
  animation-delay: 0.3s;
}

/* ========================================
   Accessibility
   ======================================== */

.story-card:focus-within {
  outline: 2px solid rgba(1, 41, 112, 0.3);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  .story-card,
  .story-card__icon,
  .story-card__title,
  .shape-circle,
  .shape-dots {
    animation: none;
    transition: none;
  }
}

/* ========================================
   Print Styles
   ======================================== */

@media print {
  .story-card {
    break-inside: avoid;
    box-shadow: none;
    border: 1px solid #012970;
    page-break-inside: avoid;
  }
  
  .story-card__shapes,
  .story-card__overlay {
    display: none;
  }
  
  .story-card__icon {
    background: #012970 !important;
    box-shadow: none;
  }
  
  .story-card__title {
    color: #012970 !important;
  }
  
  .story-card__description {
    max-height: none !important;
    overflow: visible !important;
  }
}

/*--------------------------------------------------------------
# Our Process
--------------------------------------------------------------*/
.ct-tab-image-left .nav.nav-tabs {
  border: none !important;
}

.ct-tab-image-left .nav.nav-tabs .nav-link {
  border: none !important;
  width: 100%;
  margin-right: 20px;
  background-color: transparent !important;
  transition: all 0.3s ease-out 0s;
}

@media (min-width: 992px) {
  .ct-tab-image-left .nav.nav-tabs .nav-link {
    margin-right: 20px;
  }
}

.ct-tab-image-left .nav.nav-tabs .nav-link.active .nav-item-signle {
  -webkit-box-shadow: 0px 10px 50px rgba(11, 23, 40, 0.1);
  box-shadow: 0px 10px 50px rgba(11, 23, 40, 0.1);
  border-color: #012970;
  background-color: #ffffff;
  transition: all 0.3s ease-out 0s;
}

.ct-tab-image-left .nav.nav-tabs .nav-link .nav-item-signle {
  margin-bottom: 15px;
  border: 1px solid #e1e1e1;
  border-radius: 5px;
  padding: 20px;
  display: flex;
  cursor: pointer;
  transition: all 0.3s ease-out 0s;
}

.ct-tab-image-left .nav.nav-tabs .nav-link .nav-item-signle {
  margin-bottom: 15px;
  border: 1px solid #e1e1e1;
  border-radius: 5px;
  padding: 20px;
  display: flex;
  cursor: pointer;
}

.ct-tab-image-left .nav.nav-tabs .nav-link.active .nav-item-signle .number span {
  color: #012970;
  border-color: #012970;
}

.ct-tab-image-left .nav.nav-tabs .nav-link .nav-item-signle .number span {
  margin-right: 15px;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #e1e1e1;
  font-size: 18px;
  border-radius: 50%;
  color: #012970;
  transition: all 0.3s ease-out 0s;
}

.ct-tab-image-left .nav.nav-tabs .nav-link .nav-item-signle .content h4 {
  font-size: 22px;
  margin-bottom: 10px;
  font-weight: 600;
  color: #012970;
}



/* ============================================
   Enhanced Process Section Styles - #012970 Theme
   ============================================ */

.ct-tab-image-section-full {
  position: relative;
  background: #ffffff;
  overflow: hidden;
}

/* Process Steps Wrapper */
.process-steps-wrapper {
  position: relative;
  padding: 20px 0;
}

.nav-pills {
  gap: 20px;
}

/* Step Card */
.process-step-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 30px;
  background: #ffffff;
  border: 2px solid #e8e8e8;
  border-radius: 16px;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.process-step-card:hover {
  border-color: #012970;
  box-shadow: 0 8px 24px rgba(1, 41, 112, 0.15);
  transform: translateX(8px);
}

.process-step-card.active {
  background: linear-gradient(135deg, #012970 0%, #01204a 100%);
  border-color: #012970;
  box-shadow: 0 12px 32px rgba(1, 41, 112, 0.3);
  transform: translateX(12px);
}

/* Step Number Badge */
.step-number-badge {
  position: relative;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.step-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  color: #1a1a1a;
  font-size: 24px;
  font-weight: 700;
  border-radius: 50%;
  transition: all 0.3s ease;
  border: 3px solid #e8e8e8;
}

.process-step-card:hover .step-number {
  background: linear-gradient(135deg, #e8f1ff 0%, #d4e5ff 100%);
  border-color: #012970;
  color: #012970;
  transform: scale(1.1) rotate(5deg);
}

.process-step-card.active .step-number {
  background: #ffffff;
  border-color: #ffffff;
  color: #012970;
  box-shadow: 0 4px 16px rgba(255, 255, 255, 0.3);
  transform: scale(1.15);
}

.step-line {
  width: 2px;
  height: 30px;
  background: #e8e8e8;
  margin-top: 10px;
  transition: all 0.3s ease;
}

.process-step-card.active .step-line {
  background: rgba(255, 255, 255, 0.5);
}

/* Step Content */
.step-content-text {
  flex: 1;
  min-width: 0;
}

.step-title {
  font-size: 20px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 8px 0;
  transition: color 0.3s ease;
}

.process-step-card.active .step-title {
  color: #ffffff;
}

.step-description {
  font-size: 14px;
  color: #666666;
  margin: 0;
  line-height: 1.6;
  transition: color 0.3s ease;
}

.process-step-card.active .step-description {
  color: rgba(255, 255, 255, 0.9);
}

/* Step Arrow */
.step-arrow {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8f9fa;
  border-radius: 50%;
  color: #666666;
  transition: all 0.3s ease;
}

.process-step-card:hover .step-arrow {
  background: #012970;
  color: #ffffff;
  transform: translateX(4px);
}

.process-step-card.active .step-arrow {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
  transform: translateX(6px);
}

/* Images Wrapper - Simple & Clean */
.process-images-wrapper {
  position: relative;
  height: 100%;
  min-height: 500px;
}

.process-image-container {
  position: relative;
  height: 100%;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(1, 41, 112, 0.1);
  background: #f8f9fa;
}

.process-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 16px;
}

/* Tab Pane Animation */
.tab-pane {
  animation-duration: 0.5s;
  animation-fill-mode: both;
}

.tab-pane.active {
  animation-name: simpleFadeIn;
}

@keyframes simpleFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Responsive Styles */
@media (max-width: 991px) {
  .process-steps-wrapper {
    margin-bottom: 40px;
  }

  .process-step-card {
    padding: 20px;
  }

  .step-number {
    width: 50px;
    height: 50px;
    font-size: 20px;
  }

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

  .process-images-wrapper {
    min-height: 400px;
  }
}

@media (max-width: 575px) {
  .process-step-card {
    flex-direction: column;
    text-align: center;
    padding: 20px;
  }

  .step-number-badge {
    width: 100%;
    margin-bottom: 15px;
  }

  .step-line {
    display: none;
  }

  .step-arrow {
    position: absolute;
    top: 20px;
    right: 20px;
  }

  .process-images-wrapper {
    min-height: 300px;
  }
}

/* Accessibility */
.process-step-card:focus {
  outline: 3px solid #012970;
  outline-offset: 2px;
}

.process-step-card:focus:not(:focus-visible) {
  outline: none;
}

/*--------------------------------------------------------------
# Services  Page Start styles
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# services Section
--------------------------------------------------------------*/
/* ========================================
   Contact Page Styles - Enhanced
   ======================================== */

/* Top Section with Background */
.services-page .mission-section.style2 {
  background: url(../img/p1.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 100px 0px 135px;
  position: relative;
}

.services-page .mission-section.style2::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.8) 0%, rgba(13, 71, 161, 0.7) 100%);
  z-index: 0;
}

.services-page .mission-section.style2 > * {
  position: relative;
  z-index: 1;
}

.services-page .mission-section.style2 h4 {
  color: #fff;
  font-size: 32px;
  font-weight: 600;
}

.services-page .mission-section.style2 p {
  color: #e1e1e1;
  font-size: 14px;
  margin-bottom: 0;
}
/* ========================================
   Contact Info Section - Modern Design
   ======================================== */
.services-page .techno-info-section {
  padding: 82px 0px 100px;
}

/* Section Heading */
.cis-heading {
  margin-bottom: 40px;
}

.cis-title {
  font-size: 36px;
  font-weight: 700;
  color: #0a1128;
  margin-bottom: 15px;
}

.cis-title span {
  color: #012970;
}

.cis-subtitle {
  font-size: 16px;
  color: #5a6c7d;
  margin-bottom: 0;
}

/* Info Card - Modern Card Style */
.cis-info-card {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 25px;
  background: #ffffff;
  border-radius: 16px;
  border: 2px solid #e8eef5;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  height: 100%;
}

/* Gradient Border Effect */
.cis-info-card::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 16px;
  padding: 2px;
  background: linear-gradient(135deg, #012970, #0d47a1);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.cis-info-card:hover::before {
  opacity: 1;
}

.cis-info-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 40px rgba(1, 41, 112, 0.15);
  border-color: transparent;
}

/* Card Icon - 3D Modern Style */
.cis-card-icon {
  flex-shrink: 0;
  width: 65px;
  height: 65px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.4s ease;
  box-shadow: 
    0 10px 25px rgba(0, 0, 0, 0.15),
    inset 0 -3px 10px rgba(0, 0, 0, 0.2),
    inset 0 3px 10px rgba(255, 255, 255, 0.2);
}

.cis-card-icon::before {
  content: '';
  position: absolute;
  inset: 6px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.3), transparent);
  border-radius: 10px;
  opacity: 0.6;
}

.cis-info-card:hover .cis-card-icon {
  transform: scale(1.1) rotate(-5deg);
  box-shadow: 
    0 15px 35px rgba(0, 0, 0, 0.2),
    inset 0 -3px 10px rgba(0, 0, 0, 0.3),
    inset 0 3px 10px rgba(255, 255, 255, 0.3);
}

.cis-card-icon i {
  font-size: 28px;
  color: #fff;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

/* Icon Colors - Gradients for Each Card Type */
.cis-phone .cis-card-icon {
  background: linear-gradient(135deg, #ff9a62 0%, #ff7b3d 100%);
}

.cis-email .cis-card-icon {
  background: linear-gradient(135deg, #2875ff 0%, #1a5cdb 100%);
}

.cis-location .cis-card-icon {
  background: linear-gradient(135deg, #54d7af 0%, #36b893 100%);
}

.cis-hours .cis-card-icon {
  background: linear-gradient(135deg, #f05d8a 0%, #d4456f 100%);
}

/* Card Content */
.cis-card-content {
  flex: 1;
  min-width: 0;
  z-index: 555;
  word-wrap: break-word;
}

.cis-card-title {
  font-size: 18px;
  font-weight: 700;
  color: #0a1128;
  margin: 0 0 10px 0;
  transition: color 0.3s ease;
}

.cis-info-card:hover .cis-card-title {
  color: #012970;
}

.cis-card-text {
  color: #5a6c7d;
  font-size: 14px;
  line-height: 1.8;
}

.cis-card-text a {
  display: block;
  color: #5a6c7d;
  text-decoration: none;
  transition: color 0.3s ease;
  margin-bottom: 5px;
}

.cis-card-text a:hover {
  color: #012970;
}

.cis-card-text p {
  margin: 0;
  line-height: 1.8;
}

/* Shine Effect */
.cis-info-card::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    45deg,
    transparent 30%,
    rgba(255, 255, 255, 0.2) 50%,
    transparent 70%
  );
  transform: translateX(-100%) translateY(-100%) rotate(45deg);
  transition: transform 0.8s ease;
  z-index: 0;
}

.cis-info-card:hover::after {
  transform: translateX(100%) translateY(100%) rotate(45deg);
}

/* Colored Shadows on Hover - Specific to Each Card Type */
.cis-phone:hover {
  box-shadow: 0 15px 40px rgba(255, 154, 98, 0.25);
}

.cis-email:hover {
  box-shadow: 0 15px 40px rgba(40, 117, 255, 0.25);
}

.cis-location:hover {
  box-shadow: 0 15px 40px rgba(84, 215, 175, 0.25);
}

.cis-hours:hover {
  box-shadow: 0 15px 40px rgba(240, 93, 138, 0.25);
}

/* Responsive Design */
@media (max-width: 991px) {
  .cis-title {
    font-size: 32px;
  }
}

@media (max-width: 767px) {
  .cis-title {
    font-size: 28px;
  }
  
  .cis-card-icon {
    width: 55px;
    height: 55px;
  }
  
  .cis-card-icon i {
    font-size: 24px;
  }
}
/* ========================================
   Form Section
   ======================================== */
.services-page .single-box {
  background-image: url(../img/contact2.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 65px 35px 40px;
  border-radius: 20px;
  margin: -180px 0 0;
  position: relative;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(1, 41, 112, 0.2);
}

.services-page .single-box::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.95) 0%, rgba(13, 71, 161, 0.9) 100%);
  z-index: 0;
}

.services-page .single-box > * {
  position: relative;
  z-index: 1;
}

.services-page .subscribe-leave-title h3 {
  font-size: 32px;
  color: #fff;
  margin: 0 0 34px;
  display: inline-block;
  font-weight: 700;
}

/* Form Inputs */
.services-page .form-box input {
  width: 100%;
  border: 2px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  height: 52px;
  margin-bottom: 15px;
  padding: 0 20px;
  outline: none !important;
  background: rgba(255, 255, 255, 0.95);
  font-size: 15px;
  transition: all 0.3s ease;
}

.services-page .form-box input:focus {
  border-color: #ffffff;
  background: #ffffff;
  box-shadow: 0 5px 20px rgba(255, 255, 255, 0.2);
}

.services-page .form-box select {
  height: 54px;
  background-color: rgba(255, 255, 255, 0.95);
  border: 2px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
  padding: 6px 20px;
  box-shadow: none;
  border-radius: 12px;
  width: 100%;
  margin-bottom: 20px;
  outline: none !important;
  font-size: 15px;
}

.services-page .form-box select:focus {
  border-color: #ffffff;
  background: #ffffff;
  box-shadow: 0 5px 20px rgba(255, 255, 255, 0.2);
}

.services-page .form-box textarea {
  width: 100%;
  border: 2px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  padding: 15px 20px;
  height: 162px;
  outline: none !important;
  background: rgba(255, 255, 255, 0.95);
  font-size: 15px;
  resize: vertical;
  transition: all 0.3s ease;
}

.services-page .form-box textarea:focus {
  border-color: #ffffff;
  background: #ffffff;
  box-shadow: 0 5px 20px rgba(255, 255, 255, 0.2);
}


/* Readonly Input */
.services-page .readonly-input {
  background-color: rgba(235, 235, 235, 0.95);
  color: #333;
  border: 2px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  padding: 12px 16px;
  width: 100%;
  cursor: not-allowed;
  transition: all 0.3s ease;
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 991px) {
  .services-page .single-box {
    margin-top: -100px;
    padding: 50px 25px 30px;
  }
  
  .services-page .techno-info-section {
    padding: 60px 0px 80px;
  }
}

@media (max-width: 767px) {
  .services-page .mission-section.style2 {
    padding: 70px 0px 100px;
  }
  
  .services-page .mission-section.style2 h4 {
    font-size: 26px;
  }
  
  .services-page .info-single-box {
    padding: 20px;
    gap: 15px;
  }
  
  .services-page .info-icon {
    width: 60px;
    height: 60px;
  }
  
  .services-page .info-icon i {
    font-size: 26px;
  }
  
  .services-page .info-content h2 {
    font-size: 17px;
  }
  
  .services-page .info-content span {
    font-size: 14px;
  }
  
  .services-page .single-box {
    margin-top: 0;
    padding: 40px 20px 30px;
  }
  
  .services-page .subscribe-leave-title h3 {
    font-size: 26px;
    margin-bottom: 25px;
  }
}

@media (max-width: 575px) {
  .services-page .info-single-box {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 25px 20px;
  }
  
  .services-page .info-icon {
    margin-bottom: 15px;
  }
  
  .services-page .info-icon {
    width: 55px;
    height: 55px;
  }
  
  .services-page .info-icon i {
    font-size: 24px;
  }
}
/* tabs Custom Styles */

/* ========== Tabs Section Modern Style ========== */

.service-details .tabs {
  padding-left: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
}

.service-details .tabs li {
  -webkit-box-flex: 4;
  -ms-flex: 4 0 16.6666666667%;
  flex: 4 0 16.6666666667%;
  max-width: 23.666667%;
  text-align: center;
  margin-right: 30px;
  margin-left: 0;
}

@media (max-width: 768px) {
  .service-details .tabs {
    display: flex;
    flex-direction: column;
  }

  .service-details .tabs li {
    flex: 0 0 100%;
    max-width: 100%;
    margin-right: 5px;
    margin-left: 5px;
    margin-bottom: 15px;
    text-align: center;
  }
}

.service-details .tabs li a {
  display: block;
  color: #292a2c;
  font-size: 16px;
  font-weight: 600;
  width: 100%;
  border-radius: 3px;
  padding: 10px;
  background-color: #e1e1e1;
  position: relative;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.service-details .tabs li.current a,
.service-details .tabs li:hover a {
  color: #ffffff;
  background-color: #012970;
}


.service-details .tab-solution-content .tab-list li {
  position: relative;
  padding-left: 30px !important;
  margin-bottom: 8px;
  line-height: 1.6;
  flex-wrap: wrap;
}

.service-details .tab-solution-content .tab-list li::before {
  content: "\f26b";
  font-family: "bootstrap-icons";
  font-size: 20px;
  margin-right: 8px;
  color: var(--accent-color);
  position: absolute;
  left: 0;
  top: 0;
  font-size: 18px;
}


.services-page .animate-box {
  overflow: hidden;
}

.box-numeric .box-numeric-num {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: #00429b;
  color: #ffffff;
  text-align: center;
  font-size: 30px;
  font-weight: 500;
  line-height: 70px;
  box-shadow: 0 8px 32px #012a709b;
}

@media (min-width: 992px) {
  .box-numeric .box-numeric-num {
    width: 82px;
    height: 82px;
    line-height: 82px;
    font-size: 34px;
  }
}

.box-numeric h4 {
  font-weight: 400;
  text-transform: capitalize;
}

@media (min-width: 1200px) {

  h4,
  .heading-4 {
    font-size: 22px;
    line-height: 1.31818;
  }
}

.box-numeric p {
  letter-spacing: .02em;
}

.arrow-block {
  display: none;
  position: absolute;
}

@media (min-width: 1200px) {
  .arrow-block {
    display: block;
  }
}

.arrow-block.arrow-1 {
  left: -100px;
  top: 125%;
  filter: hue-rotate(104deg) saturate(100) brightness(1);
}



.arrow-block.arrow-2 {
  left: 60px;
  filter: hue-rotate(104deg) saturate(100) brightness(1);
}

.arrow-block.arrow-3 {
  left: -250px;
  top: 115%;
  filter: hue-rotate(104deg) saturate(100) brightness(1);
}

.arrow-block.arrow-4 {
  left: 60px;
  filter: hue-rotate(104deg) saturate(100) brightness(1);
}

/** @section Responsive units */
.unit {
  display: flex;
  flex: 0 1 100%;
  margin-bottom: -30px;
  margin-left: -20px;
}

.unit>* {
  margin-bottom: 30px;
  margin-left: 20px;
}

.unit:empty {
  margin-bottom: 0;
  margin-left: 0;
}

.unit-body {
  flex: 0 1 auto;
}

.unit-left,
.unit-right {
  flex: 0 0 auto;
  max-width: 100%;
}

.unit-spacing-xs {
  margin-bottom: -15px;
  margin-left: -7px;
}

.unit-spacing-xs>* {
  margin-bottom: 15px;
  margin-left: 7px;
}

.unit-spacing-lg {
  margin-bottom: -20px;
  margin-left: -35px;
}

.unit-spacing-lg>* {
  margin-bottom: 0px;
  margin-left: 57px;
}

/* package details */
.mb-24 {
  margin-bottom: clamp(18px, 1.25vw, 48px) !important;
}

.mb-16 {
  margin-bottom: clamp(14px, 0.833vw, 32px) !important;
}

.gap-12 {
  gap: clamp(8px, 0.625vw, 24px) !important;
}

.mb-32 {
  margin-bottom: 32px !important;
}

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

.light-gray {
  color: #bbbcc3 !important;
}

.dark-gray {
  color: #45474f !important;
}

.white {
  color: #fff !important;
}

.text-16,
p {
  color: #000;
  font-family: "Roboto", sans-serif;
  font-size: clamp(15px, 0.833vw, 62px);
  font-style: normal;
  font-weight: 400;
  line-height: 175%;
}

/* --- خلفية الصفحة لتجربة الزجاج --- */



.packages {
  position: relative;
  overflow: hidden;
}

.packages .packages-bg {
  position: absolute;
  inset: 0;
  /* background: url(../img/p1.jpg) center / cover no-repeat; */
  z-index: 0;
  filter: blur(2px) brightness(0.5);
  transform: scale(1.1);
}

.packages .pricing-card {
  z-index: 5;
}

/* --- الكروت الزجاجية --- */
.packages .pricing-card .toppart,
.packages .pricing-card .bottombar {
  position: relative;
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 0.833vw, 32px);
  border-radius: clamp(12px, 0.833vw, 32px);
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

.packages .pricing-card .toppart p.des {
  margin: 0;
  display: block;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.packages .pricing-card:hover .toppart,
.packages .pricing-card:hover .bottombar {
  background: rgba(255, 255, 255, 0.25);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.packages .pricing-card .toppart h5,
.packages .pricing-card .bottombar p {
  color: #012970;
}

.packages .pricing-card .bottombar p {
  margin: 0;
}

/* --- SVG --- */
.packages .pricing-card .toppart svg {
  width: clamp(34px, 2.083vw, 54px);
  height: clamp(34px, 2.083vw, 54px);
}

.packages .pricing-card .bottombar {
  padding: 10px;
  flex-direction: column;
}

.packages .pricing-card .bottombar h2 {
  font-size: clamp(32px, 2.083vw, 99px);
  font-weight: 500;
}

.packages .pricing-card .bottombar h2 span {
  color: #000;
}

.packages .pricing-card .bottombar .savetag {
  padding: clamp(2px, 0.208vw, 8px) clamp(12px, 0.833vw, 32px);
  border-radius: clamp(24px, 1.667vw, 64px);
  border: 1px solid rgba(146, 148, 159, 0.2);
  background: #012970;
  text-align: center;
}

.packages .pricing-card .bottombar .savetag p {
  margin: 0;
  color: #fff;
}

/* --- زر السعر --- */
.packages .pricing-card .bottombar .price-btn {
  position: relative;
  padding: clamp(8px, 0.625vw, 24px) clamp(12px, 0.833vw, 32px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(8px, 0.625vw, 24px);
  text-align: center;
  border-radius: clamp(48px, 3.333vw, 128px);
  border: 1px solid #012970;
  background: rgba(123, 104, 238, 0.1);
  color: #012970;
  line-height: 160%;
  font-weight: 500;
  overflow: hidden;
  width: 100%;
  z-index: 1;
  transition: all 0.5s ease-in-out;
}

.packages .pricing-card .bottombar .price-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  border-radius: clamp(48px, 3.333vw, 128px);
  background: linear-gradient(90deg, #4154f1 50%, #012970 100%);
  z-index: -1;
  opacity: 0;
  transition: all 0.5s ease-in-out;
}

.packages .pricing-card .bottombar .price-btn i {
  color: #012970;
}

.packages .pricing-card .bottombar:hover .price-btn::before {
  left: 0;
  opacity: 1;
}
.packages .pricing-card .bottombar i {
  color: #012970;
  font-size: 20px;
}

.packages .pricing-card .bottombar:hover .price-btn  ,.packages .pricing-card .bottombar:hover .price-btn i {
  color: #fff;
}


.packages .pricing-card .toppart .populartag {
  position: absolute;
  display: flex;
  padding: clamp(4px, 0.313vw, 12px) clamp(8px, 0.625vw, 24px);
  justify-content: center;
  align-items: center;
  right: 39px;
  top: -18px;
  border-radius: clamp(8px, 0.625vw, 24px);
  color: #fff;
  background: linear-gradient(90deg, #4154f1 0%, #012970 100%);
}

.features-wrapper .feature-item.feature-item-disabled {
  opacity: 0.5;
  pointer-events: none;
}

.features-wrapper .feature-item {
  border-bottom: 1px solid #ddd;
  padding: 8px 0;
  display: flex;
  height: 68px;
  align-items: center;
}

.features-wrapper .feature-item p {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  padding: 8px 0;
  width: 100%;
}

.features-wrapper .feature-item p span {
  color: #012970;
  font-family: "Roboto", sans-serif;
  font-size: clamp(14px, 0.833vw, 18px);
  font-weight: 500;
  line-height: 175%;
  padding: 4px 14px;
  border-radius: 8px;
  background: rgba(65, 84, 241, 0.15);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: all 0.3s ease;
  width: 90px;
  display: flex;
  justify-content: center;
}

.features-wrapper .feature-item p:hover span {
  background: linear-gradient(90deg, #4154f1, #012970);
  color: #fff;
  border-color: transparent;
}

.features-wrapper .feature-item.hidden-feature {
  display: none !important;
  opacity: 0;
  transform: translateY(-6px);
}

.features-wrapper .feature-item {
  transition: opacity 0.28s ease, transform 0.28s ease;
  opacity: 1;
  transform: translateY(0);
}

.show-more {
  cursor: pointer;
  display: inline-block;
  margin-top: 6px;
  background-color: #fff;
  color: #012970;
  font-weight: 500;
  transition: all 0.3s ease;
  padding: 5px 15px;
  border-radius: 5px;
  text-align: center;
}

.show-more:hover {
  color: #fff;
  background-color: #012970;
}

/* لضبط السلايدر */
.packages-swiper {
  width: 100%;
  position: relative;
    padding: 60px 15px 15px;
}

.packages-swiper .pricing-card {
  max-width: 100%;
  width: 100%;
}

.packages-swiper .swiper-slide {
  display: flex;
  justify-content: center;
}

.swiper-button-next,
.swiper-button-prev {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  color: #4154f1;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: all 0.3s ease;
  top: 2%;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: auto;

  left: 70px;
}

.swiper-button-next::after,
.swiper-button-prev::after {
  font-size: 18px;
  font-weight: bold;
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
  background: #4154f1;
  color: #fff;
  transform: scale(1.05);
  box-shadow: 0 6px 18px rgba(65, 84, 241, 0.3);
}

/* الافتراضي: مخفية */
.swiper-button-next,
.swiper-button-prev {
  opacity: 0;
  visibility: hidden;
}

@media (max-width: 769px) {

  .swiper-button-next,
  .swiper-button-prev {
    opacity: 1;
    visibility: visible;
  }
}

/*--------------------------------------------------------------
# contact Page Start styles
--------------------------------------------------------------*/

.contact-info-area .single-contact-info {
  text-align: center;
  box-shadow: 0 0 20px 3px rgba(0, 0, 0, 0.05);
  background-color: #ffffff;
  margin-bottom: 30px;
  padding: 30px;
  transition: all 0.4s ease;
  border-radius: 8px;
  height: 215px;
  position: relative;
  overflow: hidden;
}

.contact-info-area .single-contact-info:hover {
  transform: translateY(-10px);
  box-shadow: 0 10px 25px rgba(65, 84, 241, 0.25);
}

.contact-info-area .single-contact-info::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #4154f1, #657cf9);
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 0;
}

.contact-info-area .single-contact-info:hover::before {
  opacity: 0.05;
}

.contact-info-area .single-contact-info * {
  position: relative;
  z-index: 1;
}

.contact-info-area .single-contact-info i {
  display: block;
  color: #2154f2;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  font-size: 25px;
  width: 50px;
  height: 50px;
  margin: 0 auto 15px;
  line-height: 50px;
  border: 2px solid #2154f2;
  border-radius: 50%;
}

.contact-info-area .single-contact-info h3 {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  color: #370b6f;
}

.contact-info-area .single-contact-info a {
  color: #212121;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  display: block;
}


/* contact form */
/* ===========================
   CONTACT FORM STYLING
=========================== */
.contact-sec .contact-form {
  border-radius: clamp(16px, 1.042vw, 40px);
  border: 1px solid #eaeaec;
  padding: clamp(24px, 1.667vw, 64px);
  background: #fff;
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}

.contact-sec .contact-form:hover {
  box-shadow: 0 6px 32px rgba(0, 0, 0, 0.08);
}

/* ---------------------------
   FORM TEXT & LABELS
--------------------------- */
.subtitle {
  font-size: clamp(13px, 0.677vw, 22px);
  font-family: "Inter", sans-serif;
  font-weight: 500;
  color: #ccc;
  line-height: 120%;
  margin-bottom: 8px;
}

/* ---------------------------
   INPUT BLOCK STRUCTURE
--------------------------- */
.input-block {
  position: relative;
  width: 100%;
}

.input-block i {
  position: absolute;
  top: 69%;
  left: clamp(12px, 0.625vw, 32px);
  transform: translateY(-50%);
  font-size: clamp(16px, 0.938vw, 28px);
  color: #ccc;
  pointer-events: none;
  transition: color 0.3s ease;
}

/* ---------------------------
   INPUT & SELECT BASE STYLE
--------------------------- */
.form-control {
  display: block;
  width: 100%;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(15px, 0.833vw, 32px);
  font-weight: 400;
  color: #333;
  background-color: transparent;
  padding: clamp(10px, 0.62vw, 28px) clamp(12px, 0.833vw, 72px) clamp(10px, 0.62vw, 28px) clamp(42px, 2.292vw, 72px);
  border: 1px solid #e1e1e1;
  border-radius: clamp(4px, 0.417vw, 16px);
  transition: all 0.2s ease;
  outline: none;
  box-shadow: none;
  appearance: none;
}

/* Add dropdown arrow for select */
select.form-control {
  background: transparent url("data:image/svg+xml,%3Csvg fill='%23012970' height='20' viewBox='0 0 24 24' width='20'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right clamp(16px, 0.8vw, 32px) center/14px;
  cursor: pointer;
}

/* ---------------------------
   HOVER & FOCUS STATES
--------------------------- */
.form-control:focus {
  border-color: #012970;
  box-shadow: 0 0 0 3px rgba(123, 104, 238, 0.15);
}

.input-block:focus-within i {
  color: #5a47e5;
}

/* ---------------------------
   TEXTAREA STYLE
--------------------------- */
textarea.form-control {
  min-height: 140px;
  resize: vertical;
  padding-top: clamp(14px, 0.8vw, 32px) !important;
  padding-bottom: clamp(14px, 0.8vw, 32px) !important;
  padding-left: 42px !important;
}



/* ---------------------------
   MESSAGE AREA
--------------------------- */
.alert-msg {
  margin-top: 20px;
  font-size: clamp(14px, 0.8vw, 22px);
  font-weight: 500;
}

/* ---------------------------
   RESPONSIVE FIXES
--------------------------- */
@media (max-width: 576px) {
  .form-control {
    padding-left: 48px;
  }

  .input-block i {
    left: 16px;
    font-size: 18px;
  }

  select.form-control {
    background-position: right 14px center;
  }
}

.map {
  position: relative;
  overflow: hidden;
  transition: all 0.4s ease;
  margin-top: 40px;
}

.map iframe {
  height: 420px;
  width: 100%;
  border: none;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.map:hover iframe {
  transform: scale(1.02);
}

.map::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.4s ease;
  border-radius: 20px;
}

.map:hover::before {
  opacity: 1;
}


/* Heading Section */
.site-heading {
    margin-bottom: 60px;
}

.site-title-tagline {
    display: inline-block;
    color: #012970;
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 12px;
    padding: 8px 20px;
    background: rgba(1, 41, 112, 0.08);
    border-radius: 50px;
    position: relative;
}

.site-title-tagline::before,
.site-title-tagline::after {
    content: '';
    position: absolute;
    top: 50%;
    width: 40px;
    height: 2px;
    background: linear-gradient(90deg, #012970, transparent);
}

.site-title-tagline::before {
    left: -50px;
}

.site-title-tagline::after {
    right: -50px;
    transform: rotate(180deg);
}

.site-title {
    font-size: 2.75rem;
    font-weight: 800;
    color: #000;
    margin: 20px 0 0;
    line-height: 1.2;
}

.site-title span {
    color: #012970;
    position: relative;
}

.site-title span::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #012970, #4a90e2);
    border-radius: 2px;
}

/* New Services Section Style*/


.bg-half-light {
    background: linear-gradient(180deg, #ffffff 0%, #f8f9fa 100%);
}

/* Services Grid */
.services-by-cat .services-wrap {
    background: #ffffff;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(1, 41, 112, 0.1);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    margin-bottom: 30px;
    border: 3px solid transparent;
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.services-by-cat .services-wrap::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 24px;
    padding: 3px;
    background: linear-gradient(135deg, #012970, #4a90e2);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.services-by-cat .services-wrap:hover::after {
    opacity: 1;
}

.services-by-cat .services-wrap:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 60px rgba(1, 41, 112, 0.2);
}

/* Service Image */
.services-by-cat .services-wrap .img {
    width: 100%;
    height: 280px;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
}

.services-by-cat .services-wrap .img::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, transparent 40%, rgba(1, 41, 112, 0.85) 100%);
    transition: all 0.5s ease;
}

.services-by-cat .services-wrap:hover .img::before {
    background: linear-gradient(to bottom, transparent 20%, rgba(1, 41, 112, 0.75) 100%);
}

/* Service Content */
.services-by-cat .services-wrap .text {
    padding: 20px;
    position: relative;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.services-by-cat .services-wrap .icon {
    position: absolute;
    top: -40px;
    left: 32px;
    width: 65px;
    height: 65px;
    background: linear-gradient(135deg, #012970, #0d47a1);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(1, 41, 112, 0.3);
    z-index: 2;
    transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    border: 4px solid #ffffff;
}

.services-by-cat .services-wrap:hover .icon {
    transform: scale(1.15) rotate(-5deg);
    box-shadow: 0 15px 40px rgba(1, 41, 112, 0.4);
}

.services-by-cat .services-wrap .icon i {
    font-size: 2rem;
    color: #ffffff;
    transition: transform 0.5s ease;
}

.services-by-cat .services-wrap:hover .icon i {
    transform: scale(1.1);
}

.services-by-cat .services-wrap h2 {
    font-size: 1.625rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 16px;
    margin-top: 25px;
    line-height: 1.3;
    transition: color 0.3s ease;
}

.services-by-cat .services-wrap:hover h2 {
    color: #012970;
}

.services-by-cat .services-wrap p {
    color: #6c757d;
    line-height: 1.8;
    margin-bottom: 0;
    font-size: 0.9375rem;
    flex: 1;
}

/* Animations */
.services-by-cat .exceed-animate {
    animation: fadeInUp 0.8s ease;
    animation-fill-mode: both;
}

.services-by-cat .exceed-animate:nth-child(1) { animation-delay: 0.1s; }
.services-by-cat .exceed-animate:nth-child(2) { animation-delay: 0.2s; }
.services-by-cat .exceed-animate:nth-child(3) { animation-delay: 0.3s; }
.services-by-cat .exceed-animate:nth-child(4) { animation-delay: 0.4s; }
.services-by-cat .exceed-animate:nth-child(5) { animation-delay: 0.5s; }
.services-by-cat .exceed-animate:nth-child(6) { animation-delay: 0.6s; }

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .services-wrap {
        margin-bottom: 24px;
    }

    .services-wrap .img {
        height: 240px;
    }

    .services-wrap .text {
        padding: 36px 28px 32px;
    }

    .services-wrap .icon {
        width: 65px;
        height: 65px;
        top: -35px;
        left: 28px;
    }

    .services-wrap .icon i {
        font-size: 1.75rem;
    }

    .services-wrap h2 {
        margin-top: 40px;
        font-size: 1.5rem;
    }
}

/**/

    /* Package Services Grid Styles */
    .package-services-section {
        background: linear-gradient(180deg, #ffffff 0%, #f8f9fa 100%);
        padding: 80px 0;
        position: relative;
    }

 
    .package-services-section .services-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
        gap: 32px;
    }

    .package-services-section .service-card {
        background: #ffffff;
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 2px 8px rgba(1, 41, 112, 0.08);
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        border: 1px solid rgba(1, 41, 112, 0.08);
        animation: fadeInUp 0.6s ease;
        animation-fill-mode: both;
    }

    .package-services-section .service-card:nth-child(1) { animation-delay: 0.1s; }
    .package-services-section .service-card:nth-child(2) { animation-delay: 0.2s; }
    .package-services-section .service-card:nth-child(3) { animation-delay: 0.3s; }
    .package-services-section .service-card:nth-child(4) { animation-delay: 0.4s; }
    .package-services-section .service-card:nth-child(5) { animation-delay: 0.5s; }
    .package-services-section .service-card:nth-child(6) { animation-delay: 0.6s; }

    .package-services-section .service-card:hover {
        transform: translateY(-8px);
        box-shadow: 0 12px 48px rgba(1, 41, 112, 0.2);
        border-color: rgba(1, 41, 112, 0.15);
    }

    .package-services-section .service-image {
        position: relative;
        height: 240px;
        overflow: hidden;
    }

    .package-services-section .service-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .package-services-section .service-card:hover .service-image img {
        transform: scale(1.08);
    }

    .package-services-section .service-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(to bottom, transparent 0%, rgba(1, 41, 112, 0.8) 100%);
        opacity: 0;
        transition: opacity 0.4s ease;
        display: flex;
        align-items: flex-end;
        padding: 24px;
    }

    .package-services-section .service-card:hover .service-overlay {
        opacity: 1;
    }

    .package-services-section .service-badge {
        background: rgba(255, 255, 255, 0.95);
        color: #012970;
        padding: 6px 16px;
        border-radius: 20px;
        font-size: 0.875rem;
        font-weight: 700;
        backdrop-filter: blur(10px);
    }

    .package-services-section .service-content {
        padding: 32px;
    }

    .package-services-section .service-icon-wrapper {
        width: 56px;
        height: 56px;
        background: linear-gradient(135deg, #012970, #0d47a1);
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 20px;
        box-shadow: 0 4px 12px rgba(1, 41, 112, 0.15);
        transition: all 0.3s ease;
    }

    .package-services-section .service-card:hover .service-icon-wrapper {
        transform: scale(1.1) rotate(5deg);
        box-shadow: 0 6px 16px rgba(1, 41, 112, 0.25);
    }

    .package-services-section .service-icon-wrapper i {
        font-size: 1.75rem;
        color: #ffffff;
    }

    .package-services-section .service-title {
        color: #2c3e50;
        font-size: 1.5rem;
        font-weight: 700;
        margin-bottom: 12px;
        line-height: 1.4;
    }

    .package-services-section .service-title a {
        color: inherit;
        text-decoration: none;
        transition: color 0.3s ease;
        display: inline;
        background: linear-gradient(to right, #012970, #012970) no-repeat;
        background-size: 0% 2px;
        background-position: left bottom;
        transition: background-size 0.3s ease, color 0.3s ease;
        padding-bottom: 2px;
    }

    .package-services-section .service-title a:hover {
        color: #012970;
        background-size: 100% 2px;
    }

    .package-services-section .service-excerpt {
        color: #6c757d;
        line-height: 1.7;
        margin-bottom: 24px;
        font-size: 0.9375rem;
    }

    .package-services-section .service-footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 20px;
        border-top: 1px solid rgba(1, 41, 112, 0.08);
    }

    .package-services-section .service-link {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: #012970;
        font-weight: 600;
        text-decoration: none;
        font-size: 0.9375rem;
        transition: all 0.3s ease;
    }

    .package-services-section .service-link:hover {
        color: #4a90e2;
        gap: 12px;
    }

    .package-services-section .service-link svg {
        width: 18px;
        height: 18px;
        transition: transform 0.3s ease;
    }

    .package-services-section .service-link:hover svg {
        transform: translateX(4px);
    }

    @keyframes fadeInUp {
        from {
            opacity: 0;
            transform: translateY(30px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    @media (max-width: 1024px) {
        .package-services-section .services-grid {
            grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
        }
    }

    @media (max-width: 768px) {
        .package-services-section {
            padding: 60px 0;
        }
        
        .package-services-section .section-title {
            font-size: 2rem;
        }
        
        .package-services-section .services-grid {
            grid-template-columns: 1fr;
            gap: 24px;
        }
    }

    @media (max-width: 480px) {
        .package-services-section {
            padding: 48px 0;
        }
        
        .package-services-section .section-title {
            font-size: 1.75rem;
        }
        
        .package-services-section .service-content {
            padding: 24px;
        }
    }
    
    
    /**/
    /* ========================================
   Services Category Page Styles
   No Root Variables - Direct Colors
   ======================================== */

/* Services Section */
.services-section-cat {
    background: linear-gradient(180deg, #ffffff 0%, #f8f9fa 100%);
    position: relative;
}

/* Section Header */
.services-section-cat .section-header {
    text-align: center;
    margin-bottom: 60px;
    animation: fadeInUp 0.6s ease;
}

.services-section-cat .section-subtitle {
    color: #012970;
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 12px;
}

.services-section-cat .section-title {
    color: #2c3e50;
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 16px;
    line-height: 1.2;
}

.services-section-cat .section-description {
    color: #6c757d;
    font-size: 1.125rem;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.7;
}

/* Services Grid */
.services-section-cat .services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
    gap: 32px;
    margin-bottom: 80px;
}

.services-section-cat .service-card {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(1, 41, 112, 0.08);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid rgba(1, 41, 112, 0.08);
    animation: fadeInUp 0.6s ease;
    animation-fill-mode: both;
}

.services-section-cat .service-card:nth-child(1) { animation-delay: 0.1s; }
.services-section-cat .service-card:nth-child(2) { animation-delay: 0.2s; }
.services-section-cat .service-card:nth-child(3) { animation-delay: 0.3s; }
.services-section-cat .service-card:nth-child(4) { animation-delay: 0.4s; }
.services-section-cat .service-card:nth-child(5) { animation-delay: 0.5s; }
.services-section-cat .service-card:nth-child(6) { animation-delay: 0.6s; }

.services-section-cat .service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 48px rgba(1, 41, 112, 0.2);
    border-color: rgba(1, 41, 112, 0.15);
}

.services-section-cat .service-image {
    position: relative;
    height: 240px;
    overflow: hidden;
}

.services-section-cat .service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.services-section-cat .service-card:hover .service-image img {
    transform: scale(1.08);
}

.services-section-cat .service-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, transparent 0%, rgba(1, 41, 112, 0.8) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
    display: flex;
    align-items: flex-end;
    padding: 24px;
}

.services-section-cat .service-card:hover .service-overlay {
    opacity: 1;
}

.services-section-cat .service-badge {
    background: rgba(255, 255, 255, 0.95);
    color: #012970;
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 700;
    backdrop-filter: blur(10px);
}

.services-section-cat .service-content {
    padding: 32px;
}

.services-section-cat .service-icon-wrapper {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, #012970, #0d47a1);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 4px 12px rgba(1, 41, 112, 0.15);
    transition: all 0.3s ease;
}

.services-section-cat .service-card:hover .service-icon-wrapper {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 6px 16px rgba(1, 41, 112, 0.25);
}

.services-section-cat .service-icon-wrapper i {
    font-size: 1.75rem;
    color: #ffffff;
}

.services-section-cat .service-title {
    color: #2c3e50;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 12px;
    line-height: 1.4;
}

.services-section-cat .service-title a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
    display: inline;
    background: linear-gradient(to right, #012970, #012970) no-repeat;
    background-size: 0% 2px;
    background-position: left bottom;
    transition: background-size 0.3s ease, color 0.3s ease;
    padding-bottom: 2px;
}

.services-section-cat .service-title a:hover {
    color: #012970;
    background-size: 100% 2px;
}

.services-section-cat .service-excerpt {
    color: #6c757d;
    line-height: 1.7;
    margin-bottom: 24px;
    font-size: 0.9375rem;
}

.services-section-cat .service-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 20px;
    border-top: 1px solid rgba(1, 41, 112, 0.08);
}

.services-section-cat .service-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #012970;
    font-weight: 600;
    text-decoration: none;
    font-size: 0.9375rem;
    transition: all 0.3s ease;
}

.services-section-cat .service-link:hover {
    color: #4a90e2;
    gap: 12px;
}

.services-section-cat .service-link svg {
    width: 18px;
    height: 18px;
    transition: transform 0.3s ease;
}

.services-section-cat .service-link:hover svg {
    transform: translateX(4px);
}

/* ========================================
   Contact Form Section
   ======================================== */

.contact-form-section {
    background: #012970;
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.contact-form-section::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.05) 0%, transparent 70%);
    border-radius: 50%;
    transform: translate(30%, -30%);
}

.contact-form-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.03) 0%, transparent 70%);
    border-radius: 50%;
    transform: translate(-30%, 30%);
}

.contact-form-section .form-container {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 60px;
    align-items: center;
    position: relative;
    z-index: 2;
}

.contact-form-section .form-info {
    color: #ffffff;
    animation: fadeInLeft 0.8s ease;
}

.contact-form-section .form-info-title {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 20px;
    line-height: 1.2;
    color: #ffffff;
}

.contact-form-section .form-info-description {
    font-size: 1.125rem;
    line-height: 1.8;
    opacity: 0.9;
    color: #ffffff;
    margin-bottom: 40px;
}

.contact-form-section .form-features {
    display: grid;
    gap: 20px;
}

.contact-form-section .form-feature {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.contact-form-section .form-feature-icon {
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    backdrop-filter: blur(10px);
}

.contact-form-section .form-feature-icon svg {
    width: 24px;
    height: 24px;
    color: #ffffff;
}

.contact-form-section .form-feature-content h4 {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 4px;
    color: #ffffff;
}

.contact-form-section .form-feature-content p {
    opacity: 0.8;
    font-size: 0.9375rem;
    line-height: 1.6;
    color: #ffffff;
}

.contact-form-section .form-wrapper {
    background: #ffffff;
    border-radius: 24px;
    padding: 48px;
    box-shadow: 0 12px 48px rgba(1, 41, 112, 0.2);
    animation: fadeInRight 0.8s ease;
}

.contact-form-section .form-header {
    margin-bottom: 32px;
}

.contact-form-section .form-title {
    color: #2c3e50;
    font-size: 1.875rem;
    font-weight: 800;
    margin-bottom: 8px;
}

.contact-form-section .form-subtitle {
    color: #6c757d;
    font-size: 1rem;
    line-height: 1.6;
}

.contact-form-section .contact-form {
    display: grid;
    gap: 24px;
}

.contact-form-section .form-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.contact-form-section .form-group {
    position: relative;
}

.contact-form-section .form-label {
    display: block;
    color: #2c3e50;
    font-weight: 600;
    margin-bottom: 8px;
    font-size: 0.9375rem;
}

.contact-form-section .form-label span {
    color: #e74c3c;
}

.contact-form-section .form-input,
.contact-form-section .form-textarea,
.contact-form-section .form-select {
    width: 100%;
    padding: 14px 18px;
    border: 2px solid #e8ecef;
    border-radius: 12px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background: #ffffff;
    color: #2c3e50;
    font-family: inherit;
}

.contact-form-section .form-input:focus,
.contact-form-section .form-textarea:focus,
.contact-form-section .form-select:focus {
    outline: none;
    border-color: #012970;
    box-shadow: 0 0 0 4px rgba(1, 41, 112, 0.08);
}

.contact-form-section .form-group:focus-within .form-label {
    color: #012970;
}

.contact-form-section .form-textarea {
    min-height: 140px;
    resize: vertical;
}

.contact-form-section .form-select {
    cursor: pointer;
    appearance: none;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="%23012970" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>');
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 18px;
    padding-right: 48px;
}

.contact-form-section .form-button-wrapper {
    margin-top: 8px;
}

.contact-form-section .form-button {
    background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
    color: #ffffff;
    padding: 16px 40px;
    border: none;
    border-radius: 12px;
    font-size: 1.0625rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 8px 24px rgba(1, 41, 112, 0.25);
    position: relative;
    overflow: hidden;
    width: 100%;
}

.contact-form-section .form-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.6s ease;
}

.contact-form-section .form-button:hover::before {
    left: 100%;
}

.contact-form-section .form-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(1, 41, 112, 0.35);
}

.contact-form-section .form-button:active {
    transform: translateY(0);
}

/* ========================================
   Animations
   ======================================== */

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* ========================================
   Responsive Design
   ======================================== */

@media (max-width: 1024px) {
    .contact-form-section .form-container {
        grid-template-columns: 1fr;
        gap: 48px;
    }
    
    .services-section-cat .services-grid {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
}

@media (max-width: 768px) {
    .services-section-cat {
        padding: 60px 0;
    }
    
    .services-section-cat .section-title {
        font-size: 2rem;
    }
    
    .services-section-cat .services-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    
    .contact-form-section {
        padding: 60px 0;
    }
    
    .contact-form-section .form-info-title {
        font-size: 2rem;
    }
    
    .contact-form-section .form-wrapper {
        padding: 32px 24px;
    }
    
    .contact-form-section .form-title {
        font-size: 1.5rem;
    }
    
    .contact-form-section .form-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .services-section-cat {
        padding: 48px 0;
    }
    
    .services-section-cat .section-title {
        font-size: 1.75rem;
    }
    
    .services-section-cat .service-content {
        padding: 24px;
    }
    
    .contact-form-section .form-wrapper {
        padding: 24px 16px;
    }
    
    .contact-form-section {
        padding: 48px 0;
    }
}
    /**/
    
    
    /* ========================================
   Category Intro Section - Professional Design
   Main Color: #012970
   ======================================== */

.category-intro-section {
  position: relative;
  background: #ffffff;
  overflow: hidden;
  padding: 30px 0;
}

.category-intro-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: 
    radial-gradient(circle at 20% 30%, rgba(1, 41, 112, 0.03) 0%, transparent 50%),
    radial-gradient(circle at 80% 70%, rgba(1, 41, 112, 0.03) 0%, transparent 50%);
  pointer-events: none;
  z-index: 0;
}

.category-intro-wrapper {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 70px;
  align-items: center;
  max-width: 1320px;
  margin: 0 auto;
}

.top-intro-cat {
    display: flex;
    flex-direction: Column;
    margin-bottom: 15px;
}

/* ========================================
   Content Side - Left Column
   ======================================== */

.category-intro-content {
  position: relative;
}

.category-intro-icon {
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #012970 0%, #1565c0 100%);
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
  box-shadow: 
    0 6px 20px rgba(1, 41, 112, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.15);
  transition: all 0.4s ease;
}

.category-intro-icon:hover {
  transform: scale(1.08) rotate(-3deg);
  box-shadow: 
    0 10px 28px rgba(1, 41, 112, 0.3),
    inset 0 2px 0 rgba(255, 255, 255, 0.2);
}

.category-intro-icon i {
  font-size: 32px;
  color: #ffffff;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.15));
}

.category-intro-title {
  font-size: 42px;
  font-weight: 800;
  color: #012970;
  margin-bottom: 16px;
  line-height: 1.2;
  letter-spacing: -0.5px;
  position: relative;
  display: inline-block;
}

.category-intro-title::after {
  content: '';
  position: absolute;
  bottom: -8px;
  left: 0;
  width: 60px;
  height: 4px;
  background: linear-gradient(90deg, #012970 0%, #1e88e5 100%);
  border-radius: 2px;
}

.category-intro-subtitle {
  font-size: 18px;
  color: #1565c0;
  margin-bottom: 20px;
  line-height: 1.7;
  font-weight: 600;
  padding: 16px 24px;
  background: rgba(1, 41, 112, 0.05);
  border-left: 4px solid #012970;
  border-radius: 0 8px 8px 0;
}

.category-intro-text {
  font-size: 15.5px;
  color: #475569;
  line-height: 1.8;
  margin-bottom: 32px;
}

.category-intro-text p {
  margin-bottom: 14px;
  line-height: 1.8;
}

.category-intro-text p:last-child {
  margin-bottom: 0;
}

.category-intro-text strong {
  color: #012970;
  font-weight: 700;
}

.category-intro-text ul,
.category-intro-text ol {
  margin: 16px 0;
  padding-left: 0;
  list-style: none;
}

.category-intro-text li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 10px;
  color: #475569;
  line-height: 1.75;
}

.category-intro-text li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 7px;
  height: 7px;
  background: #012970;
  border-radius: 50%;
}

/* ========================================
   Features List - Clean Design
   ======================================== */

.category-intro-features {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  margin-top: 32px;
}

.category-feature-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 20px 16px;
  background: #ffffff;
  border-radius: 12px;
  border: 2px solid rgba(1, 41, 112, 0.1);
  box-shadow: 0 4px 12px rgba(1, 41, 112, 0.06);
  transition: all 0.3s ease;
  text-align: center;
}

.category-feature-item:hover {
  background: #ffffff;
  border-color: #012970;
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(1, 41, 112, 0.15);
}

.category-feature-item .feature-icon {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #012970 0%, #1565c0 100%);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(1, 41, 112, 0.25);
  transition: all 0.3s ease;
}

.category-feature-item:hover .feature-icon {
  transform: scale(1.1) rotate(-5deg);
  box-shadow: 0 6px 20px rgba(1, 41, 112, 0.35);
}

.category-feature-item .feature-icon svg {
  width: 24px;
  height: 24px;
  color: #ffffff;
  stroke-width: 2.5;
}

.category-feature-item span {
  font-size: 14px;
  font-weight: 600;
  color: #012970;
  line-height: 1.4;
  transition: all 0.3s ease;
}

.category-feature-item:hover span {
  color: #1565c0;
}

/* ========================================
   Image Side - Right Column
   ======================================== */

.category-intro-image {
  position: relative;
}

.category-image-wrapper {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 
    0 8px 30px rgba(1, 41, 112, 0.12),
    0 2px 8px rgba(1, 41, 112, 0.08);
  transition: all 0.4s ease;
}

.category-image-wrapper:hover {
  transform: translateY(-8px);
  box-shadow: 
    0 15px 40px rgba(1, 41, 112, 0.18),
    0 5px 15px rgba(1, 41, 112, 0.12);
}

.category-image-wrapper img {
  width: 100%;
  height: auto;
  min-height: 400px;
  object-fit: cover;
  display: block;
  border-radius: 20px;
  transition: transform 0.4s ease;
}

.category-image-wrapper:hover img {
  transform: scale(1.05);
}

/* Decorative Elements */
.category-image-decoration {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 140px;
  height: 140px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.08) 0%, rgba(30, 136, 229, 0.12) 100%);
  border-radius: 50%;
  z-index: -1;
  transition: all 0.5s ease;
}

.category-image-wrapper:hover .category-image-decoration {
  transform: scale(1.2) rotate(45deg);
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.12) 0%, rgba(30, 136, 229, 0.18) 100%);
}

.category-image-shape {
  position: absolute;
  bottom: -15px;
  left: -15px;
  width: 100px;
  height: 100px;
  background-image: radial-gradient(
    circle, 
    rgba(1, 41, 112, 0.15) 2px, 
    transparent 2px
  );
  background-size: 12px 12px;
  z-index: -1;
  opacity: 0.6;
  transition: all 0.5s ease;
}

.category-image-wrapper:hover .category-image-shape {
  transform: scale(1.15) rotate(15deg);
  opacity: 0.8;
}

/* ========================================
   Responsive Design
   ======================================== */

@media (max-width: 1199px) {
  .category-intro-wrapper {
    gap: 50px;
  }
  
  .category-intro-title {
    font-size: 38px;
  }
  
  .category-intro-subtitle {
    font-size: 17px;
  }
  
  .category-intro-text {
    font-size: 15px;
  }
}

@media (max-width: 991px) {
  .category-intro-section {
    padding: 60px 0 40px;
    margin-bottom: 40px;
  }
  
  .category-intro-wrapper {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .category-intro-title {
    font-size: 36px;
  }
  
  .category-intro-subtitle {
    font-size: 16px;
    padding: 14px 20px;
  }
  
  .category-intro-icon {
    width: 65px;
    height: 65px;
    margin-bottom: 20px;
  }
  
  .category-intro-icon i {
    font-size: 30px;
  }
  
  .category-intro-features {
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-top: 28px;
  }
  
  .category-feature-item {
    padding: 16px 12px;
  }
  
  .category-feature-item .feature-icon {
    width: 42px;
    height: 42px;
  }
  
  .category-feature-item .feature-icon svg {
    width: 22px;
    height: 22px;
  }
  
  .category-feature-item span {
    font-size: 13px;
  }
  
  .category-image-wrapper img {
    min-height: 350px;
  }
  
  .category-image-decoration {
    width: 120px;
    height: 120px;
    top: -15px;
    right: -15px;
  }
  
  .category-image-shape {
    width: 80px;
    height: 80px;
    bottom: -12px;
    left: -12px;
  }
}

@media (max-width: 767px) {
  .category-intro-section {
    padding: 50px 0 35px;
    margin-bottom: 35px;
  }
  
  .category-intro-wrapper {
    gap: 35px;
  }
  
  .category-intro-title {
    font-size: 32px;
    margin-bottom: 14px;
  }
  
  .category-intro-title::after {
    width: 50px;
    height: 3px;
    bottom: -6px;
  }
  
  .category-intro-subtitle {
    font-size: 15.5px;
    margin-bottom: 18px;
    padding: 12px 18px;
  }
  
  .category-intro-text {
    font-size: 14.5px;
    margin-bottom: 28px;
  }
  
  .category-intro-icon {
    width: 60px;
    height: 60px;
    margin-bottom: 18px;
    border-radius: 14px;
  }
  
  .category-intro-icon i {
    font-size: 28px;
  }
  
  .category-intro-features {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 24px;
  }
  
  .category-feature-item {
    flex-direction: row;
    padding: 14px 16px;
    text-align: left;
  }
  
  .category-feature-item .feature-icon {
    width: 40px;
    height: 40px;
  }
  
  .category-feature-item .feature-icon svg {
    width: 20px;
    height: 20px;
  }
  
  .category-feature-item span {
    font-size: 14px;
  }
  
  .category-image-wrapper {
    border-radius: 16px;
  }
  
  .category-image-wrapper img {
    border-radius: 16px;
    min-height: 300px;
  }
  
  .category-image-decoration {
    width: 100px;
    height: 100px;
    top: -12px;
    right: -12px;
  }
  
  .category-image-shape {
    width: 70px;
    height: 70px;
    bottom: -10px;
    left: -10px;
  }
}

@media (max-width: 575px) {
  .category-intro-section {
    padding: 40px 0 30px;
    margin-bottom: 30px;
  }
  
  .category-intro-wrapper {
    gap: 30px;
  }
  
  .category-intro-title {
    font-size: 28px;
    margin-bottom: 12px;
  }
  
  .category-intro-title::after {
    width: 45px;
  }
  
  .category-intro-subtitle {
    font-size: 15px;
    margin-bottom: 16px;
    padding: 12px 16px;
  }
  
  .category-intro-text {
    font-size: 14px;
    margin-bottom: 24px;
  }
  
  .category-intro-icon {
    width: 56px;
    height: 56px;
    margin-bottom: 16px;
    border-radius: 12px;
  }
  
  .category-intro-icon i {
    font-size: 26px;
  }
  
  .category-intro-features {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 20px;
  }
  
  .category-feature-item {
    padding: 12px 14px;
  }
  
  .category-feature-item .feature-icon {
    width: 38px;
    height: 38px;
  }
  
  .category-feature-item .feature-icon svg {
    width: 18px;
    height: 18px;
  }
  
  .category-feature-item span {
    font-size: 13.5px;
  }
  
  .category-image-wrapper {
    border-radius: 14px;
  }
  
  .category-image-wrapper img {
    border-radius: 14px;
    min-height: 250px;
  }
  
  .category-image-decoration {
    width: 85px;
    height: 85px;
    top: -10px;
    right: -10px;
  }
  
  .category-image-shape {
    width: 60px;
    height: 60px;
    bottom: -8px;
    left: -8px;
  }
}

/* ========================================
   Animation Enhancement
   ======================================== */

[data-aos="fade-right"],
[data-aos="fade-left"] {
  opacity: 0;
  transition-property: opacity, transform;
}

[data-aos="fade-right"] {
  transform: translateX(-40px);
}

[data-aos="fade-left"] {
  transform: translateX(40px);
}

[data-aos="fade-right"].aos-animate,
[data-aos="fade-left"].aos-animate {
  opacity: 1;
  transform: translateX(0);
}

/* ========================================
   Accessibility
   ======================================== */

.category-intro-content:focus-within {
  outline: 2px solid rgba(1, 41, 112, 0.3);
  outline-offset: 4px;
  border-radius: 8px;
}

@media (prefers-reduced-motion: reduce) {
  .category-image-wrapper,
  .category-image-wrapper img,
  .category-image-decoration,
  .category-image-shape,
  .category-intro-icon,
  .category-feature-item {
    transition: none;
  }
  
  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* ========================================
   Print Styles
   ======================================== */

@media print {
  .category-intro-section {
    padding: 30px 0;
  }
  
  .category-intro-wrapper {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .category-image-decoration,
  .category-image-shape {
    display: none;
  }
  
  .category-image-wrapper {
    box-shadow: none;
    border: 1px solid #e2e8f0;
  }
  
  .category-intro-icon {
    background: #012970 !important;
    box-shadow: none;
  }
  
  .category-intro-title {
    color: #012970 !important;
  }
  
  .category-feature-item {
    break-inside: avoid;
  }
}

/* ========================================
   Additional Enhancements
   ======================================== */

/* Smooth gradient overlay on image */
.category-image-wrapper::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to bottom right,
    rgba(1, 41, 112, 0) 0%,
    rgba(1, 41, 112, 0.03) 100%
  );
  pointer-events: none;
  z-index: 1;
  transition: opacity 0.4s ease;
}

.category-image-wrapper:hover::before {
  opacity: 0.7;
}

/* Loading animation for image */
@keyframes imageLoad {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

.category-image-wrapper img {
  animation: imageLoad 0.6s ease-out;
}

/* Icon pulse animation */
@keyframes iconPulse {
  0%, 100% {
    box-shadow: 
      0 6px 20px rgba(1, 41, 112, 0.2),
      inset 0 1px 0 rgba(255, 255, 255, 0.15);
  }
  50% {
    box-shadow: 
      0 8px 28px rgba(1, 41, 112, 0.3),
      inset 0 2px 0 rgba(255, 255, 255, 0.2);
  }
}

.category-intro-icon {
  animation: iconPulse 3s ease-in-out infinite;
}

/* Better text selection */
.category-intro-content ::selection {
  background: rgba(1, 41, 112, 0.15);
  color: #012970;
}

/* Improved link styling if any */
.category-intro-text a {
  color: #012970;
  text-decoration: none;
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
  font-weight: 600;
}

.category-intro-text a:hover {
  color: #1e88e5;
  border-bottom-color: #1e88e5;
}

/* ========================================
   DMA About Section Styles - Fully Responsive
   ======================================== */

/* Section Main Wrapper */
.dma-our-story-section {
  padding: 80px 0;
  background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
  position: relative;
  overflow: hidden;
}

.dma-our-story-section::before {
  content: '';
  position: absolute;
  width: 400px;
  height: 400px;
  background: rgba(1, 41, 112, 0.03);
  border-radius: 50%;
  top: -100px;
  left: -100px;
  z-index: 0;
}

.dma-our-story-section::after {
  content: '';
  position: absolute;
  width: 300px;
  height: 300px;
  background: rgba(255, 193, 7, 0.05);
  border-radius: 50%;
  bottom: -50px;
  right: -50px;
  z-index: 0;
}

.dma-our-story-section .container {
  position: relative;
  z-index: 1;
}

/* Section Header */
.dma-section-header {
  margin-bottom: 50px;
}

.dma-badge {
  display: inline-block;
  background: #10d876;
  color: #ffffff;
  padding: 8px 24px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 20px;
  text-transform: capitalize;
}

.dma-main-title {
  font-size: 42px;
  font-weight: 700;
  color: #012970;
  line-height: 1.3;
  margin: 0;
}

/* Tabs Navigation */
.dma-tabs-wrapper {
  margin-bottom: 20px;
}

.dma-tabs-nav {
  margin: 0 -15px;
  display: flex;
  flex-wrap: wrap;
}

.dma-tabs-nav > div {
  padding: 0 15px;
}

.dma-tab-btn {
  background: #ffffff;
  border: 2px solid transparent;
  border-radius: 15px;
  padding: 25px 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 15px rgba(1, 41, 112, 0.08);
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 140px;
  text-align: center;
  flex-direction: column;
}

.dma-tab-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
  transition: left 0.5s;
}

.dma-tab-btn:hover::before {
  left: 100%;
}

.dma-tab-btn:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 25px rgba(1, 41, 112, 0.15);
  border-color: rgba(1, 41, 112, 0.2);
}

.dma-tab-btn.dma-active {
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  border-color: #012970;
  transform: translateY(-3px);
  box-shadow: 0 10px 30px rgba(1, 41, 112, 0.3);
}

.dma-tab-icon {
  width: 60px;
  height: 60px;
  background: rgba(1, 41, 112, 0.1);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  color: #012970;
  transition: all 0.3s ease;
  flex-shrink: 0;
}

.dma-tab-btn.dma-active .dma-tab-icon {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
  transform: scale(1.1);
}

.dma-tab-icon img {
  width: 35px;
  height: 35px;
  object-fit: contain;
  transition: all 0.3s ease;
}

.dma-tab-btn.dma-active .dma-tab-icon img {
  filter: brightness(0) invert(1);
}

.dma-tab-text {
  font-size: 16px;
  font-weight: 600;
  color: #012970;
  transition: color 0.3s ease;
  text-align: center;
  line-height: 1.4;
}

.dma-tab-btn.dma-active .dma-tab-text {
  color: #ffffff;
}

/* Tabs Content */
.dma-tabs-content-wrapper {
  position: relative;
  min-height: 400px;
}

.dma-tab-content {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  transform: translateY(30px);
  pointer-events: none;
}

.dma-tab-content.dma-active {
  opacity: 1;
  visibility: visible;
  position: relative;
  transform: translateY(0);
  pointer-events: auto;
}

/* Content Image */
.dma-content-image {
  position: relative;
  padding: 20px;
}

.dma-main-img {
  width: 100%;
  height: auto;
  border-radius: 20px;
  position: relative;
  z-index: 2;
  box-shadow: 0 15px 50px rgba(1, 41, 112, 0.15);
  transition: transform 0.4s ease;
  display: block;
}

.dma-content-image:hover .dma-main-img {
  transform: scale(1.02) translateY(-5px);
  box-shadow: 0 20px 60px rgba(1, 41, 112, 0.2);
}

.dma-illustration-placeholder {
  width: 100%;
  height: 400px;
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  color: rgba(255, 255, 255, 0.3);
}

/* Decorative Shapes */
.dma-decoration-shapes {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
}

.dma-shape-1 {
  position: absolute;
  width: 80px;
  height: 80px;
  background: #ffc107;
  border-radius: 50%;
  top: -20px;
  left: -20px;
  opacity: 0.6;
  animation: dmaFloat 6s ease-in-out infinite;
}

.dma-shape-2 {
  position: absolute;
  width: 60px;
  height: 60px;
  background: #10d876;
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
  bottom: 30px;
  right: -10px;
  opacity: 0.5;
  animation: dmaFloat 8s ease-in-out infinite;
}

.dma-shape-3 {
  position: absolute;
  width: 40px;
  height: 40px;
  border: 3px solid #012970;
  border-radius: 50%;
  top: 50%;
  right: 20px;
  opacity: 0.3;
  animation: dmaRotate 10s linear infinite;
}

@keyframes dmaFloat {
  0%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-20px) rotate(10deg);
  }
}

@keyframes dmaRotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* Content Text */
.dma-content-text {
  padding: 0 30px;
}

.dma-highlighted-text {
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.08) 0%, rgba(16, 216, 118, 0.08) 100%);
  border-left: 4px solid #012970;
  padding: 25px;
  border-radius: 10px;
  margin-bottom: 25px;
  font-size: 16px;
  line-height: 1.8;
  color: #2c3e50;
  position: relative;
  overflow: hidden;
}

.dma-highlighted-text::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: linear-gradient(to bottom, #012970, #10d876);
}

.dma-highlighted-text p {
  margin: 0;
  font-weight: 500;
}

.dma-full-description {
  font-size: 15px;
  line-height: 1.8;
  color: #495057;
}

.dma-full-description p {
  margin-bottom: 15px;
}

.dma-full-description p:last-child {
  margin-bottom: 0;
}

/* No Content Message */
.dma-no-content {
  padding: 60px 20px;
  text-align: center;
  font-size: 18px;
  color: #6c757d;
  background: #f8f9fa;
  border-radius: 15px;
}

/* Loading Animation */
@keyframes dmaFadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.dma-tab-content.dma-active .row > div {
  animation: dmaFadeIn 0.6s ease forwards;
}

.dma-tab-content.dma-active .row > div:nth-child(2) {
  animation-delay: 0.2s;
}

/* ========================================
   RESPONSIVE BREAKPOINTS
   ======================================== */

/* Large Desktop (1400px and above) */
@media (min-width: 1400px) {
  .dma-our-story-section {
   
  }
  
  .dma-main-title {
    font-size: 48px;
  }
  
  .dma-tab-btn {
    padding: 30px 35px;
    min-height: 160px;
  }
  
  .dma-tab-icon {
    width: 70px;
    height: 70px;
    font-size: 32px;
  }
  
  .dma-tab-text {
    font-size: 18px;
  }
}

/* Desktop (1200px - 1399px) */
@media (min-width: 1200px) and (max-width: 1399px) {
  .dma-tab-btn {
    padding: 22px 25px;
    min-height: 140px;
  }
  
  .dma-tab-icon {
    width: 55px;
    height: 55px;
    font-size: 26px;
  }
  
  .dma-tab-text {
    font-size: 15px;
  }
}

/* Laptop/Tablet Landscape (992px - 1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
  .dma-our-story-section {
    
  }
  
  .dma-main-title {
    font-size: 36px;
  }
  
  .dma-tabs-wrapper {
    margin-bottom: 40px;
  }
  
  .dma-tab-btn {
    padding: 20px;
    min-height: 130px;
    gap: 12px;
  }
  
  .dma-tab-icon {
    width: 50px;
    height: 50px;
    font-size: 24px;
  }
  
  .dma-tab-icon img {
    width: 30px;
    height: 30px;
  }
  
  .dma-tab-text {
    font-size: 14px;
  }
  
  .dma-content-text {
    padding: 0 20px;
  }
  
  .dma-highlighted-text {
    padding: 20px;
    font-size: 15px;
  }
  
  .dma-full-description {
    font-size: 14px;
  }
}

/* Tablet Portrait (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  .dma-our-story-section {
   
  }
  
  .dma-main-title {
    font-size: 32px;
  }
  
  .dma-section-header {
    margin-bottom: 40px;
  }
  
  .dma-tabs-wrapper {
    margin-bottom: 40px;
  }
  
  .dma-tabs-nav {
    margin: 0 -10px;
  }
  
  .dma-tabs-nav > div {
    padding: 0 10px;
    margin-bottom: 15px;
  }
  
  .dma-tab-btn {
    padding: 18px 20px;
    min-height: 120px;
    gap: 10px;
  }
  
  .dma-tab-icon {
    width: 50px;
    height: 50px;
    font-size: 24px;
  }
  
  .dma-tab-icon img {
    width: 28px;
    height: 28px;
  }
  
  .dma-tab-text {
    font-size: 14px;
  }
  
  .dma-content-image {
    margin-bottom: 30px;
    padding: 10px;
  }
  
  .dma-content-text {
    padding: 0 15px;
  }
  
  .dma-highlighted-text {
    padding: 18px;
    font-size: 14px;
  }
  
  .dma-full-description {
    font-size: 14px;
  }
  
  .dma-tabs-content-wrapper {
    min-height: 350px;
  }
  
  .dma-illustration-placeholder {
    height: 350px;
    font-size: 60px;
  }
}

/* Mobile Landscape (576px - 767px) */
@media (min-width: 576px) and (max-width: 767px) {
  .dma-our-story-section {
  
  }
  
  .dma-our-story-section::before,
  .dma-our-story-section::after {
    width: 200px;
    height: 200px;
  }
  
  .dma-main-title {
    font-size: 28px;
  }
  
  .dma-badge {
    padding: 6px 18px;
    font-size: 13px;
  }
  
  .dma-section-header {
    margin-bottom: 30px;
  }
  
  .dma-tabs-wrapper {
    margin-bottom: 30px;
  }
  
  .dma-tabs-nav {
    margin: 0 -8px;
  }
  
  .dma-tabs-nav > div {
    padding: 0 8px;
    margin-bottom: 12px;
  }
  
  .dma-tab-btn {
    padding: 15px;
    min-height: auto;
    flex-direction: row;
    justify-content: flex-start;
    gap: 12px;
  }
  
  .dma-tab-icon {
    width: 45px;
    height: 45px;
    font-size: 20px;
  }
  
  .dma-tab-icon img {
    width: 24px;
    height: 24px;
  }
  
  .dma-tab-text {
    font-size: 14px;
    text-align: left;
  }
  
  .dma-content-image {
    margin-bottom: 25px;
    padding: 5px;
  }
  
  .dma-main-img {
    border-radius: 15px;
  }
  
  .dma-content-text {
    padding: 0 10px;
  }
  
  .dma-highlighted-text {
    padding: 15px;
    font-size: 14px;
    margin-bottom: 20px;
  }
  
  .dma-full-description {
    font-size: 14px;
  }
  
  .dma-tabs-content-wrapper {
    min-height: 300px;
  }
  
  .dma-illustration-placeholder {
    height: 300px;
    font-size: 50px;
  }
  
  /* Hide decorative shapes on mobile */
  .dma-shape-1,
  .dma-shape-2,
  .dma-shape-3 {
    display: none;
  }
}

/* Mobile Portrait (Below 576px) */
@media (max-width: 575px) {
  .dma-our-story-section {
    padding: 30px 0;
  }
  
  .dma-our-story-section::before,
  .dma-our-story-section::after {
    width: 150px;
    height: 150px;
  }
  
  .dma-main-title {
    font-size: 24px;
  }
  
  .dma-badge {
    padding: 5px 15px;
    font-size: 12px;
    margin-bottom: 15px;
  }
  
  .dma-section-header {
    margin-bottom: 25px;
  }
  
  .dma-tabs-wrapper {
    margin-bottom: 25px;
  }
  
  .dma-tabs-nav {
    margin: 0;
    flex-direction: column;
  }
  
  .dma-tabs-nav > div {
    padding: 0;
    margin-bottom: 10px;
    width: 100%;
  }
  
  .dma-tabs-nav > div:last-child {
    margin-bottom: 0;
  }
  
  .dma-tab-btn {
    padding: 15px;
    min-height: auto;
    flex-direction: row;
    justify-content: flex-start;
    gap: 12px;
    border-radius: 12px;
  }
  
  .dma-tab-icon {
    width: 42px;
    height: 42px;
    font-size: 18px;
    border-radius: 10px;
  }
  
  .dma-tab-icon img {
    width: 22px;
    height: 22px;
  }
  
  .dma-tab-text {
    font-size: 13px;
    text-align: left;
    line-height: 1.3;
  }
  
  .dma-content-image {
    margin-bottom: 20px;
    padding: 0;
  }
  
  .dma-main-img {
    border-radius: 12px;
  }
  
  .dma-content-text {
    padding: 0;
  }
  
  .dma-highlighted-text {
    padding: 12px 15px;
    font-size: 13px;
    margin-bottom: 15px;
    border-radius: 8px;
  }
  
  .dma-full-description {
    font-size: 13px;
    line-height: 1.7;
  }
  
  .dma-tabs-content-wrapper {
    min-height: 250px;
  }
  
  .dma-illustration-placeholder {
    height: 250px;
    font-size: 40px;
    border-radius: 12px;
  }
  
  .dma-no-content {
    padding: 40px 15px;
    font-size: 15px;
  }
  
  /* Hide decorative shapes on mobile */
  .dma-shape-1,
  .dma-shape-2,
  .dma-shape-3 {
    display: none;
  }
  
  /* Adjust decorative circles */
  .dma-our-story-section::before {
    top: -50px;
    left: -50px;
  }
  
  .dma-our-story-section::after {
    bottom: -30px;
    right: -30px;
  }
}

/* Extra Small Mobile (Below 400px) */
@media (max-width: 399px) {
  .dma-main-title {
    font-size: 22px;
  }
  
  .dma-tab-btn {
    padding: 12px;
    gap: 10px;
  }
  
  .dma-tab-icon {
    width: 38px;
    height: 38px;
    font-size: 16px;
  }
  
  .dma-tab-icon img {
    width: 20px;
    height: 20px;
  }
  
  .dma-tab-text {
    font-size: 12px;
  }
  
  .dma-highlighted-text {
    padding: 10px 12px;
    font-size: 12px;
  }
  
  .dma-full-description {
    font-size: 12px;
  }
  
  .dma-illustration-placeholder {
    height: 220px;
    font-size: 35px;
  }
}

/* Fix for content alignment on mobile */
@media (max-width: 991px) {
  .dma-tab-content .row {
    margin: 0;
  }
  
  .dma-tab-content .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
  }
}

/* Performance Optimization */
@media (prefers-reduced-motion: reduce) {
  .dma-tab-btn,
  .dma-tab-icon,
  .dma-main-img,
  .dma-tab-content {
    transition: none;
  }
  
  .dma-shape-1,
  .dma-shape-2,
  .dma-shape-3 {
    animation: none;
  }
  
  .dma-tab-btn::before {
    display: none;
  }
}



/* ========================================
   PK Strategy & Add-on Sections - Ultra Modern
   ======================================== */

/* ========================================
   1. Strategy Add-on Section - Modern Design
   ======================================== */
.pks-strategy-section {
  padding: 120px 0;
  background: #ffffff;
  position: relative;
  overflow: hidden;
}

/* Animated Background Gradient */
.pks-strategy-section::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: 
    radial-gradient(circle at 20% 30%, rgba(1, 41, 112, 0.04) 0%, transparent 50%),
    radial-gradient(circle at 80% 70%, rgba(13, 71, 161, 0.04) 0%, transparent 50%),
    linear-gradient(135deg, #f8fafb 0%, #ffffff 100%);
  z-index: 0;
}

/* Floating Shapes */
.pks-strategy-section::after {
  content: '';
  position: absolute;
  width: 300px;
  height: 300px;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.06), rgba(13, 71, 161, 0.03));
  border-radius: 50%;
  top: 10%;
  right: 5%;
  filter: blur(60px);
  animation: pksFloatBig 20s ease-in-out infinite;
  z-index: 0;
}

@keyframes pksFloatBig {
  0%, 100% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(-30px, -30px) scale(1.1); }
}

.pks-strategy-section .container {
  position: relative;
  z-index: 1;
}

/* Content Area - Left Side */
.pks-addon-content {
  padding-right: 50px;
}

/* Badge with Animation */
.pks-addon-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  color: #ffffff;
  padding: 10px 24px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 25px;
  box-shadow: 0 8px 20px rgba(1, 41, 112, 0.25);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  animation: pksBadgePulse 2s ease-in-out infinite;
}

@keyframes pksBadgePulse {
  0%, 100% { box-shadow: 0 8px 20px rgba(1, 41, 112, 0.25); }
  50% { box-shadow: 0 12px 30px rgba(1, 41, 112, 0.4); }
}

.pks-addon-badge::before {
  content: '✦';
  font-size: 14px;
}

/* Main Title */
.pks-addon-content h2 {
  font-size: 36px;
  font-weight: 800;
  color: #0a1128;
  margin-bottom: 20px;
  line-height: 1.3;
  letter-spacing: -0.5px;
}

.pks-addon-content h2 span {
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  position: relative;
  display: inline-block;
  padding-bottom: 8px;
}

.pks-addon-content h2 span::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, #012970, #0d47a1);
  border-radius: 2px;
  animation: pksLineGrow 1.5s ease forwards;
}

@keyframes pksLineGrow {
  from { width: 0; }
  to { width: 100%; }
}

/* Description */
.pks-addon-description {
  font-size: 16px;
  color: #4a5568;
  line-height: 1.8;
  margin-bottom: 35px;
  font-weight: 400;
}

/* Features List - Cards Style */
.pks-features-list {
  list-style: none;
  padding: 0;
  margin: 0 0 45px;
  display: grid;
  gap: 15px;
}

.pks-features-list li {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 20px 25px;
  background: #ffffff;
  border-radius: 16px;
  border: 2px solid #e8eef5;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}

.pks-features-list li::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 0;
  background: linear-gradient(180deg, #012970, #0d47a1);
  transition: height 0.4s ease;
}

.pks-features-list li:hover::before {
  height: 100%;
}

.pks-features-list li:hover {
  background: #f8fafb;
  border-color: #012970;
  transform: translateX(8px);
  box-shadow: 0 10px 30px rgba(1, 41, 112, 0.12);
}

/* Feature Icon - Glassmorphism */
.pks-feature-icon {
  flex-shrink: 0;
  width: 45px;
  height: 45px;
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 20px;
  box-shadow: 
    0 8px 20px rgba(1, 41, 112, 0.25),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}

.pks-features-list li:hover .pks-feature-icon {
  transform: scale(1.1) rotate(5deg);
  box-shadow: 
    0 12px 30px rgba(1, 41, 112, 0.35),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.pks-feature-text {
  flex: 1;
  font-size: 15px;
  color: #2d3748;
  font-weight: 600;
  line-height: 1.5;
}

/* Price Box - Premium Card */
.pks-price-box {
  background: linear-gradient(135deg, #ffffff 0%, #f8fafb 100%);
  padding: 35px;
  border-radius: 20px;
  border: 2px solid #e8eef5;
  box-shadow: 
    0 20px 50px rgba(1, 41, 112, 0.12),
    0 0 0 1px rgba(1, 41, 112, 0.05);
  position: relative;
  overflow: hidden;
}

.pks-price-box::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 6px;
  background: linear-gradient(90deg, #012970 0%, #0d47a1 100%);
}

.pks-price-box::after {
  content: '💎';
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 40px;
  opacity: 0.1;
}

.pks-price-label {
  font-size: 14px;
  color: #718096;
  font-weight: 700;
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.pks-price-amount {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 15px;
}

.pks-price-number {
  font-size: 42px;
  font-weight: 900;
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
}

.pks-price-currency {
  font-size: 22px;
  color: #4a5568;
  font-weight: 700;
}

.pks-price-note {
  font-size: 15px;
  color: #718096;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.pks-price-note::before {
  content: '⚡';
  font-size: 16px;
}

/* Image Area - Right Side */
.pks-addon-image {
  position: relative;
  text-align: center;
  padding: 30px;
}

.pks-image-wrapper {
  position: relative;
  display: inline-block;
}

.pks-addon-image img {
  max-width: 100%;
  height: auto;
  border-radius: 24px;
  box-shadow: 
    0 30px 70px rgba(1, 41, 112, 0.2),
    0 0 0 1px rgba(1, 41, 112, 0.05);
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  z-index: 2;
}

.pks-addon-image img:hover {
  transform: translateY(-10px) scale(1.02);
  box-shadow: 0 40px 90px rgba(1, 41, 112, 0.25);
}

/* Decorative Elements */
.pks-image-decoration {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
}

.pks-deco-shape {
  position: absolute;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(1, 41, 112, 0.1), rgba(13, 71, 161, 0.05));
  animation: pksShapeFloat 8s ease-in-out infinite;
}

.pks-deco-shape:nth-child(1) {
  width: 120px;
  height: 120px;
  top: -30px;
  right: -30px;
  animation-delay: 0s;
}

.pks-deco-shape:nth-child(2) {
  width: 80px;
  height: 80px;
  bottom: 40px;
  left: -20px;
  animation-delay: 1.5s;
}

.pks-deco-shape:nth-child(3) {
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  animation-delay: 3s;
}

@keyframes pksShapeFloat {
  0%, 100% { transform: translate(0, 0) scale(1); opacity: 0.6; }
  50% { transform: translate(-15px, -15px) scale(1.15); opacity: 0.8; }
}

/* ========================================
   2. Request Buttons Section - Modern Cards
   ======================================== */
.pks-request-section {
  padding: 120px 0;
  background: linear-gradient(180deg, #f8fafb 0%, #ffffff 100%);
  position: relative;
}

/* Section Header */
.pks-section-header {
  text-align: center;
  margin-bottom: 70px;
  position: relative;
}

.pks-section-header::before {
  content: '';
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 4px;
  background: linear-gradient(90deg, #012970, #0d47a1);
  border-radius: 2px;
}

.pks-section-title {
  font-size: 36px;
  font-weight: 800;
  color: #0a1128;
  margin-bottom: 15px;
  letter-spacing: -0.5px;
}

.pks-section-subtitle {
  font-size: 16px;
  color: #4a5568;
  max-width: 650px;
  margin: 0 auto;
  line-height: 1.7;
}

/* Request Card - Modern 3D Effect */
.pks-request-card {
  background: #ffffff;
  border-radius: 24px;
  padding: 50px 40px;
  height: 100%;
  border: 2px solid transparent;
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(1, 41, 112, 0.08);
}

/* Card Gradient Border Effect */
.pks-request-card::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 24px;
  padding: 2px;
  background: linear-gradient(135deg, #012970, #0d47a1);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.pks-request-card:hover::before {
  opacity: 1;
}

/* Shine Effect */
.pks-request-card::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    45deg,
    transparent 30%,
    rgba(255, 255, 255, 0.3) 50%,
    transparent 70%
  );
  transform: translateX(-100%) translateY(-100%) rotate(45deg);
  transition: transform 0.8s ease;
}

.pks-request-card:hover::after {
  transform: translateX(100%) translateY(100%) rotate(45deg);
}

.pks-request-card:hover {
  transform: translateY(-15px) scale(1.02);
  box-shadow: 0 25px 60px rgba(1, 41, 112, 0.18);
}

/* Card Icon - 3D Style */
.pks-card-icon {
  width: 75px;
  height: 75px;
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
  transition: all 0.4s ease;
  box-shadow: 
    0 15px 35px rgba(1, 41, 112, 0.3),
    inset 0 -5px 15px rgba(0, 0, 0, 0.2),
    inset 0 5px 15px rgba(255, 255, 255, 0.2);
  position: relative;
}

.pks-card-icon::before {
  content: '';
  position: absolute;
  inset: 8px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), transparent);
  border-radius: 12px;
}

.pks-request-card:hover .pks-card-icon {
  transform: scale(1.15) rotate(-5deg);
  box-shadow: 
    0 20px 45px rgba(1, 41, 112, 0.4),
    inset 0 -5px 15px rgba(0, 0, 0, 0.3),
    inset 0 5px 15px rgba(255, 255, 255, 0.3);
}

.pks-card-icon i {
  font-size: 36px;
  color: #ffffff;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

/* Card Content */
.pks-card-title {
  font-size: 24px;
  font-weight: 800;
  color: #0a1128;
  margin-bottom: 18px;
  line-height: 1.3;
  transition: color 0.3s ease;
}

.pks-request-card:hover .pks-card-title {
  color: #012970;
}

.pks-card-description {
  font-size: 15px;
  color: #4a5568;
  line-height: 1.8;
  margin-bottom: 35px;
}

/* Card Button - Modern Gradient */
.pks-card-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 16px 36px;
  background: linear-gradient(135deg, #012970 0%, #0d47a1 100%);
  color: #ffffff;
  text-decoration: none;
  border-radius: 50px;
  font-weight: 700;
  font-size: 16px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 
    0 10px 25px rgba(1, 41, 112, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  position: relative;
  overflow: hidden;
}

.pks-card-button::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.6s ease, height 0.6s ease;
}

.pks-card-button:hover::before {
  width: 400px;
  height: 400px;
}

.pks-card-button:hover {
  transform: translateY(-3px);
  box-shadow: 
    0 15px 40px rgba(1, 41, 112, 0.4),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
  color: #ffffff;
}

.pks-card-button i {
  transition: transform 0.3s ease;
  position: relative;
  z-index: 1;
  font-size: 18px;
}

.pks-card-button:hover i {
  transform: translateX(6px);
}

.pks-card-button span {
  position: relative;
  z-index: 1;
}

/* ========================================
   Responsive Design - Mobile First
   ======================================== */
@media (max-width: 1199px) {
  .pks-addon-content {
    padding-right: 30px;
  }
  
  .pks-addon-content h2 {
    font-size: 44px;
  }
  
  .pks-section-title {
    font-size: 42px;
  }
}

@media (max-width: 991px) {
  .pks-strategy-section,
  .pks-request-section {
    padding: 80px 0;
  }
  
  .pks-addon-content {
    padding-right: 0;
    margin-bottom: 60px;
  }
  
  .pks-addon-content h2 {
    font-size: 38px;
  }
  
  .pks-addon-description {
    font-size: 17px;
  }
  
  .pks-section-title {
    font-size: 38px;
  }
  
  .pks-request-card {
    margin-bottom: 30px;
  }
}

@media (max-width: 767px) {
  .pks-strategy-section,
  .pks-request-section {
    padding: 60px 0;
  }
  
  .pks-addon-content h2 {
    font-size: 32px;
  }
  
  .pks-addon-description {
    font-size: 16px;
    margin-bottom: 30px;
  }
  
  .pks-features-list li {
    padding: 18px 20px;
    gap: 15px;
  }
  
  .pks-feature-icon {
    width: 45px;
    height: 45px;
    font-size: 20px;
  }
  
  .pks-feature-text {
    font-size: 16px;
  }
  
  .pks-price-box {
    padding: 30px 25px;
  }
  
  .pks-price-number {
    font-size: 48px;
  }
  
  .pks-price-currency {
    font-size: 24px;
  }
  
  .pks-section-header {
    margin-bottom: 50px;
  }
  
  .pks-section-title {
    font-size: 32px;
  }
  
  .pks-section-subtitle {
    font-size: 17px;
  }
  
  .pks-request-card {
    padding: 40px 30px;
  }
  
  .pks-card-icon {
    width: 80px;
    height: 80px;
  }
  
  .pks-card-icon i {
    font-size: 38px;
  }
  
  .pks-card-title {
    font-size: 24px;
  }
  
  .pks-card-description {
    font-size: 16px;
  }
  
  .pks-card-button {
    width: 100%;
  }
}

@media (max-width: 576px) {
  .pks-addon-content h2 {
    font-size: 28px;
  }
  
  .pks-addon-badge {
    font-size: 12px;
    padding: 8px 18px;
  }
  
  .pks-features-list li {
    padding: 16px 18px;
  }
  
  .pks-feature-icon {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }
  
  .pks-feature-text {
    font-size: 15px;
  }
  
  .pks-price-number {
    font-size: 42px;
  }
  
  .pks-section-title {
    font-size: 28px;
  }
  
  .pks-card-title {
    font-size: 22px;
  }
  
  .pks-card-button {
    padding: 14px 28px;
    font-size: 15px;
  }
}



/* ====================================
   Quota Popup - Premium Design
   ==================================== */

/* Overlay - Very Transparent Black */
.quota-popup-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.92);
  z-index: 99999;
  opacity: 0;
  transition: opacity 0.35s ease;
}

.quota-popup-overlay.active {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}

/* Container */
.quota-popup-container {
  background: #fff;
  border-radius: 12px;
  max-width: 520px;
  width: 90%;
  max-height: 88vh;
  overflow-y: auto;
  position: relative;
  transform: translateY(30px);
  opacity: 0;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
}

.quota-popup-overlay.active .quota-popup-container {
  transform: translateY(0);
  opacity: 1;
}

/* Scrollbar */
.quota-popup-container::-webkit-scrollbar {
  width: 6px;
}

.quota-popup-container::-webkit-scrollbar-track {
  background: transparent;
}

.quota-popup-container::-webkit-scrollbar-thumb {
  background: #012970;
  border-radius: 3px;
}

/* Close Button */
.quota-popup-close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: #fff;
  color: #012970;
  border: 1px solid #e5e7eb;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  z-index: 10;
  transition: all 0.2s ease;
}

.quota-popup-close:hover {
  background: #f3f4f6;
  border-color: #012970;
  transform: scale(1.05);
}

/* Header */
.quota-popup-header {
  background: #012970;
  color: #fff;
  padding: 48px 32px 32px;
  text-align: center;
  border-radius: 12px 12px 0 0;
}

.quota-popup-header h2 {
  margin: 0 0 12px;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: -0.5px;
  color: #fff;
}

.quota-popup-header p {
  margin: 0;
  font-size: 15px;
  opacity: 0.9;
  font-weight: 400;
  color: #fff;
}

/* Body */
.quota-popup-body {
  padding: 32px;
}

/* Form Wrapper */
.quota-form-wrapper {
  background: transparent;
}

/* Form Row */
.quota-form-row {
  margin-bottom: 20px;
}

.quota-form-row.d-none {
  display: none;
}

/* Labels */
.quota-label {
  display: block;
  margin-bottom: 6px;
  color: #1f2937;
  font-weight: 600;
  font-size: 13px;
}

/* Inputs */
.quota-input,
.quota-textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  font-size: 15px;
  transition: all 0.2s ease;
  background: #fff;
  color: #1f2937;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.quota-input:focus,
.quota-textarea:focus {
  border-color: #012970;
  outline: none;
  box-shadow: 0 0 0 3px rgba(1, 41, 112, 0.08);
}

.quota-input::placeholder,
.quota-textarea::placeholder {
  color: #9ca3af;
}

/* Textarea */
.quota-textarea {
  min-height: 120px;
  resize: vertical;
}

/* Submit Button */
.quota-submit {
  width: 100%;
  padding: 14px;
  background: #012970;
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  letter-spacing: 0.3px;
}

.quota-submit:hover {
  background: #001d4a;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(1, 41, 112, 0.3);
}

.quota-submit:active {
  transform: translateY(0);
}

/* Messages */
.quota-popup-body .wpcf7-response-output {
  margin: 16px 0 0;
  padding: 12px 16px;
  border-radius: 8px;
  font-size: 14px;
  border: none;
}

.quota-popup-body .wpcf7-mail-sent-ok {
  background: #d1fae5;
  color: #065f46;
}

.quota-popup-body .wpcf7-validation-errors,
.quota-popup-body .wpcf7-mail-sent-ng {
  background: #fee2e2;
  color: #991b1b;
}

/* Spinner */
.quota-popup-body .wpcf7-spinner {
  margin: 10px auto;
  display: block;
}

/* Responsive */
@media (max-width: 640px) {
  .quota-popup-container {
    width: 94%;
    max-height: 94vh;
  }
  
  .quota-popup-header {
    padding: 36px 24px 24px;
  }
  
  .quota-popup-header h2 {
    font-size: 24px;
  }
  
  .quota-popup-header p {
    font-size: 14px;
  }
  
  .quota-popup-body {
    padding: 24px;
  }
  
  .quota-input,
  .quota-textarea {
    font-size: 16px;
  }
}