/* Denkwerk System — Research Hub v3.6 */
.page-research-hub{
  --rh-paper:#FDF8EF;
  --rh-paper-2:#FEFBF5;
  --rh-paper-3:#F7EEDC;
  --rh-ink:#171A1F;
  --rh-ink-2:#3A4048;
  --rh-muted:#69727D;
  --rh-line:#DDCBAA;
  --rh-line-soft:#E9DECB;
  --rh-amber:#C28A25;
  --rh-amber-dark:#8A631B;
  --rh-max:1500px;
  --rh-gutter:clamp(1.2rem,3vw,3.1rem);
  background:var(--rh-paper);
  color:var(--rh-ink);
}
.page-research-hub .site-footer{background:#171A1F}
.rh-wide-shell{width:min(var(--rh-max),calc(100% - 2*var(--rh-gutter)));margin-inline:auto}
.rh-button{display:inline-flex;align-items:center;gap:.55rem;padding:.72rem .95rem;border-radius:5px;background:var(--rh-amber);color:#fff;text-decoration:none;font-family:var(--sans);font-size:.66rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase;transition:transform .16s ease,background .16s ease}.rh-button:hover{transform:translateY(-1px);background:#AD771B}.rh-text-link{display:inline-block;color:var(--rh-amber-dark);font-family:var(--sans);font-size:.66rem;font-weight:700;letter-spacing:.04em;text-decoration:none;border-bottom:1px solid currentColor}

/* Hero */
.rh-hero{position:relative;min-height:610px;display:flex;overflow:hidden;border-bottom:1px solid var(--rh-line);background:var(--rh-paper)}
.rh-hero-media{position:absolute;inset:0}.rh-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(.86) contrast(.98)}
.rh-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(253,248,239,.995) 0%,rgba(253,248,239,.99) 28%,rgba(253,248,239,.90) 42%,rgba(253,248,239,.42) 56%,rgba(253,248,239,.04) 76%)}
.rh-hero-inner{position:relative;z-index:2;display:flex;align-items:center;min-height:610px;padding:2.7rem 0 3rem}
.rh-hero-copy{width:min(790px,53vw);padding-left:clamp(.25rem,1.3vw,1.1rem)}
.rh-hero .breadcrumbs{margin:0 0 1.05rem;font-size:.67rem}.rh-hero .kicker{margin:0 0 .55rem;font-size:.68rem}
.rh-hero h1{max-width:10.5ch;margin:0 0 1rem;font-size:clamp(4rem,6.1vw,6.7rem);line-height:.94;letter-spacing:-.035em;color:var(--rh-ink)}
.rh-hero .lead{max-width:38em;margin:0 0 .78rem;font-size:clamp(1.05rem,1.25vw,1.25rem);line-height:1.52;color:var(--rh-ink-2)}
.rh-hero-note{max-width:44em;margin:0 0 1.35rem;color:var(--rh-muted);font-size:.86rem;line-height:1.55}

/* Portfolio intro */
.rh-portfolio{padding:clamp(2.65rem,3.6vw,3.55rem) 0;border-bottom:1px solid var(--rh-line);background:linear-gradient(180deg,#FEFBF5 0%,#FDF8EF 100%)}
.rh-portfolio-intro{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);gap:clamp(1.6rem,3vw,3.4rem);align-items:start;margin-bottom:1.25rem}
.rh-portfolio-intro h2{max-width:20.5ch;margin:0;font-size:clamp(2.55rem,3.65vw,4.05rem);line-height:1.01;letter-spacing:-.025em}
.rh-portfolio-intro>p{max-width:39rem;margin:1.72rem 0 0;color:var(--rh-ink-2);font-size:.9rem;line-height:1.58}

/* Programme cards */
.rh-programme-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:stretch}
.rh-programme-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--rh-line);border-radius:17px;overflow:hidden;background:#FFFDF8;box-shadow:0 18px 45px rgba(23,26,31,.035)}
.rh-programme-media{position:relative;display:block;height:290px;overflow:hidden;border-bottom:1px solid var(--rh-line)}
.rh-programme-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(23,26,31,.18) 100%)}
.rh-programme-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.rh-programme-media:hover img{transform:scale(1.015)}
.rh-programme-card--capital .rh-programme-media img{object-position:center 49%}.rh-programme-card--axis .rh-programme-media img{object-position:center 51%}
.rh-programme-number{position:absolute;z-index:2;left:1rem;bottom:.85rem;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(253,248,239,.88);backdrop-filter:blur(8px);color:var(--rh-amber-dark);font-family:var(--serif);font-size:1.05rem}
.rh-programme-body{display:flex;flex:1;flex-direction:column;padding:1.08rem 1.2rem 1.18rem}
.rh-programme-status{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding-bottom:.75rem;border-bottom:1px solid var(--rh-line-soft);font-family:var(--sans)}
.rh-programme-status span{font-size:.6rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase;color:var(--rh-amber-dark)}.rh-programme-status em{font-style:normal;font-size:.59rem;line-height:1.35;color:var(--rh-muted);text-align:right}
.rh-programme-body h3{margin:.72rem 0 .45rem;font-size:clamp(2.2rem,2.75vw,3.25rem);line-height:1.01;letter-spacing:-.025em}.rh-programme-body h3 a{color:inherit;text-decoration:none}
.rh-programme-lead{max-width:30em;margin:0 0 .7rem;font-family:var(--serif);font-size:1.12rem;line-height:1.42;color:var(--rh-ink)}
.rh-programme-copy{margin:0 0 .9rem;color:var(--rh-ink-2);font-size:.81rem;line-height:1.62}
.rh-programme-facts{margin:0;border-top:1px solid var(--rh-line);border-bottom:1px solid var(--rh-line)}
.rh-programme-facts>div{display:grid;grid-template-columns:145px 1fr;gap:.8rem;padding:.72rem 0;border-bottom:1px solid var(--rh-line-soft)}.rh-programme-facts>div:last-child{border-bottom:0}
.rh-programme-facts dt,.rh-programme-facts dd{margin:0}.rh-programme-facts dt{font-family:var(--sans);font-size:.57rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase;color:var(--rh-amber-dark)}.rh-programme-facts dd{font-size:.72rem;line-height:1.45;color:var(--rh-ink-2)}
.rh-programme-question{display:grid;grid-template-columns:90px 1fr;gap:.75rem;margin-top:.8rem;padding:.75rem .85rem;border-left:2px solid var(--rh-amber);background:var(--rh-paper-3)}
.rh-programme-question span{font-family:var(--sans);font-size:.58rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--rh-amber-dark)}.rh-programme-question p{margin:0;font-size:.76rem;line-height:1.5;color:var(--rh-ink-2)}
.rh-programme-actions{display:flex;align-items:center;gap:1rem;margin-top:auto;padding-top:.9rem}

@media(max-width:1120px){
  .rh-hero-copy{width:min(720px,60vw)}.rh-programme-media{height:255px}.rh-programme-facts>div{grid-template-columns:125px 1fr}.rh-programme-body{padding:1.15rem}
}
@media(max-width:900px){
  .rh-hero{min-height:auto;display:block}.rh-hero-media{position:relative;height:330px}.rh-hero-media::after{background:linear-gradient(180deg,rgba(253,248,239,.02),rgba(253,248,239,.13))}.rh-hero-media img{object-position:63% center}.rh-hero-inner{min-height:0;padding:1.8rem 0 2.25rem}.rh-hero-copy{width:100%;padding-left:0}.rh-hero h1{max-width:12ch;font-size:clamp(3.6rem,10vw,5.7rem)}.rh-hero .lead{max-width:42em}.rh-hero-note{max-width:48em}
  .rh-portfolio-intro{grid-template-columns:1fr;gap:.55rem}.rh-portfolio-intro>p{margin:0;max-width:52rem}.rh-programme-grid{grid-template-columns:1fr}.rh-programme-media{height:310px}.rh-programme-body h3{font-size:3rem}.rh-programme-lead{max-width:40em}.rh-programme-copy{font-size:.85rem}
}
@media(max-width:680px){
  .rh-wide-shell{width:min(100% - 2rem,var(--rh-max))}.rh-hero-media{height:245px}.rh-hero-media img{object-position:67% center}.rh-hero-inner{padding:1.25rem 0 1.8rem}.rh-hero h1{font-size:3.55rem;margin-bottom:.8rem}.rh-hero .lead{font-size:.95rem}.rh-hero-note{font-size:.78rem}.rh-button{font-size:.61rem}
  .rh-portfolio{padding:2.35rem 0 2.7rem}.rh-portfolio-intro{margin-bottom:1.05rem}.rh-portfolio-intro h2{font-size:2.45rem}.rh-portfolio-intro>p{font-size:.82rem}
  .rh-programme-media{height:205px}.rh-programme-body{padding:1rem}.rh-programme-status{display:block}.rh-programme-status em{display:block;margin-top:.22rem;text-align:left}.rh-programme-body h3{font-size:2.25rem}.rh-programme-lead{font-size:1rem}.rh-programme-copy{font-size:.78rem}.rh-programme-facts>div{grid-template-columns:1fr;gap:.25rem;padding:.65rem 0}.rh-programme-question{grid-template-columns:1fr;gap:.35rem}.rh-programme-actions{align-items:flex-start;flex-direction:column}
}


/* v3.7 density refinement */
.page-research-hub #briefing.section-rule{padding:3.7rem 0 3.9rem}
.page-research-hub #briefing h2{font-size:clamp(2.2rem,3.2vw,3.45rem);line-height:1.04}
@media(max-width:680px){.page-research-hub #briefing.section-rule{padding:2.8rem 0 3rem}}
