 :root {
     --hero-bg: #f8fbfd;
     --pattern-color: rgb(17 67 135 / 8%);
     /* --site-color: #007bff; */
 }

 .show1,
 .show2 {
     display: flex;
     align-items: center;
     gap: 10px;
     border-radius: 5px;
     color: #fff;
     text-align: left;
 }

 .icn {
     width: 50px;
     height: 50px;
     display: flex;
     justify-content: center;
     align-items: center;
     background-color: var(--site-color);
     border-radius: 5px;
 }

 .show1 {
     background-color: #9dd2f5ff;
 }

 .show2 {
     background-color: #f5b942ff;
 }

 /* Hero Base */
 .hero-section {
     background: var(--hero-bg);
     position: relative;
     padding: 60px 0;
     overflow: hidden;
 }

 /* Background diagonal pattern */
 .hero-section::before {
     content: "";
     position: absolute;
     inset: 0;
     background-image: linear-gradient(135deg, var(--pattern-color) 25%, transparent 25%, transparent 50%, var(--pattern-color) 50%, var(--pattern-color) 75%, transparent 75%, transparent);
     background-size: 80px 80px;
     z-index: 0;
     opacity: 0.3;
 }

 .hero-section .container {
     position: relative;
     z-index: 1;
 }

 /* Headings */
 .hero-section h1 {
     color: #0a2540;
     font-weight: 800;
     line-height: 1.2;
     font-size: 3rem;
 }

 .text-primary {
     color: #f16334 !important;
     font-size: 2rem !important;
 }

 /* Form */


 .hero-form button {
     border-radius: 5px;
     /* font-weight: 600; */
     font-size: 1.1rem;
     box-shadow: 0 5px 15px rgba(0, 123, 255, 0.2);
     background-color: var(--site-color);
     color: #fff;
 }

 .hero-form button:hover {
     background-color: #0056b3;
     box-shadow: 0 8px 20px rgba(0, 86, 179, 0.3);
     color: #fff;
 }

 /* Brand Logos */
 .hero-brands img {
     opacity: 0.75;
     transition: opacity 0.3s ease;
 }

 .hero-brands img:hover {
     opacity: 1;
 }

 /* Cards */
 .rev {
     display: flex;
     justify-content: flex-end;
 }

 .hero-card {
     width: 100%;
     position: relative;
 }

 .main-card {
     border-radius: 1.5rem !important;
     box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08) !important;
     transition: transform 0.3s ease;
     border-radius: 10px !important;
 }


 /* Floating Mini Card */
 .floating-card {
     top: -30px;
     right: -50px;
     animation: floatCard 4s ease-in-out infinite;
 }

 .small-card {
     background: linear-gradient(135deg, #007bff, #004e92);
     width: 170px;
     box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
 }

 @keyframes floatCard {

     0%,
     100% {
         transform: translateY(0);
     }

     50% {
         transform: translateY(-10px);
     }
 }

 /* Responsive */
 @media (max-width: 991px) {
     .hero-section {
         text-align: center;
         padding: 80px 0;
     }

     .hero-form {
         justify-content: center;
     }

     .hero-card {
         margin-top: 3rem;
     }

     .floating-card {
         right: 10%;
         top: -20px;
     }
 }



 /* ========= GP Media Growth Section ======== */


 .growth-section {
     background: #fff;
     border-radius: 10px;
     margin: 60px auto;
     padding: 50px 30px;
     border: 1px solid #114387;
     position: relative;
 }

 .bol {
     width: 100px;
     height: 5px;
     background: var(--site-color);
     position: absolute;
     top: -3.5px;
     left: 50%;
     transform: translateX(-50%);
     border-radius: 2px;
 }

 .bol2 {
     width: 150px;
     height: 150px;
     border: 15px solid var(--site-color);
     position: absolute;
     top: -50px;
     right: -40px;
     border-radius: 50%;
     opacity: 0.1;
     background-color: #f0f2f3;
     background-image: url("https://www.transparenttextures.com/patterns/always-grey.png");
     /* This is mostly intended for prototyping; please download the pattern and re-host for production environments. Thank you! */
 }

 .growth-section h2 {
     font-weight: 500;
     color: #0a2540;
     line-height: 1.2;
     /* font-size: 2rem; */
     margin-top: 10px;
 }

 .growth-section h2>span {
     font-weight: 400;
     font-size: 30px;
     text-decoration: underline;
     -webkit-text-decoration-color: #f16334 !important;
     text-decoration-color: #f16334 !important;
     color: #f16334;
 }

 .small-h {
     color: var(--site-color);
     font-size: 14px;
     text-transform: uppercase;
 }

 .ds {
     color: #676767ff;
 }

 .feature-item {
     /* background: #fff; */
     border-radius: 5px;
     padding: 20px;
     transition: all 0.3s ease;
     height: 100%;
     /* border: 1px solid #eef2f6; */
 }

 .feature-item p {
     margin: 0px;
     font-size: 13px;
     color: #676767ff;
 }

 /* Light tinted backgrounds matching the top border color */
 .ft-1 {
     border: 2px solid #007bff;
     background: rgba(0, 123, 255, 0.06);
     /* very light blue */
 }

 .ft-2 {
     border: 2px solid #28a745;
     background: rgba(40, 167, 69, 0.06);
     /* very light green */
 }

 .ft-3 {
     border: 2px solid #dc3545;
     background: rgba(220, 53, 69, 0.06);
     /* very light red/pink */
 }

 .feature-item:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
 }

 .icon i {
     background: linear-gradient(135deg, #007bff, #004e92);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     font-size: 15px;
     margin-bottom: 10px;
 }

 @media (max-width: 991px) {
     .growth-section {
         padding: 70px 0;
         text-align: center;
     }
 }



 /* ========= categories Area Start ========  */


 .categories-area {
  /* background: #f9fbfd; */
  border-radius: 16px;
  overflow: hidden;
  /* margin: 50px 0; */
  padding: 50px 0px;
  /* border:2px solid #114387; */
}

.categories-header{
    margin-bottom: 20px;
}

.categories-area h2 {
  font-weight: 500;
    color: #0a2540;
    line-height: 1.2;
    /* font-size: 2rem; */
    margin-top: 10px;
}
.categories-area h2 span{
    font-weight: 400;
    font-size: 30px;
    text-decoration: underline;
    -webkit-text-decoration-color: #f16334 !important;
    text-decoration-color: #f16334 !important;
    color: #f16334;
}

.browse-btn {
    color: #192839 !important;
    font-weight: 500;
    font-size: 16px;
    position: relative;
    display: inline-block;
}
.browse-btn::before {
    position: absolute;
    content: "";
    background: #FF4495;
    width: 100%;
    height: 2px;
    bottom: -5px;
}
.browse-btn:hover {
    color: #FF4495;
    letter-spacing: 1px;
}

.single-cat {
  background: #fff;
  border-radius: 5px;
  padding: 25px;
  transition: all 0.4s ease;
  position: relative;
  z-index: 1;
  box-shadow: 0 10px 25px rgba(68, 162, 255, 0.08);
  height: 100%;
  border: 1px solid #eef2f6;
  overflow: hidden;
  text-align: left;
  cursor: pointer;
}

.single-cat::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, var(--site-color), #004e92);
  border-radius: 5px;
  z-index: -1;
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform 0.4s ease;
}

.single-cat:hover::before {
  transform: scaleY(1);
}

.single-cat:hover {
  /* transform: translateY(-8px); */
  box-shadow: 0 20px 35px rgba(0, 0, 0, 0.08);
}

.single-cat:hover h5 a,
.single-cat:hover p {
  color: #fff !important;
}

.cat-icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #e8f0ff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 20px rgba(0, 123, 255, 0.08);
  transition: all 0.3s ease;
  margin-bottom: 20px;
}
.cat-icon i {
  font-size: 15px;
  color: var(--site-color);
}

.single-cat:hover .cat-icon {
  background: rgba(255, 255, 255, 0.15);
  transform: scale(1.1);
  cursor: pointer;
}
.single-cat:hover .cat-icon i {
  color: #fff;
}


.cat-cap {
  color: #192839;
  font-size: 13px;
  line-height: 1.5;
  margin: 0;
  transition: color 0.3s ease;
}

@media (max-width: 991px) {
  .section-tittle h2 {
    font-size: 1.75rem;
  }
  .single-cat {
    padding: 30px 20px;
  }
}
