/* One semantic palette for the entire landing, including portalled dialogs. */
:root {
  background-color: var(--page);
  --page: #0d101b;
  --panel: #161e30;
  --panel-soft: #1b2943;
  --raised: #203253;
  --text: #eff4ff;
  --muted-text: #a9b7d0;
  --quiet-text: #879abc;
  --line: #ffffff1c;
  --accent-text: #8baaff;
  --surface-shadow: 0 20px 60px #0004;
  --panel-gradient: linear-gradient(140deg, #1d2942, #121a2b);
  --background: var(--page);
  --foreground: var(--text);
  --card: var(--panel);
  --card-foreground: var(--text);
  --popover: var(--panel);
  --popover-foreground: var(--text);
  --border: var(--line);
  --input: var(--line);
  --muted: var(--panel-soft);
  --muted-foreground: var(--muted-text);
  --secondary: var(--panel-soft);
  --secondary-foreground: var(--text);
  --accent: var(--panel-soft);
  --accent-foreground: var(--accent-text);
  color-scheme: dark;
}
:root[data-theme="light"] {
  --page: #f7f9fe;
  --panel: #ffffff;
  --panel-soft: #edf2ff;
  --raised: #e1eaff;
  --text: #172440;
  --muted-text: #596b89;
  --quiet-text: #647a9c;
  --line: #dbe4f3;
  --accent-text: #315be0;
  --surface-shadow: 0 20px 60px #20375b14;
  --panel-gradient: linear-gradient(140deg, #ffffff, #edf2ff);
  color-scheme: light;
}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--page);color:var(--text)}a{color:inherit;text-decoration:none}button{font:inherit;background:none;border:0;color:inherit;cursor:pointer}h1,h2,p{margin:0}img,video{display:block;max-width:100%}[hidden]{display:none!important}
.edge-blog-brand{display:inline-flex;align-items:center;gap:8px;font-size:28px;font-weight:750;letter-spacing:-1.2px}.edge-blog-brand>span:last-child{color:#7898ff;margin-left:-8px}.edge-blog-brand-symbol{display:grid;place-items:center;width:36px;height:36px;background:#365eff;border-radius:8px;font-size:32px;font-weight:700;line-height:1;color:white;letter-spacing:0}
.edge-blog-themeWrap{position:relative}.edge-blog-themeToggle{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);background:var(--panel);border-radius:12px;font-size:23px}.edge-blog-themeMenu{position:absolute;top:50px;right:0;z-index:60;min-width:170px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--surface-shadow)}.edge-blog-themeMenu button{display:block;width:100%;padding:10px 12px;text-align:left;border-radius:8px}.edge-blog-themeMenu button[aria-pressed=true]{background:var(--panel-soft);color:var(--accent-text)}
.edge-blog-motion .edge-blog-reveal{opacity:0;transform:translateY(24px);transition:opacity .65s var(--delay,0s),transform .65s cubic-bezier(.16,1,.3,1) var(--delay,0s)}.edge-blog-motion .edge-blog-visible{opacity:1;transform:none}.edge-blog-readingProgress{transform:scaleX(0)}.edge-blog-updateNotice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:50;border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:15px 22px;box-shadow:var(--surface-shadow);color:var(--accent-text);max-width:90vw;text-align:center}.edge-blog-skip{position:fixed;left:16px;top:-100px;z-index:100;padding:14px;background:var(--panel)}.edge-blog-skip:focus{top:16px}.edge-blog-noscript{padding:20px;text-align:center;color:var(--quiet-text)}:focus-visible{outline:2px solid var(--accent-text);outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.edge-blog-motion .edge-blog-reveal{opacity:1;transform:none;transition:none}}
.edge-blog-shell { min-height:100vh; background:var(--page); color:var(--text); }
.edge-blog-header { position:sticky; top:0; z-index:40; display:flex; justify-content:space-between; align-items:center; padding:24px max(24px,calc((100vw - 1280px)/2)); border-bottom:1px solid var(--line); background:var(--page); gap:20px; }
.edge-blog-controls { display:flex; align-items:center; gap:24px; }
.edge-blog-controls nav { display:flex; padding:4px; border:1px solid var(--line); border-radius:12px; }
.edge-blog-controls nav a { padding:9px 12px; border-radius:8px; font-size:15px; font-weight:700; }
.edge-blog-controls nav a[aria-current] { background:#365eff; color:white; }
.edge-blog-homeLink { font-size:16px; color:var(--muted-text); }
.edge-blog-main { max-width:1280px; margin:auto; padding:80px 24px; }
.edge-blog-eyebrow { color:var(--accent-text); font-size:14px; letter-spacing:.16em; font-weight:700; }
.edge-blog-hero { position:relative; overflow:hidden; padding:56px; border:1px solid var(--line); border-radius:32px; background:var(--panel-gradient); margin-bottom:48px; }
.edge-blog-hero::after { content:""; position:absolute; right:-180px; top:-150px; width:520px; height:520px; border:1px solid #477cff44; border-radius:50%; box-shadow:0 0 0 60px #477cff0a,0 0 0 120px #477cff06; pointer-events:none; }
.edge-blog-hero h1 { position:relative; z-index:1; font-weight:700; font-size:clamp(42px,6vw,80px); line-height:1.05; letter-spacing:-.045em; max-width:820px; margin:24px 0; }
.edge-blog-hero h1 span { color:var(--accent-text); }
.edge-blog-hero p { position:relative; z-index:1; max-width:720px; font-size:21px; line-height:1.7; color:var(--muted-text); }
.edge-blog-sourceNote { font-size:15px !important; margin-top:20px; }
.edge-blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.edge-blog-card { display:flex; flex-direction:column; padding:30px; border:1px solid var(--line); border-radius:24px; background:var(--panel-gradient); transition:transform .3s,border-color .3s; min-height:350px; }
.edge-blog-card:hover { transform:translateY(-6px); border-color:var(--accent-text); }
.edge-blog-card h2 { font-weight:650; font-size:26px; line-height:1.35; letter-spacing:-.03em; margin:24px 0 16px; overflow-wrap:anywhere; }
.edge-blog-card p { color:var(--muted-text); line-height:1.7; font-size:17px; margin-bottom:28px; }
.edge-blog-card img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:14px; margin-top:20px; }
.edge-blog-date { font-size:14px; color:var(--quiet-text); }
.edge-blog-read { margin-top:auto; display:flex; justify-content:space-between; align-items:center; color:var(--accent-text); font-weight:700; border-top:1px solid var(--line); padding-top:20px; }
.edge-blog-empty { padding:48px; border:1px solid var(--line); border-radius:24px; font-size:22px; }
.edge-blog-pagination { display:flex; justify-content:center; align-items:center; gap:24px; padding:40px 0 0; }
.edge-blog-pagination a { color:var(--accent-text); }
.edge-blog-article { max-width:900px; margin:auto; }
.edge-blog-article h1 { font-size:clamp(34px,4.5vw,60px); line-height:1.18; letter-spacing:-.035em; margin:28px 0; overflow-wrap:anywhere; }
.edge-blog-articleText { white-space:pre-wrap; overflow-wrap:anywhere; font-size:21px; line-height:1.85; color:var(--text); padding:32px 0; }
.edge-blog-articleText a { color:var(--accent-text); text-decoration:underline; text-underline-offset:4px; }
.edge-blog-articleText code { font-size:.9em; background:var(--panel-soft); }
.edge-blog-media { display:grid; gap:20px; padding:24px 0; }
.edge-blog-media img,.edge-blog-media video { width:100%; max-height:700px; object-fit:contain; border-radius:20px; background:var(--panel); }
.edge-blog-source { display:inline-flex; align-items:center; gap:12px; padding:16px 24px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); color:var(--accent-text); font-weight:700; }
.edge-blog-footer { max-width:1280px; margin:auto; padding:28px 24px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:20px; color:var(--muted-text); font-size:15px; }
@media(max-width:1000px) { .edge-blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .edge-blog-header .edge-blog-brand { font-size:24px; } .edge-blog-controls { gap:12px; } }
@media(max-width:640px) { .edge-blog-header { padding:16px; gap:12px; flex-wrap:wrap; } .edge-blog-header .edge-blog-brand { font-size:20px; } .edge-blog-header .edge-blog-brand-symbol { width:30px; height:30px; font-size:25px; } .edge-blog-homeLink { display:none; } .edge-blog-controls { gap:8px; } .edge-blog-controls nav a { padding:8px; } .edge-blog-main { padding:32px 16px; } .edge-blog-hero { padding:30px 24px; border-radius:24px; } .edge-blog-hero p { font-size:18px; } .edge-blog-grid { grid-template-columns:1fr; } .edge-blog-card { min-height:280px; padding:24px; } .edge-blog-articleText { font-size:18px; line-height:1.8; } .edge-blog-footer { flex-wrap:wrap; } }
@media(prefers-reduced-motion:reduce) { .edge-blog-card { transition:none; } .edge-blog-card:hover { transform:none; } }

/* Editorial blog, using the same surfaces and blue accents as the landing. */
.edge-blog-main { padding-top: 48px; }
.edge-blog-header { backdrop-filter: blur(18px); background: color-mix(in srgb, var(--page) 90%, transparent); }
.edge-blog-hero { display: grid; grid-template-columns: 1.6fr 1fr; align-items: center; gap: 35px; padding: 44px; background: radial-gradient(ellipse at 0 0, #4b76ff1a, transparent 65%), var(--panel-gradient); }
.edge-blog-hero::after { display: none; }
.edge-blog-hero h1 { font-size: clamp(38px, 4.6vw, 64px); margin: 20px 0; }
.edge-blog-hero p { font-size: 18px; }
.edge-blog-hero .edge-blog-sourceNote { font-size: 13px !important; }
.edge-blog-heroArt { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 300px; gap: 18px; }
.edge-blog-heroArt > span { color: var(--accent-text); font-size: 10px; letter-spacing: .22em; }
.edge-blog-heroArt > strong { font-size: 140px; font-weight: 750; line-height: 1; letter-spacing: -.08em; color: var(--text); text-shadow: 0 0 65px #537cff40; }
.edge-blog-heroArt > strong span { color: var(--accent-text); }
.edge-blog-artOrbit { position: absolute; width: 255px; height: 255px; border: 1px solid #7196ff35; border-radius: 50%; animation: orbit 24s linear infinite; box-shadow: 0 0 0 20px #557fff05, 0 0 0 45px #557fff04; }
.edge-blog-artOrbit::before { content: ""; position: absolute; width: 8px; height: 8px; left: 35px; top: 35px; background: #8baaff; border-radius: 50%; box-shadow: 0 0 20px #8baaff; }
.edge-blog-artLabels { display: flex; gap: 14px; color: var(--quiet-text); font-size: 11px; }
@keyframes orbit { to { transform: rotate(360deg); } }
.edge-blog-feedHeading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin: 32px 0 24px; }
.edge-blog-feedHeading h2 { font-size: 25px; font-weight: 600; letter-spacing: -.025em; }
.edge-blog-feedHeading > span { display: flex; align-items: center; gap: 9px; color: var(--quiet-text); font-size: 14px; }
.edge-blog-feedHeading i { width: 6px; height: 6px; border-radius: 50%; background: #799aff; box-shadow: 0 0 12px #799aff; }
.edge-blog-grid { gap: 18px; }
.edge-blog-grid > .edge-blog-reveal:first-child { grid-column: span 2; }
.edge-blog-reveal { min-width: 0; }
.edge-blog-card { height: 100%; min-height: 310px; padding: 25px; position: relative; overflow: hidden; background: var(--panel-gradient); }
.edge-blog-card::after { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at 0 0, #5f85ff12, transparent 65%); opacity: 0; transition: opacity .35s; pointer-events: none; }
.edge-blog-card:hover::after { opacity: 1; }
.edge-blog-cardTop { display: flex; justify-content: space-between; gap: 16px; font-size: 10px; letter-spacing: .08em; color: var(--accent-text); margin-bottom: 14px; }
.edge-blog-card .edge-blog-date { font-size: 12px; }
.edge-blog-card h2 { font-size: 23px; margin: 16px 0 12px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.edge-blog-card p { font-size: 15px; line-height: 1.7; margin-bottom: 20px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.edge-blog-card img { max-height: 180px; }
.edge-blog-read { font-size: 14px; padding-top: 16px; }
.edge-blog-read > span { transition: transform .3s; }
.edge-blog-card:hover .edge-blog-read > span { transform: translate(3px, -3px); }
.edge-blog-featuredCard { background: radial-gradient(ellipse at 0 0, #406dff25, transparent 70%), var(--panel-gradient); border-color: #799aff50; }
.edge-blog-featuredCard h2 { font-size: 34px; max-width: 90%; }
.edge-blog-featuredCard p { max-width: 600px; font-size: 17px; }
.edge-blog-pagination { gap: 18px; }
.edge-blog-pagination a { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid var(--line); border-radius: 50%; transition: background .3s; }
.edge-blog-pagination a:hover { background: var(--panel-soft); }
.edge-blog-article { max-width: 1180px; }
.edge-blog-articleHeading { position: relative; padding: 38px 42px; border-radius: 26px; border: 1px solid var(--line); background: radial-gradient(ellipse at 100% 0, #507fff1b, transparent 75%), var(--panel-gradient); margin-bottom: 36px; }
.edge-blog-article h1 { max-width: 980px; font-weight: 650; font-size: clamp(34px, 4vw, 56px); }
.edge-blog-articleHeading .edge-blog-sourceNote { color: var(--quiet-text); font-size: 13px !important; }
.edge-blog-articleLayout { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 55px; align-items: start; }
.edge-blog-articleBody { max-width: 820px; min-width: 0; }
.edge-blog-articleText { padding-top: 10px; font-size: 21px; line-height: 1.9; }
.edge-blog-media:empty { display: none; }
.edge-blog-readingProgress { position: fixed; top: 0; left: 0; right: 0; height: 3px; transform-origin: left; z-index: 60; background: #7898ff; }
.edge-blog-readingTools { position: sticky; top: 130px; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding-top: 16px; }
.edge-blog-toolEyebrow { font-size: 10px; letter-spacing: .14em; color: var(--accent-text); }
.edge-blog-readingTools > strong { font-size: 52px; font-weight: 550; line-height: 1; }
.edge-blog-readingTools > strong span { font-size: 17px; color: var(--quiet-text); }
.edge-blog-readingTools p { color: var(--quiet-text); font-size: 13px; line-height: 1.6; }
.edge-blog-readingTools a, .edge-blog-readingTools button { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--accent-text); cursor: pointer; text-align: left; }
.edge-blog-readingTools a { padding: 14px 0; border-top: 1px solid var(--line); width: 100%; }
.edge-blog-related { margin-top: 64px; padding-top: 32px; border-top: 1px solid var(--line); }
.edge-blog-related h2 { font-size: 26px; font-weight: 600; margin-bottom: 20px; }
.edge-blog-related > div { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.edge-blog-related a { display: flex; flex-direction: column; gap: 20px; padding: 22px; border-radius: 18px; border: 1px solid var(--line); background: var(--panel-gradient); transition: border-color .3s, transform .3s; }
.edge-blog-related a:hover { border-color: var(--accent-text); transform: translateY(-4px); }
.edge-blog-related a > span { color: var(--accent-text); font-size: 11px; }
.edge-blog-related strong { font-size: 18px; line-height: 1.5; font-weight: 550; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
@media (max-width: 1000px) { .edge-blog-hero { grid-template-columns: 1fr; } .edge-blog-heroArt { display: none; } .edge-blog-articleLayout { grid-template-columns: 155px minmax(0,1fr); gap: 28px; } }
@media (max-width: 640px) {
  .edge-blog-hero { padding: 28px 24px; margin-bottom: 28px; }
  .edge-blog-feedHeading { flex-direction: column; align-items: flex-start; gap: 10px; }
  .edge-blog-grid > .edge-blog-reveal:first-child { grid-column: auto; }
  .edge-blog-card { min-height: 270px; }
  .edge-blog-featuredCard h2 { font-size: 27px; max-width: 100%; }
  .edge-blog-articleHeading { padding: 26px 22px; }
  .edge-blog-articleLayout { display: flex; flex-direction: column; gap: 20px; }
  .edge-blog-readingTools { position: static; width: 100%; flex-direction: row; align-items: center; flex-wrap: wrap; gap: 12px 18px; padding: 0 0 20px; border-bottom: 1px solid var(--line); }
  .edge-blog-readingTools .edge-blog-toolEyebrow, .edge-blog-readingTools p { display: none; }
  .edge-blog-readingTools > strong { font-size: 30px; }
  .edge-blog-readingTools a { padding: 0; width: auto; border: 0; }
  .edge-blog-readingTools button { font-size: 12px; }
  .edge-blog-articleText { font-size: 18px; }
  .edge-blog-related > div { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .edge-blog-artOrbit { animation: none; } .edge-blog-read > span, .edge-blog-card::after, .edge-blog-related a { transition: none; } .edge-blog-related a:hover { transform: none; } }

.edge-blog-articleSocials { display: flex; flex-wrap: wrap; gap: 16px 24px; padding: 18px 0 24px; border-top: 1px solid var(--line); }
@media (max-width: 640px) { .edge-blog-footer { padding-bottom: 0; margin-bottom: 0; } }
@media (max-width: 700px) {
  .edge-blog-header {
    padding-top: calc(16px + env(safe-area-inset-top, 0px));
    padding-left: max(16px, env(safe-area-inset-left, 0px));
    padding-right: max(16px, env(safe-area-inset-right, 0px));
  }
}
.edge-blog-articleSocials a { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--quiet-text); transition: color .25s; }
.edge-blog-articleSocials a:hover { color: var(--accent-text); }
.edge-blog-trainingCallout { position: relative; display: flex; align-items: flex-start; gap: 22px; padding: 30px; border: 1px solid #7596ff45; border-radius: 22px; background: radial-gradient(ellipse at 0 0, #416cff25, transparent 75%), var(--panel-gradient); overflow: hidden; }
.edge-blog-trainingBadge { display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid #789aff45; border-radius: 16px; background: #416fff14; color: var(--accent-text); flex-shrink: 0; }
.edge-blog-trainingContent { min-width: 0; }
.edge-blog-trainingEyebrow { font-size: 10px; letter-spacing: .13em; color: var(--accent-text); }
.edge-blog-trainingCallout h2 { font-size: clamp(23px, 2.3vw, 30px); font-weight: 600; line-height: 1.25; letter-spacing: -.025em; margin: 12px 0; }
.edge-blog-trainingCallout p { color: var(--muted-text); font-size: 16px; line-height: 1.65; max-width: 580px; margin-bottom: 20px; }
.edge-blog-trainingButton { display: inline-flex; justify-content: space-between; align-items: center; gap: 22px; padding: 14px 18px; font-size: 15px; font-weight: 600; border-radius: 11px; color: #fff; background: #315dff; transition: background .25s, transform .25s; }
.edge-blog-trainingButton:hover { background: #4772ff; transform: translateY(-2px); }
.edge-blog-trainingButton:focus-visible, .edge-blog-articleSocials a:focus-visible { outline: 2px solid var(--accent-text); outline-offset: 4px; }
@media (max-width: 640px) { .edge-blog-trainingCallout { padding: 24px; gap: 14px; } .edge-blog-trainingBadge { display: none; } .edge-blog-trainingButton { width: 100%; font-size: 14px; } .edge-blog-articleSocials { gap: 14px 18px; } }
@media (prefers-reduced-motion: reduce) { .edge-blog-trainingButton { transition: none; } .edge-blog-trainingButton:hover { transform: none; } }
