/* Project spotlights and the Candor journal. */
.project-feature { background: #f4f1e9; }
.project-layout { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(32px,6vw,90px); align-items: center; }
.project-copy h2 { font-size: clamp(2rem,3.5vw,3.6rem); line-height: 1.08; letter-spacing: -.045em; margin: 0 0 24px; }
.project-copy > p:not(.eyebrow) { color: var(--muted); line-height: 1.7; font-size: 1.08rem; }
.project-actions { display: flex; flex-wrap: wrap; gap: 20px; align-items: center; margin-top: 28px; }
.project-actions .careers-button { font-size: .95rem; }
.project-text-link { color: var(--red-dark); font-weight: 750; text-underline-offset: 5px; line-height: 1.5; }
.journal-page { padding-bottom: 0; }
.journal-index { padding-block: clamp(48px,7vw,100px); }
.journal-page h1 { font-size: clamp(2.35rem,5vw,5rem); line-height: 1.06; letter-spacing: -.05em; max-width: 19ch; margin: 20px 0 24px; }
.story-deck { font-size: clamp(1.1rem,1.7vw,1.4rem); line-height: 1.6; color: var(--muted); max-width: 58ch; }
.journal-categories { margin: 30px 0 36px; }
.category-tag { display: inline-flex; padding: 6px 13px; border: 1px solid #d7cbc0; border-radius: 40px; color: var(--red-dark); font-weight: 750; font-size: .85rem; text-decoration: none; }
.journal-card { margin-top: 40px; display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); border: 1px solid #e2ded7; border-radius: 8px; overflow: hidden; background: #fff; max-width: 1100px; }
.journal-card-copy { padding: clamp(24px,4vw,50px); }
.journal-card h2 { font-size: clamp(1.6rem,2.5vw,2.3rem); line-height: 1.15; letter-spacing: -.035em; margin: 20px 0; }
.journal-card h2 a { color: var(--ink); text-decoration: none; }
.journal-card h2 a:hover { text-decoration: underline; }
.journal-card-copy > p { color: var(--muted); line-height: 1.65; }
.story-heading { padding-block: clamp(38px,6vw,82px) 45px; }
.story-heading h1 { max-width: 24ch; }
.story-breadcrumb { display: flex; flex-wrap: wrap; gap: 12px; font-size: .9rem; margin-bottom: 38px; color: var(--muted); }
.story-breadcrumb a { color: var(--red-dark); text-underline-offset: 3px; }
.story-meta { font-size: .88rem; color: var(--muted); line-height: 1.65; }
.story-body { max-width: 740px; width: calc(100% - 40px); margin: 0 auto; padding: 0 0 90px; }
.story-body > p { color: #46525b; font-size: 1.1rem; line-height: 1.85; margin: 0 0 24px; }
.story-body > .story-lead { color: var(--ink); font-size: 1.3rem; line-height: 1.7; }
.story-body h2 { margin: 44px 0 18px; font-size: clamp(1.6rem,3vw,2.05rem); line-height: 1.2; letter-spacing: -.03em; }
.story-body a:not(.careers-button) { color: var(--red-dark); text-underline-offset: 4px; }
.project-status { padding: 1px 24px 12px; background: #f4f1e9; border-left: 3px solid var(--red); margin-block: 34px; }
.project-status h2 { margin-top: 24px; }
.project-status p,.story-source p,.story-next p { line-height: 1.75; color: #46525b; }
.story-source { padding-top: 28px; border-top: 1px solid #d7d1c8; margin-top: 40px; font-size: .95rem; }
.story-next { padding: 30px; margin-top: 40px; border-radius: 6px; background: #f4f1e9; }
.story-next h2 { margin-top: 0; }
.journal-page .site-footer { padding-bottom: 38px; }
@media (max-width: 760px) {
 .project-layout,.journal-card { grid-template-columns: minmax(0,1fr); }
 .project-actions { align-items: flex-start; flex-direction: column; }
 .project-actions .careers-button { width: 100%; text-align: center; justify-content: center; }
 .story-heading { padding-bottom: 25px; }
 .story-breadcrumb { margin-bottom: 28px; }
 .journal-page h1 { overflow-wrap: break-word; }
 .story-next { padding: 24px; }
}

.project-photo { margin: 0; min-width: 0; }
.project-photo img { width: 100%; height: auto; border-radius: 8px; }
.project-photo figcaption,.story-feature-image figcaption { color: var(--muted); font-size: .8rem; line-height: 1.5; margin-top: 10px; }
.journal-card-image { display: flex; align-items: center; background: #e6e9e8; }
.journal-card-image img { width: 100%; height: auto; }
.story-feature-image { width: min(740px,calc(100% - 40px)); margin: 0 auto 40px; }
.story-feature-image img { width: 100%; height: auto; border-radius: 6px; }

.story-inline-photo { margin: 32px 0; }
.story-inline-photo img { width: 100%; height: auto; border-radius: 6px; }
.story-inline-photo figcaption { color: var(--muted); font-size: .85rem; line-height: 1.6; margin-top: 10px; }
