/* Moved from template-parts/carousels/grid-iphone.php */
  .iwiph{ --iwiph-frame:#0f1115; --iwiph-chrome:#1a1f29; --mac-aluminum-light:#c9ccd1; --mac-aluminum-dark:#9aa1a8; background:transparent; padding:24px 0; }
  .iwiph-wrap{ max-width:1200px; margin:0 auto; padding:0 16px; }
  .iwiph-heading{ font-size:1.25rem; font-weight:700; margin:0 0 16px; color:#0f172a; }
  .iwiph-grid{ display:flex; flex-wrap:wrap; gap:24px; }
  .iwiph-item{ flex:0 0 auto; }
  .iwiph-card{ background:transparent; border-radius:0; box-shadow:none; transition:transform .2s ease, box-shadow .2s ease; }
  .iwiph-card:hover{ transform:translateY(-2px); }

  /* Laptop mockup */
  .device{ width:420px; position:relative; aspect-ratio:16/10; background:linear-gradient(135deg, var(--mac-aluminum-light), var(--mac-aluminum-dark)); border-radius:12px; padding:6px; box-shadow: 0 14px 32px rgba(0,0,0,.18), 0 6px 14px rgba(0,0,0,.12), inset 0 0 0 1px rgba(255,255,255,.25), inset 0 0 24px rgba(255,255,255,.08); }
  .device__frame{ position:relative; width:100%; height:100%; }
  .device__screen{ position:absolute; inset:6px; border-radius:8px; overflow:hidden; background:#0b0b0b; min-height:240px; box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset; }
  .device__screen::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,0) 45%, rgba(0,0,0,.12) 100%); pointer-events:none; }
  .device__base{ position:absolute; left:50%; transform:translateX(-50%); bottom:-12px; width:86%; height:12px; background:linear-gradient(180deg, var(--mac-aluminum-light), var(--mac-aluminum-dark)); border-radius:0 0 14px 14px; box-shadow:0 10px 22px rgba(0,0,0,.28); }

  /* Screenshot inside screen (desktop viewport, exact ratio) */
  .iwiph-shot{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:top center; display:block; background:#0b0b0b; }
  /* Featured image fallback */
  .iwiph-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:top center; display:block; transform:translateZ(0); background:#0b0b0b; }

  /* Laptop camera dot */
  .device__camera{ position:absolute; top:4px; left:50%; transform:translateX(-50%); width:6px; height:6px; background:#1c1c1c; border-radius:50%; box-shadow:0 0 0 2px rgba(255,255,255,.25), 0 0 4px rgba(0,0,0,.3) inset; z-index:2; }

  /* Title under phone */
  .iwiph-body{ padding:8px 8px 2px; }
  .iwiph-title{ font-size:.95rem; font-weight:600; color:#0f172a; margin:12px 0 0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; max-width:420px; margin-inline:auto; text-align:center; }
  @media (max-width:560px){ .device{ width:320px; } .iwiph-title{ font-size:.9rem; max-width:320px; } }

  /* Hover polish */
  .iwiph-card:hover .device{ filter: drop-shadow(0 16px 32px rgba(0,0,0,.22)); }
  .iwiph-card:hover .iwiph-title{ color:#111; }

  /* Reduced motion */
  @media (prefers-reduced-motion: reduce){ .iwiph-card *{ transition:none !important; } }
