/* =========================================================
   AI業務改善 LPポータル  共通デザイン
   参考チラシ（濃紺＋青/緑/オレンジ/赤）の世界観をWeb化
   モバイル最優先 / レスポンシブ
   ========================================================= */

:root{
  --navy:#0a1f3c;
  --navy2:#102e57;
  --navy3:#16386a;
  --ink:#0f2747;
  --blue:#2f6df6;
  --blue-d:#1d4ed8;
  --teal:#0e9488;
  --orange:#f59e0b;
  --red:#ef4444;
  --green:#16a34a;
  --bg:#eef2f8;
  --card:#ffffff;
  --line:#e3e9f2;
  --muted:#5d6b82;
  --ink-soft:#33425c;
  --radius:16px;
  --shadow:0 10px 30px rgba(15,39,71,.08);
  --shadow-sm:0 4px 14px rgba(15,39,71,.07);
  --maxw:1060px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic UI",system-ui,sans-serif;
  color:var(--ink);
  background:var(--bg);
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"palt";
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 18px}

/* ---------- ヘッダー ---------- */
.site-head{
  position:sticky;top:0;z-index:50;
  background:rgba(10,31,60,.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;height:58px}
.brand{display:flex;align-items:center;gap:9px;color:#fff}
.brand b{font-weight:800;font-size:15px;letter-spacing:.02em}
.brand .lab{font-size:10px;color:#9db4d6;font-weight:600;letter-spacing:.04em}
.brand .mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--blue),var(--teal));display:grid;place-items:center;color:#fff;font-weight:800;font-size:14px}
.head-cta{font-size:12.5px;font-weight:700;color:#fff;background:var(--blue);padding:8px 14px;border-radius:999px;border:0}
.head-cta:hover{background:var(--blue-d)}
.head-back{font-size:12.5px;color:#cfe0ff;font-weight:600}
.head-back:hover{color:#fff}

/* ---------- ヒーロー ---------- */
.hero{background:radial-gradient(120% 130% at 80% -10%,#1b4d8f 0%,var(--navy2) 42%,var(--navy) 100%);color:#fff;padding:34px 0 40px}
.hero-grid{display:grid;grid-template-columns:1fr;gap:26px}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.badge{font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18)}
.badge--free{background:var(--teal);border-color:transparent}
.hero-title{font-size:30px;line-height:1.32;font-weight:900;letter-spacing:.01em;margin:0 0 14px}
.hero-title .hl{color:#7db1ff}
.hero-lead{font-size:14.5px;color:#d4e0f2;margin:0 0 18px}
.hero-tag{display:flex;gap:10px;align-items:flex-start;font-weight:800;font-size:15px;color:#fff;border-left:4px solid var(--orange);padding:2px 0 2px 12px}

/* ---------- ダッシュボード（ヒーロー右） ---------- */
.dash{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:18px}
.dash-title{font-size:18px;font-weight:800;margin:0}
.dash-sub{font-size:11.5px;color:#9db4d6;margin:2px 0 14px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.stat{background:#fff;border-radius:12px;padding:11px 10px;color:var(--ink)}
.stat-ico{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;margin-bottom:6px}
.stat-label{font-size:10.5px;color:var(--muted);font-weight:700;margin:0}
.stat-num{font-size:21px;font-weight:900;margin:0;line-height:1.2}
.stat-num small{font-size:11px;font-weight:700;margin-left:1px}
.dash-low{display:grid;grid-template-columns:1.5fr 1fr;gap:12px}
.chart{background:#fff;border-radius:12px;padding:12px 12px 8px}
.chart-bars{display:flex;align-items:flex-end;gap:8px;height:96px}
.bar{flex:1;border-radius:5px 5px 0 0;min-height:8px}
.chart-labels{display:flex;gap:8px;margin-top:6px}
.chart-labels span{flex:1;text-align:center;font-size:10px;color:var(--muted);font-weight:700}
.legend{background:#fff;border-radius:12px;padding:12px}
.legend h5{margin:0 0 9px;font-size:11.5px;color:var(--ink)}
.legend-item{display:flex;align-items:center;gap:7px;margin:7px 0;font-size:11.5px;color:var(--ink-soft);font-weight:600}
.dot{width:9px;height:9px;border-radius:50%}
.legend-item .ln{flex:1;height:4px;border-radius:3px;background:#e7edf6}

/* ---------- セクション ---------- */
.section{padding:42px 0}
.section.alt{background:#fff}
.sec-head{display:flex;align-items:center;gap:12px;margin:0 0 22px}
.sec-no{font-size:26px;font-weight:900;color:var(--blue);font-style:italic;line-height:1}
.sec-title{font-size:21px;font-weight:900;margin:0;color:var(--ink)}
.sec-head .rule{flex:1;height:1px;background:var(--line)}

/* ---------- カード ---------- */
.grid{display:grid;gap:14px}
.grid-3{grid-template-columns:1fr}
.grid-2{grid-template-columns:1fr}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}
.card-ico{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;margin-bottom:13px}
.card h3{font-size:16px;font-weight:800;margin:0 0 7px}
.card p{font-size:13.5px;color:var(--muted);margin:0}

/* ---------- ステップ ---------- */
.steps{display:grid;gap:14px;grid-template-columns:1fr}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;position:relative;box-shadow:var(--shadow-sm)}
.step-tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:#fff;background:var(--blue);padding:4px 11px;border-radius:999px;margin-bottom:11px}
.step-tag .n{font-size:14px}
.step h3{font-size:15.5px;font-weight:800;margin:0 0 5px}
.step p{font-size:13px;color:var(--muted);margin:0}

/* ---------- 可視化データ ---------- */
.viz{display:grid;grid-template-columns:1fr;gap:14px}
.info{background:linear-gradient(160deg,var(--navy2),var(--navy));color:#fff;border-radius:var(--radius);padding:22px}
.info h3{font-size:17px;font-weight:800;margin:0 0 14px}
.info ol{list-style:none;margin:0;padding:0;counter-reset:i}
.info li{counter-increment:i;display:flex;gap:11px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:14px;font-weight:600}
.info li:last-child{border-bottom:0}
.info li::before{content:"0" counter(i);color:#7db1ff;font-weight:900;font-size:13px}

/* ---------- 自動化候補ピル ---------- */
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:10px 16px;color:var(--ink)}
.pill .pi{width:18px;height:18px}

/* ---------- おすすめ部門 ---------- */
.rec{display:grid;grid-template-columns:1fr;gap:12px}
.rec-item{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px 18px;box-shadow:var(--shadow-sm)}
.rec-item .l{display:flex;align-items:center;gap:12px;font-weight:800;font-size:15px}
.rec-item .ck{width:24px;height:24px;border-radius:50%;background:var(--green);display:grid;place-items:center;color:#fff;flex:none}

/* ---------- CTA ---------- */
.cta{background:radial-gradient(120% 130% at 10% 0%,#1b4d8f,var(--navy));color:#fff;padding:40px 0}
.cta-grid{display:grid;grid-template-columns:1fr;gap:22px;align-items:center}
.cta-title{font-size:30px;font-weight:900;margin:0 0 8px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cta-title .arr{color:var(--orange)}
.cta-text{font-size:14px;color:#d4e0f2;margin:0}
.contact{background:#fff;color:var(--ink);border-radius:var(--radius);padding:20px;display:flex;gap:16px;align-items:center}
.contact .ci{flex:1}
.contact .ci h4{margin:0 0 10px;font-size:14px;font-weight:800;border-left:4px solid var(--blue);padding-left:9px}
.contact .ci p{margin:3px 0;font-size:13px;color:var(--ink-soft);font-weight:600}
.qr{width:96px;height:96px;border-radius:12px;border:2px dashed var(--line);display:grid;place-items:center;text-align:center;font-size:10px;color:var(--muted);font-weight:700;flex:none;background:#f7f9fc}

/* ---------- フッター ---------- */
.site-foot{background:var(--navy);color:#9db4d6;padding:26px 0;font-size:12px}
.site-foot .wrap{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
.site-foot a{color:#cfe0ff}
.foot-brand{color:#fff;font-weight:700}

/* =========================================================
   ポータルTOP 専用
   ========================================================= */
.p-hero{background:radial-gradient(120% 130% at 80% -10%,#1b4d8f,var(--navy));color:#fff;padding:50px 0 46px;text-align:center}
.p-hero h1{font-size:30px;font-weight:900;line-height:1.34;margin:0 0 14px}
.p-hero h1 .hl{color:#7db1ff}
.p-hero p{font-size:14.5px;color:#d4e0f2;max-width:640px;margin:0 auto 22px}
.p-hero .mini{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;font-size:12.5px;color:#aec3e6;font-weight:700}
.p-hero .mini b{color:#fff;font-size:18px}

.axis-head{text-align:center;margin:0 0 22px}
.axis-head .k{display:inline-block;font-size:12px;font-weight:800;color:#fff;background:var(--blue);padding:5px 14px;border-radius:999px;margin-bottom:10px}
.axis-head.teal .k{background:var(--teal)}
.axis-head h2{font-size:22px;font-weight:900;margin:0}
.axis-head p{font-size:13.5px;color:var(--muted);margin:6px 0 0}

.svc-grid{display:grid;grid-template-columns:1fr;gap:14px}
.svc{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden}
.svc:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.svc .top{display:flex;align-items:center;gap:13px;margin-bottom:11px}
.svc .ico{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;flex:none}
.svc h3{font-size:16.5px;font-weight:800;margin:0;line-height:1.4}
.svc p{font-size:13px;color:var(--muted);margin:0 0 12px}
.svc .go{font-size:13px;font-weight:800;color:var(--blue);display:flex;align-items:center;gap:6px}
.svc .tagrow{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.svc .t{font-size:11px;font-weight:700;color:var(--ink-soft);background:#eef3fb;padding:3px 9px;border-radius:999px}
.svc.soon{opacity:.92}
.svc .soon-b{position:absolute;top:14px;right:14px;font-size:10.5px;font-weight:800;color:#fff;background:var(--orange);padding:3px 9px;border-radius:999px}
.svc.soon .go{color:var(--muted)}

/* ---------- 実績バンド ---------- */
.proof{background:#fff}
.proof-grid{display:grid;grid-template-columns:1fr;gap:13px}
.pf{background:#f7f9fc;border:1px solid var(--line);border-radius:14px;padding:16px}
.pf .ind{font-size:11px;font-weight:800;color:#fff;background:var(--navy2);padding:3px 10px;border-radius:999px;display:inline-block;margin-bottom:9px}
.pf h4{font-size:15px;font-weight:800;margin:0 0 5px}
.pf p{font-size:12.5px;color:var(--muted);margin:0}

/* =========================================================
   レスポンシブ（タブレット以上）
   ========================================================= */
@media(min-width:720px){
  .grid-3{grid-template-columns:repeat(3,1fr)}
  .grid-2{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:repeat(4,1fr)}
  .viz{grid-template-columns:1.1fr 1fr}
  .svc-grid{grid-template-columns:1fr 1fr}
  .proof-grid{grid-template-columns:repeat(3,1fr)}
  .rec{grid-template-columns:repeat(3,1fr)}
  .cta-grid{grid-template-columns:1.3fr 1fr}
  .hero-title{font-size:36px}
  .p-hero h1{font-size:38px}
}
@media(min-width:960px){
  .hero-grid{grid-template-columns:1.05fr .95fr;align-items:center}
  .hero{padding:50px 0 56px}
  .svc-grid{grid-template-columns:repeat(3,1fr)}
}

/* =========================================================
   Premium portal redesign
   ========================================================= */
.premium-portal{
  --obsidian:#071019;
  --slate:#102033;
  --cyan:#67e8f9;
  --mint:#8ff3d1;
  --coral:#ff8b6a;
  --premium-line:rgba(196,224,236,.22);
  background:
    linear-gradient(rgba(47,109,246,.035) 1px,transparent 1px) 0 0/34px 34px,
    linear-gradient(90deg,rgba(14,148,136,.030) 1px,transparent 1px) 0 0/34px 34px,
    #f4f7fb;
}
.premium-portal .wrap{max-width:1180px}
.portal-head{
  background:rgba(7,16,25,.84);
  border-bottom:1px solid rgba(255,255,255,.10);
  backdrop-filter:blur(18px) saturate(1.15);
}
.portal-head .wrap{height:66px}
.portal-head .mark{border-radius:8px;background:linear-gradient(135deg,var(--cyan),var(--mint));color:#071019}
.portal-nav{display:none;align-items:center;gap:18px;color:#d9e9f3;font-size:12px;font-weight:800}
.portal-nav a:hover{color:#fff}
.mega-hero{
  position:relative;
  overflow:hidden;
  min-height:680px;
  display:flex;
  align-items:center;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(3,7,18,.96) 0%,rgba(3,7,18,.78) 38%,rgba(3,7,18,.40) 68%,rgba(3,7,18,.72) 100%),
    linear-gradient(180deg,rgba(3,7,18,.24) 0%,rgba(3,7,18,.94) 100%),
    url("ai-ops-command-center.png") center right/cover no-repeat,
    #050914;
}
.mega-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(103,232,249,.09) 1px,transparent 1px) 0 0/92px 92px,
    linear-gradient(rgba(143,243,209,.06) 1px,transparent 1px) 0 0/92px 92px,
    radial-gradient(circle at 76% 26%,rgba(103,232,249,.22),transparent 28%);
  pointer-events:none;
}
.mega-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:180px;
  background:linear-gradient(180deg,transparent,#f4f7fb);
}
.mega-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:center;
  padding-top:58px;
  padding-bottom:76px;
}
.signal-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.signal-row span,.eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:5px 9px;
  color:#dffcff;
  background:rgba(103,232,249,.10);
  border:1px solid rgba(103,232,249,.22);
  border-radius:6px;
  font-size:10.5px;
  font-weight:900;
  text-transform:uppercase;
}
.signal-row span:nth-child(2){background:rgba(143,243,209,.10);border-color:rgba(143,243,209,.22)}
.signal-row span:nth-child(3){background:rgba(255,139,106,.12);border-color:rgba(255,139,106,.24)}
.mega-copy h1{
  max-width:800px;
  margin:14px 0 18px;
  font-size:42px;
  line-height:1.12;
  font-weight:900;
  text-wrap:balance;
  color:#fff;
}
.mega-lead{
  max-width:760px;
  margin:0;
  color:#d8e6ef;
  font-size:15.5px;
  line-height:1.9;
}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.btn-primary,.btn-ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:12px 18px;
  border-radius:8px;
  font-size:14px;
  font-weight:900;
}
.btn-primary{color:#071019;background:linear-gradient(90deg,var(--cyan),var(--mint));box-shadow:0 18px 44px rgba(103,232,249,.22)}
.btn-ghost{color:#e6f6ff;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06)}
.trust-strip{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  max-width:760px;
  margin-top:22px;
}
.trust-strip span{
  padding:12px;
  color:#cde5ef;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
  font-size:12px;
  font-weight:800;
}
.trust-strip b{color:#fff;font-size:22px;margin-right:5px}
.deal-room{
  position:relative;
  overflow:hidden;
  min-height:360px;
  padding:18px;
  background:linear-gradient(180deg,rgba(9,18,29,.76),rgba(9,18,29,.52));
  border:1px solid var(--premium-line);
  border-radius:8px;
  box-shadow:0 34px 90px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(16px) saturate(1.2);
}
.deal-room::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(103,232,249,.08) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(rgba(143,243,209,.06) 1px,transparent 1px) 0 0/42px 42px;
}
.room-top,.room-main,.route-map{position:relative;z-index:1}
.room-top{display:flex;align-items:center;gap:8px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12);font-size:12px;color:#d8e6ef}
.room-top small{margin-left:auto;color:#95a9b7;font-weight:800}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(143,243,209,.14)}
.room-main{display:grid;gap:18px;align-items:center;margin:30px 0}
.room-k{display:block;color:var(--coral);font-size:11px;font-weight:900;text-transform:uppercase}
.room-main strong{display:block;margin:6px 0;color:transparent;background:linear-gradient(180deg,#fff,#8ff3d1);-webkit-background-clip:text;background-clip:text;font-size:86px;line-height:.95;font-weight:900}
.room-main p{max-width:330px;margin:0;color:#d8e6ef;font-size:13px}
.room-lines{display:grid;gap:10px}
.room-lines i{display:block;width:var(--w);height:10px;border-radius:8px;background:linear-gradient(90deg,var(--coral),var(--cyan),var(--mint));box-shadow:0 0 24px rgba(103,232,249,.22)}
.route-map{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.route-map span{padding:10px;color:#e4f3fa;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:8px;font-size:12px;font-weight:800;text-align:center}
.sales-flow{position:relative;z-index:2;margin-top:-44px}
.flow-grid{display:grid;grid-template-columns:1fr;gap:12px}
.flow-card{
  padding:18px;
  background:#fff;
  border:1px solid #d8e5f0;
  border-radius:8px;
  box-shadow:0 20px 48px rgba(15,39,71,.10);
}
.flow-card span{display:block;color:var(--blue);font-size:12px;font-weight:900}
.flow-card h2{margin:5px 0 6px;color:#0f2747;font-size:18px;line-height:1.35}
.flow-card p{margin:0;color:var(--muted);font-size:13px}
.demo-feature{padding:58px 0;background:#f4f7fb}
.demo-feature-grid{display:grid;grid-template-columns:1fr;gap:22px;align-items:center}
.demo-shot{
  overflow:hidden;
  border-radius:8px;
  border:1px solid #c8d8e6;
  box-shadow:0 30px 70px rgba(15,39,71,.16);
  background:#071019;
}
.demo-copy h2,.portal-section-head h2,.proof-wall h2,.closing-cta h2{
  margin:12px 0 10px;
  color:#0f2747;
  font-size:30px;
  line-height:1.28;
  font-weight:900;
  text-wrap:balance;
}
.demo-copy p,.portal-section-head p,.proof-wall p,.closing-cta p{color:var(--muted);font-size:14px;margin:0 0 18px}
.demo-points{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.demo-points span{padding:7px 10px;border-radius:8px;background:#fff;border:1px solid #dbe6f0;color:#33425c;font-size:12px;font-weight:800}
.services-premium{background:#fff}
.portal-section-head{max-width:760px;margin:0 0 22px}
.premium-grid{display:grid;grid-template-columns:1fr;gap:12px}
.premium-card{
  position:relative;
  display:block;
  min-height:218px;
  padding:20px;
  color:#0f2747;
  background:linear-gradient(180deg,#fff,#f8fbff);
  border:1px solid #d8e5f0;
  border-radius:8px;
  box-shadow:0 18px 44px rgba(15,39,71,.08);
  overflow:hidden;
  transition:transform .18s,box-shadow .18s,border-color .18s;
}
.premium-card::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:4px;
  background:linear-gradient(90deg,var(--blue),var(--teal),var(--orange));
}
.premium-card:hover{transform:translateY(-3px);box-shadow:0 26px 64px rgba(15,39,71,.14);border-color:#b5cce2}
.premium-card .card-no{display:inline-flex;margin-bottom:18px;color:#0e9488;font-size:12px;font-weight:900}
.premium-card h3{font-size:22px;margin:0 0 9px;line-height:1.35}
.premium-card p{margin:0 0 18px;color:var(--muted);font-size:13.5px}
.premium-card b{color:var(--blue);font-size:13px}
.premium-card--demo{color:#fff;background:linear-gradient(140deg,#071019,#12395a 58%,#0e9488);border-color:#164e63}
.premium-card--demo p,.premium-card--demo b,.premium-card--demo .card-no{color:#e4f3fa}
.industry-lane{background:#eef4f8}
.industry-grid{display:grid;grid-template-columns:1fr;gap:10px}
.industry-grid article,
.industry-grid a{
  position:relative;
  display:block;
  padding:16px;
  background:#fff;
  border:1px solid #d8e5f0;
  border-radius:8px;
  box-shadow:0 14px 34px rgba(15,39,71,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.industry-grid a:hover{
  transform:translateY(-3px);
  border-color:#9ed8e6;
  box-shadow:0 24px 58px rgba(15,39,71,.13);
}
.industry-grid span{display:inline-flex;margin-bottom:8px;color:#0e9488;font-size:11px;font-weight:900}
.industry-grid h3{margin:0 0 6px;font-size:16px}
.industry-grid p{margin:0;color:var(--muted);font-size:12.5px}
.industry-grid b{
  display:inline-flex;
  margin-top:12px;
  color:#0f6b77;
  font-size:12px;
  font-weight:900;
}
.industry-grid b::after{
  content:"";
  width:7px;
  height:7px;
  margin:7px 0 0 7px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  transform:rotate(45deg);
}
.premium-portal .industry-grid a{
  overflow:hidden;
  padding-top:118px;
}
.premium-portal .industry-grid a::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:96px;
  background:
    linear-gradient(180deg,rgba(5,9,20,.08),rgba(5,9,20,.42)),
    var(--industry-visual) center/cover no-repeat;
  border-bottom:1px solid rgba(15,39,71,.12);
}
.premium-portal .industry-grid a:nth-child(1){--industry-visual:url("visual-voice-sales.png")}
.premium-portal .industry-grid a:nth-child(2){--industry-visual:url("visual-workflow-map.png")}
.premium-portal .industry-grid a:nth-child(3){--industry-visual:url("visual-online-feedback.png")}
.premium-portal .industry-grid a:nth-child(4){--industry-visual:url("visual-light-operations.png")}
.premium-portal .industry-grid a:nth-child(5){--industry-visual:url("visual-voice-sales.png")}
.premium-portal .industry-grid a:nth-child(6){--industry-visual:url("visual-doc-ai.png")}
.proof-wall{padding:62px 0;color:#fff;background:linear-gradient(135deg,#071019,#0a1f3c)}
.proof-wall-grid{display:grid;grid-template-columns:1fr;gap:22px;align-items:center}
.proof-wall .eyebrow{background:rgba(255,255,255,.08)}
.proof-wall h2{color:#fff}
.proof-wall p{color:#c9d9e4}
.proof-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.proof-metrics span{padding:14px;color:#dcecf5;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:8px;font-size:12px;font-weight:800}
.proof-metrics b{display:block;color:#fff;font-size:30px;line-height:1}
.closing-cta{padding:58px 0;background:#fff}
.closing-grid{display:grid;grid-template-columns:1fr;gap:18px;align-items:center}
.contact-panel{
  padding:20px;
  background:linear-gradient(180deg,#f8fbff,#eef7f5);
  border:1px solid #d8e5f0;
  border-radius:8px;
  box-shadow:0 18px 44px rgba(15,39,71,.08);
}
.contact-panel h3{margin:0 0 10px;font-size:20px}
.contact-panel p{margin:4px 0;color:var(--ink-soft)}
.contact-panel .btn-primary{margin-top:14px}
.site-head .head-actions{display:flex;align-items:center;gap:10px}
.head-demo{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 12px;
  color:#071019;
  background:linear-gradient(90deg,var(--cyan),var(--mint));
  border-radius:8px;
  font-size:12px;
  font-weight:900;
}
.lp-demo-band{
  padding:18px 0;
  background:linear-gradient(90deg,#071019,#102e57);
  color:#fff;
}
.lp-demo-band .wrap{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.lp-demo-band strong{font-size:18px}
.lp-demo-band p{margin:0;color:#cfe0ff;font-size:13px}
.lp-demo-band a{color:#071019;background:linear-gradient(90deg,var(--cyan),var(--mint));border-radius:8px;padding:10px 14px;font-size:13px;font-weight:900}

@media(min-width:720px){
  .portal-nav{display:flex}
  .mega-copy h1{font-size:56px}
  .trust-strip{grid-template-columns:repeat(3,1fr)}
  .flow-grid{grid-template-columns:repeat(3,1fr)}
  .premium-grid{grid-template-columns:repeat(2,1fr)}
  .industry-grid{grid-template-columns:repeat(3,1fr)}
  .proof-wall-grid,.closing-grid{grid-template-columns:1fr .82fr}
  .lp-demo-band .wrap{flex-direction:row;align-items:center;justify-content:space-between}
}
@media(min-width:960px){
  .mega-grid{grid-template-columns:1.03fr .97fr}
  .room-main{grid-template-columns:.95fr 1fr}
  .demo-feature-grid{grid-template-columns:.95fr 1.05fr}
  .premium-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:560px){
  .portal-head .wrap{height:auto;min-height:64px;padding-top:8px;padding-bottom:8px}
  .brand b{font-size:13px}
  .mega-hero{min-height:auto}
  .mega-grid{padding-top:40px;padding-bottom:72px}
  .mega-copy h1{font-size:34px}
  .deal-room{min-height:0}
  .room-main strong{font-size:64px}
  .route-map{grid-template-columns:1fr}
  .demo-copy h2,.portal-section-head h2,.proof-wall h2,.closing-cta h2{font-size:25px}
}

.premium-portal .dash,
.premium-portal .stat,
.premium-portal .chart,
.premium-portal .legend,
.premium-portal .card,
.premium-portal .step,
.premium-portal .info,
.premium-portal .rec-item,
.premium-portal .contact,
.premium-portal .qr,
.premium-portal .svc,
.premium-portal .pf,
.hero .dash,
.hero .stat,
.hero .chart,
.hero .legend,
.card,
.step,
.info,
.rec-item,
.contact,
.qr,
.svc,
.pf{border-radius:8px}

/* =========================================================
   GPT Image asset placement pass
   ========================================================= */
.premium-portal .mega-hero{
  min-height:720px;
  background:
    linear-gradient(90deg,rgba(3,7,18,.98) 0%,rgba(3,7,18,.88) 34%,rgba(3,7,18,.42) 68%,rgba(3,7,18,.70) 100%),
    linear-gradient(180deg,rgba(3,7,18,.06) 0%,rgba(3,7,18,.94) 100%),
    url("visual-hero-atrium.png") center right/cover no-repeat,
    #050914;
}
.premium-portal .deal-room{
  min-height:430px;
  background:
    linear-gradient(180deg,rgba(5,12,21,.20),rgba(5,12,21,.78)),
    url("visual-demo-command.png") center/cover no-repeat;
}
.premium-portal .deal-room::before{
  background:
    linear-gradient(90deg,rgba(103,232,249,.10) 1px,transparent 1px) 0 0/52px 52px,
    linear-gradient(rgba(143,243,209,.08) 1px,transparent 1px) 0 0/52px 52px,
    radial-gradient(circle at 72% 24%,rgba(103,232,249,.18),transparent 34%);
}
.premium-portal .deal-room .room-lines{
  opacity:.84;
  filter:drop-shadow(0 0 18px rgba(103,232,249,.34));
}
.premium-portal .demo-shot img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
.premium-portal .premium-card{
  min-height:330px;
  padding-top:176px;
  background:linear-gradient(180deg,#fff,#f8fbff);
}
.premium-portal .premium-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:150px;
  background:
    linear-gradient(180deg,rgba(4,12,23,.05),rgba(4,12,23,.36)),
    var(--service-visual) center/cover no-repeat;
  border-bottom:1px solid rgba(15,39,71,.14);
}
.premium-portal .premium-card:nth-child(1){--service-visual:url("visual-doc-ai.png")}
.premium-portal .premium-card:nth-child(2){--service-visual:url("visual-online-feedback.png")}
.premium-portal .premium-card:nth-child(3){--service-visual:url("visual-voice-sales.png")}
.premium-portal .premium-card:nth-child(4){--service-visual:url("visual-light-operations.png")}
.premium-portal .premium-card:nth-child(5){--service-visual:url("visual-workflow-map.png")}
.premium-portal .premium-card:nth-child(6){--service-visual:url("visual-demo-command.png")}
.premium-portal .premium-card .card-no,
.premium-portal .premium-card h3,
.premium-portal .premium-card p,
.premium-portal .premium-card b{
  position:relative;
  z-index:1;
}
.premium-portal .premium-card--demo{
  background:linear-gradient(140deg,#071019,#12395a 58%,#0e9488);
}
.premium-portal .industry-lane{
  background:
    linear-gradient(180deg,rgba(238,244,248,.92),rgba(238,244,248,.96)),
    url("visual-industry-mosaic.png") center/cover no-repeat;
}
.premium-portal .proof-wall{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(7,16,25,.96),rgba(7,16,25,.72)),
    url("visual-proof-library.png") center/cover no-repeat;
}
.premium-portal .proof-wall::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(103,232,249,.08) 1px,transparent 1px) 0 0/68px 68px,
    linear-gradient(rgba(143,243,209,.06) 1px,transparent 1px) 0 0/68px 68px;
  pointer-events:none;
}
.premium-portal .proof-wall .wrap{position:relative;z-index:1}

.lp-sales-ops{--lp-visual:url("visual-doc-ai.png");--lp-accent:#67e8f9}
.lp-online-sales{--lp-visual:url("visual-online-feedback.png");--lp-accent:#8ff3d1}
.lp-visit-sales{--lp-visual:url("visual-voice-sales.png");--lp-accent:#67e8f9}
.lp-hr-admin{--lp-visual:url("visual-light-operations.png");--lp-accent:#8ff3d1}
.lp-back-office{--lp-visual:url("visual-workflow-map.png");--lp-accent:#67e8f9}
.lp-page{
  background:#f4f7fb;
}
.lp-page .hero{
  position:relative;
  overflow:hidden;
  min-height:680px;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(5,12,21,.96) 0%,rgba(5,12,21,.82) 44%,rgba(5,12,21,.44) 100%),
    var(--lp-visual) center right/cover no-repeat,
    #071019;
}
.lp-page .hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(103,232,249,.07) 1px,transparent 1px) 0 0/78px 78px,
    linear-gradient(rgba(143,243,209,.05) 1px,transparent 1px) 0 0/78px 78px,
    radial-gradient(circle at 78% 25%,rgba(103,232,249,.20),transparent 30%);
  pointer-events:none;
}
.lp-page .hero .wrap{
  position:relative;
  z-index:1;
}
.lp-page .hero-title{
  max-width:760px;
  font-size:46px;
  line-height:1.16;
}
.lp-page .hero-lead{
  max-width:690px;
  font-size:15.5px;
  line-height:1.95;
}
.lp-page .hero-tag{
  max-width:640px;
  border-left-color:var(--lp-accent);
}
.lp-page .dash{
  position:relative;
  min-height:430px;
  padding:0;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(5,12,21,.04),rgba(5,12,21,.45)),
    var(--lp-visual) center/cover no-repeat;
  border:1px solid rgba(214,235,246,.28);
  box-shadow:0 34px 90px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.18);
}
.lp-page .dash::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px) 0 0/58px 58px,
    linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px) 0 0/58px 58px,
    radial-gradient(circle at 50% 20%,rgba(255,255,255,.16),transparent 34%);
  mix-blend-mode:screen;
  pointer-events:none;
}
.lp-page .dash > *{display:none}
.lp-page .lp-demo-band{
  background:
    linear-gradient(90deg,rgba(7,16,25,.96),rgba(16,46,87,.86)),
    var(--lp-visual) center/cover no-repeat;
}
.lp-page .section{
  position:relative;
}
.lp-page .card,
.lp-page .step,
.lp-page .rec-item,
.lp-page .info,
.lp-page .contact{
  box-shadow:0 18px 44px rgba(15,39,71,.08);
}

@media(max-width:720px){
  .premium-portal .mega-hero{min-height:auto;background-position:center}
  .premium-portal .premium-card{min-height:0;padding-top:154px}
  .premium-portal .premium-card::before{height:132px}
  .lp-page .hero{min-height:auto;background-position:center}
  .lp-page .hero-title{font-size:34px}
  .lp-page .dash{min-height:270px}
}

/* =========================================================
   Creative studio LP pass + live AI Vision Map
   ========================================================= */
.lp-page{
  --cyan:#67e8f9;
  --mint:#8ff3d1;
  --coral:#ff9a7a;
  --paper:#f3efe7;
  --studio:#050914;
  --studio2:#0b1118;
  --glass:rgba(255,255,255,.075);
  --glass-line:rgba(214,235,246,.18);
  background:#050914;
  color:#edf7f8;
}
.lp-page .wrap{max-width:1200px}
.lp-page .site-head{
  background:rgba(5,9,20,.72);
  border-bottom:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(18px) saturate(1.2);
}
.lp-page .brand .mark{
  color:#071019;
  background:linear-gradient(135deg,var(--cyan),var(--mint));
}
.lp-page .hero{
  min-height:760px;
  padding:86px 0 96px;
  background:
    linear-gradient(90deg,rgba(5,9,20,.98) 0%,rgba(5,9,20,.86) 38%,rgba(5,9,20,.38) 74%,rgba(5,9,20,.66) 100%),
    radial-gradient(circle at 22% 30%,rgba(255,154,122,.16),transparent 30%),
    var(--lp-visual) center right/cover no-repeat,
    #050914;
}
.lp-page .hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:150px;
  background:linear-gradient(180deg,transparent,#050914);
  pointer-events:none;
}
.lp-page .hero-grid{
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);
  gap:42px;
}
.lp-page .badges{gap:8px}
.lp-page .badge{
  border-radius:6px;
  color:#dffcff;
  background:rgba(103,232,249,.09);
  border-color:rgba(103,232,249,.24);
  text-transform:uppercase;
  letter-spacing:0;
}
.lp-page .badge--free{
  color:#071019;
  background:linear-gradient(90deg,var(--cyan),var(--mint));
}
.lp-page .hero-title{
  max-width:800px;
  margin-top:18px;
  font-size:64px;
  line-height:1.06;
  letter-spacing:0;
  text-wrap:balance;
}
.lp-page .hero-title .hl{
  color:transparent;
  background:linear-gradient(90deg,#fff,var(--cyan),var(--coral));
  -webkit-background-clip:text;
  background-clip:text;
}
.lp-page .hero-lead{
  color:#d8e6ef;
  font-size:16px;
  line-height:2;
}
.lp-page .hero-tag{
  color:#fff;
  border-left-color:var(--coral);
}
.lp-hero-actions{
  margin-top:28px;
}
.lp-page .btn-primary,
.lp-page .btn-ghost{
  border-radius:8px;
}
.lp-page .dash{
  min-height:500px;
  transform:perspective(1200px) rotateY(-5deg) rotateX(2deg);
  border-color:rgba(255,255,255,.22);
  box-shadow:
    0 46px 120px rgba(0,0,0,.54),
    0 0 80px rgba(103,232,249,.12),
    inset 0 1px 0 rgba(255,255,255,.24);
}
.lp-page .dash::after{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  pointer-events:none;
}
.lp-page .lp-demo-band{
  margin-top:-1px;
  padding:24px 0;
  border-top:1px solid rgba(255,255,255,.10);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.lp-page .lp-demo-band strong{font-size:20px}
.lp-page .section{
  padding:86px 0;
  color:#edf7f8;
  background:
    linear-gradient(90deg,rgba(103,232,249,.035) 1px,transparent 1px) 0 0/64px 64px,
    linear-gradient(rgba(255,154,122,.028) 1px,transparent 1px) 0 0/64px 64px,
    #050914;
}
.lp-page .section.alt{
  color:#111927;
  background:
    radial-gradient(circle at 12% 10%,rgba(103,232,249,.16),transparent 28%),
    linear-gradient(180deg,#f6f1e9,#ebe7df);
}
.lp-page .sec-head{
  align-items:flex-end;
  margin-bottom:30px;
}
.lp-page .sec-no{
  color:var(--coral);
  font-size:42px;
  font-style:normal;
}
.lp-page .sec-title{
  color:inherit;
  font-size:30px;
  letter-spacing:0;
}
.lp-page .sec-head .rule{
  background:linear-gradient(90deg,rgba(103,232,249,.55),rgba(255,154,122,.45),transparent);
}
.lp-page .section:not(.alt) .card,
.lp-page .section:not(.alt) .step,
.lp-page .section:not(.alt) .rec-item{
  color:#edf7f8;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));
  border:1px solid var(--glass-line);
  box-shadow:0 28px 70px rgba(0,0,0,.24);
  backdrop-filter:blur(14px);
}
.lp-page .section:not(.alt) .card p,
.lp-page .section:not(.alt) .step p{
  color:#b9cbd4;
}
.lp-page .section.alt .card,
.lp-page .section.alt .step,
.lp-page .section.alt .rec-item{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(10,31,60,.12);
  box-shadow:0 22px 52px rgba(31,24,16,.09);
}
.lp-page .card,
.lp-page .step,
.lp-page .rec-item,
.lp-page .info,
.lp-page .contact,
.lp-page .pill{
  border-radius:8px;
}
.lp-page .card h3,
.lp-page .step h3{
  font-size:18px;
}
.lp-page .card-ico{
  border-radius:8px;
}
.lp-page .info{
  background:
    linear-gradient(180deg,rgba(103,232,249,.13),rgba(255,154,122,.10)),
    rgba(255,255,255,.07);
  border:1px solid var(--glass-line);
}
.lp-page .section.alt .info{
  color:#edf7f8;
  background:linear-gradient(135deg,#071019,#12395a);
}
.lp-page .pill{
  color:inherit;
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.16);
}
.lp-page .section.alt .pill{
  background:#fff;
  border-color:rgba(10,31,60,.12);
}
.lp-page .cta{
  background:
    linear-gradient(90deg,rgba(5,9,20,.94),rgba(5,9,20,.70)),
    var(--lp-visual) center/cover no-repeat;
}
.lp-page .contact{
  color:#0f2747;
  background:rgba(255,255,255,.88);
}

.ai-vision-lab{
  position:relative;
  overflow:hidden;
  padding:96px 0;
  background:
    linear-gradient(90deg,rgba(5,9,20,.98),rgba(5,9,20,.72)),
    var(--lp-visual) center/cover no-repeat;
  color:#edf7f8;
}
.ai-vision-lab::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(103,232,249,.10) 1px,transparent 1px) 0 0/76px 76px,
    linear-gradient(rgba(143,243,209,.06) 1px,transparent 1px) 0 0/76px 76px,
    radial-gradient(circle at 68% 32%,rgba(103,232,249,.22),transparent 28%);
  pointer-events:none;
}
.vision-shell{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:34px;
  align-items:center;
}
.vision-copy h2{
  margin:14px 0 14px;
  font-size:44px;
  line-height:1.14;
  letter-spacing:0;
}
.vision-copy p{
  max-width:640px;
  margin:0 0 18px;
  color:#c9dce4;
}
.vision-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:22px 0 12px;
}
.vision-actions button,
.vision-run{
  appearance:none;
  border:0;
  border-radius:8px;
  font:inherit;
  font-weight:900;
  cursor:pointer;
}
.vision-actions button{
  padding:8px 11px;
  color:#dffcff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
}
.vision-actions button.is-active{
  color:#071019;
  background:linear-gradient(90deg,var(--cyan),var(--mint));
}
.vision-copy textarea{
  width:100%;
  min-height:172px;
  resize:vertical;
  padding:16px;
  color:#edf7f8;
  background:rgba(4,10,18,.72);
  border:1px solid rgba(214,235,246,.24);
  border-radius:8px;
  outline:none;
  line-height:1.8;
}
.vision-copy textarea:focus{
  border-color:rgba(103,232,249,.76);
  box-shadow:0 0 0 3px rgba(103,232,249,.14);
}
.vision-run{
  margin-top:12px;
  padding:13px 18px;
  color:#071019;
  background:linear-gradient(90deg,var(--cyan),var(--mint));
  box-shadow:0 18px 44px rgba(103,232,249,.20);
}
.vision-stage{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:18px;
  min-height:500px;
}
.vision-map{
  position:relative;
  min-height:500px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:
    radial-gradient(circle at 50% 50%,rgba(103,232,249,.20),transparent 15%),
    radial-gradient(circle at 50% 50%,rgba(143,243,209,.12),transparent 32%),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 34px 90px rgba(0,0,0,.32);
  overflow:hidden;
}
.vision-map::before,
.vision-map::after{
  content:"";
  position:absolute;
  inset:50%;
  width:300px;
  height:300px;
  margin:-150px 0 0 -150px;
  border:1px solid rgba(103,232,249,.34);
  border-radius:50%;
}
.vision-map::after{
  width:420px;
  height:420px;
  margin:-210px 0 0 -210px;
  border-color:rgba(255,154,122,.22);
}
.vision-core{
  position:absolute;
  left:50%;
  top:50%;
  width:86px;
  height:86px;
  margin:-43px 0 0 -43px;
  display:grid;
  place-items:center;
  color:#071019;
  background:linear-gradient(135deg,var(--cyan),var(--mint));
  border-radius:50%;
  font-weight:900;
  box-shadow:0 0 48px rgba(103,232,249,.38);
  z-index:2;
}
.vision-node{
  position:absolute;
  width:24px;
  height:24px;
  border-radius:50%;
  background:var(--coral);
  box-shadow:0 0 30px rgba(255,154,122,.45);
}
.vision-node::before{
  content:"";
  position:absolute;
  inset:-72px;
  border-top:1px solid rgba(103,232,249,.22);
  transform:rotate(var(--r));
  transform-origin:center;
}
.vision-node.n1{left:18%;top:22%;--r:28deg}
.vision-node.n2{right:16%;top:18%;--r:-22deg;background:var(--cyan)}
.vision-node.n3{right:17%;bottom:22%;--r:26deg;background:var(--mint)}
.vision-node.n4{left:18%;bottom:18%;--r:-26deg;background:#f6b36d}
.vision-node.n5{left:48%;top:10%;--r:90deg;background:#fff}
.vision-map.is-running .vision-node,
.vision-map.is-ready .vision-node{
  animation:visionPulse 1.8s ease-in-out infinite;
}
.vision-map.is-running .vision-core{
  animation:visionCore .8s ease-in-out infinite;
}
@keyframes visionPulse{
  0%,100%{transform:scale(1);opacity:.82}
  50%{transform:scale(1.65);opacity:1}
}
@keyframes visionCore{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.08)}
}
.vision-panel{
  padding:20px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(5,9,20,.66);
  backdrop-filter:blur(18px);
  box-shadow:0 34px 90px rgba(0,0,0,.34);
}
.vision-kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-bottom:20px;
}
.vision-kpis span{
  min-height:96px;
  padding:14px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border-radius:8px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
}
.vision-kpis b{
  color:#fff;
  font-size:30px;
  line-height:1;
}
.vision-kpis small{
  color:#b9cbd4;
  font-weight:800;
}
.vision-panel h3{
  margin:0 0 12px;
  font-size:21px;
}
.vision-panel ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:8px;
}
.vision-panel li{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:10px;
  padding:10px;
  border-radius:8px;
  background:rgba(255,255,255,.06);
}
.vision-panel li b{
  color:var(--mint);
  font-size:12px;
}
.vision-panel li span{
  color:#e2edf2;
  font-size:13px;
}
.vision-panel p{
  margin:14px 0 0;
  color:#d8e6ef;
}

@media(max-width:980px){
  .lp-page .hero-grid,
  .vision-shell,
  .vision-stage{
    grid-template-columns:1fr;
  }
  .lp-page .hero-title{font-size:46px}
  .lp-page .dash{transform:none}
  .vision-map{min-height:360px}
  .vision-stage{min-height:0}
}
@media(max-width:560px){
  .lp-page .hero{padding:46px 0 64px}
  .lp-page .hero-title{font-size:34px}
  .lp-page .section,
  .ai-vision-lab{padding:58px 0}
  .vision-copy h2{font-size:30px}
  .vision-kpis{grid-template-columns:1fr}
  .vision-panel li{grid-template-columns:1fr}
}

/* AI collective brand mark */
.brand .mark.ai-collective,
.portal-head .mark.ai-collective,
.lp-page .brand .mark.ai-collective{
  position:relative;
  width:38px;
  height:38px;
  flex:none;
  overflow:hidden;
  border-radius:8px;
  color:transparent;
  background:
    radial-gradient(circle at 50% 52%,rgba(255,255,255,.95) 0 8%,transparent 9%),
    radial-gradient(circle at 18% 15%,rgba(255,255,255,.78),transparent 28%),
    conic-gradient(from 210deg,#67e8f9,#8ff3d1,#ff9a7a,#b8a5ff,#67e8f9);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.22) inset,
    0 8px 26px rgba(103,232,249,.24);
}
.brand .mark.ai-collective::before{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:8px;
  background:
    linear-gradient(30deg,transparent 0 34%,rgba(255,255,255,.78) 35% 38%,transparent 39%),
    linear-gradient(150deg,transparent 0 36%,rgba(255,255,255,.70) 37% 40%,transparent 41%),
    linear-gradient(90deg,transparent 0 48%,rgba(255,255,255,.52) 49% 51%,transparent 52%);
  opacity:.82;
  filter:drop-shadow(0 0 6px rgba(103,232,249,.36));
}
.brand .mark.ai-collective::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:10px;
  height:10px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:linear-gradient(135deg,#ffffff,#dffcff);
  box-shadow:0 0 0 4px rgba(255,255,255,.18),0 0 18px rgba(103,232,249,.52);
}
.brand .mark.ai-collective i{
  position:absolute;
  width:10px;
  height:10px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.88);
  background:linear-gradient(135deg,#67e8f9,#8ff3d1);
  box-shadow:0 0 16px rgba(255,255,255,.42),0 0 16px rgba(103,232,249,.36);
  z-index:2;
}
.brand .mark.ai-collective i::after{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:inherit;
  background:rgba(255,255,255,.90);
}
.brand .mark.ai-collective i:nth-child(1){left:6px;top:7px}
.brand .mark.ai-collective i:nth-child(2){right:6px;top:8px;background:linear-gradient(135deg,#ff9a7a,#ffd1bf)}
.brand .mark.ai-collective i:nth-child(3){left:8px;bottom:6px;border-radius:4px;background:linear-gradient(135deg,#b8a5ff,#67e8f9)}
.brand .mark.ai-collective i:nth-child(4){right:7px;bottom:7px;border-radius:4px;background:linear-gradient(135deg,#8ff3d1,#fff7c8);transform:rotate(45deg)}

/* Meaning layer over the generated LP visuals */
.lp-page .dash{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:10px;
  padding:20px;
}
.lp-page .dash > .dash-title,
.lp-page .dash > .dash-sub,
.lp-page .dash > .stats{
  position:relative;
  z-index:2;
}
.lp-page .dash > .dash-title,
.lp-page .dash > .dash-sub{
  display:block;
  max-width:460px;
  margin:0;
}
.lp-page .dash > .dash-title{
  width:max-content;
  max-width:100%;
  padding:8px 11px;
  color:#fff;
  background:rgba(5,9,20,.64);
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  backdrop-filter:blur(14px);
}
.lp-page .dash > .dash-sub{
  color:#dbeafe;
  font-size:12px;
  font-weight:800;
  text-shadow:0 1px 8px rgba(0,0,0,.45);
}
.lp-page .dash > .stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:4px 0 0;
}
.lp-page .dash .stat{
  min-width:0;
  color:#fff;
  background:rgba(5,9,20,.58);
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  box-shadow:0 18px 42px rgba(0,0,0,.22);
  backdrop-filter:blur(14px);
}
.lp-page .dash .stat-label{
  color:#b9d6e7;
}
.lp-page .dash .stat-num{
  color:#fff;
}
.lp-page .dash .stat-num small{
  color:#a7f3d0;
}

@media(max-width:560px){
  .lp-page .dash{
    padding:14px;
  }
  .lp-page .dash > .stats{
    grid-template-columns:1fr;
  }
}
