/* Shared editorial components. */
.entry-design{margin:64px 0;border-top:2px solid #111;padding-top:28px}
.entry-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:30px}
.entry-heading>p{font:700 13px/1.5 Arial,sans-serif;letter-spacing:.1em;color:#ed260d}
.entry-heading>h2{font-family:var(--headline,"VIJU Display",sans-serif);font-size:30px;font-weight:900;line-height:1.5;letter-spacing:-.04em}
.entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;list-style:none;padding:0;margin:0}
.entry-grid>li{position:relative;display:flex;flex-direction:column;align-items:flex-start;background:#efeeea;padding:30px 36px 34px;min-height:300px;border-top:4px solid #ed260d}
.entry-index{width:100%;display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;font:700 12px/1.2 Arial,sans-serif;letter-spacing:.1em}
.entry-index>span:first-child{font-size:54px;letter-spacing:-.07em;font-weight:400;color:#ed260d}
.entry-grid h3{font-family:var(--headline,"VIJU Display",sans-serif);font-size:clamp(24px,2.4vw,34px);font-weight:900;line-height:1.5;letter-spacing:-.055em;margin:0 0 16px}
.entry-grid p{font-size:17px;line-height:1.9;margin:0 0 22px}
.entry-grid a{display:flex;align-items:center;gap:28px;border-bottom:1px solid #111;font-size:14px;font-weight:700;padding-bottom:7px;margin-top:auto}
.entry-grid a>span{color:#ed260d;font-size:24px}
.entry-sign{position:absolute;bottom:25px;right:30px;color:#ed260d;font:400 48px/1 Arial,sans-serif}
.entry-grid a:hover{color:#ed260d}
.news-filter-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 16px}
.news-filter-buttons button{appearance:none;border:1px solid #c7c6c0;border-radius:0;background:transparent;color:#111;font-family:inherit;font-size:15px;font-weight:700;line-height:1.5;padding:12px 21px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.news-filter-buttons button[aria-pressed=true]{background:#111;border-color:#111;color:#fff}
.news-filter-buttons button:hover{border-color:#ed260d}
.news-filter-buttons button:focus-visible,.entry-grid a:focus-visible{outline:3px solid #ed260d;outline-offset:4px}
.news-filter-status{font-size:13px;color:#595952;margin:0 0 18px}
.news-filter-empty{padding:56px 0;border-top:1px solid #111;border-bottom:1px solid #c7c6c0}
.news-filter-empty>p{font-size:23px;font-weight:800;margin:0 0 15px}.news-filter-empty>span{font-size:16px;color:#595952}
.news-filter [hidden]{display:none!important}
.news-filter-results.is-changing{animation:news-appear .3s ease-out}
@keyframes news-appear{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:760px){.entry-heading{display:block}.entry-heading>p{margin-bottom:12px}.entry-heading>h2{font-size:26px}.entry-grid{grid-template-columns:1fr;gap:18px}.entry-grid>li{padding:25px;min-height:290px}.entry-grid h3{font-size:26px}.entry-index{margin-bottom:20px}.entry-index>span:first-child{font-size:46px}.entry-grid p{font-size:16px}.news-filter-buttons{gap:8px}.news-filter-buttons button{padding:10px 13px;font-size:14px}.news-filter-empty>p{font-size:20px}}
@media(prefers-reduced-motion:reduce){.news-filter-results.is-changing{animation:none}.news-filter-buttons button{transition:none}}

/* Route labels share the SVG coordinate system with the dots and paths. */
.turn-route{min-height:0;width:100%;max-width:520px;margin-inline:auto}
.turn-route svg{display:block;width:100%;height:auto;overflow:visible}
.turn-route text{font-family:var(--sans,sans-serif);font-size:16px;font-weight:700;fill:#111;letter-spacing:0}
.turn-route .route-destination{fill:#ed260d}
.turn-tabs button>span:nth-child(2){position:static;inset:auto}

/* Supporting copy follows the mark; the statement anchors the hero below. */
.motion-hero .turn-kicker{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.motion-hero .turn-kicker>p{text-align:left;margin:0;line-height:1.9;max-width:none}
.motion-hero .person-traveler-mobile{display:none}
.motion-hero .hero-description{line-height:1.85;max-width:none}
.motion-hero .hero-foot{grid-template-columns:minmax(0,1fr) auto;gap:30px}
.motion-hero .hero-tags{grid-column:2;grid-row:1}
.member-callout .section-heading{padding-right:0}

/* Full-width statements prevent mid-sentence wraps on desktop. */
.member-fit-list,.fit-list{grid-template-columns:1fr}
.member-fit-list li,.fit-list li{padding-left:0;text-wrap:pretty;line-break:strict}
.plain-list li:before{content:'•'}
.entry-sign{display:none}
.theme-text{display:flex;flex-direction:column;justify-content:center;padding-block:28px}
.theme-text .proposal-label{align-self:flex-start}
.theme-text #theme-topics{margin-bottom:0;padding-bottom:0}
.theme-selectors button>span:last-child:empty,.turn-tabs button>span:last-child:empty{display:none}
p,.lead,.article-body li,.plain-list li{line-break:strict;text-wrap:pretty}
h2,h3,h4{line-break:strict;text-wrap:balance}
.page-intro h1{line-break:strict;text-wrap:balance}
.field-help,.field-error,.fact-list dd{overflow-wrap:anywhere}
.route-text{overflow-wrap:normal;text-wrap:pretty}
.entry-grid h3{word-break:keep-all;overflow-wrap:normal}
@media(min-width:1060px){.motion-hero .hero-foot{padding-right:2%;grid-template-columns:1fr auto 1fr}.motion-hero .hero-description{grid-column:1}.motion-hero .hero-tags{grid-column:2}}
@media(min-width:1060px) and (max-width:1279px){.motion-hero .person-maker{top:94%;width:125px}}
@media(min-width:761px) and (max-width:1059px){.motion-hero .person-maker{left:auto;right:0;top:94%;width:105px}.motion-hero .hero-description{max-width:none}}
@media(max-width:760px){
 .motion-hero .turn-kicker{display:grid;grid-template-columns:minmax(0,1fr) 54px;column-gap:16px;row-gap:10px;align-items:center}
 .motion-hero .turn-wordmark{grid-column:1/-1}
 .motion-hero .turn-kicker>p{grid-column:1;grid-row:2}
 .motion-hero .turn-kicker>p{font-size:12.667px;letter-spacing:0}
 .motion-hero .hero-foot{grid-template-columns:1fr;gap:16px;padding-top:12px}
 .motion-hero .hero-description{font-size:14px;grid-column:1;grid-row:1}
 .motion-hero .hero-tags{grid-column:1;grid-row:2}
 /* The walking figure shares a row with the supporting copy on phones. */
 .motion-hero .hero-statement{padding-top:22px}
 .motion-hero .hero-statement>.person-traveler{display:none}
 .motion-hero .person-traveler-mobile{display:block;position:relative;grid-column:2;grid-row:2;inset:auto;width:54px;align-self:center}
 .motion-hero .person-maker{top:auto;bottom:10px;right:0;width:82px}
 .motion-hero .person-observer{bottom:0;width:46px}
 .member-fit-list li,.fit-list li{padding:20px 0}
 .section-heading>p br,.people-note>div>p br,.membership-intro br,.join-heading>p br,.manifesto-copy p:not(.manifesto-last) br,.page-intro .lead br{display:none}
 .section-heading>p,.people-note>div>p,.membership-intro,.manifesto-copy p{line-height:2}
 .entry-grid h3{font-size:clamp(21px,6.2vw,26px)}
 .entry-grid p br{display:none}
 .turn-explanation h3{font-size:clamp(20px,5.5vw,24px)}
 .turn-explanation h3 br{display:none}
 .turn-route text{font-size:17px}
 .theme-panel{grid-template-columns:1fr}
 .theme-art{min-height:100px;height:100px;border-right:0;border-bottom:1px solid #ddd}
 .theme-art:after{writing-mode:horizontal-tb;font-size:40px}
 .theme-text{padding:24px 0 28px}
 .theme-text h3{font-size:24px}
 .theme-text p{font-size:14.667px;line-height:2}
 .theme-text li{font-size:12.667px}
}
@media(max-width:370px){.motion-hero h1{font-size:25.4vw}}
@media(max-width:370px){.header{gap:8px}.header .brand{font-size:22px}.header .header-apply{padding-left:10px;gap:10px}.header .menu-toggle{flex:none;width:30px}}
