html { scroll-behavior: smooth; }
  body { font-family: 'Poppins', sans-serif; color: #1E293B; background: #F8FAFC; overflow-x: hidden; }
  .font-serif-italic { font-family: 'Cormorant Garamond', serif; font-style: italic; }

  ::selection { background: #DDA853; color: #0F2536; }

  /* Scrollbar */
  ::-webkit-scrollbar { width: 8px; }
  ::-webkit-scrollbar-track { background: #F8FAFC; }
  ::-webkit-scrollbar-thumb { background: linear-gradient(#183B4E, #DDA853); border-radius: 10px; }

  /* Gold stroke underline - signature motif */
  .stroke-underline { position: relative; display: inline-block; }
  .stroke-underline svg { position: absolute; left: -2%; bottom: -0.18em; width: 104%; height: 0.5em; overflow: visible; }
  .stroke-underline path {
    stroke: #DDA853; stroke-width: 6; fill: none; stroke-linecap: round;
    stroke-dasharray: 400; stroke-dashoffset: 400;
    animation: drawStroke 1.4s cubic-bezier(.65,0,.35,1) forwards;
    animation-delay: .5s;
  }
  @keyframes drawStroke { to { stroke-dashoffset: 0; } }

  /* Glow blob */
  .blob { position: absolute; border-radius: 50%; filter: blur(80px); opacity: .45; }
  .blob-anim { animation: floatBlob 9s ease-in-out infinite; }
  @keyframes floatBlob {
    0%,100% { transform: translate(0,0) scale(1); }
    50% { transform: translate(20px,-30px) scale(1.08); }
  }

  .particle { position: absolute; border-radius: 50%; background: #DDA853; opacity: .5; animation: floatParticle linear infinite; }
  @keyframes floatParticle {
    0% { transform: translateY(0) translateX(0); opacity: 0; }
    10% { opacity: .6; }
    90% { opacity: .5; }
    100% { transform: translateY(-140px) translateX(20px); opacity: 0; }
  }

  /* Glass card */
  .glass {
    background: rgba(255,255,255,0.65);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255,255,255,0.5);
  }
  .glass-dark {
    background: rgba(15,37,54,0.55);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255,255,255,0.08);
  }

  /* Nav blur */
  #navbar { transition: all .4s ease; }
  #navbar.scrolled { backdrop-filter: blur(16px); box-shadow: 0 8px 30px rgba(15,37,54,0.08); }
  #navbar.scrolled {background:
    linear-gradient(rgba(15,37,54,.90),
    rgba(24,59,78,.88));
 }

#navbar.scrolled .menu li a:hover { color: rgb(221 168 83);}
/* Menu Link */
#navbar .menu li a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    transition: color 0.3s ease;
}

/* Underline */
#navbar .menu li a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -5px;
    width: 0;
    height: 2px;
    background: rgb(255 255 255);
    transform: translateX(-50%);
    transition: width 0.35s ease;
}
#navbar.scrolled .menu li a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -5px;
    width: 0;
    height: 2px;
    background: rgb(221, 168, 83);
    transform: translateX(-50%);
    transition: width 0.35s ease;
}


/* Hover Effect */
#navbar.scrolled .menu li a:hover {
    color: rgb(221, 168, 83);
}

#navbar .menu li a:hover::after {
    width: 100%;
}
  /* Buttons */
  .btn-gold {
    background: linear-gradient(135deg, #DDA853, #B9873A);
    color: #0F2536; font-weight: 600; position: relative; overflow: hidden;
    transition: transform .35s ease, box-shadow .35s ease;
  }
  .btn-gold:hover { transform: translateY(-3px); box-shadow: 0 14px 30px -8px rgba(221,168,83,.55); }
  .btn-outline {
    border: 1.5px solid rgba(255,255,255,.5); color: #fff; transition: all .35s ease;
  }
  .btn-outline:hover { background: rgba(255,255,255,.12); border-color: #DDA853; }
  .btn-outline-navy {
    border: 1.5px solid rgba(24,59,78,.25); color: #183B4E; transition: all .35s ease;
  }
  .btn-outline-navy:hover { background: rgba(24,59,78,.06); border-color: #DDA853; }

  .ripple { position: relative; overflow: hidden; }
  .ripple span.circle {
    position: absolute; border-radius: 50%; transform: scale(0);
    background: rgba(255,255,255,.5); animation: rippleAnim .6s linear; pointer-events: none;
  }
  @keyframes rippleAnim { to { transform: scale(3); opacity: 0; } }

  /* Card hover */
  .service-card { transition: transform .45s cubic-bezier(.2,.8,.2,1), box-shadow .45s ease, border-color .45s ease; }
  .service-card:hover { transform: translateY(-10px); box-shadow: 0 30px 60px -20px rgba(24,59,78,.25); border-color: #DDA853; }
  .service-icon { transition: transform .45s ease, background .45s ease; }
  .service-card:hover .service-icon { transform: rotate(-8deg) scale(1.08); background: linear-gradient(135deg,#183B4E,#DDA853); }

  /* Progress bars */
  .bar-fill { width: 0; transition: width 1.4s cubic-bezier(.2,.8,.2,1); }

  /* Media logo strip */
  .media-logo { filter: grayscale(1); opacity: .55; transition: filter .35s ease, opacity .35s ease, transform .35s ease; }
  .media-logo:hover { filter: grayscale(0); opacity: 1; transform: translateY(-2px); }

  /* Accordion */
  .faq-content { max-height: 0; overflow: hidden; transition: max-height .45s ease; }
  .faq-item.active .faq-content { max-height: 240px; }
  .faq-item .chevron { transition: transform .35s ease; }
  .faq-item.active .chevron { transform: rotate(180deg); }

  /* Typing cursor */
  .typing-cursor { border-right: 3px solid #DDA853; animation: blink 0.85s step-end infinite; }
  @keyframes blink { 50% { border-color: transparent; } }

  /* Reduced motion */



  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
  }

  /* Focus visibility */
  a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
    outline: 2px solid #DDA853; outline-offset: 3px; border-radius: 4px;
  }

  .section-label { letter-spacing: .28em; }
  .blog-content{  
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.blog-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

  @media (max-width:991px) and (min-width:768px) {
    .home-banner-image {
    width: 90%;
    margin: 0 auto;
}
.home-profile-image {
    width: 90%;
    margin: 0 auto;
}
.home-about-image {
    margin-right: 20px;
}
.home-about-image .p-6 {
    padding: 10px 15px 20px;
}
  }




  @media (max-width:575px) {
    body .py-28 {
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.home-about-image {
    margin-right: 20px;
}
.home-about-image .p-6 {
    padding: 10px 15px 20px;
}
  }