/* ========== BASIC RESET ========== */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
html {
    scroll-behavior: smooth;
}
/* ========== BODY ========== */
body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: #e9ebef;
    color: #111827;
    line-height: 1.6;
}
.resource-links-row {
  display: flex;
  gap: 15px;
  width: 100%;
  flex-wrap: wrap;
}

.resource-link-item {
  flex: 1;
  min-width: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 5px 10px;
  background: #f5f7fb;
  border: 1px solid #dce4f2;
  border-radius: 12px;
  text-decoration: none;
  color: #c2280e;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

.resource-link-item .arrow {
  font-size: 20px;
  margin-left: 12px;
  transition: transform 0.3s ease;
}

.resource-link-item:hover {
  background: red;
  border-color: red;
  color: #fff;
  transform: translateY(-3px);
}

.resource-link-item:hover .arrow {
  transform: translateX(5px);
}

/* Tablet */
@media (max-width: 768px) {
  .resource-link-item {
    font-size: 14px;
    padding: 16px;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .resource-links-row {
    flex-direction: column;
  }

  .resource-link-item {
    width: 100%;
  }
}
/* ========== TOP WHITE HEADER BAR ========== */
.cj-header {
    width: 100%;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    position: sticky;
    top: 0;
    z-index: 50;
}

.cj-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0.35rem 0.55rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Logo – 65px height */
.cj-logo img {
    height: 65px;
    width: auto;
}

/* Container */
.work-contribution {
  /*max-width: 1000px;
  margin: 40px auto;
  padding: 20px;*/
  font-family: 'Segoe UI', Tahoma, sans-serif;
  line-height: 1.7;
  color: #333;
}
/* ========= IMPACTFUL ASSOCIATIONS ========= */

.cj-impactful-associations {
  /*  background: linear-gradient(to bottom, #f9fafb 0%, #eef2f7 100%);*/
}

.cj-impactful-content {
   
    margin: 0 auto;
    text-align: left;
}

.cj-impactful-intro {
    font-size: 1.05rem;
    line-height: 1.8;
    color: #374151;
    margin-bottom: 1.8rem;
    background: #ffffff;
    padding: 1.2rem 1.4rem;
    border-left: 4px solid #b91c1c;
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.08);
}

.cj-impactful-intro strong {
    color: #111827;
}

.cj-impactful-intro em {
    color: #b91c1c;
    font-style: italic;
}

.cj-impactful-list {
    counter-reset: item;
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 1.2rem;
}

.cj-impactful-list li {
    position: relative;
    background: #ffffff;
    padding: 1.35rem 1.35rem 1.35rem 4.3rem;
    border-radius: 14px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
    color: #374151;
    font-size: 0.98rem;
    line-height: 1.8;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
    border: 1px solid #e5e7eb;
}

.cj-impactful-list li::before {
    counter-increment: item;
    content: counter(item);
    position: absolute;
    left: 1.2rem;
    top: 1.25rem;
    width: 2.1rem;
    height: 2.1rem;
    border-radius: 50%;
    background: linear-gradient(135deg, #b91c1c, #ef4444);
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 18px rgba(185, 28, 28, 0.28);
}

.cj-impactful-list li:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(15, 23, 42, 0.12);
    border-color: rgba(185, 28, 28, 0.22);
}

.cj-impactful-list li strong {
    color: #111827;
    font-weight: 700;
}

.cj-impactful-list li em {
    font-style: italic;
    color: #b91c1c;
}

/* ========= RESPONSIVE ========= */

@media (max-width: 768px) {
    .cj-impactful-intro {
        font-size: 0.98rem;
        padding: 1rem 1rem;
    }

    .cj-impactful-list li {
        padding: 1.15rem 1rem 1.15rem 3.8rem;
        font-size: 0.94rem;
        line-height: 1.75;
    }

    .cj-impactful-list li::before {
        left: 1rem;
        top: 1.1rem;
        width: 1.9rem;
        height: 1.9rem;
        font-size: 0.88rem;
    }
}

@media (max-width: 540px) {
    .cj-impactful-associations {
        padding: 3rem 1.1rem 3.2rem;
    }

    .cj-impactful-intro {
        font-size: 0.94rem;
        line-height: 1.7;
    }

    .cj-impactful-list {
        gap: 1rem;
    }

    .cj-impactful-list li {
        padding: 1rem 0.95rem 1rem 3.4rem;
        font-size: 0.9rem;
        border-radius: 12px;
    }

    .cj-impactful-list li::before {
        left: 0.85rem;
        top: 1rem;
        width: 1.75rem;
        height: 1.75rem;
        font-size: 0.82rem;
    }
}
/* Heading */
.work-contribution h2 {
  text-align: center;
  font-size: 32px;
  margin-bottom: 30px;
  color: #1a1a1a;
  position: relative;
}

.work-contribution h2::after {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background: #0073e6;
  margin: 10px auto 0;
  border-radius: 2px;
}

/* List */
.work-contribution ol {
  counter-reset: item;
  padding-left: 0;
}

.work-contribution ol li {
  list-style: none;
  background: #ffffff;
  margin-bottom: 20px;
  padding: 20px 20px 20px 60px;
  border-radius: 10px;
  position: relative;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}

/* Number styling */
.work-contribution ol li::before {
  content: counter(item);
  counter-increment: item;
  position: absolute;
  left: 20px;
  top: 20px;
  background: #c73c03;
  color: #fff;
  font-weight: bold;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  border-radius: 50%;
}
.work-contribution ol li ul li::before {
  display:none
}
/* Hover effect */
.work-contribution ol li:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

/* Titles */
.work-contribution strong em {
  font-size: 18px;
  /*color: #0073e6;*/
  font-style: normal;
}

/* Sub list */
.work-contribution ul {
  margin-top: 10px;
  padding-left: 20px;
}

.work-contribution ul li {
  list-style: disc;
  background: none;
  box-shadow: none;
  padding: 5px 0;
}

/* Links */
.work-contribution a {
  color: #0073e6;
  text-decoration: none;
  font-weight: 500;
}

.work-contribution a:hover {
  text-decoration: underline;
  color: #005bb5;
}

/* Responsive */
@media (max-width: 768px) {
  .work-contribution {
    padding: 15px;
  }

  .work-contribution h2 {
    font-size: 24px;
  }

  .work-contribution ol li {
    padding: 15px 15px 15px 50px;
  }

  .work-contribution ol li::before {
    left: 15px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    font-size: 14px;
  }
}
.compliance-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.compliance-table {
  width: 100%;
  min-width: 1100px;
  border-collapse: collapse;
  border: 1px solid #dcdcdc;
  font-family: Arial, sans-serif;
  font-size: 14px;
}

.compliance-table td,
.compliance-table th {
  padding: 12px 15px;
  border: 1px solid #dcdcdc;
  vertical-align: middle;
}

.compliance-table tr:first-child td {
  background: #f5f5f5;
  font-weight: 600;
}

.compliance-table td:first-child {
  text-align: center;
  white-space: nowrap;
}

.compliance-table td:nth-child(n+3) {
  text-align: center;
}

.compliance-table td i {
  display: inline-block;
  font-size: 16px;
  line-height: 1;
}

.icon-check {
  color: green;
}

.icon-cross {
  color: red;
}

@media (max-width: 767px) {
  .compliance-table td,
  .compliance-table th {
    padding: 10px 12px;
    font-size: 13px;
  }

  .compliance-table td i {
    font-size: 14px;
  }
}

/* ========== DESKTOP MAIN NAVIGATION ========== */
.cj-nav-main {
    flex: 1;
    margin-left: 2.5rem;
}

.cj-nav-list {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1.75rem;
	padding-right: 20px;
}

.cj-nav-list a {
    text-decoration: none;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #111827;
    position: relative;
    padding-bottom: 0.1rem;
    transition: color 0.2s ease;
}

/* Hover underline */
.cj-nav-list a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.2rem;
    width: 0;
    height: 2px;
    background: #b91c1c;
    transition: width 0.2s ease;
}

.cj-nav-list a:hover::after {
    width: 100%;
}

/* flat circle icons for core expertise */
.cj-core-icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.1rem;   /* centers icon in card */
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.12);
}

/* base icon style */
.cj-core-icon i {
    font-size: 1.9rem;
    color: #b91c1c;  /* Cyberjure red as default */
}

/* colour variations per concept (optional but looks premium) */
.cj-core-icon--shield i {           /* Cyber Crime Cases */
    color: #b91c1c;
}

.cj-core-icon--privacy i,           /* Data Privacy & GDPR */
.cj-core-icon--docs i {
    color: #b45309;                 /* amber for policies/compliance */
}

.cj-core-icon--forensics i {        /* Cyber Forensics */
    color: #0369a1;                 /* blue for investigation */
}

.cj-core-icon--ip i {               /* Intellectual Property */
    color: #7c3aed;                 /* purple for ideas/innovation */
}

.cj-core-icon--fintech i {          /* FinTech & AI Laws */
    color: #0f766e;                 /* teal for finance/tech */
}

.cj-core-icon--social i {           /* Social Media & Reputation */
    color: #db2777;                 /* magenta for social */
}

.cj-core-icon--smartcity i {        /* Smart City & IoT */
    color: #4b5563;
}

.cj-core-icon--health i {           /* Digital Healthcare */
    color: #dc2626;
}

.cj-core-icon--gaming i {           /* Gaming & Media */
    color: #1d4ed8;
}

.cj-core-icon--due i {              /* Cyber Due Diligence */
    color: #15803d;
}

.cj-core-icon--academy i {          /* Cyberjure Academy */
    color: #6d28d9;
}

/* small hover lift together with card */
.cj-core-card:hover .cj-core-icon {
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.2);
}

/* ========== DROPDOWN (DESKTOP) ========== */


.cj-nav-main .cj-has-dropdown {
    position: relative;
}

.cj-nav-main .cj-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    background: #111827;
    padding: 0.5rem 0;
    border-radius: 0.4rem;
    min-width: 280px;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.45);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.18s ease;
    z-index: 100;
}

/* keep open while mouse over parent or dropdown */
.cj-nav-main .cj-has-dropdown:hover .cj-dropdown,
.cj-nav-main .cj-has-dropdown:focus-within .cj-dropdown {
    opacity: 1;
    pointer-events: auto;
}

.cj-nav-main .cj-dropdown li {
    list-style: none;
}

.cj-nav-main .cj-dropdown a {
    color: #f9fafb;
    text-transform: capitalize;
    letter-spacing: 0.02em;
    padding: 0.45rem 0.9rem;
    display: block;
font-size:12px;
}

/* ========== HAMBURGER / TOGGLE (ALWAYS VISIBLE) ========== */
.cj-nav-toggle {
    display: flex;
    margin-left: 1rem;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.2);
    background: #ffffff;
    cursor: pointer;
    justify-content: center;
    flex-direction: column;
    gap: 0.22rem;
    z-index: 60;
}

.cj-nav-toggle span {
    display: block;
    width: 60%;
    margin: 0 auto;
    height: 2px;
    background: #111827;
    border-radius: 999px;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

/* Toggle animation (X shape) */
.cj-nav-toggle.cj-open span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
}
.cj-nav-toggle.cj-open span:nth-child(2) {
    opacity: 0;
}
.cj-nav-toggle.cj-open span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

/* ========== SLIDE-IN PANEL NAV ========== */
.cj-nav-panel {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 320px;
    max-width: 85%;
    background: #111827;
    transform: translateX(100%);
    transition: transform 0.25s ease;
    z-index: 55;
    padding-top: 4.2rem;
    padding-bottom: 2rem;
    pointer-events: none;
}

.cj-nav-panel.cj-open {
    transform: translateX(0);
    pointer-events: auto;
}

.cj-nav-panel-list {
    list-style: none;
    padding: 0 1.8rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.cj-nav-panel-list a {
    color: #f9fafb;
    text-decoration: none;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.13em;
}

/* titles and subitems in panel */
.cj-panel-title {
    margin-top: 0.8rem;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: #9ca3af;
}

.cj-panel-title a {
    color: #f9fafb;
}

.cj-panel-sub {
    padding-left: 1.2rem;
}

.cj-panel-sub a {
    font-size: 0.85rem;
    text-transform: none;
    letter-spacing: 0.04em;
}

/* Hide some panel items on DESKTOP only */
.cj-panel-desktop-hidden {
    display: none;
}

/* ========== HERO SECTION ========== */
.cj-hero {
    position: relative;
    width: 100%;
    height: 85vh;
    min-height: 520px;
    max-height: 820px;
    overflow: hidden;
    z-index: 1;
}

/* Slider container */
.cj-hero-slider {
    position: relative;
    width: 100%;
    height: 100%;
}

/* Slides */
.cj-slide {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    transform: scale(1.02);
    transition: opacity 0.8s ease, transform 1.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;          /* important: inactive slides can't block clicks */
}

.cj-slide-active {
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;          /* only active slide receives clicks */
}

/* Dark overlay */
.cj-hero-overlay {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top, rgba(255, 65, 108, 0.25), transparent),
                radial-gradient(circle at bottom, rgba(0, 173, 239, 0.3), transparent),
                rgba(4, 5, 10, 0.65);
    pointer-events: none;          /* overlay never blocks hover/click */
    z-index: 1;
}

/* Hero content */
.cj-hero-content {
    position: relative;
    z-index: 999999;
    max-width: 1000px;
    width: 100%;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1rem;
    animation: cj-fade-up 0.9s ease forwards;
    pointer-events: auto;
}

.cj-hero-content h1 {
    font-size: clamp(2.2rem, 3.3vw + 1rem, 3.4rem);
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #f9fafb;
}

.cj-hero-content p {
    max-width: 640px;
    font-size: 1rem;
    color: #d8dde7;
}

/* ========== BUTTONS + BEAUTIFUL HOVER ========== */
.cj-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.7rem 1.8rem;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition:
        transform 0.2s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease,
        background-position 0.35s ease,
        color 0.25s ease;
}

/* hero button should never be full width */
.cj-hero-content .cj-btn {
    width: auto;
}

/* PRIMARY CTA – animated gradient + glow */
.cj-btn-primary {
    background-image: linearGradient(
        120deg,
        #ff416c 0%,
        #ff4b2b 40%,
        #ff9a3c 100%
    );
    background-image: linear-gradient(
        120deg,
        #ff416c 0%,
        #ff4b2b 40%,
        #ff9a3c 100%
    );
    background-size: 220% auto;
    color: #ffffff;
    box-shadow: 0 12px 30px rgba(255, 65, 108, 0.45);
}

/* Glow ring */
.cj-btn-primary::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid rgba(255, 255, 255, 0.3);
    opacity: 0;
    transform: scale(0.9);
    transition: opacity 0.25s ease, transform 0.25s ease;
    pointer-events: none;
}

/* Outline variant */
.cj-btn-outline {
    background: transparent;
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.75);
}

/* Hover states */
.cj-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.65);
}

.cj-btn-primary:hover {
    background-position: right center;
}

.cj-btn-primary:hover::before {
    opacity: 1;
    transform: scale(1.08);
}

/* ========== SLIDER DOTS ========== */
.cj-hero-dots {
    position: absolute;
    left: 50%;
    bottom: 1.5rem;
    transform: translateX(-50%);
    display: flex;
    gap: 0.5rem;
    z-index: 10;
}

.cj-dot {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.8);
    background: transparent;
    cursor: pointer;
    padding: 0;
    transition: background 0.2s ease, transform 0.2s ease, width 0.2s ease;
}

.cj-dot-active {
    background: #ff416c;
    width: 22px;
    transform: translateY(-1px);
}

/* ========== ANIMATIONS ========== */
@keyframes cj-fade-up {
    from {
        opacity: 0;
        transform: translateY(18px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ========= CORE EXPERTISE SECTION ========= */

.cj-section {
    padding: 3.5rem 1.5rem 4rem;
}

.cj-section-inner {
    max-width: 1200px;
    margin: 0 auto;
	text-align:center;
}

/* Heading */
.cj-section-header h2 {
    font-size: 2.1rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #111827;
}

.cj-section-underline {
    display: inline-block;
    width: 140px;
    height: 3px;
    background: #b91c1c;
    margin-top: 0.4rem;
    margin-bottom: 2.4rem;
}

/* Background like mockup */
.cj-core-expertise {
    background: linear-gradient(to bottom, #e5e7eb 0%, #dde0e5 100%);
}

/* Responsive grid using auto-fit */
.cj-core-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 1.6rem;
}

/* Card */
.cj-core-card {
    background: #f5f5f6;
    border-radius:14px;
        padding: 1rem 1rem 1.5rem;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12);
    position: relative;
    overflow: hidden;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        border-color 0.22s ease,
        background 0.22s ease;
    border-top: 3px solid transparent;
	text-align: center;
	height: 339px;
}

/* subtle overlay highlight on hover */
.cj-core-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top left, rgba(248, 113, 113, 0.18), transparent 55%);
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: none;
}

.cj-core-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.18);
    border-top-color: #b91c1c;
    background: #ffffff;
}

.cj-core-card:hover::before {
    opacity: 1;
}

/* Icon */
.cj-core-icon {
    margin-bottom: 1.1rem;
}

.cj-core-icon img {
    width: 44px;
    height: 44px;
    object-fit: contain;
}

/* Title & text */
.cj-core-card h3 {
    font-size: 1rem;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: #111827;
    margin-bottom: 0.6rem;
}

.cj-core-card p {
    font-size: 0.9rem;
    color: #4b5563;
    min-height: 3.2rem; /* keeps heights aligned */
    margin-bottom: 1.2rem;
}

/* Card button */
.cj-core-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 1.1rem;
    background: #b91c1c;
    color: #ffffff;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 2px;
    border: none;
    box-shadow: 0 6px 14px rgba(185, 28, 28, 0.4);
    transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
	position: absolute;
    bottom: 20px;
    left: 25%;
}

.cj-core-btn:hover {
    background: #991b1b;
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(185, 28, 28, 0.55);
}

/* Extra cards: hidden initially */
.cj-core-card--extra {
    display: none;
}

/* Load more */
.cj-core-loadmore {
    margin-top: 2.6rem;
    display: flex;
    justify-content: center;
}
.cj-core-load-btn {
    padding-inline: 2.8rem;
}
/* ========= QUICK ADVICE & DOWNLOAD CTA STRIP ========= */

.cj-cta-strip {
    padding: 2.8rem 1.5rem 3.2rem;
    background: #f9fafb;
}

.cj-cta-strip .cj-section-inner {
    max-width: 1200px;
}

/* Grid layout – big call tile + two smaller tiles */
.cj-cta-grid {
    display: grid;
    grid-template-columns: 2.1fr 1.1fr 1.1fr;
    gap: 1.5rem;
    align-items: stretch;
}

/* 1) Primary Call CTA */
.cj-cta-primary {
    background: linear-gradient(120deg, #b91c1c 0%, #ef4444 45%, #fb923c 100%);
    border-radius: 6px;
    padding: 1.6rem 1.8rem;
    color: #ffffff;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.4rem;
    box-shadow: 0 16px 32px rgba(185, 28, 28, 0.55);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-position 0.25s ease;
    background-size: 180% auto;
}

.cj-cta-primary-text {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.cj-cta-kicker {
    font-size: 0.95rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.9;
}

.cj-cta-title {
    font-size: 1.4rem;
    font-weight: 700;
}

.cj-cta-phone-wrap {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 1.2rem;
    font-weight: 600;
}

.cj-cta-phone-icon {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, 0.12);
}

.cj-cta-phone-icon i {
    font-size: 1.15rem;
}

/* Hover animation */
.cj-cta-primary:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 45px rgba(15, 23, 42, 0.55);
    background-position: right center;
}

/* 2) Download tiles */
.cj-cta-tile {
    background: #e5e7eb;
    border-radius: 6px;
    padding: 1.3rem 1.3rem 1.2rem;
    text-decoration: none;
    color: #111827;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0.9rem;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.18);
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.cj-cta-tile-text {
    font-size: 0.96rem;
    font-weight: 600;
    line-height: 1.3;
    text-align: left;
}

.cj-cta-tile-text span:nth-child(2) {
    display: block;
}

.cj-cta-tile-icon {
    display: flex;
    justify-content: flex-end;
    font-size: 1.6rem;
    color: #111827;
}

.cj-cta-tile:hover {
    background: #f3f4f6;
    transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(15, 23, 42, 0.25);
}


.cj-academy {
    background: radial-gradient(circle at top, #fef3f2 0%, #e5edf8 42%, #e5e7eb 100%);
}

.cj-academy-shell {
    position: relative;
    /*padding-top: 3.5rem;*/
    padding-bottom: 4.2rem;      /* extra space so card corners are never hidden */
}

.cj-academy-heading {
    text-align: center;
    margin-bottom: 2.4rem;
}

.cj-academy-heading h2 {
    font-size: 2.1rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #111827;
}

.cj-academy-heading .cj-section-underline {
    margin-bottom: 0;
}

/* viewport: hide only horizontal overflow so shadows/corners show fully */
.cj-academy-viewport {
    overflow-x: hidden;
    overflow-y: visible;
    padding-block: 1.7rem 2.3rem;
}

/* track: we slide this left/right */
.cj-academy-track {
    display: flex;
    width: 100%;
    will-change: transform;
    transition: transform 0.55s ease;   /* smooth slide */
}

/* each slide = 100% width of viewport */
.cj-academy-slide {
    flex: 0 0 100%;
    padding-inline: 0.25rem;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.8rem;
}

/* cards */
.cj-academy-card {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.16);
    padding: 1.8rem 1.6rem 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.75rem;
    position: relative;
    overflow: hidden;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        border-color 0.22s ease,
        background 0.22s ease;
	height: 410px;
}

.cj-academy-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top, rgba(239, 68, 68, 0.16), transparent 55%);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

.cj-academy-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22);
}

.cj-academy-card:hover::before {
    opacity: 1;
}

/* round gradient icon */
.cj-academy-icon {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 20%, #ffffff 0%, #bfdbfe 38%, #0ea5e9 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 24px rgba(59, 130, 246, 0.35);
    margin-bottom: 0.75rem;
}

.cj-academy-icon i {
    font-size: 2rem;
    color: #ffffff;
}

/* title + text */
.cj-academy-card h3 {
    font-size: 1rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: #111827;
}

.cj-academy-card p {
    font-size: 0.9rem;
    color: #4b5563;
    min-height: 3.1rem;
}

/* CTA button inside card */
.cj-academy-card .cj-core-btn {
    margin-top: 0.4rem;
}

/* arrows */
.cj-academy-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: none;
    background: #ffffff;
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
    z-index: 5;
}

.cj-academy-arrow svg {
    width: 18px;
    height: 18px;
    stroke: #111827;
}

.cj-academy-prev { left: -0.2rem; }
.cj-academy-next { right: -0.2rem; }

.cj-academy-arrow:hover {
    transform: translateY(-50%) translateY(-2px);
    background: #f97316;
    box-shadow: 0 16px 32px rgba(249, 115, 22, 0.55);
}

.cj-academy-arrow:hover svg {
    stroke: #ffffff;
}

/* dots */
.cj-academy-dots {
    display: flex;
    justify-content: center;
    gap: 0.45rem;
    margin-top: 0.4rem;
}

.cj-academy-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.4);
    background: transparent;
    padding: 0;
    cursor: pointer;
    transition: width 0.25s ease, background 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}

.cj-academy-dot.is-active {
    width: 22px;
    background: #b91c1c;
    border-color: transparent;
    transform: translateY(-1px);
}

/* ========= WHY CYBERJURE ========= */

.cj-why-cyberjure {
    padding: 3.8rem 1.5rem 4.2rem;
    background: radial-gradient(circle at top left, #eef2ff 0%, #f9fafb 45%, #e5e7eb 100%);
}

.cj-why-wrapper {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    gap: 2.8rem;
    align-items: center;
}

/* heading + intro */
.cj-why-heading h2 {
  font-size: 2.1rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #111827;
}

.cj-why-intro {
    font-size: 0.98rem;
    line-height: 1.7;
    color: #374151;
    max-width: 32rem;
    margin-bottom: 1.8rem;
}

/* bullets */
.cj-why-bullets {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    margin-bottom: 1.9rem;
}

.cj-why-bullet {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    background: #ffffff;
    padding: 0.75rem 1.1rem;
    border-radius: 999px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
}

.cj-why-bullet-icon {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: radial-gradient(circle at 30% 20%, #fee2e2 0%, #b91c1c 80%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
}

.cj-why-bullet-icon i {
    font-size: 0.95rem;
}

.cj-why-bullet-text {
    font-size: 0.9rem;
    font-weight: 600;
    color: #111827;
}

/* footer stat strip */
.cj-why-meta {
    margin-top: 0.4rem;
    padding: 0.55rem 0.9rem;
    background: #111827;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 0.85rem;
    color: #e5e7eb;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.6);
}

.cj-why-meta-item {
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
}

.cj-why-meta-label {
    font-size: 0.9rem;
    font-weight: 700;
    color: #ffffff;
}

.cj-why-meta-desc {
    font-size: 0.78rem;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    opacity: 0.85;
}

.cj-why-meta-divider {
    width: 1px;
    height: 26px;
    background: rgba(249, 250, 251, 0.25);
}

/* right side visual */
.cj-why-right {
    display: flex;
    justify-content: center;
}

.cj-why-visual {
    position: relative;
    max-width: 420px;
    width: 100%;
}

.cj-why-visual-bg {
    position: absolute;
    inset: 8% 6% 0 6%;
    border-radius: 999px 999px 0 0;
    background: radial-gradient(circle at top, rgba(248, 113, 113, 0.38), transparent 70%);
    opacity: 0.85;
    filter: blur(1px);
    pointer-events: none;
}

.cj-why-founder {
    position: relative;
    margin: 0;
    /*border-radius: 999px 999px 0 0;*/
    overflow: hidden;
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.45);
    background: #0b1120;
	border-radius: 14px;

}

.cj-why-founder img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* subtle hover */
.cj-why-founder:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.6);
    transition: transform 0.22s ease, box-shadow 0.22s ease;
}
.cj-why-left {text-align:-webkit-left}


/* ========= LATEST BLOG UPDATES ========= */


.cj-latest-blogs {
    padding: 3.6rem 1.5rem 4rem;
    background: #ffffff;
}

.cj-latest-blogs .cj-section-header h2 {
    /*text-align: left;*/
}

.cj-latest-blogs .cj-section-underline {
    margin-left: 0;
}

/* 4 cards in one row on desktop */
.cj-blogs-grid {
    margin-top: 2.2rem;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.8rem;
}

/* blog card as vertical card */
.cj-blog-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    background: #ffffff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 12px 26px rgba(15, 23, 42, 0.12);
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

/* thumbnail on top */
.cj-blog-thumb {
    width: 100%;
    height: 150px;
    background: #e5e7eb;
    overflow: hidden;
}

.cj-blog-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.22s ease;
}

/* body below */
.cj-blog-body {
    padding: 0.95rem 1rem 1.05rem;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

/* text styles */
.cj-blog-body h3 {
    font-size: 0.98rem;
    font-weight: 600;
    color: #111827;
    margin-bottom: 0.1rem;
}

.cj-blog-meta {
    font-size: 0.8rem;
    color: #6b7280;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.cj-blog-date i {
    margin-right: 0.25rem;
    color: #9ca3af;
}

.cj-blog-excerpt {
    font-size: 0.86rem;
    line-height: 1.55;
    color: #4b5563;
    margin-top: 0.1rem;
}

/* Learn More line */
.cj-blog-readmore {
    margin-top: 0.4rem;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #b91c1c;
    /*display: inline-flex;*/
    align-items: center;
    gap: 0.3rem;
}

.cj-blog-readmore i {
    font-size: 0.8rem;
}

/* hover effects */
.cj-blog-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.18);
}

.cj-blog-card:hover .cj-blog-thumb img {
    transform: scale(1.06);
}

.cj-blog-card:hover .cj-blog-body h3 {
    color: #b91c1c;
}

/* ========= CLIENTS & TESTIMONIALS ========= */

/* ========= CLIENTS & TESTIMONIALS ========= */

.cj-clients-testimonials {
    padding: 3.8rem 1.5rem 4rem;
    background: #f9fafb;
}

.cj-ct-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 2.2rem;
}

.cj-ct-panel {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.12);
    padding: 2.1rem 2rem 2.3rem;
    position: relative;
}

.cj-ct-header h2 {
    font-size: 1.4rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #111827;
    text-align: center;
}

.cj-ct-header .cj-section-underline {
    display: block;
    margin: 0.4rem auto 1.6rem;
}

/* ---------- CLIENT LOGO SLIDER ---------- */

.cj-client-viewport {
    margin-top: 0.4rem;
    overflow: hidden;
}

.cj-client-track {
    display: flex;
    transition: transform 0.4s ease-in-out;
    will-change: transform;
}

.cj-client-slide {
    flex: 0 0 100%;
    padding-top: 0.6rem;
}

/* 2 rows x 3 logos (6 per slide) */
.cj-client-logos {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.8rem;
}

.cj-client-logos li {
    background: #f9fafb;
    border-radius: 10px;
    border: 1px solid #fee2e2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.7rem;
    transition: box-shadow 0.18s ease, transform 0.18s ease, border-color 0.18s ease;
}

.cj-client-logos img {
    max-width: 100%;
    max-height: 40px;
    object-fit: contain;
    display: block;
}

.cj-client-logos li:hover {
    border-color: #b91c1c;
    box-shadow: 0 10px 24px rgba(185, 28, 28, 0.25);
    transform: translateY(-3px);
}

/* client dots */
.cj-client-dots {
    margin-top: 1.4rem;
    display: flex;
    justify-content: center;
    gap: 0.4rem;
}

.cj-client-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    border: none;
    background: #d1d5db;
    cursor: pointer;
    padding: 0;
    transition: background 0.18s ease, width 0.18s ease;
}

.cj-client-dot-active,
.cj-client-dot.is-active {
    width: 18px;
    background: #b91c1c;
}

/* ---------- TESTIMONIAL SLIDER ---------- */

.cj-testimonial-panel {
    text-align: left;
}

.cj-testimonial-shell {
    overflow: hidden;
   /* padding: 1rem 2rem 1.4rem;   /* even padding, no big right gap */*/
}

/* make track a proper horizontal strip */
.cj-testimonial-track {
    display: flex;
}


/* each testimonial fills full width */
.cj-testimonial-item {
    flex: 0 0 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0;                  /* remove right padding that was pushing next slide in */
}
.cj-testimonial-quote,
.cj-testimonial-text {
   /* text-align: center;*/
}
.cj-testimonial-text {
    font-size: 0.95rem;
    line-height: 1.7;
    color: #111827;
    margin-bottom: 1.1rem;
}

/* footer – left aligned */
.cj-testimonial-footer {
    justify-content: flex-start;
}

.cj-testimonial-avatar {
    width: 46px;
    height: 46px;
    border-radius: 999px;
    background: radial-gradient(circle at 30% 20%, #fee2e2 0%, #b91c1c 80%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-weight: 700;
    font-size: 0.9rem;
	float: left;
    margin-right: 15px;
}

.cj-testimonial-person {
    text-align: left;
}

.cj-testimonial-person h4 {
    font-size: 0.95rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.1rem;
}

.cj-testimonial-person p {
    font-size: 0.8rem;
    color: #4b5563;
}

/* arrows */

.cj-testimonial-nav {
    position: absolute;
    top: 45%;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 1px solid #e5e7eb;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

/* completely hide left/right arrows */
.cj-testimonial-nav,
.cj-testimonial-prev,
.cj-testimonial-next {
    display: none !important;
}
/* testimonial dots */

.cj-testimonial-dots {
    margin-top: 1.2rem;
    display: flex;
    justify-content: center;
    gap: 0.45rem;
}

.cj-testimonial-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    border: 1px solid #d1d5db;
    background: transparent;
    cursor: pointer;
    padding: 0;
    transition: background 0.18s ease, width 0.18s ease, border-color 0.18s ease;
}

.cj-testimonial-dot.is-active {
    width: 20px;
    background: #b91c1c;
    border-color: #b91c1c;
}


/* ========= CYBER CRIME CASES ========= */

.cj-crime-cases {
    padding: 4rem 1.5rem;
    background: #f9fafb;
}

.cj-crime-row {
    margin-top: 2.2rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.8rem;
}

/* card: image left, text right */
.cj-crime-case {
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.14);
    display: flex;
    min-height: 210px;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.cj-crime-case:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 45px rgba(185, 28, 28, 0.25);
}

/* left image */
.cj-crime-media {
    flex: 0 0 40%;
    min-width: 40%;
    position: relative;
}

.cj-crime-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* right content */
.cj-crime-body {
    flex: 1;
    padding: 1.3rem 1.6rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.cj-crime-body h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.4rem;
}

.cj-crime-body p {
    font-size: 0.9rem;
    color: #4b5563;
    line-height: 1.6;
    margin-bottom: 0.9rem;
}

/* Learn more button, in theme */
.cj-crime-link {
    display: inline-block;
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 0.45rem 1.1rem;
    border-radius: 999px;
    border: 1px solid #b91c1c;
    color: #b91c1c;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.cj-crime-link:hover {
    background: #b91c1c;
    color: #ffffff;
    border-color: #b91c1c;
}

/* View All button centered (uses your existing cj-btn styles) */
.cj-crime-viewall {
    margin-top: 2.4rem;
    text-align: center;
}

.cj-crime-viewall .cj-btn-primary {
    padding: 0.7rem 1.9rem;
}

/* ========= FOOTER – LIGHT 3-COLUMN LAYOUT ========= */

/* ========= FOOTER – LIGHT 3-COLUMN LAYOUT ========= */

.cj-footer {
  padding: 3rem 1.5rem 2.5rem;
  background: linear-gradient(135deg, #f5f5f7, #e5e7eb);
}

.cj-footer-shell {
  max-width: 1200px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 22px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12);
  overflow: hidden;
}

/* Main footer grid */
.cj-footer-main {
  padding: 1.8rem 2.4rem 1.6rem; /* keep as you want */
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr); /* ✅ FIXED */
  gap: 2.4rem;
  color: #111827;
  background: #f9fafb;
}

.cj-footer-col {
  font-size: 0.86rem;
}

/* LEFT: logo + brand text */
.cj-footer-logo {
  display: flex;
  align-items: center;
  gap: 0.9rem;
}

.cj-footer-logo img {
  width: 54px;
  height: 54px;
  border-radius: 12px;
  background: #ffffff;
  object-fit: contain;
  padding: 0.3rem 0.45rem;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.1);
}

.cj-footer-brandtext h3 {
  font-size: 1.02rem;
  font-weight: 700;
  margin: 0 0 0.05rem;
}

.cj-footer-brandtext p {
  font-size: 0.8rem;
  color: #6b7280;
  margin: 0;
}

/* Headings */
.cj-footer-heading {
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0 0 0.6rem;
  color: #111827;
}

/* MIDDLE: quick links (2 columns) */
.cj-footer-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1.8rem;
  row-gap: 0.35rem;
}

.cj-footer-links li {
  margin: 0;
}

.cj-footer-links a {
  color: #374151;
  text-decoration: none;
  font-size: 0.86rem;
}

.cj-footer-links a:hover {
  color: #b91c1c;
  text-decoration: underline;
}

/* RIGHT: contact + social */
.cj-footer-contact {
  list-style: none;
  margin: 0 0 0.8rem;
  padding: 0;
}

.cj-footer-contact li {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  margin: 0 0 0.35rem;
}

.cj-footer-contact i {
  color: #b91c1c;
  font-size: 0.9rem;
}

.cj-footer-contact a {
  color: #374151;
  text-decoration: none;
  font-size: 0.86rem;
}

.cj-footer-contact a:hover {
  color: #b91c1c;
  text-decoration: underline;
}

/* social icons */
.cj-footer-social {
  display: flex;
  gap: 0.45rem;
  margin-top: 0.2rem;
}

.cj-footer-social a {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid #d1d5db;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #4b5563;
  font-size: 0.8rem;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.cj-footer-social a:hover {
  background: #b91c1c;
  border-color: #b91c1c;
  color: #ffffff;
  transform: translateY(-2px);
}

.footer-logo img { width: 90%; }

/* Bottom strip */
.cj-footer-bottom {
  border-top: 1px solid #e5e7eb;
  background: #f3f4f6;
  padding: 0.6rem 2.4rem 0.8rem;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  font-size: 0.78rem;
  color: #6b7280;
}

.cj-footer-bottom a {
  color: #b91c1c;
  text-decoration: none;
}

.cj-footer-bottom a:hover {
  text-decoration: underline;
}

/* ===== Footer responsive ===== */
@media (max-width: 992px) {
  .cj-footer-main {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.1fr);
    row-gap: 1.8rem;
  }
}

@media (max-width: 540px) {
  .cj-footer-main {
    grid-template-columns: 1fr;
    padding: 1.6rem 1.3rem 1.3rem;
    row-gap: 1.5rem;
  }

  .cj-footer-links {
    grid-template-columns: 1fr; /* single column links on mobile */
  }

  .cj-footer-bottom {
    padding-inline: 1.6rem;
    flex-direction: column;
    align-items: flex-start;
  }
}

/* responsive start from here */

@media (max-width: 992px) {
    .cj-why-wrapper {
        grid-template-columns: minmax(0, 1fr);
        gap: 2.4rem;
    }

    .cj-why-right {
        justify-content: flex-start;
    }

    .cj-why-visual {
        max-width: 360px;
    }
	
	.cj-blogs-grid {
        grid-template-columns: 1fr;
        column-gap: 0;
    }

    .cj-blog-card:nth-child(2n) {
        border-left: none;
        padding-left: 0;
    }
	
	.cj-ct-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .cj-testimonial-shell {
       /* padding-right: 2.3rem;*/
    }
	
	.cj-crime-row {
        grid-template-columns: 1fr;
    }
	  .cj-footer-main {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.1fr);
        row-gap: 1.8rem;
    }
}

@media (max-width: 1024px) {
    .cj-academy-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cj-academy-shell {
        grid-template-columns: 1fr;
        row-gap: 1.6rem;
    }

    .cj-academy-arrow.cj-academy-prev,
    .cj-academy-arrow.cj-academy-next {
        justify-self: center;
    }
	 .cj-academy-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cj-academy-shell {
        gap: 1rem;
    }
	.cj-academy-slide {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1.5rem;
    } 
	
	.cj-core-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}



/* ========== RESPONSIVE ========== */
@media (max-width: 900px) {
	
    .cj-section{
        padding: 3rem 1.25rem 3.4rem;
    }

    /* Hide desktop nav on small screens – use panel only */
    .cj-nav-main {
        display: none;
    }

    .cj-nav-panel {
        padding-top: 4rem;
    }

    /* On mobile, items with cj-panel-desktop-hidden are visible */
    .cj-panel-desktop-hidden {
        display: block;
    }

    .cj-hero {
        height: 80vh;
        min-height: 520px;
    }

    .cj-hero-content {
        padding-top: 4.5rem;
    }

    .cj-hero-content p {
        max-width: 100%;
    }
	 .cj-cta-grid {
        grid-template-columns: 1fr 1fr;
    }

    .cj-cta-primary {
        grid-column: 1 / -1;  /* spans full width on tablet/mobile */
    }
	
}
@media (max-width: 768px) {
    .cj-section {
        padding: 2.8rem 1.25rem 3.2rem;
    }

    .cj-section-header h2 {
        font-size: 1.6rem;
    }

    .cj-core-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1.2rem;
    }

    .cj-core-card {
        padding: 1.4rem 1.2rem 1.2rem;
    }
	  .cj-academy-shell {
        padding-top: 3rem;
        padding-bottom: 3.5rem;
    }

    .cj-academy-slide {
        grid-template-columns: 1fr;
        max-width: 420px;
        margin: 0 auto;
    }

    .cj-academy-arrow {
        display: none; /* let users swipe / use dots on mobile */
    }
}

    .cj-academy-viewport {
        width: 100%;
    }
	.cj-why-meta-item {margin-left:20px}
	
.cj-footer-main {
       /* grid-template-columns: minmax(0, 1fr);*/
        padding: 1.6rem 1.3rem 1.3rem;
    }

    .cj-footer-bottom {
        padding-inline: 1.6rem;
       /* flex-direction: column;*/
        align-items: flex-start;
    }
	 .cj-footer-links {
        grid-template-columns: minmax(0, 1fr);
    }
	


}
@media (max-width: 640px) {
    .cj-academy-grid {
        grid-template-columns: 1fr;
    }

    .cj-academy {
        padding: 3rem 1.25rem 3.3rem;
    }
	
	 .cj-why-cyberjure {
        padding: 3.2rem 1.25rem 3.5rem;
    }

    .cj-why-heading h2 {
        font-size: 1.6rem;
        text-align: left;
    }

    .cj-why-intro {
        font-size: 0.95rem;
    }

    .cj-why-meta {
        width: 100%;
        justify-content: center;
        text-align: center;
        border-radius: 999px;
        flex-wrap: wrap;
    }

    .cj-why-meta-divider {
        display: none;
    }

    .cj-why-meta-item {
        align-items: center;
    }

    .cj-why-visual {
        max-width: 320px;
        margin: 0 auto;
    }
	
	 .cj-latest-blogs {
        padding: 3.2rem 1.25rem 3.5rem;
    }

    .cj-blog-thumb {
        flex: 0 0 100px;
        width: 100px;
        height: 70px;
    }

    .cj-blog-body h3 {
        font-size: 0.94rem;
    }

    .cj-blog-excerpt {
        font-size: 0.84rem;
    }
	
	.cj-clients-testimonials {
        padding: 3.3rem 1.25rem 3.6rem;
    }

    .cj-ct-panel {
        padding: 1.7rem 1.5rem 2rem;
    }

 
 
	
	.cj-clients-testimonials {
        padding: 3.3rem 1.25rem 3.6rem;
    }

    .cj-ct-panel {
        padding: 1.7rem 1.5rem 2rem;
    }

    .cj-testimonial-shell {
      /*  padding-right: 2rem;*/
    }
	
	.cj-crime-case {
        flex-direction: column;
    }
    .cj-crime-media {
        flex: 0 0 auto;
        min-width: 100%;
        height: 180px;
    }
	.cj-crime-media {display:none}
}

@media (max-width: 540px) {
    .cj-logo img {
        height: 55px;
    }

    .cj-hero-content h1 {
        font-size: 1.8rem;
        letter-spacing: 0.14em;
    }

    .cj-hero-content p {
        font-size: 0.95rem;
    }

    .cj-btn {
        font-size: 0.8rem;
        letter-spacing: 0.11em;
    }
	
	.cj-hero {
 
    height: 50vh;
 
}
 .cj-core-grid {
        grid-template-columns: 1fr;
    }

    .cj-section-underline {
        width: 110px;
        margin-bottom: 1.8rem;
    }
	
	 .cj-section-header h2 {
        font-size: 1.7rem;
    }

    .cj-section-underline {
        width: 110px;
        margin-bottom: 1.9rem;
    }

    .cj-core-card {
        padding: 1.5rem 1.3rem 1.3rem;
    }
	 .cj-cta-grid {
        grid-template-columns: 1fr;
    }

    .cj-cta-primary {
        padding: 1.4rem 1.3rem;
        flex-direction: column;
        align-items: flex-start;
    }

    .cj-cta-phone-wrap {
        font-size: 1.05rem;
    }

    .cj-cta-strip {
        padding: 2.4rem 1.25rem 3rem;
    }
	.cj-footer-main {
        grid-template-columns: minmax(0, 1fr); /* single column */
        row-gap: 1.5rem;
    }
	.cj-crime-media {display:none}
}
/* ===============================
   SERVICES DROPDOWN – 2 COLUMNS
   Desktop only (safe change)
================================ */

.cj-dropdown.cj-services-2col {
    display: grid;
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    column-gap: 2px;
    row-gap: 2px;
    min-width: 560px;
}

/* Keep hover feel clean */
.cj-dropdown.cj-services-2col li a {
    white-space: nowrap;
}

/* give some space below SERVICES without using margin */
.cj-nav-main .cj-has-dropdown .cj-dropdown {
    top: calc(100% + 14px);   /* increase/decrease spacing here */
}

/* create an invisible hover bridge so it doesn't close while moving mouse */
.cj-nav-main .cj-has-dropdown::after {
    content: "";
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    height: 16px;            /* should match the gap above */
    background: transparent;
}

/* optional: smoother feel (not delay, just smoother fade) */
.cj-nav-main .cj-dropdown {
    transition: opacity 0.18s ease, transform 0.18s ease;
    transform: translateY(-4px);
}

.cj-nav-main .cj-has-dropdown:hover .cj-dropdown,
.cj-nav-main .cj-has-dropdown:focus-within .cj-dropdown {
    transform: translateY(0);
}


/* Tablet & below → single column */
@media (max-width: 1024px) {
    .cj-dropdown.cj-services-2col {
        grid-template-columns: 1fr;
        min-width: 280px;
    }
}
/* ===================== CJ ABOUT PAGE (SCOPED) ===================== */
.cj-wrap{
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}

.cj-section{

  padding: 70px 0;
  background:linear-gradient(to bottom, #e5e7eb 0%, #dde0e5 100%)
}
.cj-section p{
margin: 10px 0 10px;}
.cj-section__head{
  margin-bottom: 22px;
}

.cj-kicker{
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;

  margin: 0 0 10px;
}

.cj-h2{
  margin: 0 0 10px;
  font-size: clamp(22px, 2.2vw, 34px);
  line-height: 1.2;
}

.cj-h3{
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.3;
}

.cj-muted{
  opacity: .85;
}

.cj-lead{
  font-size: 15px;
  line-height: 1.7;
  margin: 10px 0 18px;
}

/* ===================== INNER HERO ===================== */
.cj-inner-hero{
  position: relative;
  min-height: 30vh; /* ~40% feel, adjust if your home hero is huge */
  display: grid;
  place-items: center;
  overflow: hidden;
}

.cj-inner-hero__bg{
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.03);
}

.cj-inner-hero__overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.58);
}

.cj-inner-hero__content{
  position: relative;
  text-align: left;
  padding: 60px 0;
  color: #fff;
}

.cj-inner-hero__title{
  margin: 0 0 10px;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.05;
}

.cj-breadcrumb{
  display: inline-flex;
  gap: 10px;
  align-items: center;
  font-size: 14px;
  opacity: .9;
}

.cj-breadcrumb__link{
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.cj-breadcrumb__link:hover{
  border-bottom-color: rgba(255,255,255,.75);
}

.cj-breadcrumb__sep{
  opacity: .75;
}

.cj-breadcrumb__current{
  opacity: .9;
}

/* ===================== CARDS ===================== */
.cj-card{
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
}

.cj-card--pad{
  padding: 26px;
}

.cj-card--soft{
  background: #fff;
}

.cj-divider{
  height: 1px;
  background: rgba(0,0,0,.1);
  margin: 20px 0;
}

/* ===================== ABOUT GRID ===================== */
.cj-about__grid{
  display: grid;
  grid-template-columns: 1.4fr .6fr;
  gap: 22px;
  align-items: start;
}

.cj-featureGrid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
}

.cj-feature{
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 12px;
  padding: 14px 14px;
  background: #fff;
}

.cj-feature__title{
  font-weight: 700;
  margin-bottom: 6px;
  font-size: 13px;
  opacity: .9;
}

.cj-feature__text{
  font-size: 13px;
  opacity: .85;
}

/* ===================== LISTS ===================== */
.cj-bullets{
  margin: 12px 0 0;
  padding-left: 18px;
}

.cj-bullets li{
  margin: 8px 0;
  line-height: 1.6;
}

.cj-list{
  margin: 12px 0 0;
  padding-left: 18px;
}

.cj-list--two{
  columns: 2;
  column-gap: 24px;
}

.cj-list--two li{
  break-inside: avoid;
  margin: 8px 0;
}

/* ===================== FOUNDER ===================== */
.cj-founder{
  background: radial-gradient(circle at top, #fef3f2 0%, #e5edf8 42%, #e5e7eb 100%);
}

.cj-founder__grid{
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 26px;
  align-items: start;
}

.cj-founder__media{
  position: relative;
}

.cj-founder__frame{
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 18px 45px rgba(0,0,0,.12);
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
}

.cj-founder__img{
  width: 100%;
  height: auto;
  display: block;
}

.cj-founder__tag {
    /* position: absolute; */
    left: 16px;
    bottom: -14px;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(0, 0, 0, .82);
    color: #fff;
    backdrop-filter: blur(8px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
    max-width: 38%;
    margin-top: -17%;
}

.cj-founder__tagTop{
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  opacity: .8;
}

.cj-founder__tagName{
  font-size: 16px;
  font-weight: 800;
  margin-top: 4px;
}

.cj-founder__tagSub{
  font-size: 12px;
  opacity: .85;
  margin-top: 4px;
}

.cj-founder__content p{
  line-height: 1.8;
}

.cj-pillgrid{
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cj-pill{
  display: inline-flex;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
  font-size: 13px;
  opacity: .9;
}

/* ===================== AWARDS ===================== */
.cj-awards__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  margin-top: 18px;
}

.cj-award{
  display: grid;
  grid-template-columns: 66px 1fr;
  gap: 16px;
  padding: 18px 18px;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
}

.cj-award__no{
  width: 56px;
  height: 56px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-weight: 800;
  background: rgb(201 61 0 / 14%);
  border: 1px solid rgba(0,0,0,.08);
}

.cj-award__body p{
  line-height: 1.75;
}

/* ===== CJ GALLERY (4 in a row + proper aspect ratio) ===== */
.cj-gallery__grid{
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.cj-gallery__item{
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 10px 24px rgba(0,0,0,.06);
  display: block;
  background: #fff;
}

.cj-gallery__item img{
  width: 100%;
  height: 220px;            /* nice height for desktop */
  object-fit: cover;        /* crops nicely */
  display: block;
  transition: transform .35s ease;
}

.cj-gallery__item:hover img{
  transform: scale(1.05);
}

/* ===== CJ LIGHTBOX ===== */
.cj-lightbox{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.82);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 22px;
}

.cj-lightbox.is-open{
  display: flex;
}

.cj-lightbox__stage{
  max-width: min(1100px, 96vw);
  max-height: 86vh;
  display: grid;
  place-items: center;
}

.cj-lightbox__img{
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 86vh;
  border-radius: 16px;
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
}

.cj-lightbox__close{
  position: absolute;
  top: 14px;
  right: 18px;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(255,255,255,.10);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
.cj-lightbox__close:hover{
  background: rgba(255,255,255,.18);
}

/* Tablet */
@media (max-width: 980px){
  .cj-gallery__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .cj-gallery__item img{
    height: 200px;
  }
    .cj-inner-hero {
    position: relative;
  min-height: 20vh;}
}

/* Mobile */
@media (max-width: 520px){
  .cj-gallery__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .cj-gallery__item img{
    height: 160px;
  }

}


/* =========================================================
   RESPONSIVE about us
========================================================= */

/* <= 992px: stack About + Founder cleanly */
@media (max-width: 992px) {
  .cj-section.cj-about .cj-about__grid,
  .cj-section.cj-about .aboutGrid,
  .cj-section.cj-about .about-grid,
  .cj-section.cj-founder .cj-founder__grid,
  .cj-section.cj-founder .founderGrid,
  .cj-section.cj-founder .founder-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .cj-section.cj-about .cj-featureGrid,
  .cj-section.cj-about .featureGrid,
  .cj-section.cj-about .featuresGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* <= 768px: tighten spacing + 1-col features */
@media (max-width: 768px) {
  .cj-section.cj-about,
  .cj-section.cj-founder {
    padding: 44px 0; /* keeps your global style intact, only improves mobile */
  }

  .cj-section.cj-about .cj-section-inner,
  .cj-section.cj-founder .cj-section-inner {
    padding-left: 14px;
    padding-right: 14px;
  }

  .cj-section.cj-about .cj-featureGrid,
  .cj-section.cj-about .featureGrid,
  .cj-section.cj-about .featuresGrid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  /* If any cards have large padding on mobile */
  .cj-section.cj-about .cj-card,
  .cj-section.cj-founder .cj-card,
  .cj-section.cj-about .card,
  .cj-section.cj-founder .card {
    padding: 16px !important;
  }
  
  /* ===== Mobile Panel Accordion ===== */
.cj-panel-acc {
  border-top: 1px solid rgba(255,255,255,0.08);
  padding-top: 0.35rem;
}

.cj-panel-acc-btn {
  width: 100%;
  background: transparent;
  border: none;
  color: #f9fafb;
  text-align: left;
  padding: 0.75rem 0;
  font-size: 0.95rem;
  text-transform: uppercase;
  letter-spacing: 0.13em;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.cj-panel-acc-icon {
  width: 10px;
  height: 10px;
  border-right: 2px solid rgba(255,255,255,0.85);
  border-bottom: 2px solid rgba(255,255,255,0.85);
  transform: rotate(45deg);
  transition: transform 0.2s ease;
  margin-left: 1rem;
}

.cj-panel-acc-btn[aria-expanded="true"] .cj-panel-acc-icon {
  transform: rotate(-135deg);
}

.cj-panel-acc-sub {
  list-style: none;
  padding: 0.15rem 0 0.75rem 0.9rem;
  margin: 0;
  display: none;
}

.cj-panel-acc-sub a {
  color: #e5e7eb;
  text-decoration: none;
  display: block;
  padding: 0.5rem 0;
  font-size: 0.88rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.cj-panel-acc-sub a:hover {
  color: #ffffff;
}
}

/* <= 540px: prevent text overflow + better readability */
@media (max-width: 540px) {
  .cj-section.cj-about h2,
  .cj-section.cj-founder h2 {
    line-height: 1.2;
  }

  .cj-section.cj-about p,
  .cj-section.cj-founder p {
    font-size: 0.95rem;
  }

  /* If any badges/chips exist */
  .cj-section.cj-founder .cj-pillgrid,
  .cj-section.cj-founder .pillgrid,
  .cj-section.cj-founder .pills {
    gap: 8px;
  }

  .cj-section.cj-founder .cj-pill,
  .cj-section.cj-founder .pill {
    font-size: 0.85rem;
    padding: 8px 10px;
  }
}
/* ========= SERVICES PAGE (minimal additions) ========= */

.cj-services-hero{
  background: radial-gradient(1200px 600px at 20% 10%, rgba(185, 28, 28, .10), transparent 55%),
              radial-gradient(1000px 600px at 80% 25%, rgba(3, 105, 161, .10), transparent 55%),
              linear-gradient(180deg, #ffffff 0%, #f3f4f6 100%);
}

.cj-services-hero-grid{
  margin-top: 1.2rem;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .95fr);
  gap: 1.6rem;
  align-items: start;
  text-align: left;
}

.cj-services-lead{
  font-size: 1rem;
  color: #374151;
  line-height: 1.75;
  max-width: 44rem;
}

.cj-services-actions{
  margin-top: 1.2rem;
  display: flex;
  gap: 0.7rem;
  flex-wrap: wrap;
  align-items: center;
}

.cj-services-outline{
  border-color: rgba(17, 24, 39, .35);
  color: #111827;
}

.cj-services-statcard{
  background: #111827;
  color: #e5e7eb;
  border-radius: 18px;
  padding: 1.25rem 1.25rem 1.05rem;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.35);
  overflow: hidden;
  position: relative;
}

.cj-services-statcard::before{
  content:"";
  position:absolute;
  inset:-40% -30% auto -30%;
  height: 220px;
  background: radial-gradient(circle at 30% 30%, rgba(239, 68, 68, .35), transparent 60%);
  pointer-events:none;
}

.cj-services-stat-top{
  display:flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  position: relative;
  z-index: 1;
}

.cj-services-stat-badge{
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #9ca3af;
}

.cj-services-stat-big{
  font-size: 1.6rem;
  font-weight: 800;
  color: #ffffff;
}

.cj-services-stat-text{
  margin-top: 0.75rem;
  font-size: 0.92rem;
  line-height: 1.7;
  color: #d1d5db;
  position: relative;
  z-index: 1;
}

.cj-services-stat-foot{
  margin-top: 0.9rem;
  padding-top: 0.85rem;
  border-top: 1px solid rgba(255,255,255,.14);
  display:flex;
  gap: 0.6rem;
  align-items: center;
  font-size: 0.88rem;
  color: #ffffff;
  position: relative;
  z-index: 1;
}

.cj-services-map{
  background: linear-gradient(to bottom, #e5e7eb 0%, #dde0e5 100%);
}

.cj-services-grid{
  margin-top: 0.2rem; /* keep consistent with your existing section rhythm */
}

.cj-services-detail{
  background: #ffffff;
}

.cj-services-detail-grid{
  display:grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: 2rem;
  align-items: start;
  text-align: left;
}

.cj-services-minihead h2{
  font-size: 1.7rem;
  letter-spacing: 0.12em;
}

.cj-services-copy{
  color:#374151;
  font-size: 0.98rem;
  line-height: 1.75;
  margin-top: 0.3rem;
}

.cj-services-points{
  margin-top: 1.2rem;
  display:flex;
  flex-direction: column;
  gap: 0.75rem;
}

.cj-services-point{
  background: #f9fafb;
  border: 1px solid rgba(17, 24, 39, .08);
  border-radius: 999px;
  padding: 0.75rem 1rem;
  display:flex;
  gap: 0.75rem;
  align-items: center;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.10);
}

.cj-services-point-ico{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 20%, #fee2e2 0%, #b91c1c 80%);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  flex: 0 0 34px;
}

.cj-services-point-txt{
  font-size: 0.9rem;
  font-weight: 600;
  color: #111827;
}

.cj-services-panel{
  background: #f9fafb;
  border-radius: 18px;
  padding: 1.25rem 1.25rem 1.35rem;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.12);
  border: 1px solid rgba(17, 24, 39, .08);
}

.cj-services-panel-title{
  margin: 0 0 0.9rem;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #111827;
}

.cj-services-chips{
  display:flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.cj-chip{
  display:inline-flex;
  align-items:center;
  padding: 0.45rem 0.7rem;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(185, 28, 28, .18);
  color: #111827;
  font-size: 0.86rem;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.08);
}

.cj-services-others{
  background: #f9fafb;
}

.cj-services-othergrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.2rem;
  text-align: left;
}

.cj-services-infocard{
  background: #ffffff;
  border-radius: 18px;
  padding: 1.35rem 1.35rem 1.2rem;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.12);
  border: 1px solid rgba(17, 24, 39, .08);
}

.cj-services-infocard-top{
  display:flex;
  gap: 0.75rem;
  align-items: center;
  margin-bottom: 0.55rem;
}

.cj-services-infocard-ico{
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.18);
}

.cj-services-infocard h3{
  margin: 0;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #111827;
}

.cj-services-infocard p{
  margin: 0.35rem 0 1rem;
  color: #4b5563;
  font-size: 0.92rem;
  line-height: 1.7;
}

/* responsive */
@media (max-width: 992px){
  .cj-services-hero-grid,
  .cj-services-detail-grid{
    grid-template-columns: 1fr;
  }
  .cj-services-othergrid{
    grid-template-columns: 1fr;
  }
  .cj-section {
    padding: 2.5rem 1.5rem 4rem;
}
}
@media (max-width: 480px){
  .cj-services-statcard,
  .cj-services-panel,
  .cj-services-infocard{
    padding: 1rem;
    border-radius: 16px;
  }
  .cj-services-point{
    border-radius: 16px;
  }
  .cj-services-actions .cj-btn{
    width: 100%;
    justify-content: center;
  }
 
}
/* ========= MEDIA COVERAGE (YOUTUBE CAROUSEL) ========= */
/* Media tag heading (below video, above caption) */


/* optional: make it look like a small pill/tag */
.cj-media-tag {
    position: relative;
    display: inline-block;
    margin: 0.8rem 0 0.4rem;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #111827;
    padding-bottom: 8px;
}

.cj-media-tag::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%); /* 👈 centers the line */
    bottom: 0;
    width: 40px;   /* control underline length */
    height: 2px;
    background: #dc2626;
}
.cj-media {
  background: radial-gradient(circle at top, #eef2ff 0%, #ffffff 42%, #e5e7eb 100%);
}

.cj-media-shell {
  position: relative;
  padding-bottom: 4.2rem; /* space for dots */
}

.cj-media-heading {
  text-align: center;
  margin-bottom: 2.4rem;
}

.cj-media-heading h2 {
  font-size: 2.1rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #111827;
}

.cj-media-heading .cj-section-underline {
  margin-bottom: 0;
}

.cj-media-viewport {
  overflow-x: hidden;
  overflow-y: visible;
  padding-block: 1.2rem 2.0rem;
}

.cj-media-track {
  display: flex;
  width: 100%;
  will-change: transform;
  transition: transform 0.55s ease;
}

.cj-media-slide {
  flex: 0 0 100%;
  padding-inline: 0.25rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.8rem;
}

.cj-media-card {
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.16);
  padding: 1rem 1rem 1.1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  overflow: hidden;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.cj-media-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22);
}

/* video keeps 16:9 ratio */
.cj-media-video {
  width: 100%;
  border-radius: 14px;
  overflow: hidden;
  background: #0b1120;
  aspect-ratio: 16 / 9;
}

.cj-media-video iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

.cj-media-caption {
  font-size: 0.9rem;
  color: #374151;
  line-height: 1.5;
  margin: 0;
}

/* arrows */
.cj-media-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: none;
  background: #ffffff;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  z-index: 5;
}

.cj-media-arrow svg {
  width: 18px;
  height: 18px;
  stroke: #111827;
}

.cj-media-prev { left: -0.2rem; }
.cj-media-next { right: -0.2rem; }

.cj-media-arrow:hover {
  transform: translateY(-50%) translateY(-2px);
  background: #f97316;
  box-shadow: 0 16px 32px rgba(249, 115, 22, 0.55);
}

.cj-media-arrow:hover svg {
  stroke: #ffffff;
}

/* dots */
.cj-media-dots {
  display: flex;
  justify-content: center;
  gap: 0.45rem;
  margin-top: 0.4rem;
}

.cj-media-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  border: 1px solid rgba(15, 23, 42, 0.4);
  background: transparent;
  padding: 0;
  cursor: pointer;
  transition: width 0.25s ease, background 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}

.cj-media-dot.is-active {
  width: 22px;
  background: #b91c1c;
  border-color: transparent;
  transform: translateY(-1px);
}

/* responsive */
@media (max-width: 1024px) {
  .cj-media-slide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

@media (max-width: 768px) {
  .cj-media-slide {
    grid-template-columns: 1fr;
    max-width: 520px;
    margin: 0 auto;
  }
  .cj-media-arrow {
    display: none; /* swipe + dots */
  }
}
/* Control what appears in toggle panel on mobile vs desktop */
.cj-panel-desktoponly { display: none; }
.cj-panel-mobileonly  { display: block; }

@media (min-width: 1024px) {
  .cj-panel-desktoponly { display: list-item; }
  .cj-panel-mobileonly  { display: none; }
}

/* ===== Founder Books block ===== */
.cj-founder-books{
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(15, 23, 42, 0.10);
}

.cj-founder-books__title{
  margin: 0 0 12px;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #111827;
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
}

.cj-founder-books__title::after{
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  width: 52px;
  height: 2px;
  background: #dc2626; /* cyberjure red */
}

.cj-founder-books__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

/* book card */
.cj-bookcard{
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 12px;
  align-items: start;
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, 0.10);
  border-radius: 14px;
  padding: 5px;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.06);
}

.cj-bookcard__cover{
  width: 96px;
  aspect-ratio: 2 / 3;
  border-radius: 12px;
  overflow: hidden;
  background: #f3f4f6;
  border: 1px solid rgba(15, 23, 42, 0.08);
}

.cj-bookcard__cover img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.cj-bookcard__name{
  margin: 2px 0 6px;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.25;
  color: #0f172a;
}
.cj-bookcard__body{
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.cj-bookcard__btn{
  width: fit-content;
}
.cj-bookcard__desc{
  margin: 0 0 10px;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}

.cj-bookcard__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 10px;
    border-radius: 12px;
}

/* Responsive: give more breathing space on wider screens */
@media (min-width: 520px){
  .cj-founder-books__grid{
    grid-template-columns: 1fr 1fr;
  }
  .cj-bookcard{
    grid-template-columns: 100px 1fr;
  }
  .cj-bookcard__cover{
    width: 100px;
  }
}

/* =========================================================
   MEDIA COVERAGE PAGE (TEDx Talk) — Scoped CSS ONLY
   Targets: .cj-media-page + elements used in your snippet
   Safe: doesn't affect header/footer or other pages.
========================================================= */

/* Page head spacing refinements */
.cj-media-page .cj-media-page__head {
  margin-bottom: 22px;
}

/* TED Block card spacing */
.cj-media-page .cj-media-block {
  margin-top: 16px;
}

/* Main TED block layout */
.cj-media-page .cj-media-block__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
  gap: 22px;
  align-items: start;
}

/* Video wrapper (16:9) */
.cj-media-page .cj-media-videoWrap {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 16px;
    overflow: hidden;
    background: #ffffff;
   /* border: 1px solid rgba(0, 0, 0, 0.40);*/
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.14);
    padding: 10px;
}

.cj-media-page .cj-media-videoWrap iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

/* Content side */
.cj-media-page .cj-media-block__content {
  text-align: left;
}

/* Small category tag */
.cj-media-page .cj-media-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(185, 28, 28, 0.10);
  border: 1px solid rgba(185, 28, 28, 0.18);
  color: #111827;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
      text-transform: capitalize;
}

/* Title */
.cj-media-page .cj-media-title {
  margin-top: 12px;
  margin-bottom: 10px;
  font-size: 18px;
  line-height: 1.35;
}

/* Description */
.cj-media-page .cj-media-desc {
  margin-top: 0;
  margin-bottom: 14px;
  font-size: 15px;
  line-height: 1.75;
  color: #374151;
}

/* Meta row */
.cj-media-page .cj-media-meta {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 10px 12px;
  border-radius: 14px;
  background: #f9fafb;
  border: 1px solid rgba(17, 24, 39, 0.10);
}

.cj-media-page .cj-media-metaItem {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 150px;
}

.cj-media-page .cj-media-metaLabel {
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #6b7280;
  font-weight: 700;
}

.cj-media-page .cj-media-metaValue {
  font-size: 14px;
  color: #111827;
  font-weight: 700;
}

.cj-media-page .cj-media-metaDivider {
  width: 1px;
  height: 34px;
  background: rgba(17, 24, 39, 0.12);
}

/* =========================================================
   More Media Coverage (Footer area on this page)
========================================================= */

.cj-media-page .cj-media-categories {
  margin-top: 26px;
}

.cj-media-page .cj-media-catHead {
  margin-bottom: 14px;
  text-align: left;
}

.cj-media-page .cj-media-catHead .cj-h3 {
  margin: 0 0 6px;
}

.cj-media-page .cj-media-catGrid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

/* Category card */
.cj-media-page .cj-media-cat {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.10);
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.10);
  text-decoration: none;
  color: inherit;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.cj-media-page .cj-media-cat:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.16);
  border-color: rgba(185, 28, 28, 0.35);
}

/* Icon block */
.cj-media-page .cj-media-catIcon {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(17, 24, 39, 0.08);
  border: 1px solid rgba(17, 24, 39, 0.10);
  font-weight: 900;
  letter-spacing: 0.10em;
  color: #111827;
}

/* Text */
.cj-media-page .cj-media-catTxt {
  display: flex;
  flex-direction: column;
  gap: 3px;
  text-align: left;
}

.cj-media-page .cj-media-catTitle {
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 13px;
  color: #111827;
}

.cj-media-page .cj-media-catSub {
  font-size: 13px;
  color: #6b7280;
}

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

@media (max-width: 992px) {
  .cj-media-page .cj-media-block__grid {
    grid-template-columns: 1fr;
  }

  .cj-media-page .cj-media-meta {
    width: 100%;
    justify-content: space-between;
  }

  .cj-media-page .cj-media-metaItem {
    min-width: 0;
  }

  .cj-media-page .cj-media-catGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .cj-media-page .cj-media-catGrid {
    grid-template-columns: 1fr;
  }

  .cj-media-page .cj-media-meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .cj-media-page .cj-media-metaDivider {
    display: none;
  }
}
/* ===============================
SPECIALIZATIONS PAGE
=============================== */

.cj-specializations{
background:linear-gradient(to bottom,#f9fafb,#e5e7eb);
}

.cj-spec-block{
margin-bottom:18px;
}

.cj-spec-block h3{
margin-bottom:10px;
}

.cj-spec-list{
padding-left:18px;
margin:0;
}

.cj-spec-list li{
margin-bottom:8px;
line-height:1.6;
font-size:14px;
color:#374151;
}

/* better spacing on mobile */

@media (max-width:768px){

.cj-spec-list li{
font-size:14px;
}

}

/* ========= EVENTS PAGE ========= */

.cj-events-page{
  background: radial-gradient(circle at top, #eef2ff 0%, #ffffff 42%, #e5e7eb 100%);
}

.cj-events-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.cj-event-card{
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 16px;
  align-items: start;
}

/* leaflet thumbnail */
.cj-event-thumb{
  position: relative;
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
  cursor: pointer;
  padding: 0;
}

.cj-event-thumb img{
  width: 100%;
  height: 280px;
  object-fit: cover;
  display: block;
  transition: transform .25s ease;
}

.cj-event-thumb:hover img{
  transform: scale(1.04);
}

.cj-event-thumbHint{
  position: absolute;
  left: 10px;
  bottom: 10px;
  background: rgba(17,24,39,.78);
  color: #fff;
  font-size: 12px;
  padding: 6px 9px;
  border-radius: 999px;
  letter-spacing: .05em;
}

.cj-event-body{
  text-align: left;
}

.cj-event-title{
  margin-bottom: 8px;
}

.cj-event-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
}

.cj-event-chip{
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #111827;
  color: #fff;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.cj-event-date{
  font-size: 13px;
  color: #4b5563;
}

.cj-event-desc{
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 14px;
}

.cj-event-actions{
  display: flex;
  gap: 10px;
  align-items: center;
}

.cj-event-btn{
  padding: 0.65rem 1.35rem;
}

/* responsive */
@media (max-width: 980px){
  .cj-events-grid{
    grid-template-columns: 1fr;
  }
  .cj-event-card{
    grid-template-columns: 200px 1fr;
  }
}

@media (max-width: 640px){
  .cj-event-card{
    grid-template-columns: 1fr;
  }
  .cj-event-thumb img{
    height: 320px;
  }
}

/* ===== Lightbox (re-use) ===== */
.cj-lightbox{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.82);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  padding: 22px;
}
.cj-lightbox.is-open{
  display: flex;
}
.cj-lightbox__stage{
  max-width: min(1100px, 96vw);
  max-height: 86vh;
  display: grid;
  place-items: center;
}
.cj-lightbox__img{
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 86vh;
  border-radius: 16px;
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
  background: #fff;
}
.cj-lightbox__close{
  position: absolute;
  top: 14px;
  right: 18px;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(255,255,255,.10);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
.cj-lightbox__close:hover{
  background: rgba(255,255,255,.18);
}

/* ========= KNOWLEDGE CENTER PAGE ========= */

.cj-knowledge-page{
  background: radial-gradient(circle at top, #eef2ff 0%, #ffffff 42%, #e5e7eb 100%);
}

/* 3 per row desktop, 2 per row tablet, 1 per row mobile */
.cj-knowledge-grid{
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.cj-knowledge-card{
  text-align: left;
  transition: transform .18s ease, box-shadow .18s ease;
}

.cj-knowledge-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.16);
}

/* video container keeps 16:9 ratio */
.cj-knowledge-video{
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 14px;
  overflow: hidden;
  background: #0b1120;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
  margin-bottom: 12px;
}

.cj-knowledge-video iframe{
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.cj-knowledge-title{
  margin: 0 0 6px;
  font-size: 16px;
  line-height: 1.35;
}

.cj-knowledge-desc{
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #4b5563;
}

/* responsive */
@media (max-width: 1024px){
  .cj-knowledge-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px){
  .cj-knowledge-grid{
    grid-template-columns: 1fr;
  }
}
/* ========= CYBER CRIME CASE PAGE ========= */

.cj-case-page{
  background: radial-gradient(circle at top, #eef2ff 0%, #ffffff 42%, #e5e7eb 100%);
}

/* ----- Hero header block ----- */
.cj-case-hero{
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  min-height: 260px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.14);
  border: 1px solid rgba(0,0,0,.08);
  margin-bottom: 18px;
}

.cj-case-hero__bg{
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.03);
}

.cj-case-hero__overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.42) 60%, rgba(0,0,0,.22) 100%);
}

.cj-case-hero__content{
  position: relative;
  z-index: 1;
  padding: 26px 26px;
  color: #fff;
  max-width: 920px;
}

.cj-case-hero__title{
  margin: 10px 0 8px;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.05;
  letter-spacing: .04em;
}

.cj-case-hero__sub{
  margin: 0;
  max-width: 58ch;
  font-size: 15px;
  line-height: 1.7;
  opacity: .92;
}

/* breadcrumb */
.cj-case-breadcrumb{
  display: inline-flex;
  gap: 10px;
  align-items: center;
  font-size: 14px;
  opacity: .9;
}

.cj-case-breadcrumb__link{
  color: #fff;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.35);
}

.cj-case-breadcrumb__link:hover{
  border-bottom-color: rgba(255,255,255,.75);
}

.cj-case-breadcrumb__sep{ opacity: .75; }
.cj-case-breadcrumb__current{ opacity: .9; }

/* ----- Main card ----- */
.cj-case-card{
  text-align: left;
}

.cj-case-h2{
  margin-bottom: 10px;
}

.cj-case-lead{
  margin-top: 8px;
}

.cj-case-divider{
  height: 1px;
  background: rgba(0,0,0,.10);
  margin: 18px 0;
}

/* two blocks */
.cj-case-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.cj-case-block{
  background: #f9fafb;
  border: 1px solid rgba(17, 24, 39, .08);
  border-radius: 16px;
  padding: 16px 16px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.cj-case-h3{
  margin: 0 0 8px;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 14px;
}

.cj-case-list{
  margin: 0;
  padding-left: 18px;
}

.cj-case-list li{
  margin: 8px 0;
  line-height: 1.6;
  color: #374151;
  font-size: 14px;
}

/* note */
.cj-case-note{
  margin-top: 14px;
  background: #111827;
  color: #e5e7eb;
  border-radius: 14px;
  padding: 14px 16px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.28);
  line-height: 1.65;
  font-size: 14px;
}

.cj-case-note strong{
  color: #ffffff;
}

/* ----- More cases (tags) ----- */
.cj-case-more{
  margin-top: 18px;
  text-align: left;
}

.cj-case-more__head{
  margin-bottom: 10px;
}

.cj-case-tags{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cj-case-tag{
  display: inline-flex;
  align-items: center;
  padding: 10px 12px;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(185, 28, 28, .18);
  color: #111827;
  text-decoration: none;
  font-size: 13px;
  line-height: 1;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.08);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}

.cj-case-tag:hover{
  transform: translateY(-2px);
  border-color: rgba(185, 28, 28, .45);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.14);
  background: #f9fafb;
}

.cj-case-tag.is-active{
  background: #b91c1c;
  border-color: #b91c1c;
  color: #ffffff;
}

/* responsive */
@media (max-width: 900px){
  .cj-case-grid{
    grid-template-columns: 1fr;
  }
  .cj-case-hero__content{
    padding: 20px 18px;
  }
}

@media (max-width: 540px){
  .cj-case-hero{
    min-height: 220px;
  }
  .cj-case-tag{
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* TESTIMONIAL PAGE */

.cj-testimonial-page{
background:#f9fafb;
}

.cj-testimonial-intro{
text-align:center;
max-width:700px;
margin:0 auto 40px;
color:#4b5563;
font-size:15px;
}

.cj-testimonial-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
}

.cj-testimonial-card{
background:#fff;
padding:25px 22px;
border-radius:14px;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
position:relative;
transition:all .25s ease;
}

.cj-testimonial-card:hover{
transform:translateY(-5px);
box-shadow:0 16px 40px rgba(0,0,0,0.15);
}

.cj-testimonial-card p{
font-size:14px;
line-height:1.7;
color:#374151;
margin-bottom:18px;
}

.cj-testimonial-card h4{
font-size:14px;
font-weight:700;
color:#b91c1c;
letter-spacing:.04em;
text-transform:uppercase;
}

/* ========= CLIENTS PAGE ========= */

.cj-clients-page{
  background: radial-gradient(circle at top, #eef2ff 0%, #ffffff 42%, #e5e7eb 100%);
}

.cj-clients-card{
  text-align: left;
}

.cj-clients-grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.cj-client-logo{
  margin: 0;
  background: #f9fafb;
  border-radius: 14px;
  border: 1px solid rgba(185, 28, 28, 0.12);
  padding: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

.cj-client-logo img{
  max-width: 100%;
  max-height: 52px;
  object-fit: contain;
  display: block;
  /*filter: grayscale(100%);*/
  opacity: 0.95;
  transition: filter 0.18s ease, opacity 0.18s ease, transform 0.18s ease;
}

.cj-client-logo:hover{
  transform: translateY(-3px);
  border-color: rgba(185, 28, 28, 0.35);
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.14);
}

.cj-client-logo:hover img{
  filter: none;
  opacity: 1;
  transform: scale(1.02);
}

/* responsive */
@media (max-width: 1024px){
  .cj-clients-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 768px){
  .cj-clients-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px){
  .cj-clients-grid{ grid-template-columns: 1fr; }
  .cj-client-logo{ padding: 16px; }
}

/* ========= CONTACT US PAGE (EXTRA CSS) ========= */
.cj-contact-page .cj-contact-card{
  border-radius: 18px;
}

.cj-contact-grid{
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 22px;
  align-items: start;
}

.cj-contact-left,
.cj-contact-right{
  min-width: 0;
}

.cj-contact-badge{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(0,0,0,0.04);
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-size: 12px;
}

.cj-contact-badge--alt{
  background: rgba(0,0,0,0.06);
}

.cj-contact-title{
  margin: 12px 0 6px;
}

.cj-contact-text{
  margin: 0 0 14px;
  line-height: 1.7;
}

.cj-contact-links{
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.cj-contact-link{
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.08);
  text-decoration: none;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.cj-contact-link:hover{
  transform: translateY(-1px);
  border-color: rgba(0,0,0,0.14);
  box-shadow: 0 10px 24px rgba(0,0,0,0.08);
}

.cj-contact-mapWrap{
  margin-top: 16px;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,0.08);
  background: #fff;
}

.cj-contact-mapWrap iframe{
  width: 100%;
  height: 320px;
  border: 0;
  display: block;
}

.cj-contact-formHead{
  margin-bottom: 10px;
}

.cj-contact-form{
  margin-top: 14px;
}

.cj-form-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.cj-field{
  display: grid;
  gap: 8px;
}

.cj-field label{
  font-weight: 700;
  font-size: 13px;
}

.cj-field input,
.cj-field textarea{
  width: 100%;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.10);
  padding: 12px 12px;
  font-size: 14px;
  outline: none;
  background: #fff;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.cj-field input:focus,
.cj-field textarea:focus{
  border-color: rgba(0,0,0,0.24);
  box-shadow: 0 0 0 4px rgba(0,0,0,0.06);
}

.cj-field--full{
  grid-column: 1 / -1;
}

.cj-form-actions{
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 14px;
  flex-wrap: wrap;
}

.cj-form-note{
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.6;
}

/* Responsive */
@media (max-width: 980px){
  .cj-contact-grid{
    grid-template-columns: 1fr;
  }
  .cj-contact-mapWrap iframe{
    height: 280px;
  }
}

@media (max-width: 640px){
  .cj-form-grid{
    grid-template-columns: 1fr;
  }
}
/* Hide desktop-only links in main navbar */
.cj-nav-main .cj-panel-desktoponly {
  display: none;
}

/* Mobile panel */
.cj-panel-mobileonly { display: block; }
.cj-panel-desktoponly { display: none; }

@media(min-width:1024px){
	.cj-panel-desktoponly.main-menu-hide { display: none; }
  .cj-panel-mobileonly { display: block; }
  .cj-panel-desktoponly { display: block; }
	.cj-nav-panel .cj-panel-mobileonly { display: none; }
	    .cj-nav-panel .cj-panel-desktoponly.main-menu-hide {
        display: block;
    }
}

