/* Home page: hero and product mock-ups. Content sections live in sections.css. */
.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:96px 0 112px;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:
  radial-gradient(900px 480px at 85% 10%,rgba(37,99,235,.45),transparent 60%),
  radial-gradient(700px 420px at 0% 100%,rgba(59,130,246,.25),transparent 60%)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.35;background-image:
  linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:48px 48px;mask-image:radial-gradient(ellipse at 70% 30%,#000 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 70% 30%,#000 20%,transparent 70%)}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 8px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);font:500 14px/1.2 var(--font);color:rgba(255,255,255,.88)}
.pill b{background:var(--primary);color:#fff;border-radius:999px;padding:4px 10px;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.hero h1{margin-top:24px;font-size:clamp(42px,6.2vw,72px);font-weight:800;letter-spacing:-.035em;line-height:1.03}
.hero h1 span{display:block;background:linear-gradient(90deg,#93C5FD,#3B82F6 70%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{margin-top:24px;max-width:560px;font-size:19px;line-height:1.6;color:rgba(255,255,255,.78)}
.hero-actions{margin-top:36px;display:flex;flex-wrap:wrap;gap:12px}
.hero-points{margin-top:36px;display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;color:rgba(255,255,255,.74);font-size:15px}
.hero-points li{display:flex;align-items:center;gap:8px}
.hero-points .icon{width:18px;height:18px;color:var(--sky)}
@media (max-width:1000px){.hero-grid{grid-template-columns:1fr;gap:56px}.hero{padding:72px 0 88px}}
@media (max-width:640px){.hero{padding:56px 0 72px}.hero .lead{font-size:17px}.hero-actions .btn{flex:1 1 100%}}

/* Console mock-up */
.mock{position:relative}
.console{background:#fff;color:var(--text);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden;border:1px solid rgba(255,255,255,.4)}
.console-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--cloud);border-bottom:1px solid var(--border)}
.console-bar i{width:10px;height:10px;border-radius:50%;background:#CBD5E1}
.console-bar span{margin-inline-start:8px;font:500 13px/1 var(--font);color:var(--muted)}
.console-body{padding:22px;display:grid;gap:16px}
.console-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.console-title h3{font-size:18px;letter-spacing:-.01em}
.console-title small{display:block;margin-top:4px;color:var(--muted);font-size:13px;font-weight:400}
.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font:600 12px/18px var(--font);white-space:nowrap}
.badge-live{color:var(--danger);background:var(--danger-bg)}
.badge-live::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;animation:pulse 1.6s infinite}
.badge-ok{color:var(--success);background:var(--success-bg)}
.badge-idle{color:var(--muted);background:#EEF2F7}
@keyframes pulse{50%{opacity:.35}}
.field{border:1px solid var(--border);border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:12px}
.field .icon{color:var(--primary);width:20px;height:20px}
.field div{min-width:0;flex:1}
.field small{display:block;font-size:12px;color:var(--muted)}
.field b{display:block;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.copy{font:600 12px/1 var(--font);color:var(--primary);background:var(--ice);border-radius:8px;padding:7px 10px}
.seg{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:var(--cloud);border:1px solid var(--border);border-radius:12px}
.seg span{text-align:center;padding:9px 8px;border-radius:8px;font:600 13px/1.2 var(--font);color:var(--muted)}
.seg .on{background:#fff;color:var(--navy);box-shadow:var(--shadow-sm)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.meter{height:8px;border-radius:99px;background:#E8EEF8;overflow:hidden;margin-top:8px}
.meter i{display:block;height:100%;width:62%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--highlight))}
.float-card{position:absolute;inset-inline-start:-28px;bottom:-128px;width:236px;background:#fff;color:var(--text);border-radius:16px;box-shadow:var(--shadow-lg);padding:10px;border:1px solid var(--border)}
.float-card .thumb{border-radius:10px;background:linear-gradient(135deg,var(--navy),var(--navy-3));height:92px;display:flex;align-items:center;justify-content:center}
.float-card .thumb img{height:44px;width:auto}
.float-card p{padding:8px 4px 2px;font:600 13px/1.35 var(--font)}
.float-card small{display:block;padding:0 4px 4px;color:var(--muted);font-size:12px}
.mock{margin-bottom:96px}@media (max-width:1000px){.float-card{inset-inline-start:auto;inset-inline-end:16px}}
@media (max-width:640px){.mock{margin-bottom:0}.float-card{display:none}.console-body{padding:16px}.row2{grid-template-columns:1fr}}

/* Playlist mock-up */
.code-card{background:var(--navy);color:#C7D2FE;border-radius:20px;padding:24px;box-shadow:var(--shadow);font:500 13.5px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden}
.code-card .k{color:#93C5FD}.code-card .s{color:#FDE68A}.code-card .c{color:#64748B}
.code-card pre{margin:0;white-space:pre-wrap;word-break:break-all}
.failover{margin-top:16px;display:grid;gap:10px}
.node{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow-sm)}
.node .icon{color:var(--primary)}
.node div{flex:1}
.node b{display:block;font-size:15px}
.node small{color:var(--muted);font-size:13px}
.mock-label{display:block;margin-bottom:-6px;font:600 12px/1 var(--font);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
