/* RDJ Existing Refinement R2 — append AFTER the existing stylesheet.
   No palette, font-family, content, logo, hero image or backend changes. */
html{scroll-padding-top:100px}
/* Prevent grid children forcing layouts beyond their container. */
.section-heading>*,.split-intro>*,.people-page-grid>*,.people-feature>*,.footer-grid>*,.home-insight-card>*,.contact-premium>*{min-width:0}
/* Original 42% + 58% columns left no room for the 56px gap. */
@media(min-width:861px){.people-page-grid{grid-template-columns:minmax(0,42fr) minmax(0,58fr)}}
/* Keep original typography; gently improve small supporting text. */
.expert-card p,.why-grid p,.selected-grid p,.service-main-card p,.process-grid p,.person-row p,.leader-card p{font-size:.875rem;line-height:1.7}
.expert-card{display:flex;flex-direction:column}
.expert-card .text-link{margin-top:auto;padding-top:12px}
.expert-card p{min-height:0}
/* Keep home industry text in normal flow so enlarged text cannot clip. */
.industry-card{display:flex;align-items:flex-end}
.industry-card>div{position:relative;inset:auto;width:100%;padding:24px}
.industry-card p{font-size:.875rem;line-height:1.6}
/* Preserve the whole existing square publication cover. */
.home-insight-card img{height:auto;min-height:0;aspect-ratio:1;object-fit:contain;align-self:center}
.home-insight-card>div{display:flex;flex-direction:column}
.home-insight-card h3{line-height:1.25}
.home-insight-card a{margin-top:auto}
.insight-pub-card img,.insight-featured-pub .pub-cover img{object-fit:contain}
/* Keep existing colours, photo crops, header and navigation. */
.site-footer a,.people-list span{overflow-wrap:anywhere}
@media(max-width:560px){
 .hero h1{font-size:clamp(2.45rem,12vw,3.55rem);line-height:1.05}
 .hero-copy{overflow-wrap:break-word}
 .people-list span{line-height:1.55}
 .home-insight-card>div{padding:16px}
 .home-insight-card span,.home-insight-card a{font-size:.75rem}
 .formgrid input,.formgrid select,.formgrid textarea{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){.btn,.expert-card,.service-main-card{transition:none}.btn:hover{transform:none}}

/* R5: targeted People / Insights repair. Load after existing style.css. */
.hero-people{background-image:url('../img/people-hero-clean-r5.webp')!important}
.hero-people h1,.hero-people p{text-shadow:none!important}
/* Correct percentage columns + gap without changing the people content. */
@media(min-width:861px){.people-page-grid{grid-template-columns:minmax(0,42fr) minmax(0,58fr)}}
.people-page-grid>*,.person-row>*,.insight-featured-pub>*{min-width:0}
/* Override HTML height attributes: keep the entire original cover visible. */
.insight-featured-pub .pub-cover img,.insight-pub-card img{
 display:block!important;width:100%!important;height:auto!important;
 max-width:100%!important;aspect-ratio:auto!important;
 object-fit:contain!important;object-position:center!important;
 transform:none!important;
}
.insight-pub-card>a:first-child{
 display:flex;align-items:center;justify-content:center;
 aspect-ratio:1/1;background:#fff;overflow:hidden;
}
.insight-pub-card>a:first-child img{max-height:100%!important}
.insight-library{align-items:stretch}
.insight-pub-card{min-width:0;height:100%}
.insight-pub-card .pub-body{display:flex;flex-direction:column;flex:1;min-width:0}
.insight-pub-card .pub-links{margin-top:auto}
@media(min-width:961px){.insight-library{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:701px) and (max-width:960px){.insight-library{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.insight-library{grid-template-columns:minmax(0,1fr)}}

/* R13: complete image lockups. No live tagline, clipping overlays or old logo background. */
.site-header,.site-header.scrolled{height:86px!important}
.site-header .nav-shell{gap:28px}
a.rdj-brand-r13{display:block!important;position:relative!important;flex:0 0 auto;line-height:0!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
a.rdj-brand-r13:before,a.rdj-brand-r13:after{content:none!important;display:none!important}
.site-header a.rdj-brand-r13{width:250px;height:auto}
a.rdj-brand-r13>img{display:block!important;position:static!important;width:100%!important;height:auto!important;max-width:100%!important;min-width:0!important;transform:none!important;clip-path:none!important;filter:none!important;object-fit:contain!important;opacity:1!important;visibility:visible!important}
.site-footer a.rdj-brand-r13{width:250px;max-width:100%;height:auto}
.menu{gap:22px}
html{scroll-padding-top:102px}
@media(min-width:861px) and (max-width:1100px){.menu{gap:14px;font-size:.75rem}.menu .nav-cta{padding:11px 12px;font-size:.64rem}}
@media(max-width:1050px){
.site-header,.site-header.scrolled{height:78px!important}
.site-header a.rdj-brand-r13{width:230px;max-width:calc(100% - 66px)}
.hamb{display:block!important;flex:0 0 44px!important;width:44px;height:44px;margin-left:auto}
.menu{position:absolute;top:78px;left:0;right:0;background:#071521;border-top:1px solid rgba(255,255,255,.1);display:none;flex-direction:column;align-items:stretch;padding:14px 18px 22px;gap:0;max-height:calc(100dvh - 78px);overflow-y:auto}
.menu.open{display:flex}.menu>a{padding:14px 4px;min-height:48px;border-bottom:1px solid rgba(255,255,255,.09)}
.menu .nav-cta{margin-top:12px;text-align:center;justify-content:center}
html{scroll-padding-top:94px}
}
@media(max-width:370px){.site-header .nav-shell{gap:16px}.site-header a.rdj-brand-r13{width:218px}}
