/* Insights index/article atmosphere and cards: Archivo/Geist and green glass.
   The cinematic homepage remains unchanged. */
body.jamie-journal-index {
  --jb-canvas:#080b12; --jb-ink:#faf7fc; --jb-soft:#d8d1de;
  --jb-accent:#00ee7a; --jb-edge:#ffffff14; --jb-glass-fill:#18203338; --jb-atmosphere-opacity:.92;
  --jb-gutter:clamp(24px,5.5vw,112px); --jb-ease:cubic-bezier(.23,1,.32,1);
  background:var(--jb-canvas)!important; color:var(--jb-ink)!important;
  font:400 16px/1.6 Geist,sans-serif!important; color-scheme:dark; position:relative; isolation:isolate;
}
.jamie-journal-index :where(h1,h2,p){margin:0}
.jamie-journal-index a {color:inherit;text-decoration:none}
.jamie-journal-index a:focus-visible{outline:2px solid var(--jb-accent);outline-offset:5px}
.jamie-journal-index .je-skip{position:fixed;border-radius:50px;background:var(--jb-ink);color:var(--jb-canvas);z-index:10}
/* Viewport fade: 57% sky, with the lower 43% transitioning into navy. */
.jb-atmosphere{position:fixed;inset:0;height:100%;z-index:-1;pointer-events:none;overflow:hidden;background:var(--jb-canvas);mask-image:linear-gradient(#000 0%,#000 56.667%,transparent 100%);-webkit-mask-image:linear-gradient(#000 0%,#000 56.667%,transparent 100%)}
.jb-sky{position:absolute;inset:0;opacity:var(--jb-atmosphere-opacity);background:url(../journal/media/blog-space.webp) center top/cover no-repeat}
.jb-sky-right{display:none}
.jb-header{max-width:1760px;margin:auto;padding:clamp(28px,4vw,64px) var(--jb-gutter) 0;display:flex;justify-content:space-between;align-items:center;gap:32px}
.jb-identity{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}
.jb-avatar{display:block;width:clamp(48px,3.6vw,74px);height:clamp(48px,3.6vw,74px);object-fit:cover;border-radius:50%;border:2px solid #ffffff3d;box-shadow:0 3px 14px #05081166}
.jb-logo{display:block;width:clamp(156px,12.2vw,224px);height:auto}
.jb-nav{display:flex;align-items:center;gap:10px}
.jb-nav-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:15px 24px;border:1px solid var(--jb-edge);border-radius:50px;background:linear-gradient(135deg,#00ee7a1f,#b9c8e708),#18203380;box-shadow:inset 0 1px 0 #ffffff0f,0 12px 28px #05091638;backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%);font:800 13px/1 Archivo,sans-serif;letter-spacing:.025em;text-transform:uppercase;white-space:nowrap;transition:background-color 150ms var(--jb-ease),border-color 150ms var(--jb-ease)}
.jb-nav-button:hover{background-color:#2b3c4d9c;border-color:#ffffff24}
.jb-nav-button[aria-current=page],.jb-nav-button.jb-current{color:var(--jb-accent)}
.jb-work{padding:5px 21px 5px 6px;min-height:48px}
.jb-play{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;background:var(--jb-accent);border-radius:50%;color:#17101d}
.jb-play svg{width:19px;height:19px;fill:currentColor}
.jamie-journal-index .je-journal{max-width:1760px;margin:auto;padding:clamp(72px,8vw,128px) var(--jb-gutter) 80px}
.jamie-journal-index .je-intro{max-width:none;text-align:center;margin-bottom:clamp(56px,6vw,96px)}
.jamie-journal-index .je-intro .je-eyebrow{color:var(--jb-soft)!important;font-size:13px;letter-spacing:.04em;margin-bottom:20px}
.jamie-journal-index .je-intro h1{font:800 clamp(36px,3.6vw,64px)/1.08 Archivo,sans-serif;letter-spacing:-.04em;margin:0 0 24px;text-wrap:balance}
.jamie-journal-index .je-intro h1 span{color:var(--jb-accent)}
.jamie-journal-index .je-intro>p:not(.je-eyebrow){font-size:clamp(16px,1.25vw,19px);color:var(--jb-soft);max-width:62ch;line-height:1.6;margin-inline:auto;}
#articles{scroll-margin-top:36px}
.jb-list-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.jb-count{font-size:15px;color:var(--jb-soft);font-variant-numeric:tabular-nums}
.jb-count span{color:var(--jb-ink);font-weight:600}
.jb-pagination{display:flex;align-items:center;gap:6px;font-size:14px}
.jb-pagination :is(a,span):not(.ja-sr){display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;border-radius:50%;border:1px solid transparent}
.jb-pagination a{transition:background-color 150ms var(--jb-ease),color 150ms var(--jb-ease)}
.jb-pagination a:hover{background:#ffffff0c;color:var(--jb-accent)}
.jb-pagination .current{background:#00ee7a12;color:var(--jb-accent);border-color:#00ee7a24!important}
.jb-pagination .jb-page-disabled{color:#d8d1de50}
.jamie-journal-index .je-notice{font-size:12px!important;color:var(--jb-soft)!important;margin:-8px 0 24px}
.jamie-journal-index .je-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}
.jamie-journal-index .je-card{position:relative;isolation:isolate;min-width:0;min-height:220px;border-radius:8px;border:1px solid var(--jb-edge);background:var(--jb-glass-fill);backdrop-filter:blur(12px) saturate(125%);-webkit-backdrop-filter:blur(12px) saturate(125%);box-shadow:inset 0 1px 0 #ffffff0f,0 12px 28px #05091638;transition:transform 150ms var(--jb-ease),border-color 300ms ease,box-shadow 180ms var(--jb-ease);overflow:hidden}
.jamie-journal-index .je-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--jb-glow-x,50%) var(--jb-glow-y,50%),#00ee7a4d 0,transparent 55%);filter:blur(60px);mix-blend-mode:screen;opacity:0;pointer-events:none;transition:opacity 300ms ease;z-index:0}
.jb-article-link{position:relative;z-index:1;height:100%;min-height:inherit;display:flex!important;flex-direction:column;outline-offset:-3px!important;border-radius:inherit}
.jb-card-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:40px}
.jamie-journal-index .je-card .jb-date{font-size:13px;line-height:1;letter-spacing:.1em;text-transform:uppercase;color:var(--jb-accent);margin:0 0 10px}
.jamie-journal-index .je-card :is(h2,h3){font:600 20px/1.3 Archivo,sans-serif;letter-spacing:-.025em;color:var(--jb-ink);margin:0 0 20px;text-wrap:pretty}
.jamie-journal-index .je-card a:hover :is(h2,h3){color:var(--jb-ink)}
.jb-card-arrow{display:block;width:24px;height:24px;margin-top:auto;margin-left:auto;color:var(--jb-accent);flex-shrink:0}
.jb-card-arrow svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5}
/* Reference interaction: the white circular label follows the pointer only over
   cards. The actual article remains a native full-card link. */
.jb-card-cursor{position:fixed;top:0;left:0;z-index:1000;width:70px;height:70px;opacity:0;pointer-events:none;transition:opacity 200ms ease;will-change:transform}
.jb-card-cursor.is-visible{opacity:1}
.jb-cursor-disc{width:100%;height:100%;display:grid;place-items:center;border-radius:50%;background:#fff;color:#080b12;box-shadow:0 0 30px #00ee7abf;font:800 10px/1 Archivo,sans-serif;text-align:center;text-transform:uppercase;transform:scale(.28);transition:transform 300ms var(--jb-ease)}
.jb-card-cursor.is-visible .jb-cursor-disc{transform:scale(1)}
.jb-list-bar-bottom{margin-top:48px;margin-bottom:0}
.jamie-journal-index .je-footer{max-width:calc(1760px - 2 * var(--jb-gutter));margin:0 var(--jb-gutter);padding:28px 0 40px;border-color:var(--jb-edge);color:var(--jb-soft);font-size:13px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
.jamie-journal-index .je-footer a{color:var(--jb-ink);text-underline-offset:5px}
.jamie-journal-index .je-footer a:hover{color:var(--jb-accent)}
.jb-empty{padding:48px 0;color:var(--jb-soft);max-width:62ch}
.jb-empty a{color:var(--jb-accent);text-decoration:underline}
@media(hover:hover) and (pointer:fine){
 .jamie-journal-index .je-card:hover{transform:translateY(-5px);border-color:#ffffff24;box-shadow:inset 0 1px 0 #ffffff1a,0 16px 32px #0509164a}
 .jamie-journal-index .je-card:hover::before{opacity:1}
 .jb-pointer-ready .jb-pointer-active .jb-article-link:hover{cursor:none}
}
.jb-card-enter{animation:jb-enter 500ms var(--jb-ease) both;animation-delay:var(--jb-delay,0ms)}
@keyframes jb-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(min-width:1760px){.jamie-journal-index .je-footer{margin-inline:auto}}
@media(max-width:1023px){.jamie-journal-index .je-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jb-header{gap:24px}.jb-nav{gap:6px}.jb-nav-button{font-size:11px;padding-inline:17px}.jb-work{padding-left:5px}.jb-logo{width:156px}}
@media(max-width:760px){.jb-header{flex-wrap:wrap;gap:24px}.jb-nav{width:100%;justify-content:flex-start}.jb-nav-button{font-size:11px;min-height:44px;padding:13px 18px}.jb-work{padding:4px 16px 4px 5px}.jb-play{width:34px;height:34px}.jb-avatar{width:46px;height:46px}.jb-logo{width:138px}.jamie-journal-index .je-journal{padding-top:64px}.jamie-journal-index .je-intro h1{font-size:clamp(35px,7.6vw,52px);line-height:1.08}.jb-sky{background-image:url(../journal/media/blog-space-m.webp)}.jb-card-copy{padding:40px}.jb-list-bar{gap:12px}.jb-list-bar-bottom{margin-top:32px}.jamie-journal-index .je-footer{display:block}.jamie-journal-index .je-footer p{margin-bottom:12px}}
@media(max-width:700px){.jamie-journal-index .je-grid{grid-template-columns:1fr;gap:24px}.jamie-journal-index .je-card{min-height:170px}.jamie-journal-index .je-card :is(h2,h3){font-size:18px}.jb-card-copy{padding:20px}.jamie-journal-index .je-intro{margin-bottom:48px}}
@media(max-width:359px){.jb-nav-button{font-size:10px;padding-inline:12px}.jb-work{padding-left:4px}.jb-nav{gap:5px}.jb-play{width:28px;height:28px}.jb-work{gap:7px}.jb-pagination{gap:0}.jb-pagination :is(a,span):not(.ja-sr){min-width:40px}}
@media(prefers-reduced-motion:reduce){.jamie-journal-index *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.jamie-journal-index .je-card:hover{transform:none}}
@media(prefers-reduced-transparency:reduce){.jb-nav-button,.jamie-journal-index .je-card{background:#18202d;backdrop-filter:none;-webkit-backdrop-filter:none}}

@media(hover:none),(pointer:coarse){.jb-card-cursor{display:none}}
/* Homepage primary material, kept at the shared navigation height. */
.jamie-journal-index .jb-talk{height:48px;padding-block:0;background:#101015;box-shadow:inset 0 1px 0 #ffffff08,0 12px 28px #05091638}
.jb-talk svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.jamie-journal-index .jb-talk:hover{background:#1b1c25}
@media(max-width:1023px) and (min-width:761px){.jb-header{flex-wrap:wrap}.jb-nav{margin-left:auto}}
@media(max-width:760px){.jb-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.jb-nav-button{min-height:44px}.jb-talk svg{width:18px;height:18px}}

@media(max-width:760px){.jamie-journal-index .jb-talk{height:44px}}

.jb-identity > a{display:block}
.jb-portrait-link{flex-shrink:0;border-radius:50%}
@supports not (backdrop-filter:blur(1px)){.jamie-journal-index .je-card{background:#243047ee}}

.jb-list-bar-top{align-items:flex-start}
.jb-list-heading h2{font:600 28px/44px Archivo,sans-serif;letter-spacing:-.025em;color:var(--jb-ink);margin:0}
.jb-list-heading .jb-count{margin:4px 0 0}
/* Native video and the no-motion still share the viewport fade. */
.jb-ambient{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;max-width:none;opacity:var(--jb-atmosphere-opacity);visibility:hidden;pointer-events:none}
.jb-atmosphere.has-ambient .jb-ambient{visibility:visible}
.jb-atmosphere.has-ambient .jb-sky{visibility:hidden}
@media(prefers-reduced-motion:reduce){.jb-ambient{display:none}}

/* A small letter-level shadow protects titles from isolated moving stars. */
.jamie-journal-index .je-intro h1,.jamie-article-page .ja-post-header h1{text-shadow:0 1px 3px #080b12cc}

/* Keep text crisp over moving clouds without a full-width shade layer. */
.jamie-journal-index .jb-card-copy,.jamie-journal-index .je-notice,.jamie-article-page .ja-review-note,.jamie-article-page .ja-post-body,.jamie-article-page .ja-post-byline{text-shadow:0 1px 2px #080b12}
