:root{
  --paper:#FBF2E1;
  --paper-2:#F4E8CF;
  --ink:#191510;
  --ink-soft:#574E40;
  --ink-faint:#8A8170;
  --teal:#2C7E88;
  --rust:#B84326;
  --rule:#E0D4BC;
  --rule-2:#D2C4A8;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Space Grotesk',system-ui,sans-serif;
  --wrap:1180px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--serif);background:var(--paper);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 30px}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.012em;text-wrap:balance}

/* readable line breaks: balance short display text, avoid orphans in long-form */
.hero .feat .dek,.hero .pod-feature .dek,.hero .upnext p,.phead p,.ideas-lead .dek,.piece .dek,.idea-card .dek,.contact .intro p,.team-overview p,.team-principles-intro,.rpt-dek,.rpt-truth p,.rpt-tile p,.rpt-stat .lbl,.rpt-statband p,.rpt-callout p,.rpt-pull p,.article-head .dek,.value-card p,.foot .stance .tagline,.rule-h h2{text-wrap:balance}
.article-body p,.rpt-body p,.pod-body .blurb p{text-wrap:pretty}

/* masthead */
.mast{border-bottom:1px solid var(--rule-2);position:sticky;top:0;background:var(--paper);z-index:40}
.mast .wrap{display:flex;align-items:center;gap:40px;height:92px}
.brand img{height:58px;width:auto;flex-shrink:0}
.nav{display:flex;gap:14px;margin-left:auto;font-family:var(--sans);font-size:.86rem;font-weight:500}
.nav a{position:relative;padding:9px 15px;color:var(--ink-soft);transition:color .2s ease;white-space:nowrap}
.nav a:hover{color:var(--ink)}
/* Sequoia / Verge style hand-drawn ring, sized to sit AROUND the text, never across it */
.nav-circle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:118%;height:188%;pointer-events:none;opacity:0;transition:opacity .28s ease;overflow:visible}
.nav-circle path{fill:none;stroke:var(--teal);stroke-width:2.4;stroke-linecap:round;vector-effect:non-scaling-stroke}
.nav a:hover .nav-circle{opacity:1}
/* active page: underline only (ring stays hover-only), driven by Ghost body classes */
.nav a::after{content:"";position:absolute;left:15px;right:15px;bottom:4px;height:2px;background:var(--teal);opacity:0;transition:opacity .2s ease}
body.home-template [data-nav="home"],
body.page-podcasts [data-nav="podcasts"],
body.tag-podcast [data-nav="podcasts"],
body.page-stories [data-nav="stories"],
body.page-team [data-nav="team"],
body.page-contact [data-nav="contact"]{color:var(--ink)}
body.home-template [data-nav="home"]::after,
body.page-podcasts [data-nav="podcasts"]::after,
body.tag-podcast [data-nav="podcasts"]::after,
body.page-stories [data-nav="stories"]::after,
body.page-team [data-nav="team"]::after,
body.page-contact [data-nav="contact"]::after{opacity:1}

/* bits: sentence-case labels, no all-caps eyebrows */
.label{font-family:var(--sans);font-size:.84rem;font-weight:600;letter-spacing:0;color:var(--rust)}
.label.teal{color:var(--teal)}
.byline{font-family:var(--sans);font-size:.82rem;color:var(--ink-faint);letter-spacing:.01em}
.byline b{color:var(--ink-soft);font-weight:600}
.rule-h{display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid var(--ink);padding-top:14px;margin:0 0 32px}
.rule-h h2{font-family:var(--serif);font-size:1.5rem;font-weight:500;letter-spacing:-.01em}
.rule-h a{font-family:var(--sans);font-size:.84rem;font-weight:600;color:var(--teal)}
.rule-h a:hover{color:var(--rust)}

/* hand-drawn underline scribble */
.relword{position:relative;white-space:nowrap;display:inline-block}
.relword .scribble{position:absolute;left:-3%;bottom:-.16em;width:106%;height:.42em;overflow:visible;pointer-events:none}
.relword .scribble path{fill:none;stroke:var(--teal);stroke-width:4;stroke-linecap:round}

/* hero: report on the left (big), podcast + up next on the right */
.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;padding:54px 0 58px;align-items:start}
.hero .feat .lead-img{display:block;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--rule-2);margin-bottom:24px}
.hero .feat .lead-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.hero .feat:hover .lead-img img{transform:scale(1.03)}
.hero .feat .head-row{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.hero .feat .tag{font-family:var(--sans);font-size:.74rem;font-weight:700;letter-spacing:.02em;color:var(--paper);background:var(--rust);padding:5px 11px}
.hero .feat .label{font-size:.9rem}
.hero .feat h1{font-weight:500;font-size:clamp(2.3rem,4.4vw,3.5rem);line-height:1.05;letter-spacing:-.02em;max-width:16ch}
.hero .feat h1 a{transition:color .25s ease}
.hero .feat h1 a:hover{color:var(--rust)}
.hero .feat .dek{font-size:1.3rem;color:var(--ink-soft);max-width:48ch;margin:20px 0 0;line-height:1.5}
.hero .feat .feat-cta{display:inline-block;font-family:var(--sans);font-size:.86rem;font-weight:600;color:var(--paper);background:var(--ink);padding:11px 20px;margin-top:22px;transition:background .2s ease}
.hero .feat .feat-cta:hover{background:var(--rust)}
.hero .aside{border-left:1px solid var(--rule-2);padding-left:54px}
.hero .aside .label{display:block;margin-bottom:16px}
.hero .pod-feature{display:block}
.hero .pod-feature .cover{aspect-ratio:100/143;overflow:hidden;border:1px solid var(--rule-2);margin-bottom:16px;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s cubic-bezier(.2,.7,.2,1)}
.hero .pod-feature .cover img{width:100%;height:100%;object-fit:cover}
.hero .pod-feature:hover .cover{box-shadow:0 14px 30px -14px rgba(25,21,16,.30)}
.hero .pod-feature h3{font-weight:500;font-size:1.6rem;line-height:1.12;margin-bottom:8px;transition:color .2s ease}
.hero .pod-feature:hover h3{color:var(--teal)}
.hero .pod-feature .dek{font-size:1rem;color:var(--ink-soft);line-height:1.5;margin-bottom:12px}
.hero .upnext{margin-top:24px;border-top:1px solid var(--rule);padding-top:18px}
.hero .upnext .label{display:block;margin-bottom:8px}
.hero .upnext p{font-family:var(--serif);font-size:1.08rem;color:var(--ink-soft);line-height:1.42}
.hero .upnext b{color:var(--ink)}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:40px;padding:40px 0}
  .hero .feat,.hero .aside{min-width:0;max-width:100%}
  .hero .aside{border-left:none;border-top:1px solid var(--rule-2);padding-left:0;padding-top:36px;max-width:460px}
  /* headline/dek before the illustration on phones, so visitors know what the site is before scrolling past the image */
  .hero .feat{display:flex;flex-direction:column;align-items:stretch}
  .hero .feat .lead-img{order:2;margin-bottom:20px}
  /* CTA sits at content width, left-aligned -- not stretched full-bleed by the flex column */
  .hero .feat .feat-cta{order:3;align-self:flex-start}
  .hero .feat .dek{max-width:100%}
}

/* latest writing two-col */
.latest{padding:54px 0}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:48px 56px}
.piece .pic{display:block;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--rule);margin-bottom:18px}
.piece .pic img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.piece:hover .pic img{transform:scale(1.04)}
.piece .label{display:block;margin-bottom:10px}
.piece h3{font-weight:500;font-size:1.7rem;line-height:1.13;transition:color .2s ease}
.piece:hover h3{color:var(--teal)}
.piece .dek{font-size:1.06rem;color:var(--ink-soft);line-height:1.5;margin:10px 0 12px;max-width:46ch}
.piece:nth-child(even) .label{color:var(--teal)}
@media(max-width:760px){.cols2{grid-template-columns:1fr;gap:40px}}

/* podcast row on home */
.podcast-home{padding:14px 0 60px}
.podcast-home.home-top{padding:54px 0 10px}
.latest.home-after{padding:40px 0 70px}
/* aside: compact Season 1 episode under the recording teaser */
.aside-episode{margin-top:24px;border-top:1px solid var(--rule);padding-top:18px}
.aside-episode .label{display:block;margin-bottom:12px}
.ep-mini{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}
.ep-mini .mini-cover{aspect-ratio:1/1;overflow:hidden;border:1px solid var(--rule-2)}
.ep-mini .mini-cover img{width:100%;height:100%;object-fit:cover}
.ep-mini h4{font-weight:500;font-size:1.22rem;line-height:1.16;transition:color .2s ease}
.ep-mini:hover h4{color:var(--teal)}
.ep-mini .byline{display:block;margin-top:8px}
.pods{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.pod .cover{position:relative;aspect-ratio:1/1;overflow:hidden;border:1px solid var(--rule-2);margin-bottom:14px;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s cubic-bezier(.2,.7,.2,1)}
.pod .cover img{width:100%;height:100%;object-fit:cover}
.pod:hover .cover{box-shadow:0 14px 30px -14px rgba(25,21,16,.30)}
.pod:hover .pod-play{opacity:1}
.pod .label{display:block;margin-bottom:7px}
.pod h4{font-weight:500;font-size:1.25rem;line-height:1.14;margin-bottom:6px;transition:color .2s ease}
.pod:hover h4{color:var(--teal)}
.pod .byline{display:block}
.pod .byline b{color:var(--ink-soft);font-weight:600}
@media(max-width:900px){.pods{grid-template-columns:repeat(2,1fr);gap:28px}}

/* inner pages */
.phead{padding:54px 0 26px}
.phead .label{display:block;margin-bottom:14px}
.phead h1{font-weight:500;font-size:clamp(2.4rem,5vw,3.6rem);letter-spacing:-.018em;line-height:1.04;max-width:16ch}
.phead p{font-family:var(--serif);font-size:1.22rem;color:var(--ink-soft);max-width:56ch;margin-top:16px;line-height:1.5}
/* ideas / essays feed */
.ideas-lead{display:grid;grid-template-columns:1.06fr 1fr;gap:52px;align-items:center;border-top:1px solid var(--ink);padding:42px 0 50px}
.ideas-lead .il-art{display:block;overflow:hidden;border:1px solid var(--rule-2);background:var(--paper);aspect-ratio:16/10}
.ideas-lead .il-art img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.ideas-lead:hover .il-art img{transform:scale(1.03)}
.ideas-lead .head-row{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.ideas-lead .tag{font-family:var(--sans);font-size:.74rem;font-weight:700;letter-spacing:.02em;color:var(--paper);background:var(--rust);padding:5px 11px}
.ideas-lead .label{font-size:.9rem}
.ideas-lead h2{font-weight:500;font-size:clamp(2rem,3.6vw,2.9rem);line-height:1.06;letter-spacing:-.018em;transition:color .2s ease}
.ideas-lead:hover h2{color:var(--rust)}
.ideas-lead .dek{font-size:1.2rem;color:var(--ink-soft);line-height:1.5;margin:16px 0 0;max-width:46ch}
.ideas-lead .il-cta{display:inline-block;font-family:var(--sans);font-size:.86rem;font-weight:600;color:var(--paper);background:var(--ink);padding:11px 20px;margin:22px 0 16px;transition:background .2s ease}
.ideas-lead .il-cta:hover{background:var(--rust)}
.ideas-heading{margin-top:26px}
.ideas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:52px 44px;padding-bottom:84px}
.idea-card .ic-pic{display:block;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--rule);margin-bottom:18px}
.idea-card .ic-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.idea-card:hover .ic-pic img{transform:scale(1.04)}
.idea-card .label{display:block;margin-bottom:10px}
.idea-card:nth-child(3n-1) .label{color:var(--teal)}
.idea-card h3{font-weight:500;font-size:1.5rem;line-height:1.14;transition:color .2s ease}
.idea-card:hover h3{color:var(--teal)}
.idea-card .dek{font-size:1.02rem;color:var(--ink-soft);line-height:1.5;margin:10px 0 12px}
@media(max-width:900px){.ideas-lead{grid-template-columns:1fr;gap:26px}.ideas-lead .il-art{order:-1}.ideas-grid{grid-template-columns:1fr 1fr;gap:44px 36px}}
@media(max-width:620px){.ideas-grid{grid-template-columns:1fr;gap:40px}}

.pods-page{padding-bottom:80px}

/* podcast list (rows: cover + description box) */
.pod-list{border-top:1px solid var(--ink)}
.pod-row{display:grid;grid-template-columns:264px 1fr;gap:44px;padding:36px 0;border-bottom:1px solid var(--rule);align-items:center}
.pod-cover{position:relative;width:264px;aspect-ratio:1/1;overflow:hidden;border:1px solid var(--rule-2);display:block;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s cubic-bezier(.2,.7,.2,1)}
.pod-cover img{width:100%;height:100%;object-fit:cover}
.pod-row:hover .pod-cover{box-shadow:0 16px 34px -16px rgba(25,21,16,.34)}
.pod-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:rgba(25,21,16,.72);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease}
.pod-row:hover .pod-play{opacity:1}
.pod-play svg{width:20px;height:20px;margin-left:3px;fill:var(--paper)}
.pod-body .ep{font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--teal);display:block;margin-bottom:8px}
.pod-body h3{font-weight:500;font-size:1.7rem;line-height:1.12;letter-spacing:-.01em;transition:color .2s ease;margin-bottom:8px}
.pod-row:hover .pod-body h3{color:var(--teal)}
.pod-body .guest{font-family:var(--sans);font-size:1rem;color:var(--ink);font-weight:600}
.pod-body .guest .role{color:var(--ink-faint);font-weight:400}
.pod-body .blurb{font-size:1.08rem;color:var(--ink-soft);line-height:1.5;margin:10px 0 12px;max-width:60ch}
.pod-body .listen{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:.86rem;font-weight:600;color:var(--rust)}
.pod-body .listen svg{width:13px;height:13px;fill:var(--rust)}
@media(max-width:660px){.pod-row{grid-template-columns:1fr;gap:18px}.pod-cover{width:210px}}

/* podcast page: soft teal band so the cream covers stand out */
.pod-page{padding-bottom:0}
.pod-band{background:#DDE8E4;padding:2px 0 74px}
.pod-band .pods-page{padding-bottom:0}
.pod-band .pod-list{border-top-color:var(--teal)}
.pod-band .pod-row{border-bottom-color:rgba(44,126,136,.20)}
.pod-band .pod-cover{border-color:rgba(44,126,136,.30)}
.pod-band .pod-body .blurb{color:#3c4b47}

/* contact page */
.contact-anim{margin-top:34px;background:var(--paper);overflow:hidden;border-top:1px solid var(--rule)}
.contact-anim video{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:48px 0 90px;align-items:start}
.contact .intro .label{display:block;margin-bottom:16px}
.contact .intro h1{font-weight:500;font-size:clamp(2.4rem,5vw,3.4rem);letter-spacing:-.018em;line-height:1.04}
.contact .intro p{font-family:var(--serif);font-size:1.26rem;color:var(--ink-soft);margin-top:18px;line-height:1.5;max-width:36ch}
.contact .reasons{margin-top:28px;list-style:none;display:flex;flex-direction:column;gap:12px;font-family:var(--sans);font-size:.95rem;color:var(--ink-soft)}
.contact .reasons li{padding-left:18px;position:relative}
.contact .reasons li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;background:var(--teal)}
.cform{display:flex;flex-direction:column;gap:16px;border:1px solid var(--ink);padding:30px 28px 32px}
.cform label{font-family:var(--sans);font-size:.84rem;font-weight:600;letter-spacing:.01em;color:var(--ink-soft);display:flex;flex-direction:column;gap:7px}
.cform input,.cform textarea{font-family:var(--sans);font-size:1rem;padding:12px 14px;border:1px solid var(--rule-2);background:var(--paper);color:var(--ink);outline:none;transition:border-color .2s ease}
.cform input:focus,.cform textarea:focus{border-color:var(--teal)}
.cform textarea{resize:vertical;min-height:120px}
.cform button{font-family:var(--sans);font-size:.88rem;font-weight:600;letter-spacing:.01em;padding:14px 22px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);cursor:pointer;transition:background .2s ease;margin-top:4px}
.cform button:hover{background:var(--rust);border-color:var(--rust)}
.cform .ok{font-family:var(--sans);font-size:.95rem;color:var(--teal);font-weight:600;display:none}
.cform .err{font-family:var(--sans);font-size:.9rem;color:var(--rust);font-weight:600;display:none}
.cform button:disabled{opacity:.65;cursor:default}
.cform button:disabled:hover{background:var(--ink);border-color:var(--ink)}
@media(max-width:760px){.contact{grid-template-columns:1fr;gap:36px}}

/* team / about page */
.team-overview{border-top:1px solid var(--ink);padding:38px 0 10px}
.team-overview p{font-family:var(--serif);font-size:1.5rem;line-height:1.42;color:var(--ink);max-width:44ch;margin:0}
.team-list{padding:20px 0 6px}
.team-row{display:grid;grid-template-columns:200px 1fr;gap:48px;align-items:start;padding:42px 0;border-top:1px solid var(--rule)}
.team-row:first-child{border-top:none}
.tr-photo{width:200px;height:200px;border-radius:50%;overflow:hidden;border:1px solid var(--rule-2)}
.tr-photo img{width:100%;height:100%;object-fit:cover}
.tr-photo.placeholder{background:var(--paper-2);display:flex;align-items:center;justify-content:center}
.tr-photo.placeholder span{font-family:var(--serif);font-size:3.6rem;font-weight:500;color:var(--rust);letter-spacing:.02em}
.tr-body{max-width:60ch}
.team-role{font-family:var(--sans);font-size:.84rem;font-weight:600;letter-spacing:.03em;color:var(--teal);display:block;margin-bottom:8px}
.tr-body h3{font-weight:500;font-size:2rem;line-height:1.06;margin-bottom:16px}
.tr-body p{font-size:1.06rem;color:var(--ink-soft);line-height:1.62;margin:0}
.team-linkedin{display:inline-flex;align-items:center;gap:9px;margin-top:20px;font-family:var(--sans);font-size:.86rem;font-weight:600;color:var(--teal);transition:color .2s ease}
.team-linkedin svg{width:20px;height:20px;fill:var(--teal);transition:fill .2s ease}
.team-linkedin:hover{color:var(--rust)}
.team-linkedin:hover svg{fill:var(--rust)}
.team-principles{padding:56px 0 90px}
.team-principles-intro{font-size:1.1rem;color:var(--ink-soft);max-width:58ch;margin:-14px 0 30px;line-height:1.5}
@media(max-width:820px){.team-row{grid-template-columns:150px 1fr;gap:32px;padding:34px 0}.tr-photo{width:150px;height:150px}.team-overview p{font-size:1.3rem}}
@media(max-width:560px){.team-row{grid-template-columns:1fr;gap:18px}}

/* team page: soft teal band, matching the podcast page */
.team-band{background:#DDE8E4;padding:2px 0 0}
.team-band .team-overview{border-top-color:var(--teal)}
.team-band .team-row{border-top-color:rgba(44,126,136,.20)}
.team-band .rule-h{border-top-color:var(--teal)}
.team-band .tr-body p{color:#3c4b47}
.team-band .value-card{border-color:rgba(44,126,136,.28)}

/* report page: landscape cover hero */
.rpt-cover{max-width:920px;margin:0 auto 40px;border:1px solid var(--rule-2)}
.rpt-cover img{width:100%;height:auto;display:block}

/* podcast list: full description body + episode-page listen button */
.pod-body .blurb p{font-size:1.04rem;color:var(--ink-soft);line-height:1.55;margin:10px 0 0;max-width:64ch}
.episode-listen{margin-top:10px}
.article-body .episode-listen a{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-size:.9rem;font-weight:600;color:var(--paper);background:var(--ink);padding:12px 22px;text-decoration:none;transition:background .2s ease}
.article-body .episode-listen a:hover{background:var(--rust);color:var(--paper)}
.episode-listen .plat-logo{width:20px;height:20px}

/* how we work: value cards (home strip + team page) */
.values{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:10px 0 0}
.value-card{background:var(--paper-2);border:1px solid var(--rule-2);padding:26px 24px 24px;display:flex;flex-direction:column}
.value-icon{width:84px;height:84px;margin:0 0 16px}
.value-icon img{width:100%;height:100%;object-fit:contain;display:block}
.value-card h4{font-family:var(--serif);font-size:1.45rem;font-weight:500;color:var(--teal);margin-bottom:9px;line-height:1.1}
.value-card p{font-family:var(--sans);font-size:.92rem;color:var(--ink-soft);line-height:1.55;margin:0}
@media(max-width:900px){.values{grid-template-columns:1fr 1fr;gap:22px}}
@media(max-width:520px){.values{grid-template-columns:1fr}}

/* home: how we work strip above footer */
.home-principles{padding:16px 0 66px}

/* footer */
.foot{padding:52px 0 42px;border-top:1px solid var(--ink)}
.foot .top{display:flex;justify-content:space-between;gap:50px;flex-wrap:wrap;margin-bottom:38px}
.foot .stance{max-width:430px}
.foot .stance img{height:40px;margin-bottom:16px}
.foot .stance .tagline{font-family:var(--serif);font-size:1.55rem;font-weight:500;color:var(--ink);line-height:1.15}
.foot .cols{display:flex;gap:54px;flex-wrap:wrap}
.foot h5{font-family:var(--sans);font-size:.82rem;font-weight:600;letter-spacing:.01em;color:var(--ink-faint);margin-bottom:14px}
.foot ul{list-style:none;display:flex;flex-direction:column;gap:10px;font-family:var(--sans);font-size:.9rem}
.foot ul a{color:var(--ink-soft);transition:color .2s ease}
.foot ul a:hover{color:var(--teal)}
.foot .base{display:flex;justify-content:space-between;border-top:1px solid var(--rule);padding-top:20px;font-family:var(--sans);font-size:.78rem;color:var(--ink-faint);flex-wrap:wrap;gap:10px}
/* compact footer on mobile: tighter padding, smaller tagline, 3 link columns kept side-by-side */
@media(max-width:600px){
  .foot{padding:30px 0 24px}
  .foot .top{gap:22px;margin-bottom:22px}
  .foot .stance img{height:30px;margin-bottom:9px}
  .foot .stance .tagline{font-size:1.12rem}
  .foot .cols{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:18px 12px}
  .foot h5{font-size:.7rem;margin-bottom:7px}
  .foot ul{gap:6px;font-size:.8rem}
  .foot .base{padding-top:14px;font-size:.68rem}
}

/* real platform brand logos (Spotify circle, Apple Podcasts rounded square) — podcast/episode pages */
.plat-logo{display:inline-block;width:18px;height:18px;vertical-align:middle;flex-shrink:0}
.plat-spotify{border-radius:50%}
.plat-apple{border-radius:4px}

/* icon-only platform links: podcast list + episode page. padding gives the tap target */
.ic-link{display:inline-flex;align-items:center;padding:4px 2px;vertical-align:-3px}
@media(max-width:600px){.ic-link{padding:9px 7px}}

/* single post / article reading view: head, cover, and body share ONE centered 700px column */
.article-head{padding:54px 0 34px;border-bottom:1px solid var(--rule);max-width:700px;margin:0 auto}
.article-head .label{display:block;margin-bottom:16px}
.article-head h1{font-weight:500;font-size:clamp(2.2rem,4.6vw,3.2rem);letter-spacing:-.018em;line-height:1.06}
.article-head .dek{font-family:var(--serif);font-style:italic;font-size:1.28rem;color:var(--ink-soft);margin-top:18px;line-height:1.5}
.article-head .byline{display:block;margin-top:20px}
.article-head .guest-credit{font-family:var(--sans);font-size:.86rem;color:var(--ink-faint);margin-top:8px}
.article-head .guest-credit b{color:var(--ink-soft);font-weight:600}
/* cover: never cropped; portrait images render portrait (capped height), landscape at column width */
.article-cover{max-width:700px;margin:38px auto 0}
.article-cover img{display:block;width:auto;height:auto;max-width:100%;max-height:700px;margin:0 auto;border:1px solid var(--rule-2)}

/* ============ portrait feature layout: image floats left, text wraps beside it and
   takes the full measure once past the image (JS adds .is-portrait) ============ */
@media(min-width:980px){
  .article-main.is-portrait{max-width:1020px;margin:0 auto}
  .article-main.is-portrait::after{content:"";display:table;clear:both}
  .article-main.is-portrait .article-head{max-width:none;margin:0}
  .article-main.is-portrait .article-cover{float:left;width:400px;max-width:none;margin:46px 52px 10px 0}
  .article-main.is-portrait .article-cover img{width:100%;max-height:none;margin:0}
  .article-main.is-portrait .article-body{max-width:none;margin:0}
}
.article-cover-square{max-width:420px;margin:34px auto 0;aspect-ratio:1/1;overflow:hidden;border:1px solid var(--rule-2)}
.article-cover-square img{width:100%;height:100%;object-fit:cover}
.article-body{max-width:700px;margin:0 auto;padding:46px 0 90px;font-size:1.16rem;line-height:1.72;color:var(--ink)}
.back-to-ideas{display:block;max-width:700px;margin:0 auto 46px;font-family:var(--sans);font-size:.9rem;font-weight:600;color:var(--teal);transition:color .2s ease}
.back-to-ideas:hover{color:var(--rust)}
.article-body p{margin-bottom:26px}
.article-body h2{font-size:1.6rem;margin:44px 0 18px;letter-spacing:-.01em}
.article-body h3{font-size:1.3rem;margin:36px 0 14px}
.article-body a{color:var(--teal);text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:2px}
.article-body blockquote{border-left:3px solid var(--teal);padding-left:22px;font-style:italic;color:var(--ink-soft);margin:32px 0}
.article-body figure{margin:34px 0}
.article-body img{border:1px solid var(--rule-2)}
.article-body figcaption{font-family:var(--sans);font-size:.85rem;color:var(--ink-faint);margin-top:10px}
.article-body ul,.article-body ol{margin:0 0 26px 22px}
.article-body li{margin-bottom:8px}
.article-body .kg-width-wide{max-width:900px;margin-left:50%;transform:translateX(-50%)}
.article-body .kg-width-full{max-width:100vw;width:100vw;margin-left:50%;transform:translateX(-50%)}

/* ============ The report (Atlantic-style long-form) ============ */
.rpt-head{max-width:860px;margin:0 auto;padding:64px 0 40px;text-align:center}
.rpt-kicker{font-family:var(--sans);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rust)}
.rpt-head h1{font-weight:500;font-size:clamp(2.6rem,5.6vw,4.2rem);letter-spacing:-.02em;line-height:1.04;margin:22px 0 0}
.rpt-dek{font-family:var(--serif);font-style:italic;font-size:1.3rem;color:var(--ink-soft);line-height:1.5;max-width:56ch;margin:24px auto 0}
.rpt-meta{font-family:var(--sans);font-size:.84rem;color:var(--ink-faint);margin-top:26px}
.rpt-meta b{color:var(--ink-soft);font-weight:600}
.rpt-rule{max-width:860px;margin:36px auto 0;border:none;border-top:1px solid var(--ink)}

.rpt-body{max-width:860px;margin:0 auto;padding:50px 24px 30px;font-size:1.16rem;line-height:1.74;color:var(--ink)}
.rpt-body p{margin-bottom:26px}
.rpt-body a{color:var(--teal);text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:2px}
.rpt-body ul,.rpt-body ol{margin:0 0 26px 22px}
.rpt-body li{margin-bottom:10px}
.rpt-drop:first-letter{font-family:var(--serif);font-size:4.6em;line-height:.78;float:left;padding:8px 12px 0 0;color:var(--rust);font-weight:500}

.rpt-about{font-style:italic;color:var(--ink-soft);font-size:1.05rem;border-top:1px solid var(--rule-2);border-bottom:1px solid var(--rule-2);padding:22px 0;margin-bottom:40px}
.rpt-about p{margin:0}

.rpt-toc{font-family:var(--sans);font-size:.92rem;border:1px solid var(--rule-2);padding:24px 26px;margin:0 0 44px}
.rpt-toc h4{font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:14px}
.rpt-toc ol{list-style:none;margin:0;display:flex;flex-direction:column;gap:9px}
.rpt-toc li{margin:0}
.rpt-toc a{color:var(--ink-soft);text-decoration:none}
.rpt-toc a:hover{color:var(--teal)}
.rpt-toc .n{color:var(--rust);font-weight:700;margin-right:10px}

.rpt-sec{margin:64px 0 24px;padding-top:56px;border-top:1px solid var(--rule-2);scroll-margin-top:110px}
/* the first section (executive summary) opens the report -- no separator above it */
.rpt-body > .rpt-sec:first-of-type,.rpt-about + .rpt-sec{border-top:none;padding-top:0;margin-top:20px}
.rpt-sec .eyebrow{display:block;font-family:var(--sans);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin-bottom:10px}
.rpt-sec h2{font-size:1.9rem;font-weight:500;letter-spacing:-.014em;line-height:1.15}
.rpt-body h3{font-size:1.28rem;font-weight:600;margin:38px 0 14px;letter-spacing:-.008em}

.rpt-pull{margin:46px 0;padding:8px 0;text-align:center;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule-2)}
.rpt-pull p{font-family:var(--serif);font-style:italic;font-size:1.6rem;line-height:1.35;color:var(--ink);padding:22px 10px;margin:0 auto;max-width:34ch;text-wrap:balance}
.rpt-pull b{color:var(--rust);font-weight:500}

.rpt-callout{border-left:3px solid var(--teal);background:var(--paper-2);padding:20px 24px;margin:34px 0}
.rpt-callout p{margin:0;font-size:1.04rem;line-height:1.6}
.rpt-callout .term{font-family:var(--sans);font-weight:700;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;color:var(--teal);display:block;margin-bottom:8px}
.rpt-verdict{font-weight:700;color:var(--teal);margin:22px 0 2px}
.rpt-verdict+p{margin-top:0}

.rpt-truths{margin:40px 0;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--ink)}
.rpt-truth{display:grid;grid-template-columns:86px 1fr;gap:22px;padding:24px 0;border-bottom:1px solid var(--rule)}
.rpt-truth .num{font-family:var(--serif);font-size:2.6rem;font-weight:500;color:var(--rust);line-height:1}
.rpt-truth h4{font-size:1.22rem;font-weight:600;margin-bottom:8px;line-height:1.3}
.rpt-truth p{font-size:1.02rem;color:var(--ink-soft);line-height:1.6;margin:0}

.rpt-fig{margin:46px 0;border:1px solid var(--rule-2);padding:26px 28px 16px;background:var(--paper)}
.rpt-fig .fig-title{font-family:var(--sans);font-size:1rem;font-weight:700;margin-bottom:4px}
.rpt-fig .fig-sub{font-family:var(--sans);font-size:.86rem;color:var(--ink-soft);margin-bottom:16px}
.rpt-illus{margin:44px 0;text-align:center}
.rpt-illus img{width:100%;max-width:620px;height:auto;display:block;margin:0 auto}
.rpt-fig .fig-note{font-family:var(--serif);font-style:italic;font-size:1rem;color:var(--rust);margin-top:14px}
.rpt-fig .fig-src{font-family:var(--sans);font-size:.76rem;color:var(--ink-faint);margin-top:14px;text-align:right}
.rpt-fig .fig-title .relword .scribble{bottom:-.28em}
.rpt-fig svg{display:block;width:100%;height:auto}
/* agency illustrations: centred, capped so tall ones don't dominate; whitespace trimmed from the PNGs themselves */
.rpt-fig .rpt-fig-img{display:block;margin:0 auto;max-width:100%;max-height:400px;width:auto;height:auto}
.rpt-fig svg text{font-family:var(--sans)}
.rpt-fig svg .fig-serif{font-family:var(--serif)}

.rpt-stats2{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.rpt-stat{text-align:center;padding:10px 6px}
.rpt-stat .big{font-family:var(--serif);font-size:4.4rem;font-weight:500;line-height:1;letter-spacing:-.02em}
.rpt-stat .big.teal{color:var(--teal)}
.rpt-stat .big.rust{color:var(--rust)}
.rpt-stat .lbl{font-family:var(--sans);font-size:.92rem;color:var(--ink-soft);line-height:1.45;margin-top:12px}

.rpt-statband{display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule-2);padding:26px 8px;margin:42px 0}
.rpt-statband .sb-num{position:relative;font-family:var(--serif);font-size:3.4rem;font-weight:500;color:var(--ink);letter-spacing:-.02em;padding:14px 26px;white-space:nowrap}
.rpt-statband .sb-num svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.rpt-statband p{font-family:var(--sans);font-size:1rem;color:var(--ink-soft);line-height:1.55;margin:0;max-width:34ch}
.rpt-statband .sb-src{color:var(--ink-faint);font-size:.82rem}
@media(max-width:720px){.rpt-statband{grid-template-columns:1fr;gap:14px;text-align:center}.rpt-statband p{margin:0 auto}}

.rpt-grid4{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:38px 0}
.rpt-tile{border:1px solid var(--rule-2);padding:24px 24px 22px}
.rpt-tile img{width:56px;height:56px;object-fit:contain;display:block;margin-bottom:14px}
.rpt-tile h4{font-family:var(--serif);font-size:1.5rem;font-weight:500;margin-bottom:8px}
.rpt-tile h4 span{color:var(--teal)}
.rpt-tile p{font-family:var(--sans);font-size:.92rem;color:var(--ink-soft);line-height:1.55;margin:0}

.rpt-appendix{margin-top:56px;border-top:1px solid var(--ink);padding-top:28px}
.rpt-appendix h3{font-size:1.1rem;margin-top:0}
.rpt-appendix p,.rpt-appendix li{font-size:.98rem;color:var(--ink-soft)}
.rpt-close{font-family:var(--sans);font-size:.86rem;color:var(--ink-faint);border-top:1px solid var(--rule);margin-top:46px;padding-top:18px}

/* data figures fill the reading column; the hand-drawn illustration stays a tasteful centered size */
.rpt-illus img{max-width:660px}

@media(max-width:720px){
  /* keep the two rings side by side (not stacked) and scale them down for mobile */
  .rpt-stats2{grid-template-columns:1fr 1fr;gap:10px}
  .rpt-stat{padding:4px 2px}
  .rpt-stat svg{width:100%;height:auto;max-width:118px}
  .rpt-stat .lbl{font-size:.8rem;margin-top:8px}
  .rpt-grid4{grid-template-columns:1fr}
  .rpt-truth{grid-template-columns:56px 1fr;gap:16px}
  .rpt-truth .num{font-size:2rem}
  .rpt-fig{padding:22px 18px 16px}
  .rpt-body{padding:40px 22px 20px}
  .rpt-pull p{font-size:1.3rem}
}

@media(max-width:600px){
  .mast{position:static}
  .mast .wrap{height:auto;flex-wrap:wrap;gap:0;padding:16px 22px 14px}
  .brand{flex:0 0 100%;margin-bottom:14px}.brand img{height:38px}
  /* keep the 5 nav items on one line: smaller type/padding first, horizontal scroll
     as a safety net on the very narrowest phones rather than wrapping to a 2nd line */
  .nav{margin-left:0;gap:2px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}
  .nav a{padding:7px 9px;font-size:.76rem;white-space:nowrap}
  .wrap{padding:0 22px}
}
/* ============ nav subscribe button ============ */
.nav a.nav-sub{background:var(--ink);color:var(--paper);padding:9px 16px;font-weight:600;margin-left:8px;transition:background .2s ease}
.nav a.nav-sub:hover{background:var(--rust);color:var(--paper)}

/* ============ newsletter: The Culturegram Digest ============ */
.subscribe{background:#205C64;color:var(--paper)}
.sub-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;padding:60px 30px}
.sub-eyebrow{font-family:var(--sans);font-size:.82rem;font-weight:600;letter-spacing:.02em;color:rgba(251,242,225,.75);display:block;margin-bottom:14px}
.sub-copy h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.9rem,3.2vw,2.6rem);line-height:1.08;letter-spacing:-.014em;color:var(--paper)}
.sub-copy p{font-family:var(--serif);font-size:1.14rem;line-height:1.5;color:rgba(251,242,225,.92);margin-top:16px;max-width:42ch;text-wrap:pretty}
.sub-inner>*{min-width:0} /* grid items may shrink below min-content; stops the form column blowing the track out on mobile */
.sub-form{width:100%}
.sub-row{display:flex;gap:10px}
.sub-form input{flex:1;min-width:0;font-family:var(--sans);font-size:1rem;padding:14px 16px;border:1px solid transparent;background:var(--paper);color:var(--ink);outline:none}
.sub-form input:focus{border-color:var(--ink)}
.sub-form button{font-family:var(--sans);font-size:.92rem;font-weight:600;padding:14px 26px;background:var(--rust);color:var(--paper);border:none;cursor:pointer;white-space:nowrap;transition:background .2s ease}
.sub-form button:hover{background:var(--ink)}
.sub-msg{display:none;font-family:var(--sans);font-size:.92rem;margin-top:12px}
.sub-form.success .sub-ok{display:block;color:var(--paper)}
.sub-form.success .sub-row{display:none}
.sub-form.error .sub-err{display:block;color:#F6D9CC}
.sub-form.loading button{opacity:.65;pointer-events:none}
.sub-fine{font-family:var(--sans);font-size:.8rem;color:rgba(251,242,225,.6);margin-top:12px}
.sub-form.success .sub-fine{display:none}
@media(max-width:820px){.sub-inner{grid-template-columns:1fr;gap:24px;padding:46px 30px}.sub-copy p{max-width:none}}

/* footer subscribe (compact) */
.sub-form-foot{margin-top:22px;max-width:340px}
.foot-sub-label{font-family:var(--sans);font-size:.82rem;font-weight:600;color:var(--ink-soft);display:block;margin-bottom:10px}
.sub-form-foot .sub-row{gap:8px}
.sub-form-foot input{flex:1;min-width:0;font-family:var(--sans);font-size:.92rem;padding:11px 13px;border:1px solid var(--rule-2);background:var(--paper);color:var(--ink);outline:none;transition:border-color .2s ease}
.sub-form-foot input:focus{border-color:var(--teal)}
.sub-form-foot button{font-family:var(--sans);font-size:.85rem;font-weight:600;padding:11px 18px;background:var(--ink);color:var(--paper);border:none;cursor:pointer;white-space:nowrap;transition:background .2s ease}
.sub-form-foot button:hover{background:var(--rust)}
.sub-form-foot.success .sub-ok{color:var(--teal)}
.sub-form-foot.error .sub-err{color:var(--rust)}

/* topic archive + pagination */
.tag-grid{padding-bottom:34px}
.tag-empty{grid-column:1/-1;font-family:var(--serif);font-size:1.2rem;color:var(--ink-soft);padding:16px 0 60px}
.pagination{display:flex;justify-content:center;align-items:center;gap:26px;padding:14px 0 88px;font-family:var(--sans);font-size:.9rem}
.pagination a{color:var(--teal);font-weight:600;transition:color .2s ease}
.pagination a:hover{color:var(--rust)}
.pagination .page-number{color:var(--ink-faint)}

/* 404 */
.err-links{display:flex;flex-wrap:wrap;gap:14px 26px;padding:6px 0 120px;font-family:var(--sans);font-size:1.02rem;font-weight:600}
.err-links a{color:var(--teal);transition:color .2s ease}
.err-links a:hover{color:var(--rust)}

/* ============ podcast page header art + platforms + teaser (14 Jul call) ============ */
.pod-page .phead-cover{display:grid;grid-template-columns:1fr 280px;gap:64px;align-items:center}
.phead-art{width:280px;border:1px solid var(--rule-2)}
@media(max-width:820px){.pod-page .phead-cover{grid-template-columns:1fr;gap:26px}.phead-art{width:210px}}
.pod-actions{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap}
.pod-platforms{font-family:var(--sans);font-size:.85rem;color:var(--ink-faint)}
.pod-platforms a{color:var(--ink-soft);font-weight:600;text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:2px;transition:color .2s ease}
.pod-platforms a:hover{color:var(--rust)}
.article-body .pod-platforms{margin-top:16px}
/* generous stacking on small screens so the Listen button and platform links don't sit close enough to mis-tap */
@media(max-width:500px){
  .pod-actions{flex-direction:column;align-items:flex-start;gap:16px}
  .episode-listen{margin-top:16px}
  .article-body .pod-platforms{margin-top:16px}
}
.pod-teaser .pod-cover{cursor:default;aspect-ratio:100/143;height:auto}
.pod-row.pod-teaser:hover .pod-cover{transform:none;box-shadow:none}

/* contact page: smaller visual, roomier form (14 Jul call) */
.contact-anim{max-width:380px}
.cform textarea{min-height:170px}

/* ============ podcast seasons (Season 2 = video) ============ */
.season-head{margin:36px 0 18px}
.season-head h2{font-size:clamp(1.5rem,2.4vw,2rem);display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.season-badge{font-family:var(--sans);font-size:.76rem;font-weight:600;letter-spacing:.03em;background:var(--rust);color:var(--paper);padding:6px 11px;transform:translateY(1px)}
.season-head p{font-family:var(--serif);font-size:1.05rem;color:var(--ink-soft);margin-top:8px}
.pods-page .pod-list{margin-bottom:30px}
.pod-badge{position:absolute;top:12px;left:12px;z-index:1;font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.04em;background:var(--ink);color:var(--paper);padding:5px 10px}
.s2-chip{display:inline-block;font-family:var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.03em;background:var(--rust);color:var(--paper);padding:5px 10px;margin-bottom:12px}
.video-panel{max-width:700px;margin:34px auto 0;aspect-ratio:16/9;background:#205C64;border:1px solid var(--rule-2);display:flex;align-items:center;justify-content:center}
.video-panel .vp-inner{text-align:center}
.video-panel .vp-play{width:64px;height:64px;border-radius:50%;background:rgba(251,242,225,.14);border:1px solid rgba(251,242,225,.5);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.video-panel .vp-play svg{width:22px;height:22px;fill:var(--paper);margin-left:3px}
.video-panel .vp-note{font-family:var(--sans);font-size:.92rem;color:rgba(251,242,225,.85)}
.video-panel iframe{width:100%;height:100%;border:0}
@media(max-width:600px){.video-panel{margin-top:24px}}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
