/* ============================================
   PAGE-SPECIFIC STYLES
   ============================================ */

/* ── HOME HERO ── */
.home-hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:10rem 4rem 6rem}
.hero-aura{position:absolute;inset:0;pointer-events:none;animation:drift 18s ease-in-out infinite;
  background:radial-gradient(ellipse 50% 45% at 72% 38%,rgba(59,130,246,0.11) 0%,transparent 62%),
  radial-gradient(ellipse 38% 38% at 22% 78%,rgba(31,201,172,0.07) 0%,transparent 60%),
  radial-gradient(ellipse 34% 34% at 85% 82%,rgba(155,95,224,0.07) 0%,transparent 58%)}
.hero-line{position:absolute;top:0;left:50%;width:1px;height:100%;background:var(--line);opacity:.5;transform-origin:top;animation:lineGrow 1.6s cubic-bezier(.16,1,.3,1) .3s both}
.hero-inner{max-width:1180px;margin:0 auto;width:100%;position:relative;z-index:2}
.hero-kicker{font-family:var(--sans);font-size:.72rem;font-weight:400;letter-spacing:.32em;text-transform:uppercase;color:var(--cream-dim);margin-bottom:2.5rem;display:flex;align-items:center;gap:1rem}
.hero-kicker .bar{width:42px;height:1px;background:var(--grad);animation:barGrow 1.2s cubic-bezier(.16,1,.3,1) both}
.hero-title{font-family:var(--serif);font-weight:300;font-size:clamp(3.4rem,7.5vw,7.4rem);line-height:1.0;letter-spacing:-0.02em;color:var(--cream);margin-bottom:2rem}
.hero-title em{font-style:italic;font-weight:400}
.hero-title .lineMask{display:block;overflow:hidden;padding-bottom:.05em}
.hero-title .lineInner{display:block;animation:riseIn 1.1s cubic-bezier(.16,1,.3,1) both}
.hero-title .lineMask:nth-child(2) .lineInner{animation-delay:.18s}
.hero-sub{font-size:1.15rem;font-weight:300;color:var(--cream-dim);line-height:1.8;max-width:540px;margin-bottom:3rem}
.hero-actions{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center;margin-bottom:4rem}
.hero-platforms{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}
.hp-label{font-family:var(--sans);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.hp-links{display:flex;gap:2rem;flex-wrap:wrap}
.hp-links a{font-size:.82rem;font-weight:300;color:var(--cream-dim);text-decoration:none;transition:color .3s;letter-spacing:.02em}
.hp-links a:hover{color:var(--cream)}
.scroll-hint{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);font-family:var(--sans);font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:.8rem}
.scroll-hint .dash{width:1px;height:42px;background:linear-gradient(var(--cream-dim),transparent);animation:sd 2.2s ease infinite}
@keyframes sd{0%,100%{opacity:.3;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1)}}

/* ── MISSION BAND ── */
.mission-band{background:var(--ink2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding:8rem 4rem;position:relative;overflow:hidden}
.mission-aura{position:absolute;inset:0;animation:drift 22s ease-in-out infinite;background:radial-gradient(ellipse 55% 80% at 50% 50%,rgba(59,130,246,0.08),transparent 70%)}
.mission-inner{max-width:920px;margin:0 auto;position:relative;z-index:2}
.mission-mark{font-family:var(--serif);font-size:5rem;line-height:.4;font-style:italic;display:block;margin-bottom:2rem;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% auto;animation:shimmer 6s linear infinite}
.mission-quote{font-family:var(--serif);font-weight:300;font-size:clamp(1.7rem,3.2vw,2.9rem);line-height:1.32;letter-spacing:-0.01em;color:var(--cream);margin-bottom:2.5rem;font-style:italic}
.mission-attr{font-family:var(--sans);font-size:.74rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--cream-dim)}
.mission-attr .name{color:var(--cream)}

/* ── PILLARS ── */
.pillars{background:var(--ink)}
.pillars-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.pillar{padding:3rem 2rem;border-bottom:1px solid var(--line);border-right:1px solid var(--line);position:relative;transition:background .4s,transform .4s}
.pillar:first-child{padding-left:0}
.pillar:nth-child(4n){border-right:none}
.pillar:hover{background:var(--ink2);transform:translateY(-6px)}
.pillar-num{font-family:var(--serif);font-size:.9rem;font-style:italic;color:var(--cream-dim);margin-bottom:2.5rem;display:block}
.pillar-title{font-family:var(--serif);font-weight:400;font-size:1.5rem;color:var(--cream);margin-bottom:1rem;letter-spacing:-0.01em}
.pillar-desc{font-size:.86rem;font-weight:300;color:var(--cream-dim);line-height:1.7}
.pillar-accent{position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--grad);transition:width .4s}
.pillar:hover .pillar-accent{width:100%}

/* ── EPISODES LIST (RSS) ── */
.episodes-band{background:var(--ink2)}
.episodes-full{background:var(--ink);padding-top:5rem}
.ep-list{display:flex;flex-direction:column}
.ep-loading{font-family:var(--sans);font-size:.85rem;color:var(--cream-dim);padding:3rem 0;display:flex;align-items:center;gap:1rem;letter-spacing:.04em}
.spinner{width:16px;height:16px;border:2px solid var(--line2);border-top-color:var(--teal);border-radius:50%;display:inline-block;animation:spin .8s linear infinite}
.ep-row{display:grid;grid-template-columns:auto 1fr auto;gap:3rem;align-items:center;padding:2.6rem 0;border-top:1px solid var(--line);text-decoration:none;transition:padding .4s;position:relative}
.ep-row:last-child{border-bottom:1px solid var(--line)}
.ep-row::before{content:'';position:absolute;left:-2rem;top:0;bottom:0;width:0;background:var(--grad);transition:width .35s}
.ep-row:hover{padding-left:1.5rem}
.ep-row:hover::before{width:2px}
.ep-idx{font-family:var(--serif);font-size:.95rem;font-style:italic;color:var(--muted);min-width:3rem;transition:color .3s}
.ep-row:hover .ep-idx{color:var(--cream)}
.ep-name{font-family:var(--serif);font-weight:400;font-size:1.55rem;color:var(--cream);letter-spacing:-0.01em;line-height:1.2;margin-bottom:.5rem;transition:color .3s}
.ep-row:hover .ep-name{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ep-meta{font-family:var(--sans);font-size:.78rem;font-weight:300;color:var(--cream-dim);letter-spacing:.02em}
.ep-meta .sep{color:var(--muted);margin:0 .6rem}
.ep-desc{font-size:.82rem;font-weight:300;color:var(--muted);line-height:1.6;margin-top:.6rem;max-width:640px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ep-go{font-family:var(--sans);font-size:.68rem;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);white-space:nowrap;display:flex;align-items:center;gap:.6rem;transition:all .3s}
.ep-row:hover .ep-go{color:var(--cream);gap:1rem}
.ep-error{padding:2.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ep-error p{color:var(--cream-dim);font-size:.92rem;margin-bottom:1rem}
.ep-platform-row{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2.5rem}

/* ── PLATFORM FUNNEL ── */
.platforms-funnel{background:var(--ink)}
.pf-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.pf-card{border:1px solid var(--line);padding:2.5rem 2rem;text-decoration:none;display:flex;flex-direction:column;gap:.4rem;position:relative;overflow:hidden;transition:border-color .35s,transform .35s;background:var(--ink2)}
.pf-card::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--grad);transition:width .4s}
.pf-card:hover{border-color:var(--line2);transform:translateY(-5px)}
.pf-card:hover::after{width:100%}
.pf-name{font-family:var(--serif);font-size:1.5rem;font-weight:400;color:var(--cream);letter-spacing:-0.01em}
.pf-sub{font-size:.8rem;font-weight:300;color:var(--cream-dim)}
.pf-arr{position:absolute;top:2rem;right:2rem;color:var(--cream-dim);transition:transform .3s,color .3s}
.pf-card:hover .pf-arr{transform:translate(4px,-4px);color:var(--cream)}

/* ── GUEST CTA ── */
.guest-cta{background:var(--ink);text-align:center;padding:9rem 4rem;position:relative;overflow:hidden}
.cta-aura{position:absolute;inset:0;animation:drift 20s ease-in-out infinite;background:radial-gradient(ellipse 50% 70% at 50% 50%,rgba(155,95,224,0.1),transparent 65%)}
.cta-inner{max-width:680px;margin:0 auto;position:relative;z-index:2}
.cta-title{font-family:var(--serif);font-weight:300;font-size:clamp(2.6rem,5vw,4.4rem);color:var(--cream);letter-spacing:-0.02em;line-height:1.04;margin:1.5rem 0}
.cta-title em{font-style:italic}
.cta-sub{font-size:1.05rem;font-weight:300;color:var(--cream-dim);line-height:1.8;margin-bottom:3rem}
.cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* ── ABOUT / STORY ── */
.story{background:var(--ink)}
.story-wrap{max-width:860px;margin:0 auto}
.story-block{display:grid;grid-template-columns:auto 1fr;gap:3.5rem;margin-bottom:5rem;align-items:start}
.story-label{font-family:var(--sans);font-size:.68rem;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);white-space:nowrap;padding-top:.6rem;border-top:1px solid var(--line2);min-width:140px}
.story-h{font-family:var(--serif);font-weight:300;font-size:clamp(1.6rem,2.6vw,2.2rem);color:var(--cream);letter-spacing:-0.01em;line-height:1.15;margin-bottom:1.4rem}
.story-content p{font-size:1.02rem;font-weight:300;color:var(--cream-dim);line-height:1.9;margin-bottom:1.2rem}
.story-pull{text-align:center;padding:4rem 0;margin:1rem 0 5rem}
.story-pull-q{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.5rem,3vw,2.3rem);color:var(--cream);line-height:1.35;max-width:720px;margin:0 auto}
.story-rec{border-left:2px solid;border-image:var(--grad) 1;padding:1.5rem 0 1.5rem 2rem;margin-bottom:3rem}
.story-rec-q{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.2rem;color:var(--cream);line-height:1.5;margin-bottom:1rem}
.story-rec-a{font-family:var(--sans);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-dim)}
.story-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem}
.about-tag{font-family:var(--sans);font-size:.66rem;font-weight:300;letter-spacing:.08em;color:var(--cream-dim);border:1px solid var(--line);padding:.4rem .85rem;border-radius:100px}
.story-cta{display:flex;gap:1rem;flex-wrap:wrap}

/* ── MISSION/VISION CARDS ── */
.mv{background:var(--ink)}
.mv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.mv-card{border:1px solid var(--line);padding:3rem 2.5rem;position:relative;overflow:hidden;transition:border-color .35s,transform .35s;background:var(--ink2)}
.mv-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.mv-card:hover{border-color:var(--line2);transform:translateY(-6px)}
.mv-card:hover::before{transform:scaleX(1)}
.mv-icon{font-size:1.4rem;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1.5rem}
.mv-h{font-family:var(--serif);font-weight:400;font-size:1.6rem;color:var(--cream);margin-bottom:1.2rem;letter-spacing:-0.01em}
.mv-p{font-size:.92rem;font-weight:300;color:var(--cream-dim);line-height:1.8}

/* ── AUDIENCE ── */
.audience{background:var(--ink2);border-top:1px solid var(--line)}
.aud-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.aud-list{list-style:none}
.aud-list li{font-family:var(--serif);font-weight:300;font-size:1.35rem;color:var(--cream);line-height:1.4;padding:1.5rem 0;border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:1.5rem;transition:padding-left .3s}
.aud-list li:first-child{border-top:1px solid var(--line)}
.aud-list li:hover{padding-left:1rem}
.aud-list li .n{font-family:var(--sans);font-size:.7rem;font-weight:400;letter-spacing:.1em;color:var(--cream-dim);min-width:2rem}

/* ── VIDEOS ── */
.videos{background:var(--ink)}
.video-feature{margin-bottom:3rem}
.video-frame{position:relative;width:100%;aspect-ratio:16/9;border:1px solid var(--line);border-radius:2px;overflow:hidden;background:var(--ink2)}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-note{font-size:.78rem;color:var(--muted);margin-top:1rem;line-height:1.6}
.video-note strong{color:var(--cream-dim)}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1rem}
.video-meta{padding:1.2rem 0}
.video-tag{font-family:var(--sans);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);border:1px solid var(--line);padding:.25rem .7rem;border-radius:100px}
.video-title{font-family:var(--serif);font-weight:400;font-size:1.2rem;color:var(--cream);margin-top:.8rem;letter-spacing:-0.01em}

/* ── GUEST FORM ── */
.guest-form-section{background:var(--ink);padding-top:5rem}
.gf-wrap{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:0.9fr 1.1fr;gap:5rem;align-items:start}
.gf-steps{list-style:none;margin-top:2.5rem;display:flex;flex-direction:column;gap:1.8rem}
.gf-steps li{display:flex;gap:1.5rem;align-items:flex-start}
.gf-step-n{font-family:var(--serif);font-style:italic;font-size:1.3rem;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;min-width:2rem}
.gf-steps strong{font-family:var(--sans);font-weight:500;color:var(--cream);font-size:.95rem;display:block;margin-bottom:.2rem;letter-spacing:.01em}
.gf-steps p{font-size:.86rem;font-weight:300;color:var(--cream-dim);line-height:1.6}
.guest-form{display:flex;flex-direction:column;gap:1.4rem}
.gf-row{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.guest-form label{font-family:var(--sans);font-size:.72rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--cream-dim);display:flex;flex-direction:column;gap:.6rem}
.guest-form label span{color:var(--teal)}
.guest-form input,.guest-form select,.guest-form textarea{font-family:var(--sans);font-size:.95rem;font-weight:300;color:var(--cream);background:var(--ink2);border:1px solid var(--line);border-radius:2px;padding:.9rem 1rem;outline:none;transition:border-color .3s;text-transform:none;letter-spacing:0}
.guest-form input::placeholder,.guest-form textarea::placeholder{color:var(--muted)}
.guest-form input:focus,.guest-form select:focus,.guest-form textarea:focus{border-color:var(--cream-dim)}
.guest-form select{appearance:none;cursor:pointer}
.guest-form textarea{resize:vertical;min-height:120px}
.gf-submit{margin-top:.6rem;align-self:flex-start}
.gf-note{font-size:.74rem;font-weight:300;color:var(--muted);letter-spacing:.02em}
.gf-note.ok{color:var(--teal)}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .home-hero{padding:9rem 2rem 5rem}
  .mission-band,.guest-cta{padding:6rem 2rem}
  .pillars-grid{grid-template-columns:1fr 1fr}
  .pillar{padding:2.5rem 1.5rem!important}
  .pillar:nth-child(2n){border-right:none}
  .pf-grid{grid-template-columns:1fr 1fr}
  .mv-grid{grid-template-columns:1fr}
  .aud-grid{grid-template-columns:1fr;gap:3rem}
  .video-grid{grid-template-columns:1fr 1fr}
  .gf-wrap{grid-template-columns:1fr;gap:3rem}
}
@media(max-width:680px){
  .pillars-grid{grid-template-columns:1fr}
  .pillar{border-right:none!important}
  .ep-row{grid-template-columns:1fr;gap:.8rem}
  .ep-idx,.ep-go{display:none}
  .pf-grid{grid-template-columns:1fr}
  .story-block{grid-template-columns:1fr;gap:1.2rem;margin-bottom:3.5rem}
  .story-label{border-top:none;padding-top:0}
  .video-grid{grid-template-columns:1fr}
  .gf-row{grid-template-columns:1fr}
}

/* ============================================
   NEW SECTIONS: articles, testimonials,
   communities, featured/as-seen, video dates
   ============================================ */

/* video date under title */
.video-date{font-family:var(--sans);font-size:.7rem;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
#yt-videos{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1rem}

/* ── ARTICLES (Substack) ── */
.articles{background:var(--ink2)}
#substack-articles{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.article-card{border:1px solid var(--line);background:var(--ink);padding:2.2rem;text-decoration:none;display:flex;flex-direction:column;gap:.7rem;position:relative;overflow:hidden;transition:border-color .35s,transform .35s}
.article-card::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--grad);transition:width .4s}
.article-card:hover{border-color:var(--line2);transform:translateY(-5px)}
.article-card:hover::after{width:100%}
.article-kicker{font-family:var(--sans);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--teal)}
.article-title{font-family:var(--serif);font-weight:400;font-size:1.3rem;color:var(--cream);line-height:1.25;letter-spacing:-0.01em}
.article-date{font-family:var(--sans);font-size:.68rem;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.article-desc{font-size:.85rem;font-weight:300;color:var(--cream-dim);line-height:1.65;flex:1}
.article-go{font-family:var(--sans);font-size:.68rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-dim);transition:color .3s}
.article-card:hover .article-go{color:var(--cream)}

/* ── TESTIMONIALS ── */
.testimonials{background:var(--ink)}
.tcols{columns:2;column-gap:1.5rem}
.tcard{break-inside:avoid;margin-bottom:1.5rem;border:1px solid var(--line);background:var(--ink2);padding:2.2rem;border-radius:2px;position:relative;transition:border-color .35s,transform .35s}
.tcard:hover{border-color:var(--line2);transform:translateY(-3px)}
.tcard-mark{font-family:var(--serif);font-style:italic;font-size:2.4rem;line-height:.4;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block;margin-bottom:1rem}
.tcard-quote{font-size:.95rem;font-weight:300;color:var(--cream);line-height:1.7;margin-bottom:1.5rem}
.tcard-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:1.2rem}
.tcard-person{display:flex;flex-direction:column;gap:.15rem}
.tcard-name{font-family:var(--serif);font-size:1.05rem;color:var(--cream);font-weight:400}
.tcard-role{font-size:.72rem;font-weight:300;color:var(--cream-dim);line-height:1.4}
.tcard-link{font-family:var(--sans);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);text-decoration:none;white-space:nowrap;border:1px solid rgba(31,201,172,.3);padding:.35rem .7rem;border-radius:100px;transition:all .3s}
.tcard-link:hover{background:rgba(31,201,172,.08)}

/* ── COMMUNITIES ── */
.communities{background:var(--ink2)}
.comm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.comm-card{border:1px solid var(--line);background:var(--ink);padding:2.6rem;position:relative;overflow:hidden;transition:border-color .35s,transform .35s;text-decoration:none;display:block}
.comm-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.comm-card:hover{border-color:var(--line2);transform:translateY(-5px)}
.comm-card:hover::before{transform:scaleX(1)}
.comm-tag{font-family:var(--sans);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:1.2rem;display:inline-block}
.comm-name{font-family:var(--serif);font-weight:400;font-size:1.6rem;color:var(--cream);letter-spacing:-0.01em;margin-bottom:.8rem;line-height:1.15}
.comm-desc{font-size:.9rem;font-weight:300;color:var(--cream-dim);line-height:1.7;margin-bottom:1.5rem}
.comm-links{display:flex;gap:1rem;flex-wrap:wrap}
.comm-link{font-family:var(--sans);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cream);text-decoration:none;padding-bottom:.3rem;border-bottom:1px solid var(--line2);transition:border-color .3s}
.comm-link:hover{border-color:var(--cream)}

/* ── FEATURED / AS SEEN ON ── */
.featured{background:var(--ink)}
.feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.feat-card{border:1px solid var(--line);background:var(--ink2);padding:2.6rem;display:flex;flex-direction:column;gap:1rem;transition:border-color .35s,transform .35s;text-decoration:none}
.feat-card:hover{border-color:var(--line2);transform:translateY(-4px)}
.feat-badge{font-family:var(--sans);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--teal)}
.feat-name{font-family:var(--serif);font-weight:400;font-size:1.5rem;color:var(--cream);letter-spacing:-0.01em}
.feat-desc{font-size:.88rem;font-weight:300;color:var(--cream-dim);line-height:1.7;flex:1}
.feat-go{font-family:var(--sans);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-dim);transition:color .3s}
.feat-card:hover .feat-go{color:var(--cream)}

/* small "as seen on" strip for home */
.seen-strip{background:var(--ink2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:2.5rem 4rem}
.seen-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:2.5rem;flex-wrap:wrap;justify-content:center}
.seen-label{font-family:var(--sans);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.seen-item{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.15rem;color:var(--cream-dim);text-decoration:none;transition:color .3s}
.seen-item:hover{color:var(--cream)}

/* sub-nav anchor row for community page */
.subnav{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2.5rem}
.subnav a{font-family:var(--sans);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cream-dim);text-decoration:none;padding:.5rem 1.1rem;border:1px solid var(--line2);border-radius:100px;transition:all .3s}
.subnav a:hover{color:var(--cream);border-color:var(--cream-dim)}

@media(max-width:1024px){
  #yt-videos,#substack-articles{grid-template-columns:1fr 1fr}
  .comm-grid,.feat-grid{grid-template-columns:1fr}
  .tcols{columns:1}
}
@media(max-width:680px){
  #yt-videos,#substack-articles{grid-template-columns:1fr}
  /* simpler mobile: calmer hero, tighter spacing */
  .home-hero{padding:7rem 1.3rem 3.5rem;min-height:auto}
  section{padding:4rem 1.3rem}
  .hero-title{font-size:clamp(2.8rem,13vw,3.6rem)}
  .seen-strip{padding:2rem 1.3rem}
  .seen-inner{gap:1.2rem}
  .scroll-hint{display:none}
  .hero-platforms{gap:1rem}
}

/* ── ABOUT PORTRAIT ── */
.about-hero-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:4rem;align-items:center}
.portrait-wrap{position:relative;justify-self:end}
.portrait{position:relative;width:300px;max-width:100%;border-radius:4px;overflow:hidden;
  border:1px solid var(--line2);box-shadow:0 30px 70px rgba(0,0,0,.45)}
.portrait::after{content:'';position:absolute;inset:0;background:linear-gradient(160deg,transparent 55%,rgba(10,12,17,.35));pointer-events:none}
.portrait img{display:block;width:100%;height:auto}
.portrait-frame{position:absolute;inset:-12px;border:1px solid transparent;border-radius:6px;
  background:linear-gradient(120deg,#1FC9AC,#3B82F6,#9B5FE0) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;pointer-events:none}
.portrait-cap{margin-top:1.2rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-dim);text-align:center}
@media(max-width:900px){
  .about-hero-grid{grid-template-columns:1fr;gap:2.5rem}
  .portrait-wrap{justify-self:start}
  .portrait{width:240px}
}


.story-pull-sm{font-family:var(--serif);font-style:italic;font-size:1.15rem;color:var(--cream);line-height:1.6;
  margin:1.5rem 0;padding:1.2rem 1.5rem;border-left:2px solid transparent;
  border-image:var(--grad) 1;background:var(--ink2)}

/* motivational callout block */
.story-callout{
  background:var(--grad-t);border-left:3px solid transparent;
  border-image:var(--grad) 1;
  padding:1.8rem 2rem;margin:2rem 0;border-radius:0 4px 4px 0;
}
.story-callout p{
  font-family:var(--serif);font-style:italic;font-size:1.25rem;
  color:var(--cream);line-height:1.6;font-weight:400;
}
.story-callout .attrib{
  font-family:var(--sans);font-style:normal;font-size:.72rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--cream-dim);
  margin-top:.7rem;display:block;
}


/* 10X slogan in hero */
.hero-slogan{
  font-family:var(--serif);font-style:italic;font-weight:400;
  font-size:clamp(1.1rem,2vw,1.5rem);
  background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  background-size:200% auto;animation:shimmer 6s linear infinite;
  letter-spacing:.03em;margin-bottom:1.2rem;
}

/* ── ABOUT: summary + chapter index ── */
.about-summary{background:var(--ink2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:4rem}
.about-summary .wrap{max-width:860px;margin:0 auto}
.summary-text{font-family:var(--serif);font-weight:300;font-size:1.15rem;color:var(--cream);line-height:1.8;margin-bottom:0}

.chapter-index{background:var(--ink);padding:4rem 4rem 0}
.chapter-index .wrap{max-width:1180px;margin:0 auto}
.ci-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--line);margin-top:2.5rem}
.ci-card{background:var(--ink2);padding:1.6rem 1.8rem;text-decoration:none;display:block;position:relative;overflow:hidden;transition:background .3s}
.ci-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .35s}
.ci-card:hover{background:var(--panel2)}
.ci-card:hover::before{transform:scaleX(1)}
.ci-num{font-family:var(--serif);font-style:italic;font-size:.85rem;color:var(--cream-dim);display:block;margin-bottom:.5rem}
.ci-title{font-family:var(--serif);font-weight:400;font-size:1.05rem;color:var(--cream);line-height:1.2;margin-bottom:.5rem;letter-spacing:-0.01em}
.ci-desc{font-family:var(--sans);font-size:.75rem;font-weight:300;color:var(--muted);line-height:1.5}
.ci-arrow{position:absolute;bottom:1.2rem;right:1.4rem;font-size:.8rem;color:var(--cream-dim);transition:color .3s,transform .3s}
.ci-card:hover .ci-arrow{color:var(--teal);transform:translateX(3px)}

/* smooth scroll offset for fixed nav */
.story-anchor{scroll-margin-top:110px}

@media(max-width:1024px){.chapter-index{padding:3rem 2rem 0}.about-summary{padding:3rem 2rem}}
@media(max-width:680px){.ci-grid{grid-template-columns:1fr}}

/* ── PROMO VIDEO (home) ── */
.promo-section{background:var(--ink);padding-top:5rem;padding-bottom:5rem}
.promo-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--r-card);overflow:hidden;
  border:1px solid var(--glass-edge);background:var(--ink2);box-shadow:0 30px 80px rgba(0,0,0,.5)}
.promo-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.promo-play{position:absolute;inset:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1rem;
  background:linear-gradient(160deg,rgba(10,12,17,.55),rgba(10,12,17,.75)),radial-gradient(ellipse 60% 60% at 50% 40%,rgba(59,130,246,.18),transparent 65%);
  border:none;cursor:pointer;transition:background .4s}
.promo-play:hover .promo-play-icon{transform:scale(1.08);box-shadow:0 16px 50px var(--glow-teal),0 8px 30px var(--glow-blue)}
.promo-play-icon{width:86px;height:86px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--grad);transition:transform .35s,box-shadow .35s}
.promo-play-icon svg{width:34px;height:34px;fill:#fff;margin-left:4px}
.promo-play-label{font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--cream)}
.promo-play.hidden{display:none}
@media(max-width:680px){.promo-play-icon{width:64px;height:64px}.promo-play-icon svg{width:26px;height:26px}}
