/* CSS Document */

.btn-secondary-custom {
  background-color: var(--secondary);
  color: #fff;
  border-radius: var(--radius);
  padding: 10px 20px;
  border: none;
  transition: var(--transition);
}
.btn-secondary-custom:hover {
  background-color: #ad8f34;
  color: #fff;
}


.btn-outline-custom {
  border: 2px solid var(--primary);
  color: var(--primary);
  background: transparent;
  padding: 10px 20px;
  border-radius: var(--radius);
  transition: var(--transition);
}
.btn-outline-custom:hover {
  background-color: var(--primary);
  color: #fff;
}

.text-primary-custom { color: var(--primary) !important; }
.text-secondary-custom { color: var(--secondary) !important; }
.text-accent { color: var(--accent) !important; }
.text-muted-custom { color: var(--text-muted) !important; }
.text-dark-custom { color: var(--dark) !important; }

.bg-primary-custom { background-color: var(--primary) !important; color: #fff !important; }
.bg-secondary-custom { background-color: var(--secondary) !important; color: #fff !important; }
.bg-light-custom { background-color: var(--light) !important; }
.bg-dark-custom { background-color: var(--dark) !important; color: #fff !important; }


.card-custom {
  background: #fff;
  border-radius: var(--radius);
  padding: 20px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
  transition: var(--transition);
}
.card-custom:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
}

.divider {
  width: 100%;
  height: 2px;
  background: var(--primary);
  opacity: 0.1;
  margin: 20px 0;
}

/* === Banner container === */
.law-banner {
  background: #ffffff;
  padding: 60px 0;
  position: relative;
  overflow: hidden;
}

/* Wrapper grid */
.law-banner-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}

/* Text side */
.law-banner-title {
  font-size: 24px;
  font-weight: 800;
  color: #0A3D62;
  margin-bottom: 10px;
}

.law-banner-text {
  font-size: 1rem;
  color: #444;
  max-width: 430px;
  margin-bottom: 20px;
  line-height: 1.7;
}

/* Buttons */
.btn-banner-primary {
  background: var(--primary);
  color: #fff;
  border-radius: 10px;
  padding: 10px 22px;
  font-weight: 600;
  transition: .25s ease;
}

.btn-banner-primary:hover {
  background: #08314f;
}

.btn-banner-outline {
  border: 2px solid var(--primary);
  border-radius: 10px;
  padding: 9px 22px;
  color: var(--primary);
  font-weight: 600;
  margin-right: 8px;
}

.btn-banner-outline:hover {
  background: var(--primary);
  color: #fff;
}

/* === Graphic side === */
.law-banner-graphic {
  position: relative;
  width: 330px;
  height: 240px;
}

/* Decorative shapes */
.law-banner-shape {
  position: absolute;
  border-radius: 20px;
  opacity: .85;
}

.shape-1 {
  width: 200px;
  height: 200px;
  background: var(--primary);
  top: 20px;
  right: 20px;
  transform: rotate(12deg);
  border-radius: 30px;
}

.shape-2 {
  width: 140px;
  height: 140px;
  background: var(--secondary);
  bottom: 0;
  left: 30px;
  transform: rotate(-8deg);
  border-radius: 28px;
}

/* Scale icon */
.law-banner-icon {
  position: absolute;
  font-size: 64px;
  color: #ffffff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: .95;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .law-banner-wrapper {
    flex-direction: column-reverse;
    text-align: center;
  }
  
  .law-banner-graphic {
    width: 260px;
    height: 200px;
  }
}


/* =========================================
   GLOBAL PREMIUM BORDER (for hero, cards, boxes…)
   ========================================= */

.lc-bordered {
  position: relative;
  border-radius: 24px;
  background-color: #ffffff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.12);
}

/* outer gradient frame */
.lc-bordered::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 2px;
  background: linear-gradient(
    135deg,
    rgba(144, 104, 43, 0.97), /* secondary */
    rgba(10, 61, 98, 0.95)    /* primary */
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
}

/* subtle inner line to make it “designed” */
/*.lc-bordered::after {
  content: "";
  position: absolute;
  inset: 10px;
  border-radius: calc(24px - 10px);
  border-top: 1px solid rgba(10, 61, 98, 0.12);
  border-bottom: 1px solid rgba(144, 104, 43, 0.18);
  opacity: 0.9;
  pointer-events: none;
}*/
/* =========================================
   Services section
   ========================================= */

.lc-services {
  padding: 56px 0 70px;
  background: #ffffff;
}

/* Section header */
.lc-section-head {
  max-width: 620px;
  margin: 0 auto;
}

.lc-section-pill {
  display: inline-flex;
  align-items: center;
  padding: 4px 14px;
  border-radius: 999px;
  background: rgba(10,61,98,0.06);
  color: var(--primary);
  font-size: 0.82rem;
  font-weight: 600;
}

.lc-section-title {
  font-size: 1.3rem;
  font-weight: bold;
  color: var(--primary);
  margin-top: 0.75rem;
  margin-bottom: 0.4rem;
	margin-top: 20px
}

.lc-section-subtitle {
  font-size: 0.9rem;
  color: #6b7280;
  margin: 0;
}

/* Service cards */
.lc-service-card {
  background: #ffffff;
  border-radius: 18px;
  padding: 18px 14px 16px;
  border: 1px solid rgba(10,61,98,0.08);
  box-shadow: 0 10px 30px rgba(15,23,42,0.07);
  text-decoration: none;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background-color .22s ease;
}

.lc-service-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 45px rgba(15,23,42,0.12);
  /*border-color: rgba(10,61,98,0.28);*/
	border-color: var(--secondary);
  /*background: linear-gradient(135deg, #ffffff, #f8fafc);*/
}

/* Icon wrapper */
.lc-service-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 24px;
  margin: 0 auto 10px;
  background: radial-gradient(circle at 25% 15%, rgba(255,255,255,0.65), transparent 55%),
              linear-gradient(135deg, var(--primary), #041b2c);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* Image icon */
.lc-service-icon {
  max-width: 64px;
  max-height: 64px;
  object-fit: contain;
}

/* Fallback icon if no image */
.lc-service-icon-fallback {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: rgba(255,255,255,0.18);
}

.lc-service-icon-fallback i {
  color: #ffffff;
  font-size: 1.1rem;
}

/* Title */
.lc-service-title {
  font-size: 0.95rem;
  font-weight: 700;
  color: #111827;
  margin: 10px 0 4px;
}

/* "View details" text */
.lc-service-link-text {
  display: inline-flex;
  align-items: center;
  font-size: 0.8rem;
  color: #6b7280;
}

.lc-service-card:hover .lc-service-link-text {
  color: var(--primary);
}

.lc-service-card:hover .lc-service-link-text i {
  transform: translateX(-2px);
}

.lc-service-link-text i {
  font-size: 0.75rem;
  transition: transform .18s ease;
}

/* Responsive tweaks */
@media (max-width: 575.98px) {
  .lc-services {
    padding: 40px 0 52px;
  }

  .lc-service-card {
    border-radius: 16px;
    padding: 16px 12px 14px;
  }
}

/* =========================================
   Ask Question section
========================================= */
.lc-ask-section {
  background: #ffffff;
  padding: 70px 0;
  position: relative;
}

/* Pill */
.lc-ask-pill {
  display: inline-flex;
  padding: 5px 14px;
  border-radius: 999px;
  background: rgba(10, 61, 98, 0.08);
  color: var(--primary);
  font-size: .85rem;
  font-weight: 600;
  margin-bottom: .8rem;
}

/* Title */
.lc-ask-title {
  font-size: 1.7rem;
  font-weight: 800;
  color: #0b1726;
  margin-bottom: .6rem;
}

/* Subtitle */
.lc-ask-subtitle {
  font-size: .80rem;
  color: #565d67;
  line-height: 1.8;
  margin-bottom: 1.4rem;
}

/* Text area */
.lc-ask-textarea {
  border-radius: 14px;
  border: 1px solid rgba(10,61,98,0.18);
  padding: 14px;
  resize: none;
  transition: border-color .2s ease;
}

.lc-ask-textarea:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(10,61,98,0.08);
}

/* Button */
.lc-ask-btn {
  margin-top: .9rem;
  background: var(--primary);
  color: #fff;
  padding: 10px 22px;
  border-radius: 12px;
  font-size: .95rem;
  font-weight: 600;
  transition: .25s ease;
}

.lc-ask-btn:hover {
  background: #08314f;
}

/* Illustration Side */
.lc-ask-illustration {
  display: flex;
  justify-content: center;
}

/* Replace CSS shapes with real image */
.lc-ask-imgbox {
  width: 350px;
  max-width: 100%;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 18px 45px rgba(15,23,42,0.12);
  border: 1px solid rgba(10, 61, 98, 0.15);
}

.lc-ask-image {
  width: 100%;
  display: block;
  object-fit: cover;
  border-radius: inherit;
}

/* Responsive size */
@media (max-width: 768px) {
  .lc-ask-imgbox {
    width: 260px;
  }
}

/* =========================================
   Latest Questions section
========================================= */

.lc-last-questions {
  padding: 60px 0 70px;
  background: #f8fafc;
}

/* Section heading از قبل داریم:
   .lc-section-head, .lc-section-pill, .lc-section-title, .lc-section-subtitle
   اگر قبلاً تعریف کردی، لازم نیست دوباره بنویسی. */

/* Question card */
.lc-question-card {
  position: relative;
  background: #ffffff;
  border-radius: 18px;
  padding: 16px 16px 14px;
  border: 1px solid rgba(10, 61, 98, 0.09);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
  text-decoration: none;
  color: inherit;
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    border-color .2s ease,
    background .2s ease;
}

/* gradient bar on the right edge (RTL) */
.lc-question-card::before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: 12px;
  right: 0;
  width: 4px;
  border-radius: 999px 0 0 999px;
  background: linear-gradient(
    180deg,
    var(--secondary),
    var(--primary)
  );
  opacity: 0.8;
}

/* Hover state */
.lc-question-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.14);
  border-color: rgba(10, 61, 98, 0.35);
  background: radial-gradient(circle at top left, rgba(10,61,98,0.03), #ffffff);
}

/* Top row */
.lc-question-card-top {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin-bottom: 8px;
}

/* Icon circle */
.lc-question-icon-wrap {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 25% 20%, rgba(255,255,255,0.65), transparent 55%),
    linear-gradient(135deg, var(--primary), #041b2c);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lc-question-icon-wrap i {
  color: #ffffff;
  font-size: 1.1rem;
}

/* Title + small meta on top */
.lc-question-title-wrap {
  flex: 1;
}

.lc-question-title {
  font-size: 0.98rem;
  font-weight: 700;
  color: #0b1726;
  margin-bottom: 4px;
}

.lc-question-meta-top {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 0.78rem;
}

/* Category pill */
.lc-question-category {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 999px;
  background-color: rgba(144, 104, 43, 0.09); /* secondary tone */
  color: var(--secondary);
  font-weight: 600;
}

/* Answers */
.lc-question-answers {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: var(--primary);
  font-weight: 500;
}

/* Body/excerpt */
.lc-question-excerpt {
  font-size: 0.9rem;
  color: #4b5563;
  line-height: 1.8;
  margin: 6px 0 10px;
}

/* Footer meta */
.lc-question-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.78rem;
  color: #6b7280;
}

.lc-question-time i,
.lc-question-views i {
  color: var(--secondary);
  font-size: 0.8rem;
}

/* Hover color tweaks */
.lc-question-card:hover .lc-question-title {
  color: var(--primary);
}

.lc-question-card:hover .lc-question-category {
  background-color: rgba(144, 104, 43, 0.18);
}

/* Responsive */
@media (max-width: 575.98px) {
  .lc-last-questions {
    padding: 44px 0 56px;
  }

  .lc-question-card {
    padding: 14px 12px;
    border-radius: 16px;
  }

  .lc-question-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
}

/* =========================================
   CTA Button under questions (no gradient)
========================================= */



.lc-btn-all-questions {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 22px;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  background: var(--primary); /* بدون گرادیانت */
  border-radius: 12px;
  text-decoration: none;
  transition: all .22s ease;
  box-shadow: 0 8px 22px rgba(0,0,0,0.10);
}

.lc-btn-all-questions:hover {
   background: var(--secondary); 
  box-shadow: 0 14px 32px rgba(0,0,0,0.16);
  transform: translateY(-2px);
	color: #FFFFFF;
}

.lc-btn-all-questions i {
  font-size: 0.85rem;
}

/* Mobile full width optional */
@media (max-width: 576px) {
  .lc-btn-all-questions {
    padding: 12px 20px;
  }
}



/* ================================
   Top Lawyers – card style
================================ */

.lc-top-lawyers {
  padding: 60px 0 70px;
  background-color: #ffffff;
}

.lc-lawyer-card {
  position: relative;
  background: #ffffff;
  border-radius: 28px;
  padding: 26px 20px 18px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 10px 30px rgba(15,23,42,0.06);
  text-align: center;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease;
}

.lc-lawyer-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 55px rgba(15,23,42,0.16);
  border-color: rgba(10,61,98,0.45);
  background: radial-gradient(circle at top, rgba(10,61,98,0.03), #ffffff);
}

/* avatar + verified badge */
.lc-lawyer-avatar-wrap {
  position: relative;
  display: flex;
  justify-content: center;
  margin-bottom: 8px;
}

.lc-lawyer-avatar {
  width: 82px;
  height: 82px;
  border-radius: 999px;
  padding: 3px;
  background: linear-gradient(135deg, var(--secondary), var(--primary));
  display: flex;
  align-items: center;
  justify-content: center;
}

.lc-lawyer-avatar img {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
  border: 2px solid #ffffff;
}

.lc-lawyer-verified {
  position: absolute;
  bottom: 4px;
  right: calc(50% - 38px);
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.18);
}

.lc-lawyer-verified i {
  color: #1d9bf0; /* تیک آبی */
  font-size: 1.1rem;
}

/* name & title */
.lc-lawyer-name {
  font-size: 1rem;
  font-weight: 800;
  color: #111827;
  margin-bottom: 2px;
}

.lc-lawyer-title {
  font-size: 0.82rem;
  color: #6b7280;
  margin-bottom: 8px;
}

/* tags (تخصص‌ها) */
.lc-lawyer-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  margin-bottom: 10px;
}

.lc-lawyer-tags span {
  font-size: 0.75rem;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(10,61,98,0.04);
  color: var(--primary);
  border: 1px solid rgba(10,61,98,0.12);
}

/* meta row: services + rating */
.lc-lawyer-meta-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.78rem;
  color: #6b7280;
  margin-bottom: 14px;
}

.lc-lawyer-services {
  text-align: right;
}

.lc-lawyer-rating {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-weight: 700;
  color: #111827;
}

.lc-lawyer-rating i {
  color: #fbbf24; /* ستاره طلایی */
  font-size: 0.85rem;
}

/* CTA button – full width */
.lc-lawyer-cta {
  display: block;
  margin-top: 2px;
  width: 100%;
  text-align: center;
  padding: 10px 14px;
  border-radius: 10px;
  background: var(--primary);
  color: #ffffff;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  transition: background .2s ease, box-shadow .2s ease, transform .15s ease;
  box-shadow: 0 10px 26px rgba(10,61,98,0.25);
}

.lc-lawyer-cta i {
  font-size: 0.9rem;
}

.lc-lawyer-cta:hover {
  background: var(--secondary);
  box-shadow: 0 14px 32px rgba(10,61,98,0.32);
  transform: translateY(-1px);
	color: #FFFFFF;
}

/* responsive */
@media (max-width: 575.98px) {
  .lc-lawyer-card {
    padding: 20px 14px 14px;
    border-radius: 22px;
  }

  .lc-lawyer-meta-row {
    flex-direction: column;
    gap: 3px;
    align-items: flex-start;
  }
}


/* =========================================
   Support Banner Section
========================================= */

.lc-support-banner {
  padding: 60px 0;
  background: #ffffff;
}

.lc-support-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  background: #fff;
  border-radius: 24px;
}

/* pill */
.lc-support-pill {
  display: inline-block;
  background: rgba(10,61,98,0.07);
  color: var(--primary);
  padding: 6px 18px;
  border-radius: 20px;
  font-size: 0.85rem;
  font-weight: 700;
  margin-bottom: 10px;
}

/* Title / text */
.lc-support-title {
  font-size: 1.7rem;
  font-weight: bold;
  color: var(--primary);
  margin-bottom: 12px;
}

.lc-support-text {
  font-size: 1rem;
  color: #444;
  line-height: 1.7;
  margin-bottom: 20px;
}

/* Button */
.lc-support-btn {
  display: inline-flex;
  align-items: center;
  padding: 10px 24px;
  background: var(--primary);
  color: #fff;
  border-radius: 14px;
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(10,61,98,0.25);
  transition: all .25s ease;
}

.lc-support-btn:hover {
  background: #08314f;
  transform: translateY(-3px);
	color: #D0CFCF;
}

/* =========================================
   Graphic Animated Shapes
========================================= */

.lc-support-graphic {
  position: relative;
  width: 260px;
  height: 220px;
}

.support-circle {
  position: absolute;
  border-radius: 50%;
  opacity: 0.15;
  animation: float 4s ease-in-out infinite;
}

.c1 {
  width: 160px;
  height: 160px;
  background: var(--primary);
  top: 10px;
  left: 40px;
  animation-delay: 0s;
}

.c2 {
  width: 110px;
  height: 110px;
  background: var(--secondary);
  bottom: 10px;
  right: 15px;
  animation-delay: .5s;
}

.c3 {
  width: 70px;
  height: 70px;
  background: var(--primary);
  bottom: 40px;
  left: 10px;
  animation-delay: 1s;
}

/* headset icon */
.support-icon {
  position: absolute;
  font-size: 64px;
  color: var(--primary);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: .9;
  animation: pulse 2.4s infinite;
}

/* Animations */
@keyframes float {
  0% { transform: translateY(0); }
  50% { transform: translateY(-12px); }
  100% { transform: translateY(0); }
}

@keyframes pulse {
  0% { transform: translate(-50%, -50%) scale(1); opacity: 0.7; }
  50% { transform: translate(-50%, -50%) scale(1.08); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(1); opacity: 0.7; }
}

/* Responsive */
@media(max-width: 768px) {
  .lc-support-wrapper {
    flex-direction: column-reverse;
    text-align: center;
  }
  .lc-support-graphic {
    margin-bottom: 15px;
  }
}

/* =========================================
   About – Kian Edalat
========================================= */

.lc-about-section {
  padding: 60px 0 70px;
  background: #f9fafb;
}

.lc-about-wrapper {
  background: #ffffff;
  border-radius: 24px;
}

/* متن */
.lc-about-title {
  font-size: 1.7rem;
  font-weight: 800;
  color: var(--primary);
  margin-bottom: 10px;
}

.lc-about-text {
  font-size: 0.95rem;
  color: #4b5563;
  line-height: 1.9;
  margin-bottom: 10px;
}

/* badges زیر متن */
.lc-about-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.lc-about-badges span {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(10,61,98,0.04);
  border: 1px solid rgba(10,61,98,0.12);
  font-size: 0.78rem;
  color: #374151;
}

/* Feature cards */
.lc-about-features {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.lc-about-feature {
  display: flex;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 18px;
  background: #ffffff;
  border: 1px solid rgba(10,61,98,0.08);
  box-shadow: 0 10px 26px rgba(15,23,42,0.06);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.lc-about-feature:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(15,23,42,0.12);
  border-color: rgba(10,61,98,0.35);
  background: radial-gradient(circle at top left, rgba(10,61,98,0.03), #ffffff);
}

/* آیکون داخل کارت‌ها */
.lc-about-icon {
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 25% 15%, rgba(255,255,255,0.65), transparent 55%),
    linear-gradient(135deg, var(--primary), #041b2c);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lc-about-icon.secondary {
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,0.7), transparent 55%),
    linear-gradient(135deg, var(--secondary), #b27a33);
}

.lc-about-icon i {
  color: #ffffff;
  font-size: 1rem;
}

/* متن کارت‌ها */
.lc-about-feature-body h3 {
  font-size: 0.95rem;
  font-weight: 700;
  color: #111827;
  margin-bottom: 2px;
}

.lc-about-feature-body p {
  font-size: 0.82rem;
  color: #6b7280;
  margin: 0;
}

/* ریسپانسیو */
@media (max-width: 992px) {
  .lc-about-wrapper {
    padding: 18px 16px !important;
  }
}

@media (max-width: 768px) {
  .lc-about-section {
    padding: 44px 0 56px;
  }

  .lc-about-title {
    font-size: 1.4rem;
  }

  .lc-about-features {
    margin-top: 10px;
  }
}


/* ==============================
   Articles Section
============================== */

.lc-articles-section {
  padding: 60px 0 70px;
  background: #ffffff;
}

/* Card */
.lc-article-card {
  background: #ffffff;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid rgba(10,61,98,0.10);
  box-shadow: 0 10px 28px rgba(0,0,0,0.06);
  text-decoration: none;
  color: inherit;
  transition: .25s ease;
}

.lc-article-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.12);
  border-color: rgba(10,61,98,0.35);
}

/* Image */
.lc-article-img img {
  width: 100%;
  height: 170px;
  object-fit: cover;
}

/* Body */
.lc-article-body {
  padding: 16px 16px 14px;
}

/* meta */
.lc-article-meta {
  display: flex;
  justify-content: space-between;
  font-size: 0.78rem;
  color: #6b7280;
  margin-bottom: 8px;
}

.lc-article-meta i {
  color: var(--primary);
  font-size: 0.75rem;
}

/* Title */
.lc-article-title {
  font-size: 0.95rem;
  font-weight: 800;
  color: #0b1726;
  margin-bottom: 8px;
  line-height: 1.45;
}

/* desc */
.lc-article-desc {
  font-size: 0.82rem;
  color: #6b7280;
  line-height: 1.7;
  margin-bottom: 14px;
}

/* author */
.lc-article-footer {
  display: flex;
  align-items: center;
  gap: 8px;
}

.lc-article-author-img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #fff;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}

.lc-article-author {
  font-size: 0.82rem;
  color: var(--primary);
  font-weight: 600;
}

/* View all button */
.lc-btn-all-articles {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 22px;
  background: var(--primary);
  color: #fff;
  border-radius: 12px;
  font-weight: 700;
  text-decoration: none;
  transition: .22s ease;
  box-shadow: 0 10px 26px rgba(10,61,98,0.22);
}

.lc-btn-all-articles:hover {
  background: #072a45;
  box-shadow: 0 14px 34px rgba(10,61,98,0.32);
  transform: translateY(-3px);
}

/* Responsive */
@media(max-width: 768px){
  .lc-article-img img {
    height: 150px;
  }
}

/* =========================================
   Newsletter Section
========================================= */

.lc-newsletter {
  padding: 60px 0 70px;
  background: #f9fafb;
}

.lc-newsletter-box {
  background: #ffffff;
  border-radius: 24px;
}

/* Text side */
.lc-newsletter-title {
  font-size: 1.6rem;
  font-weight: 800;
  color: #0b1726;
  margin-bottom: 10px;
}

.lc-newsletter-text {
  font-size: 0.95rem;
  color: #4b5563;
  line-height: 1.8;
  margin-bottom: 10px;
}

/* benefits list */
.lc-newsletter-benefits {
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
  display: grid;
  gap: 6px;
}

.lc-newsletter-benefits li {
  font-size: 0.85rem;
  color: #374151;
  display: flex;
  align-items: center;
}

.lc-newsletter-benefits i {
  color: var(--secondary);
  font-size: 0.8rem;
}

/* Form side */
.lc-newsletter-form {
  max-width: 480px;
  margin-inline-start: auto;
}

.lc-newsletter-input-wrap {
  display: flex;
  align-items: center;
  background: #f3f4f6;
  border-radius: 999px;
  padding: 4px;
  border: 1px solid rgba(10,61,98,0.12);
  box-shadow: 0 10px 26px rgba(15,23,42,0.06);
}

/* icon bubble */
.lc-newsletter-icon {
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 25% 15%, rgba(255,255,255,0.65), transparent 55%),
    linear-gradient(135deg, var(--primary), #041b2c);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lc-newsletter-icon i {
  color: #ffffff;
  font-size: 1rem;
}

/* input */
.lc-newsletter-input {
  border: none;
  background: transparent;
  flex: 1;
  padding: 0 10px;
  font-size: 0.9rem;
  color: #111827;
}

.lc-newsletter-input:focus {
  outline: none;
}

/* button */
.lc-newsletter-btn {
  border: none;
  border-radius: 999px;
  padding: 9px 20px;
  background: var(--primary);
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  transition: background .2s ease, transform .15s ease, box-shadow .2s ease;
  box-shadow: 0 10px 24px rgba(10,61,98,0.25);
}




	
/* =========================================
   FOOTER – Clean boxed style
========================================= */

/* ==============================
   FOOTER – Dark professional theme
============================== */

.lc-footer-new {
  background: var(--primary);
  padding: 50px 0 30px;
  margin-top: 50px;
  font-size: 0.9rem;
  color: #ffffff;
}

/* footer inner box */
.lc-footer-box {
  position: relative;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 24px;
  padding: 30px 24px 22px;
  background: rgba(255,255,255,0.05);
  backdrop-filter: blur(6px);
	border-top: 6px solid var(--secondary);
}

/* top notch */
/*.lc-footer-box::before {
  content: "";
  position: absolute;
  top: -10px;
  inset-inline-start: 50%;
  transform: translateX(-50%);
  width: 120px;
  height: 18px;
  border-radius: 999px;
  border: 2px solid var(--secondary);
  border-bottom: none;
  background: var(--primary);
}*/

.lc-footer-notch {
  position: absolute;
  top: -5px;
  inset-inline-start: 50%;
  transform: translateX(-50%);
  width: 70px;
  height: 6px;
  border-radius: 999px;
  background: var(--secondary);
}

/* row spacing */
.lc-footer-main {
  margin-bottom: 18px;
}

.lc-footer-logo-img{
	border: 2px solid #E3E0E0;
	border-radius: 15px;
}
.lc-footer-logo-img img {
  width: 58px;
  height: 58px;
  object-fit: contain;
  border-radius: 12px; /* optional */
  display: block;
  background: rgba(255,255,255,0.1);
  padding: 6px; /* optional framing */
  border: 1px solid rgba(255,255,255,0.25);
}


/* =======================================
   BRAND SECTION
======================================= */

.lc-footer-brand-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.lc-footer-logo-mark {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border: 2px solid var(--secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--secondary);
  font-size: 1.3rem;
  background: rgba(255,255,255,0.10);
}

.lc-footer-brand-title {
  font-weight: 800;
  color: #ffffff;
  font-size: 1rem;
}

.lc-footer-brand-subtitle {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.6);
}

.lc-footer-brand-text {
  font-size: 0.85rem;
  color: rgba(255,255,255,0.8);
  line-height: 1.9;
  margin: 0;
}

/* =======================================
   LINKS
======================================= */

.lc-footer-block-title {
  font-weight: 700;
  font-size: 0.9rem;
  color: #FFFFFF;
  margin-bottom: 10px;
}

.lc-footer-links li {
  margin-bottom: 4px;
}

.lc-footer-links a {
  color: rgba(255,255,255,0.75);
  font-size: 0.8rem;
  text-decoration: none;
  position: relative;
  padding-bottom: 1px;
  transition: color .2s ease;
}

.lc-footer-links a::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  border-radius: 999px;
  background: var(--secondary);
  transition: width .2s ease;
}

.lc-footer-links a:hover {
  color: #ffffff;
}

.lc-footer-links a:hover::after {
  width: 18px;
}

/* =======================================
   SOCIALS
======================================= */

.lc-footer-social-text {
  font-size: 0.8rem;
  color: rgba(255,255,255,0.6);
  margin-bottom: 8px;
}

.lc-footer-social {
  display: flex;
  gap: 10px;
}

.lc-footer-social a {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  font-size: 0.9rem;
  background: rgba(255,255,255,0.08);
  transition: 0.25s ease;
}

.lc-footer-social a:hover {
  background: var(--secondary);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.35);
}

/* =======================================
   CONTACT BAR
======================================= */

.lc-footer-contactbar {
  margin-top: 10px;
  margin-bottom: 16px;
  padding: 12px 14px;
  border-radius: 16px;
 /* border: 1px solid rgba(255,255,255,0.25);*/
	border: 1px solid #FFFFFF;
  background: rgba(255,255,255,0.07);
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  align-items: center;
}

.lc-footer-contact-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.82rem;
  color: #ffffff;
}

.lc-footer-contact-item i {
  color: var(--secondary);
}

.lc-footer-contact-item a {
  color: rgba(255,255,255,0.85);
  text-decoration: none;
}

.lc-footer-contact-item a:hover {
  color: #ffffff;
}

/* =======================================
   LICENSES
======================================= */

.lc-footer-licenses-title {
  font-size: 0.85rem;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 8px;
}

.lc-footer-licenses-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.lc-license-box {
  background: rgba(255,255,255,0.1);
  padding: 8px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.15);
}

.lc-license-img {
  width: 70px;
  object-fit: contain;
}

/* =======================================
   BOTTOM
======================================= */

.lc-footer-bottom {
  margin-top: 25px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,0.18);
  text-align: center;
}

.lc-footer-bottom-center {
  font-size: 0.82rem;
  color: rgba(255,255,255,0.85);
}

.lc-footer-bottom-center a {
  color: var(--secondary);
  text-decoration: none;
  font-weight: bold;
	font-size: 16px;
}

.lc-footer-bottom-center a:hover {
  color: #ffffff;
}

/* footer white divider */
.lc-footer-divider {
  width: 100%;
  height: 1px;
  background: rgba(255,255,255,0.35);
  margin: 25px 0 18px;
  border-radius: 999px;
}

/* ==============================
   Back to Top button
============================== */

.lc-back-to-top {
  position: fixed;
  inset-inline-end: 20px;
  bottom: 24px;
  width: 46px;
  height: 46px;
  border-radius: 16px;
  background: var(--primary);
  border: 2px solid var(--secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
  transition:
    opacity .22s ease,
    transform .22s ease,
    box-shadow .2s ease,
    background .2s ease,
    border-color .2s ease;
  box-shadow: 0 10px 24px rgba(0,0,0,0.18);
}

.lc-back-to-top .lc-btt-icon i {
  color: #fff;
  font-size: 0.95rem;
}

/* visible state */
.lc-back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

/* hover */
.lc-back-to-top:hover {
  background: var(--secondary);
  border-color: var(--primary);
  box-shadow: 0 14px 32px rgba(0,0,0,0.26);
}

/* smaller on very small screens */
@media (max-width: 575.98px) {
  .lc-back-to-top {
    width: 40px;
    height: 40px;
    bottom: 18px;
    inset-inline-end: 14px;
    border-radius: 14px;
  }
}


.lc-license-box {
  padding: 6px 10px;
  border-radius: 12px;
  border: 1px dashed rgba(10,61,98,0.4);
  background: #ffffff;
  min-width: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lc-license-img {
  max-height: 80px;
  width: auto;
  display: block;
}

/* bottom */
.lc-footer-bottom {
  border-top: 1px solid rgba(10,61,98,0.16);
  padding-top: 8px;
  margin-top: 4px;
}

.lc-footer-bottom-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 6px;
  font-size: 0.78rem;
  color: #6b7280;
}

.lc-footer-bottom-links a {
  color: #4b5563;
  text-decoration: none;
  font-size: 0.8rem;
}

.lc-footer-bottom-links a:hover {
  color: var(--primary);
}

.lc-footer-bottom-links .dot {
  margin: 0 4px;
}

/* responsive tweaks */
@media (max-width: 767.98px) {
  .lc-footer-box {
    padding: 20px 14px 14px;
  }

  .lc-footer-main {
    margin-bottom: 14px;
  }

  .lc-footer-contactbar {
    flex-direction: column;
    align-items: flex-start;
  }

  .lc-footer-bottom-inner {
    flex-direction: column;
    align-items: flex-start;
  }
}


/* ==============================
   search modal
============================== */

.lc-search-modal-content {
  background: hsla(0, 0%, 0%, 0.90);
  border: 1px solid rgba(10, 61, 98, 0.5);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6);
  color: #fff; /* default text color inside modal */
}

/* modal header */

.lc-search-header {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 24px 10px;
  border-bottom: 1px solid rgba(10, 61, 98, 0.80);
}

.lc-search-title {
  color: #ffffff;
}

.lc-search-subtitle {
  font-size: 0.7rem;
  color: #e5e7eb;
}

.lc-search-icon {
  width: 32px;
  height: 32px;
  border-radius: 14px;
  background: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primary);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

/* close button (for RTL layout this pushes it to the left side) */

.lc-search-close {
  margin-right: auto;
}

/* search mode cards wrapper */

.lc-search-modes {
  padding-top: 10px;
}

/* search mode cards - centered icon and text, fixed height */

.lc-search-mode-card {
  width: 80%;
  height: 120px; /* smaller size */
  border-radius: 18px;
  border: 2px solid rgba(10, 61, 98, 0.45);
  background: #ffffff;
  padding: 10px 8px;
  text-align: center;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  transition: all .25s ease;
  display: flex;
  flex-direction: column;
  align-items: center;  /* center horizontally */
  justify-content: center; /* center vertically */
}

.lc-search-mode-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.04); /* subtle overlay */
  opacity: 0;
  transition: opacity .25s ease;
}

/* icon inside card */

.lc-search-mode-card .lc-card-icon {
  width: 68px;
  height: 100px;
  border-radius: 14px;
  background: rgba(10, 61, 98, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 6px;
  z-index: 1;
	padding-bottom: 8px;
	padding-top: 8px;
}

.lc-card-icon i {
  color: var(--primary);
  font-size: 40px;
}

/* card title & text */

.lc-card-title {
  font-size: 0.9rem;
  font-weight: 700;
  color: #111827;
  z-index: 1;
  margin-bottom: 2px;
}

.lc-card-text {
  font-size: 0.75rem;
  color: #6b7280;
  z-index: 1;
}

/* hover / active states */

.lc-search-mode-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}

/* active state - more contrast, flat color, no gradient */

.lc-search-mode-card.active {
  border-color: var(--primary);
  background-color: var(--primary);
  box-shadow: 0 8px 26px rgba(0, 0, 0, 0.6);
}

.lc-search-mode-card.active::after {
  opacity: 0; /* keep it flat */
}

.lc-search-mode-card.active .lc-card-icon {
  background: rgba(255, 255, 255, 0.18);
}

.lc-search-mode-card.active .lc-card-icon i,
.lc-search-mode-card.active .lc-card-title,
.lc-search-mode-card.active .lc-card-text {
  color: #ffffff;
}

/* panels */

.lc-search-panel {
  display: none;
}

.lc-search-panel.active {
  display: block;
}

/* input group with inner icon */

.lc-input-group {
  position: relative;
  display: flex;
  align-items: stretch;
}

.lc-input-icon {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--secondary);
  opacity: 0.9;
  pointer-events: none;
}

/* RTL fix: in Bootstrap RTL the input usually sits on the left and the button on the right,
   so border-radius is reversed compared to LTR */

.lc-search-input {
  padding-right: 38px;
  border-radius: 0 16px 16px 0;
  border: 2px solid rgba(144, 104, 43, 0.8);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4);
  background-color: #111827;
  color: #ffffff;
}

.lc-search-input::placeholder {
  color: #9ca3af;
}

.lc-search-input:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(10, 61, 98, 0.6);
}

/* search button on the opposite side of input (RTL) */

.lc-search-btn-main {
  border-radius: 16px 0 0 16px;
  background: var(--primary);
  border: none;
  color: #fff;
  font-weight: 700;
  padding-inline: 18px;
  display: flex;
  align-items: center;
}

.lc-search-btn-main:hover {
  filter: brightness(1.08);
}

/* labels and hint texts matching dark theme */

.lc-input-label {
  font-size: 0.85rem;
  color: #e5e7eb;
  margin-bottom: 6px;
}

.lc-hint-text {
  font-size: 0.8rem;
  color: #9ca3af;
}

/* live search container */

.lc-live-results {
  margin-top: 10px;
  border-radius: 14px;
  background: #111827;
  border: 1px dashed rgba(148, 163, 184, 0.6);
  padding: 10px;
  display: none;
  color: #e5e7eb;
}

/* responsive tweaks */

@media (max-width: 576px) {
  .lc-search-modal-content {
    border-radius: 20px;
  }
  .lc-search-mode-card {
    height: 150px;
  }
}


		/* ==============================
  Lawyer Profile - HERO
============================== */

.lc-vakil-hero{
  padding: 18px 0 10px;
}

.lc-vakil-hero-card{
  background: #fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  padding: 18px;
  position: relative;
  overflow: visible;
}

.lc-vakil-hero-card:before{
  content:"";
  position:absolute;
  inset-inline-start:-120px;
  top:-120px;
  width:260px;
  height:260px;
  border-radius: 999px;
  background: rgba(10,61,98,.06);
}

.lc-vakil-hero-main{
  padding: 6px 4px;
}

.lc-vakil-hero-top{
  display:flex;
  align-items:center;
  gap: 12px;
}

.lc-vakil-avatar{
  width: 92px;
  height: 92px;
  border-radius: 999px;
  padding: 3px;
  background: linear-gradient(135deg, rgba(10,61,98,.18), rgba(144,104,43,.22));
  flex: 0 0 auto;
}

.lc-vakil-avatar img{
  width:100%;
  height:100%;
  border-radius: 999px;
  object-fit: cover;
  background:#f3f4f6;
  display:block;
}

.lc-vakil-name{
  font-weight: 900;
  color:#0f172a;
  font-size: 1.05rem;
  line-height: 1.3;
}

.lc-vakil-title{
  margin-top: 4px;
  color:#6b7280;
  font-size: .86rem;
}

.lc-vakil-code-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top: 8px;
  padding: 6px 10px;
  border-radius: 12px;
  border: 1px dashed rgba(10,61,98,.22);
  background: rgba(10,61,98,.04);
  color:#334155;
  font-size: .82rem;
}

/* stats */
.lc-vakil-stats{
  margin-top: 14px;
  display:flex;
  gap: 16px;
  flex-wrap: wrap;
}

.lc-vakil-stat{
  min-width: 140px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  background: #fbfdff;
}

.lc-vakil-stat-num{
  font-weight: 900;
  font-size: 1.1rem;
  color: var(--primary);
  line-height: 1;
}

.lc-vakil-stat-label{
  margin-top: 6px;
  font-size: .78rem;
  color:#64748b;
}

/* CTA box */
.lc-vakil-hero-cta{
  height: 100%;
  border-radius: 18px;
  border: 1px solid rgba(10,61,98,.12);
  background: linear-gradient(180deg, rgba(10,61,98,.05), rgba(10,61,98,.02));
  padding: 14px;
  display:flex;
  flex-direction: column;
  justify-content: center;
	padding-top: 30px;
}

.lc-vakil-cta-btn{
  height: 52px;
  border-radius: 16px;
  border: 0;
  background: var(--secondary);
  color:#fff;
  font-weight: 900;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  box-shadow: 0 14px 30px rgba(0,0,0,.14);
	margin-bottom: 20px;
}

.lc-vakil-cta-btn:hover{
  filter: brightness(1.04);
}

.lc-vakil-cta-hint{
  margin-top: 10px;
  font-size: .8rem;
  color:#64748b;
  line-height: 1.7;
  text-align: center;
}

.lc-vakil-cta-trust{
  margin-top: 12px;
  display:flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}

.lc-vakil-cta-trust-item{
  display:flex;
  align-items:center;
  gap: 6px;
  font-size: .78rem;
  color:#334155;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.7);
}

.lc-vakil-cta-trust-item i{
  color: var(--primary);
}
	

/* =========================
   Mobile fixed CTA – Vakil
========================= */

.lc-vakil-mobile-cta{
  position: fixed;
  bottom: 0;
  inset-inline-start: 0;
  inset-inline-end: 0;
  z-index: 1050;

  padding: 10px 14px 14px;
  background:
    linear-gradient(
      to top,
      rgba(255,255,255,.98),
      rgba(255,255,255,.88),
      rgba(255,255,255,0)
    );
  backdrop-filter: blur(3px);
}

/* Main button */
.lc-vakil-mobile-btn{
  width: 100%;
  min-height: 64px;
  border-radius: 20px;
  border: 0;

  background: var(--primary);
  color: #fff;

  display: flex;
  align-items: center;
  gap: 14px;

  padding: 10px 14px 10px 12px;
  box-shadow: 0 16px 40px rgba(0,0,0,.22);

  position: relative;
  overflow: hidden;
}

/* subtle secondary accent line */
.lc-vakil-mobile-btn::after{
  content:"";
  position:absolute;
  inset-inline-start: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--secondary);
  opacity: .9;
}

/* Avatar */
.lc-vakil-mobile-avatar{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  padding: 2px;
  background: rgba(255,255,255,.25);
  flex: 0 0 auto;
}

.lc-vakil-mobile-avatar img{
  width:100%;
  height:100%;
  border-radius: 999px;
  object-fit: cover;
  background:#f3f4f6;
  display:block;
}

/* Text block */
.lc-vakil-mobile-text{
  
  
  gap: 2px;
  line-height: 1.3;
}

.lc-vakil-mobile-title{
  font-size: .78rem;
  opacity: .9;
}

.lc-vakil-mobile-name{
  font-size: .95rem;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 180px;
}

/* Right icon */
.lc-vakil-mobile-icon{
  margin-inline-start: auto;
  width: 36px;
  height: 36px;
  border-radius: 12px;

  background: rgba(255,255,255,.18);
  display:flex;
  align-items:center;
  justify-content:center;

  font-size: 1rem;
}

/* Hover / active feedback */
.lc-vakil-mobile-btn:active{
  transform: translateY(1px);
}

/* Prevent page content hidden behind CTA */
@media (max-width: 991px){
  .page-vakil-profile{
    padding-bottom: 96px;
  }
}

		
	
		@media (max-width: 991px){

  .lc-vakil-hero-top{
    display: flex;
    align-items: center;
    gap: 12px;
  }

  /* Avatar stays on the right in RTL (default), no change needed */
  .lc-vakil-hero-id{
    /*flex: 1;*/
    text-align: left;         /* keep RTL alignment */
    margin-inline-start: auto; /* push this block to the left edge */
  }

  /* Optional: make badge not look centered */
  .lc-vakil-code-badge{
    align-self: flex-start;    /* keep it aligned to the start of the id block */
  }
}

		/* Stats container */
.lc-vakil-stats{
  margin-top: 20px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;          /* allow next row */
	    border-top: 1px solid var(--secondary);
    padding-top: 20px;
}

/* Each stat pill: slimmer */
.lc-vakil-stat{
  min-width: 0;
  padding: 8px 10px;        /* slimmer */
  border-radius: 14px;
  border: 1px solid rgba(10,61,98,.12);
  background: #fbfdff;

  display: flex;            /* inline num + label */
  align-items: center;
  gap: 8px;
}

/* Make them sit nicely in one row when possible */
.lc-vakil-stat{
  /*flex: 1 1 calc(33.333% - 10px); */  /* 3 in a row if space allows */
}

/* On small mobile, 2 per row is safer */
@media (max-width: 420px){
  .lc-vakil-stat{
    flex: 1 1 calc(50% - 10px);
  }
}

/* Inline num + label */
.lc-vakil-stat-num{
  font-weight: 900;
  font-size: 1rem;
  color: var(--primary);
  line-height: 1;
}

.lc-vakil-stat-label{
  margin-top: 0;
  font-size: .78rem;
  color: #64748b;
  white-space: nowrap;
}

		/* ==============================
  Lawyer Profile - Tabs Section
============================== */

.lc-vakil-tabs{
  padding: 14px 0 26px;
}

.lc-vakil-tabs-card{
  background:#fff;
  border:1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  overflow:hidden;
}

/* Tabs nav */
.lc-vakil-navtabs{
  padding: 10px 12px 0;
  gap: 10px;
  border-bottom: 1px solid rgba(10,61,98,.10);
}

.lc-vakil-navtabs .nav-link{
  border: 1px solid rgba(10,61,98,.14);
  background: #f8fafc;
  color:#334155;
  border-radius: 14px;
  padding: 10px 14px;
  font-weight: 800;
  font-size: .9rem;
  transition: .2s ease;
}

.lc-vakil-navtabs .nav-link:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.06);
}

.lc-vakil-navtabs .nav-link.active{
  background: var(--primary);
  border-color: var(--primary);
  color:#fff;
  box-shadow: 0 12px 26px rgba(10,61,98,.20);
}

/* Tab content */
.lc-vakil-tabcontent{
  padding: 14px 12px 16px;
}

/* Generic box */
.lc-box{
  border-radius: 18px;
  border: 1px solid rgba(10,61,98,.12);
  overflow: hidden;
}

.lc-box-soft{
  background: #fbfdff;
}

.lc-box-strong{
  background: rgba(10,61,98,.045);
  border-color: rgba(10,61,98,.18);
}

.lc-box-hd{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(10,61,98,.10);
}

.lc-box-title{
  font-weight: 900;
  color:#0f172a;
  font-size: .95rem;
  display:flex;
  align-items:center;
}

.lc-box-title i{
  color: var(--primary);
}

.lc-box-bd{
  padding: 14px;
}

.lc-box-bd p{
  text-align: justify;
	line-height: 2;
}
/* About */
.lc-about-text{
  margin: 0;
  color:#334155;
  line-height: 1.9;
  font-size: .9rem;
}

.lc-about-meta{
  margin-top: 12px;
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}

.lc-pill{
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding: 7px 10px;
  border-radius: 999px;
  background:#fff;
  border: 1px solid rgba(10,61,98,.14);
  color:#334155;
  font-size: .8rem;
}

.lc-pill i{
  color: var(--secondary);
}

/* Expertise chips */
.lc-mini-badge{
  display:inline-flex;
  align-items:center;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(144,104,43,.14);
  color:#3b2f15;
  border: 1px solid rgba(144,104,43,.22);
  font-weight: 800;
  font-size: .78rem;
}

.lc-chiplist{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}

.lc-chip{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  padding: 8px 10px;
  border-radius: 12px;
  border: 1px solid rgba(10,61,98,.18);
  background: #fff;
  color:#0f172a;
  font-weight: 800;
  font-size: .82rem;
  transition: .18s ease;
}

.lc-chip:hover{
  border-color: var(--secondary);
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.06);
}

.lc-expertise-note{
  margin-top: 12px;
  color:#64748b;
  font-size: .8rem;
  line-height: 1.7;
}

/* Link-like button */
.lc-link-btn{
  border: 0;
  background: transparent;
  color: var(--primary);
  font-weight: 900;
  font-size: .82rem;
  padding: 6px 8px;
  border-radius: 12px;
  transition: .18s ease;
}

.lc-link-btn:hover{
  background: rgba(10,61,98,.08);
}

/* Lists */
.lc-list{
  display:flex;
  flex-direction: column;
  gap: 10px;
}

.lc-list-item{
  text-decoration:none;
  display:block;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  background: #fff;
  transition: .18s ease;
}

.lc-list-item:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.22);
}

.lc-list-title{
  font-weight: bold;
  color:var(--primary);
  font-size: .9rem;
  line-height: 1.6;
}

.lc-list-meta{
  margin-top: 6px;
  color:#64748b;
  font-size: .78rem;
}

/* Reviews mini */
.lc-reviews-mini{
  display:flex;
  flex-direction: column;
  gap: 10px;
}

.lc-review-card{
  background:#fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 16px;
  padding: 12px 12px;
}

.lc-review-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
}

.lc-review-name{
  font-weight: 900;
  color:#0f172a;
}

.lc-stars i{
  color: var(--secondary);
  margin-inline-start: 2px;
}

.lc-review-text{
  margin-top: 8px;
  color:#334155;
  font-size: .86rem;
  line-height: 1.8;
}

/* Tab headers */
.lc-tab-headline{
  padding: 6px 2px 14px;
}

.lc-tab-title{
  font-weight: 1000;
  color:#0f172a;
  font-size: 1.05rem;
}

.lc-tab-sub{
  margin-top: 4px;
  color:#64748b;
  font-size: .85rem;
}

/* Reviews full */
.lc-reviews-full{
  display:flex;
  flex-direction: column;
  gap: 12px;
}

.lc-review-row{
  border: 1px solid rgba(10,61,98,.12);
  background:#fff;
  border-radius: 16px;
  padding: 12px 12px;
}

.lc-review-row-top{
  display:flex;
  flex-wrap: wrap;
  align-items:center;
  gap: 10px 14px;
}

.lc-review-date{
  color:#64748b;
  font-size: .78rem;
}

.lc-load-more{
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.14);
  background: rgba(10,61,98,.04);
  color:#0f172a;
  font-weight: 900;
}

.lc-load-more:hover{
  background: rgba(10,61,98,.08);
}

/* Answers full */
.lc-answers-full{
  display:flex;
  flex-direction: column;
  gap: 10px;
}

.lc-answer-row{
  text-decoration:none;
  display:block;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  background:#fff;
  transition: .18s ease;
}

.lc-answer-row:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.22);
}

.lc-answer-title{
  font-weight: bold;
  color:color:var(--primary);
  font-size: .92rem;
  line-height: 1.6;
}

.lc-answer-meta{
  margin-top: 6px;
  color:#64748b;
  font-size: .78rem;
}

/* Responsive tweaks */
@media (max-width: 576px){
  .lc-vakil-navtabs{
    padding: 10px 10px 0;
    gap: 8px;
  }
  .lc-vakil-navtabs .nav-link{
    padding: 9px 12px;
    font-size: .86rem;
  }
  .lc-box-bd{
    padding: 12px;
  }
}

		/* Review user avatar */
/* Review user (avatar + name) */
.lc-review-user{
  display:flex;
  align-items:center;
  gap: 10px;
}

.lc-review-avatar{
  width: 48px;
  height: 48px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.18);
  background: rgba(10,61,98,.06);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 1000;
  color: var(--primary);
  font-size: .82rem;
  letter-spacing: .2px;
}

.lc-review-name{
  font-weight: 900;
  color:#0f172a;
  line-height: 1;
}

/* Right side meta (date + stars) */
.lc-review-meta{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-inline-start: auto;
}

.lc-review-date{
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.04);
  color:#334155;
  font-size: .78rem;
  white-space: nowrap;
}

.lc-review-date i{
  color: var(--secondary);
}

/* Stars */
.lc-stars{
  display:inline-flex;
  align-items:center;
}

.lc-stars i{
  color: var(--secondary);
  margin-inline-start: 2px;
}

/* Smooth tab transition (works with manual switching) */
.tab-content .tab-pane{
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .28s ease, transform .28s ease;
  display: none; /* prevent layout jump */
}

.tab-content .tab-pane.active{
  display: block;
}

.tab-content .tab-pane.active.show{
  opacity: 1;
  transform: translateY(0);
}

/* Answers preview */
.lc-list-desc{
  margin-top: 6px;
  font-size: .84rem;
  color: #475569;
  line-height: 1.8;
}

/* Answers full card */
.lc-answer-card{
  border: 1px solid rgba(10,61,98,.10);
  background: rgba(255,255,255,.65);
  border-radius: 16px;
  padding: 12px 12px;
  margin-bottom: 10px;
}

.lc-answer-head{
  display:flex;
  align-items:flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.lc-answer-title{
  font-weight: 950;
  color: #0f172a;
  text-decoration: none;
  line-height: 1.6;
}

.lc-answer-title:hover{
  color: var(--primary);
}

.lc-answer-meta{
  font-size: .78rem;
  color: #64748b;
  white-space: nowrap;
}

.lc-answer-body{
  font-size: .9rem;
  color: #334155;
  line-height: 2;
	text-align: justify;
}
		
		
		/* =========================
   Creative Breadcrumb Hero
========================= */

.lc-breadcrumb-hero{
  position: relative;
  padding: 36px 0 42px;
  background:
    radial-gradient(1200px 400px at 90% -20%, rgba(255,255,255,.12), transparent 60%),
    linear-gradient(135deg, var(--primary), #0b2f4a);
  overflow: hidden;
}

/* soft abstract shapes */
.lc-breadcrumb-hero::before{
  content:"";
  position:absolute;
  width: 280px;
  height: 280px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  top: -140px;
  inset-inline-start: -120px;
}

.lc-breadcrumb-hero::after{
  content:"";
  position:absolute;
  width: 180px;
  height: 180px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  bottom: -90px;
  inset-inline-end: 10%;
}

/* inner wrap */
.lc-breadcrumb-wrap{
  position: relative;
  z-index: 2;
}

/* content */
.lc-breadcrumb-content{
  max-width: 720px;
}

/* title */
.lc-breadcrumb-title{
  margin: 0 0 14px;
  font-size: 1.45rem;
  font-weight: 950;
  color: #ffffff;
  line-height: 1.4;
  letter-spacing: -.3px;
}

/* breadcrumb path */
.lc-breadcrumb-path{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 6px 12px;
  border-radius: 999px;

  background: rgba(255,255,255,.14);
  backdrop-filter: blur(6px);

  font-size: .8rem;
}

/* items */
.lc-breadcrumb-path li{
  color: rgba(255,255,255,.85);
  display: flex;
  align-items: center;
  gap: 6px;
}

.lc-breadcrumb-path li:not(:last-child)::after{
  content: "›";
  opacity: .6;
}

/* links */
.lc-breadcrumb-path a{
  color: #ffffff;
  text-decoration: none;
  transition: opacity .15s ease;
}

.lc-breadcrumb-path a:hover{
  opacity: .75;
}

/* active */
.lc-breadcrumb-path .active{
  font-weight: 700;
  color: #ffffff;
}

/* mobile tuning */
@media (max-width: 576px){
  .lc-breadcrumb-hero{
    padding: 28px 0 34px;
  }

  .lc-breadcrumb-title{
    font-size: 1.2rem;
  }

  .lc-breadcrumb-path{
    font-size: .75rem;
  }
}



	/* =========================
   Consult Modal (Premium)
========================= */

.lc-consult-modal{
  background: rgba(10, 18, 30, .92);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  box-shadow: 0 30px 80px rgba(0,0,0,.55);
  overflow: hidden;
}

/* Header */
.lc-consult-hd{
  border: 0;
  padding: 16px 18px;
  background:
    radial-gradient(900px 260px at 90% -10%, rgba(255,255,255,.10), transparent 60%),
    linear-gradient(135deg, rgba(10,61,98,.85), rgba(10,18,30,.80));
}

.lc-consult-hd-left{
  display:flex;
  align-items:center;
  gap: 12px;
}

.lc-consult-mark{
  width: 42px;
  height: 42px;
  border-radius: 16px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.16);
  display:flex;
  align-items:center;
  justify-content:center;
  color: #fff;
}

.lc-consult-title{
  font-weight: 950;
  color: #fff;
  font-size: 1.05rem;
  line-height: 1.2;
}

.lc-consult-sub{
  margin-top: 2px;
  color: rgba(255,255,255,.78);
  font-size: .82rem;
}

/* Body */
.lc-consult-bd{
  padding: 16px 18px 8px;
}

/* Lawyer card */
.lc-consult-lawyer{
  display:flex;
  align-items:center;
  gap: 14px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.06);
  margin-bottom: 14px;
  position: relative;
}

.lc-consult-lawyer-avatar{
  width: 62px;
  height: 62px;
  border-radius: 999px;
  padding: 2px;
  background: rgba(255,255,255,.16);
  flex: 0 0 auto;
}

.lc-consult-lawyer-avatar img{
  width:100%;
  height:100%;
  border-radius: 999px;
  object-fit: cover;
  background: #0b1220;
  display:block;
}

.lc-consult-lawyer-info{
  min-width: 0;
}

.lc-consult-lawyer-name{
  font-weight: 950;
  color: #fff;
  font-size: 1rem;
  line-height: 1.3;
}

.lc-consult-lawyer-title{
  margin-top: 3px;
  color: rgba(255,255,255,.72);
  font-size: .82rem;
}

.lc-consult-lawyer-meta{
  margin-top: 8px;
}

.lc-meta-pill{
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(10,61,98,.18);
  border: 1px dashed rgba(255,255,255,.14);
  color: rgba(255,255,255,.88);
  font-size: .78rem;
}

.lc-meta-pill i{
  color: var(--secondary);
}

/* Features (subtle) */
.lc-consult-features{
  margin-inline-start: auto;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.lc-feature{
  display:flex;
  align-items:center;
  gap: 7px;
  padding: 7px 10px;
  border-radius: 14px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  color: rgba(255,255,255,.85);
  font-size: .78rem;
  white-space: nowrap;
}

.lc-feature i{
  color: var(--secondary);
}

.lc-feature-num{
  font-weight: 900;
  color: #fff;
}

.lc-feature-label{
  opacity: .85;
}

/* Section title */
.lc-consult-section-title{
  display:flex;
  align-items:center;
  gap: 8px;
  color: #fff;
  font-weight: 900;
  font-size: .92rem;
  margin-bottom: 10px;
}

.lc-consult-section-title i{
  color: var(--secondary);
}

/* Plans */
.lc-plan-radio{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.lc-plan-card{
  cursor:pointer;
  user-select:none;
  display:block;
  border-radius: 18px;
  padding: 12px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  position: relative;
  overflow: hidden;
  height: 100%;
}

.lc-plan-card::before{
  content:"";
  position:absolute;
  inset: 0;
  background: radial-gradient(500px 140px at 10% 0%, rgba(144,104,43,.20), transparent 55%);
  opacity: 0;
  transition: opacity .18s ease;
}

.lc-plan-top{
  display:flex;
  align-items:flex-start;
  justify-content: space-between;
  gap: 10px;
  position: relative;
  z-index: 2;
}

.lc-plan-name{
  font-weight: 950;
  color: #fff;
  font-size: .92rem;
  line-height: 1.5;
}

.lc-plan-badge{
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(10,61,98,.22);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.9);
  font-size: .75rem;
  white-space: nowrap;
}

.lc-plan-mid{
  margin-top: 9px;
  display:flex;
  flex-direction: column;
  gap: 7px;
  position: relative;
  z-index: 2;
}

.lc-plan-line{
  display:flex;
  align-items:center;
  gap: 8px;
  color: rgba(255,255,255,.78);
  font-size: .78rem;
}

.lc-plan-line i{
  color: var(--secondary);
}

.lc-plan-price{
  margin-top: 11px;
  font-weight: 950;
  color: #fff;
  font-size: 1.05rem;
  position: relative;
  z-index: 2;
}

.lc-plan-price span{
  font-size: .78rem;
  opacity: .85;
  font-weight: 700;
  margin-inline-start: 4px;
}

/* Check mark (hidden until selected) - bottom-left (physical left) */
.lc-plan-check{
  position:absolute;
  top: auto;
  bottom: 10px;
  left: 10px;        /* physical bottom-left */
  right: auto;

  width: 38px;
  height: 38px;
  border-radius: 14px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.14);

  display:flex;
  align-items:center;
  justify-content:center;

  color: #fff;
  opacity: 0;
  transform: scale(.92);
  transition: opacity .18s ease, transform .18s ease, background .18s ease, border-color .18s ease;
  z-index: 3;
}

/* Hover */
.lc-plan-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
  border-color: rgba(255,255,255,.18);
}

/* Selected: clearly different */
.lc-plan-radio:checked + .lc-plan-card{
  background: rgba(10,61,98,.88);
  border-color: rgba(255,255,255,.18);
  box-shadow: 0 22px 60px rgba(0,0,0,.55);
  transform: translateY(-1px);
}

.lc-plan-radio:checked + .lc-plan-card::before{
  opacity: .90;
}

/* Improve text contrast on selected */
.lc-plan-radio:checked + .lc-plan-card .lc-plan-name,
.lc-plan-radio:checked + .lc-plan-card .lc-plan-price{
  color: #fff;
}

.lc-plan-radio:checked + .lc-plan-card .lc-plan-line{
  color: rgba(255,255,255,.92);
}

.lc-plan-radio:checked + .lc-plan-card .lc-plan-badge{
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.16);
  color: #fff;
}

/* Show check on selected */
.lc-plan-radio:checked + .lc-plan-card .lc-plan-check{
  opacity: 1;
  transform: scale(1);
  background: rgba(144,104,43,.92);
  border-color: rgba(255,255,255,.18);
}

.lc-consult-note{
  margin-top: 10px;
  font-size: .8rem;
  color: rgba(255,255,255,.68);
  line-height: 1.8;
}

/* Footer */
.lc-consult-ft{
  border: 0;
  padding: 12px 18px 16px;
  background: rgba(255,255,255,.03);
  gap: 10px;
}

.lc-btn-muted{
  border-radius: 14px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.88);
}

.lc-btn-muted:hover{
  border-color: rgba(255,255,255,.22);
  color:#fff;
}

.lc-btn-submit{
  border-radius: 14px;
  padding: 10px 14px;
  border: 0;
  background: var(--secondary);
  color: #fff;
  font-weight: 950;
  min-width: 220px;
  display:flex;
  flex-direction: column;
  align-items:center;
  justify-content:center;
  line-height: 1.2;
  box-shadow: 0 14px 35px rgba(0,0,0,.25);
}

.lc-btn-submit:disabled{
  opacity: .55;
  filter: grayscale(.2);
  cursor: not-allowed;
}

.lc-submit-meta{
  margin-top: 4px;
  font-size: .74rem;
  font-weight: 700;
  opacity: .9;
}

/* Responsive */
@media (max-width: 576px){
  .lc-consult-lawyer{
    flex-wrap: wrap;
  }

  .lc-consult-features{
    width: 100%;
    justify-content: flex-start;
  }

  .lc-btn-submit{
    min-width: 0;
    flex: 1;
  }

  /* Force 2-column layout on mobile to reduce scrolling */
  #consultModal .row.g-3 > [class*="col-"]{
    width: 50%;
    flex: 0 0 50%;
  }

  /* Make cards more compact */
  .lc-plan-card{
    padding: 10px;
    border-radius: 16px;
  }

  .lc-plan-name{
    font-size: .86rem;
  }

  .lc-plan-badge{
    padding: 5px 8px;
    font-size: .72rem;
  }

  .lc-plan-mid{
    margin-top: 8px;
    gap: 6px;
  }

  .lc-plan-line{
    font-size: .74rem;
  }

  .lc-plan-price{
    margin-top: 10px;
    font-size: .98rem;
  }

  .lc-plan-check{
    width: 36px;
    height: 36px;
    border-radius: 13px;
    bottom: 8px;
    left: 8px;
  }
}


	/* ==============================
  Headers (distinct + secondary accent)
============================== */

/* Helpers */
.lc-minw0{ min-width:0; }

/* Page section spacing */
.lc-consult-step{
  padding: 8px 0 18px;
}

/* Main wrapper card */
.lc-consult-step-card{
  background:#fff;
  border:1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  overflow:hidden;
}

/* Body padding */
.lc-step-bd{
  padding: 14px;
}

/* Divider */
.lc-step-divider{
  height:1px;
  background: linear-gradient(90deg, transparent, rgba(10,61,98,.14), transparent);
  margin: 14px 0;
}

/* ==============================
  Headers (distinct + secondary accent)
============================== */

.lc-step-hd{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(10,61,98,.10);
  display:flex;
  align-items:center;
  gap: 10px;
  background: #fbfdff;
  position: relative;
}

.lc-step-hd::after{
  content:"";
  position:absolute;
  inset-inline-start: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--secondary);
  opacity: .95;
}

/* Header variants */
.lc-step-hd--consult{
  background: rgba(10,61,98,.06);
}

.lc-step-hd--expertise{
  background: rgba(144,104,43,.10);
}

.lc-step-hd--vakil{
  background: rgba(10,61,98,.08);
}

.lc-step-title{
  font-weight: 950;
  color:#0f172a;
  font-size: .98rem;
  display:flex;
  align-items:center;
  gap: 8px;
}

.lc-step-title i{
  color: var(--primary);
}

/* ==============================
  Consultation info row (3 items always in one row)
  - Background distinct from headers
============================== */

.lc-consult-info-row{
  display:flex;
  gap: 10px;
}

.lc-consult-info-item{
  flex: 1 1 0;
  min-width: 0;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);

  background: #ffffff;
  box-shadow: 0 10px 22px rgba(0,0,0,.04);
  text-align: center;
}

.lc-consult-info-item--soft{
  /*background: rgba(237,237,237,.55);*/
	background: var(--secondary);
	background: rgba(144,104,43,0.85);
	border:solid 1px var(--primary);
}

.lc-consult-info-label{
  font-size: .84rem;
  color:#CBCBCB;
	font-weight: bold;
}

.lc-consult-info-val{
  margin-top: 6px;
  font-weight: bold;
  color:#FFFFFF;
  font-size: .9rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.lc-consult-info-val.price{
  color: var(--primary);
}

/* Keep 3 items in one row on mobile */
@media (max-width: 576px){
  .lc-consult-info-row{ gap: 8px; }
  .lc-consult-info-item{
    padding: 9px 8px;
    border-radius: 14px;
  }
  .lc-consult-info-label{ font-size: .7rem; }
  .lc-consult-info-val{ font-size: .82rem; }
}

/* ==============================
  Boxes (shared)
============================== */

.lc-step-box{
  border-radius: 18px;
  border: 1px solid rgba(10,61,98,.12);
  background: #fff;
  overflow: hidden;
  box-shadow: 0 14px 34px rgba(0,0,0,.05);
}

.lc-step-box-bd{
  padding: 14px;
}

/* ==============================
  Vakil card (right side)
============================== */

.lc-vakil-side-top{
  display:flex;
  align-items:center;
  gap: 12px;
}

.lc-vakil-side-avatar{
  width: 64px;
  height: 64px;
  border-radius: 999px;
  padding: 3px;
  background: rgba(10,61,98,.10);
  border: 1px solid rgba(10,61,98,.14);
  flex: 0 0 auto;
  position: relative;
}

.lc-vakil-side-avatar img{
  width:100%;
  height:100%;
  border-radius: 999px;
  object-fit: cover;
  background:#f3f4f6;
  display:block;
}

.lc-vakil-side-verified{
  position:absolute;
  inset-inline-start: -6px;
  bottom: -6px;
  width: 26px;
  height: 26px;
  border-radius: 12px;
  background: #10b981;
  color:#fff;
  border: 2px solid #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow: 0 10px 22px rgba(16,185,129,.22);
}

.lc-vakil-side-name{
  font-weight: 950;
  color:#0f172a;
  line-height: 1.3;
  font-size: .98rem;
}


.lc-vakil-side-title{
  margin-top: 4px;
  color:#6b7280;
  font-size: .84rem;
}

.lc-vakil-side-code{
  margin-top: 12px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;

  padding: 10px 12px;
  border-radius: 16px;
  border: 1px dashed rgba(10,61,98,.22);
  background: rgba(10,61,98,.04);
}

.lc-vakil-side-code span{
  font-weight: 950;
  color:#334155;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono","Courier New", monospace;
  letter-spacing: .4px;
}

.lc-copy-btn{
  border: 0;
  background: transparent;
  color: var(--primary);
  font-weight: 950;
  font-size: .82rem;
  padding: 6px 8px;
  border-radius: 12px;
  transition: background .18s ease;
}

.lc-copy-btn:hover{
  background: rgba(10,61,98,.08);
}

.lc-vakil-side-note{
  margin-top: 10px;
  color:#64748b;
  font-size: .8rem;
  line-height: 1.8;
}

/* ==============================
  Expertise grid (2 columns desktop & mobile)
============================== */

.lc-exp-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

/* Selectable expertise item */
.lc-exp-item{
  position: relative;
  display:flex;
  align-items:flex-start;
  justify-content: space-between;
  gap: 10px;

  padding: 10px 10px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  background: #fff;

  cursor:pointer;
  user-select:none;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease, background .12s ease;
}

.lc-exp-item:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.22);
}

/* Hidden radio */
.lc-exp-item input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

/* Left main part */
.lc-exp-main{
  display:flex;
  align-items:flex-start;
  gap: 8px;
  min-width: 0;
  flex: 1 1 auto;
}

.lc-exp-ic{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.05);
  display:flex;
  align-items:center;
  justify-content:center;
  color: var(--primary);
  flex: 0 0 34px;
  margin-top: 2px;
}

/* Full text, wraps safely */
.lc-exp-txt{
  font-weight: 900;
  font-size: .84rem;
  color:#0f172a;
  line-height: 1.55;

  white-space: normal;
  overflow: visible;
  word-break: break-word;
  min-width: 0;
}

/* Fixed check area */
.lc-exp-check{
  width: 32px;
  height: 32px;
  border-radius: 12px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.03);
  display:flex;
  align-items:center;
  justify-content:center;
  color: transparent;
  flex: 0 0 32px;
  margin-top: 2px;
}

/* Checked state (secondary) */
.lc-exp-item input:checked ~ .lc-exp-check{
  background: var(--secondary);
  border-color: var(--secondary);
  color:#fff;
  box-shadow: 0 12px 26px rgba(144,104,43,.22);
}

.lc-exp-item:has(input:checked){
  border-color: rgba(144,104,43,.35);
  background: rgba(144,104,43,.06);
}

/* Mobile: still 2 columns, smaller check */
@media (max-width: 576px){
  .lc-exp-grid{ gap: 8px; }
  .lc-exp-item{ padding: 9px 9px; border-radius: 14px; }
  .lc-exp-txt{ font-size: .80rem; line-height: 1.5; }
  .lc-exp-check{
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border-radius: 11px;
  }
}

/* ==============================
  Footer row: selected + submit
============================== */

.lc-exp-footer{
  margin-top: 12px;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  border-top: 1px solid rgba(10,61,98,.10);
  padding-top: 12px;
}

.lc-selected-line{
  display:flex;
  align-items:center;
  gap: 8px;
  color:#64748b;
  font-size: .82rem;
}

.lc-selected-line strong{
  color:#0f172a;
  font-weight: 950;
}

/* Submit button (primary + secondary accent line) */
.lc-submit-btn{
  height: 50px;
  border-radius: 16px;
  border: 0;
  background: var(--primary);
  color:#fff;
  font-weight: 950;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
  padding: 0 14px;
  box-shadow: 0 14px 30px rgba(0,0,0,.14);
  transition: transform .18s ease, filter .18s ease;
  position: relative;
  overflow: hidden;
}

.lc-submit-btn::after{
  content:"";
  position:absolute;
  inset-inline-start: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--secondary);
  opacity: .95;
}

.lc-submit-btn:hover{
  filter: brightness(1.04);
  transform: translateY(-1px);
}

.lc-submit-btn:disabled{
  opacity: .55;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}
		
		/* Force layout: vakil right, expertise left (Bootstrap RTL-safe) */


/* Make headers distinct but clean: no filled background, only top border */
.lc-step-hd{
  background: #fff !important;
  border-bottom: 1px solid rgba(10,61,98,.10) !important;
}
.lc-step-hd::after{ display:none !important; }

.lc-step-hd--consult{ border-top: 3px solid var(--primary) !important; }
.lc-step-hd--vakil{ border-top: 3px solid var(--secondary) !important; }
.lc-step-hd--expertise{ border-top: 3px solid var(--primary) !important; }

/* Consultation boxes: clearly different from headers */
.lc-consult-info-item,
.lc-consult-info-item--soft{
  /*background: #f8fafc !important;
  box-shadow: none !important;*/
}

/* Remove any gradient feel everywhere in this section */
.lc-consult-step-card,
.lc-step-box,
.lc-exp-item,
.lc-exp-ic,
.lc-vakil-side-avatar{
  background-image: none !important;
}

/* Expertise text must never cut; keep checkbox fixed */
.lc-exp-txt{
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  word-break: break-word !important;
}
.lc-exp-check{
  flex: 0 0 32px !important;
  width: 32px !important;
}

/* Checked: use secondary */
.lc-exp-item input:checked ~ .lc-exp-check{
  background: var(--secondary) !important;
  border-color: var(--secondary) !important;
}
.lc-submit-btn::after{
  background: var(--secondary) !important;
}

		/* ==============================
  Consult info row (pro)
============================== */

.lc-consult-info-row{
  display:flex;
  gap: 10px;
}

.lc-consult-info-item{
  flex: 1 1 0;
  min-width: 0;

  display:flex;
  align-items:center;
  gap: 10px;

  padding: 12px 12px;
  border-radius: 18px;
  border: 1px solid rgba(10,61,98,.12);
  background: #fff;
  box-shadow: 0 12px 26px rgba(0,0,0,.05);
}

.lc-consult-info-ic{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;

  background: rgba(10,61,98,.06);
  border: 1px solid rgba(10,61,98,.12);
  color: var(--primary);
  flex: 0 0 auto;
}

.lc-consult-info-txt{
  min-width: 0;
  flex: 1 1 auto;
}

.lc-consult-info-label{
  font-size: .74rem;
  color:#64748b;
  line-height: 1.2;
}

.lc-consult-info-val{
  margin-top: 6px;
  font-weight: 950;
  color:#0f172a;
  font-size: .92rem;
  line-height: 1.35;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.lc-consult-info-price{
  color: var(--primary);
}

/* Subtle per-card accent (no gradients) */
.lc-consult-info-item--type{ border-top: 3px solid rgba(10,61,98,.35); }
.lc-consult-info-item--time{ border-top: 3px solid rgba(27,120,194,.35); }
.lc-consult-info-item--price{ border-top: 3px solid rgba(144,104,43,.45); }

.lc-consult-info-item--price .lc-consult-info-ic{
  background: rgba(144,104,43,.10);
  border-color: rgba(144,104,43,.20);
  color: var(--secondary);
}


		/* ==============================
  Consult info – mobile layout fix
============================== */

@media (max-width: 576px){

  .lc-consult-info-row{
    gap: 8px;
  }

  .lc-consult-info-item{
    flex-direction: column;        /* stack icon on top */
    align-items: center;
    text-align: center;
    padding: 10px 8px;
  }

  .lc-consult-info-ic{
    margin-bottom: 6px;
  }

  .lc-consult-info-txt{
    width: 100%;
  }

  .lc-consult-info-label{
    font-size: .68rem;
    margin-bottom: 2px;
  }

  .lc-consult-info-val{
    font-size: .8rem;
    white-space: normal;           /* allow wrapping */
    overflow: visible;
    text-overflow: unset;
    line-height: 1.4;
  }
}

		/* ==============================
  Expertise grid – mobile layout
============================== */

@media (max-width: 576px){

  .lc-exp-item{
    flex-direction: column;      /* stack items vertically */
    align-items: center;
    text-align: center;
    gap: 8px;
    padding: 12px 10px;
  }

  .lc-exp-main{
    flex-direction: column;      /* icon top, text bottom */
    align-items: center;
    gap: 6px;
    width: 100%;
  }

  .lc-exp-ic{
    width: 40px;
    height: 40px;
    border-radius: 14px;
  }

  .lc-exp-txt{
    font-size: .82rem;
    line-height: 1.45;
    white-space: normal;         /* allow wrapping */
    text-align: center;
    word-break: break-word;
  }

  /* keep checkbox stable */
  .lc-exp-check{
    margin-top: 6px;
    width: 30px;
    height: 30px;
    border-radius: 12px;
  }
}

		
		/* ==============================
  Expertise footer actions
============================== */

.lc-exp-footer{
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(10,61,98,.12);

  display:flex;
  flex-direction: column;
  gap: 12px;
}

/* Selected expertise line */
.lc-selected-line{
  display:flex;
  align-items:center;
  gap: 8px;
  font-size: .85rem;
  color:#334155;
}

.lc-selected-line i{
  color: var(--secondary);
}

.lc-selected-line strong{
  font-weight: 900;
  color:#0f172a;
}

/* Buttons row */
.lc-exp-actions{
  display:flex;
  align-items:center;
  gap: 10px;
}

/* Back button */
.lc-btn-back{
  display:inline-flex;
  align-items:center;
  gap: 8px;

  padding: 8px 14px;
  border-radius: 14px;

  border: 1px solid rgba(10,61,98,.18);
  background: #fff;

  color:#334155;
  font-weight: 800;
  font-size: .85rem;
  text-decoration: none;

  transition: .18s ease;
}

.lc-btn-back i{
  color: var(--secondary);
}

.lc-btn-back:hover{
  border-color: var(--secondary);
  color:#0f172a;
  box-shadow: 0 10px 22px rgba(0,0,0,.06);
}

/* Submit button (primary) */
.lc-btn-submit{
  margin-inline-start: auto;

  display: inline-flex;
  flex-direction: row;          /* force single row */
  flex-wrap: nowrap;            /* prevent wrapping */
  align-items: center;
  justify-content: center;
  gap: 10px;

  padding: 10px 18px;
  border-radius: 16px;

  border: 0;
  background: var(--primary);
  color:#fff;

  font-weight: 950;
  font-size: .9rem;
  line-height: 1;               /* prevent multi-line height weirdness */
  white-space: nowrap;          /* keep text+icon on one line */

  box-shadow: 0 14px 34px rgba(10,61,98,.28);
  transition: .18s ease;
}

.lc-btn-submit i{
  font-size: .9rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Hover / active */
.lc-btn-submit:hover:not(:disabled){
  filter: brightness(1.05);
}

.lc-btn-submit:active:not(:disabled){
  transform: translateY(1px);
}

/* Disabled state */
.lc-btn-submit:disabled{
  opacity: .55;
  box-shadow: none;
  cursor: not-allowed;
}

/* Mobile tweaks */
@media (max-width: 576px){

  .lc-exp-actions{
    gap: 8px;
  }

  .lc-btn-back{
    padding: 10px 12px;
    font-size: .82rem;
  }

  .lc-btn-submit{
    flex: 1;
    padding: 12px 14px;
    font-size: .88rem;
  }
}
/* ==============================
  Order Final - Header
============================== */

.lc-final-head{
  margin-bottom: 12px;
  padding: 10px 2px 6px;
}

.lc-final-title{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 950;
  color:#0f172a;
  font-size: 1.05rem;
}

.lc-final-title i{
  color: var(--secondary);
}

.lc-final-sub{
  margin-top: 6px;
  color:#64748b;
  font-size: .85rem;
  line-height: 1.7;
}

/* ==============================
  Step divider (if not already)
============================== */

.lc-step-divider{
  height: 1px;
  margin: 14px 0;
  background: rgba(10,61,98,.10);
}

/* ==============================
  Distinct headers (no gradient)
============================== */

.lc-step-hd{
  background:#fff;
  border: 1px solid rgba(10,61,98,.10);
  border-radius: 18px;
  padding: 12px 14px;
}

.lc-step-title{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 950;
  color:#0f172a;
  font-size: .95rem;
}

.lc-step-title i{
  color: var(--primary);
}

/* Accent top lines per section */
.lc-step-hd--consult{ border-top: 3px solid rgba(10,61,98,.55); }
.lc-step-hd--vakil{ border-top: 3px solid rgba(144,104,43,.60); }
.lc-step-hd--expertise{ border-top: 3px solid rgba(10,61,98,.55); }
.lc-step-hd--final{ border-top: 3px solid rgba(144,104,43,.60); }

/* ==============================
  Step box container
============================== */

.lc-step-box{
  background:#fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  overflow: hidden;
}

.lc-step-box .lc-step-hd{
  border: 0;
  border-bottom: 1px solid rgba(10,61,98,.10);
  border-radius: 0;
}

.lc-step-box-bd{
  padding: 14px;
}

/* ==============================
  Final summary key-value list
============================== */

.lc-kv{
  display:flex;
  flex-direction: column;
  gap: 10px;
}

.lc-kv-row{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;

  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.10);
  background: #fbfdff;
}

.lc-kv-label{
  display:flex;
  align-items:center;
  gap: 8px;
  color:#475569;
  font-weight: 800;
  font-size: .85rem;
  white-space: nowrap;
}

.lc-kv-label i{
  color: var(--secondary);
}

.lc-kv-val{
  color:#0f172a;
  font-weight: 950;
  font-size: .9rem;
  text-align: left;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lc-kv-val--price{
  color: var(--primary);
}

/* Wrap long expertise on small screens */
@media (max-width: 576px){
  .lc-kv-row{
    align-items:flex-start;
  }
  .lc-kv-val{
    white-space: normal;
    text-align: right;
    line-height: 1.6;
  }
}

/* ==============================
  Final actions hint
============================== */

.lc-final-actions{
  margin-top: 6px;
}

.lc-final-hint{
  gap: 10px;
  color:#334155;
  font-size: .84rem;
  line-height: 1.8;
}

.lc-final-hint i{
  color: var(--secondary);
}

/* ==============================
  Copy button (if not already)
============================== */

.lc-copy-btn{
  border: 1px solid rgba(10,61,98,.16);
  background: #fff;
  border-radius: 12px;
  padding: 8px 10px;
  font-weight: 900;
  font-size: .82rem;
  color:#334155;
  display:inline-flex;
  align-items:center;
  gap: 8px;
  transition: .18s ease;
}

.lc-copy-btn i{ color: var(--secondary); }

.lc-copy-btn:hover{
  border-color: rgba(144,104,43,.35);
  box-shadow: 0 10px 22px rgba(0,0,0,.06);
}

/* ==============================
  Buttons (ensure single-line)
============================== */

.lc-btn-submit{
  margin-inline-start: auto;

  display: inline-flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 10px;

  padding: 10px 18px;
  border-radius: 16px;

  border: 0;
  background: var(--primary);
  color:#fff;

  font-weight: 950;
  font-size: .9rem;
  line-height: 1;
  white-space: nowrap;

  box-shadow: 0 14px 34px rgba(10,61,98,.28);
  transition: .18s ease;
}

.lc-btn-submit i{
  font-size: .9rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.lc-btn-submit:hover:not(:disabled){
  filter: brightness(1.05);
}

.lc-btn-submit:active:not(:disabled){
  transform: translateY(1px);
}

.lc-btn-submit:disabled{
  opacity: .55;
  box-shadow: none;
  cursor: not-allowed;
}

@media (max-width: 576px){
  .lc-exp-actions{
    gap: 8px;
  }

  .lc-btn-back{
    padding: 10px 12px;
    font-size: .82rem;
  }

  .lc-btn-submit{
    flex: 1;
    padding: 12px 14px;
    font-size: .88rem;
  }
}

		/* ==============================
  Legal Consult - Hero Section
  (Kian Edalat)
============================== */

.lc-legal-hero{
  padding: 26px 0 18px;
}

/* Text wrapper */
.lc-legal-hero-content{
  background: #fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  padding: 18px 18px;
  position: relative;
  overflow: hidden;
}

/* Subtle shape */
.lc-legal-hero-content::before{
  content:"";
  position:absolute;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  top: -140px;
  inset-inline-start: -120px;
  background: rgba(10,61,98,.06);
  pointer-events:none;
}

/* Title */
.lc-legal-title{
  margin: 0 0 10px;
  font-weight: 950;
  color: #0f172a;
  font-size: 1.15rem;
  line-height: 1.55;
  letter-spacing: -.2px;
  position: relative;
}

/* Secondary accent underline */
.lc-legal-title::after{
  content:"";
  display:block;
  width: 88px;
  height: 3px;
  border-radius: 999px;
  margin-top: 10px;
  background: var(--secondary);
  opacity: .85;
}

/* Paragraphs */
.lc-legal-text{
  margin: 0 0 10px;
  color: #334155;
  font-size: .92rem;
  line-height: 2;
  text-align: justify;
}

/* Features list */
.lc-legal-features{
  list-style: none;
  padding: 0;
  margin: 14px 0 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  position: relative;
}

/* Feature item */
.lc-legal-features li{
  display:flex;
  align-items:center;
  gap: 10px;

  padding: 10px 12px;
  border-radius: 16px;

  background: #fbfdff;
  border: 1px solid rgba(10,61,98,.12);

  color: #0f172a;
  font-weight: 900;
  font-size: .86rem;

  min-width: 0;
}

/* Icon bubble */
.lc-legal-features li i{
  width: 34px;
  height: 34px;
  border-radius: 14px;

  display:flex;
  align-items:center;
  justify-content:center;

  background: rgba(10,61,98,.06);
  border: 1px solid rgba(10,61,98,.12);

  color: var(--primary);
  flex: 0 0 auto;
}

/* Add a subtle secondary cue on hover */
.lc-legal-features li:hover{
  border-color: rgba(144,104,43,.28);
  box-shadow: 0 12px 26px rgba(0,0,0,.05);
  transform: translateY(-1px);
  transition: .18s ease;
}

.lc-legal-features li:hover i{
  border-color: rgba(144,104,43,.28);
  color: var(--secondary);
}

/* Banner box */
.lc-legal-hero-banner{
  height: 100%;
  min-height: 260px;

  border-radius: 20px;
  border: 1px solid rgba(10,61,98,.12);
  background: #fff;

  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  position: relative;
  overflow: hidden;

  display:flex;
  align-items:center;
  justify-content:center;
}

/* Banner background texture (no heavy gradients) */
.lc-legal-hero-banner::before{
  content:"";
  position:absolute;
  inset: 0;
  background:
    radial-gradient(900px 260px at 20% 0%, rgba(10,61,98,.08), transparent 60%);
  opacity: .9;
  pointer-events:none;
}

/* Decorative secondary dot */
.lc-legal-hero-banner::after{
  content:"";
  position:absolute;
  width: 170px;
  height: 170px;
  border-radius: 999px;
  bottom: -80px;
  inset-inline-end: -60px;
  background: rgba(144,104,43,.14);
  pointer-events:none;
}

/* Optional placeholder icon inside banner */
.lc-legal-hero-banner .lc-legal-banner-mark{
  width: 84px;
  height: 84px;
  border-radius: 26px;

  display:flex;
  align-items:center;
  justify-content:center;

  border: 1px dashed rgba(10,61,98,.22);
  background: rgba(10,61,98,.04);

  color: var(--primary);
  position: relative;
  z-index: 2;
}

.lc-legal-hero-banner .lc-legal-banner-mark i{
  font-size: 1.7rem;
  color: var(--primary);
}

/* ==============================
  Responsive tweaks
============================== */

@media (max-width: 991px){
  .lc-legal-hero{
    padding: 18px 0 10px;
  }

  .lc-legal-hero-content{
    padding: 16px;
  }

  .lc-legal-title{
    font-size: 1.05rem;
  }

  .lc-legal-hero-banner{
    min-height: 200px;
  }
}

@media (max-width: 576px){
  /* Single column features on small screens */
  .lc-legal-features{
    grid-template-columns: 1fr;
  }

  .lc-legal-features li{
    padding: 10px 12px;
  }

  .lc-legal-features li i{
    width: 36px;
    height: 36px;
    border-radius: 14px;
  }
}

		.lc-trust-stats{
  margin-top: 28px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.lc-trust-item{
  background: #fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 18px;
  padding: 14px 12px;
  text-align: center;
}

.lc-trust-num{
  font-size: 1.25rem;
  font-weight: 900;
  color: var(--primary);
  line-height: 1.2;
}

.lc-trust-label{
  margin-top: 6px;
  font-size: .8rem;
  color: #64748b;
}

/* subtle accent for second item */
.lc-trust-item:nth-child(2) .lc-trust-num{
  color: var(--secondary);
}

/* Responsive */
@media (max-width: 768px){
  .lc-trust-stats{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 420px){
  .lc-trust-num{
    font-size: 1.1rem;
  }
}

		/* ==============================
  Q&A Categories Section
============================== */

.lc-qa-cat-section{
  padding: 20px 0 28px;
}

/* Header */
.lc-qa-cat-head{
  background: #fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  padding: 14px 16px;
  position: relative;
  overflow: hidden;
  margin-bottom: 14px;
}

.lc-qa-cat-head::before{
  content:"";
  position:absolute;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  top: -140px;
  inset-inline-start: -120px;
  background: rgba(10,61,98,.06);
  pointer-events:none;
}

.lc-qa-cat-title{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 950;
  color:#0f172a;
  font-size: 1.05rem;
  line-height: 1.4;
  position: relative;
}

.lc-qa-cat-title i{
  color: var(--primary);
}

.lc-qa-cat-sub{
  margin-top: 6px;
  color:#64748b;
  font-size: .85rem;
  line-height: 1.8;
  position: relative;
}

/* Select box wrapper */
.lc-qa-cat-selectbox{
  background:#fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  padding: 14px 16px;
  margin-bottom: 14px;
}

.lc-qa-cat-selectlabel{
  display:block;
  font-weight: 900;
  color:#0f172a;
  font-size: .9rem;
  margin-bottom: 8px;
}

/* Select row */
.lc-qa-select-wrap{
  display:flex;
  align-items: stretch;
  gap: 10px;
  position: relative;
}

.lc-qa-select-wrap > i{
  position:absolute;
  inset-inline-start: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(15,23,42,.55);
  pointer-events:none;
}

/* Select */
.lc-qa-select{
  width: 100%;
  min-height: 50px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.14);
  background: #fbfdff;
  padding: 10px 42px 10px 12px; /* left for icon in RTL */
  font-weight: 900;
  color:#0f172a;
  outline: none;
}

.lc-qa-select:focus{
  border-color: rgba(144,104,43,.45);
  box-shadow: 0 0 0 .18rem rgba(144,104,43,.12);
}

/* Go button */
.lc-qa-go-btn{
  flex: 0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 8px;

  min-height: 50px;
  padding: 10px 16px;
  border-radius: 16px;

  background: var(--primary);
  color:#fff;
  text-decoration:none;
  font-weight: 950;
  border: 0;

  box-shadow: 0 14px 34px rgba(10,61,98,.22);
  transition: .18s ease;
  white-space: nowrap;
}

.lc-qa-go-btn i{
  font-size: .9rem;
}

.lc-qa-go-btn:hover{
  filter: brightness(1.05);
}

.lc-qa-go-btn.is-disabled{
  opacity: .55;
  box-shadow: none;
  pointer-events: none;
}

/* Hint text */
.lc-qa-cat-hint{
  margin-top: 10px;
  display:flex;
  align-items:center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px dashed rgba(10,61,98,.18);
  background: rgba(10,61,98,.04);
  color:#334155;
  font-weight: 800;
  font-size: .82rem;
}

.lc-qa-cat-hint i{
  color: var(--secondary);
}

/* ==============================
  Grid: 5 desktop / 3 mobile
============================== */

.lc-qa-cats{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.lc-qa-cat{
  text-decoration: none;
  background: #fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 18px;
  box-shadow: 0 12px 28px rgba(0,0,0,.05);
  padding: 14px 12px;

  display:flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;

  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  position: relative;
  overflow: hidden;
}

.lc-qa-cat::before{
  content:"";
  position:absolute;
  top: 0;
  inset-inline-start: 0;
  inset-inline-end: 0;
  height: 3px;
  background: var(--secondary);
  opacity: .80;
}

.lc-qa-cat-ic{
  width: 54px;
  height: 54px;
  border-radius: 18px;

  display:flex;
  align-items:center;
  justify-content:center;

  background: rgba(10,61,98,.06);
  border: 1px solid rgba(10,61,98,.12);
  color: var(--primary);
}

.lc-qa-cat-ic i{
  font-size: 1.25rem;
}

.lc-qa-cat-txt{
  font-weight: 900;
  color:#0f172a;
  font-size: .88rem;
  line-height: 1.4;
  text-align:center;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.6em;
}

.lc-qa-cat:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgba(0,0,0,.08);
  border-color: rgba(144,104,43,.30);
}

.lc-qa-cat:hover .lc-qa-cat-ic{
  border-color: rgba(144,104,43,.28);
  color: var(--secondary);
}

/* Mobile: 3 columns */
@media (max-width: 576px){
  .lc-qa-cats{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }

  .lc-qa-cat{
    border-radius: 16px;
    padding: 12px 10px;
  }

  .lc-qa-cat-ic{
    width: 46px;
    height: 46px;
    border-radius: 16px;
  }

  .lc-qa-cat-ic i{
    font-size: 1.1rem;
  }

  .lc-qa-cat-txt{
    font-size: .80rem;
    min-height: 2.4em;
  }

  .lc-qa-go-btn{
    padding: 10px 12px;
  }
}

/* Optional: force 2 columns on mobile if needed */
.lc-qa-cats.is-2col-mobile{}
@media (max-width: 576px){
  .lc-qa-cats.is-2col-mobile{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Empty state */
.lc-qa-empty{
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px dashed rgba(10,61,98,.22);
  background: rgba(10,61,98,.04);
  color:#334155;
  font-weight: 900;
}

		/* ==============================
  Pagination (Q&A)
============================== */

.lc-pager{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.lc-pager-btn{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.14);
  background: #fff;
  color: #0f172a;
  font-weight: 950;
  text-decoration: none;
  transition: .18s ease;
}

.lc-pager-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.06);
  border-color: rgba(144,104,43,.28);
}

.lc-pager-btn.is-disabled{
  opacity: .55;
  pointer-events:none;
  box-shadow:none;
  transform:none;
}

.lc-pager-pages{
  display:flex;
  align-items:center;
  gap: 6px;
  flex-wrap: wrap;
  justify-content:center;
  flex: 1 1 auto;
}

.lc-pager-page{
  min-width: 40px;
  height: 40px;
  border-radius: 14px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.04);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color:#0f172a;
  font-weight: 950;
  transition: .18s ease;
}

.lc-pager-page:hover{
  background: rgba(144,104,43,.10);
  border-color: rgba(144,104,43,.26);
}

.lc-pager-page.is-active{
  background: var(--primary);
  border-color: var(--primary);
  color:#fff;
  box-shadow: 0 12px 24px rgba(10,61,98,.18);
}

.lc-pager-dots{
  padding: 0 4px;
  color:#64748b;
  font-weight: 900;
}
		
		/* ==============================
  Reusable SEO Content Section
============================== */

.lc-seo{
  padding: 28px 0 34px;
}

.lc-seo-box{
  background:#fff;
  border: 1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  overflow: hidden;
  position: relative;
}

.lc-seo-box::before{
  content:"";
  position:absolute;
  inset-inline-start:-140px;
  top:-140px;
  width: 300px;
  height: 300px;
  border-radius: 999px;
  background: rgba(10,61,98,.05);
}

.lc-seo-hd{
  position: relative;
  z-index: 1;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(10,61,98,.10);
  background: rgba(10,61,98,.04);
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.lc-seo-title{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 950;
  color:#0f172a;
  font-size: 1rem;
}

.lc-seo-title i{
  color: var(--primary);
}

.lc-seo-badges{
  display:flex;
  align-items:center;
  gap: 8px;
  flex-wrap: wrap;
}

.lc-seo-badge{
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.75);
  color:#334155;
  font-weight: 800;
  font-size: .78rem;
}

.lc-seo-badge i{
  color: var(--secondary);
}

.lc-seo-bd{
  position: relative;
  z-index: 1;
  padding: 16px;
}

.lc-seo-lead{
  margin: 0;
  color:#334155;
  line-height: 2;
  font-size: .92rem;
}

.lc-seo-text{
  margin-top: 10px;
  color:#334155;
  line-height: 2;
  font-size: .9rem;
  text-align: justify;
}

.lc-seo-grid{
  margin-top: 14px;
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.lc-seo-card{
  border: 1px solid rgba(10,61,98,.12);
  background: #fbfdff;
  border-radius: 16px;
  padding: 12px 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
}

.lc-seo-card-ic{
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.22);
  color: #3b2f15;
  flex: 0 0 auto;
}

.lc-seo-card-ttl{
  font-weight: 950;
  color:#0f172a;
  font-size: .9rem;
  line-height: 1.4;
}

.lc-seo-card-txt{
  margin-top: 4px;
  color:#64748b;
  font-size: .82rem;
  line-height: 1.8;
}

.lc-seo-note{
  margin-top: 14px;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px dashed rgba(10,61,98,.20);
  background: rgba(10,61,98,.03);
  color:#334155;
  font-size: .84rem;
  line-height: 1.9;
  display:flex;
  gap: 10px;
  align-items:flex-start;
}

.lc-seo-note i{
  color: var(--primary);
  margin-top: 2px;
}

@media (max-width: 576px){
  .lc-seo-hd{
    padding: 12px 12px;
  }
  .lc-seo-bd{
    padding: 12px;
  }
  .lc-seo-grid{
    grid-template-columns: 1fr;
  }
}

/* ==============================
  Question Page
============================== */


.lc-qa{
  padding: 18px 0 34px;
}

/* =========================
  Main Card
========================= */
.lc-qa-card{
  background:#fff;
  border:1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  overflow:hidden;
  position: relative;
}

.lc-qa-card::before{
  content:"";
  position:absolute;
  inset-inline-start:-120px;
  top:-120px;
  width:260px;
  height:260px;
  border-radius: 999px;
  background: rgba(10,61,98,.05);
}

/* Header */
.lc-qa-hd{
  position: relative;
  z-index: 1;
  padding: 14px 16px 12px;
  border-bottom: 1px solid rgba(10,61,98,.10);
  background:#fbfdff;
}

.lc-qa-hd-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

/* Category pill */
/*.lc-qa-cat{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.04);
  color:#334155;
  font-weight: 950;
  font-size: .82rem;
}

.lc-qa-cat-ic-page{
  width: 28px;
  height: 28px;
  border-radius: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.22);
  color:#3b2f15;
  flex: 0 0 auto;
}*/

/* =========================
   QA Page - Category Pill
========================= */

.qa-pill{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.04);
  color: #334155;
  font-weight: 900;
  font-size: .82rem;
}

/* اگر گوشه‌ای یا حالت خاص داشت */
.qa-pill--corner{
  position: relative;
}

/* متن */
.qa-pill-txt{
  white-space: nowrap;
}

/* آیکون */
.qa-pill-ic{
  width: 28px;
  height: 28px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.22);
  color: #3b2f15;
  flex: 0 0 auto;
  font-size: .9rem;
}

/* Code chip (separate from meta) */
.lc-qa-code{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px dashed rgba(10,61,98,.18);
  background: rgba(10,61,98,.03);
  color:#0f172a;
  font-weight: 950;
  font-size: .82rem;
}

.lc-qa-code i{
  color: var(--primary);
}

.lc-qa-copy{
  border: 0;
  background: transparent;
  color: var(--primary);
  padding: 0 4px;
  border-radius: 10px;
  transition: .18s ease;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height: 1;
}

.lc-qa-copy:hover{
  background: rgba(10,61,98,.08);
}

/* Title */
.lc-qa-title{
  margin: 0;
  font-weight: 950;
  color:#0f172a;
  font-size: 1.08rem;
  line-height: 1.75;
}

/* Body */
.lc-qa-bd{
  padding: 14px 16px 12px;
  position: relative;
  z-index: 1;
}

.lc-qa-body{
  color:#334155;
  font-size: .92rem;
  line-height: 2.05;
  text-align: justify;
}

/* Meta row (only date/seen/answers etc) + share */
.lc-qa-meta-row{
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(10,61,98,.10);

  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.lc-qa-meta{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}

.lc-qa-meta-item{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.86);
  color:#334155;
  font-size: .78rem;
  font-weight: 850;
}

.lc-qa-meta-item i{
  color: var(--secondary);
}

.lc-qa-meta-item strong{
  font-weight: 950;
  color:#0f172a;
}

/* Share button */
.lc-qa-share-btn{
  border: 1px solid rgba(10,61,98,.14);
  background: #fff;
  color: var(--primary);
  border-radius: 14px;
  padding: 10px 12px;
  font-weight: 950;
  font-size: .82rem;
  display:inline-flex;
  align-items:center;
  gap: 8px;
  transition: .18s ease;
  white-space: nowrap;
}

.lc-qa-share-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.22);
}

.lc-qa-share-btn:active{
  transform: translateY(0);
}

/* =========================
  Related
========================= */
.lc-qa-ft{
  border-top: 1px solid rgba(10,61,98,.10);
  padding: 12px 16px 14px;
  background: rgba(10,61,98,.03);
}

.lc-qa-related-hd{
  display:flex;
  align-items:center;
  gap: 8px;
  font-weight: 950;
  color:#0f172a;
  font-size: .9rem;
  margin-bottom: 10px;
}

.lc-qa-related-hd i{
  color: var(--primary);
}

.lc-qa-related{
  list-style: none;
  margin: 0;
  padding: 0;
  display:flex;
  flex-direction: column;
  gap: 8px;
}

.lc-qa-related-link{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  background:#fff;
  color:#0f172a;
  text-decoration: none;
  font-weight: 900;
  font-size: .84rem;
  transition: .18s ease;
}

.lc-qa-related-link i{
  color: var(--secondary);
  flex: 0 0 auto;
}

.lc-qa-related-link:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.22);
}

.lc-qa-empty{
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px dashed rgba(10,61,98,.20);
  background: rgba(10,61,98,.03);
  color:#475569;
  font-weight: 850;
  font-size: .84rem;
}

/* =========================
  Sidebar
========================= */
.lc-side-card{
  background:#fff;
  border:1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  overflow:hidden;
}

.lc-side-hd{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(10,61,98,.10);
  background: rgba(10,61,98,.04);
}

.lc-side-title{
  font-weight: 950;
  color:#0f172a;
  display:flex;
  align-items:center;
  gap: 10px;
  font-size: .95rem;
}

.lc-side-title i{
  color: var(--primary);
}

.lc-side-bd{
  padding: 10px 12px 12px;
}

/* One-row category */
.lc-side-row{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;

  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.10);
  background:#fff;

  text-decoration:none;
  color:#0f172a;

  transition: .18s ease;
  margin-bottom: 8px;
}

.lc-side-row:last-child{ margin-bottom: 0; }

.lc-side-name{
  font-weight: 900;
  font-size: .86rem;
  color:#0f172a;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lc-side-count{
  flex: 0 0 auto;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(144,104,43,.22);
  background: rgba(144,104,43,.10);
  color:#3b2f15;
  font-weight: 950;
  font-size: .8rem;
}

/* Hover */
.lc-side-row:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.20);
}

/* Active */
.lc-side-row.is-active{
  border-color: rgba(10,61,98,.35);
  background: rgba(10,61,98,.04);
}

.lc-side-row.is-active .lc-side-count{
  border-color: rgba(10,61,98,.22);
  background: rgba(10,61,98,.10);
  color: var(--primary);
}

/* =========================
  Mobile tweaks
========================= */
@media (max-width: 576px){
  .lc-qa-hd{ padding: 12px 12px 10px; }
  .lc-qa-bd{ padding: 12px 12px 10px; }
  .lc-qa-ft{ padding: 12px 12px 12px; }

  .lc-qa-title{ font-size: 1.02rem; }

  .lc-qa-meta{ gap: 6px; }
  .lc-qa-meta-item{ font-size: .76rem; padding: 7px 9px; }

  .lc-qa-share-btn{
    width: 100%;
    justify-content: center;
  }
}

	/* =========================
   QA2 – Category Line
========================= */

/* Backward compat: old markup */
.qa2-catline{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

/* If icon is direct child */
.qa2-catline .qa2-cat > i{
  width: 28px;
  height: 28px;
  border-radius: 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.22);
  color:#3b2f15;
  flex: 0 0 auto;
}

/* Category pill – compact with corner icon */
.qa2-cat{
  position: relative;
  display:inline-block;
  padding: 6px 34px 6px 12px; /* space for corner icon */
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.14);
  background: rgba(10,61,98,.04);
  color:#334155;
  font-weight: 900;
  font-size: .82rem;
  line-height: 1.4;
  max-width: 100%;
}

/* Text */
.qa2-cat-txt{
  display:block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Corner icon */
.qa2-cat-ic{
  position:absolute;
  top: -6px;
  right: -6px;

  width: 22px;
  height: 22px;
  border-radius: 10px;

  display:flex;
  align-items:center;
  justify-content:center;

  background: rgba(144,104,43,.92);
  color:#fff;
  font-size: .7rem;

  border: 2px solid #fff;
  box-shadow: 0 6px 14px rgba(0,0,0,.15);
}


		
		/* =========================
   Answers Section
========================= */

.lc-ans{
  padding: 14px 0 34px;
}

.lc-ans-card{
  background:#fff;
  border:1px solid rgba(10,61,98,.12);
  border-radius: 20px;
  box-shadow: 0 16px 40px rgba(0,0,0,.06);
  overflow:hidden;
}

/* Header */
.lc-ans-hd{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(10,61,98,.10);
  background: rgba(10,61,98,.04);

  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.lc-ans-title{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 950;
  color:#0f172a;
}

.lc-ans-title i{
  color: var(--primary);
}

.lc-ans-count{
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(144,104,43,.22);
  background: rgba(144,104,43,.10);
  color:#3b2f15;
  font-weight: 950;
  font-size: .78rem;
}

.lc-ans-jump{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: 14px;
  border: 1px solid rgba(10,61,98,.14);
  background:#fff;
  color: var(--primary);
  font-weight: 900;
  font-size: .82rem;
  transition: .18s ease;
  white-space: nowrap;
}

.lc-ans-jump:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.22);
}

/* Vakil form */
.lc-ans-form{
  padding: 14px;
  border-bottom: 1px solid rgba(10,61,98,.10);
  background: #fbfdff;
}

.lc-ans-form-hd{
  display:flex;
  align-items:center;
  gap: 12px;
  margin-bottom: 12px;
}

.lc-ans-form-badge{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  background: rgba(10,61,98,.06);
  border: 1px solid rgba(10,61,98,.12);
  display:flex;
  align-items:center;
  justify-content:center;
  color: var(--primary);
  flex: 0 0 auto;
}

.lc-ans-form-hello{
  font-weight: 950;
  color:#0f172a;
}

.lc-ans-form-sub{
  margin-top: 3px;
  color:#64748b;
  font-size: .84rem;
  line-height: 1.6;
}

.lc-ans-field{
  margin-bottom: 12px;
}

.lc-ans-label{
  display:block;
  font-weight: 900;
  color:#0f172a;
  font-size: .86rem;
  margin-bottom: 8px;
}

.lc-ans-textarea{
  width: 100%;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.14);
  background:#fff;
  padding: 12px 12px;
  outline: none;
  color:#0f172a;
  line-height: 2;
  font-size: .9rem;
  transition: .18s ease;
}

.lc-ans-textarea:focus{
  border-color: rgba(10,61,98,.35);
  box-shadow: 0 0 0 .18rem rgba(10,61,98,.10);
}

.lc-ans-actions{
  display:flex;
  align-items:center;
  gap: 12px;
  flex-wrap: wrap;
}

.lc-ans-hint{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  color:#64748b;
  font-size: .8rem;
}

/* Buttons */
.lc-ans-btn{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 16px;
  border: 0;
  font-weight: 950;
  font-size: .88rem;
  transition: .18s ease;
  white-space: nowrap;
}

.lc-ans-btn--primary{
  background: var(--primary);
  color:#fff;
  box-shadow: 0 14px 34px rgba(10,61,98,.22);
}

.lc-ans-btn--primary:hover{
  filter: brightness(1.05);
  transform: translateY(-1px);
}

.lc-ans-btn--secondary{
  background: var(--secondary);
  color:#fff;
  box-shadow: 0 14px 34px rgba(144,104,43,.22);
}

.lc-ans-btn--secondary:hover{
  filter: brightness(1.05);
  transform: translateY(-1px);
}

/* Answers list */
.lc-ans-list{
  padding: 14px;
  display:flex;
  flex-direction: column;
  gap: 12px;
}

.lc-ans-item{
  border: 1px solid rgba(10,61,98,.12);
  background:#fff;
  border-radius: 18px;
  padding: 12px;
  transition: .18s ease;
}

.lc-ans-item:hover{
  border-color: rgba(10,61,98,.20);
  box-shadow: 0 12px 26px rgba(0,0,0,.06);
}

/* Top row */
.lc-ans-item-top{
  display:flex;
  align-items:flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.lc-ans-vakil{
  text-decoration:none;
  display:flex;
  align-items:center;
  gap: 10px;
  min-width: 260px;
  color:#0f172a;
}

.lc-ans-avatar{
  position: relative;
  width: 52px;
  height: 52px;
  border-radius: 999px;
  padding: 2px;
  background: rgba(10,61,98,.08);
  flex: 0 0 auto;
}

.lc-ans-avatar img{
  width:100%;
  height:100%;
  border-radius: 999px;
  object-fit: cover;
  background:#f3f4f6;
  display:block;
}

.lc-ans-verified{
  position:absolute;
  bottom: -6px;
  right: -6px;
  width: 22px;
  height: 22px;
  border-radius: 10px;
  background: rgba(16,185,129,.92);
  color:#fff;
  border: 2px solid #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: .75rem;
  box-shadow: 0 10px 20px rgba(0,0,0,.12);
}

.lc-ans-vakil-info{
  min-width: 0;
  display:flex;
  flex-direction: column;
  gap: 2px;
}

.lc-ans-vakil-name{
  font-weight: 950;
  line-height: 1.3;
}

.lc-ans-vakil-title{
  color:#64748b;
  font-size: .82rem;
  line-height: 1.4;
}

/* meta */
.lc-ans-meta{
  display:flex;
  align-items:center;
  gap: 8px;
  flex-wrap: wrap;
  margin-inline-start: auto;
}

.lc-ans-meta-pill{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.04);
  color:#334155;
  font-size: .78rem;
  font-weight: 850;
  white-space: nowrap;
}

.lc-ans-meta-pill i{
  color: var(--secondary);
}

.lc-ans-share{
  border: 1px solid rgba(10,61,98,.14);
  background:#fff;
  color: var(--primary);
  border-radius: 14px;
  padding: 8px 10px;
  font-weight: 900;
  font-size: .8rem;
  display:inline-flex;
  align-items:center;
  gap: 8px;
  transition: .18s ease;
}

.lc-ans-share:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.06);
  border-color: rgba(10,61,98,.22);
}

/* answer body */
.lc-ans-body{
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(10,61,98,.10);
}

.lc-ans-badge{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.22);
  color:#3b2f15;
  font-weight: 950;
  font-size: .78rem;
  margin-bottom: 10px;
}

.lc-ans-text{
  color:#334155;
  line-height: 2.05;
  font-size: .9rem;
  text-align: justify;
}

/* CTA row */
.lc-ans-cta{
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(10,61,98,.10);

  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;

  background: rgba(10,61,98,.03);
  border-radius: 16px;
  padding: 12px;
}

.lc-ans-cta-title{
  font-weight: 950;
  color:#0f172a;
}

.lc-ans-cta-sub{
  margin-top: 3px;
  color:#64748b;
  font-size: .82rem;
  line-height: 1.6;
}

/* empty */
.lc-ans-empty{
  padding: 14px 12px;
  border-radius: 16px;
  border: 1px dashed rgba(10,61,98,.20);
  background: rgba(10,61,98,.03);
  color:#475569;
  font-weight: 900;
  display:flex;
  align-items:center;
  gap: 10px;
}

/* Mobile */
@media (max-width: 576px){
  .lc-ans-list{ padding: 12px; }
  .lc-ans-form{ padding: 12px; }

  .lc-ans-actions{
    flex-direction: column;
    align-items: stretch;
  }

  .lc-ans-btn{
    width: 100%;
    justify-content: center;
  }

  .lc-ans-meta{
    width: 100%;
    justify-content: flex-start;
  }

  .lc-ans-share{
    width: 100%;
    justify-content: center;
  }
}


		
		/* =========================
   Global Toast (Reusable)
========================= */

.lc-toast-wrap{
  position: fixed;
  inset-inline: 14px;
  bottom: 14px;
	left: 10px;
  z-index: 99999;
  display:flex;
  flex-direction: column;
  gap: 10px;
  pointer-events: none;
}

@media (min-width: 992px){
  .lc-toast-wrap{
    inset-inline-start: 18px;
    inset-inline-end: auto;
    max-width: 520px;
  }
}

.lc-toast{
  pointer-events: auto;
  background:#fff;
  border: 1px solid rgba(10,61,98,.14);
  border-radius: 18px;
  box-shadow: 0 18px 48px rgba(0,0,0,.10);
  overflow:hidden;

  display:flex;
  align-items: stretch;
  gap: 12px;

  transform: translateY(10px);
  opacity: 0;
  transition: .22s ease;
}

.lc-toast.is-show{
  transform: translateY(0);
  opacity: 1;
}

.lc-toast-bar{
  width: 6px;
  flex: 0 0 auto;
  background: rgba(10,61,98,.35);
}

.lc-toast-ic{
  width: 44px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;
  color: var(--primary);
}

.lc-toast-body{
  padding: 10px 0;
  min-width: 0;
  flex: 1 1 auto;
}

.lc-toast-title{
  font-weight: 950;
  color:#0f172a;
  font-size: .9rem;
  line-height: 1.4;
  margin: 0 0 4px;
}

.lc-toast-msg{
  color:#475569;
  font-size: .84rem;
  line-height: 1.7;
  margin: 0;
}

.lc-toast-actions{
  display:flex;
  align-items:center;
  padding: 10px 10px 10px 12px;
  flex: 0 0 auto;
}

.lc-toast-close{
  border: 1px solid rgba(10,61,98,.14);
  background:#fff;
  color: var(--primary);
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition: .18s ease;
}

.lc-toast-close:hover{
  background: rgba(10,61,98,.06);
  border-color: rgba(10,61,98,.22);
}

/* Types */
.lc-toast--success .lc-toast-bar{ background: rgba(16,185,129,.90); }
.lc-toast--success .lc-toast-ic{ color: #10b981; }

.lc-toast--info .lc-toast-bar{ background: rgba(10,61,98,.90); }
.lc-toast--info .lc-toast-ic{ color: var(--primary); }

.lc-toast--warning .lc-toast-bar{ background: rgba(245,158,11,.95); }
.lc-toast--warning .lc-toast-ic{ color: #f59e0b; }

.lc-toast--danger .lc-toast-bar{ background: rgba(220,53,69,.95); }
.lc-toast--danger .lc-toast-ic{ color: #dc3545; }

/* subtle secondary usage */
.lc-toast--secondary .lc-toast-bar{ background: rgba(144,104,43,.95); }
.lc-toast--secondary .lc-toast-ic{ color: var(--secondary); }

/* Reduce motion */
@media (prefers-reduced-motion: reduce){
  .lc-toast{ transition: none; }
}
		.lc-ans-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  white-space: nowrap;
}

.lc-ans-btn i{ flex:0 0 auto; }
.lc-ans-btn-txt{ line-height: 1; }


/* =========================
   About Page — Kian Edalat
========================= */
.ka-about-hero{
  background:
    radial-gradient(900px 380px at 12% 12%, rgba(27,120,194,.12), transparent 60%),
    radial-gradient(900px 380px at 90% 40%, rgba(144,104,43,.10), transparent 55%),
    linear-gradient(180deg, #fff, #fff);
}

/* Card */
.ka-about-card{
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(10,61,98,.12);
  border-radius: calc(var(--radius) + 10px);
  box-shadow: 0 28px 70px rgba(0,0,0,.10);
  padding: 22px;
  position: relative;
  overflow: hidden;
}

.ka-about-card:before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(520px 220px at 20% 0%, rgba(27,120,194,.18), transparent 55%),
    radial-gradient(520px 220px at 100% 30%, rgba(144,104,43,.16), transparent 58%);
  pointer-events:none;
  opacity:.75;
}

.ka-about-card > *{ position: relative; z-index: 1; }

/* Pill */
.ka-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 700;
  font-size: 13px;
}
.ka-pill i{ color: var(--secondary); }

/* Title */
.ka-about-title{
  font-weight: bold;
  line-height: 1.35;
  color: var(--text-main);
  font-size: 24px;
}
.ka-tx-accent{
  color: var(--secondary);
  position: relative;
}
.ka-tx-accent:after{
  content:"";
  position:absolute;
  left:0; right:0;
  bottom:-6px;
  height:6px;
  border-radius: 999px;
  background: rgba(144,104,43,.18);
  z-index:-1;
}

.ka-about-sub{
  margin: 0;
  color: var(--text-muted);
  line-height: 1.95;
  font-size: 15px;
}

/* Feature Callout */
.ka-feature-callout{
  display:flex;
  gap: 14px;
  align-items:flex-start;
  padding: 14px 16px;
  border-radius: calc(var(--radius) + 8px);
  border: 1px solid rgba(27,120,194,.16);
  background: linear-gradient(135deg, rgba(27,120,194,.10), rgba(10,61,98,.06));
  box-shadow: 0 18px 44px rgba(0,0,0,.08);
}
.ka-fc-ic{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.12);
  border: 1px solid rgba(10,61,98,.18);
  color: var(--primary);
  flex: 0 0 auto;
}
.ka-fc-hd{
  font-weight: 900;
  color: var(--text-main);
  font-size: 14px;
}
.ka-fc-desc{
  margin-top: 4px;
  color: var(--text-muted);
  line-height: 1.85;
  font-size: 14px;
}

/* Mini features */
.ka-mini-features{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
}
.ka-mini{
  display:flex;
  gap:10px;
  align-items:center;
  padding: 12px 12px;
  border-radius: calc(var(--radius) + 6px);
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(10,61,98,.10);
  box-shadow: 0 14px 36px rgba(0,0,0,.07);
  color: var(--text-main);
  font-size: 13px;
  font-weight: 700;
}
.ka-mini i{
  color: var(--accent);
  font-size: 16px;
}

/* Buttons */
.ka-btn{
  border-radius: calc(var(--radius) + 8px);
  padding: 11px 16px;
  font-weight: 800;
  display:inline-flex;
  align-items:center;
  gap:10px;
  transition: var(--transition);
}
.ka-btn-primary{
  color:#fff;
  border: 0;
  background: linear-gradient(135deg, var(--primary), var(--accent));
  box-shadow: 0 18px 40px rgba(10,61,98,.22);
}
.ka-btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.02);
}
.ka-btn-ghost{
  background: rgba(255,255,255,.8);
  border: 1px solid rgba(10,61,98,.18);
  color: var(--primary);
}
.ka-btn-ghost:hover{
  transform: translateY(-2px);
  border-color: rgba(10,61,98,.28);
}
.ka-about-actions{ display:flex; gap:12px; flex-wrap:wrap; }

/* Banner */
.ka-banner-frame{
  position: relative;
  border-radius: calc(var(--radius) + 14px);
  overflow: hidden;
  border: 1px solid rgba(10,61,98,.16);
  box-shadow: 0 34px 90px rgba(0,0,0,.18);
  background: #fff;
}

.ka-banner-img{
  width:100%;
  display:block;
  aspect-ratio: 4/3;
  object-fit: cover;
  filter: saturate(1.05) contrast(1.03);
}

/* Orbs */
.ka-orb{
  position:absolute;
  width: 220px; height: 220px;
  border-radius: 50%;
  filter: blur(0px);
  opacity: .85;
  pointer-events:none;
}
.ka-orb-1{
  left:-70px; top:-70px;
  background: radial-gradient(circle at 30% 30%, rgba(27,120,194,.55), transparent 60%);
}
.ka-orb-2{
  right:-90px; bottom:-90px;
  background: radial-gradient(circle at 30% 30%, rgba(144,104,43,.55), transparent 60%);
}

/* Banner Badge */
.ka-banner-badge{
  position:absolute;
  left: 16px;
  bottom: 16px;
  right: 16px;
  display:flex;
  gap: 12px;
  align-items:center;
  padding: 14px 14px;
  border-radius: calc(var(--radius) + 10px);
  background: rgba(10,18,30,.70);
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(10px);
  color:#fff;
}
.ka-bb-ic{
  width: 46px; height: 46px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.14);
  flex: 0 0 auto;
}
.ka-bb-hd{ font-weight: 900; font-size: 14px; }
.ka-bb-sub{ opacity: .85; font-size: 13px; margin-top: 2px; }

/* Responsive tweaks */
@media (max-width: 991px){
  .ka-mini-features{ grid-template-columns: 1fr; }
  .ka-banner-img{ aspect-ratio: 16/10; }
}

	
		
	
		
		
		
		/* =========================
   Consult Flow (Different Layout)
========================= */
.ka-consult-flow{
  position: relative;
  background: linear-gradient(180deg, rgba(237,237,237,.45), #fff);
  overflow: hidden;
}

/* top pattern banner (subtle) */
.ka-consult-flow:before{
  content:"";
  position:absolute;
  inset: 0 0 auto 0;
  height: 220px;
  background:
    radial-gradient(900px 260px at 20% 10%, rgba(27,120,194,.18), transparent 60%),
    radial-gradient(900px 260px at 85% 30%, rgba(144,104,43,.14), transparent 58%);
  pointer-events:none;
}

.ka-flow-head{ position: relative; z-index: 1; }
.ka-flow-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 800;
  font-size: 13px;
  box-shadow: 0 16px 40px rgba(0,0,0,.07);
}
.ka-flow-kicker i{ color: var(--secondary); }

.ka-flow-title{
  font-weight: 950;
  color: var(--text-main);
  line-height: 1.35;
  font-size: 24px;
}
.ka-flow-accent{ color: var(--secondary); }

.ka-flow-desc{
  max-width: 720px;
  color: var(--text-muted);
  line-height: 1.95;
  font-size: 15px;
}

/* timeline */
.ka-flow-timeline{
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 26px;
}

/* connector line */
.ka-flow-timeline:before{
  content:"";
  position:absolute;
  left: 8%;
  right: 8%;
  top: 26px;
  height: 2px;
  background: linear-gradient(90deg,
    rgba(10,61,98,.10),
    rgba(27,120,194,.28),
    rgba(144,104,43,.28),
    rgba(10,61,98,.10)
  );
  border-radius: 999px;
}

.ka-flow-step{
  display:flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.ka-flow-bubble{
  position: relative;
  width: 58px;
  height: 58px;
  border-radius: 18px;
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(10,61,98,.16);
  box-shadow: 0 22px 52px rgba(0,0,0,.10);
  display:flex;
  align-items:center;
  justify-content:center;
}

.ka-flow-ic{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(10,61,98,.14), rgba(27,120,194,.10));
  border: 1px solid rgba(10,61,98,.14);
  display:flex;
  align-items:center;
  justify-content:center;
  color: var(--primary);
  font-size: 18px;
}

.ka-flow-no{
  position:absolute;
  top: -10px;
  right: -10px;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: var(--secondary);
  color: #fff;
  font-weight: 900;
  font-size: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow: 0 14px 30px rgba(144,104,43,.35);
}

.ka-flow-card{
  width: 100%;
  border-radius: calc(var(--radius) + 12px);
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(10,61,98,.10);
  box-shadow: 0 18px 55px rgba(0,0,0,.08);
  padding: 16px 16px;
  transition: var(--transition);
}

.ka-flow-card:hover{
  transform: translateY(-3px);
  border-color: rgba(10,61,98,.18);
  box-shadow: 0 28px 78px rgba(0,0,0,.12);
}

.ka-flow-card-title{
  font-weight: 950;
  color: var(--text-main);
  font-size: 15px;
  margin-bottom: 6px;
}

.ka-flow-card-text{
  color: var(--text-muted);
  line-height: 1.9;
  font-size: 14px;
}

/* CTA banner */
.ka-flow-cta{
  position: relative;
  z-index: 1;
  border-radius: calc(var(--radius) + 14px);
  padding: 18px 18px;
  background: linear-gradient(135deg, rgba(10,61,98,.92), rgba(27,120,194,.82));
  color:#fff;
  box-shadow: 0 34px 90px rgba(10,61,98,.22);
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 16px;
  overflow: hidden;
}

.ka-flow-cta:before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(520px 220px at 85% 25%, rgba(144,104,43,.35), transparent 60%),
    radial-gradient(520px 220px at 12% 80%, rgba(255,255,255,.12), transparent 60%);
  pointer-events:none;
  opacity: .9;
}

.ka-flow-cta-left{ position:relative; z-index:1; }
.ka-flow-cta-title{
  font-weight: 950;
  font-size: 18px;
}
.ka-flow-cta-text{
  margin-top: 6px;
  opacity: .92;
  line-height: 1.85;
  font-size: 14px;
  max-width: 560px;
}

.ka-flow-cta-actions{
  position:relative;
  z-index:1;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.ka-flow-btn{
  border-radius: calc(var(--radius) + 10px);
  padding: 10px 14px;
  font-weight: 900;
  display:inline-flex;
  align-items:center;
  gap:10px;
  transition: var(--transition);
}

.ka-flow-btn-primary{
  background: #fff;
  color: var(--primary);
  border: 0;
}
.ka-flow-btn-primary:hover{ transform: translateY(-2px); }

.ka-flow-btn-outline{
  background: rgba(255,255,255,.10);
  color:#fff;
  border: 1px solid rgba(255,255,255,.22);
}
.ka-flow-btn-outline:hover{ transform: translateY(-2px); border-color: rgba(255,255,255,.35); }

/* responsive */
@media (max-width: 991px){
  .ka-flow-timeline{
    grid-template-columns: 1fr;
  }
  .ka-flow-timeline:before{ display:none; }
  .ka-flow-cta{
    flex-direction: column;
    align-items: flex-start;
  }
  .ka-flow-cta-actions{ width:100%; justify-content:flex-start; }
}

		
		/* =========================
   Join Lawyers — Premium CTA
========================= */
.ka-join-lawyer{
  background: linear-gradient(180deg, #fff, rgba(237,237,237,.55));
  position: relative;
  overflow: hidden;
}

.ka-join-wrap{
  border-radius: calc(var(--radius) + 18px);
  border: 1px solid rgba(10,61,98,.12);
  box-shadow: 0 40px 120px rgba(0,0,0,.12);
  background:
    radial-gradient(900px 420px at 12% 10%, rgba(27,120,194,.14), transparent 62%),
    radial-gradient(900px 420px at 92% 55%, rgba(144,104,43,.12), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.88));
  padding: 22px;
  position: relative;
  overflow: hidden;
}

.ka-join-wrap:before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(560px 240px at 30% 0%, rgba(10,61,98,.10), transparent 62%),
    radial-gradient(560px 240px at 100% 30%, rgba(144,104,43,.10), transparent 60%);
  pointer-events:none;
  opacity:.9;
}

.ka-join-content{ position: relative; z-index: 1; }

.ka-join-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 900;
  font-size: 13px;
}
.ka-join-kicker i{ color: var(--secondary); }

.ka-join-title{
  font-weight: 950;
  color: var(--text-main);
  line-height: 1.35;
  font-size: clamp(18px, 2.2vw, 24px);
  margin: 0;
}
.ka-join-accent{
  color: var(--secondary);
  position: relative;
}
.ka-join-accent:after{
  content:"";
  position:absolute;
  left:0; right:0;
  bottom:-6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(144,104,43,.18);
  z-index:-1;
}

.ka-join-desc{
  color: var(--text-muted);
  line-height: 2;
  font-size: 15px;
  margin: 0;
  max-width: 650px;
}

/* benefits chips */
.ka-join-benefits{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ka-benefit{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 10px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(10,61,98,.10);
  box-shadow: 0 14px 34px rgba(0,0,0,.06);
  font-weight: 800;
  font-size: 13px;
  color: var(--text-main);
  transition: var(--transition);
}
.ka-benefit i{
  width: 26px;
  height: 26px;
  border-radius: 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(27,120,194,.12);
  border: 1px solid rgba(27,120,194,.18);
  color: var(--accent);
  font-size: 14px;
}
.ka-benefit:hover{
  transform: translateY(-2px);
  border-color: rgba(10,61,98,.18);
}

/* buttons */
.ka-join-actions{
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
}

.ka-join-btn{
  border-radius: calc(var(--radius) + 10px);
  padding: 11px 16px;
  font-weight: 950;
  display:inline-flex;
  align-items:center;
  gap:10px;
  transition: var(--transition);
}

.ka-join-btn-primary{
  color:#fff;
  border: 0;
  background: linear-gradient(135deg, var(--primary), var(--accent));
  box-shadow: 0 24px 60px rgba(10,61,98,.22);
}
.ka-join-btn-primary:hover{ transform: translateY(-2px); filter: brightness(1.03); }

.ka-join-btn-ghost{
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(10,61,98,.18);
  color: var(--primary);
}
.ka-join-btn-ghost:hover{ transform: translateY(-2px); border-color: rgba(10,61,98,.28); }

.ka-join-note{
  display:flex;
  align-items:center;
  gap: 10px;
  color: var(--text-muted);
  font-size: 13px;
}
.ka-join-note i{ color: var(--secondary); }

/* right visual */
.ka-join-visual{
  position: relative;
  min-height: 360px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.ka-join-glass{
  width: 100%;
  border-radius: calc(var(--radius) + 16px);
  background: rgba(10,18,30,.78);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 40px 120px rgba(0,0,0,.25);
  padding: 18px;
  position: relative;
  overflow: hidden;
  backdrop-filter: blur(10px);
}

.ka-join-glass:before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(520px 220px at 85% 20%, rgba(144,104,43,.40), transparent 60%),
    radial-gradient(520px 220px at 15% 80%, rgba(27,120,194,.28), transparent 62%);
  pointer-events:none;
  opacity:.95;
}

.ka-join-glass-top{
  display:flex;
  gap: 12px;
  align-items:center;
  position: relative;
  z-index: 1;
}

.ka-join-logo{
  width: 52px;
  height: 52px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.14);
  color:#fff;
  font-size: 22px;
}

.ka-join-glass-hd{
  color:#fff;
  font-weight: 950;
  font-size: 16px;
}
.ka-join-glass-sub{
  color: rgba(255,255,255,.82);
  font-size: 13px;
  margin-top: 2px;
}

/* stats */
.ka-join-stats{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
  position: relative;
  z-index: 1;
}
.ka-stat{
  border-radius: calc(var(--radius) + 12px);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  padding: 12px 12px;
}
.ka-stat-n{
  color:#fff;
  font-weight: 950;
  font-size: 14px;
}
.ka-stat-t{
  color: rgba(255,255,255,.78);
  font-size: 12px;
  margin-top: 3px;
  line-height: 1.6;
}

.ka-join-tag{
  position: relative;
  z-index: 1;
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 12px 12px;
  border-radius: calc(var(--radius) + 12px);
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.92);
  font-weight: 800;
  font-size: 13px;
}

/* orbs */
.ka-j-orb{
  position:absolute;
  width: 230px; height: 230px;
  border-radius: 50%;
  pointer-events:none;
  opacity: .85;
}
.ka-j-orb1{
  left:-80px; top:-70px;
  background: radial-gradient(circle at 30% 30%, rgba(27,120,194,.35), transparent 60%);
}
.ka-j-orb2{
  right:-90px; bottom:-90px;
  background: radial-gradient(circle at 30% 30%, rgba(144,104,43,.38), transparent 60%);
}

@media (max-width: 991px){
  .ka-join-visual{ min-height: auto; }
  .ka-join-stats{ grid-template-columns: 1fr; }
}


/* =========================
   Contact Info — Kian Edalat
========================= */

.ka-contact-info{
  background:
    radial-gradient(900px 380px at 12% 18%, rgba(27,120,194,.12), transparent 60%),
    radial-gradient(900px 380px at 90% 55%, rgba(144,104,43,.10), transparent 56%),
    linear-gradient(180deg, #fff, rgba(237,237,237,.30));
}

.ka-ci-head{
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(10,61,98,.10);
  border-radius: calc(var(--radius) + 14px);
  box-shadow: 0 18px 55px rgba(0,0,0,.06);
  padding: 16px 18px;
}

.ka-ci-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 950;
  font-size: 13px;
}
.ka-ci-kicker i{ color: var(--secondary); }

.ka-ci-title{
  font-weight: 950;
  color: var(--text-main);
  font-size: clamp(18px, 2.1vw, 24px);
  line-height: 1.35;
}

.ka-ci-desc{
  color: var(--text-muted);
  line-height: 1.9;
  font-size: 14px;
  max-width: 780px;
}

/* Cards */
.ka-ci-card{
  position: relative;
  display:flex;
  align-items: stretch;
  gap: 12px;
  padding: 14px 14px;
  border-radius: calc(var(--radius) + 14px);
  border: 1px solid rgba(10,61,98,.10);
  background: rgba(255,255,255,.86);
  box-shadow: 0 18px 55px rgba(0,0,0,.08);
  overflow: hidden;
  transition: var(--transition);
  text-decoration: none;
  color: inherit;
  min-height: 118px;
}

.ka-ci-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 28px 85px rgba(0,0,0,.12);
  border-color: rgba(10,61,98,.18);
}

/* Accent stripe */
.ka-ci-card:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width: 6px;
  border-radius: 14px 0 0 14px;
  background: rgba(10,61,98,.35);
}

.ka-ci-card--instagram:before{ background: rgba(144,104,43,.55); }
.ka-ci-card--email:before{ background: rgba(27,120,194,.55); }
.ka-ci-card--address:before{ background: rgba(10,61,98,.45); }

/* icon */
.ka-ci-ic{
  width: 50px;
  height: 50px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: linear-gradient(135deg, rgba(10,61,98,.12), rgba(27,120,194,.10));
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  flex: 0 0 auto;
  margin-top: 2px;
  box-shadow: 0 14px 34px rgba(0,0,0,.06);
}
.ka-ci-card--instagram .ka-ci-ic{
  background: linear-gradient(135deg, rgba(144,104,43,.16), rgba(10,61,98,.10));
  color: var(--secondary);
}
.ka-ci-card--email .ka-ci-ic{
  background: linear-gradient(135deg, rgba(27,120,194,.16), rgba(10,61,98,.10));
  color: var(--accent);
}

/* body */
.ka-ci-body{ flex: 1 1 auto; }

.ka-ci-label{
  font-weight: 950;
  font-size: 13px;
  color: var(--text-main);
  letter-spacing: -.2px;
}

.ka-ci-value{
  margin-top: 6px;
  font-weight: 950;
  font-size: 16px;
  color: var(--primary);
  line-height: 1.4;
}

.ka-ci-value--small{
  font-size: 14px;
  font-weight: 850;
  color: #2f2f2f;
}

.ka-ci-hint{
  margin-top: 6px;
  color: var(--text-muted);
  font-size: 12.5px;
  line-height: 1.7;
}

/* arrow */
.ka-ci-arrow{
  align-self: center;
  width: 36px;
  height: 36px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.06);
  border: 1px solid rgba(10,61,98,.12);
  color: var(--primary);
  flex: 0 0 auto;
  transition: var(--transition);
}
.ka-ci-card:hover .ka-ci-arrow{
  background: rgba(10,61,98,.10);
  transform: translateX(-2px);
}

/* Address mini button */
.ka-ci-mini-btn{
  align-self: center;
  border-radius: 999px;
  padding: 8px 12px;
  font-weight: 950;
  font-size: 13px;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.16);
  color: var(--primary);
  display:inline-flex;
  align-items:center;
  gap: 10px;
  transition: var(--transition);
}
.ka-ci-mini-btn:hover{
  background: rgba(10,61,98,.12);
  transform: translateY(-1px);
}

	/* =========================
   Contact Address - Solid (No Gradient)
========================= */

.ka-ci-address{
  position: relative;
  display:flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: calc(var(--radius) + 16px);

  background: var(--primary);
  color: #fff;

  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 26px 80px rgba(0,0,0,.14);
  transition: var(--transition);
  overflow: hidden;
}

/* subtle pattern (no gradient) */
.ka-ci-address:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(420px 220px at 15% 25%, rgba(255,255,255,.08), transparent 62%),
    radial-gradient(520px 240px at 85% 70%, rgba(255,255,255,.06), transparent 62%);
  pointer-events:none;
  opacity: .9;
}

.ka-ci-address:hover{
  background: var(--secondary);
  border-color: rgba(255,255,255,.22);
}

/* icon */
.ka-ci-address-ic{
  width: 54px;
  height: 54px;
  border-radius: 18px;

  display:flex;
  align-items:center;
  justify-content:center;

  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.22);
  color: #fff;

  flex: 0 0 auto;
  position: relative;
  z-index: 1;

  box-shadow: 0 14px 34px rgba(0,0,0,.10);
  transition: var(--transition);
}

.ka-ci-address:hover .ka-ci-address-ic{
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.28);
}

/* texts */
.ka-ci-address-body{
  flex: 1 1 auto;
  position: relative;
  z-index: 1;
}

.ka-ci-address-title{
  font-weight: 950;
  font-size: 14px;
  margin-bottom: 6px;
  color:#fff;
}

.ka-ci-address-text{
  font-weight: 800;
  line-height: 1.95;
  font-size: 14px;
  color: rgba(255,255,255,.95);
}

.ka-ci-address-hint{
  margin-top: 6px;
  font-size: 12.5px;
  color: rgba(255,255,255,.78);
}

/* button: white, no gradient */
.ka-ci-address-btn{
  position: relative;
  z-index: 1;

  display:inline-flex;
  align-items:center;
  gap: 10px;

  padding: 10px 14px;
  border-radius: 999px;

  background: #fff;
  color: var(--primary);
  text-decoration: none;

  font-weight: 950;
  border: 1px solid rgba(255,255,255,.55);

  box-shadow: 0 18px 48px rgba(0,0,0,.12);
  transition: var(--transition);
  flex: 0 0 auto;
  white-space: nowrap;
}

.ka-ci-address-btn:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.95);
  color: var(--secondary);
  border-color: rgba(255,255,255,.75);
}

/* "reverse border" behavior for the whole box when hovered */
.ka-ci-address:hover .ka-ci-address-btn{
  color: var(--secondary);
}

/* Mobile */
@media (max-width: 767px){
  .ka-ci-address{
    flex-direction: column;
    align-items: flex-start;
  }
  .ka-ci-address-btn{
    width: 100%;
    justify-content: center;
  }
}

		
		/* =========================
   Contact Form Section
========================= */

.ka-contact-form{
  background: linear-gradient(180deg, rgba(237,237,237,.35), #fff);
}

.ka-cf-card{
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(10,61,98,.12);
  border-radius: calc(var(--radius) + 16px);
  box-shadow: 0 30px 90px rgba(0,0,0,.10);
  padding: 18px;
  overflow: hidden;
}

.ka-cf-head{
  padding: 14px 14px;
  border-radius: calc(var(--radius) + 14px);
  background: rgba(10,61,98,.04);
  border: 1px solid rgba(10,61,98,.10);
}

.ka-cf-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 950;
  font-size: 13px;
}
.ka-cf-kicker i{ color: var(--secondary); }

.ka-cf-title{
  font-weight: 950;
  color: var(--text-main);
  font-size: clamp(18px, 1.9vw, 24px);
  line-height: 1.35;
}
.ka-cf-desc{
  color: var(--text-muted);
  line-height: 1.9;
  font-size: 14px;
}

.ka-cf-alert{
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: calc(var(--radius) + 12px);
  font-weight: 850;
  line-height: 1.8;
  font-size: 13.5px;
}
.ka-cf-alert--error{
  background: rgba(220,53,69,.10);
  border: 1px solid rgba(220,53,69,.22);
  color: #b02a37;
}
.ka-cf-alert--ok{
  background: rgba(25,135,84,.10);
  border: 1px solid rgba(25,135,84,.22);
  color: #0f5132;
}

.ka-cf-form{ padding: 6px 6px; }

.ka-cf-row{
  display:flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 14px;
}

.ka-cf-label{
  font-weight: 950;
  color: var(--text-main);
  font-size: 13px;
}

.ka-cf-input,
.ka-cf-textarea{
  width: 100%;
  border-radius: calc(var(--radius) + 10px);
  border: 1px solid rgba(10,61,98,.16);
  background: #fff;
  padding: 12px 12px;
  outline: none;
  transition: var(--transition);
  font-weight: 700;
  color: var(--text-main);
}

.ka-cf-input::placeholder,
.ka-cf-textarea::placeholder{
  color: rgba(108,117,125,.85);
  font-weight: 700;
}

.ka-cf-input:focus,
.ka-cf-textarea:focus{
  border-color: rgba(27,120,194,.55);
  box-shadow: 0 0 0 .2rem rgba(27,120,194,.12);
}

.ka-cf-hint{
  font-size: 12.5px;
  color: var(--text-muted);
  line-height: 1.6;
  margin-top: -2px;
}

.ka-cf-input.is-invalid,
.ka-cf-textarea.is-invalid{
  border-color: rgba(220,53,69,.55) !important;
  box-shadow: 0 0 0 .2rem rgba(220,53,69,.10);
}

.ka-cf-actions{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 18px;
  padding-top: 12px;
  border-top: 1px dashed rgba(10,61,98,.18);
}

.ka-cf-btn{
  border: 0;
  border-radius: calc(var(--radius) + 12px);
  padding: 12px 16px;
  font-weight: 950;
  display:inline-flex;
  align-items:center;
  gap: 10px;
  background: var(--primary);
  color:#fff;
  box-shadow: 0 22px 55px rgba(10,61,98,.22);
  transition: var(--transition);
  min-width: 170px;
  justify-content: center;
}

.ka-cf-btn:hover{ background: var(--secondary); transform: translateY(-2px); }
.ka-cf-btn:disabled{ opacity: .75; transform:none; cursor: not-allowed; }

.ka-cf-btn-ic{
  width: 34px; height: 34px;
  border-radius: 12px;
  display:flex; align-items:center; justify-content:center;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.16);
}

.ka-cf-btn-spin{
  margin-right: 2px;
}

.ka-cf-note{
  display:flex;
  align-items:center;
  gap: 10px;
  color: var(--text-muted);
  font-size: 13px;
  font-weight: 800;
}
.ka-cf-note i{ color: var(--secondary); }

/* Banner */
.ka-cf-banner{
  border-radius: calc(var(--radius) + 16px);
  background: var(--primary);
  color: #fff;
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 30px 90px rgba(0,0,0,.14);
  overflow: hidden;
  height: 100%;
}

.ka-cf-banner-inner{
  padding: 18px;
  position: relative;
}

.ka-cf-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
  font-weight: 950;
  font-size: 13px;
}

.ka-cf-banner-title{
  font-weight: 950;
  font-size: 20px;
  line-height: 1.4;
}

.ka-cf-banner-text{
  color: rgba(255,255,255,.88);
  line-height: 1.9;
  font-size: 14px;
}

.ka-cf-banner-points{
  display:flex;
  flex-direction: column;
  gap: 10px;
}

.ka-cf-point{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 850;
  font-size: 13px;
  color: rgba(255,255,255,.92);
}
.ka-cf-point i{
  width: 26px; height: 26px;
  border-radius: 10px;
  display:flex; align-items:center; justify-content:center;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.18);
}

.ka-cf-banner-line{
  height: 1px;
  background: rgba(255,255,255,.18);
}

.ka-cf-banner-mini{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 900;
  color: rgba(255,255,255,.92);
  font-size: 13px;
}

		/* =========================
   Full Width Google Map
========================= */


.ka-mapx{
  width: 100%;
  background: #fff;
  position: relative;
  overflow: hidden;
  padding: 34px 0 0;
}

/* Subtle decorative dots */
.ka-mapx:before{
  content:"";
  position:absolute;
  inset: 0;
  background:
    radial-gradient(2px 2px at 12% 18%, rgba(10,61,98,.18), transparent 55%),
    radial-gradient(2px 2px at 18% 28%, rgba(10,61,98,.12), transparent 55%),
    radial-gradient(2px 2px at 82% 22%, rgba(144,104,43,.16), transparent 55%),
    radial-gradient(2px 2px at 90% 32%, rgba(144,104,43,.10), transparent 55%);
  pointer-events:none;
  opacity: .85;
}

/* Header container */
.ka-mapx-head{
  position: relative;
  z-index: 1;
}

.ka-mapx-head-inner{
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 12px 18px;
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

/* Left title */
.ka-mapx-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 950;
  font-size: 13px;
}
.ka-mapx-kicker i{ color: var(--secondary); }

.ka-mapx-title{
  margin: 18px 0 0;
  font-weight: 950;
  color: var(--text-main);
  font-size: clamp(18px, 2.2vw, 24px);
  line-height: 1.35;
  position: relative;
  display: inline-block;
}

.ka-mapx-accent{
  color: var(--secondary);
}

.ka-mapx-title:after{
  content:"";
  position:absolute;
  right: 0;
  bottom: -10px;
  width: 66px;
  height: 4px;
  border-radius: 99px;
  background: var(--secondary);
  opacity: .9;
}

.ka-mapx-desc{
  margin: 18px 0 0;
  max-width: 720px;
  color: var(--text-muted);
  font-size: 14px;
  line-height: 1.95;
}

/* Info mini card */
.ka-mapx-info{
  min-width: 280px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(10,61,98,.12);
  border-radius: calc(var(--radius) + 16px);
  box-shadow: 0 22px 70px rgba(0,0,0,.08);
  padding: 12px 12px;
  backdrop-filter: blur(10px);
}

.ka-mapx-info-row{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 10px 10px;
  border-radius: calc(var(--radius) + 12px);
  transition: var(--transition);
}
.ka-mapx-info-row + .ka-mapx-info-row{
  margin-top: 6px;
  border-top: 1px dashed rgba(10,61,98,.14);
  padding-top: 14px;
}

.ka-mapx-ic{
  width: 42px;
  height: 42px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  flex: 0 0 auto;
}
.ka-mapx-info-row:hover .ka-mapx-ic{
  background: rgba(144,104,43,.10);
  border-color: rgba(144,104,43,.18);
  color: var(--secondary);
}

.ka-mapx-info-hd{
  font-weight: 950;
  color: var(--text-main);
  font-size: 13px;
}
.ka-mapx-info-sub{
  margin-top: 2px;
  color: var(--text-muted);
  font-size: 13px;
}

/* Map frame */
.ka-mapx-frame{
  position: relative;
  z-index: 1;
  margin-top: 8px;
  padding: 0;
}

/* Double border frame */
.ka-mapx-border{
  width: 100%;
  height: 460px;
  border-top: 1px solid rgba(10,61,98,.18);
  border-bottom: 1px solid rgba(10,61,98,.18);
  position: relative;
  overflow: hidden;
}

.ka-mapx-border:before{
  content:"";
  position:absolute;
  inset: 10px 0 10px 0;
  border-top: 1px solid rgba(144,104,43,.22);
  border-bottom: 1px solid rgba(144,104,43,.22);
  pointer-events:none;
  opacity: .75;
}

.ka-mapx-border iframe{
  width: 100%;
  height: 100%;
  border: 0;
}

/* Responsive */
@media (max-width: 768px){
  .ka-mapx-head-inner{
    align-items: flex-start;
  }
  .ka-mapx-border{
    height: 340px;
  }
}


		/* =========================
   Complaint Page (ka-cmp)
========================= */

.ka-cmp{
  padding: 28px 0 46px;
  background:
    radial-gradient(900px 380px at 12% 18%, rgba(27,120,194,.10), transparent 60%),
    radial-gradient(900px 380px at 90% 55%, rgba(144,104,43,.10), transparent 56%),
    linear-gradient(180deg, rgba(237,237,237,.35), #fff);
}

/* Hero */
.ka-cmp-hero{
  border-radius: calc(var(--radius) + 18px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.88);
  box-shadow: 0 30px 90px rgba(0,0,0,.10);
  padding: 18px;
  overflow: hidden;
}

.ka-cmp-hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 950;
  font-size: 13px;
}
.ka-cmp-hero-kicker i{ color: var(--secondary); }

.ka-cmp-hero-title{
  margin: 12px 0 0;
  font-weight: bold;
  color: var(--primary);
  font-size: clamp(18px, 2.2vw, 22px);
  line-height: 2;
}

.ka-cmp-hero-desc{
  margin: 12px 0 0;
  
  color: #161616;
  font-size: 14px;
  line-height: 2.05;
}

/* Hero features */
.ka-cmp-hero-features{
  margin-top: 14px;
  display:grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
@media (min-width: 992px){
  .ka-cmp-hero-features{ grid-template-columns: 1fr 1fr; }
}

.ka-cmp-feat{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 10px 10px;
  border-radius: calc(var(--radius) + 14px);
  border: 1px solid rgba(10,61,98,.10);
  background: rgba(255,255,255,.75);
  transition: var(--transition);
}
.ka-cmp-feat:hover{
  transform: translateY(-2px);
  border-color: rgba(27,120,194,.22);
  box-shadow: 0 16px 44px rgba(0,0,0,.08);
}

.ka-cmp-feat-ic{
  width: 42px;
  height: 42px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  flex: 0 0 auto;
}
.ka-cmp-feat-hd{
  font-weight: 950;
  font-size: 13px;
  color: var(--text-main);
}
.ka-cmp-feat-sub{
  font-weight: 800;
  font-size: 12.5px;color: #161616;
  margin-top: 2px;
}

/* Hero actions */
.ka-cmp-hero-actions{
  margin-top: 14px;
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ka-cmp-btn{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 11px 14px;
  border-radius: calc(var(--radius) + 14px);
  font-weight: 950;
  text-decoration: none;
  transition: var(--transition);
  border: 1px solid transparent;
  line-height: 1.2;
  white-space: nowrap;
}

.ka-cmp-btn--primary{
  background: var(--primary);
  color:#fff;
  box-shadow: 0 22px 55px rgba(10,61,98,.20);
}
.ka-cmp-btn--primary:hover{
  background: var(--secondary);
  color:#fff;
  transform: translateY(-2px);
}

.ka-cmp-btn--ghost{
  background: rgba(255,255,255,.85);
  color: var(--primary);
  border-color: rgba(10,61,98,.16);
}
.ka-cmp-btn--ghost:hover{
  border-color: rgba(144,104,43,.26);
  color: var(--secondary);
  transform: translateY(-2px);
}

/* Hero media */
.ka-cmp-hero-media{
  position: relative;
  border-radius: calc(var(--radius) + 18px);
  overflow: hidden;
  border: 1px solid rgba(10,61,98,.12);
  background: #fff;
  box-shadow: 0 24px 70px rgba(0,0,0,.10);
  min-height: 240px;
}
.ka-cmp-hero-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display:block;
}

.ka-cmp-hero-badge{
  position:absolute;
  left: 12px;
  bottom: 12px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(10,61,98,.88);
  color:#fff;
  border: 1px solid rgba(255,255,255,.18);
  font-weight: 950;
  font-size: 13px;
  backdrop-filter: blur(6px);
}

/* Content card */
.ka-cmp-card{
  margin-top: 16px;
  border-radius: calc(var(--radius) + 18px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.92);
  box-shadow: 0 30px 90px rgba(0,0,0,.10);
  padding: 18px;
}

.ka-cmp-sec{ padding: 6px 6px; }

.ka-cmp-divider{
  height: 1px;
  background: rgba(10,61,98,.12);
  margin: 18px 0;
}

/* Typography */
.ka-cmp-h2,
.ka-cmp-h3,
.ka-cmp-h4{
  color: var(--text-main);
  font-weight: 950;
  line-height: 1.7;
  margin: 0;
}

.ka-cmp-h2{ font-size: 18px; margin: 0 0 10px; }

.ka-cmp-h3{
  font-size: 16px;
  margin: 0 0 10px;
  display:flex;
  align-items:center;
  gap:10px;
}
.ka-cmp-h3 i{ color: var(--secondary); }

.ka-cmp-h4{ font-size: 14px; margin: 16px 0 8px; }

.ka-cmp-p{
  color: #2f2f2f;
  line-height: 2.05;
  font-size: 14px;
  margin: 10px 0 0;
}
.ka-cmp-p strong{
  color: var(--primary);
  font-weight: 950;
}

/* List */
.ka-cmp-list{
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
  display:grid;
  gap: 10px;
}
.ka-cmp-list li{
  display:flex;
  align-items:flex-start;
  gap: 10px;
  padding: 10px 10px;
  border-radius: calc(var(--radius) + 14px);
  border: 1px solid rgba(10,61,98,.10);
  background: rgba(10,61,98,.03);
}

.ka-cmp-li-ic{
  width: 26px;
  height: 26px;
  border-radius: 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.14);
  border: 1px solid rgba(144,104,43,.22);
  color: var(--secondary);
  flex: 0 0 auto;
  margin-top: 2px;
}

/* Sample blocks */
.ka-cmp-sample{
  border-radius: calc(var(--radius) + 16px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.92);
  overflow: hidden;
  margin-top: 12px;
}

.ka-cmp-sample-hd{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  background: rgba(10,61,98,.06);
  border-bottom: 1px solid rgba(10,61,98,.10);
  font-weight: 950;
  color: var(--primary);
}
.ka-cmp-sample-hd i{ color: var(--secondary); }

.ka-cmp-sample-bd{
  padding: 12px 12px;
  color: #2f2f2f;
  line-height: 2.05;
  font-size: 14px;
}
.ka-cmp-sample-bd p{ margin: 0 0 6px; }
.ka-cmp-sample-bd p:last-child{ margin-bottom: 0; }

.ka-cmp-sample--big .ka-cmp-sample-bd{ padding: 14px 14px; }

/* Note */
.ka-cmp-note{
  margin-top: 12px;
  border-radius: calc(var(--radius) + 16px);
  border: 1px solid rgba(144,104,43,.22);
  background: rgba(144,104,43,.08);
  display:flex;
  gap: 12px;
  padding: 12px 12px;
}

.ka-cmp-note-ic{
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.16);
  border: 1px solid rgba(144,104,43,.22);
  color: var(--secondary);
  flex: 0 0 auto;
}
.ka-cmp-note-hd{
  font-weight: 950;
  color: #3b2f15;
  font-size: 13px;
}
.ka-cmp-note-bd{
  font-weight: 850;
  color: #3b2f15;
  font-size: 13px;
  line-height: 1.95;
  margin-top: 2px;
}


/* Grid */
.ka-cmp-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
@media (min-width: 992px){
  .ka-cmp-grid{ grid-template-columns: 1fr 1fr; }
}

.ka-cmp-box{
  border-radius: calc(var(--radius) + 16px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.92);
  padding: 12px 12px;
  transition: var(--transition);
}
.ka-cmp-box:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 60px rgba(0,0,0,.08);
  border-color: rgba(27,120,194,.22);
}

.ka-cmp-box-hd{
  font-weight: 950;
  color: var(--text-main);
  font-size: 14px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dashed rgba(10,61,98,.14);
}

.ka-cmp-mini{
  list-style: none;
  padding: 0;
  margin: 0;
  display:grid;
  gap: 8px;
}
.ka-cmp-mini li{
  display:flex;
  align-items:flex-start;
  gap: 10px;
  color: #2f2f2f;
  line-height: 1.95;
  font-weight: 850;
  font-size: 13.5px;
}
.ka-cmp-mini i{
  color: var(--secondary);
  margin-top: 5px;
}

.ka-cmp-mini--wide{
  margin-top: 10px;
  padding: 10px 10px;
  border-radius: calc(var(--radius) + 16px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.03);
}

/* Summary */
.ka-cmp-summary{
  border-radius: calc(var(--radius) + 18px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.04);
  display:flex;
  gap: 12px;
  padding: 14px 14px;
}
.ka-cmp-summary-ic{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.10);
  border: 1px solid rgba(10,61,98,.16);
  color: var(--primary);
  flex: 0 0 auto;
}

/* Accordion (Bootstrap cards skin) */
.ka-cmp-accordion .card{
  border-radius: calc(var(--radius) + 14px);
  border: 1px solid rgba(10,61,98,.12);
  overflow: hidden;
  margin-bottom: 10px;
}
.ka-cmp-accordion .card-header{
  background: rgba(10,61,98,.05);
  border-bottom: 1px solid rgba(10,61,98,.10);
  padding: 10px 12px;
}
.ka-cmp-accordion .card-link{
  color: var(--primary);
  text-decoration: none;
  display:block;
  font-weight: 950;
  line-height: 1.9;
}
.ka-cmp-accordion .card-body{
  background: rgba(255,255,255,.95);
  color: #2f2f2f;
  line-height: 2.0;
  font-weight: 850;
  font-size: 13.5px;
}

/* Tags */
.ka-cmp-tags{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
}
.ka-cmp-tag{
  display:inline-flex;
  align-items:center;
  padding: 4px 16px;
  border-radius: 10px;
  
  background: var(--primary);
  border: 1px solid rgba(10,61,98,.12);
  color: #FFFFFF;
  font-weight: bold;
  text-decoration: none;
  transition: var(--transition);
	font-size: 12px;
}
.ka-cmp-tag:hover{
	background: var(--secondary);
  border-color: rgba(144,104,43,.22);
  color: #FFFFFF;
  transform: translateY(-1px);
}

/* Comments wrap */
.ka-cmp-comments-wrap{
  border-radius: calc(var(--radius) + 18px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.92);
  box-shadow: 0 30px 90px rgba(0,0,0,.10);
  overflow: hidden;
}

.ka-cmp-comments-head{
  padding: 12px 14px;
  background: rgba(10,61,98,.05);
  border-bottom: 1px solid rgba(10,61,98,.10);
}
.ka-cmp-comments-body{ padding: 14px; }

.ka-cmp-comment{
  display:flex;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px dashed rgba(10,61,98,.14);
}
.ka-cmp-comment:last-child{ border-bottom: 0; }

.ka-cmp-comment-av img{
  width: 46px;
  height: 46px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  object-fit: cover;
}

.ka-cmp-comment-top{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.ka-cmp-comment-name{
  font-weight: 950;
  color: var(--text-main);
  font-size: 14px;
}

.ka-cmp-comment-date{color: #161616;
  font-size: 12.5px;
  font-weight: 800;
}

.ka-cmp-comment-text{
  margin-top: 8px;
  color: #2f2f2f;
  line-height: 2.05;
  font-size: 13.5px;
  font-weight: 850;
}

/* Answer */
.ka-cmp-answer{
  margin-top: 12px;
  border-radius: calc(var(--radius) + 16px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.03);
  padding: 10px;
  display:flex;
  gap: 12px;
}

.ka-cmp-answer-av img{
  width: 42px;
  height: 42px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  object-fit: cover;
}

.ka-cmp-answer-name{
  font-weight: 950;
  color: var(--primary);
  display:flex;
  align-items:center;
  gap: 10px;
}
.ka-cmp-answer-name i{ color: var(--secondary); }



/* Small screens */
@media (max-width: 575.98px){
  .ka-cmp-card{ padding: 14px; }
  .ka-cmp-hero{ padding: 14px; }
  .ka-cmp-cta-media{ flex: 1 1 100%; border-left: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .ka-cmp-btn{ width: 100%; justify-content: center; }
}

		
		
		
		/* FAQ Accordion (Bootstrap 5) */
.ka-cmp-accordion .accordion-item{
  border-radius: calc(var(--radius) + 14px);
  border: 1px solid rgba(10,61,98,.12);
  overflow: hidden;
  margin-bottom: 10px;
  background: rgba(255,255,255,.95);
}

.ka-cmp-accordion .accordion-header{
  margin: 0;
}

.ka-cmp-accordion .accordion-button.ka-cmp-acc-btn{
  background: rgba(10,61,98,.05);
  color: var(--primary);
  font-weight: 950;
  line-height: 1.9;
  padding: 12px 54px 12px 14px;
  box-shadow: none;
}

.ka-cmp-accordion .accordion-button.ka-cmp-acc-btn:focus{
  box-shadow: 0 0 0 .2rem rgba(27,120,194,.10);
  border-color: rgba(27,120,194,.35);
}

/* Remove Bootstrap default caret color quirks */
.ka-cmp-accordion .accordion-button::after{
  width: 30px;
  height: 30px;
  border-radius: 12px;
  background-size: 12px;
  background-position: center;
  background-repeat: no-repeat;
  margin-left: 0;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.16);

  /* custom SVG icon (down chevron) */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%230A3D62' d='M1.6 5.3a1 1 0 0 1 1.4 0L8 10.3l5-5a1 1 0 1 1 1.4 1.4l-5.7 5.7a1 1 0 0 1-1.4 0L1.6 6.7a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E");
}

.ka-cmp-accordion .accordion-button:not(.collapsed)::after{
  background-color: rgba(144,104,43,.14);
  border-color: rgba(144,104,43,.26);

  /* up chevron */
  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%2390682b' d='M1.6 10.7a1 1 0 0 0 1.4 0L8 5.7l5 5a1 1 0 1 0 1.4-1.4L8.7 3.6a1 1 0 0 0-1.4 0L1.6 9.3a1 1 0 0 0 0 1.4z'/%3E%3C/svg%3E\");
}

.ka-cmp-accordion .accordion-body{
  background: rgba(255,255,255,.98);
  color: #2f2f2f;
  line-height: 2.0;
  font-weight: 850;
  font-size: 13.5px;
  padding: 12px 14px;
}

/* =========================
   CTA v2 – Primary Background
========================= */

.ka-cmp-cta2{
  display:flex;
  align-items:center;
  gap: 18px;
  padding: 22px 22px;
  border-radius: calc(var(--radius) + 20px);

  background: var(--primary);
  color: #fff;

  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 30px 90px rgba(10,61,98,.35);

  position: relative;
  overflow: hidden;
}

/* subtle accent border */
.ka-cmp-cta2::before{
  content:"";
  position:absolute;
  inset: 0;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: inherit;
  pointer-events: none;
}

/* Icon */
.ka-cmp-cta2-ic{
  width: 72px;
  height: 72px;
  border-radius: 24px;

  display:flex;
  align-items:center;
  justify-content:center;

  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.28);

  color: #fff;
  font-size: 30px;
  flex: 0 0 auto;
}

/* Body */
.ka-cmp-cta2-body{
  flex: 1 1 auto;
}

.ka-cmp-cta2-hd{
  font-weight: 950;
  font-size: 17px;
  color: #fff;
}

.ka-cmp-cta2-txt{
  margin-top: 6px;
  font-weight: 850;
  font-size: 14px;
  line-height: 2.0;
  color: rgba(255,255,255,.88);
}

/* Action */
.ka-cmp-cta2-act{
  flex: 0 0 auto;
}

.ka-cmp-cta2 .ka-cmp-btn--primary{
  background: #fff;
  color: var(--primary);
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 18px 50px rgba(0,0,0,.25);
}

.ka-cmp-cta2 .ka-cmp-btn--primary:hover{
  color: var(--secondary);
  transform: translateY(-2px);
}

/* Hover */
.ka-cmp-cta2:hover{
  box-shadow: 0 35px 110px rgba(10,61,98,.45);
}

.ka-cmp-cta2:hover .ka-cmp-cta2-ic{
  background: rgba(255,255,255,.18);
  border-color: rgba(255,255,255,.45);
}

/* Mobile */
@media (max-width: 768px){
  .ka-cmp-cta2{
    flex-direction: column;
    align-items: flex-start;
  }

  .ka-cmp-cta2-act{
    width: 100%;
  }

  .ka-cmp-cta2 .ka-cmp-btn{
    width: 100%;
    justify-content: center;
  }
}


		/* =========================
   Support CTA – Human Touch
========================= */


.ka-cmp-hotline{
  border-radius: calc(var(--radius) + 22px);
  background: var(--primary);
  box-shadow: 0 34px 110px rgba(10,61,98,.45);
  overflow: hidden;
  position: relative;
}

.ka-cmp-hotline::before{
  content:"";
  position:absolute;
  inset: 0;
  background:
    radial-gradient(900px 260px at 12% 0%, rgba(255,255,255,.12), transparent 55%),
    radial-gradient(700px 220px at 95% 90%, rgba(255,255,255,.10), transparent 60%);
  pointer-events:none;
}

.ka-cmp-hotline-inner{
  position: relative;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 18px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: inherit;
}

.ka-cmp-hotline-left{
  display:flex;
  align-items:center;
  gap: 14px;
  min-width: 0;
}

/* Big ring badge */
.ka-cmp-hotline-badge{
  width: 68px;
  height: 68px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  color: #fff;
  font-size: 26px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.26);
  box-shadow:
    inset 0 0 0 6px rgba(255,255,255,.06),
    0 18px 50px rgba(0,0,0,.22);
  flex: 0 0 auto;
}

.ka-cmp-hotline-text{
  min-width: 0;
}

.ka-cmp-hotline-hd{
  color:#fff;
  font-weight: 950;
  font-size: 16px;
  line-height: 1.7;
}

.ka-cmp-hotline-sub{
  margin-top: 4px;
  color: rgba(255,255,255,.86);
  font-weight: 850;
  font-size: 13.5px;
  line-height: 1.95;
}

/* Right side */
.ka-cmp-hotline-right{
  display:flex;
  align-items:center;
  gap: 10px;
  flex: 0 0 auto;
}

/* Phone chip */
.ka-cmp-hotline-chip{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.22);
  color:#fff;
  font-weight: 950;
  white-space: nowrap;
}

.ka-cmp-hotline-chip i{
  width: 28px;
  height: 28px;
  border-radius: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.20);
  font-size: 13px;
}

.ka-cmp-hotline-num{
  letter-spacing: .5px;
}

/* Button */
.ka-cmp-hotline-btn{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 11px 16px;
  border-radius: 999px;
  background: #fff;
  color: var(--primary);
  font-weight: 950;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 18px 55px rgba(0,0,0,.25);
  transition: var(--transition);
  white-space: nowrap;
}

.ka-cmp-hotline-btn i{
  opacity: .9;
}

.ka-cmp-hotline-btn:hover{
  color: var(--secondary);
  transform: translateY(-2px);
}

/* Hover polish */
.ka-cmp-hotline:hover .ka-cmp-hotline-badge{
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.34);
}
.ka-cmp-hotline:hover .ka-cmp-hotline-chip{
  border-color: rgba(255,255,255,.34);
}

/* Responsive */
@media (max-width: 992px){
  .ka-cmp-hotline-right{
    flex-wrap: wrap;
    justify-content: flex-end;
  }
}

@media (max-width: 768px){
  .ka-cmp-hotline-inner{
    flex-direction: column;
    align-items: stretch;
  }

  .ka-cmp-hotline-right{
    width: 100%;
    justify-content: space-between;
  }

  .ka-cmp-hotline-btn{
    flex: 1 1 auto;
    justify-content:center;
  }

  .ka-cmp-hotline-chip{
    flex: 0 0 auto;
  }
}

@media (max-width: 480px){
  .ka-cmp-hotline-right{
    flex-direction: column;
    align-items: stretch;
  }
  .ka-cmp-hotline-chip{
    justify-content:center;
  }
}
		
		/* Comments */
.ka-cmt{
  border-radius: calc(var(--radius) + 18px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.92);
  box-shadow: 0 26px 80px rgba(0,0,0,.08);
  overflow: hidden;
}

.ka-cmt-head{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  background: rgba(10,61,98,.04);
  border-bottom: 1px solid rgba(10,61,98,.10);
}

.ka-cmt-title{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 950;
  color: var(--text-main);
  font-size: 15px;
}

.ka-cmt-title i{
  width: 34px;
  height: 34px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
}

.ka-cmt-count{
  padding: 8px 10px;
  border-radius: 999px;
  font-weight: 950;
  font-size: 12.5px;
  color: var(--primary);
  background: rgba(27,120,194,.08);
  border: 1px solid rgba(27,120,194,.14);
}

.ka-cmt-body{
  padding: 14px 14px;
}

.ka-cmt-item{
  padding: 14px 12px;
  border-radius: calc(var(--radius) + 14px);
  border: 1px solid rgba(10,61,98,.10);
  background: #fff;
  box-shadow: 0 14px 40px rgba(0,0,0,.05);
  margin-bottom: 12px;
}

.ka-cmt-row{
  display:flex;
  gap: 12px;
  align-items:flex-start;
}

.ka-cmt-av{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;

  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-weight: 950;
}

.ka-cmt-main{
  flex: 1 1 auto;
  min-width: 0;
}

.ka-cmt-meta{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 6px;
}

.ka-cmt-name{
  font-weight: 950;
  color: var(--text-main);
  font-size: 14px;
}

.ka-cmt-date{
  display:flex;
  align-items:center;
  gap: 8px;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 12.5px;
}

.ka-cmt-text{
  color: #2f2f2f;
  font-weight: 850;
  line-height: 2.0;
  font-size: 13.5px;
}

.ka-cmt-answers{
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px dashed rgba(10,61,98,.18);
}

.ka-cmt-answer{
  display:flex;
  align-items:flex-start;
  gap: 10px;
  margin-top: 10px;
}

.ka-cmt-answer-mark{
  width: 32px;
  height: 32px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;

  background: rgba(144,104,43,.14);
  border: 1px solid rgba(144,104,43,.28);
  color: var(--secondary);
}

.ka-cmt-answer-box{
  flex: 1 1 auto;
  border-radius: calc(var(--radius) + 12px);
  border: 1px solid rgba(144,104,43,.18);
  background: rgba(144,104,43,.06);
  padding: 10px 12px;
}

.ka-cmt-answer-meta{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 6px;
}

.ka-cmt-answer-name{
  font-weight: 950;
  color: #3b2f15;
  font-size: 13.5px;
}

.ka-cmt-answer-date{
  display:flex;
  align-items:center;
  gap: 8px;
  color: rgba(59,47,21,.70);
  font-weight: 850;
  font-size: 12px;
}

.ka-cmt-answer-text{
  color: #2f2f2f;
  font-weight: 850;
  line-height: 2.0;
  font-size: 13.5px;
}

.ka-cmt-empty{
  border-radius: calc(var(--radius) + 16px);
  border: 1px dashed rgba(10,61,98,.22);
  background: rgba(10,61,98,.03);
  padding: 18px 14px;
  text-align:center;
}

.ka-cmt-empty-ic{
  width: 54px;
  height: 54px;
  margin: 0 auto 10px;
  border-radius: 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
  font-size: 20px;
}

.ka-cmt-empty-hd{
  font-weight: 950;
  color: var(--text-main);
  font-size: 14px;
}

.ka-cmt-empty-tx{
  margin-top: 6px;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 13px;

  line-height: 1.9;
}

@media (max-width: 576px){
  .ka-cmt-body{ padding: 12px 10px; }
  .ka-cmt-item{ padding: 12px 10px; }
}
		
		.ka-cmt-form-card{
  border-radius: calc(var(--radius) + 18px);
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.94);
  box-shadow: 0 26px 80px rgba(0,0,0,.08);
  overflow: hidden;
}

.ka-cmt-form-hd{
  padding: 16px 16px;
  background: rgba(10,61,98,.04);
  border-bottom: 1px solid rgba(10,61,98,.10);
}

.ka-cmt-form-kicker{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.20);
  color: #3b2f15;
  font-weight: 950;
  font-size: 12.5px;
}

.ka-cmt-form-title{
  margin-top: 10px;
  color: var(--text-main);
  font-weight: 950;
  font-size: 15px;
  line-height: 2.0;
}

.ka-cmt-form-sub{
  margin-top: 6px;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 13px;
  line-height: 1.9;
}

.ka-cmt-form-bd{
  padding: 16px 16px;
}

.ka-cmt-form-alert{
  margin-bottom: 12px;
  padding: 10px 12px;
  border-radius: calc(var(--radius) + 12px);
  border: 1px solid rgba(220,53,69,.22);
  background: rgba(220,53,69,.08);
  color: #8a1c2a;
  font-weight: 900;
  font-size: 13px;
  line-height: 1.9;
}

.ka-cmt-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.ka-cmt-field--full{
  grid-column: 1 / -1;
}

.ka-cmt-label{
  display:block;
  margin-bottom: 8px;
  font-weight: 950;
  font-size: 13px;
  color: var(--text-main);
}

.ka-cmt-control{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: calc(var(--radius) + 14px);
  border: 1px solid rgba(10,61,98,.14);
  background: rgba(10,61,98,.03);
  transition: var(--transition);
}

.ka-cmt-control--textarea{
  align-items:flex-start;
}

.ka-cmt-ic{
  width: 36px;
  height: 36px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.20);
  color: var(--secondary);
  flex: 0 0 auto;
  margin-top: 1px;
}

.ka-cmt-input,
.ka-cmt-textarea{
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--text-main);
  font-weight: 850;
  font-size: 14px;
}

.ka-cmt-textarea{
  resize: vertical;
  min-height: 130px;
  line-height: 2.0;
}

.ka-cmt-control:focus-within{
  background: rgba(27,120,194,.06);
  border-color: rgba(27,120,194,.40);
  box-shadow: 0 0 0 .2rem rgba(27,120,194,.10);
}

.ka-cmt-help{
  margin-top: 6px;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 12.5px;
}

.ka-cmt-err{
  display:block;
  margin-top: 6px;
  color: #b02a37;
  font-weight: 900;
  font-size: 12.5px;
  line-height: 1.9;
}

.ka-cmt-field.is-error .ka-cmt-control{
  border-color: rgba(220,53,69,.45);
  background: rgba(220,53,69,.06);
  box-shadow: 0 0 0 .18rem rgba(220,53,69,.10);
}

.ka-cmt-field.is-error .ka-cmt-ic{
  background: rgba(220,53,69,.12);
  border-color: rgba(220,53,69,.20);
  color: #b02a37;
}

.ka-cmt-field.is-ok .ka-cmt-control{
  border-color: rgba(25,135,84,.35);
  background: rgba(25,135,84,.05);
}

.ka-cmt-form-actions{
  margin-top: 14px;
  display:flex;
  align-items:center;
  gap: 12px;
  flex-wrap: wrap;
}

.ka-cmt-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.20);
  background: var(--primary);
  color:#fff;
  font-weight: 950;
  transition: var(--transition);
  box-shadow: 0 18px 55px rgba(10,61,98,.25);
}

.ka-cmt-submit:hover{
  transform: translateY(-2px);
  box-shadow: 0 24px 70px rgba(10,61,98,.30);
}

.ka-cmt-submit:disabled{
  opacity: .75;
  transform: none;
  box-shadow: none;
  cursor: not-allowed;
}

.ka-cmt-submit-ic{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
}

.ka-cmt-loader{
  width: 40px;
  height: 40px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.06);
  border: 1px solid rgba(10,61,98,.12);
  color: var(--primary);
}

.ka-cmt-privacy{
  flex: 1 1 auto;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 12.5px;
  line-height: 1.9;
}

@media (max-width: 768px){
  .ka-cmt-grid{
    grid-template-columns: 1fr;
  }
  .ka-cmt-form-actions{
    flex-direction: column;
    align-items: stretch;
  }
  .ka-cmt-submit{
    width: 100%;
  }
  .ka-cmt-loader{
    width: 100%;
  }
}

		
		/* Service request section */
.ka-sreq{
  position: relative;
  background: transparent;
}

.ka-sreq-wrap{
  border-radius: 26px;
  background: var(--primary);
  border: 1px solid rgba(10,61,98,.18);
  box-shadow: 0 40px 120px rgba(10,61,98,.28);
  overflow: hidden;
  padding: 18px;
}

.ka-sreq-wrap::before{
  content:"";
  position:absolute;
  inset: -120px -180px auto auto;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: rgba(255,255,255,.08);
  filter: blur(0px);
  pointer-events:none;
}

.ka-sreq-wrap::after{
  content:"";
  position:absolute;
  inset: auto auto -10px -20px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: rgba(144,104,43,.16);
  pointer-events:none;
}

.ka-sreq-info{
  position: relative;
  height: 100%;
  color: #fff;
  padding: 16px 16px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(8px);
}

.ka-sreq-kicker{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
  font-weight: 950;
  font-size: 12.5px;
}

.ka-sreq-kic{
  width: 34px;
  height: 34px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.22);
  border: 1px solid rgba(144,104,43,.35);
}

.ka-sreq-title{
  margin-top: 12px;
  margin-bottom: 0;
  font-weight: 950;
  font-size: 18px;
  line-height: 2.0;
}

.ka-sreq-accent{
  color: rgba(255,255,255,.95);
  position: relative;
  padding: 0 6px;
}

.ka-sreq-lead{
  margin-top: 10px;
  margin-bottom: 0;
  color: rgba(255,255,255,.88);
  font-weight: 850;
  font-size: 13.5px;
  line-height: 2.05;
}

.ka-sreq-points{
  margin-top: 14px;
  display:flex;
  flex-direction: column;
  gap: 10px;
}

.ka-sreq-point{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 10px 10px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
}

.ka-sreq-pic{
  width: 38px;
  height: 38px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.14);
  color: #fff;
  flex: 0 0 auto;
}

.ka-sreq-phd{
  font-weight: 950;
  font-size: 13.5px;
}

.ka-sreq-psub{
  margin-top: 2px;
  color: rgba(255,255,255,.86);
  font-weight: 850;
  font-size: 12.5px;
  line-height: 1.9;
}

.ka-sreq-mini{
  margin-top: 14px;
  display:flex;
  align-items:flex-start;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 18px;
  border: 1px dashed rgba(255,255,255,.22);
  background: rgba(255,255,255,.05);
}

.ka-sreq-mini-ic{
  width: 28px;
  height: 28px;
  border-radius: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.28);
  border: 1px solid rgba(144,104,43,.42);
  flex: 0 0 auto;
}

.ka-sreq-mini-tx{
  color: rgba(255,255,255,.88);
  font-weight: 850;
  font-size: 12.5px;
  line-height: 1.9;
}

/* Form */
.ka-sreq-form{
  position: relative;
  height: 100%;
  border-radius: 22px;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 28px 90px rgba(0,0,0,.20);
  overflow: hidden;
}

.ka-sreq-form-hd{
  padding: 14px 14px;
  background: rgba(10,61,98,.04);
  border-bottom: 1px solid rgba(10,61,98,.10);
}

.ka-sreq-form-title{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 950;
  color: var(--text-main);
  font-size: 14px;
}

.ka-sreq-form-title i{
  width: 34px;
  height: 34px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.08);
  border: 1px solid rgba(10,61,98,.14);
  color: var(--primary);
}

.ka-sreq-form-sub{
  margin-top: 6px;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 12.5px;
  line-height: 1.9;
}

.ka-sreq-form-bd{
  padding: 14px 14px;
}

.ka-sreq-alert{
  margin-bottom: 12px;
  padding: 10px 12px;
  border-radius: 18px;
  border: 1px solid rgba(220,53,69,.22);
  background: rgba(220,53,69,.08);
  color: #8a1c2a;
  font-weight: 900;
  font-size: 13px;
  line-height: 1.9;
}

.ka-sreq-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.ka-sreq-field--full{
  grid-column: 1 / -1;
}

.ka-sreq-lbl{
  display:block;
  margin-bottom: 8px;
  color: var(--text-main);
  font-weight: 950;
  font-size: 13px;
}

.ka-sreq-ctl{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 18px;
  border: 1px solid rgba(10,61,98,.14);
  background: rgba(10,61,98,.03);
  transition: var(--transition);
}

.ka-sreq-ctl--ta{
  align-items:flex-start;
}

.ka-sreq-ic{
  width: 36px;
  height: 36px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.20);
  color: var(--secondary);
  flex: 0 0 auto;
  margin-top: 1px;
}

.ka-sreq-inp,
.ka-sreq-ta{
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--text-main);
  font-weight: 850;
  font-size: 14px;
}

.ka-sreq-ta{
  resize: vertical;
  min-height: 150px;
  line-height: 2.0;
}

.ka-sreq-ctl:focus-within{
  background: rgba(27,120,194,.06);
  border-color: rgba(27,120,194,.40);
  box-shadow: 0 0 0 .2rem rgba(27,120,194,.10);
}

.ka-sreq-hint{
  margin-top: 6px;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 12.5px;
  line-height: 1.9;
}

.ka-sreq-err{
  display:block;
  margin-top: 6px;
  color: #b02a37;
  font-weight: 900;
  font-size: 12.5px;
  line-height: 1.9;
}

.ka-sreq-field.is-error .ka-sreq-ctl{
  border-color: rgba(220,53,69,.45);
  background: rgba(220,53,69,.06);
  box-shadow: 0 0 0 .18rem rgba(220,53,69,.10);
}

.ka-sreq-field.is-ok .ka-sreq-ctl{
  border-color: rgba(25,135,84,.35);
  background: rgba(25,135,84,.05);
}

/* Dropzone */
.ka-sreq-drop{
  position: relative;
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 18px;
  border: 1px dashed rgba(10,61,98,.22);
  background: rgba(10,61,98,.02);
  transition: var(--transition);
  cursor: pointer;
  overflow: hidden;
}

.ka-sreq-drop:hover{
  background: rgba(27,120,194,.06);
  border-color: rgba(27,120,194,.35);
}

.ka-sreq-drop.is-drag{
  background: rgba(144,104,43,.10);
  border-color: rgba(144,104,43,.35);
}

.ka-sreq-drop-ic{
  width: 46px;
  height: 46px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(144,104,43,.12);
  border: 1px solid rgba(144,104,43,.20);
  color: var(--secondary);
  font-size: 18px;
  flex: 0 0 auto;
}

.ka-sreq-drop-hd{
  font-weight: 950;
  color: var(--text-main);
  font-size: 13.5px;
}

.ka-sreq-drop-sub{
  margin-top: 2px;
  color: var(--text-muted);
  font-weight: 850;
  font-size: 12.5px;
}

.ka-sreq-file{
  position:absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.ka-sreq-files{
  margin-top: 10px;
  display:flex;
  flex-direction: column;
  gap: 8px;
}

.ka-sreq-fitem{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.10);
  background: rgba(255,255,255,.90);
}

.ka-sreq-fname{
  display:flex;
  align-items:center;
  gap: 8px;
  min-width: 0;
  color: var(--text-main);
  font-weight: 850;
  font-size: 13px;
}

.ka-sreq-fname span{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ka-sreq-fsize{
  color: var(--text-muted);
  font-weight: 850;
  font-size: 12px;
}

.ka-sreq-actions{
  margin-top: 14px;
  display:flex;
  align-items:center;
  gap: 12px;
  flex-wrap: wrap;
}

.ka-sreq-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(10,61,98,.20);
  background: var(--primary);
  color:#fff;
  font-weight: 950;
  transition: var(--transition);
  box-shadow: 0 18px 55px rgba(10,61,98,.20);
}

.ka-sreq-btn:hover{
  transform: translateY(-2px);
  color:#fff;
  box-shadow: 0 24px 70px rgba(10,61,98,.26);
}

.ka-sreq-btn:disabled{
  opacity: .78;
  transform: none;
  box-shadow: none;
  cursor: not-allowed;
}

.ka-sreq-btn-ic{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
}

.ka-sreq-loader{
  width: 44px;
  height: 44px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(10,61,98,.06);
  border: 1px solid rgba(10,61,98,.12);
  color: var(--primary);
}

.ka-sreq-safe{
  flex: 1 1 auto;
  display:flex;
  align-items:center;
  gap: 8px;
  color: rgba(0,0,0,.55);
  font-weight: 850;
  font-size: 12.5px;
}

@media (max-width: 992px){
  .ka-sreq-wrap{ padding: 14px; }
}

@media (max-width: 768px){
  .ka-sreq-grid{ grid-template-columns: 1fr; }
  .ka-sreq-actions{ flex-direction: column; align-items: stretch; }
  .ka-sreq-btn{ width: 100%; }
  .ka-sreq-loader{ width: 100%; }
}
		
		

/* ===== Add-on (Brief page tiny feature) ===== */
.ka-cmp-media{
  border-radius: calc(var(--radius) + 16px);
  overflow: hidden;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.02);
  box-shadow: 0 18px 55px rgba(0,0,0,.06);
}
.ka-cmp-media img{
  width: 100%;
  height: 210px;
  object-fit: cover;
  display: block;
}
@media (max-width: 575.98px){
  .ka-cmp-media img{ height: 190px; }
}

		/* =========================
   Contract Page Add-ons
========================= */

.ka-cmp-banner{
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(10,61,98,.02);
  box-shadow: 0 18px 55px rgba(0,0,0,.06);
}
.ka-cmp-banner img{
  width: 100%;
  height: 240px;
  object-fit: cover;
  display: block;
}
@media (max-width: 575.98px){
  .ka-cmp-banner img{ height: 190px; }
}

.ka-cmp-subtitle{
  font-size: 13px;
  opacity: .86;
  margin-top: 6px;
  margin-bottom: 12px;
}

.ka-cmp-risk{
  border-radius: 18px;
  border: 1px solid rgba(144,104,43,.18);
  background:
    radial-gradient(800px 220px at 15% 0%, rgba(144,104,43,.10), transparent 55%),
    linear-gradient(180deg, rgba(10,61,98,.05), rgba(255,255,255,.0));
  box-shadow: 0 18px 55px rgba(0,0,0,.06);
  overflow: hidden;
}
.ka-cmp-risk-hd{
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(144,104,43,.16);
  font-weight: 800;
}
.ka-cmp-risk-bd{
  padding: 14px 16px 16px;
}
.ka-cmp-risk-row{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.ka-cmp-risk-it{
  border-radius: 16px;
  border: 1px solid rgba(10,61,98,.12);
  background: rgba(255,255,255,.75);
  padding: 12px 12px;
}
.ka-cmp-risk-ttl{
  font-weight: 800;
  margin-bottom: 4px;
}
.ka-cmp-risk-sub{
  font-size: 13px;
  opacity: .86;
  line-height: 1.9;
}
@media (max-width: 991.98px){
  .ka-cmp-risk-row{ grid-template-columns: 1fr; }
}

.ka-cmp-check{
  border-radius: 18px;
  border: 1px solid rgba(10,61,98,.12);
  background:
    radial-gradient(900px 260px at 85% -10%, rgba(10,61,98,.08), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,255,255,.75));
  box-shadow: 0 18px 55px rgba(0,0,0,.06);
  padding: 14px 16px;
}
.ka-cmp-check-row{
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
.ka-cmp-check-it{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(144,104,43,.14);
  background: rgba(255,255,255,.75);
  line-height: 2;
}
.ka-cmp-check-it i{
  margin-top: 4px;
}


/* ==============================
   Blog List Page
============================== */

/* ==============================
   Blog List Page With Sidebar
============================== */

.lc-blog-list-section {
  padding: 54px 0 76px;
  background: #ffffff;
}

.lc-blog-list-main {
  min-width: 0;
}

/* Hero Box */
.lc-blog-list-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: 28px;
  padding: 30px 30px;
  border-radius: 28px;
  background: #ffffff;
  border: 1px solid rgba(10, 61, 98, 0.12);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.lc-blog-list-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 10% 20%, rgba(10, 61, 98, 0.06), transparent 32%),
    radial-gradient(circle at 88% 18%, rgba(144, 104, 43, 0.08), transparent 28%);
  pointer-events: none;
}

.lc-blog-list-hero-content,
.lc-blog-list-hero-icon {
  position: relative;
  z-index: 1;
}

.lc-blog-list-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 14px;
  margin-bottom: 14px;
  border-radius: 999px;
  background: rgba(10, 61, 98, 0.08);
  color: #0A3D62;
  font-size: 0.78rem;
  font-weight: 900;
}

.lc-blog-list-pill i {
  color: #90682b;
}

.lc-blog-list-title {
  margin: 0 0 10px;
  color: #0b1726;
  font-size: 1.25rem;
  font-weight: 950;
  line-height: 1.65;
}

.lc-blog-list-subtitle {
  max-width: 620px;
  margin: 0;
  color: #64748b;
  font-size: 0.94rem;
  line-height: 2;
}

.lc-blog-list-result {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 9px 13px;
  border-radius: 14px;
  background: #f8fafc;
  border: 1px solid rgba(10, 61, 98, 0.12);
  color: #334155;
  font-size: 0.84rem;
  font-weight: 800;
}

.lc-blog-list-result i {
  color: #90682b;
}

.lc-blog-list-hero-icon {
  width: 82px;
  height: 82px;
  border-radius: 26px;
  background: #0A3D62;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  flex: 0 0 auto;
  box-shadow: 0 14px 30px rgba(10, 61, 98, 0.22);
}

/* Card */
.lc-blog-list-card {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(10, 61, 98, 0.11);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07);
  text-decoration: none;
  color: inherit;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.lc-blog-list-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 20px 44px rgba(15, 23, 42, 0.13);
  border-color: rgba(10, 61, 98, 0.34);
  text-decoration: none;
  color: inherit;
}

.lc-blog-list-img {
  position: relative;
  height: 190px;
  overflow: hidden;
  background: #f3f6f9;
}

.lc-blog-list-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}

.lc-blog-list-card:hover .lc-blog-list-img img {
  transform: scale(1.055);
}

.lc-blog-list-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  color: #0A3D62;
  font-size: 0.74rem;
  font-weight: 800;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.14);
}

.lc-blog-list-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 17px 17px 15px;
}

.lc-blog-list-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: 0.77rem;
  color: #6b7280;
  margin-bottom: 10px;
}

.lc-blog-list-meta span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  white-space: nowrap;
}

.lc-blog-list-meta i {
  color: #0A3D62;
  font-size: 0.75rem;
}

.lc-blog-list-card-title {
  font-size: 0.98rem;
  font-weight: 900;
  color: #0b1726;
  margin: 0 0 9px;
  line-height: 1.7;
  min-height: 54px;
  transition: color .22s ease;
}

.lc-blog-list-card:hover .lc-blog-list-card-title {
  color: #0A3D62;
}

.lc-blog-list-desc {
  font-size: 0.82rem;
  color: #64748b;
  line-height: 1.95;
  margin: 0 0 16px;
}

.lc-blog-list-footer {
  margin-top: auto;
  padding-top: 13px;
  border-top: 1px solid rgba(15, 23, 42, 0.07);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.lc-blog-list-author-box {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.lc-blog-list-author-img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  object-fit: cover;
  flex: 0 0 auto;
  border: 2px solid #fff;
  box-shadow: 0 5px 14px rgba(15, 23, 42, 0.16);
  background: #f3f6f9;
}

.lc-blog-list-author {
  font-size: 0.8rem;
  color: #334155;
  font-weight: 800;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lc-blog-list-readmore {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #0A3D62;
  font-size: 0.78rem;
  font-weight: 900;
  white-space: nowrap;
}

.lc-blog-list-readmore i {
  font-size: 0.72rem;
  transition: transform .22s ease;
}

.lc-blog-list-card:hover .lc-blog-list-readmore i {
  transform: translateX(-3px);
}

/* Empty */
.lc-blog-list-empty {
  padding: 30px 22px;
  border-radius: 22px;
  background: #f8fafc;
  border: 1px dashed rgba(10, 61, 98, 0.26);
  color: #64748b;
  text-align: center;
  font-size: 0.92rem;
  line-height: 2;
}

/* Sidebar */
.lc-blog-list-sidebar {
  position: sticky;
  top: 24px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.lc-blog-side-card,
.lc-blog-writer-card {
  padding: 18px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(10, 61, 98, 0.11);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07);
}

.lc-blog-side-title {
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(15, 23, 42, 0.07);
}

.lc-blog-side-title span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0A3D62;
  font-size: 0.95rem;
  font-weight: 950;
}

.lc-blog-side-title i {
  color: #90682b;
}

/* Search */
.lc-blog-search-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.lc-blog-search-input {
  width: 100%;
  min-height: 46px;
  padding: 10px 13px;
  border-radius: 14px;
  border: 1px solid rgba(10, 61, 98, 0.16);
  background: #f8fafc;
  color: #0f172a;
  font-size: 0.86rem;
  outline: none;
  transition: .22s ease;
}

.lc-blog-search-input:focus {
  border-color: rgba(10, 61, 98, 0.45);
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(10, 61, 98, 0.08);
}

.lc-blog-search-btn {
  width: 100%;
  min-height: 44px;
  border: 0;
  border-radius: 14px;
  background: #0A3D62;
  color: #ffffff;
  font-size: 0.86rem;
  font-weight: 900;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  cursor: pointer;
  transition: .22s ease;
  box-shadow: 0 10px 24px rgba(10, 61, 98, 0.22);
}

.lc-blog-search-btn:hover {
  background: #072a45;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(10, 61, 98, 0.30);
}

/* Writer Sidebar */
.lc-blog-writer-card {
  text-align: center;
}

.lc-blog-writer-img {
  width: 92px;
  height: 92px;
  border-radius: 24px;
  object-fit: cover;
  display: block;
  margin: 0 auto 14px;
  border: 3px solid #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.15);
  background: #f3f6f9;
}

.lc-blog-writer-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  color: #90682b;
  font-size: 0.78rem;
  font-weight: 900;
}

.lc-blog-writer-info h2 {
  margin: 0 0 6px;
  color: #0A3D62;
  font-size: 1.08rem;
  font-weight: 950;
  line-height: 1.7;
}

.lc-blog-writer-info span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
  color: #475569;
  font-size: 0.8rem;
  font-weight: 800;
}

.lc-blog-writer-info span i {
  color: #90682b;
}

.lc-blog-writer-info p {
  margin: 0 0 14px;
  color: #64748b;
  font-size: 0.82rem;
  line-height: 2;
}

.lc-blog-writer-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  min-height: 42px;
  border-radius: 14px;
  background: #ffffff;
  color: #0A3D62;
  border: 1px solid rgba(10, 61, 98, 0.18);
  font-size: 0.82rem;
  font-weight: 900;
  text-decoration: none;
  transition: .22s ease;
}

.lc-blog-writer-link:hover {
  color: #ffffff;
  background: #0A3D62;
  text-decoration: none;
}

/* Popular */
.lc-blog-popular-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.lc-blog-popular-item {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.06);
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

.lc-blog-popular-item:hover {
  background: #ffffff;
  border-color: rgba(10, 61, 98, 0.20);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08);
  transform: translateY(-2px);
  color: inherit;
  text-decoration: none;
}

.lc-blog-popular-item img {
  width: 74px;
  height: 62px;
  border-radius: 14px;
  object-fit: cover;
  flex: 0 0 auto;
  background: #eef2f7;
}

.lc-blog-popular-info {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.lc-blog-popular-info strong {
  color: #0f172a;
  font-size: 0.82rem;
  font-weight: 900;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.lc-blog-popular-info small {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 700;
}

.lc-blog-popular-info small i {
  color: #90682b;
}

.lc-blog-side-empty {
  padding: 16px 12px;
  border-radius: 16px;
  background: #f8fafc;
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.9;
  text-align: center;
}

/* Consult */
.lc-blog-consult-card {
  position: relative;
  overflow: hidden;
  padding: 22px 20px;
  border-radius: 24px;
  background: #0A3D62;
  color: #ffffff;
  box-shadow: 0 16px 36px rgba(10, 61, 98, 0.24);
}

.lc-blog-consult-card::before {
  content: "";
  position: absolute;
  width: 128px;
  height: 128px;
  left: -42px;
  top: -42px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
}

.lc-blog-consult-card::after {
  content: "";
  position: absolute;
  width: 88px;
  height: 88px;
  right: -34px;
  bottom: -34px;
  border-radius: 50%;
  background: rgba(144, 104, 43, 0.35);
}

.lc-blog-consult-icon {
  position: relative;
  z-index: 1;
  width: 48px;
  height: 48px;
  margin-bottom: 14px;
  border-radius: 16px;
  background: #ffffff;
  color: #90682b;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16);
}

.lc-blog-consult-card h3 {
  position: relative;
  z-index: 1;
  margin: 0 0 10px;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 950;
  line-height: 1.7;
}

.lc-blog-consult-card p {
  position: relative;
  z-index: 1;
  margin: 0 0 16px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.84rem;
  line-height: 2;
}

.lc-blog-consult-btn {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  min-height: 44px;
  padding: 9px 14px;
  border-radius: 14px;
  background: #90682b;
  color: #ffffff;
  font-size: 0.86rem;
  font-weight: 950;
  text-decoration: none;
  transition: .22s ease;
}

.lc-blog-consult-btn:hover {
  color: #ffffff;
  background: #7b5722;
  transform: translateY(-2px);
  text-decoration: none;
}

/* Responsive */
@media (max-width: 991px) {
  .lc-blog-list-sidebar {
    position: static;
    margin-top: 8px;
  }

  .lc-blog-list-hero {
    padding: 24px 22px;
  }

  .lc-blog-list-hero-icon {
    display: none;
  }
}

@media (max-width: 768px) {
  .lc-blog-list-section {
    padding: 42px 0 58px;
  }

  .lc-blog-list-hero {
    border-radius: 22px;
    margin-bottom: 22px;
  }

  .lc-blog-list-title {
    font-size: 1.35rem;
  }

  .lc-blog-list-subtitle {
    font-size: 0.86rem;
  }

  .lc-blog-list-img {
    height: 170px;
  }

  .lc-blog-list-card-title {
    min-height: auto;
  }

  .lc-blog-side-card,
  .lc-blog-writer-card {
    padding: 15px;
    border-radius: 20px;
  }

  .lc-blog-consult-card {
    border-radius: 20px;
  }

  .lc-blog-popular-item img {
    width: 68px;
    height: 58px;
  }
}
/* ==============================
   Single Post Page
============================== */

:root {
  --lc-post-primary: #0A3D62;
  --lc-post-secondary: #90682b;
  --lc-post-dark: #0f172a;
  --lc-post-muted: #64748b;
  --lc-post-border: rgba(10, 61, 98, 0.12);
  --lc-post-soft: #f8fafc;
}

.lc-post-section {
  padding: 56px 0 76px;
  background: #ffffff;
}

.lc-post-wrap {
  max-width: 940px;
  margin: 0 auto;
}

/* Header */
.lc-post-header {
  text-align: center;
  margin-bottom: 28px;
}

.lc-post-kicker {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 14px;
  margin-bottom: 15px;
  border-radius: 999px;
  background: rgba(10, 61, 98, 0.08);
  color: var(--lc-post-primary);
  font-size: 0.78rem;
  font-weight: 900;
}

.lc-post-title {
  max-width: 820px;
  margin: 0 auto 14px;
  color: var(--lc-post-primary);
  font-size: 1.65rem;
  font-weight: 950;
  line-height: 1.75;
}

.lc-post-lead {
  max-width: 720px;
  margin: 0 auto;
  color: var(--lc-post-muted);
  font-size: 0.95rem;
  line-height: 2;
}

/* Cover */
.lc-post-cover {
  position: relative;
  margin: 28px 0 18px;
  border-radius: 26px;
  overflow: hidden;
  border: 1px solid var(--lc-post-border);
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.10);
  background: #f3f6f9;
}

.lc-post-cover img {
  display: block;
  width: 100%;
  height: 420px;
  object-fit: cover;
}

/* Meta */
.lc-post-meta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 18px 0 34px;
}

.lc-post-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 8px 13px;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(10, 61, 98, 0.12);
  color: #475569;
  font-size: 0.82rem;
  font-weight: 800;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
}

.lc-post-meta-item i {
  color: var(--lc-post-secondary);
  font-size: 0.82rem;
}

/* Content */
.lc-post-content {
  padding: 34px 36px;
  border-radius: 26px;
  background: #ffffff;
  border: 1px solid rgba(10, 61, 98, 0.10);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.065);
  color: #1e293b;
  font-size: 0.98rem;
  line-height: 2.35;
}

.lc-post-content p {
  margin: 0 0 18px;
}

.lc-post-content h2,
.lc-post-content h3,
.lc-post-content h4 {
  color: var(--lc-post-primary);
  font-weight: 950;
  line-height: 1.8;
  margin: 34px 0 14px;
}

.lc-post-content h2 {
  font-size: 1.38rem;
}

.lc-post-content h3 {
  font-size: 1.18rem;
}

.lc-post-content h4 {
  font-size: 1.05rem;
}

.lc-post-content ul,
.lc-post-content ol {
  padding-right: 22px;
  margin: 0 0 22px;
}

.lc-post-content li {
  margin-bottom: 8px;
}

.lc-post-content strong {
  color: #111827;
  font-weight: 900;
}

.lc-post-content a {
  color: var(--lc-post-primary);
  font-weight: 800;
  text-decoration: none;
  border-bottom: 1px solid rgba(10, 61, 98, 0.25);
}

.lc-post-content blockquote {
  position: relative;
  margin: 28px 0;
  padding: 18px 22px;
  border-right: 4px solid var(--lc-post-secondary);
  border-radius: 18px;
  background: #fbfaf8;
  color: #334155;
  font-weight: 700;
  line-height: 2.2;
}

/* Author Box */
.lc-post-author-box {
  margin-top: 34px;
  padding: 24px;
  border-radius: 26px;
  background: #ffffff;
  border: 1px solid rgba(144, 104, 43, 0.22);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.07);
}

.lc-post-author-inner {
  display: flex;
  align-items: flex-start;
  gap: 18px;
}

.lc-post-author-img {
  width: 92px;
  height: 92px;
  border-radius: 24px;
  object-fit: cover;
  flex: 0 0 auto;
  background: #f3f6f9;
  border: 3px solid #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
}

.lc-post-author-content {
  flex: 1;
  min-width: 0;
}

.lc-post-author-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  color: var(--lc-post-secondary);
  font-size: 0.78rem;
  font-weight: 900;
}

.lc-post-author-name {
  margin: 0 0 5px;
  color: var(--lc-post-primary);
  font-size: 1.15rem;
  font-weight: 950;
  line-height: 1.7;
}

.lc-post-author-role {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
  color: #475569;
  font-size: 0.83rem;
  font-weight: 800;
}

.lc-post-author-desc {
  margin: 0 0 16px;
  color: #64748b;
  font-size: 0.88rem;
  line-height: 2;
}

.lc-post-author-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.lc-post-author-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 15px;
  border-radius: 13px;
  background: var(--lc-post-primary);
  color: #ffffff;
  font-size: 0.82rem;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 10px 24px rgba(10, 61, 98, 0.20);
  transition: .22s ease;
}

.lc-post-author-link:hover {
  color: #ffffff;
  background: #072a45;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(10, 61, 98, 0.28);
}

.lc-post-author-link--ghost {
  background: #ffffff;
  color: var(--lc-post-primary);
  border: 1px solid rgba(10, 61, 98, 0.18);
  box-shadow: none;
}

.lc-post-author-link--ghost:hover {
  color: var(--lc-post-primary);
  background: #f8fafc;
  box-shadow: none;
}

/* Empty */
.lc-post-not-found {
  padding: 34px 22px;
  border-radius: 22px;
  background: #f8fafc;
  border: 1px dashed rgba(10, 61, 98, 0.26);
  color: #64748b;
  text-align: center;
  font-size: 0.95rem;
  line-height: 2;
}

/* Responsive */
@media (max-width: 991px) {
  .lc-post-title {
    font-size: 1.45rem;
  }

  .lc-post-cover img {
    height: 330px;
  }

  .lc-post-content {
    padding: 28px 24px;
  }
}

@media (max-width: 768px) {
  .lc-post-section {
    padding: 42px 0 58px;
  }

  .lc-post-title {
    font-size: 1.35rem;
  }

  .lc-post-cover {
    border-radius: 20px;
  }

  .lc-post-cover img {
    height: 230px;
  }

  .lc-post-meta {
    justify-content: flex-start;
    gap: 9px;
    margin-bottom: 24px;
  }

  .lc-post-meta-item {
    font-size: 0.76rem;
    padding: 7px 11px;
  }

  .lc-post-content {
    padding: 22px 18px;
    border-radius: 20px;
    font-size: 0.92rem;
    line-height: 2.25;
  }

  .lc-post-author-inner {
    flex-direction: column;
  }

  .lc-post-author-img {
    width: 82px;
    height: 82px;
    border-radius: 22px;
  }
}
/* ==============================
   Single Post Layout With Sidebar
============================== */

.lc-post-main {
  min-width: 0;
}

.lc-post-sidebar {
  position: sticky;
  top: 24px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* Sidebar Card */
.lc-post-side-card {
  padding: 18px;
  border-radius: 22px;
  background: #ffffff;
  border: 1px solid rgba(10, 61, 98, 0.11);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07);
}

.lc-post-side-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(15, 23, 42, 0.07);
}

.lc-post-side-title span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #0A3D62;
  font-size: 0.95rem;
  font-weight: 950;
}

.lc-post-side-title i {
  color: #90682b;
}

/* Search */
.lc-post-search-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.lc-post-search-input {
  width: 100%;
  min-height: 46px;
  padding: 10px 13px;
  border-radius: 14px;
  border: 1px solid rgba(10, 61, 98, 0.16);
  background: #f8fafc;
  color: #0f172a;
  font-size: 0.86rem;
  outline: none;
  transition: .22s ease;
}

.lc-post-search-input:focus {
  border-color: rgba(10, 61, 98, 0.45);
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(10, 61, 98, 0.08);
}

.lc-post-search-btn {
  width: 100%;
  min-height: 44px;
  border: 0;
  border-radius: 14px;
  background: #0A3D62;
  color: #ffffff;
  font-size: 0.86rem;
  font-weight: 900;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  cursor: pointer;
  transition: .22s ease;
  box-shadow: 0 10px 24px rgba(10, 61, 98, 0.22);
}

.lc-post-search-btn:hover {
  background: #072a45;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(10, 61, 98, 0.30);
}

/* Latest Posts */
.lc-post-latest-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.lc-post-latest-item {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.06);
  color: inherit;
  text-decoration: none;
  transition: .22s ease;
}

.lc-post-latest-item:hover {
  background: #ffffff;
  border-color: rgba(10, 61, 98, 0.20);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08);
  transform: translateY(-2px);
  color: inherit;
  text-decoration: none;
}

.lc-post-latest-item img {
  width: 74px;
  height: 62px;
  border-radius: 14px;
  object-fit: cover;
  flex: 0 0 auto;
  background: #eef2f7;
}

.lc-post-latest-info {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.lc-post-latest-info strong {
  color: #0f172a;
  font-size: 0.82rem;
  font-weight: 900;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.lc-post-latest-info small {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 700;
}

.lc-post-latest-info small i {
  color: #90682b;
}

.lc-post-side-empty {
  padding: 16px 12px;
  border-radius: 16px;
  background: #f8fafc;
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.9;
  text-align: center;
}

/* Consultation Banner */
.lc-post-consult-card {
  position: relative;
  overflow: hidden;
  padding: 22px 20px;
  border-radius: 24px;
  background: #0A3D62;
  color: #ffffff;
  box-shadow: 0 16px 36px rgba(10, 61, 98, 0.24);
}

.lc-post-consult-card::before {
  content: "";
  position: absolute;
  width: 128px;
  height: 128px;
  left: -42px;
  top: -42px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
}

.lc-post-consult-card::after {
  content: "";
  position: absolute;
  width: 88px;
  height: 88px;
  right: -34px;
  bottom: -34px;
  border-radius: 50%;
  background: rgba(144, 104, 43, 0.35);
}

.lc-post-consult-icon {

  position: relative;
  z-index: 1;
  width: 48px;
  height: 48px;
  margin-bottom: 14px;
  border-radius: 16px;
  background: #ffffff;
  color: #90682b;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16);
}

.lc-post-consult-card h3 {
  position: relative;
  z-index: 1;
  margin: 0 0 10px;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 950;
  line-height: 1.7;
}

.lc-post-consult-card p {
  position: relative;
  z-index: 1;
  margin: 0 0 16px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.84rem;
  line-height: 2;
}

.lc-post-consult-btn {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  min-height: 44px;
  padding: 9px 14px;
  border-radius: 14px;
  background: #90682b;
  color: #ffffff;
  font-size: 0.86rem;
  font-weight: 950;
  text-decoration: none;
  transition: .22s ease;
}

.lc-post-consult-btn:hover {
  color: #ffffff;
  background: #7b5722;
  transform: translateY(-2px);
  text-decoration: none;
}

/* Responsive Sidebar */
@media (max-width: 991px) {
  .lc-post-sidebar {
    position: static;
    margin-top: 4px;
  }
}

@media (max-width: 768px) {
  .lc-post-side-card {
    padding: 15px;
    border-radius: 20px;
  }

  .lc-post-consult-card {
    border-radius: 20px;
  }

  .lc-post-latest-item img {
    width: 68px;
    height: 58px;
  }
}