/* feed-v2.css — manji.ai/feed, media-first (MANJI-039). On top of /amiaos/amia.css, /assets/blog-v1.css and
   /assets/people-v1.css; written into the build by blog.mjs (source: operations manji.ai/feed-v2.css).
   manji.ai's own look: night ink #04050d, Mittelschrift (DIN 1451) caps for UI, EB Garamond for words with an italic
   phrase, sky #9fd6e6 kickers, the green→indigo pill. Text colours keep 4.5:1 on the ink. */
:root{ --fd-ink:#04050d; --fd-card:#0b0d1c; --fd-card-2:#10132a; --fd-line:rgba(159,214,230,.14); --fd-line-2:rgba(159,214,230,.32);
  --fd-sky:#9fd6e6; --fd-white:#fff; --fd-words:rgba(242,239,255,.86); --fd-quiet:rgba(242,239,255,.68);
  --fd-green:#00bf63; --fd-indigo:#3D4AAA; --fd-teal:#2DA0B4; --fd-yellow:#FFCC03;
  --fd-din:'Mittelschrift','DIN 1451',Impact,sans-serif; --fd-gar:'EB Garamond',Georgia,serif;
  --fd-r:22px; --fd-ease:cubic-bezier(.2,.8,.2,1); }

body:has(.fd){ background:var(--fd-ink); --surface:var(--fd-ink);
  background-image:
    radial-gradient(1100px 620px at 82% -8%, rgba(61,74,170,.30), transparent 62%),
    radial-gradient(900px 560px at -6% 18%, rgba(45,160,180,.16), transparent 60%),
    radial-gradient(1px 1px at 12% 22%, rgba(255,255,255,.55), transparent 60%),
    radial-gradient(1px 1px at 68% 12%, rgba(159,214,230,.6), transparent 60%),
    radial-gradient(1.5px 1.5px at 88% 34%, rgba(255,255,255,.45), transparent 60%),
    radial-gradient(1px 1px at 34% 8%, rgba(255,204,3,.45), transparent 60%),
    radial-gradient(1px 1px at 52% 30%, rgba(255,255,255,.35), transparent 60%);
  background-repeat:no-repeat; }
body:has(.fd) .nav{ background:rgba(4,5,13,.72); border-bottom-color:var(--fd-line); }
body:has(.fd) .foot{ border-top-color:var(--fd-line); }
body:has(.fd) .foot a{ color:var(--fd-quiet); }
body:has(.fd) .foot a:hover{ color:var(--fd-sky); }

.fd{ font-family:var(--fd-gar); color:var(--fd-words); padding:clamp(36px,7vw,88px) 0 clamp(56px,8vw,110px); }
.fd a{ color:inherit; }
.fd :focus-visible{ outline:2px solid var(--fd-sky); outline-offset:3px; border-radius:6px; }

/* type */
.fd-kicker{ margin:0 0 10px; font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.26em; font-size:.78rem; color:var(--fd-sky); }
.fd-kicker a{ text-decoration:none; border-bottom:1px solid rgba(159,214,230,.45); }
.fd-title,.fd-h2,.fd-feature__title,.fd-card__title,.fd-post__title{ font-family:var(--fd-din); font-weight:400; text-transform:uppercase; color:var(--fd-white); letter-spacing:.01em; }
.fd-title em,.fd-h2 em{ font-family:var(--fd-gar); font-style:italic; text-transform:none; letter-spacing:0; color:var(--fd-sky);
  background:linear-gradient(100deg,#9fd6e6,#bfe0d0,#a9c0f0); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; padding-right:.06em; }
.fd-title{ font-size:clamp(2.8rem,8vw,6.2rem); line-height:.95; margin:0 0 22px; }
.fd-title em{ font-size:1.08em; }
.fd-h2{ font-size:clamp(1.7rem,3.6vw,2.6rem); line-height:1.02; margin:0 0 26px; }
.fd-h2 em{ font-size:1.1em; }
.fd-lede{ font-size:clamp(1.2rem,2.1vw,1.45rem); line-height:1.55; color:var(--fd-quiet); max-width:40rem; margin:0 0 28px; }

/* buttons + chips */
.fd-actions{ display:flex; flex-wrap:wrap; gap:12px; margin:22px 0 0; }
.fd-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:0 24px; border-radius:999px; cursor:pointer;
  font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.18em; font-size:.8rem; color:var(--fd-white) !important; text-decoration:none;
  background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.28);
  transition:transform .2s var(--fd-ease), border-color .2s, box-shadow .2s, filter .2s; }
.fd-btn:hover{ border-color:#fff; transform:translateY(-1px); }
.fd-btn--go{ border:none; background:linear-gradient(135deg,#00874a,var(--fd-indigo)); /* deeper green start: white text keeps 4.5:1 */ text-shadow:0 1px 2px rgba(0,0,0,.35);
  box-shadow:0 8px 30px rgba(45,160,180,.42),0 0 22px rgba(0,191,99,.2),inset 0 1px 0 rgba(255,255,255,.2); }
.fd-btn--go:hover{ filter:brightness(1.1); box-shadow:0 14px 42px rgba(0,191,99,.4),0 0 30px rgba(45,160,180,.38); }

.fd-filters{ display:flex; flex-wrap:wrap; gap:10px; margin:0 0 26px; padding:0; }
.fd-chip{ display:inline-flex; align-items:center; gap:8px; min-height:40px; padding:0 14px; border-radius:999px; font-family:var(--fd-din);
  text-transform:uppercase; letter-spacing:.1em; font-size:.74rem; color:var(--fd-words); background:rgba(255,255,255,.04);
  border:1px solid var(--fd-line-2); text-decoration:none; cursor:pointer; transition:background .2s, border-color .2s, color .2s; }
.fd-chip:hover{ border-color:var(--fd-sky); color:#fff; }
.fd-chip .fd-ava{ width:24px; height:24px; padding:1px; margin-left:-8px; }
.fd-chip__n{ font-size:.7rem; color:var(--fd-quiet); letter-spacing:.06em; }
.fd-filter[aria-pressed="true"]{ background:linear-gradient(135deg,rgba(0,191,99,.28),rgba(61,74,170,.42)); border-color:rgba(159,214,230,.7); color:#fff; }
.fd-filter[aria-pressed="true"] .fd-chip__n{ color:#fff; }
.fd-chip--cat{ min-height:28px; padding:0 10px; font-size:.68rem; color:var(--fd-sky); }
.fd-status{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.fd-none,.fd-empty{ font-size:1.25rem; color:var(--fd-quiet); display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.fd-empty a{ color:var(--fd-sky); }
[hidden]{ display:none !important; }

/* meta + credit */
.fd-meta{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin:0 0 10px; font-family:var(--fd-din); text-transform:uppercase;
  letter-spacing:.16em; font-size:.74rem; color:var(--fd-quiet); }
.fd-from{ color:var(--fd-sky); }
.fd-from::before{ content:"·"; margin-right:12px; color:var(--fd-quiet); }
.fd-ava{ display:inline-block; flex:0 0 auto; width:40px; height:40px; border-radius:50%; object-fit:cover; padding:2px;
  background:var(--fd-ink); background-image:linear-gradient(135deg,var(--fd-green),var(--fd-indigo)); background-origin:border-box; }
.fd-ava--initials{ display:inline-flex; align-items:center; justify-content:center; padding:0; font-family:var(--fd-din); font-size:.85rem; color:#fff; letter-spacing:.04em; }
.fd-credit{ display:inline-flex; align-items:center; gap:12px; margin:16px 0 0 -6px; padding:6px 16px 6px 6px; border-radius:999px; text-decoration:none; width:fit-content; transition:background .2s; }
a.fd-credit:hover{ background:rgba(255,255,255,.06); }
.fd-credit__who{ display:flex; flex-direction:column; line-height:1.2; }
.fd-credit__name{ font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.08em; font-size:.84rem; color:#fff; }
.fd-credit__role{ font-size:1rem; color:var(--fd-quiet); }
.fd-credit--sm{ margin-top:12px; }
.fd-credit--sm .fd-ava{ width:34px; height:34px; }

/* media: 16:9, rounded, the video plays where it is */
.fd-media{ position:relative; display:block; aspect-ratio:16/9; overflow:hidden; border-radius:var(--fd-r); background:#000; margin:0; isolation:isolate; }
.fd-media img,.fd-media iframe,.fd-media video{ position:absolute; inset:0; width:100%; height:100%; border:0; object-fit:cover; display:block; }
.fd-media--reel video{ object-fit:contain; background:#000; }
.fd-media--none{ display:flex; align-items:center; justify-content:center; background:radial-gradient(circle at 50% 40%,rgba(61,74,170,.55),rgba(4,5,13,1) 70%); }
.fd-media--none img{ position:static; width:72px; height:72px; opacity:.9; }
.fd-play{ position:absolute; inset:0; display:block; cursor:pointer; }
.fd-play img{ transition:transform .6s var(--fd-ease), filter .3s; }
.fd-play::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(4,5,13,.55)); pointer-events:none; }
.fd-play__btn{ position:absolute; left:50%; top:50%; z-index:2; width:76px; height:76px; margin:-38px 0 0 -38px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  color:#fff; background:linear-gradient(135deg,var(--fd-green),var(--fd-indigo)); box-shadow:0 10px 40px rgba(45,160,180,.55),0 0 0 8px rgba(255,255,255,.12);
  transition:transform .25s var(--fd-ease), box-shadow .25s; }
.fd-play__btn svg{ margin-left:4px; }
.fd-play__tag{ position:absolute; left:16px; bottom:14px; z-index:2; font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.2em; font-size:.72rem; color:#fff;
  padding:6px 12px; border-radius:999px; background:rgba(4,5,13,.6); border:1px solid rgba(255,255,255,.2); }
.fd-play:hover img{ transform:scale(1.03); filter:brightness(1.08); }
.fd-play:hover .fd-play__btn,.fd-play:focus-visible .fd-play__btn{ transform:scale(1.08); box-shadow:0 14px 50px rgba(0,191,99,.5),0 0 0 10px rgba(255,255,255,.16); }
.fd-play:focus-visible{ outline:3px solid var(--fd-sky); outline-offset:-3px; border-radius:var(--fd-r); }
a.fd-media img{ transition:transform .6s var(--fd-ease); }
a.fd-media:hover img{ transform:scale(1.03); }

/* the hero: the latest post */
.fd-head{ margin:0 0 clamp(32px,5vw,56px); }
.fd-feature{ display:grid; grid-template-columns:minmax(0,1fr); gap:clamp(20px,3vw,34px);
  padding:clamp(14px,1.6vw,20px); border-radius:calc(var(--fd-r) + 10px); background:linear-gradient(160deg,rgba(16,19,42,.92),rgba(8,10,22,.92));
  border:1px solid var(--fd-line); box-shadow:0 40px 120px -40px rgba(45,160,180,.35),0 0 0 1px rgba(255,255,255,.02) inset; margin:0 0 clamp(48px,7vw,88px); }
.fd-feature .fd-media{ box-shadow:0 24px 70px -30px rgba(0,0,0,.9); }
.fd-feature__body{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:6px clamp(24px,4vw,56px); align-items:start; padding:0 clamp(8px,2vw,26px) clamp(10px,1.6vw,22px); }
.fd-feature__lead{ min-width:0; } .fd-feature__more{ min-width:0; padding-top:4px; }
.fd-feature__title{ font-size:clamp(2rem,4vw,3.4rem); line-height:1; margin:6px 0 4px; }
.fd-feature__title a,.fd-card__title a{ text-decoration:none; background-image:linear-gradient(currentColor,currentColor); background-size:0 2px; background-repeat:no-repeat; background-position:0 100%; transition:background-size .3s var(--fd-ease); }
.fd-feature__title a:hover,.fd-card__title a:hover{ background-size:100% 2px; }
.fd-feature__sum{ font-size:clamp(1.15rem,1.6vw,1.32rem); line-height:1.55; color:var(--fd-words); margin:0; }

/* the timeline */
.fd-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr)); gap:clamp(18px,2.4vw,30px); }
.fd-card{ display:flex; flex-direction:column; border-radius:var(--fd-r); background:var(--fd-card); border:1px solid var(--fd-line); overflow:hidden;
  transition:transform .25s var(--fd-ease), border-color .25s, box-shadow .25s; }
.fd-card:hover{ border-color:var(--fd-line-2); box-shadow:0 30px 80px -40px rgba(45,160,180,.45); transform:translateY(-3px); }
.fd-card .fd-media{ border-radius:0; }
.fd-card__body{ display:flex; flex-direction:column; flex:1; padding:20px 22px 22px; }
.fd-card__title{ font-size:clamp(1.35rem,2vw,1.6rem); line-height:1.08; margin:2px 0 10px; }
.fd-card__sum{ margin:0; font-size:1.12rem; line-height:1.5; color:var(--fd-quiet); }
.fd-card .fd-credit{ margin-top:auto; padding-top:16px; }
.fd-card .fd-credit:hover{ background:none; }
.fd-card .fd-credit:hover .fd-credit__name{ color:var(--fd-sky); }

/* Meet the team */
.fd-team{ margin:clamp(64px,9vw,120px) 0 0; padding:clamp(26px,4vw,48px); border-radius:calc(var(--fd-r) + 10px);
  background:linear-gradient(135deg,rgba(0,191,99,.12),rgba(61,74,170,.24)); border:1px solid var(--fd-line-2);
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:28px 40px; align-items:center; }
.fd-team__lede{ margin:0; font-size:1.2rem; line-height:1.55; color:var(--fd-words); max-width:30rem; }
.fd-team__head .fd-h2{ margin-bottom:14px; }
.fd-team__list{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:14px; }
.fd-team__list li{ flex:1 1 150px; }
.fd-person{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px; padding:22px 14px 18px; border-radius:18px; text-decoration:none;
  background:rgba(4,5,13,.55); border:1px solid var(--fd-line); transition:transform .2s var(--fd-ease), border-color .2s; height:100%; box-sizing:border-box; }
.fd-person:hover{ transform:translateY(-2px); border-color:var(--fd-sky); }
.fd-person .fd-ava{ width:72px; height:72px; padding:3px; margin-bottom:6px; }
.fd-person__name{ font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.06em; font-size:.95rem; color:#fff; }
.fd-person__role{ font-size:1rem; color:var(--fd-quiet); }
.fd-team .fd-actions{ grid-column:1 / -1; margin:0; }

/* a post */
.fd-post{ max-width:1080px; margin:0 auto; }
.fd-back{ margin:0 0 28px; font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.18em; font-size:.76rem; }
.fd-back a{ color:var(--fd-sky); text-decoration:none; }
.fd-back a:hover{ color:#fff; }
.fd-post__head{ max-width:860px; margin:0 auto clamp(26px,4vw,40px); text-align:center; display:flex; flex-direction:column; align-items:center; }
.fd-post__head .fd-meta{ justify-content:center; }
.fd-post__title{ font-size:clamp(2.2rem,5.4vw,4.2rem); line-height:1; margin:6px 0 26px; }
.fd-post__sum{ font-size:clamp(1.25rem,2.2vw,1.55rem); font-style:italic; line-height:1.5; color:var(--fd-words); margin:0; max-width:46rem; }
.fd-post__head .fd-credit{ margin:22px 0 0; }
.fd-post__media{ margin:0 0 clamp(36px,5vw,60px); }
.fd-post__media .fd-media{ box-shadow:0 40px 120px -40px rgba(45,160,180,.45); border:1px solid var(--fd-line); }
.fd-post__media .fd-media--reel{ aspect-ratio:9/16; max-height:82vh; max-width:min(100%,460px); margin:0 auto; }
.fd-prose,.fd-post__end{ max-width:42rem; margin:0 auto; }
.fd-prose{ font-size:clamp(1.22rem,1.9vw,1.38rem); line-height:1.68; color:var(--fd-words); }
.fd-prose > :first-child{ margin-top:0; }
.fd-prose p{ margin:0 0 1.1em; }
.fd-prose h2,.fd-prose h3,.fd-prose h4{ font-family:var(--fd-din); font-weight:400; text-transform:uppercase; letter-spacing:.02em; color:#fff; line-height:1.1; margin:1.8em 0 .55em; }
.fd-prose h2{ font-size:1.65em; } .fd-prose h3{ font-size:1.3em; } .fd-prose h4{ font-size:1.1em; color:var(--fd-sky); letter-spacing:.08em; }
.fd-prose strong{ color:#fff; font-weight:700; }
.fd-prose a{ color:var(--fd-sky); text-decoration:none; border-bottom:1px solid rgba(159,214,230,.5); }
.fd-prose a:hover{ color:#fff; border-bottom-color:#fff; }
.fd-prose img{ display:block; max-width:100%; height:auto; border-radius:16px; margin:1.4em auto; }
.fd-prose figure{ margin:1.6em 0; }
.fd-prose blockquote{ margin:1.4em 0; padding:4px 0 4px 22px; border-left:3px solid; border-image:linear-gradient(var(--fd-green),var(--fd-indigo)) 1; font-style:italic; color:#fff; font-size:1.1em; }
.fd-prose ul,.fd-prose ol{ padding-left:1.3em; margin:0 0 1.1em; } .fd-prose li{ margin:.3em 0; }
.fd-prose li::marker{ color:var(--fd-sky); }
.fd-prose hr{ border:0; height:1px; background:linear-gradient(90deg,transparent,var(--fd-line-2),transparent); margin:2.4em 0; }
.fd-prose code{ font-size:.85em; background:rgba(255,255,255,.07); padding:.1em .35em; border-radius:6px; }
.fd-prose pre{ overflow:auto; background:rgba(255,255,255,.05); padding:16px; border-radius:14px; font-size:.8em; }
.fd-prose .yt{ position:relative; aspect-ratio:16/9; margin:1.4em 0; } .fd-prose .yt iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; border-radius:16px; }
.fd-post .blog-share{ color:var(--fd-words); font-family:var(--fd-din); }
.fd-post .blog-share__k{ color:var(--fd-sky); opacity:1; letter-spacing:.24em; }
.fd-post .blog-share__b{ text-transform:uppercase; letter-spacing:.12em; font-size:.75rem; }
.fd-post .blog-share__b:hover{ border-color:var(--fd-sky); color:#fff; }
.fd-post .blog-from{ font-family:var(--fd-gar); font-style:italic; color:var(--fd-quiet); font-size:1.15rem; }
.fd-post .blog-from a{ color:var(--fd-sky); }

.fd-author{ display:flex; gap:26px; align-items:flex-start; margin:40px 0 0; padding:clamp(22px,3.4vw,34px); border-radius:calc(var(--fd-r) + 6px);
  background:linear-gradient(135deg,rgba(0,191,99,.10),rgba(61,74,170,.22)); border:1px solid var(--fd-line-2); }
.fd-ava--lg{ width:112px; height:112px; padding:3px; box-shadow:0 18px 60px rgba(45,160,180,.25); font-size:1.6rem; }
.fd-author__name{ margin:0; font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.04em; font-size:1.6rem; color:#fff; line-height:1.1; }
.fd-author__role{ margin:4px 0 0; font-size:1.15rem; color:var(--fd-quiet); }
.fd-author__bio{ margin:12px 0 0; font-size:1.12rem; line-height:1.55; color:var(--fd-words); }
.fd-author .fd-actions{ margin-top:18px; }

.fd-pn{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:40px 0 0; }
.fd-pn__a{ display:flex; gap:14px; align-items:center; padding:12px; border-radius:18px; background:var(--fd-card); border:1px solid var(--fd-line); text-decoration:none; transition:border-color .2s, transform .2s var(--fd-ease); min-width:0; }
.fd-pn__a:hover{ border-color:var(--fd-sky); transform:translateY(-2px); }
.fd-pn__a--none{ background:none; border:0; }
.fd-pn__a + .fd-pn__a{ flex-direction:row-reverse; text-align:right; }
.fd-pn__img{ position:relative; flex:0 0 112px; aspect-ratio:16/9; border-radius:12px; overflow:hidden; background:#000; }
.fd-pn__img img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.fd-pn__img .fd-pn__mark{ object-fit:contain; padding:14px; box-sizing:border-box; }
.fd-pn__txt{ display:flex; flex-direction:column; min-width:0; }
.fd-pn__txt .fd-kicker{ margin:0 0 4px; font-size:.7rem; }
.fd-pn__title{ font-family:var(--fd-din); text-transform:uppercase; letter-spacing:.02em; color:#fff; font-size:1rem; line-height:1.15; }
.fd-pn__date{ font-size:.95rem; color:var(--fd-quiet); margin-top:4px; }

/* phones */
@media (max-width:900px){
  .fd-feature{ grid-template-columns:1fr; padding:10px; }
  .fd-feature__body{ grid-template-columns:1fr; padding:4px 10px 14px; }
  .fd-team{ grid-template-columns:1fr; }
}
@media (max-width:600px){
  .fd-title{ font-size:clamp(2.6rem,13vw,3.6rem); }
  .fd-feature{ margin-left:-2vw; margin-right:-2vw; border-radius:var(--fd-r); }
  .fd-play__btn{ width:62px; height:62px; margin:-31px 0 0 -31px; }
  .fd-filters{ flex-wrap:nowrap; overflow-x:auto; margin-right:-4vw; padding-right:4vw; scrollbar-width:none; }
  .fd-filters::-webkit-scrollbar{ display:none; }
  .fd-chip{ flex:0 0 auto; }
  .fd-author{ flex-direction:column; gap:16px; }
  .fd-ava--lg{ width:88px; height:88px; }
  .fd-pn{ grid-template-columns:1fr; }
  .fd-pn__a + .fd-pn__a{ flex-direction:row; text-align:left; }
  .fd-pn__img{ flex-basis:96px; }
  .fd-post__head{ text-align:left; align-items:flex-start; }
  .fd-post__head .fd-meta{ justify-content:flex-start; }
  .fd-post__media{ margin-left:-4vw; margin-right:-4vw; }
  .fd-post__media .fd-media{ border-radius:0; border-left:0; border-right:0; }
}

@media (prefers-reduced-motion:reduce){
  .fd *,.fd *::before,.fd *::after{ transition:none !important; animation:none !important; }
  .fd-card:hover,.fd-person:hover,.fd-pn__a:hover,.fd-btn:hover{ transform:none; }
  .fd-play:hover img,a.fd-media:hover img{ transform:none; }
}
