/* RILE / Quiet, legible, consistent across every public template. */
:root {
  --ink:#24332c; --ink-soft:#58645d; --forest:#285940; --forest-deep:#1c4230;
  --moss:#55745f; --moss-light:#e9f0e9; --paper:#fff; --paper-2:#f5f7f4;
  --paper-3:#e7ece6; --white:#fff; --clay:#285940; --clay-dark:#42674e;
  --line:#dce3db; --line-light:#dce3db; --shadow:none; --shadow-soft:none;
  --radius-sm:4px; --radius-md:4px; --radius-lg:4px; --container:1160px;
  --font-serif:var(--font-sans);
}
body {background:#fff;line-height:1.85;letter-spacing:.025em}
body::before,.home-hero::before,.home-hero::after,.page-hero::after,
.hero-visual::before,.hero-visual::after,.issue-panel::after,
.loop-grid::before,.system-diagram::before,.cta-band::before {display:none}
h1,h2,h3,h4 {line-height:1.55;font-weight:600}
.section {padding:88px 0}
.section--compact {padding:60px 0}
.section--dark {background:var(--paper-2);color:var(--ink)}
.section--dark .eyebrow,.section--dark .text-link {color:var(--forest);border-color:var(--line)}
.section--dark .section-lead,.section--dark .section-head__aside {color:var(--ink-soft)}
.eyebrow {font-size:.7rem;font-weight:650;letter-spacing:.11em;margin-bottom:14px;color:var(--forest)}
.eyebrow::before {display:none}
.section-title,.statement-quote,.mission-copy h2,.contact-copy h2,.cta-band h2 {font-size:clamp(1.7rem,2.7vw,2.45rem);font-weight:600;line-height:1.55;letter-spacing:.01em}
.section-lead {font-size:1rem;line-height:1.9;margin-top:20px;max-width:720px}
.section-head {gap:32px;margin-bottom:40px}
.section-head__copy {max-width:780px}
.section-head__aside {font-size:.82rem}
.text-link {font-weight:600;font-size:.86rem;letter-spacing:0}
.button,.wp-block-button__link {border-radius:4px;font-weight:600;letter-spacing:.02em;box-shadow:none}
.button:hover,.button:hover .button__arrow,.issue-button:hover {transform:none}
.button--secondary,.button--ghost-light {background:transparent;color:var(--forest);border-color:#bbcbbc}
.button--secondary:hover,.button--ghost-light:hover {background:var(--moss-light);color:var(--forest-deep);border-color:var(--forest)}
.button--light,.rile-commons .button--light {background:var(--forest);color:#fff;border-color:var(--forest)}
.button--light:hover,.rile-commons .button--light:hover {background:var(--forest-deep);color:#fff}
.button-row {margin-top:28px;gap:12px}
body .site-header,body .site-header.is-scrolled,body:not(.page-home) .site-header {height:80px;background:#fff;backdrop-filter:none;box-shadow:none;border-bottom:1px solid var(--line);transition:none}
.header-inner {width:min(calc(100% - 48px),1280px);gap:24px}
.brand {gap:10px}
.brand__name strong {font-weight:600;letter-spacing:.05em}
.primary-nav {gap:24px}
.primary-nav a {font-weight:500;letter-spacing:0;font-size:.8rem}
.header-cta {min-height:40px}
.menu-toggle {border:0;border-radius:4px;background:transparent}
.mobile-nav {background:#fff;overflow-y:auto}
.mobile-nav a {font-size:1.2rem}
.home-hero {padding:64px 0 40px;min-height:0;background:#fff}
.hero-grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.home-hero .hero-title {font-size:clamp(2rem,3.35vw,3rem);font-weight:600;letter-spacing:.005em;line-height:1.6}
.hero-copy .eyebrow {font-size:.68rem;letter-spacing:.06em}
.hero-lead {font-size:.96rem;line-height:2;max-width:490px;margin-top:24px}
.hero-visual {min-height:0;border-radius:4px;box-shadow:none;overflow:visible;margin:0}
.hero-photo {width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;border-radius:4px}
.hero-visual .hero-statement {position:static;padding:18px 0 0;margin:0;border:0;border-radius:0;background:none;backdrop-filter:none;color:var(--forest);font-size:1.2rem;line-height:1.65;font-weight:600;display:flex;gap:10px 16px;align-items:baseline;flex-wrap:wrap}
.hero-visual .hero-statement span {font-size:.73rem;color:var(--ink-soft);font-weight:400}
.home-hero .hero-principles {margin-top:44px;padding-top:24px;gap:32px;grid-template-columns:repeat(3,minmax(0,1fr))}
.home-hero .hero-principle {gap:12px}
.home-hero .hero-principle__number {height:auto;width:auto;min-width:24px;padding-top:5px;background:none;color:var(--forest);border-radius:0;font-size:.75rem;font-weight:500}
.home-hero .hero-principle strong {font-size:1.1rem;font-weight:600;margin-bottom:5px}
.home-hero .hero-principle p {font-size:.78rem;line-height:1.8}
.rile-two-col {gap:64px}
.rile-vision {background:var(--paper-2)}
.rile-large-copy {font-size:clamp(1.1rem,1.7vw,1.45rem);line-height:1.8}
.rile-capitals {gap:10px}
.rile-capital {border:1px solid var(--line);border-radius:4px;padding:20px 22px;margin:0}
.rile-capital span {font-size:1.12rem;font-weight:600}
.rile-capital p {font-size:.82rem}
.rile-capital-economy {background:#fff;width:64%}
.rile-capital-social {background:#edf2eb;width:82%}
.rile-capital-nature {background:#dae7da;border-color:#c4d7c5;color:var(--forest-deep)}
.rile-return {font-size:.76rem;margin-top:8px}
.rile-service-grid {margin-top:36px}
.rile-service {padding:30px 36px 30px 0}
.rile-service:nth-child(even) {padding-left:36px}
.rile-number {color:var(--forest);font-size:.78rem;margin-bottom:14px}
.rile-service h3 {font-size:clamp(1.2rem,1.8vw,1.5rem);font-weight:600}
.rile-service p {font-size:.9rem}
.rile-deliverables {border-left-width:2px;background:var(--paper-2)}
.rile-three-col {gap:32px;margin-top:36px}
.rile-three-col h3 {font-size:1.35rem}
.rile-theory h3 {font-size:1.1rem}
.statement-grid {grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px}
.statement-quote {top:120px}
.approach-item {grid-template-columns:40px 1fr;gap:20px;padding:26px 0}
.approach-item__icon {width:36px;height:36px;border-radius:4px;background:none}
.approach-item h3 {font-size:1.08rem}
.approach-item p {font-size:.92rem}
.diagnosis-layout {gap:28px}
.issue-button {min-height:80px;border-radius:4px;background:#fff;font-size:.88rem;font-weight:500}
.issue-panel {background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:32px;min-height:0;box-shadow:none}
.issue-panel h3 {font-size:clamp(1.4rem,2.1vw,1.85rem);font-weight:600}
.issue-panel__label,.issue-panel h4 {color:var(--forest)}
.issue-panel__summary,.issue-panel ul,.issue-panel__response {color:var(--ink-soft)}
.issue-panel__grid {margin-top:24px}
.loop-grid {gap:24px}
.loop-step__number {width:36px;height:36px;border:0;border-radius:4px;background:#e2ebe1;color:var(--forest);font-size:.95rem;margin-bottom:18px}
.loop-step p,.loop-note {color:var(--ink-soft)}
.loop-note {border:0;border-top:1px solid var(--line);border-radius:0;padding:22px 0 0;margin-top:32px;font-size:.85rem}
.loop-note strong {color:var(--ink)}
.program-card,.case-card,.insight-card,.archive-card,.principle-card,.lever-card,
.expertise-card,.team-card,.generic-card,.program-block,.single-sidebar__block,
.page-hero__aside,.change-map,.change-map__item,.engagement-flow,.empty-state,
.contact-notice,.contact-fallback {border-radius:4px;box-shadow:none}
.program-card,.insight-card,.archive-card,.expertise-card,.team-card,.generic-card {background:#fff;min-height:0;padding:26px;border-color:var(--line)}
.program-card {min-height:320px}
.program-card:hover,.case-card:hover,.insight-card:hover,.archive-card:hover {transform:none;box-shadow:none;border-color:#9aae9a;background:var(--paper-2)}
.case-card:hover .case-card__image img,.archive-card:hover .archive-card__image img {transform:none}
.program-card--featured {background:var(--paper-2);color:var(--ink);border-color:var(--line)}
.program-card--featured p {color:var(--ink-soft)}
.program-card--featured .program-card__index,.program-card--featured .text-link {color:var(--forest);border-color:var(--line)}
.program-card--featured .tag {color:var(--ink-soft);border-color:var(--line)}
.program-card h3,.case-card h3,.archive-card h3,.team-card h3,.generic-card h2 {font-size:1.2rem;font-weight:600;line-height:1.6}
.program-card__index {font-size:.85rem}
.tag {border-radius:3px;background:var(--paper-2);font-weight:500}
.case-grid,.card-grid {gap:24px}
.case-card {border:1px solid var(--line)}
.case-card__body {padding:24px}
.insight-grid {gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}
.insight-card {border:0;border-top:1px solid var(--line);border-radius:0;padding:24px 0}
.insight-card h3 {font-size:1.12rem;font-weight:600;line-height:1.65}
.insight-card p {font-size:.9rem}
.insight-card:hover {background:transparent}
.insight-card__meta {padding-top:12px}
.cta-band {background:#eef4ed;color:var(--ink);min-height:0;border-top:1px solid var(--line)}
.cta-band__inner {padding:72px 0;max-width:760px}
.cta-band p {color:var(--ink-soft);font-size:.96rem;margin-top:20px}
.cta-band .eyebrow {color:var(--forest);font-size:.7rem;margin-top:0}
.cta-bird {display:none}
.site-footer {background:#fff;color:var(--ink);padding:56px 0 24px;border-top:1px solid var(--line)}
.footer-grid {gap:48px}
.footer-brand .brand__mark {color:var(--forest)}
.footer-brand .brand__name span,.footer-description,.footer-title,.footer-links a,.footer-bottom {color:var(--ink-soft)}
.footer-links a:hover {color:var(--forest);text-decoration:underline;text-underline-offset:4px}
.footer-bottom {border-color:var(--line);margin-top:36px}
.page-hero,.page-hero--compact {padding:64px 0;background:#fff;border-bottom:1px solid var(--line)}
.page-hero__grid {gap:64px}
.page-hero .page-hero__title {font-size:clamp(2rem,3.4vw,3rem);font-weight:600;line-height:1.6;letter-spacing:.01em}
.page-hero__lead {font-size:1rem;line-height:1.95}
.page-hero__aside {padding:0 0 0 28px;border:0;border-left:2px solid var(--line);background:none}
.system-definition {gap:56px}
.system-diagram {min-height:440px;border-radius:4px;box-shadow:none;background:#eef4ed;color:var(--ink)}
.system-diagram .edge {stroke:#91aa93;stroke-dasharray:none}
.system-diagram .ring {stroke:#91aa93}
.system-diagram .node {fill:#fff;stroke:#91aa93}
.system-diagram text {fill:var(--forest-deep);font-weight:500}
.lens-card {border-top:1px solid var(--line);background:#fff}
.lever-card {min-height:0;background:#fff;border-color:var(--line)}
.lever-card__icon,.expertise-card__icon {border-radius:4px;color:var(--forest);background:var(--moss-light)}
.lever-card p {color:var(--ink-soft)}
.process-row {grid-template-columns:64px minmax(180px,.58fr) 1fr;gap:28px;padding:28px 0}
.process-row__num {font-size:1.15rem}
.process-row h3 {font-size:1.25rem;font-weight:600}
.principle-card {grid-template-columns:28px 1fr;padding:24px}
.principle-card__num {font-size:1rem}
.output-card {border-left:2px solid #99b29a;background:var(--paper-2);min-height:0}
.program-detail {gap:56px;padding:56px 0}
.program-detail h2,.case-story h2,.featured-insight__copy h2,.change-map h2 {font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:600;line-height:1.6;letter-spacing:0}
.program-block {background:#fff}
.program-block--result {background:var(--paper-2);color:var(--ink);border-color:var(--line)}
.program-block--result h3 {color:var(--forest)}
.program-block--result p,.program-block--result ul {color:var(--ink-soft)}
.case-story {gap:56px;padding:56px 0}
.case-story__image,.case-single-image,.archive-card__image,.article-featured-image img,.entry-content img {border-radius:4px;box-shadow:none}
.change-map {background:var(--paper-2);color:var(--ink);padding:32px}
.change-map__item {background:#fff;border-color:var(--line)}
.change-map__item:not(:last-child)::after {color:var(--forest)}
.change-map__item span {color:var(--forest)}
.change-map__item p {color:var(--ink-soft)}
.featured-insight {background:var(--paper-2);color:var(--ink);padding:32px;gap:40px;border-radius:4px}
.featured-insight__visual {border-radius:4px;min-height:320px}
.featured-insight__visual::after {display:none}
.featured-insight__copy p {color:var(--ink-soft)}
.filter-button,.pagination .page-numbers,.search-field {border-radius:4px}
.archive-grid {gap:24px}
.archive-card__image {margin:-10px -10px 20px}
.archive-card p {font-size:.88rem}
.mission-grid,.contact-grid {gap:56px}
.mission-visual {border-radius:4px;box-shadow:none;min-height:460px}
.mission-visual__caption {font-size:1.05rem}
.mission-manifesto {font-size:1.15rem}
.contact-copy p,.contact-note,.contact-fallback p {color:var(--ink-soft)}
.contact-note,.contact-notice {border-color:var(--line);color:var(--ink)}
.contact-notice--error {background:#faeee9;color:#793d2a}
.contact-notice--warning {background:#faf5e8}
.contact-notice--success {background:#e7f0e5}
.form-field input,.form-field textarea,.form-field select {border-color:#b9c7ba;border-radius:4px;background:#fff;color:var(--ink)}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus {border-color:var(--forest);box-shadow:0 0 0 2px #dbe7da}
.form-consent input[type="checkbox"] {accent-color:var(--forest)}
.form-status {color:var(--forest)}
.article-hero {padding:64px 0 60px;background:var(--paper-2)}
.article-hero h1 {font-size:clamp(1.8rem,3.3vw,3rem);line-height:1.65;letter-spacing:0;font-weight:600}
.article-deck {font-size:1.05rem}
.entry-content {font-size:1rem;line-height:2}
.entry-content h2 {font-size:clamp(1.4rem,2.4vw,2rem);font-weight:600;line-height:1.6}
.entry-content h3 {font-size:clamp(1.2rem,2vw,1.55rem);font-weight:600}
.entry-content blockquote {font-size:1rem;background:var(--paper-2);border-left-width:2px}
.entry-content pre {border-radius:4px}
.not-found {padding-top:80px;min-height:60vh}
.not-found h1 {font-size:clamp(2rem,4vw,3rem)}
.not-found > div > p:not(.eyebrow) {color:var(--ink-soft)}
.js .reveal,.js .reveal.is-visible {opacity:1;transform:none;transition:none}
:focus-visible,.section--dark :focus-visible,.site-footer :focus-visible {outline:2px solid #285940;outline-offset:4px}
[id] {scroll-margin-top:16px}
@media(max-width:1100px){
 .header-inner{gap:18px}.primary-nav{gap:16px}.primary-nav a{font-size:.75rem}
 .hero-grid{gap:40px}.rile-two-col,.statement-grid{gap:40px}
}
@media(max-width:900px){
 body .site-header,body .site-header.is-scrolled,body:not(.page-home) .site-header{height:72px}
 .hero-grid,.statement-grid,.page-hero__grid{grid-template-columns:1fr}
 .hero-grid{gap:32px}.hero-copy,.hero-lead{max-width:680px}.hero-photo{aspect-ratio:16/9}
 .home-hero .hero-title{font-size:clamp(2rem,4.8vw,2.8rem)}
 .home-hero .hero-principles{gap:20px}
 .process-row{grid-template-columns:48px 1fr}.process-row__detail{grid-column:2}
 .program-detail,.case-story,.mission-grid,.contact-grid{gap:32px}
 .statement-quote{position:static}.featured-insight{gap:28px}
}
@media(max-width:720px){
 .section{padding:56px 0}.section--compact{padding:44px 0}
 .home-hero{padding:40px 0 32px}.hero-grid{gap:28px}
 .home-hero .hero-title,.page-hero .page-hero__title{font-size:clamp(1.7rem,7.4vw,2.5rem);line-height:1.65;letter-spacing:0}
 .hero-lead{font-size:.94rem;line-height:1.95;margin-top:20px}
 .hero-visual .hero-statement{gap:4px 12px;padding-top:14px;font-size:1.1rem}
 .hero-visual .hero-statement span{font-size:.72rem}
 .home-hero .hero-principles{grid-template-columns:1fr;gap:20px;margin-top:32px;padding-top:24px}
 .home-hero .hero-principle strong{font-size:1.1rem}.home-hero .hero-principle p{font-size:.82rem}
 .section-title,.statement-quote,.mission-copy h2,.contact-copy h2,.cta-band h2{font-size:clamp(1.5rem,5.8vw,2rem)}
 .section-head{gap:20px;margin-bottom:28px}.section-lead{font-size:.94rem;margin-top:16px}
 .rile-two-col,.rile-three-col{gap:28px}.rile-capital{padding:16px}
 .rile-service,.rile-service:nth-child(even){padding:26px 0}
 .rile-three-col h3{font-size:1.2rem}.rile-theory h3{font-size:1.1rem}
 .rile-service h3{font-size:1.2rem}.rile-large-copy{font-size:1.2rem}
 .approach-item{grid-template-columns:28px 1fr;gap:14px}.approach-item__icon{width:28px;height:32px}
 .issue-panel{padding:24px 20px}.issue-panel h3{font-size:1.35rem}
 .issue-button{min-height:60px}.loop-step__number{width:36px;height:36px}
 .loop-step{grid-template-columns:36px 1fr;column-gap:16px}.loop-note{font-size:.8rem;gap:14px}
 .insight-grid{grid-template-columns:1fr;gap:4px}.program-card{min-height:0}
 .page-hero,.page-hero--compact{padding:40px 0}.page-hero__lead{font-size:.94rem}
 .page-hero__aside{padding:0 0 0 20px}.page-hero__grid{gap:28px}
 .system-diagram{min-height:340px}.system-definition{gap:28px}
 .process-row{gap:16px;grid-template-columns:32px 1fr}.process-row h3{font-size:1.15rem}
 .program-detail,.case-story{padding:36px 0}
 .featured-insight{padding:22px}.featured-insight__visual{min-height:220px}
 .mission-visual{min-height:360px}.change-map{padding:24px 20px}
 .cta-band__inner{padding:52px 0}.cta-band p{font-size:.92rem}
 .footer-grid{gap:28px}.site-footer{padding-top:40px}
 .article-hero{padding:40px 0 44px}.article-hero h1{font-size:1.75rem}
 .article-deck{font-size:.96rem}.entry-content{font-size:.96rem}
}
@media(max-width:480px){
 .header-inner{width:calc(100% - 32px);gap:12px}.brand{gap:8px}.brand__mark{width:32px;height:32px}
 .hero-photo{aspect-ratio:4/3}.hero-copy .eyebrow{font-size:.65rem}
 .button{font-size:.82rem;padding:11px 16px;min-height:46px}
 .hero-copy .button-row{gap:8px}.hero-copy .button-row .button{flex:1 1 auto}
 .hero-visual .hero-statement{display:block}.hero-visual .hero-statement span{margin-top:4px}
 .form-actions .button{width:100%}
}

/* Photography and regularly updated publications. */
.page-hero__grid {align-items:center;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px}
.page-hero__media {min-width:0}
.page-hero__photo {margin:0}
.page-hero__photo img {width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
.page-hero__photo figcaption {font-size:.72rem;color:var(--ink-soft);margin-top:10px;line-height:1.7}
.page-hero__media .page-hero__aside {border:0;border-top:1px solid var(--line);padding:16px 0 0;margin-top:18px}
.page-hero__media .page-hero__aside strong {font-size:.87rem;margin-bottom:6px}
.page-hero__media .page-hero__aside p {font-size:.8rem;line-height:1.85}
.home-hero .hero-photo {object-position:center 72%;aspect-ratio:4/3}
.home .insight-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.home .insight-card {padding:0 0 22px;border:0;border-bottom:1px solid var(--line);overflow:hidden}
.insight-card__image {display:block;aspect-ratio:16/10;overflow:hidden;border-radius:4px;margin-bottom:20px;background:var(--paper-2)}
.insight-card__image img {width:100%;height:100%;object-fit:cover}
.home .insight-card h3 {font-size:1.02rem;line-height:1.7;margin-top:12px}
.home .insight-card p {font-size:.83rem;line-height:1.85;margin-top:12px}
.home .insight-card__category {font-size:.68rem}
.home .insight-card__meta {padding-top:14px}
.note-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.note-card {display:flex;flex-direction:column;min-width:0}
.note-card__image {aspect-ratio:1.91/1;overflow:hidden;border-radius:4px;background:#fff}
.note-card__image img {width:100%;height:100%;object-fit:cover}
.note-card__body {padding:20px 0 0;display:flex;flex-direction:column;flex:1}
.note-card time {font-size:.74rem;color:var(--ink-soft)}
.note-card h3 {font-size:1.05rem;line-height:1.75;margin:10px 0 18px;font-weight:600}
.note-card__link {display:block;margin-top:auto;font-size:.8rem;color:var(--forest);font-weight:600}
.note-card:hover h3,.insight-card:hover h3 {color:var(--forest);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.note-empty a {color:var(--forest);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px){.home .insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.page-hero__grid{grid-template-columns:1fr;gap:32px}.page-hero__photo img{aspect-ratio:16/9}.page-hero__media .page-hero__aside{max-width:none}.note-grid{gap:22px}.note-card h3{font-size:.96rem}}
@media(max-width:680px){.home .insight-grid,.note-grid{grid-template-columns:1fr;gap:32px}.page-hero__grid{gap:28px}.page-hero__media .page-hero__aside{margin-top:16px;padding-top:14px}.page-hero__photo figcaption{font-size:.7rem}.home .insight-card h3,.note-card h3{font-size:1.1rem}.home .insight-card p{font-size:.9rem}.note-card__body{padding-top:16px}.note-card h3{margin-bottom:12px}}

/* Full-width landscape hero; reading copy stays on a plain background. */
.home-hero.home-hero--wide {padding:0 0 40px;overflow:visible}
.hero-panorama {position:relative;isolation:isolate;display:grid;align-items:end;min-height:clamp(440px,43vw,620px);margin:0;background:var(--forest-deep);overflow:hidden}
.home-hero--wide .hero-photo {position:absolute;inset:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:center 82%;border-radius:0;z-index:-2}
.hero-panorama::after {content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,27,20,0) 12%,rgba(9,27,20,.15) 35%,rgba(9,27,20,.74) 100%);z-index:-1;pointer-events:none}
.hero-panorama__caption {padding:100px 0 56px}
.hero-panorama .hero-copy {max-width:850px}
.hero-panorama .hero-copy .eyebrow {color:#fff;font-size:.74rem;letter-spacing:.1em;margin-bottom:18px}
.home-hero--wide .hero-title {font-size:clamp(2.2rem,4vw,3.65rem);line-height:1.55;letter-spacing:.025em;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.16);font-weight:600}
.home-hero--wide .hero-title em {color:inherit}
.hero-intro {display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:64px;padding-top:36px}
.home-hero--wide .hero-lead {margin:0;max-width:680px;font-size:.95rem;line-height:2}
.hero-intro__actions {justify-self:end}
.hero-caption {margin:0;color:var(--forest);line-height:1.7}
.hero-caption strong {font-size:1.25rem;font-weight:600}
.hero-caption span {display:block;font-size:.76rem;color:var(--ink-soft);margin-top:4px}
.hero-intro .button-row {margin-top:20px}
.home-hero--wide .hero-principles {margin-top:28px;padding-top:0;border-top:0}
@media(min-width:1600px){.hero-panorama{min-height:620px}}
@media(max-width:900px){
 .hero-panorama{min-height:480px}.hero-panorama__caption{padding:100px 0 44px}
 .hero-intro{gap:32px}.hero-intro__actions{justify-self:start}
 .home-hero--wide .hero-title{font-size:clamp(2.2rem,5vw,3.2rem)}
}
@media(max-width:680px){
 .home-hero.home-hero--wide{padding-bottom:32px}
 .hero-panorama{min-height:440px}.hero-panorama__caption{padding:80px 0 36px}
 .home-hero--wide .hero-photo{object-position:50% 100%}
 .hero-panorama .hero-copy .eyebrow{font-size:.64rem;letter-spacing:.035em;margin-bottom:14px}
 .home-hero--wide .hero-title{font-size:clamp(1.7rem,7.4vw,2.5rem);line-height:1.65;letter-spacing:0}
 .hero-intro{grid-template-columns:1fr;gap:24px;padding-top:28px}
 .home-hero--wide .hero-lead{font-size:.93rem;line-height:1.95}
 .hero-intro__actions{width:100%}.hero-intro .button-row{gap:8px;margin-top:18px}
 .hero-intro .button{flex:1 1 auto}.hero-caption strong{font-size:1.12rem}
}
@media(max-width:360px){.hero-panorama{min-height:400px}.hero-panorama .hero-copy .eyebrow{font-size:.58rem}}

/* Both publication sources remain visible, with three recent articles each. */
.publications {margin-top:44px;padding:0 0 48px;background:#fff;scroll-margin-top:132px}
.publications > .container {padding-top:36px;border-top:1px solid var(--line)}
.publications__header {margin-bottom:32px}
.publications__header .eyebrow {font-size:.65rem;letter-spacing:.15em;margin-bottom:8px}
.publications__header h2 {font-size:1.6rem;line-height:1.5;font-weight:600;letter-spacing:.025em}
.publications__panel {scroll-margin-top:132px}
.publications__panel + .publications__panel {margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}
.publications__channel {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
.publications__channel h3 {font-size:1.12rem;font-weight:600;color:var(--ink);line-height:1.6}
.publications__channel .text-link {margin-left:auto;font-size:.76rem;white-space:nowrap}
.publications__grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.publications h2,.publications h3,.publications h4 {font-family:var(--font-sans)}
.publication-card {min-width:0}
.publication-card a {display:block;color:var(--ink);text-decoration:none}
.publication-card a:focus-visible {outline:2px solid var(--forest);outline-offset:5px}
.publication-card__image {display:block;aspect-ratio:1.91/1;overflow:hidden;border-radius:3px;background:var(--paper-2)}
.publication-card__image img {display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.publication-card__meta {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 8px;color:var(--ink-soft);font-size:.72rem;letter-spacing:.045em;line-height:1.4}
.publication-card__meta > span {font-size:1rem;color:var(--forest)}
.publication-card h4 {font-size:1rem;line-height:1.85;font-weight:500;letter-spacing:.01em;overflow-wrap:anywhere;margin:0}
.publication-card a:hover h4 {color:var(--forest);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.publication-card a:hover img {transform:scale(1.025)}
.publications__empty {grid-column:1/-1;margin:0;padding:24px 0;font-size:.9rem;color:var(--ink-soft)}
.publications__empty a {color:var(--forest);text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.publications__grid{gap:22px}.publication-card h4{font-size:.92rem}.publications__header h2{font-size:1.45rem}}
@media(max-width:680px){
 .publications{margin-top:32px;padding-bottom:24px;scroll-margin-top:130px}.publications > .container{padding-top:28px}
 .publications__header{margin-bottom:26px}.publications__header h2{font-size:1.35rem}
 .publications__panel + .publications__panel{margin-top:32px;padding-top:26px}
 .publications__channel{gap:12px;flex-wrap:wrap;margin-bottom:18px}.publications__channel h3{font-size:1.04rem}.publications__channel .text-link{font-size:.7rem}
 .publications__grid{grid-template-columns:1fr;gap:24px}
 .publication-card a{display:grid;grid-template-columns:112px minmax(0,1fr);column-gap:16px;row-gap:5px}
 .publication-card__image{grid-row:1/3;align-self:start}
 .publication-card__meta{margin:0;align-self:end;font-size:.68rem}
 .publication-card h4{font-size:.86rem;line-height:1.8}
}
@media(max-width:360px){.publication-card a{grid-template-columns:96px minmax(0,1fr);column-gap:12px}.publications__channel .text-link{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){.publication-card__image img{transition:none}}
