@keyframes cms-shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}
.cms-loading {
  position: relative;
  color: transparent !important;
  /* Override any background-image (inline styles, Tailwind efewfrwe-[url(...)]) */
  background-image: none !important;
  background-color: transparent !important;
  background: linear-gradient(90deg, 
    rgba(128, 128, 128, 0.1) 25%, 
    rgba(128, 128, 128, 0.2) 50%, 
    rgba(128, 128, 128, 0.1) 75%
  ) !important;
  background-size: 200% 100% !important;
  animation: cms-shimmer 1.5s infinite !important;
  border-radius: 12px;
  min-height: 1em;
  min-width: 3em;
  overflow: hidden;
}
.cms-loading * {
  visibility: hidden !important;
}
.cms-loading img {
  opacity: 0 !important;
}



    :root{
      --pc-space:1rem;
      --pc-bg:#09090b;
      --pc-fg:#e3e3e3;
      --pc-s1:#101012;
      --pc-s2:#27272a;
      --pc-s3:#52525b;
      --pc-accent: #c9835a;
      --pc-glass: rgba(255,255,255,0.04);
      --pc-glass-2: rgba(255,255,255,0.02);
      --pc-font : 'Space Grotesk', sans-serif;
    }

    *{box-sizing:border-box}
    /* .clients .container{margin:0;display:grid;place-items:center;padding:var(--pc-space);color:var(--pc-fg);font-family:Inter,system-ui,Segoe UI,Roboto,"Helvetica Neue",Arial} */

    .clients .container {
      display: grid;
      place-items: center;
      padding: var(--pc-space);
      color: var(--pc-fg);
      /* height: 25em; */
    }


    
    main{
      display:grid;
      gap:var(--pc-space);
      inline-size:min(100%,100%);
      grid-template-columns:repeat(1,1fr);
      margin-inline:auto;
      padding: 0;

    }
    @media(min-width:640px){ main{ grid-template-columns:repeat(4,1fr); } }
    @media(min-width:1100px){ main{ grid-template-columns:repeat(4,1fr); } }

    *{
      font-family: var(--pc-font);
      font-weight: 700;
    }

    /* main{ grid-template-columns:repeat(2,1fr); } */

    /* existing card container preserved (renamed) */
    .pc-card{
      position:relative;
      overflow:hidden;
      display:grid;
      grid-template-areas:"card";
      place-items:center;
      aspect-ratio:4/5;
      border:1px solid var(--pc-s2);
      isolation:isolate;
      transition:border-color 200ms cubic-bezier(.5,1,.89,1);
      user-select:none;
      background: linear-gradient(180deg, rgba(255,255,255,0.01), transparent);
      border-radius:14px;
      cursor:pointer;
    }

    .pc-card::before{
      content:"";
      position:absolute;inset:0;
      background: radial-gradient(circle at bottom left, transparent 56%, var(--pc-s1));
      pointer-events:none;
      transition:opacity 900ms;
    }
    .pc-card::after{
      content:"";
      position:absolute;inset:0;margin:auto;aspect-ratio:1;
      background:radial-gradient(circle, var(--pc-bg), transparent 65%);
      opacity:0;transition:opacity 800ms;
    }

    .pc-card > *{ grid-area:card }

    /* ---------- NEW interior styles (only these changed) ---------- */

    /* inner glass panel that sits above the pixel-canvas */
    .pc-panel {
      position: absolute;
      inset: 16px;
      display: flex;
      flex-direction: column;
      gap: 12px;
      pointer-events: none; /* keep pixel canvas interactions */
      border-radius: 10px;
      padding: 14px;
      align-items: flex-end;
      justify-content: space-between;
      background: linear-gradient(180deg, var(--pc-glass), rgba(255,255,255,0.01));
      border: 1px solid rgba(255,255,255,0.04);
      backdrop-filter: blur(6px) saturate(120%);
      -webkit-backdrop-filter: blur(6px) saturate(120%);
      box-shadow: 0 6px 20px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.02);
    }

    .pc-topbar{
      width:100%;
      display:flex;
      align-items:center;
      gap:10px;
      justify-content:space-between;
      pointer-events:auto; /* allow button click if needed later */
    }

    .pc-left{
      display:flex;align-items:center;gap:12px;
    }

    .pc-badge {
      display:inline-grid;
      place-items:center;
      min-width:40px;height:40px;border-radius:10px;
      background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
      border:1px solid rgba(255,255,255,0.03);
      font-weight:700;font-family:'Space Grotesk',sans-serif;color:var(--pc-s3);
      box-shadow: 0 4px 14px rgba(0,0,0,0.45);
      transform: translateY(0);
      transition: transform .28s cubic-bezier(.2,.9,.3,1), box-shadow .28s;
    }

    /* process number */
    .pc-step-num{
      font-family:'Space Grotesk',sans-serif;
      font-weight:800;
      font-size:1.05rem;
      color:var(--pc-s3);
      letter-spacing:0.02em;
      text-shadow: 0 1px 0 rgba(255,255,255,0.02);
    }

    .pc-progress-wrap{
      flex:1;margin-left:8px;margin-right:10px;
      display:flex;align-items:center;gap:10px;
      min-width:0;
    }

    .pc-progress-line{
      flex:1;height:8px;border-radius:999px;background:linear-gradient(90deg,var(--pc-s2), rgba(255,255,255,0.02));
      position:relative;overflow:hidden;border:1px solid rgba(0,0,0,0.25);
    }

    .pc-progress-fill{
      position:absolute;left:0;top:0;height:100%;width:0%;
      background: linear-gradient(90deg, rgba(255,255,255,0.06), var(--pc-accent));
      box-shadow: 0 6px 18px rgba(0,0,0,0.45), inset 0 0 12px rgba(255,255,255,0.02);
      transition: width 900ms cubic-bezier(.22,1,.36,1);
      will-change: width;
    }

    .pc-progress-dot{
      width:12px;height:12px;border-radius:50%;
      background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.04);
      box-shadow: 0 6px 18px rgba(0,0,0,0.45), inset 0 -1px 0 rgba(255,255,255,0.02);
    }

    /* center content: icon + label */
    .pc-center{
      width:100%;
      display:flex;flex-direction:column;align-items:center;justify-content:center;
      gap:8px;padding:12px;border-radius:10px;
      pointer-events:none;
      text-align:center;
    }

    .pc-center svg{
      width:42px;height:42px;color:var(--pc-s3);
      filter: drop-shadow(0 6px 18px rgba(0,0,0,0.45));
    }

    .pc-title{
      font-family:'Space Grotesk',sans-serif;
      font-size:1rem;font-weight:700;color:var(--pc-s3);
      letter-spacing:-0.01em;
    }

    .pc-sub{
      font-size:0.68rem;color:rgba(227,227,227,0.75);max-width:90%;
      line-height:1.2;opacity:0.95;
    }

    /* description pill */
    .pc-desc{
      margin-top:6px;padding:8px 12px;border-radius:999px;background:linear-gradient(90deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
      border:1px solid rgba(255,255,255,0.02);
      font-size:0.78rem;color:rgba(227,227,227,0.85);
      display:inline-flex;align-items:center;gap:8px;
      pointer-events:none;
    }

    /* actions/footer area */
    .pc-footer{
      width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:auto;
    }

    .pc-cta{
      display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;
      background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
      color:var(--pc-fg);font-weight:700;font-size:0.9rem;border:1px solid rgba(255,255,255,0.04);
      cursor:pointer;backdrop-filter: blur(4px);
      box-shadow: 0 8px 28px rgba(0,0,0,0.5);
    }

    .pc-ghost {
      font-size:0.68rem;color:rgba(227,227,227,0.7);padding:8px 10px;border-radius:10px;
      background:transparent;border:1px dashed rgba(255,255,255,0.03);
    }

    /* small responsive tweaks */
    @media (max-width:540px){
      .pc-panel{ inset:10px;padding:10px }
      .pc-badge{ min-width:40px;height:40px }
      .pc-center svg{ width:38px;height:38px }
      .pc-title{ font-size:1rem }
    }

    /* hover/touch micro interactions */
    .pc-card:where(:hover, :focus-within) .pc-badge{ transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,0.6) }
    .pc-card:where(:hover, :focus-within) .pc-progress-fill{ transform: scaleY(1.02) }
    .pc-card:where(:hover, :focus-within) .pc-cta{ transform: translateY(-2px) }

    /* preserve older svg color transitions */
    .pc-card svg{ transition: color .28s ease, transform .28s ease; }

    /* duplicated small tweaks preserved & updated
    .pc-panel{ inset:10px;padding:10px }
    .pc-badge{ min-width:40px;height:40px }
    .pc-center svg{ width:38px;height:38px }
    .pc-title{ font-size:1rem } */
/* small card loading overlay + spinner */
  .pc-card.loading { cursor: progress; filter: brightness(.98); }
  .pc-card .pc-loading-overlay {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background: linear-gradient(180deg, rgba(0,0,0,0.25), rgba(0,0,0,0.35));
    z-index: 40;
    border-radius: 14px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 220ms ease;
  }
  .pc-card.loading .pc-loading-overlay { opacity: 1; pointer-events: auto; }

  .pc-spinner {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 3px solid rgba(255,255,255,0.06);
    border-top-color: rgba(255,255,255,0.9);
    animation: pc-spin 900ms linear infinite;
    box-shadow: 0 6px 18px rgba(0,0,0,0.45);
  }
  @keyframes pc-spin { to { transform: rotate(360deg); } }