/* ── Virtual Device Animation ────────────────────────────── */
.device-showcase{padding:80px 0 64px;position:relative;overflow:hidden}
.device-showcase::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 50% 30%,rgba(255,79,45,.03),transparent 70%);pointer-events:none}
.device-showcase .container{max-width:1080px;margin:0 auto;padding:0 20px}
.device-showcase__header{text-align:center;margin-bottom:48px}
.device-showcase__label{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}
.device-showcase__title{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;color:#fff;margin-bottom:12px;line-height:1.2}
.device-showcase__desc{font-size:.95rem;color:var(--text-muted);max-width:560px;margin:0 auto;line-height:1.65}

.device-showcase__grid{display:grid;grid-template-columns:1fr 280px 1fr;gap:32px;align-items:center}
@media(max-width:900px){.device-showcase__grid{grid-template-columns:1fr;justify-items:center;gap:24px}}

/* Phone frame */
.phone{position:relative;width:260px;height:520px}
.phone__glow{position:absolute;inset:-40px;background:radial-gradient(ellipse at center,rgba(255,79,45,.06) 0%,transparent 70%);pointer-events:none;border-radius:50%;filter:blur(30px);animation:phone-pulse 4s ease-in-out infinite}
@keyframes phone-pulse{0%,100%{opacity:.6}50%{opacity:1}}
.phone__frame{position:relative;width:100%;height:100%;border-radius:32px;border:2.5px solid var(--border);background:#000;overflow:hidden;box-shadow:0 0 80px rgba(255,79,45,.04),0 20px 60px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.04)}
.phone__notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:90px;height:22px;background:#000;border-radius:0 0 14px 14px;z-index:3}
.phone__notch::after{content:"";position:absolute;top:7px;left:50%;transform:translateX(-50%);width:8px;height:8px;border-radius:50%;background:#1a1a1a;border:1px solid #333}
.phone__status{position:absolute;top:0;left:0;right:0;height:26px;display:flex;justify-content:space-between;align-items:center;padding:0 16px;font-family:var(--font-mono);font-size:.5rem;color:#555;z-index:4}
.phone__screen{position:absolute;inset:3px;border-radius:29px;overflow:hidden;background:#0a0c12}

/* Terminal on screen */
.phone-term{position:absolute;inset:0;padding:30px 10px 10px;font-family:var(--font-mono);font-size:.55rem;line-height:1.6;overflow:hidden}
.phone-term__line{white-space:pre;opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s}
.phone-term__line.vis{opacity:1;transform:translateY(0)}
.phone-term__line--prompt{color:var(--accent)}
.phone-term__line--cmd{color:#fff}
.phone-term__line--out{color:var(--text-muted)}
.phone-term__line--ok{color:var(--green)}
.phone-term__line--warn{color:#f59e0b}
.phone-term__line--err{color:#ef4444}
.phone-term__line--accent{color:var(--accent);font-weight:700}
.phone-term__cursor{display:inline-block;width:5px;height:10px;background:var(--accent);animation:blink 1s step-end infinite;vertical-align:middle;margin-left:2px}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}

/* Feature pills beside phone */
.device-features{display:flex;flex-direction:column;gap:16px}
@media(max-width:900px){.device-features{flex-direction:row;flex-wrap:wrap;justify-content:center}}
.device-feat{display:flex;align-items:flex-start;gap:12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius,8px);padding:16px;transition:border-color .2s}
.device-feat:hover{border-color:rgba(255,79,45,.3)}
.device-feat__icon{flex-shrink:0;width:32px;height:32px;border-radius:8px;background:var(--accent-dim,rgba(255,79,45,.1));border:1px solid rgba(255,79,45,.2);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.75rem;font-weight:700;color:var(--accent)}
.device-feat__text h4{font-size:.8rem;font-weight:700;color:#fff;margin-bottom:2px}
.device-feat__text p{font-size:.75rem;color:var(--text-muted);line-height:1.5}
