.btn-primary,.btn-ghost,.navcta,.v-link,.report-card .read,.client-card .open,.show-card .open{font-family:'Literata',serif;}
.btn-primary,.btn-ghost,.navcta{transition:background-color .18s ease,color .18s ease,border-color .18s ease;}
.btn-primary:hover{background:#39444B;}
.btn-ghost:hover,.navcta:hover{background:var(--deepblue);}
a:focus-visible,button:focus-visible{outline:2px solid var(--ochre);outline-offset:5px;}
.hero{padding:100px 40px 92px;}
.hero h1{font-size:clamp(46px,6vw,78px);}
.hero-ctas .btn-primary,.hero-ctas .btn-ghost{min-height:52px;align-items:center;justify-content:center;}
.mission{background:var(--paper);padding:90px 40px;}
.mission .m-inner{grid-template-columns:1fr 1fr;gap:72px;align-items:start;}
.mission h2{font-size:clamp(34px,3.7vw,49px);line-height:1.18;margin-top:20px;max-width:520px;}
.mission p{font-size:17px;line-height:1.7;}
.mission p:first-child{font-family:'Crimson Pro',serif;font-size:25px;line-height:1.25;margin-bottom:24px;}
.m-principles{margin-bottom:0;padding-top:0;}
.m-principles li{font-family:'Literata',serif;font-size:16px;line-height:1.65;color:var(--ink);padding:15px 0;gap:14px;}
.flagship{padding:80px 40px;}
.fl-context .panel-note{font-family:'Literata',serif;font-size:15px;line-height:1.65;}
.fl-context .panel-note b{font-weight:400;}
.fl-play:hover .disc{background:var(--paper);}
.research-evidence{padding:88px 40px 92px;max-width:1260px;margin:auto;border-bottom:1px solid var(--line);}
.research-head{max-width:680px;margin-bottom:34px;}
.research-head h2{font-size:clamp(32px,3.6vw,44px);line-height:1.14;margin-top:14px;}
.research-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-bottom:30px;}
.research-card{display:flex;flex-direction:column;align-items:stretch;border-top:1px solid var(--line);padding-top:18px;}
.research-card .eyebrow{font-size:10.5px;display:flex;justify-content:space-between;gap:10px;letter-spacing:.025em;}
.research-image{aspect-ratio:1.6;overflow:hidden;margin:18px 0 22px;background:var(--paper-dim);}
.research-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .35s ease;}
.research-card h3{font-size:25px;line-height:1.15;margin-bottom:14px;}
.research-card p{font-size:14.5px;line-height:1.65;color:var(--ink-soft);flex:1;}
.research-card .read{margin-top:20px;font-size:14px;}
.services{padding-top:34px;}
.service-grid{gap:56px;margin-top:0;}
.service-card{background:transparent;border:0;border-top:1px solid var(--line);padding:30px 0 0;}
.service-card h3{font-size:30px;line-height:1.2;margin:0 0 18px;}
.service-card p{font-size:16px;line-height:1.75;max-width:520px;}
.client-card{background:transparent;border:0;padding:0 0 26px;border-bottom:1px solid var(--line);}
.client-card .cc-media{margin:0 0 24px;aspect-ratio:16/9;}
.client-card .cc-media img{transition:transform .35s ease;}
.client-card:hover{background:transparent;border-color:var(--line);}
.client-card h3{font-size:26px;line-height:1.2;}
.cb-grid{gap:36px;}
.showcase{background:transparent;gap:32px;}
.show-card{background:transparent;padding:0 0 26px;border-bottom:1px solid var(--line);}
.show-card:hover{background:transparent;}
.show-card h3{font-size:25px;}
.show-media{aspect-ratio:16/10;margin:22px 0 18px;}
.show-media img{transition:transform .35s ease;}
.show-card p{font-size:15px;line-height:1.65;}
.show-card .open,.client-card .open{font-size:14px;}
.v-link{font-size:15px;border-bottom:1px solid var(--line);transition:border-color .18s ease;}
.v-link:hover{gap:9px;border-color:var(--ink);}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .research-card:hover .research-image img,.client-card:hover .cc-media img,.show-card:hover .show-media img{transform:scale(1.025);}
  .research-card .read,.client-card .open,.show-card .open{transition:transform .18s ease;}
  .research-card:hover .read,.client-card:hover .open,.show-card:hover .open{transform:translateX(3px);}
}
@media(max-width:900px){
  .hero{padding:64px 20px;}
  .mission{padding:60px 20px;}
  .mission .m-inner{grid-template-columns:1fr;gap:32px;}
  .mission h2{max-width:560px;}
  .flagship{padding:60px 20px;}
  .research-evidence{padding:60px 20px;}
  .research-grid{grid-template-columns:1fr;gap:34px;}
  .research-card .eyebrow{font-size:11px;}
  .research-image{aspect-ratio:1.8;}
  .service-grid{grid-template-columns:1fr;gap:34px;}
  .showcase,.cb-grid{grid-template-columns:1fr;gap:34px;}
  .hero-ctas{gap:12px;}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none!important;transition:none!important;}
}
section[id],[id="research-title"]{scroll-margin-top:110px;}
@media(max-width:600px){
  .hero-inner{gap:26px;}
  .hero-mark{max-width:140px;justify-self:end;}
  .hero-ctas .btn-primary,.hero-ctas .btn-ghost{width:100%;}
}
.hero{background:var(--hero-paper);}
.mission{background:var(--paper);}
ul{list-style:none;}
ul li::marker{content:'';}
.m-principles li::before{content:none;}
.m-principles li{display:block;}
.services{padding-top:64px;}
.services-intro .lead{padding:0;max-width:1180px;margin:0 auto 28px;}
.services-intro .lead h2{margin-top:10px;}
.service-card{border-top:0;padding-top:0;}
.service-card p{line-height:1.55;max-width:none;}
.service-grid{gap:44px;}
.research-card{border-top:0;}
@media(max-width:900px){.services{padding-top:48px;}.service-grid{gap:28px;}}
.section-head{
  max-width:1244px;margin:0 auto;padding:72px 32px 64px;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 64px;
}
.section-head .wrap{display:contents;}
.section-head .eyebrow{grid-column:1/-1;margin-bottom:4px;}
.section-head h1{grid-column:1;grid-row:2/span 2;font-size:clamp(36px,4vw,56px);line-height:1.08;max-width:none;margin:0;}
.section-head p{grid-column:2;font-size:17px;line-height:1.65;max-width:none;margin:0;}
.browse{max-width:1244px;margin:0 auto;padding:24px 32px;}
.back,.article-head{max-width:784px;padding-left:32px;padding-right:32px;}
.article-head{padding-top:28px;padding-bottom:30px;}
.article-head h1{line-height:1.1;margin-top:20px;margin-bottom:22px;}
.rp-shell{
  max-width:none;width:100%;margin:0 auto;padding:0 32px;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,720px) minmax(0,1fr);gap:0;justify-content:normal;
}
.rp-shell article{grid-column:2;margin:0;padding:20px 0 80px;min-width:0;}
.rp-rule{display:none;}
.rp-toc{grid-column:3;margin-left:64px;width:min(200px,calc(100% - 80px));top:110px;max-height:calc(100vh - 140px);overflow-y:auto;padding-right:8px;}
.rp-toc .toc-track{grid-template-columns:1fr;gap:0;}
.rp-toc .toc-path,.rp-toc li a::after{display:none;}
.rp-toc li a{font-size:13px;line-height:1.5;}
.rp-toc li a::before{content:none;}
.rp-toc li.active::after{height:1px;}
.rp-shell article p,.rp-shell article li{font-size:18px;line-height:1.75;}
.rp-shell article p.lede{font-size:20px;line-height:1.65;}
.rp-shell article h2,.rp-shell article h3{line-height:1.2;}
.rp-shell article img{max-width:100%;height:auto;}
@media(max-width:1319px){
  .rp-shell{display:block;max-width:784px;}
  .rp-toc{display:none;}
}
@media(max-width:900px){
  .section-head{padding:48px 24px 40px;grid-template-columns:1fr;gap:18px;}
  .section-head h1{grid-column:1;grid-row:auto;}
  .section-head p{grid-column:1;}
  .section-head .eyebrow{margin-bottom:0;}
  .browse{padding:20px 24px;}
  .back,.article-head{padding-left:24px;padding-right:24px;}
  .rp-shell{padding-left:24px;padding-right:24px;}
  .rp-shell article p,.rp-shell article li{font-size:17px;line-height:1.7;}
  .rp-shell article p.lede{font-size:19px;}
}
.hero p.lede{font-size:18px;line-height:1.65;max-width:620px;color:var(--ink);}
.mission .m-inner > div > h3{font-size:30px;line-height:1.2;margin:0 0 24px;}
.print-band{background:var(--paper);color:var(--ink);max-width:1244px;margin:0 auto;padding:48px 32px 64px;border-top:1px solid var(--line);}
.print-inner{grid-template-columns:128px minmax(0,1fr);gap:36px;align-items:start;}
.book-cover{width:128px;padding:16px 12px;box-shadow:none;border-color:var(--line);}
.book-cover .bc-title{font-size:25px;}
.book-cover .bc-sub{font-size:8px;line-height:1.4;}
.book-cover .bc-author{font-size:9px;}
.print-band h2{font-size:28px;color:var(--ink);max-width:850px;margin:0 0 12px;}
.print-band p{font-size:15px;line-height:1.65;color:var(--ink-soft);max-width:850px;}
.print-band .pb-meta{font-family:'Literata',serif;color:var(--ink-soft);font-size:13px;}
.pb-link{color:var(--deepblue);border-bottom:1px solid var(--line);font-size:14px;}
.pb-link:hover{border-color:var(--deepblue);}
.pb-article{margin-top:32px;padding-top:26px;border-top:1px solid var(--line);}
.pb-article h3{color:var(--ink);font-size:24px;margin-top:0;}
body:has(.print-band) .grid-head{max-width:1244px;margin:0 auto;padding-left:32px;padding-right:32px;}
body:has(.print-band) .build-grid{max-width:1180px;margin-left:auto;margin-right:auto;gap:32px;border:0;background:transparent;}
body:has(.print-band) .build-card{background:transparent;padding:24px 0;}
body:has(.print-band) .build-card h3{margin-top:0;font-size:24px;line-height:1.2;}
@media(max-width:900px){
  .print-band{padding:40px 24px;}
  .print-inner{grid-template-columns:100px minmax(0,1fr);gap:24px;}
  .book-cover{width:100px;}
  .book-cover .bc-title{font-size:21px;}
  .book-cover .bc-sub{font-size:7px;}
  body:has(.print-band) .grid-head{padding-left:24px;padding-right:24px;}
  body:has(.print-band) .build-grid{margin:24px;gap:12px;}
}
@media(max-width:600px){.print-inner{grid-template-columns:1fr;}.book-cover{display:none;}}
.grid-head .wb-title{line-height:1.15;max-width:900px;}
.proj-body .data-note{font-family:'Literata',serif;font-size:17px;line-height:1.65;color:var(--ink);}
