/* ========== NIST SECTION - FULLY RESPONSIVE ========== */

.nist-framework-section {
  position: relative;
  width: 100vw;
  left: 50%;
  margin-left: -50vw;
  background: #f5f7fa;
  padding: clamp(40px, 5vw, 100px) 0;
  overflow: hidden;
}

/* Subtle decorative elements */
.nist-framework-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #e0e7ff 20%, #e0e7ff 80%, transparent 100%);
}

.nist-framework-section::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #e0e7ff 20%, #e0e7ff 80%, transparent 100%);
}

/* Override framework .container max-width for NIST section */
.nist-framework-section .container,
.nist-framework-section .content {
  max-width: none !important;
  width: 100% !important;
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 1;
}

.nist-table-wrapper {
  width: 100%;
  margin: 0;
  padding: 0;
}

.nist-table-container {
  width: 100%;
  margin: 0;
  padding: 0;
}

/* Header - Fully Responsive with Dynamic Width */
.nist-table-header {
  text-align: center;
  margin-bottom: clamp(40px, 4vw, 90px);
  padding: 0 clamp(20px, 3vw, 80px) !important; /* More padding on larger screens */
  width: 90% !important; /* Dynamic width - uses 90% of viewport */
  max-width: none !important; /* Remove hardcoded limit */
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box !important; /* Ensure padding doesn't affect width calculation */
}

.nist-table-header h2 {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(22px, 2.2vw, 58px); /* ~85% of slider h2 for proper hierarchy */
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: clamp(15px, 1.5vw, 40px);
  color: #1a1a1a;
  letter-spacing: -0.02em;
  text-align: center;
  width: 100% !important;
  max-width: clamp(700px, 65vw, 3000px) !important;
  margin-left: auto;
  margin-right: auto;
}

/* Ensure NIST sub-heading matches Company Intro sub-heading exactly */
.nist-table-header .intro-sub-heading {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(17px, 1.2vw, 32px) !important; /* Proportional to reduced h2 */
  font-weight: 600;
  color: #4a5568;
  margin: 0 auto clamp(30px, 3vw, 70px) !important;
  line-height: 1.6;
  text-align: center;
  width: 100% !important;
  max-width: clamp(700px, 65vw, 3000px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.nist-table-header p {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(16px, 1vw, 26px);
  font-weight: 400;
  color: #4a4a4a;
  margin: 0 auto;
  line-height: 1.8;
  width: 100% !important;
  max-width: clamp(700px, 65vw, 3000px) !important;
  text-align: justify;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.nist-table-header small {
  display: block;
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(11px, 0.8vw, 16px);
  line-height: 1.6;
  color: #6b7280;
  margin: clamp(12px, 1vw, 20px) auto 0;
  padding-top: 0;
  width: 100% !important;
  max-width: clamp(700px, 65vw, 3000px) !important;
  text-align: justify;
  font-style: italic;
}

.nist-table-header small a {
  color: #3b82f6;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: all 0.2s ease;
}

.nist-table-header small a:hover {
  color: #2563eb;
  border-bottom-color: #2563eb;
}

/* ========== APPLE iTUNES 3D COVERFLOW - SIMPLIFIED & PERFORMANT ========== */

/* OPTIMIZATION: Pre-calculated transform values - scaled for 200-320px cards */
:root {
  --coverflow-offset-right-1: 240px;  /* Reduced from 380px for smaller cards */
  --coverflow-offset-right-2: 380px;  /* Reduced from 580px */
  --coverflow-offset-left-1: -240px;
  --coverflow-offset-left-2: -380px;
  --coverflow-depth-1: -100px;        /* Reduced depth for better visibility */
  --coverflow-depth-2: -160px;
  --coverflow-rotation-1: 42deg;      /* Reduced from 55deg for readability */
  --coverflow-rotation-2: 48deg;      /* Reduced from 60deg */
  --coverflow-scale-1: 0.82;
  --coverflow-scale-2: 0.68;
}

.nist-coverflow-wrapper {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto 60px auto;
  min-height: 420px; /* Reduced for smaller cards */
  -webkit-perspective: 1200px; /* Safari */
  perspective: 1200px; /* Reduced perspective for smaller cards */
  display: flex;
  flex-direction: column; /* Stack cards and dots vertically */
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: 100;

  /* OPTIMIZATION: CSS containment for isolated rendering */
  contain: layout style;
}

.nist-coverflow-container {
  position: relative;
  width: 100%;
  min-height: 350px; /* Cards are absolute, container needs defined height */
  flex: 1 1 auto; /* Take available space in flex-column wrapper */
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 60px 40px;
  overflow: visible;
}

/* Card Base - Apple Coverflow Standard Proportions */
.nist-card {
  position: absolute;
  width: clamp(200px, 18vw, 320px); /* Apple standard: smaller, capped at ~320px */
  height: clamp(220px, 20vw, 350px); /* Near-square ratio (~0.9:1) */
  background: #ffffff;
  border-radius: 6px; /* Modern professional corners */
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); /* Flatter shadow */
  cursor: pointer;

  /* Optimized transitions - specific properties only */
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              opacity 0.35s ease,
              box-shadow 0.35s ease,
              border-color 0.35s ease;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 16px 14px; /* Reduced from 28px 22px to eliminate whitespace */
  border: 2px solid transparent;
  opacity: 0.7;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform-style: preserve-3d; /* Safari */
  transform-style: preserve-3d;

  /* Hardware acceleration for smooth 3D transforms */
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
  /* OPTIMIZATION: will-change removed - only applied during transitions via .transitioning class */

  /* CSS containment for better rendering performance */
  contain: layout paint style;
}

/* OPTIMIZATION: Dynamic will-change - only during active transitions */
.nist-card.transitioning {
  will-change: transform, opacity;
}

/* ========== CLASSIC iTUNES COVERFLOW POSITIONS ========== */

/* Center Card - Large and prominent */
.nist-card[data-position="0"],
.nist-card.active {
  transform: translate(-50%, -50%) translateZ(0) rotateY(0deg) scale(1);
  opacity: 1;
  z-index: 10;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.2);
}

/* Right Cards - Classic 55° rotation - OPTIMIZED with CSS variables */
.nist-card[data-position="1"] {
  transform: translate(calc(-50% + var(--coverflow-offset-right-1)), -50%)
    translateZ(var(--coverflow-depth-1))
    rotateY(calc(-1 * var(--coverflow-rotation-1)))
    scale(var(--coverflow-scale-1));
  opacity: 0.75;
  z-index: 5;
}

.nist-card[data-position="2"] {
  transform: translate(calc(-50% + var(--coverflow-offset-right-2)), -50%)
    translateZ(var(--coverflow-depth-2))
    rotateY(calc(-1 * var(--coverflow-rotation-2)))
    scale(var(--coverflow-scale-2));
  opacity: 0.5;
  z-index: 3;
}

/* Left Cards - Classic 55° rotation - OPTIMIZED with CSS variables */
.nist-card[data-position="-1"] {
  transform: translate(calc(-50% + var(--coverflow-offset-left-1)), -50%)
    translateZ(var(--coverflow-depth-1))
    rotateY(var(--coverflow-rotation-1))
    scale(var(--coverflow-scale-1));
  opacity: 0.75;
  z-index: 5;
}

.nist-card[data-position="-2"] {
  transform: translate(calc(-50% + var(--coverflow-offset-left-2)), -50%)
    translateZ(var(--coverflow-depth-2))
    rotateY(var(--coverflow-rotation-2))
    scale(var(--coverflow-scale-2));
  opacity: 0.5;
  z-index: 3;
}

/* Far cards - hidden */
.nist-card[data-position="3"],
.nist-card[data-position="-3"],
.nist-card[data-position="4"],
.nist-card[data-position="-4"] {
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}

/* ========== BOOTSTRAP COLORED BORDERS FOR EACH CARD ========== */
/* These are the PRESERVED Bootstrap colors - do NOT change! */

.nist-card[data-target="identify"].active {
  border-color: #3498DB !important;
  box-shadow: 0 16px 48px rgba(52, 152, 219, 0.3);
}

.nist-card[data-target="protect"].active {
  border-color: #27AE60 !important;
  box-shadow: 0 16px 48px rgba(39, 174, 96, 0.3);
}

.nist-card[data-target="detect"].active {
  border-color: #E67E22 !important;
  box-shadow: 0 16px 48px rgba(230, 126, 34, 0.3);
}

.nist-card[data-target="respond"].active {
  border-color: #E74C3C !important;
  box-shadow: 0 16px 48px rgba(231, 76, 60, 0.3);
}

.nist-card[data-target="recover"].active {
  border-color: #16A085 !important;
  box-shadow: 0 16px 48px rgba(22, 160, 133, 0.3);
}

/* ========== SIMPLIFIED ANIMATIONS ========== */
/* Simple fade-in on load */
@keyframes card-entrance {
  from {
    opacity: 0;
  }
  to {
    opacity: 0.7;
  }
}

.nist-card {
  animation: card-entrance 0.5s ease-out backwards;
}

/* Stagger entrance animations - lighter */
.nist-card[data-index="0"] { animation-delay: 0s; }
.nist-card[data-index="1"] { animation-delay: 0.08s; }
.nist-card[data-index="2"] { animation-delay: 0.16s; }
.nist-card[data-index="3"] { animation-delay: 0.24s; }
.nist-card[data-index="4"] { animation-delay: 0.32s; }

/* ========== REDUCED MOTION SUPPORT ========== */
@media (prefers-reduced-motion: reduce) {
  .nist-card {
    transition-duration: 0.2s;
    animation: none !important;
  }
}

/* ========== CLEAN HOVER EFFECTS ========== */
/* Desktop-only hover effects - prevents mobile browser resize issues */
@media (hover: hover) and (pointer: fine) {
  /* Only active/center card gets hover effect - no flickering */
  .nist-card[data-position="0"]:hover,
  .nist-card.active:hover {
    transform: translate(-50%, -50%) translateZ(20px) scale(1.03);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  /* Non-active cards: subtle glow only, no transform changes */
  .nist-card:not(.active):not([data-position="0"]):hover {
    filter: brightness(1.1);
    transition: filter 0.3s ease;
  }
}

/* ========== CLEAN FLAT ICON DESIGN ========== */
.nist-card-icon {
  width: clamp(55px, 6vw, 80px);
  height: clamp(55px, 6vw, 80px);
  background: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: clamp(10px, 1.2vw, 16px); /* Reduced from 20-32px */
  transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
  position: relative;
  pointer-events: none;
  /* Multi-layer shadows for professional depth */
  box-shadow:
    0 4px 12px rgba(0, 0, 0, 0.15),
    0 2px 6px rgba(0, 0, 0, 0.1),
    inset 0 1px 2px rgba(255, 255, 255, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.2);
  /* Inherits GPU acceleration from parent card */
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
}

.nist-card.active .nist-card-icon {
  background: rgba(255, 255, 255, 0.3);
  transform: scale(1.1) translateZ(0);
  box-shadow:
    0 8px 24px rgba(0, 0, 0, 0.2),
    0 4px 12px rgba(0, 0, 0, 0.15),
    inset 0 2px 4px rgba(255, 255, 255, 0.4);
  border-color: rgba(255, 255, 255, 0.3);
}

/* SVG Icon - simple and clean */
.nist-card-icon svg {
  width: clamp(32px, 4vw, 48px);
  height: clamp(32px, 4vw, 48px);
  fill: currentColor;
  transition: transform 0.3s ease, fill 0.3s ease;
  pointer-events: none;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.15));
}

.nist-card.active .nist-card-icon svg {
  transform: scale(1.05);
}

/* Remove emoji span if using SVG */
.nist-card-icon span {
  display: none;
}

/* Card Title - Responsive */
.nist-card-title {
  font-size: clamp(16px, 1.6vw, 22px); /* Dynamic font */
  font-weight: 700;
  color: #ffffff;
  margin: 0; /* No bottom margin - card uses flexbox centering */
  text-align: center;
  transition: transform 0.35s, font-size 0.35s; /* Specific properties only */
  text-shadow: 0 clamp(1px, 0.15vw, 2px) clamp(4px, 0.6vw, 8px) rgba(0, 0, 0, 0.2);
  pointer-events: none; /* Don't block clicks */
}

.nist-card.active .nist-card-title {
  font-size: clamp(18px, 1.8vw, 24px); /* Dynamic active font */
  transform: scale(1.02);
}

/* ---------- NIST: navigation buttons - ABSOLUTE inside wrapper ---------- */
.nist-nav-button {
  position: absolute !important;
  /* ALWAYS absolute - not fixed */
  top: 50% !important;
  /* vertically centered inside wrapper */
  transform: translateY(-50%) !important;
  width: 48px;
  height: 48px;
  background: #ffffff;
  border: 2px solid #e2e8f0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 1000;
  transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
  /* keep arrows visually detached from page scroll */
  pointer-events: auto;
}

.nist-nav-button:hover {
  background: linear-gradient(135deg, #0d6efd 0%, #0a58ca 100%);
  border-color: transparent;
  transform: translateY(-50%) scale(1.15);
  box-shadow: 0 12px 30px rgba(13, 110, 253, 0.4);
}

.nist-nav-button:hover::before {
  border-color: #ffffff;
}

.nist-nav-button.prev {
  left: 18px;
}

.nist-nav-button.next {
  right: 18px;
}

.nist-nav-button::before {
  content: '';
  width: 12px;
  height: 12px;
  border-top: 3px solid #4a5568;
  border-right: 3px solid #4a5568;
  transition: border-color 0.3s ease;
}

.nist-nav-button.prev::before {
  transform: rotate(-135deg);
  margin-left: 4px;
}

.nist-nav-button.next::before {
  transform: rotate(45deg);
  margin-right: 4px;
}

/* Content Area - FULL WIDTH */
.nist-content-area {
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  box-sizing: border-box;
  padding: 20px 0;
  /* Add vertical padding to prevent border cutoff */
  overflow: visible;
  /* Ensure borders aren't clipped */
  z-index: 1; /* Keep content area below cards */
}

.nist-content-panel {
  display: none;
  animation: fadeInUp 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  padding: clamp(30px, 3vw, 100px);
  border-radius: 0;
  background: #ffffff;
  transition: opacity 0.4s ease, transform 0.4s ease;
  box-sizing: border-box;
  /* Calculate width to match outer cards span:
       - Leftmost card (position -2) at: -820px from center
       - Rightmost card (position 2) at: +820px from center
       - Card width: 450px
       - Total span: 820px + 225px (half card) = 1045px on each side
       - Add padding for border visibility: 60px on each side
    */
  margin: 0 auto;
  max-width: calc(1640px + 120px);
  /* (820px * 2) + 120px padding */
  width: 90%;
  /* Fallback for smaller screens */
  overflow: visible;
}

@media (min-width: 1800px) {
  .nist-content-panel {
    width: 95%;
    max-width: 1760px;
    /* Responsive width for large screens - can be overridden by higher breakpoints */
  }
}

.nist-content-panel.active {
  display: block;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.nist-content-header {
  text-align: center;
  margin-bottom: 48px;
}

.nist-content-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 24px;
  background: linear-gradient(135deg, rgba(102, 126, 234, 0.08) 0%, rgba(118, 75, 162, 0.12) 100%);
  border-radius: 30px;
  font-size: 14px;
  font-weight: 700;
  color: #667eea;
  margin-bottom: 20px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  border: 2px solid rgba(102, 126, 234, 0.2);
}

/* Badge icons - using FontAwesome */
.nist-content-badge::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 14px;
  display: inline-block;
}

/* Phase-specific badge icons */
.nist-content-panel[data-active-card="identify"] .nist-content-badge::before {
  content: "\f007"; /* fa-user */
}

.nist-content-panel[data-active-card="protect"] .nist-content-badge::before {
  content: "\f132"; /* fa-shield-halved / fa-shield */
}

.nist-content-panel[data-active-card="detect"] .nist-content-badge::before {
  content: "\f002"; /* fa-magnifying-glass / fa-search */
}

.nist-content-panel[data-active-card="respond"] .nist-content-badge::before {
  content: "\f0fe"; /* fa-plus-square / fa-square-plus */
}

.nist-content-panel[data-active-card="recover"] .nist-content-badge::before {
  content: "\f1da"; /* fa-history / fa-clock-rotate-left */
}

.nist-content-header h3 {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(22px, 2.2vw, 60px);
  font-weight: 700;
  line-height: 1.3;
  color: #1a202c;
  margin: 0 0 16px 0;
}

.nist-content-header p {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(16px, 1vw, 26px);
  line-height: 1.7;
  color: #4a5568;
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.nist-content-body h4 {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(18px, 1.5vw, 42px);
  font-weight: 700;
  line-height: 1.3;
  color: #2d3748;
  margin: 48px 0 32px 0;
  padding-left: 20px;
  border-left: 5px solid #667eea;
}

/* Tablet Responsive */
@media (max-width: 1600px) {
  .nist-content-panel {
    width: 85%;
    max-width: 1400px;
  }
}

@media (max-width: 1400px) {
  .nist-content-panel {
    width: 80%;
    max-width: 1200px;
  }

  .nist-card {
    width: 240px;
    height: 265px;
    padding: 14px 12px;
  }

  .nist-coverflow-wrapper {
    min-height: 380px;
  }
}

@media (max-width: 1200px) {
  .nist-content-panel {
    width: 75%;
    max-width: 1000px;
  }
}

/* ========== ENHANCED TABLET BREAKPOINTS ========== */

/* HD Laptops (1280px - 1366px) - Fix for 1280x720 resolution */
@media (min-width: 1200px) and (max-width: 1366px) {
  .nist-coverflow-wrapper {
    min-height: 400px;
    overflow: visible; /* Allow cards to extend beyond wrapper if needed */
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .nist-coverflow-container {
    padding: 50px 40px;
  }

  .nist-card {
    width: 230px;
    height: 255px;
    padding: 14px 12px;
  }

  .nist-card-icon {
    width: 55px;
    height: 55px;
  }

  .nist-card-icon svg {
    width: 30px;
    height: 30px;
  }

  .nist-card-title {
    font-size: 16px;
  }

  .nist-card.active .nist-card-title {
    font-size: 17px;
  }

  /* Adjusted card positions for this range */
  .nist-card[data-position="1"] {
    transform: translate(calc(-50% + 200px), -50%) translateZ(-90px) rotateY(-40deg) scale(0.82);
  }

  .nist-card[data-position="-1"] {
    transform: translate(calc(-50% - 200px), -50%) translateZ(-90px) rotateY(40deg) scale(0.82);
  }

  .nist-card[data-position="2"] {
    transform: translate(calc(-50% + 340px), -50%) translateZ(-140px) rotateY(-46deg) scale(0.68);
  }

  .nist-card[data-position="-2"] {
    transform: translate(calc(-50% - 340px), -50%) translateZ(-140px) rotateY(46deg) scale(0.68);
  }
}

/* Large tablets and small laptops (1024px - 1199px) */
@media (min-width: 1024px) and (max-width: 1199px) {
  .nist-coverflow-wrapper {
    min-height: 380px;
    overflow: visible;
    padding-top: 35px;
    padding-bottom: 35px;
  }

  .nist-card {
    width: 210px;
    height: 235px;
    padding: 14px 12px;
  }

  .nist-card-icon {
    width: 52px;
    height: 52px;
  }

  .nist-card-icon svg {
    width: 28px;
    height: 28px;
  }

  .nist-card-title {
    font-size: 15px;
  }

  .nist-card.active .nist-card-title {
    font-size: 16px;
  }

  /* Adjusted card positions */
  .nist-card[data-position="1"] {
    transform: translate(calc(-50% + 180px), -50%) translateZ(-80px) rotateY(-38deg) scale(0.85);
  }

  .nist-card[data-position="-1"] {
    transform: translate(calc(-50% - 180px), -50%) translateZ(-80px) rotateY(38deg) scale(0.85);
  }

  .nist-card[data-position="2"] {
    transform: translate(calc(-50% + 300px), -50%) translateZ(-130px) rotateY(-44deg) scale(0.70);
  }

  .nist-card[data-position="-2"] {
    transform: translate(calc(-50% - 300px), -50%) translateZ(-130px) rotateY(44deg) scale(0.70);
  }
}

/* Small tablets (768px - 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
  .nist-coverflow-wrapper {
    min-height: 360px;
    overflow: visible;
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .nist-card {
    width: 200px;
    height: 220px;
    padding: 12px 10px;
  }

  .nist-card-icon {
    width: 48px;
    height: 48px;
  }

  .nist-card-icon svg {
    width: 26px;
    height: 26px;
  }

  .nist-card-title {
    font-size: 14px;
  }

  .nist-card.active .nist-card-title {
    font-size: 15px;
  }

  /* Adjust 3D positioning for small tablets */
  .nist-card[data-position="1"] {
    transform: translate(calc(-50% + 165px), -50%) translateZ(-75px) rotateY(-36deg) scale(0.85);
  }

  .nist-card[data-position="-1"] {
    transform: translate(calc(-50% - 165px), -50%) translateZ(-75px) rotateY(36deg) scale(0.85);
  }

  .nist-card[data-position="2"] {
    transform: translate(calc(-50% + 275px), -50%) translateZ(-120px) rotateY(-42deg) scale(0.70);
  }

  .nist-card[data-position="-2"] {
    transform: translate(calc(-50% - 275px), -50%) translateZ(-120px) rotateY(42deg) scale(0.70);
  }
}

@media (max-width: 991px) {
  .nist-content-area {
    padding: 0 15px;
    overflow-x: hidden; /* Prevent horizontal scroll */
    width: 100%;
    position: relative;
  }

  .nist-content-panel {
    padding: 30px;
    margin: 0 40px;
  }
}

/* Mobile Responsive - COVERFLOW STYLE */
@media (max-width: 767px) {
  .nist-framework-section {
    padding: clamp(30px, 8vw, 50px) 0;
    overflow-x: hidden !important; /* Prevent horizontal scroll from propagating */
    width: 100%;
    position: relative;
  }

  .nist-framework-section .container {
    padding: 0 10px;
    overflow-x: hidden !important; /* Additional containment */
  }

  .nist-table-header {
    margin-bottom: 20px; /* Reduced gap for mobile */
    padding: 0 clamp(10px, 4vw, 20px) !important;
    padding-bottom: 10px;
    width: 95% !important;
    box-sizing: border-box !important;
    position: relative; /* Ensure proper stacking */
    z-index: 1;
  }

  /* All typography now uses clamp() - no mobile overrides needed */

  /* Mobile: OPTIMIZED 2D Coverflow - Better Performance */
  .nist-coverflow-wrapper {
    width: 100% !important; /* Override desktop full-width */
    max-width: 100% !important; /* Remove max-width constraint */
    left: auto !important; /* Remove viewport bleed */
    margin-left: auto !important; /* Remove negative margin */
    margin-right: auto !important;
    height: auto; /* Allow flex-column to size naturally */
    min-height: 350px;
    margin-top: 20px;
    margin-bottom: 40px;
    overflow-x: hidden !important; /* Prevent horizontal scroll */
    overflow-y: visible; /* Allow dots to be visible */
    padding: 0 15px; /* Add horizontal padding for containment */
    /* OPTIMIZATION: Remove 3D perspective on mobile for better performance */
    perspective: none;
  }

  .nist-coverflow-container {
    height: 100%;
    /* OPTIMIZATION: No perspective on mobile - use 2D transforms only */
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 0 !important; /* Remove padding that could cause shift */
    overflow: hidden; /* Additional containment */
  }

  .nist-card {
    position: absolute;
    width: 200px;
    height: 220px;
    padding: 14px 12px; /* Reduced padding */
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.35s ease,
                box-shadow 0.35s ease,
                border-color 0.35s ease;
    cursor: pointer;
    left: 50%; /* Center cards properly */
    top: 50%;
    margin-left: -100px; /* Half of width for centering */
    margin-top: -110px; /* Fixed: Half of height (220/2) for centering */
  }

  /* OPTIMIZED 2D Coverflow Positions - Simplified for Mobile Performance */
  /* Center Card - No transforms needed */
  .nist-card[data-position="0"] {
    transform: translateX(0) scale(1);
    opacity: 1;
    z-index: 10;
  }

  /* Right Side Cards - 2D only (no rotateY or translateZ) */
  .nist-card[data-position="1"] {
    transform: translateX(110px) scale(0.88);
    opacity: 0.75;
    z-index: 5;
  }

  .nist-card[data-position="2"] {
    transform: translateX(180px) scale(0.75);
    opacity: 0.6;
    z-index: 3;
  }

  /* Left Side Cards - 2D only (no rotateY or translateZ) */
  .nist-card[data-position="-1"] {
    transform: translateX(-110px) scale(0.88);
    opacity: 0.75;
    z-index: 5;
  }

  .nist-card[data-position="-2"] {
    transform: translateX(-180px) scale(0.75);
    opacity: 0.6;
    z-index: 3;
  }

  /* Far positions (hidden) - 2D only */
  .nist-card[data-position="3"],
  .nist-card[data-position="-3"],
  .nist-card[data-position="4"],
  .nist-card[data-position="-4"] {
    transform: translateX(0) scale(0.5);
    opacity: 0;
    pointer-events: none;
  }

  .nist-card-icon {
    width: 48px;
    height: 48px;
    margin-bottom: 8px;
  }

  .nist-card-icon svg {
    width: 26px;
    height: 26px;
  }

  .nist-card-title {
    font-size: 14px;
    margin: 0;
  }

  .nist-card.active .nist-card-title {
    font-size: 15px;
  }

  /* Mobile: Category-Specific Border Colors - Always Visible */
  .nist-card[data-target="identify"] {
    border: 2px solid #3498DB !important;
  }

  .nist-card[data-target="protect"] {
    border: 2px solid #27AE60 !important;
  }

  .nist-card[data-target="detect"] {
    border: 2px solid #E67E22 !important;
  }

  .nist-card[data-target="respond"] {
    border: 2px solid #E74C3C !important;
  }

  .nist-card[data-target="recover"] {
    border: 2px solid #16A085 !important;
  }

  /* Enhanced shadow for active/center card */
  .nist-card[data-target="identify"].active,
  .nist-card[data-target="identify"][data-position="0"] {
    box-shadow: 0 12px 32px rgba(52, 152, 219, 0.4) !important;
  }

  .nist-card[data-target="protect"].active,
  .nist-card[data-target="protect"][data-position="0"] {
    box-shadow: 0 12px 32px rgba(39, 174, 96, 0.4) !important;
  }

  .nist-card[data-target="detect"].active,
  .nist-card[data-target="detect"][data-position="0"] {
    box-shadow: 0 12px 32px rgba(230, 126, 34, 0.4) !important;
  }

  .nist-card[data-target="respond"].active,
  .nist-card[data-target="respond"][data-position="0"] {
    box-shadow: 0 12px 32px rgba(231, 76, 60, 0.4) !important;
  }

  .nist-card[data-target="recover"].active,
  .nist-card[data-target="recover"][data-position="0"] {
    box-shadow: 0 12px 32px rgba(22, 160, 133, 0.4) !important;
  }

  /* h3, p, h4 now use clamp() - no mobile overrides needed */
  /* Note: Nav buttons hidden via @media (max-width: 1199px) rule */

  .nist-features-grid {
    gap: 16px;
  }

  .nist-feature-card {
    padding: 24px;
  }

  .nist-content-area {
    margin-left: 0;
    left: 0;
    width: 100%;
    padding: 0 15px;
  }

  .nist-content-panel {
    margin: 0 20px;
    padding: 30px;
    width: calc(100% - 40px);
    max-width: 100%;
  }
}

/* iPhone Landscape Optimization (568px to 926px width, landscape orientation) */
@media (max-width: 926px) and (orientation: landscape) {
  .nist-coverflow-wrapper {
    height: auto;
    min-height: 320px;
    margin-top: 15px;
    margin-bottom: 30px;
    overflow-x: hidden !important; /* Prevent horizontal scroll */
    overflow-y: visible;
    padding-top: 20px;
    padding-bottom: 10px;
  }

  .nist-coverflow-container {
    overflow: visible !important;
    padding: 0 10px; /* Slight padding to prevent edge clipping */
  }

  .nist-card {
    width: 180px;
    height: 200px;
    padding: 12px 10px;
    margin-left: -90px;
    margin-top: -100px; /* Half of height */
  }

  /* FIX: Ensure active card stays centered */
  .nist-card[data-position="0"],
  .nist-card.active {
    left: 50% !important;
    top: 50% !important;
    transform: translateX(0) translateY(0) scale(1) !important;
    z-index: 10;
  }

  /* Side card positions for landscape - 2D optimized */
  .nist-card[data-position="1"] {
    transform: translateX(100px) scale(0.85);
    opacity: 0.75;
    z-index: 5;
  }

  .nist-card[data-position="-1"] {
    transform: translateX(-100px) scale(0.85);
    opacity: 0.75;
    z-index: 5;
  }

  .nist-card[data-position="2"] {
    transform: translateX(165px) scale(0.70);
    opacity: 0.5;
    z-index: 3;
  }

  .nist-card[data-position="-2"] {
    transform: translateX(-165px) scale(0.70);
    opacity: 0.5;
    z-index: 3;
  }

  .nist-card[data-position="3"],
  .nist-card[data-position="-3"],
  .nist-card[data-position="4"],
  .nist-card[data-position="-4"] {
    opacity: 0;
    pointer-events: none;
  }

  .nist-card-icon {
    width: 42px;
    height: 42px;
    margin-bottom: 6px;
  }

  .nist-card-icon svg {
    width: 22px;
    height: 22px;
  }

  .nist-card-title {
    font-size: 13px;
    margin: 0;
  }

  .nist-card.active .nist-card-title {
    font-size: 14px;
  }

  .nist-table-header {
    margin-bottom: 15px;
    padding: 0 15px !important;
  }

  .nist-table-header h2 {
    font-size: 22px !important;
  }

  .nist-table-header .intro-sub-heading {
    font-size: 16px !important;
    margin-bottom: 20px !important;
  }

  .nist-table-header p {
    font-size: 14px;
  }

  .nist-table-header small {
    font-size: 11px;
  }

  /* Adjust mini navigation to avoid overlap with scroll-to-top */
  .nist-mini-card-nav {
    bottom: 65px;
    right: 10px;
    transform: scale(0.9);
  }
}

/* iPhone Portrait Optimization (max 767px width, portrait orientation) */
@media (max-width: 767px) and (orientation: portrait) {
  .nist-coverflow-wrapper {
    overflow: visible !important;
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .nist-coverflow-container {
    overflow: visible !important;
  }

  /* Ensure proper spacing for content panels */
  .nist-content-panel {
    padding: 25px 20px !important;
    margin: 0 15px !important;
  }
}

/* iPad Portrait (768-834px, portrait) */
@media (min-width: 768px) and (max-width: 834px) and (orientation: portrait) {
  .nist-coverflow-wrapper {
    height: auto;
    min-height: 320px;
    overflow: visible !important;
    padding: 20px 0 10px 0;
    margin-top: 20px;
  }

  .nist-coverflow-container {
    overflow: visible !important;
    height: 300px !important;
    position: relative !important;
  }

  .nist-card {
    width: 200px;
    height: 220px;
    padding: 14px 12px !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%);
  }

  .nist-card[data-position="0"],
  .nist-card.active {
    transform: translate(-50%, -50%) translateZ(0) rotateY(0) scale(1) !important;
    z-index: 10;
  }

  .nist-card[data-position="1"] {
    transform: translate(calc(-50% + 170px), -50%) translateZ(-80px) rotateY(-38deg) scale(0.85);
    opacity: 0.8;
    z-index: 5;
  }

  .nist-card[data-position="-1"] {
    transform: translate(calc(-50% - 170px), -50%) translateZ(-80px) rotateY(38deg) scale(0.85);
    opacity: 0.8;
    z-index: 5;
  }

  .nist-card[data-position="2"] {
    transform: translate(calc(-50% + 280px), -50%) translateZ(-120px) rotateY(-44deg) scale(0.70);
    opacity: 0.55;
    z-index: 3;
  }

  .nist-card[data-position="-2"] {
    transform: translate(calc(-50% - 280px), -50%) translateZ(-120px) rotateY(44deg) scale(0.70);
    opacity: 0.55;
    z-index: 3;
  }

  .nist-card[data-position="3"],
  .nist-card[data-position="-3"],
  .nist-card[data-position="4"],
  .nist-card[data-position="-4"] {
    opacity: 0;
    pointer-events: none;
  }

  .nist-card-icon {
    width: 50px;
    height: 50px;
    margin-bottom: 8px;
  }

  .nist-card-icon svg {
    width: 28px;
    height: 28px;
  }

  .nist-card-title {
    font-size: 15px;
    margin: 0;
  }

  .nist-card.active .nist-card-title {
    font-size: 16px;
  }

  .nist-table-header {
    margin-bottom: 60px !important;
  }

  .nist-table-header .intro-sub-heading {
    font-size: 18px !important;
  }

  .nist-table-header small {
    font-size: 12px;
  }
}

/* Tablet Landscape (834-1023px, landscape) */
@media (min-width: 834px) and (max-width: 1023px) and (orientation: landscape) {
  .nist-coverflow-wrapper {
    height: auto;
    min-height: 300px;
    overflow: visible !important;
    padding: 15px 0 10px 0;
    margin-top: 20px;
  }

  .nist-coverflow-container {
    overflow: visible !important;
    height: 280px !important;
    position: relative !important;
  }

  .nist-card {
    width: 200px;
    height: 220px;
    padding: 14px 12px !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%);
  }

  .nist-card[data-position="0"],
  .nist-card.active {
    transform: translate(-50%, -50%) translateZ(0) rotateY(0) scale(1) !important;
    z-index: 10;
  }

  .nist-card[data-position="1"] {
    transform: translate(calc(-50% + 170px), -50%) translateZ(-80px) rotateY(-38deg) scale(0.82);
    opacity: 0.8;
    z-index: 5;
  }

  .nist-card[data-position="-1"] {
    transform: translate(calc(-50% - 170px), -50%) translateZ(-80px) rotateY(38deg) scale(0.82);
    opacity: 0.8;
    z-index: 5;
  }

  .nist-card[data-position="2"] {
    transform: translate(calc(-50% + 290px), -50%) translateZ(-120px) rotateY(-44deg) scale(0.68);
    opacity: 0.55;
    z-index: 3;
  }

  .nist-card[data-position="-2"] {
    transform: translate(calc(-50% - 290px), -50%) translateZ(-120px) rotateY(44deg) scale(0.68);
    opacity: 0.55;
    z-index: 3;
  }

  .nist-card[data-position="3"],
  .nist-card[data-position="-3"],
  .nist-card[data-position="4"],
  .nist-card[data-position="-4"] {
    opacity: 0;
    pointer-events: none;
  }

  .nist-card-icon {
    width: 50px;
    height: 50px;
    margin-bottom: 8px;
  }

  .nist-card-icon svg {
    width: 28px;
    height: 28px;
  }

  .nist-card-title {
    font-size: 15px;
    margin: 0;
  }

  .nist-card.active .nist-card-title {
    font-size: 16px;
  }

  .nist-table-header {
    margin-bottom: 60px !important;
  }

  .nist-table-header small {
    font-size: 12px;
  }
}

/* iPad Landscape (1024-1366px, landscape) */
@media (min-width: 1024px) and (max-width: 1366px) and (orientation: landscape) {
  .nist-coverflow-wrapper {
    height: auto;
    min-height: 320px;
    overflow: visible !important;
    padding: 15px 0 10px 0;
    margin-top: 25px;
  }

  .nist-coverflow-container {
    overflow: visible !important;
    height: 300px !important;
    position: relative !important;
  }

  .nist-card {
    width: 220px;
    height: 240px;
    padding: 14px 12px !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%);
  }

  .nist-card[data-position="0"],
  .nist-card.active {
    transform: translate(-50%, -50%) translateZ(0) rotateY(0) scale(1) !important;
    z-index: 10;
  }

  .nist-card[data-position="1"] {
    transform: translate(calc(-50% + 190px), -50%) translateZ(-90px) rotateY(-40deg) scale(0.82);
    opacity: 0.85;
    z-index: 5;
  }

  .nist-card[data-position="-1"] {
    transform: translate(calc(-50% - 190px), -50%) translateZ(-90px) rotateY(40deg) scale(0.82);
    opacity: 0.85;
    z-index: 5;
  }

  .nist-card[data-position="2"] {
    transform: translate(calc(-50% + 320px), -50%) translateZ(-140px) rotateY(-46deg) scale(0.68);
    opacity: 0.6;
    z-index: 3;
  }

  .nist-card[data-position="-2"] {
    transform: translate(calc(-50% - 320px), -50%) translateZ(-140px) rotateY(46deg) scale(0.68);
    opacity: 0.6;
    z-index: 3;
  }

  .nist-card[data-position="3"],
  .nist-card[data-position="-3"],
  .nist-card[data-position="4"],
  .nist-card[data-position="-4"] {
    opacity: 0;
    pointer-events: none;
  }

  .nist-card-icon {
    width: 55px;
    height: 55px;
    margin-bottom: 10px;
  }

  .nist-card-icon svg {
    width: 30px;
    height: 30px;
  }

  .nist-card-title {
    font-size: 16px;
    margin: 0;
  }

  .nist-card.active .nist-card-title {
    font-size: 17px;
  }

  .nist-table-header {
    margin-bottom: 70px !important;
    padding: 0 40px !important;
  }

  .nist-table-header small {
    font-size: 13px;
  }
}

/* Touch improvements */
@media (hover: none) and (pointer: coarse) {
  .nist-card {
    cursor: default;
  }
}

/* ==========================================================================
   NIST NAVIGATION DOTS (Slider-Style Indicator)
   ========================================================================== */

.nist-progress-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  padding: 20px 0 10px 0;
  z-index: 10;
  flex-shrink: 0; /* Don't shrink in flex container */
}

.nist-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.2);
  cursor: pointer;
  transition: transform 0.2s ease, background 0.2s ease;
}

.nist-dot:hover {
  transform: scale(1.2);
  background: rgba(0, 0, 0, 0.35);
}

/* Active dot - solid blue */
.nist-dot.active {
  background: #1a73e8;
}

.nist-dot.active:hover {
  background: #1557b0;
}

/* Hide arrows on tablet and mobile (<1200px) */
@media (max-width: 1199px) {
  .nist-nav-button {
    display: none !important;
  }
}

/* Tablet (768-1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
  .nist-progress-dots {
    gap: 11px;
    padding: 15px 0 8px 0;
  }

  .nist-dot {
    width: 9px;
    height: 9px;
  }
}

/* Mobile (max 767px) */
@media (max-width: 767px) {
  .nist-progress-dots {
    gap: 10px;
    padding: 12px 0 5px 0;
  }

  .nist-dot {
    width: 8px;
    height: 8px;
  }
}

/* 2K+ displays */
@media (min-width: 2560px) {
  .nist-progress-dots {
    gap: 16px;
    padding: 25px 0 15px 0;
  }

  .nist-dot {
    width: 14px;
    height: 14px;
  }
}

/* 4K+ displays */
@media (min-width: 3840px) {
  .nist-progress-dots {
    gap: 20px;
    padding: 30px 0 20px 0;
  }

  .nist-dot {
    width: 18px;
    height: 18px;
  }
}

/* ==========================================================================
   ENHANCED NIST CONTENT SECTIONS - Add to end of home.css
   ========================================================================== */

/* Service Cards within NIST Panels */
.nist-services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(clamp(280px, 25vw, 400px), 1fr)); /* Dynamic min width */
  gap: clamp(20px, 2.2vw, 50px); /* Dynamic gap */
  margin-top: clamp(30px, 3vw, 70px); /* Dynamic margin */
}

/* Client Success Stories Grid */
.nist-success-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(clamp(300px, 28vw, 450px), 1fr)); /* Dynamic min width */
  gap: clamp(24px, 2.5vw, 55px); /* Dynamic gap */
  margin-top: clamp(30px, 3vw, 70px); /* Dynamic margin */
}

.nist-success-card {
  background: #ffffff; /* White background instead of purple gradient */
  border: clamp(1px, 0.15vw, 3px) solid #e2e8f0; /* Subtle border */
  border-radius: clamp(12px, 1.2vw, 24px); /* Dynamic border radius */
  overflow: hidden;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 clamp(6px, 0.6vw, 12px) clamp(18px, 1.8vw, 36px) rgba(0, 0, 0, 0.08); /* Dynamic shadow */
  position: relative;
}

.nist-success-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: clamp(3px, 0.4vw, 6px); /* Colored top border */
  background: linear-gradient(90deg, var(--nist-primary, #667eea) 0%, var(--nist-identify, #0d6efd) 100%);
  transition: height 0.4s;
}

.nist-success-card:hover::before {
  height: clamp(5px, 0.6vw, 10px); /* Grows on hover */
}

.nist-success-card:hover {
  transform: translateY(clamp(-6px, -0.6vw, -10px)); /* Dynamic lift */
  box-shadow: 0 clamp(16px, 1.8vw, 32px) clamp(30px, 3.5vw, 60px) rgba(0, 0, 0, 0.15); /* Enhanced shadow */
  border-color: var(--nist-primary, #667eea);
}

.nist-success-content {
  padding: clamp(28px, 2.8vw, 60px); /* Dynamic padding */
  color: #1a1a1a; /* Dark text for white background */
  position: relative;
  z-index: 1;
}

.nist-success-title {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(18px, 1.8vw, 44px); /* Dynamic font */
  font-weight: 700;
  color: #1a1a1a; /* Dark text for white background */
  margin: 0 0 clamp(10px, 1vw, 20px) 0; /* Dynamic margin */
  line-height: 1.3;
}

.nist-success-company {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(16px, 1vw, 26px); /* Matches Company Intro p */
  line-height: 1.7;
  color: #4a5568; /* Gray text */
  margin: 0 0 clamp(16px, 1.6vw, 32px) 0; /* Dynamic margin */
  font-weight: 400;
}

.nist-success-description {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(16px, 1vw, 26px); /* Matches Company Intro p */
  line-height: 1.7;
  color: #4a5568; /* Gray text */
  margin: 0 0 clamp(18px, 1.8vw, 36px) 0; /* Dynamic margin */
  text-align: justify;
  text-align-last: left;
}

.nist-success-link {
  display: inline-flex;
  align-items: center;
  gap: clamp(6px, 0.6vw, 12px); /* Dynamic gap */
  color: #ffffff;
  font-weight: 600;
  font-size: clamp(13px, 1.1vw, 26px); /* Dynamic font */
  text-decoration: none;
  padding: clamp(10px, 1vw, 18px) clamp(20px, 2vw, 40px); /* Dynamic padding */
  background: var(--nist-primary, #667eea); /* Solid button */
  border-radius: clamp(6px, 0.6vw, 12px); /* Dynamic radius */
  transition: all 0.3s;
}

.nist-success-link:hover {
  background: var(--nist-identify, #0d6efd); /* Darker on hover */
  gap: clamp(10px, 1vw, 16px); /* Increased gap on hover */
  color: #ffffff;
  transform: translateX(clamp(2px, 0.3vw, 4px)); /* Slight shift */
}

.nist-success-link::after {
  content: '→';
  font-size: 18px;
  transition: transform 0.3s;
}

.nist-success-link:hover::after {
  transform: translateX(4px);
}

/* Why Choose Us - Trust Indicators */
.nist-trust-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(clamp(250px, 26vw, 380px), 1fr)); /* Dynamic min width */
  gap: clamp(18px, 2vw, 45px); /* Dynamic gap */
  margin-top: clamp(30px, 3vw, 70px); /* Dynamic margin */
}

.nist-trust-card {
  background: #ffffff; /* Clean white background */
  padding: clamp(24px, 2.5vw, 55px); /* Dynamic padding */
  border-radius: clamp(10px, 1vw, 20px); /* Dynamic radius */
  border: clamp(1px, 0.15vw, 3px) solid #e8ebff; /* Dynamic border */
  transition: all 0.3s;
  text-align: center;
  box-shadow: 0 clamp(4px, 0.4vw, 8px) clamp(12px, 1.2vw, 24px) rgba(0, 0, 0, 0.05); /* Dynamic shadow */
}

.nist-trust-card:hover {
  border-color: var(--nist-primary, #667eea);
  transform: translateY(clamp(-4px, -0.4vw, -8px)); /* Dynamic lift */
  box-shadow: 0 clamp(10px, 1.2vw, 20px) clamp(24px, 2.8vw, 50px) rgba(102, 126, 234, 0.18); /* Enhanced shadow */
}

/* Trust indicator icons - clean minimal design */
.nist-trust-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto clamp(12px, 1.4vw, 28px);
  font-size: clamp(32px, 3.5vw, 64px); /* FontAwesome icon size - balanced with stats */
  line-height: 1;
  color: var(--nist-primary, #667eea); /* Default - overridden by phase colors */
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s ease;
}

.nist-trust-icon i {
  display: block;
}

.nist-trust-card:hover .nist-trust-icon {
  transform: translateY(-3px) scale(1.08);
}

/* Phase-specific trust icon colors - matches NIST card colors */
.nist-content-panel[data-active-card="identify"] .nist-trust-icon {
  color: var(--nist-identify);
}

.nist-content-panel[data-active-card="identify"] .nist-trust-card:hover .nist-trust-icon {
  color: var(--nist-identify-dark);
}

.nist-content-panel[data-active-card="protect"] .nist-trust-icon {
  color: var(--nist-protect);
}

.nist-content-panel[data-active-card="protect"] .nist-trust-card:hover .nist-trust-icon {
  color: var(--nist-protect-dark);
}

.nist-content-panel[data-active-card="detect"] .nist-trust-icon {
  color: var(--nist-detect);
}

.nist-content-panel[data-active-card="detect"] .nist-trust-card:hover .nist-trust-icon {
  color: var(--nist-detect-dark);
}

.nist-content-panel[data-active-card="respond"] .nist-trust-icon {
  color: var(--nist-respond);
}

.nist-content-panel[data-active-card="respond"] .nist-trust-card:hover .nist-trust-icon {
  color: var(--nist-respond-dark);
}

.nist-content-panel[data-active-card="recover"] .nist-trust-icon {
  color: var(--nist-recover);
}

.nist-content-panel[data-active-card="recover"] .nist-trust-card:hover .nist-trust-icon {
  color: var(--nist-recover-dark);
}

.nist-trust-title {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(15px, 1.5vw, 36px); /* Dynamic font */
  font-weight: 700;
  line-height: 1.4;
  color: #1a202c;
  margin: 0 0 clamp(10px, 1vw, 20px) 0; /* Dynamic margin */
}

.nist-trust-description {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(16px, 1vw, 26px); /* Matches Company Intro p */
  line-height: 1.7;
  color: #4a5568;
  margin: 0;
}

.nist-trust-stat {
  font-size: clamp(28px, 3vw, 68px); /* Dynamic font */
  font-weight: 800;
  background: linear-gradient(135deg, var(--nist-primary, #667eea) 0%, var(--nist-identify, #0d6efd) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin: 0 0 clamp(6px, 0.7vw, 14px) 0; /* Dynamic margin */
  display: block;
}

/* Executive Value Section */
/* Responsive Adjustments */
@media (max-width: 991px) {

  .nist-services-grid,
  .nist-success-grid,
  .nist-trust-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
  }

  .nist-service-content,
  .nist-success-content {
    padding: 24px;
  }

  .nist-value-section {
    padding: 40px 24px;
  }
}

@media (max-width: 767px) {

  .nist-services-grid,
  .nist-success-grid,
  .nist-trust-grid,
  .nist-value-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .nist-service-image {
    height: 180px;
  }

  .nist-service-content {
    padding: 20px;
  }

  .nist-success-content {
    padding: 24px;
  }

  .nist-value-section {
    padding: 32px 20px;
  }

  .nist-value-header h3 {
    font-size: 24px;
  }
}

/* ========================================================================== 
   MODERN NIST ENHANCEMENTS - Professional Design System
   ========================================================================== */

/* Font loaded via common-scripts.php for better performance */

/* Modern Color Palette - Unified Design System */
:root {
    /* Primary palette */
    --nist-primary: #2D3E50;
    --nist-primary-light: #34495E;
    --nist-primary-dark: #1A252F;
    
    /* Accent colors for each phase */
    --nist-identify: #3498DB;
    --nist-identify-light: #5DADE2;
    --nist-identify-dark: #2874A6;
    
    --nist-protect: #27AE60;
    --nist-protect-light: #52BE80;
    --nist-protect-dark: #1E8449;
    
    --nist-detect: #E67E22;
    --nist-detect-light: #EB984E;
    --nist-detect-dark: #CA6F1E;
    
    --nist-respond: #E74C3C;
    --nist-respond-light: #EC7063;
    --nist-respond-dark: #CB4335;
    
    --nist-recover: #16A085;
    --nist-recover-light: #48C9B0;
    --nist-recover-dark: #138D75;
    
    /* Neutral palette */
    --nist-white: #FFFFFF;
    --nist-gray-50: #F8F9FA;
    --nist-gray-100: #F1F3F5;
    --nist-gray-200: #E9ECEF;
    --nist-gray-300: #DEE2E6;
    --nist-gray-400: #CED4DA;
    --nist-gray-500: #ADB5BD;
    --nist-gray-600: #6C757D;
    --nist-gray-700: #495057;
    --nist-gray-800: #343A40;
    --nist-gray-900: #212529;
    
    /* Shadows */
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.15);
    --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.18);
}

/* Typography System */
.nist-content-panel h1,
.nist-content-panel h2,
.nist-content-panel h3,
.nist-content-panel h4,
.nist-content-panel h5,
.nist-content-panel h6 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    color: var(--nist-primary);
    line-height: 1.3;
    margin-bottom: 16px;
}

.nist-content-panel p,
.nist-content-panel li,
.nist-content-panel span {
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    line-height: 1.7;
    color: var(--nist-gray-700);
}

/* Updated Content Panel Border Colors */
.nist-content-panel[data-active-card="identify"] {
    border: 3px solid var(--nist-identify) !important;
    box-shadow: 0 8px 30px rgba(52, 152, 219, 0.15) !important;
}

.nist-content-panel[data-active-card="protect"] {
    border: 3px solid var(--nist-protect) !important;
    box-shadow: 0 8px 30px rgba(39, 174, 96, 0.15) !important;
}

.nist-content-panel[data-active-card="detect"] {
    border: 3px solid var(--nist-detect) !important;
    box-shadow: 0 8px 30px rgba(230, 126, 34, 0.15) !important;
}

.nist-content-panel[data-active-card="respond"] {
    border: 3px solid var(--nist-respond) !important;
    box-shadow: 0 8px 30px rgba(231, 76, 60, 0.15) !important;
}

.nist-content-panel[data-active-card="recover"] {
    border: 3px solid var(--nist-recover) !important;
    box-shadow: 0 8px 30px rgba(22, 160, 133, 0.15) !important;
}

/* Updated Card Colors */
.nist-card[data-target="identify"] {
    background: linear-gradient(135deg, var(--nist-identify) 0%, var(--nist-identify-dark) 100%);
}

.nist-card[data-target="protect"] {
    background: linear-gradient(135deg, var(--nist-protect) 0%, var(--nist-protect-dark) 100%);
}

.nist-card[data-target="detect"] {
    background: linear-gradient(135deg, var(--nist-detect) 0%, var(--nist-detect-dark) 100%);
}

.nist-card[data-target="respond"] {
    background: linear-gradient(135deg, var(--nist-respond) 0%, var(--nist-respond-dark) 100%);
}

.nist-card[data-target="recover"] {
    background: linear-gradient(135deg, var(--nist-recover) 0%, var(--nist-recover-dark) 100%);
}

/* Category-Specific Active Border Colors */
.nist-card[data-target="identify"].active,
.nist-card[data-target="identify"][data-position="0"] {
    border-color: #3498DB !important;
    box-shadow: 0 8px 24px rgba(52, 152, 219, 0.35) !important;
}

.nist-card[data-target="protect"].active,
.nist-card[data-target="protect"][data-position="0"] {
    border-color: #27AE60 !important;
    box-shadow: 0 8px 24px rgba(39, 174, 96, 0.35) !important;
}

.nist-card[data-target="detect"].active,
.nist-card[data-target="detect"][data-position="0"] {
    border-color: #E67E22 !important;
    box-shadow: 0 8px 24px rgba(230, 126, 34, 0.35) !important;
}

.nist-card[data-target="respond"].active,
.nist-card[data-target="respond"][data-position="0"] {
    border-color: #E74C3C !important;
    box-shadow: 0 8px 24px rgba(231, 76, 60, 0.35) !important;
}

.nist-card[data-target="recover"].active,
.nist-card[data-target="recover"][data-position="0"] {
    border-color: #16A085 !important;
    box-shadow: 0 8px 24px rgba(22, 160, 133, 0.35) !important;
}

/* ========================================================================== 
   OPTION C: Full-Width Background Card (Selected Style)
   ========================================================================== */

.nist-service-card-background {
    background: var(--nist-white);
    border-radius: clamp(12px, 1.2vw, 24px); /* Dynamic radius */
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: clamp(1px, 0.15vw, 3px) solid var(--nist-gray-200); /* Dynamic border */
    display: flex;
    flex-direction: column;
    height: 100%;
    box-shadow: 0 clamp(3px, 0.3vw, 6px) clamp(8px, 1vw, 18px) rgba(0, 0, 0, 0.05); /* Dynamic shadow */
    position: relative;
}

.nist-service-card-background:hover {
    transform: translateY(clamp(-6px, -0.7vw, -12px)); /* Dynamic lift */
    box-shadow: 0 clamp(12px, 1.4vw, 24px) clamp(30px, 3.2vw, 60px) rgba(0, 0, 0, 0.12); /* Enhanced shadow */
}

/* Replace SVG icons with attractive CSS gradient placeholder images */
.nist-service-card-background .service-bg-container {
    position: relative;
    aspect-ratio: 16 / 10; /* Maintain consistent proportions across all resolutions */
    min-height: clamp(140px, 12vw, 180px); /* Minimum height for mobile */
    max-height: clamp(200px, 22vw, 400px); /* Maximum height for large screens */
    background: linear-gradient(135deg, var(--nist-primary, #667eea) 0%, var(--nist-identify, #0d6efd) 100%); /* Gradient background */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Add decorative pattern overlay */
.nist-service-card-background .service-bg-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.15) 0%, transparent 50%),
        radial-gradient(circle at 80% 70%, rgba(255, 255, 255, 0.1) 0%, transparent 50%);
    pointer-events: none;
}

/* Service Icon Styling */
.nist-service-card-background .service-icon {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 0.95;
    transition: all 0.3s ease;
}

.nist-service-card-background:hover .service-icon {
    transform: scale(1.02);
    opacity: 1;
}

.nist-service-card-background .service-content {
    padding: clamp(22px, 2.4vw, 50px) clamp(24px, 2.6vw, 55px) clamp(24px, 2.6vw, 55px); /* Dynamic padding */
    flex: 1;
    display: flex;
    flex-direction: column;
    background: var(--nist-white);
}

.nist-service-card-background .service-title {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(16px, 1.6vw, 40px); /* Dynamic font */
    font-weight: 700;
    color: var(--nist-primary);
    margin: 0 0 clamp(12px, 1.3vw, 26px) 0; /* Dynamic margin */
    line-height: 1.3;
}

.nist-service-card-background .service-description {
    font-family: 'Lato', sans-serif;
    font-size: clamp(16px, 1vw, 26px); /* Dynamic font */
    line-height: 1.7;
    color: var(--nist-gray-700);
    margin: 0 0 clamp(18px, 2vw, 40px) 0; /* Dynamic margin */
    flex: 1;
    text-align: justify;
    text-align-last: left;
}

.nist-service-card-background .service-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: clamp(6px, 0.6vw, 12px); /* Dynamic gap */
    padding: clamp(10px, 1vw, 18px) clamp(20px, 2.2vw, 42px); /* Dynamic padding */
    background: var(--nist-primary);
    color: var(--nist-white);
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: clamp(13px, 1.1vw, 26px); /* Dynamic font */
    text-decoration: none;
    border-radius: clamp(6px, 0.7vw, 14px); /* Dynamic radius */
    transition: all 0.3s;
    align-self: flex-start;
}

.nist-service-card-background .service-link:hover {
    background: var(--nist-primary-dark);
    gap: 12px;
    transform: translateX(4px);
    color: var(--nist-white);
}

.nist-service-card-background .service-link::after {
    content: '→';
    font-size: 18px;
    transition: transform 0.3s;
}

/* Color variations for background cards */
.nist-service-card-background.category-identify .service-bg-container {
    background: linear-gradient(135deg, rgba(52, 152, 219, 0.1) 0%, rgba(52, 152, 219, 0.05) 100%);
}

.nist-service-card-background.category-identify:hover {
    border-color: var(--nist-identify);
}

.nist-service-card-background.category-identify .service-icon,
.nist-service-card-background.category-identify .service-bg-icon {
    fill: var(--nist-identify);
}

.nist-service-card-background.category-identify .service-link {
    background: var(--nist-identify);
}

.nist-service-card-background.category-identify .service-link:hover {
    background: var(--nist-identify-dark);
}

.nist-service-card-background.category-protect .service-bg-container {
    background: linear-gradient(135deg, rgba(39, 174, 96, 0.1) 0%, rgba(39, 174, 96, 0.05) 100%);
}

.nist-service-card-background.category-protect:hover {
    border-color: var(--nist-protect);
}

.nist-service-card-background.category-protect .service-icon,
.nist-service-card-background.category-protect .service-bg-icon {
    fill: var(--nist-protect);
}

.nist-service-card-background.category-protect .service-link {
    background: var(--nist-protect);
}

.nist-service-card-background.category-protect .service-link:hover {
    background: var(--nist-protect-dark);
}

.nist-service-card-background.category-detect .service-bg-container {
    background: linear-gradient(135deg, rgba(230, 126, 34, 0.1) 0%, rgba(230, 126, 34, 0.05) 100%);
}

.nist-service-card-background.category-detect:hover {
    border-color: var(--nist-detect);
}

.nist-service-card-background.category-detect .service-icon,
.nist-service-card-background.category-detect .service-bg-icon {
    fill: var(--nist-detect);
}

.nist-service-card-background.category-detect .service-link {
    background: var(--nist-detect);
}

.nist-service-card-background.category-detect .service-link:hover {
    background: var(--nist-detect-dark);
}

.nist-service-card-background.category-respond .service-bg-container {
    background: linear-gradient(135deg, rgba(231, 76, 60, 0.1) 0%, rgba(231, 76, 60, 0.05) 100%);
}

.nist-service-card-background.category-respond:hover {
    border-color: var(--nist-respond);
}

.nist-service-card-background.category-respond .service-icon,
.nist-service-card-background.category-respond .service-bg-icon {
    fill: var(--nist-respond);
}

.nist-service-card-background.category-respond .service-link {
    background: var(--nist-respond);
}

.nist-service-card-background.category-respond .service-link:hover {
    background: var(--nist-respond-dark);
}

.nist-service-card-background.category-recover .service-bg-container {
    background: linear-gradient(135deg, rgba(22, 160, 133, 0.1) 0%, rgba(22, 160, 133, 0.05) 100%);
}

.nist-service-card-background.category-recover:hover {
    border-color: var(--nist-recover);
}

.nist-service-card-background.category-recover .service-icon,
.nist-service-card-background.category-recover .service-bg-icon {
    fill: var(--nist-recover);
}

.nist-service-card-background.category-recover .service-link {
    background: var(--nist-recover);
}

.nist-service-card-background.category-recover .service-link:hover {
    background: var(--nist-recover-dark);
}

/* ========================================================================== 
   EXECUTIVE VALUE CARDS - NEW DESIGN
   ========================================================================== */

.nist-executive-section {
    margin-top: clamp(40px, 4.5vw, 90px); /* Dynamic margin */
    padding: clamp(35px, 4vw, 80px) clamp(30px, 3.5vw, 70px); /* Dynamic padding */
    background: linear-gradient(135deg, var(--nist-gray-50) 0%, var(--nist-white) 100%);
    border-radius: clamp(12px, 1.4vw, 26px); /* Dynamic radius */
    border: clamp(1px, 0.15vw, 3px) solid var(--nist-gray-200); /* Dynamic border */
}

.nist-executive-header {
    text-align: center;
    margin-bottom: clamp(32px, 3.5vw, 70px); /* Dynamic margin */
}

.nist-executive-header h4 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(22px, 2.5vw, 60px); /* Dynamic font */
    font-weight: 800;
    color: var(--nist-primary);
    margin: 0 0 clamp(12px, 1.2vw, 26px) 0; /* Dynamic margin */
}

.nist-executive-header p {
    font-family: 'Lato', sans-serif;
    font-size: clamp(16px, 1vw, 26px); /* Increased for 4K readability */
    color: var(--nist-gray-600);
    margin: 0;
}

.nist-executive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(clamp(250px, 26vw, 380px), 1fr)); /* Dynamic min width */
    gap: clamp(20px, 2.2vw, 50px); /* Dynamic gap */
}

.nist-executive-card {
    background: var(--nist-white);
    padding: clamp(28px, 3vw, 65px) clamp(22px, 2.4vw, 50px); /* Dynamic padding */
    border-radius: clamp(10px, 1vw, 20px); /* Dynamic radius */
    border: clamp(1px, 0.15vw, 3px) solid var(--nist-gray-200); /* Dynamic border */
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    text-align: center;
    box-shadow: 0 clamp(4px, 0.4vw, 8px) clamp(12px, 1.2vw, 24px) rgba(0, 0, 0, 0.05); /* Dynamic shadow */
}

.nist-executive-card:hover {
    transform: translateY(clamp(-6px, -0.7vw, -12px)); /* Dynamic lift */
    box-shadow: 0 clamp(12px, 1.4vw, 24px) clamp(30px, 3.2vw, 60px) rgba(0, 0, 0, 0.12); /* Enhanced shadow */
}

/* Executive icons - FontAwesome styling */
.nist-executive-icon {
    margin: 0 auto clamp(18px, 2vw, 40px); /* Dynamic margin */
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(40px, 4vw, 72px); /* FontAwesome icon size */
    color: var(--nist-primary, #667eea);
    transition: transform 0.3s ease, color 0.3s ease;
}

.nist-executive-icon i {
    display: block;
}

.nist-executive-card:hover .nist-executive-icon {
    transform: scale(1.12);
    color: var(--nist-primary-dark, #5a67d8);
}

.nist-executive-card h5 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(16px, 1.6vw, 40px); /* Dynamic font */
    font-weight: 700;
    color: var(--nist-primary);
    margin: 0 0 clamp(10px, 1vw, 22px) 0; /* Dynamic margin */
}

.nist-executive-card p {
    font-family: 'Lato', sans-serif;
    font-size: clamp(16px, 1vw, 26px); /* Increased for 4K readability */
    line-height: 1.7;
    color: var(--nist-gray-700);
    margin: 0;
    text-align: justify;
    text-align-last: left;
}

/* Phase-specific executive card colors - FontAwesome icons */
.nist-content-panel[data-active-card="identify"] .nist-executive-icon {
    color: var(--nist-identify);
}

.nist-content-panel[data-active-card="identify"] .nist-executive-card:hover {
    border-color: var(--nist-identify);
}

.nist-content-panel[data-active-card="identify"] .nist-executive-card:hover .nist-executive-icon {
    color: var(--nist-identify-dark);
}

.nist-content-panel[data-active-card="protect"] .nist-executive-icon {
    color: var(--nist-protect);
}

.nist-content-panel[data-active-card="protect"] .nist-executive-card:hover {
    border-color: var(--nist-protect);
}

.nist-content-panel[data-active-card="protect"] .nist-executive-card:hover .nist-executive-icon {
    color: var(--nist-protect-dark);
}

.nist-content-panel[data-active-card="detect"] .nist-executive-icon {
    color: var(--nist-detect);
}

.nist-content-panel[data-active-card="detect"] .nist-executive-card:hover {
    border-color: var(--nist-detect);
}

.nist-content-panel[data-active-card="detect"] .nist-executive-card:hover .nist-executive-icon {
    color: var(--nist-detect-dark);
}

.nist-content-panel[data-active-card="respond"] .nist-executive-icon {
    color: var(--nist-respond);
}

.nist-content-panel[data-active-card="respond"] .nist-executive-card:hover {
    border-color: var(--nist-respond);
}

.nist-content-panel[data-active-card="respond"] .nist-executive-card:hover .nist-executive-icon {
    color: var(--nist-respond-dark);
}

.nist-content-panel[data-active-card="recover"] .nist-executive-icon {
    color: var(--nist-recover);
}

.nist-content-panel[data-active-card="recover"] .nist-executive-card:hover {
    border-color: var(--nist-recover);
}

.nist-content-panel[data-active-card="recover"] .nist-executive-card:hover .nist-executive-icon {
    color: var(--nist-recover-dark);
}

/* Phase-specific badge colors */
.nist-content-panel[data-active-card="identify"] .nist-content-badge {
    background: rgba(52, 152, 219, 0.1);
    border-color: var(--nist-identify);
    color: var(--nist-identify-dark);
}

.nist-content-panel[data-active-card="protect"] .nist-content-badge {
    background: rgba(39, 174, 96, 0.1);
    border-color: var(--nist-protect);
    color: var(--nist-protect-dark);
}

.nist-content-panel[data-active-card="detect"] .nist-content-badge {
    background: rgba(230, 126, 34, 0.1);
    border-color: var(--nist-detect);
    color: var(--nist-detect-dark);
}

.nist-content-panel[data-active-card="respond"] .nist-content-badge {
    background: rgba(231, 76, 60, 0.1);
    border-color: var(--nist-respond);
    color: var(--nist-respond-dark);
}

.nist-content-panel[data-active-card="recover"] .nist-content-badge {
    background: rgba(22, 160, 133, 0.1);
    border-color: var(--nist-recover);
    color: var(--nist-recover-dark);
}

/* Section Headers */
.nist-section-header {
    margin: clamp(40px, 4vw, 90px) 0 clamp(24px, 2.5vw, 50px) 0; /* Dynamic margins */
    padding-bottom: clamp(12px, 1.2vw, 24px); /* Dynamic padding */
    border-bottom: clamp(2px, 0.2vw, 4px) solid var(--nist-gray-200); /* Dynamic border */
}

.nist-section-header h4 {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(20px, 2.2vw, 56px); /* Dynamic scaling: 1280px=28px, 5120px=113px capped at 56px */
    font-weight: 700;
    color: var(--nist-primary);
    margin: 0;
}

/* Updated Trust Grid */
.nist-trust-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 24px;
    margin-top: 40px;
}

.nist-trust-card {
    background: var(--nist-white);
    padding: 32px;
    border-radius: 12px;
    border: 2px solid var(--nist-gray-200);
    transition: all 0.3s;
    text-align: center;
    box-shadow: var(--shadow-sm);
}

.nist-trust-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

.nist-trust-title {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(15px, 1.5vw, 36px);
    font-weight: 700;
    line-height: 1.4;
    color: var(--nist-primary);
    margin: 0 0 12px 0;
}

.nist-trust-description {
    font-family: 'Lato', sans-serif;
    font-size: clamp(16px, 1vw, 26px); /* Matches Company Intro p */
    line-height: 1.7;
    color: var(--nist-gray-700);
    margin: 0;
}

.nist-trust-stat {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(28px, 3vw, 68px);
    font-weight: 800;
    color: var(--nist-primary);
    margin: 0 0 8px 0;
    display: block;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .nist-executive-section {
        padding: 40px 24px;
    }
}

@media (max-width: 767px) {
    /* FIX: Increase spacing to prevent overlap with gradient section */
    .nist-executive-section {
        margin-top: 60px !important;
        margin-bottom: 40px;
    }

    .nist-executive-header h4 {
        font-size: 24px;
    }

    .nist-executive-header p {
        font-size: 16px;
    }

    .nist-section-header h4 {
        font-size: 22px;
    }

    .nist-executive-card {
        padding: 28px 20px;
    }

    .nist-executive-grid {
        gap: 20px;
    }

    .nist-service-card-background .service-bg-container {
        aspect-ratio: 16 / 10;
        min-height: 140px;
        max-height: none; /* Let aspect-ratio control height naturally */
    }

    .nist-service-card-background .service-icon {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

/* ============================================
   NIST MINI CARD NAVIGATION (STICKY)
   ============================================ */

.nist-mini-card-nav {
  position: fixed;
  /* Position above scroll-to-top button - dynamic scaling */
  bottom: clamp(75px, 8vh, 120px);
  right: clamp(16px, 2vw, 40px);
  z-index: 9998; /* Slightly below scroll-to-top (9999) */
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: clamp(12px, 1vw, 20px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
  opacity: 0;
  transform: translateX(150%);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
  visibility: hidden;
}

.nist-mini-card-nav.visible {
  opacity: 1 !important;
  transform: translateX(0) !important;
  pointer-events: auto !important;
  visibility: visible !important;
  display: block !important;
}

.mini-card-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 6px;
  padding: 8px;
}

.mini-card {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  background: rgba(255, 255, 255, 0.25);
  border: 1.5px solid transparent;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: visible;
  width: 44px;
  height: 44px;
  color: #64748b;
  font-weight: 500;
}

.mini-card::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(102, 126, 234, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
  border-radius: 12px;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mini-card:hover {
  background: rgba(255, 255, 255, 0.4);
  color: #667eea;
  transform: scale(1.05);
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.2);
}

.mini-card:hover::before {
  opacity: 1;
}

.mini-card.active {
  background: rgba(255, 255, 255, 0.5);
  color: #667eea;
  border-color: #667eea;
  box-shadow: 0 4px 16px rgba(102, 126, 234, 0.3);
}

.mini-card.active::before {
  opacity: 1;
}

.mini-card-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.mini-card-icon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
  transition: all 0.3s ease;
}

.mini-card:hover .mini-card-icon {
  transform: scale(1.1);
}

.mini-card.active .mini-card-icon {
  filter: drop-shadow(0 2px 4px rgba(102, 126, 234, 0.3));
}

/* Hide title text - show as tooltip on hover */
.mini-card-title {
  position: absolute;
  right: calc(100% + 10px);
  top: 50%;
  transform: translateY(-50%);
  font-family: "Lato", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.3px;
  white-space: nowrap;
  background: rgba(30, 41, 59, 0.95);
  color: #ffffff;
  padding: 6px 10px;
  border-radius: 6px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s ease;
  pointer-events: none;
  z-index: 10;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

/* Tooltip arrow */
.mini-card-title::after {
  content: '';
  position: absolute;
  left: 100%;
  top: 50%;
  transform: translateY(-50%);
  border: 5px solid transparent;
  border-left-color: rgba(30, 41, 59, 0.95);
}

/* Show tooltip on hover */
.mini-card:hover .mini-card-title {
  opacity: 1;
  visibility: visible;
}

/* Colorful Mini Cards - Match Main NIST Cards */
.mini-card[data-target="identify"] .mini-card-icon {
  color: #3498DB;
  background: rgba(52, 152, 219, 0.12);
  border-radius: 8px;
  padding: 4px;
}

.mini-card[data-target="identify"]:hover .mini-card-icon,
.mini-card[data-target="identify"].active .mini-card-icon {
  background: rgba(52, 152, 219, 0.22);
}

.mini-card[data-target="identify"]:hover,
.mini-card[data-target="identify"].active {
  border-color: #3498DB;
  box-shadow: 0 3px 12px rgba(52, 152, 219, 0.25);
}

.mini-card[data-target="protect"] .mini-card-icon {
  color: #27AE60;
  background: rgba(39, 174, 96, 0.12);
  border-radius: 8px;
  padding: 4px;
}

.mini-card[data-target="protect"]:hover .mini-card-icon,
.mini-card[data-target="protect"].active .mini-card-icon {
  background: rgba(39, 174, 96, 0.22);
}

.mini-card[data-target="protect"]:hover,
.mini-card[data-target="protect"].active {
  border-color: #27AE60;
  box-shadow: 0 3px 12px rgba(39, 174, 96, 0.25);
}

.mini-card[data-target="detect"] .mini-card-icon {
  color: #E67E22;
  background: rgba(230, 126, 34, 0.12);
  border-radius: 8px;
  padding: 4px;
}

.mini-card[data-target="detect"]:hover .mini-card-icon,
.mini-card[data-target="detect"].active .mini-card-icon {
  background: rgba(230, 126, 34, 0.22);
}

.mini-card[data-target="detect"]:hover,
.mini-card[data-target="detect"].active {
  border-color: #E67E22;
  box-shadow: 0 3px 12px rgba(230, 126, 34, 0.25);
}

.mini-card[data-target="respond"] .mini-card-icon {
  color: #E74C3C;
  background: rgba(231, 76, 60, 0.12);
  border-radius: 8px;
  padding: 4px;
}

.mini-card[data-target="respond"]:hover .mini-card-icon,
.mini-card[data-target="respond"].active .mini-card-icon {
  background: rgba(231, 76, 60, 0.22);
}

.mini-card[data-target="respond"]:hover,
.mini-card[data-target="respond"].active {
  border-color: #E74C3C;
  box-shadow: 0 3px 12px rgba(231, 76, 60, 0.25);
}

.mini-card[data-target="recover"] .mini-card-icon {
  color: #16A085;
  background: rgba(22, 160, 133, 0.12);
  border-radius: 8px;
  padding: 4px;
}

.mini-card[data-target="recover"]:hover .mini-card-icon,
.mini-card[data-target="recover"].active .mini-card-icon {
  background: rgba(22, 160, 133, 0.22);
}

.mini-card[data-target="recover"]:hover,
.mini-card[data-target="recover"].active {
  border-color: #16A085;
  box-shadow: 0 3px 12px rgba(22, 160, 133, 0.25);
}

/* Mobile Responsive */
@media (max-width: 767px) {
  .nist-mini-card-nav {
    bottom: 65px;
    right: 8px;
  }

  .mini-card-container {
    padding: 5px;
    gap: 4px;
  }

  .mini-card {
    width: 36px;
    height: 36px;
    padding: 7px;
  }

  .mini-card-icon {
    width: 20px;
    height: 20px;
  }

  /* Hide tooltip on mobile - touch devices */
  .mini-card:hover .mini-card-title {
    display: none;
  }
}

/* Tablet Responsive */
@media (min-width: 768px) and (max-width: 1024px) {
  .nist-mini-card-nav {
    bottom: 75px;
    right: 12px;
  }

  .mini-card-container {
    padding: 6px;
    gap: 5px;
  }

  .mini-card {
    width: 40px;
    height: 40px;
    padding: 8px;
  }

  .mini-card-icon {
    width: 22px;
    height: 22px;
  }

  /* Content panel - expand width since mini-nav is compact */
  .nist-content-panel {
    width: calc(100% - 30px);
    max-width: 100%;
    margin: 0 15px;
    padding: 28px 24px;
  }

  /* Service cards - full width images, no cropping */
  .nist-service-card-background .service-bg-container {
    width: 100%;
    min-height: 160px;
    max-height: none; /* Let aspect-ratio control height naturally */
  }

  .nist-service-card-background .service-icon {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Services grid - optimize for tablet */
  .nist-services-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

/* Laptop Responsive (1025px - 1600px) */
@media (min-width: 1025px) and (max-width: 1600px) {
  .nist-mini-card-nav {
    bottom: 80px;
    right: 12px;
  }

  .mini-card-container {
    padding: 6px;
    gap: 5px;
  }

  .mini-card {
    width: 42px;
    height: 42px;
    padding: 9px;
  }

  .mini-card-icon {
    width: 22px;
    height: 22px;
  }

  /* Service cards - prevent image cropping */
  .nist-service-card-background .service-bg-container {
    min-height: 160px;
    max-height: none; /* Let aspect-ratio control height naturally */
  }
}

/* ============================================
   CLIENT LOGO SECTION - MODERN STATIC GRID
   ============================================ */

.client-logo-section {
  background: #ffffff;
  padding: 80px 0;
  position: relative;
}

.client-logo-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #e0e0e0 50%, transparent 100%);
}

.client-logo-header {
  text-align: center;
  margin-bottom: 60px;
}

.client-logo-header h2 {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(24px, 2.6vw, 72px);
  font-weight: 700;
  line-height: 1.2;
  color: #1a202c;
  margin-bottom: 15px;
  letter-spacing: -0.02em;
}

.client-logo-header p {
  font-family: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(16px, 1vw, 26px);
  line-height: 1.7;
  color: #64748b;
  font-weight: 400;
}

/* Logo Grid Container */
.client-logo-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Logo Items */
.client-logo-section .logo-item {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px 25px;
  min-height: 120px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid #e5e7eb;
}

.client-logo-section .logo-item:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
  border-color: #0066cc;
}

.client-logo-section .logo-item img,
.client-logo-section .logo-item svg {
  max-width: 100%;
  max-height: 60px;
  width: auto;
  height: auto;
  object-fit: contain;
  opacity: 0.75;
  transition: all 0.3s ease;
  display: block;
}

.client-logo-section .logo-item:hover img,
.client-logo-section .logo-item:hover svg {
  opacity: 1;
  transform: scale(1.08);
}

/* Responsive Design */
@media (max-width: 991px) {
  .client-logo-section {
    padding: 60px 0;
  }

  .client-logo-header {
    margin-bottom: 40px;
  }

  .client-logo-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    max-width: 600px;
  }

  .client-logo-section .logo-item {
    padding: 25px 20px;
    min-height: 100px;
  }
}

@media (max-width: 767px) {
  .client-logo-section {
    padding: 50px 0;
  }

  .client-logo-header {
    margin-bottom: 30px;
    padding: 0 20px;
  }

  .client-logo-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 0 15px;
  }

  .client-logo-section .logo-item {
    padding: 20px 15px;
    min-height: 85px;
    border-radius: 12px;
  }

  .client-logo-section .logo-item img,
  .client-logo-section .logo-item svg {
    max-height: 45px;
  }
}

@media (max-width: 480px) {
  .client-logo-grid {
    gap: 15px;
  }

  .client-logo-section .logo-item {
    padding: 18px 12px;
    min-height: 75px;
  }

  .client-logo-section .logo-item img,
  .client-logo-section .logo-item svg {
    max-height: 40px;
  }

  /* =============================================
     NIST Coverflow Cards - Small Mobile (480px)
     Optimized for iPhone SE, small Android devices
     ============================================= */
  .nist-coverflow-wrapper {
    height: 340px;
    margin-top: 15px;
    margin-bottom: 30px;
  }

  .nist-card {
    width: 160px;
    height: 180px;
    padding: 10px 8px;
    margin-left: -80px;
    margin-top: -90px;
  }

  /* Reduced offsets for small screens */
  .nist-card[data-position="0"] {
    transform: translateX(0) scale(1);
    opacity: 1;
    z-index: 10;
  }

  .nist-card[data-position="1"] {
    transform: translateX(85px) scale(0.85);
    opacity: 0.7;
    z-index: 5;
  }

  .nist-card[data-position="-1"] {
    transform: translateX(-85px) scale(0.85);
    opacity: 0.7;
    z-index: 5;
  }

  .nist-card[data-position="2"] {
    transform: translateX(140px) scale(0.70);
    opacity: 0.5;
    z-index: 3;
  }

  .nist-card[data-position="-2"] {
    transform: translateX(-140px) scale(0.70);
    opacity: 0.5;
    z-index: 3;
  }

  .nist-card[data-position="3"],
  .nist-card[data-position="-3"],
  .nist-card[data-position="4"],
  .nist-card[data-position="-4"] {
    opacity: 0;
    pointer-events: none;
  }

  .nist-card-icon {
    width: 40px;
    height: 40px;
    margin-bottom: 6px;
  }

  .nist-card-icon svg {
    width: 22px;
    height: 22px;
  }

  .nist-card-title {
    font-size: 12px;
    margin: 0;
  }

  .nist-card.active .nist-card-title {
    font-size: 13px;
  }

  .nist-table-header {
    margin-bottom: 15px;
  }

  .nist-table-header h2 {
    font-size: 20px !important;
  }

  .nist-table-header .intro-sub-heading {
    font-size: 14px !important;
  }

  /* =============================================
     FIX: Executive Cards Responsiveness (Mobile)
     Prevents overflow on small Android/iPhone screens
     ============================================= */

  /* Force single column layout for executive cards */
  .nist-executive-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  /* Reduce section padding for better fit */
  .nist-executive-section {
    padding: 24px 16px;
    margin-left: 0;
    margin-right: 0;
  }

  /* Compact card padding */
  .nist-executive-card {
    padding: 20px 16px;
  }

  /* Mini-nav positioning for very small screens */
  .nist-mini-card-nav {
    right: 6px;
    bottom: 60px;
  }

  /* Prevent horizontal overflow */
  .nist-content-panel,
  .nist-content-area {
    overflow-x: hidden;
    max-width: 100%;
  }
}

/* FIX: Hide mini-nav on very small screens (< 400px) */
@media (max-width: 400px) {
  .nist-mini-card-nav {
    display: none !important;
  }

  /* Extra compact padding for very small screens */
  .nist-executive-section {
    padding: 20px 12px;
  }

  .nist-executive-card {
    padding: 18px 14px;
  }
}

/* ==========================================================================
   HIGH-RESOLUTION DISPLAYS - 2K/4K/5K Breakpoints
   ========================================================================== */

/* ----------------- 1601-1919px DISPLAYS (Large Laptop/Small Desktop) ----------------- */
@media (min-width: 1601px) and (max-width: 1919px) {
  /* Service cards - prevent image cropping */
  .nist-service-card-background .service-bg-container {
    min-height: 170px;
    max-height: none; /* Let aspect-ratio control height naturally */
  }
}

/* ----------------- 1920px+ DISPLAYS (FHD to 2K) ----------------- */
@media (min-width: 1920px) and (max-width: 2559px) {
  .nist-table-header h2 {
    font-size: clamp(38px, 2.4vw, 52px); /* ~85% of slider h2 at 1920px */
  }

  .nist-table-header .intro-sub-heading {
    font-size: clamp(20px, 1.3vw, 28px) !important;
  }

  .nist-table-header p {
    font-size: clamp(16px, 1vw, 20px);
  }

  .nist-content-panel {
    max-width: 1760px;
    padding: clamp(45px, 2.8vw, 65px);
  }

  .client-logo-grid {
    max-width: 1200px;
    gap: clamp(24px, 2vw, 36px);
  }

  .client-logo-section .logo-item img,
  .client-logo-section .logo-item svg {
    max-height: clamp(55px, 3.5vw, 70px);
  }

  /* Mini-nav scaling for FHD+ */
  .mini-card-container {
    padding: 10px;
    gap: 8px;
  }

  .mini-card {
    width: 50px;
    height: 50px;
    padding: 11px;
    border-radius: 12px;
  }

  .mini-card-icon {
    width: 28px;
    height: 28px;
  }

  .mini-card-title {
    font-size: 13px;
    padding: 7px 12px;
  }

  /* Coverflow offset variables for FHD+ */
  :root {
    --coverflow-offset-right-1: 300px;
    --coverflow-offset-right-2: 480px;
    --coverflow-offset-left-1: -300px;
    --coverflow-offset-left-2: -480px;
    --coverflow-depth-1: -120px;
    --coverflow-depth-2: -200px;
  }

  /* NIST card scaling for FHD+ */
  .nist-coverflow-wrapper {
    width: 95%;
    max-width: 1800px;
    min-height: 480px;
  }

  .nist-card {
    width: clamp(280px, 16vw, 360px);
    height: clamp(310px, 18vw, 400px);
    padding: 16px 14px;
    border-radius: 8px;
  }

  .nist-card-icon {
    width: clamp(58px, 3vw, 72px);
    height: clamp(58px, 3vw, 72px);
  }

  .nist-card-title {
    font-size: clamp(16px, 0.9vw, 20px);
  }

  .nist-card-description {
    font-size: clamp(13px, 0.7vw, 16px);
  }

  /* Service card image container - remove max-height to prevent cropping at FHD+ */
  .nist-service-card-background .service-bg-container {
    min-height: 180px;
    max-height: none; /* Let aspect-ratio control height naturally */
  }
}

/* ----------------- 2K/QHD DISPLAYS (2560px - 3839px) ----------------- */
@media (min-width: 2560px) and (max-width: 3839px) {
  /* Coverflow offset variables for 2K - tighter spacing for better visual connection */
  :root {
    --coverflow-offset-right-1: 380px;
    --coverflow-offset-right-2: 600px;
    --coverflow-offset-left-1: -380px;
    --coverflow-offset-left-2: -600px;
    --coverflow-depth-1: -200px;
    --coverflow-depth-2: -300px;
    --coverflow-rotation-1: 44deg;
    --coverflow-rotation-2: 50deg;
    --coverflow-scale-1: 0.80;
    --coverflow-scale-2: 0.65;
  }

  /* Coverflow wrapper - expand for 2K - utilize more viewport width */
  .nist-coverflow-wrapper {
    width: 95%;
    max-width: 2200px;
    min-height: 560px;
  }

  /* NIST card scaling for 2K - larger cards with tighter gaps */
  .nist-card {
    width: clamp(320px, 14vw, 420px);
    height: clamp(355px, 15.5vw, 465px);
    padding: 18px 16px;
    border-radius: 10px;
  }

  .nist-card-icon {
    width: clamp(62px, 2.8vw, 82px);
    height: clamp(62px, 2.8vw, 82px);
    margin-bottom: clamp(10px, 0.5vw, 16px);
  }

  .nist-card-icon svg {
    width: clamp(34px, 1.4vw, 46px);
    height: clamp(34px, 1.4vw, 46px);
  }

  .nist-card-title {
    font-size: clamp(18px, 0.8vw, 24px);
    margin: 0;
  }

  .nist-card-description {
    font-size: clamp(14px, 0.6vw, 19px);
  }

  .nist-table-header h2 {
    font-size: clamp(44px, 2.3vw, 62px); /* ~85% of slider h2 at 2K */
  }

  .nist-table-header .intro-sub-heading {
    font-size: clamp(24px, 1.3vw, 32px) !important;
  }

  .nist-table-header p {
    font-size: clamp(18px, 0.95vw, 23px);
  }

  .nist-content-panel {
    width: 95%;
    max-width: 2400px;
    padding: clamp(55px, 2.5vw, 80px);
  }

  .client-logo-grid {
    width: 95%;
    max-width: 2000px;
    gap: clamp(32px, 1.8vw, 48px);
  }

  .client-logo-section .logo-item {
    padding: clamp(24px, 1.2vw, 36px) clamp(20px, 1vw, 30px);
    min-height: clamp(110px, 5vw, 140px);
    border-radius: clamp(14px, 0.7vw, 20px);
  }

  .client-logo-section .logo-item img,
  .client-logo-section .logo-item svg {
    max-height: clamp(65px, 3vw, 85px);
  }

  /* Grid column scaling for 2K - ensure 3 cards per row */
  .nist-services-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(32px, 1.8vw, 48px);
  }

  /* Service card image container - remove max-height to prevent cropping at 2K */
  .nist-service-card-background .service-bg-container {
    min-height: 200px;
    max-height: none; /* Let aspect-ratio control height naturally */
  }

  .nist-success-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(36px, 2vw, 52px);
  }

  .nist-trust-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  /* Mini-nav scaling for 2K/QHD */
  .mini-card-container {
    padding: 12px;
    gap: 10px;
  }

  .mini-card {
    width: 58px;
    height: 58px;
    padding: 13px;
    border-radius: 14px;
  }

  .mini-card-icon {
    width: 32px;
    height: 32px;
  }

  .mini-card-title {
    font-size: 14px;
    padding: 8px 14px;
  }
}

/* ----------------- 4K DISPLAYS (3840px - 5119px) ----------------- */
@media (min-width: 3840px) and (max-width: 5119px) {
  /* Coverflow offset variables for 4K - tighter spacing for visual cohesion */
  :root {
    --coverflow-offset-right-1: 460px;
    --coverflow-offset-right-2: 740px;
    --coverflow-offset-left-1: -460px;
    --coverflow-offset-left-2: -740px;
    --coverflow-depth-1: -180px;
    --coverflow-depth-2: -300px;
    --coverflow-rotation-1: 44deg;
    --coverflow-rotation-2: 50deg;
    --coverflow-scale-1: 0.80;
    --coverflow-scale-2: 0.65;
  }

  /* Coverflow wrapper - expand for 4K - utilize more viewport width */
  .nist-coverflow-wrapper {
    width: 95%;
    max-width: 2800px;
    min-height: 680px;
  }

  /* NIST card scaling for 4K - larger cards with balanced gaps */
  .nist-card {
    width: clamp(380px, 12vw, 500px);
    height: clamp(420px, 13.2vw, 550px);
    padding: 22px 20px;
    border-radius: 12px;
  }

  .nist-card-icon {
    width: clamp(72px, 2vw, 95px);
    height: clamp(72px, 2vw, 95px);
    margin-bottom: clamp(12px, 0.4vw, 18px);
  }

  .nist-card-icon svg {
    width: clamp(40px, 1.1vw, 54px);
    height: clamp(40px, 1.1vw, 54px);
  }

  .nist-card-title {
    font-size: clamp(20px, 0.65vw, 28px);
    margin: 0;
  }

  .nist-card-description {
    font-size: clamp(16px, 0.5vw, 22px);
  }

  .nist-table-header h2 {
    font-size: clamp(52px, 2.2vw, 72px); /* ~85% of slider h2 at 4K */
  }

  .nist-table-header .intro-sub-heading {
    font-size: clamp(28px, 1.2vw, 36px) !important;
  }

  .nist-table-header p {
    font-size: clamp(21px, 0.9vw, 26px);
    line-height: 1.9;
  }

  .nist-content-panel {
    width: 95%;
    max-width: 3500px;
    padding: clamp(70px, 2.2vw, 100px);
  }

  .client-logo-grid {
    width: 95%;
    max-width: 3200px;
    gap: clamp(44px, 1.5vw, 64px);
  }

  .client-logo-section .logo-item {
    padding: clamp(32px, 1vw, 48px) clamp(28px, 0.9vw, 42px);
    min-height: clamp(140px, 4.5vw, 180px);
    border-radius: clamp(18px, 0.6vw, 26px);
  }

  .client-logo-section .logo-item img,
  .client-logo-section .logo-item svg {
    max-height: clamp(80px, 2.5vw, 110px);
  }

  /* Grid column scaling for 4K - ensure 3 cards per row */
  .nist-services-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(44px, 1.5vw, 64px);
  }

  /* Service card image container - remove max-height to prevent cropping at 4K */
  .nist-service-card-background .service-bg-container {
    min-height: 280px;
    max-height: none; /* Let aspect-ratio control height naturally */
  }

  .nist-success-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(48px, 1.6vw, 68px);
  }

  .nist-trust-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(36px, 1.2vw, 52px);
  }

  /* Spacing overrides for 4K */
  .nist-section-header {
    margin: clamp(60px, 2vw, 100px) 0 clamp(32px, 1vw, 52px) 0;
  }

  .nist-executive-section {
    margin-top: clamp(60px, 2vw, 100px);
    padding: clamp(50px, 1.8vw, 90px) clamp(45px, 1.6vw, 80px);
  }

  .nist-executive-grid {
    gap: clamp(36px, 1.2vw, 52px);
  }

  .nist-success-title {
    font-size: clamp(32px, 1.2vw, 48px);
  }

  .nist-success-company,
  .nist-success-description {
    font-size: clamp(21px, 0.9vw, 26px);
  }

  .nist-trust-stat {
    font-size: clamp(48px, 2vw, 80px);
  }

  .nist-trust-title {
    font-size: clamp(22px, 0.8vw, 32px);
  }

  .nist-trust-description {
    font-size: clamp(20px, 0.85vw, 26px);
  }

  /* Trust icon scaling for 4K - balanced with stats */
  .nist-trust-icon {
    font-size: clamp(44px, 2.8vw, 76px);
  }

  /* Executive icon scaling for 4K */
  .nist-executive-icon {
    font-size: clamp(52px, 3.2vw, 84px);
  }

  /* Card description p tags - consistent scaling at 4K */
  .service-description {
    font-size: clamp(20px, 0.85vw, 26px);
  }

  .nist-content-header p {
    font-size: clamp(21px, 0.9vw, 26px);
  }

  .nist-executive-header p {
    font-size: clamp(21px, 0.9vw, 26px);
  }

  .nist-executive-card p {
    font-size: clamp(20px, 0.85vw, 26px);
  }

  .client-logo-header p {
    font-size: clamp(21px, 0.9vw, 26px);
  }

  /* Mini-nav scaling for 4K */
  .mini-card-container {
    padding: 14px;
    gap: 12px;
  }

  .mini-card {
    width: 68px;
    height: 68px;
    padding: 15px;
    border-radius: 16px;
  }

  .mini-card-icon {
    width: 38px;
    height: 38px;
  }

  .mini-card-title {
    font-size: 16px;
    padding: 10px 16px;
    border-radius: 8px;
  }
}

/* ----------------- 5K+ DISPLAYS (5120px+) ----------------- */
@media (min-width: 5120px) {
  /* Coverflow offset variables for 5K - tighter spacing for visual cohesion */
  :root {
    --coverflow-offset-right-1: 580px;
    --coverflow-offset-right-2: 920px;
    --coverflow-offset-left-1: -580px;
    --coverflow-offset-left-2: -920px;
    --coverflow-depth-1: -220px;
    --coverflow-depth-2: -360px;
    --coverflow-rotation-1: 44deg;
    --coverflow-rotation-2: 50deg;
    --coverflow-scale-1: 0.80;
    --coverflow-scale-2: 0.65;
  }

  /* Coverflow wrapper - expand for 5K - utilize full viewport width */
  .nist-coverflow-wrapper {
    width: 95%;
    max-width: 3600px;
    min-height: 800px;
  }

  /* NIST card scaling for 5K - larger cards with balanced gaps */
  .nist-card {
    width: clamp(460px, 10vw, 600px);
    height: clamp(510px, 11vw, 660px);
    padding: 26px 24px;
    border-radius: 14px;
  }

  .nist-card-icon {
    width: clamp(85px, 1.8vw, 115px);
    height: clamp(85px, 1.8vw, 115px);
    margin-bottom: clamp(14px, 0.35vw, 22px);
  }

  .nist-card-icon svg {
    width: clamp(48px, 1vw, 65px);
    height: clamp(48px, 1vw, 65px);
  }

  .nist-card-title {
    font-size: clamp(24px, 0.55vw, 34px);
    margin: 0;
  }

  .nist-card-description {
    font-size: clamp(18px, 0.45vw, 26px);
  }

  .nist-table-header h2 {
    font-size: clamp(58px, 2.1vw, 82px); /* ~85% of slider h2 at 5K */
  }

  .nist-table-header .intro-sub-heading {
    font-size: clamp(32px, 1.1vw, 40px) !important;
  }

  .nist-table-header p {
    font-size: clamp(24px, 0.85vw, 29px);
    line-height: 2;
  }

  .nist-content-panel {
    width: 95%;
    max-width: 4800px;
    padding: clamp(85px, 2vw, 120px);
  }

  .client-logo-grid {
    width: 95%;
    max-width: 4400px;
    gap: clamp(56px, 1.4vw, 80px);
  }

  .client-logo-section .logo-item {
    padding: clamp(40px, 0.9vw, 60px) clamp(36px, 0.85vw, 54px);
    min-height: clamp(170px, 4vw, 220px);
    border-radius: clamp(22px, 0.55vw, 32px);
  }

  .client-logo-section .logo-item img,
  .client-logo-section .logo-item svg {
    max-height: clamp(100px, 2.2vw, 140px);
  }

  /* Grid column scaling for 5K - ensure 3-4 cards per row */
  .nist-services-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(56px, 1.4vw, 80px);
  }

  /* Service card image container - remove max-height to prevent cropping at 5K */
  .nist-service-card-background .service-bg-container {
    min-height: 350px;
    max-height: none; /* Let aspect-ratio control height naturally */
  }

  .nist-success-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(60px, 1.5vw, 84px);
  }

  .nist-trust-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(48px, 1vw, 68px);
  }

  /* Spacing overrides for 5K */
  .nist-section-header {
    margin: clamp(80px, 1.8vw, 120px) 0 clamp(40px, 0.9vw, 60px) 0;
  }

  .nist-executive-section {
    margin-top: clamp(80px, 1.8vw, 120px);
    padding: clamp(65px, 1.6vw, 110px) clamp(55px, 1.4vw, 95px);
  }

  .nist-executive-grid {
    gap: clamp(48px, 1vw, 68px);
  }

  .nist-success-title {
    font-size: clamp(38px, 1.1vw, 56px);
  }

  .nist-success-company,
  .nist-success-description {
    font-size: clamp(24px, 0.85vw, 29px);
  }

  .nist-trust-stat {
    font-size: clamp(58px, 1.8vw, 96px);
  }

  .nist-trust-title {
    font-size: clamp(26px, 0.75vw, 38px);
  }

  .nist-trust-description {
    font-size: clamp(23px, 0.8vw, 29px);
  }

  /* Trust icon scaling for 5K - balanced with stats */
  .nist-trust-icon {
    font-size: clamp(52px, 2.4vw, 90px);
  }

  /* Executive icon scaling for 5K */
  .nist-executive-icon {
    font-size: clamp(60px, 2.8vw, 96px);
  }

  /* Card description p tags - consistent scaling at 5K */
  .service-description {
    font-size: clamp(23px, 0.8vw, 29px);
  }

  .nist-content-header p {
    font-size: clamp(24px, 0.85vw, 29px);
  }

  .nist-executive-header p {
    font-size: clamp(24px, 0.85vw, 29px);
  }

  .nist-executive-card p {
    font-size: clamp(23px, 0.8vw, 29px);
  }

  .client-logo-header p {
    font-size: clamp(24px, 0.85vw, 29px);
  }

  /* Mini-nav scaling for 5K */
  .mini-card-container {
    padding: 16px;
    gap: 14px;
  }

  .mini-card {
    width: 80px;
    height: 80px;
    padding: 18px;
    border-radius: 18px;
  }

  .mini-card-icon {
    width: 44px;
    height: 44px;
  }

  .mini-card-title {
    font-size: 18px;
    padding: 12px 18px;
    border-radius: 10px;
  }
}