/* 1.3 — black canvas, moving editorial hero, publication cards. */
:root{color-scheme:dark}
html,body,main,.section,.writing,.growth-statement,.footer,.page-top,.mobile-nav{background:#000}
.home .header:not(.scrolled){background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-color:transparent}
.header.scrolled,body:not(.home) .header.scrolled{background:rgba(0,0,0,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
body:not(.home) .header:not(.scrolled){background:#000}
.portrait-hero{height:100svh;min-height:800px;max-height:1200px;overflow:hidden;isolation:isolate}
.portrait-hero .hero-portrait{inset:0 2% 0 48%;height:auto;z-index:0}
.portrait-hero .approved-portrait{object-fit:contain;object-position:center bottom}
.portrait-hero .hero-copy{position:relative;z-index:2;width:52%;padding:150px 0 230px 4%;align-self:center}
.portrait-hero h1{font-size:clamp(40px,4.25vw,76px);line-height:1.08;letter-spacing:-.045em;white-space:normal;text-transform:none;text-shadow:none;max-width:14ch;margin:0 0 34px}
.hero-marquee{position:absolute;bottom:68px;left:0;right:0;z-index:3;overflow:hidden;pointer-events:none}
.marquee-track{display:flex;width:max-content;animation:hero-marquee 32s linear infinite;will-change:transform}
.marquee-track span{flex:none;white-space:nowrap;font-size:clamp(88px,10.5vw,190px);font-weight:400;line-height:1.1;letter-spacing:-.055em;text-transform:uppercase;color:#f3f3ef}
@keyframes hero-marquee{to{transform:translateX(-50%)}}
.marquee-toggle{position:absolute;bottom:25px;left:4%;z-index:4;border:0;background:none;color:#aaa;font:inherit;font-size:12px;padding:8px 0;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.marquee-toggle[hidden]{display:none}
.portrait-hero.motion-paused .marquee-track{animation-play-state:paused}
.textlink:after,.nav a:after,.footer-links a:after,.menu-toggle:after,.submit:after{height:2px;background:currentColor;clip-path:inset(0 100% 0 0);transition:none}
.textlink:is(:hover,:focus-visible):after,.nav a:is(:hover,:focus-visible):after,.footer-links a:is(:hover,:focus-visible):after,.menu-toggle:is(:hover,:focus-visible):after,.submit:is(:hover,:focus-visible):after{animation:digital-resolve .65s steps(1,end) both}
@keyframes digital-resolve{0%{clip-path:inset(0 90% 0 0);background:repeating-linear-gradient(90deg,currentColor 0 2px,transparent 2px 7px);transform:translateY(-2px)}20%{clip-path:inset(0 55% 0 0);transform:translateY(1px)}40%{clip-path:inset(0 20% 0 0);background:repeating-linear-gradient(90deg,currentColor 0 4px,transparent 4px 7px);transform:none}65%{clip-path:inset(0);background:repeating-linear-gradient(90deg,currentColor 0 6px,transparent 6px 8px)}85%,100%{clip-path:inset(0);background:currentColor;transform:none}}
.flow-ready{opacity:0;transform:translateY(48px);transition:opacity .8s ease,transform 1s cubic-bezier(.16,1,.3,1)}
.flow-ready.is-visible{opacity:1;transform:none}
.article-filters{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:0 0 28px;border-bottom:1px solid #333}
.article-filters fieldset{border:0;padding:0;margin:0;min-width:0}
.article-filters legend,.topic-filter>label{font-size:12px;color:#aaa;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.publication-options{display:flex;flex-wrap:wrap;gap:8px}
.publication-options label{position:relative;cursor:pointer}
.publication-options input{position:absolute;opacity:0;width:1px;height:1px}
.publication-options span{display:block;padding:13px 17px;border:1px solid #454545;font-size:14px;transition:background .2s,color .2s}
.publication-options input:checked+span{background:#f3f3ef;color:#000;border-color:#f3f3ef}
.publication-options input:focus-visible+span{outline:2px solid #fff;outline-offset:4px}
.publication-options label:hover span{border-color:#fff}
.topic-filter{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.topic-filter>label{margin:0}
.topic-filter select{font:inherit;font-size:14px;background:#000;color:#fff;border:1px solid #454545;padding:13px 35px 13px 14px;max-width:100%;min-height:46px}
.topic-filter button{border:0;background:none;color:#fff;cursor:pointer;font:inherit;font-size:14px;padding-top:9px}
.article-count{margin:24px 0;color:#aaa;font-size:13px}
.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.editorial-card{position:relative;min-width:0;background:#000;overflow:hidden;border:1px solid #242424}
.editorial-card-link{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;min-height:540px;aspect-ratio:4/5;text-decoration:none;color:#fff;padding:26px;overflow:hidden}
.editorial-card-link:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.97),rgba(0,0,0,.6) 43%,rgba(0,0,0,.06) 78%)}
.editorial-card-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;filter:none;transition:transform .65s cubic-bezier(.2,.65,.3,1)}
.editorial-card-link:is(:hover,:focus-visible) .editorial-card-image{transform:scale(1.035)}
.editorial-card-link:focus-visible{outline:2px solid white;outline-offset:-4px}
.card-taxonomy{position:absolute;top:18px;left:18px;right:18px;width:fit-content;max-width:calc(100% - 36px);padding:7px 9px;font-size:11px;line-height:1.3;letter-spacing:.04em;text-transform:uppercase;background:#f3f3ef;color:#000}
.card-copy h2{font-size:clamp(25px,2.2vw,38px);font-weight:400;line-height:1.1;letter-spacing:-.035em;margin:0 0 17px;overflow-wrap:break-word}
.card-copy p{font-size:14px;line-height:1.5;color:#e0e0e0;margin:0 0 20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card-date{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#aaa}
.editorial-card,.card-taxonomy,.article-filters *,input,textarea,select,button,.pagination a,.pagination span{border-radius:0}
.pagination{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}
.pagination .page-numbers{padding:10px 14px;border:1px solid #333}
.pagination .current{background:#eee;color:#000}
.empty-articles{padding:70px 0;font-size:22px}
.article-heading{max-width:1080px;margin:0 auto 55px}
.article-heading .page-title{font-size:clamp(42px,5.8vw,88px);line-height:1.04;letter-spacing:-.045em}
.article-featured{margin:0 0 60px}
.article-featured img{display:block;width:100%;height:auto;max-height:760px;object-fit:cover;filter:none}
.article-page .entry-content,.article-after{width:min(100%,780px);max-width:780px;margin-left:auto;margin-right:auto;text-align:left}
.article-page .entry-content{font-size:20px;line-height:1.8}
.entry-content>*{max-width:100%}
.entry-content img{height:auto}
.entry-content iframe{max-width:100%}
.entry-content pre,.entry-content table{overflow-x:auto}
.article-after{margin-top:60px}
.related-articles{margin-top:110px;padding-top:55px;border-top:1px solid #333}
.related-articles>h2{font-size:clamp(38px,4vw,64px);font-weight:400;letter-spacing:-.04em;margin:0 0 40px}
.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.related-grid .editorial-card-link{aspect-ratio:5/4;min-height:440px}
.form input,.form textarea,.form select,.form-status{background:#000;border:1px solid #444}
@media(min-width:1600px){.portrait-hero .hero-copy{padding-left:7%}.marquee-toggle{left:7%}}
@media(max-width:1100px){.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-card-link{min-height:500px}.portrait-hero h1{font-size:4.7vw}}
@media(max-width:800px){
 .portrait-hero{height:auto;min-height:960px;max-height:none;display:block}
 .portrait-hero .hero-portrait{inset:50px 0 auto 18%;height:480px}
 .portrait-hero .hero-copy{width:100%;padding:590px 6% 65px}
 .portrait-hero h1{font-size:clamp(38px,8vw,62px);max-width:16ch;margin-bottom:26px}
 .hero-marquee{top:465px;bottom:auto}
 .marquee-track span{font-size:88px}
 .marquee-toggle{top:554px;bottom:auto;left:6%}
 .editorial-card-link{min-height:460px;padding:22px}
 .card-copy h2{font-size:28px}
 .article-heading{margin-bottom:35px}.article-featured{margin-bottom:35px}
 .article-page .entry-content{font-size:18px;line-height:1.75}
 .related-articles{margin-top:70px}.related-grid .editorial-card-link{min-height:460px;aspect-ratio:4/5}
}
@media(max-width:560px){.editorial-grid{grid-template-columns:1fr}.editorial-card-link{min-height:480px;aspect-ratio:4/5}.topic-filter{width:100%}.topic-filter select{flex:1;min-width:0}.publication-options span{font-size:13px;padding:12px}.card-copy h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none;transform:none}.marquee-toggle{display:none}.flow-ready{opacity:1;transform:none}.textlink:is(:hover,:focus-visible):after,.nav a:is(:hover,:focus-visible):after,.footer-links a:is(:hover,:focus-visible):after,.menu-toggle:is(:hover,:focus-visible):after,.submit:is(:hover,:focus-visible):after{clip-path:inset(0);background:currentColor}}
@media print{.flow-ready{opacity:1;transform:none}.hero-marquee,.marquee-toggle{display:none}}
#articles{scroll-margin-top:105px}
/* Contact fields: single baseline instead of a box. */
.form input:not([type=hidden]),.form textarea,.form select{border:0;border-bottom:1px solid #555;background:transparent;border-radius:0;padding-left:0;padding-right:0;box-shadow:none;transition:border-color .2s}
.form input:focus,.form textarea:focus,.form select:focus{border-bottom-color:#fff;outline:2px solid transparent;outline-offset:4px;box-shadow:0 1px 0 #fff}
/* Restored static hero structure, 1.3.1. */
.portrait-hero{height:100svh;min-height:780px;max-height:1150px;display:flex;align-items:center}
.portrait-hero .hero-portrait{inset:0 0 0 47%;height:auto}
.portrait-hero .approved-portrait{object-fit:cover;object-position:50% 28%}
.portrait-hero .hero-copy{width:66%;padding:150px 0 90px 4%;align-self:center}
.portrait-hero h1{font-size:clamp(56px,6.6vw,112px);line-height:1;letter-spacing:-.055em;max-width:none;margin:0 0 34px;white-space:normal}
.portrait-hero p.description{font-size:18px;line-height:1.5;max-width:450px;margin:0 0 30px}
@media(min-width:1600px){.portrait-hero .hero-copy{padding-left:7%}}
@media(max-width:800px){.portrait-hero{height:auto;min-height:960px;display:block}.portrait-hero .hero-portrait{inset:30px 0 auto 0;height:580px}.portrait-hero .approved-portrait{object-fit:contain;object-position:center bottom}.portrait-hero .hero-copy{width:100%;padding:565px 6% 64px}.portrait-hero h1{font-size:clamp(40px,9.4vw,76px)}.portrait-hero p.description{font-size:17px}.portrait-hero p.description br{display:none}}
/* Hero CTA always has a visible underline; hover retains digital-to-line effect. */
.portrait-hero .textlink:after{clip-path:inset(0);background:currentColor;height:1px}
/* 1.3.2: adaptive article canvas. Related stories and footer stay black. */
.article-reading-surface{background:#fff;color:#151515;color-scheme:light}
.article-reading-surface .entry-content{color:#262626}
.article-reading-surface .entry-content :is(h1,h2,h3,h4,h5,h6){color:#111}
.article-reading-surface a{color:inherit}
.article-reading-surface :is(input,textarea,select){background:transparent;color:inherit;border:0;border-bottom:1px solid #777;border-radius:0}
.article-reading-surface .entry-content :is(blockquote,hr,td,th){border-color:#ccc}
.article-reading-surface .entry-content pre{background:#f3f3f3;color:#151515;padding:20px}
.article-page>.related-articles{margin-top:0;border-top:0;background:#000;color:#f3f3ef;padding-top:80px;padding-bottom:100px}
.ventures-intro{padding-bottom:55px}
.ventures-intro .body-copy{max-width:650px}
.ventures-directory{padding-top:0}
.ventures-directory .ventures{padding-top:0;width:100%}
.ventures-contact{border-top:1px solid #333;display:flex;justify-content:space-between;align-items:flex-end;gap:35px}
.ventures-contact h2{font-size:clamp(48px,7vw,105px);font-weight:400;line-height:1;letter-spacing:-.045em;margin:0}
@media(prefers-color-scheme:dark){
 .article-reading-surface{background:#000;color:#f3f3ef;color-scheme:dark}
 .article-reading-surface .entry-content{color:#ccc}
 .article-reading-surface .entry-content :is(h1,h2,h3,h4,h5,h6){color:#fff}
 .article-reading-surface .entry-content :is(blockquote,hr,td,th){border-color:#444}
 .article-reading-surface .entry-content pre{background:#111;color:#eee}
}
@media(max-width:800px){.ventures-contact{align-items:flex-start;flex-direction:column}.article-page>.related-articles{padding-top:60px;padding-bottom:70px}}
/* 1.3.5: align the crown with the approved reference mark. */
@media(min-width:801px){.portrait-hero .approved-portrait{transform:scale(.935);transform-origin:center bottom}}


/* 1.3.6: copy comes before the portrait on phones and tablets. */
@media(max-width:1200px),(max-width:1400px) and (pointer:coarse){
 .portrait-hero{display:flex;flex-direction:column;align-items:stretch;height:auto;min-height:0;max-height:none}
 .portrait-hero .hero-copy{order:0;width:100%;padding:150px 6% 36px;align-self:stretch}
 .portrait-hero h1{font-size:clamp(38px,7.8vw,84px);line-height:1;max-width:none;margin-bottom:28px}
 .portrait-hero p.description{font-size:18px;max-width:450px;margin-bottom:25px}
 .portrait-hero .hero-portrait{order:1;position:relative;inset:auto;width:100%;height:clamp(410px,65vw,760px);flex:none}
 .portrait-hero .approved-portrait{position:static;display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:none}
}
@media(max-width:600px){
 .portrait-hero .hero-copy{padding-top:125px;padding-bottom:24px}
 .portrait-hero h1{font-size:clamp(36px,9.4vw,56px)}
 .portrait-hero p.description{font-size:17px}
 .portrait-hero .hero-portrait{height:clamp(410px,120vw,600px)}
}
/* 1.3.7: article title and featured image always sit on black. */
.article-hero{background:#000;color:#f3f3ef;color-scheme:dark;padding-bottom:60px}
.article-hero .article-featured{margin-bottom:0}
.article-reading-surface{padding-top:70px;padding-bottom:80px}
@media(max-width:800px){.article-hero{padding-bottom:35px}.article-reading-surface{padding-top:45px;padding-bottom:55px}}
/* 1.3.8: media captions sit below body copy in the type hierarchy. */
.article-reading-surface .entry-content :is(figcaption,.wp-element-caption,.wp-caption-text){font-size:14px!important;line-height:1.5!important;font-weight:400!important;color:#626262!important;letter-spacing:normal;margin:10px 0 0!important;padding:0;text-align:left}
.article-reading-surface .entry-content :is(figcaption,.wp-element-caption,.wp-caption-text) :is(p,a,span){font-size:inherit!important;line-height:inherit!important;color:inherit!important}
.article-reading-surface .entry-content figure{margin:32px 0}
.article-reading-surface .entry-content figure :is(img,video,iframe){display:block;max-width:100%}
.article-reading-surface .entry-content :is(h2,h3,h4,h5,h6){font-weight:400;line-height:1.2;margin:1.6em 0 .6em}
.article-reading-surface .entry-content h2{font-size:36px}.article-reading-surface .entry-content h3{font-size:28px}.article-reading-surface .entry-content h4{font-size:23px}
.article-reading-surface .entry-content .wp-block-embed__wrapper{position:relative}
.article-reading-surface .entry-content .wp-embed-aspect-16-9 iframe{width:100%;aspect-ratio:16/9;height:auto}
@media(max-width:800px){.article-reading-surface .entry-content h2{font-size:30px}.article-reading-surface .entry-content h3{font-size:25px}.article-reading-surface .entry-content :is(figcaption,.wp-element-caption,.wp-caption-text){font-size:13px!important}}
@media(prefers-color-scheme:dark){.article-reading-surface .entry-content :is(figcaption,.wp-element-caption,.wp-caption-text){color:#aaa!important}}
/* Editorial quotation, including legacy and native Gutenberg quotes. */
.article-reading-surface .entry-content blockquote{margin:40px 0;padding:4px 0 4px 26px;border:0;border-left:2px solid #151515;font-size:24px;line-height:1.6;color:#151515}
.article-reading-surface .entry-content blockquote p{font-size:inherit;line-height:inherit;margin:0 0 20px}
.article-reading-surface .entry-content blockquote p:last-child{margin-bottom:0}
.article-reading-surface .entry-content blockquote cite{display:block;margin-top:20px;font-size:14px;line-height:1.5;font-style:normal;color:#626262}
@media(prefers-color-scheme:dark){.article-reading-surface .entry-content blockquote{color:#f3f3ef;border-left-color:#aaa}.article-reading-surface .entry-content blockquote cite{color:#aaa}}
@media(max-width:800px){.article-reading-surface .entry-content blockquote{font-size:21px;padding-left:20px}}
/* Progressive enhancement: native select remains available without JavaScript. */
.topic-picker{position:relative;min-width:230px;max-width:100%}
.topic-filter .topic-trigger{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;padding:13px 0;border:0;border-bottom:1px solid #555;background:#000;color:#f3f3ef;text-align:left;font-size:14px;line-height:20px}
.topic-trigger svg{width:14px;height:14px;flex:none;transition:transform .2s}
.topic-trigger[aria-expanded=true] svg{transform:rotate(180deg)}
.topic-trigger:focus-visible{outline:1px solid #eee;outline-offset:5px}
.topic-options[hidden]{display:none}
.topic-options{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:12;max-height:300px;overflow:auto;overscroll-behavior:contain;background:#0a0a0a;border:1px solid #333;padding:6px;box-shadow:0 18px 40px #000a;scrollbar-width:thin;scrollbar-color:#555 #0a0a0a}
.topic-options.opens-up{top:auto;bottom:calc(100% + 8px)}
.topic-filter .topic-option{display:block;width:100%;padding:11px 12px;border:0;background:none;text-align:left;color:#aaa;font:inherit;font-size:14px;line-height:20px}
.topic-filter .topic-option[aria-selected=true]{color:#fff}
.topic-filter .topic-option:is(:hover,.is-active){background:#222;color:#fff}
.topic-option[aria-selected=true]:after{content:'✓';float:right;margin-left:10px}
@media(max-width:560px){.topic-picker{flex:1;min-width:180px}}
/* 1.3.10: tablet portrait fills its canvas, retaining copy above the photo. */
@media(min-width:601px) and (max-width:1200px),(min-width:601px) and (max-width:1400px) and (pointer:coarse){
 .portrait-hero .hero-portrait{height:clamp(650px,95vw,1100px)}
 .portrait-hero .approved-portrait{object-fit:cover;object-position:center 28%}
}
/* Borderless, pure-black topic menu and checkbox rows. */
.article-filters{border-bottom:0}
.topic-filter .topic-trigger{border:0}
.topic-trigger:focus-visible{outline:0;text-decoration:underline;text-underline-offset:5px}
.topic-options{background:#000;border:0;scrollbar-color:#555 #000}
.topic-options fieldset{margin:0;padding:0;border:0}
.topic-option[aria-selected=true]:after{content:none}
.topic-checkbox{display:flex;align-items:center;gap:12px;min-height:42px;padding:9px 12px;font-size:14px;line-height:20px;color:#aaa;cursor:pointer}
.topic-checkbox:hover,.topic-checkbox:focus-within{background:#151515;color:#fff}
.topic-checkbox input{appearance:none;-webkit-appearance:none;width:15px;height:15px;flex:none;margin:0;border:1px solid #777;background:#000;position:relative;cursor:pointer}
.topic-checkbox input:checked{background:#f3f3ef;border-color:#f3f3ef}
.topic-checkbox input:checked:after{content:'';position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid #000;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.topic-checkbox input:focus-visible{outline:1px solid #fff;outline-offset:3px}
.topic-checkbox:has(input:checked){color:#fff}
/* Decorative quotation marks replace the quote rule. */
.article-reading-surface .entry-content blockquote{position:relative;isolation:isolate;border:0;padding:38px 24px 24px 44px}
.article-reading-surface .entry-content blockquote:before{content:'“';position:absolute;top:-8px;left:0;font-family:Georgia,serif;font-size:240px;line-height:1;color:currentColor;opacity:.08;pointer-events:none;z-index:-1}
.article-reading-surface .entry-content blockquote cite{position:relative}
@media(max-width:800px){.article-reading-surface .entry-content blockquote{padding:30px 10px 16px 28px}.article-reading-surface .entry-content blockquote:before{font-size:200px;top:0}}
.editorial-card,.editorial-card-link{border:0}
