/* PORTFOLIO REFRESH — Quiet editorial design.
   Navy blue, cool ivory, generous images, short upfront stories.
   This is deliberately layered after the original site styles to preserve
   all research, evidence, galleries, links, and responsive app components. */
:root {
  --ed-navy: #1c456f;
  --ed-deep: #123556;
  --ed-mid: #406c98;
  --ed-blue: #91afcf;
  --ed-pale: #f6f9fd;
  --ed-white: #fbfdff;
  --ink: #1a3e65;
  --navy: #1c456f;
  --navy-2: #123556;
  --teal: #406c98;
  --teal-deep: #2b5684;
  --mint: #e3edf9;
  --mist: #edf3fb;
  --paper: #f6f9fd;
  --muted: #546b83;
  --line: #d5e3f1;
  --white: #fcfdff;
  --shell: 1260px;
}
html{ scroll-padding-top: 85px; }
body, body.kb-editorial{ background:#f6f9fd; color:#1a3e65; }
body{ font-family: 'Trebuchet MS', Arial, Helvetica, sans-serif; font-size: 16px; line-height:1.65; }
h1,h2,h3,h4, .kb-editorial h1,.kb-editorial h2,.kb-editorial h3 { font-family: Georgia,'Times New Roman',serif; }
h1,h2,h3{ letter-spacing:-.045em; }
em{ font-family:Georgia,'Times New Roman',serif; font-weight:400; }
:focus-visible{ outline:3px solid #6296cb; outline-offset:4px; }
::selection{ background:#cfe3f8; color:#13263e; }
.shell{ width:min(calc(100% - 76px),var(--shell)); }
.section-pad{padding:clamp(64px,7vw,100px) 0;}
.soft-section,body.kb-editorial .soft-section{background:#ecf3fb!important;}
.section-heading{max-width:900px;margin-bottom:36px;}
.section-heading h2{font-size:clamp(2.2rem,3.7vw,3.9rem)!important;line-height:1.1;letter-spacing:-.045em;margin:0 0 17px;color:#1a3e65!important;font-weight:400;text-wrap:balance;}
.section-heading h2 em{font-style:italic;}
.section-heading .lede{font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.6;max-width:780px;color:#2d598f;}
.eyebrow,.ed-label,.hero-label,.film-card .meta,.research-card .meta{color:#406c98!important;letter-spacing:.16em;font-weight:760;font-size:.75rem;}
/* streamlined navigation: more room for content, quieter visual style */
.site-header,body.kb-editorial .site-header{background:#1b426e!important;border:0!important;box-shadow:none!important;position:relative;z-index:20;}
.site-header .nav-wrap{min-height:72px;gap:28px;}
.site-header .brand{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(1.35rem,2vw,1.7rem);letter-spacing:-.05em;gap:12px;color:#f9fbff!important;}
.site-header .brand-mark{border:1px solid #98b1d0!important;background:transparent!important;color:#e9eff6!important;border-radius:100%;font:700 .7rem Arial,sans-serif;width:35px;height:35px;}
.site-header .nav{font-family:Arial,Helvetica,sans-serif;gap:clamp(14px,2.1vw,30px);font-size:.82rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;}
.site-header .nav a{padding:26px 0 21px;border-bottom:2px solid transparent;color:#e9eff6!important;opacity:.78;white-space:nowrap;}
.site-header .nav a.active,.site-header .nav a:hover{border-bottom-color:#c7d6e8!important;color:#fff!important;opacity:1;}
.footer{background:#122f52!important;color:#f5f9ff!important;border:0!important;}
.footer a{color:inherit;text-decoration:underline;text-underline-offset:4px;}
.footer-inner{font-size:.8rem;letter-spacing:.03em;}
/* HOME HERO */
body:not(.kb-editorial) .home-hero{padding:0 0 78px;background:#f6f9fd;}
.home-hero .hero-topline{padding:27px 0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #c5d5e8;color:#4f6a8c;font-size:.67rem;font-weight:700;letter-spacing:.2em;}
.home-hero .home-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(310px,.7fr);align-items:center;gap:clamp(50px,7vw,112px);}
.home-hero .hero-intro{padding:72px 0 38px;min-width:0;}
.home-hero .editorial-kicker{color:#31609a;font-size:.78rem;text-transform:uppercase;letter-spacing:.17em;font-weight:760;margin:0 0 22px;}
.home-hero .hero-display{font-family:Georgia,'Times New Roman',serif;font-size:clamp(3.8rem,6.4vw,6.9rem)!important;line-height:1.015;letter-spacing:-.065em;font-weight:400;margin:0 0 28px;max-width:880px;color:#1a3e65;}
.home-hero .hero-display em{color:#305e96;font-weight:400;font-style:italic;}
.home-hero .hero-description{max-width:660px;color:#284f7e;font-size:clamp(1rem,1.3vw,1.14rem);line-height:1.78;margin:0 0 26px;}
.home-hero .hero-description strong{font-weight:800;color:#1a3e65;}
.home-hero .hero-discover{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid #274d7b;padding:10px 0;font-size:.88rem;color:#1b426e;font-weight:750;text-decoration:none;}
.home-hero .hero-discover span{font-size:1.2rem;}
.home-hero .hero-discover:hover{gap:33px;}
.home-hero .hero-portrait{margin:52px 0 0;position:relative;max-width:none;}
.home-hero .home-portrait-photo{width:100%;height:460px;max-height:none;object-fit:cover;object-position:center 34%;border-radius:220px 220px 8px 8px;filter:saturate(.92);}
.home-hero .portrait-caption{text-align:center;margin:13px 0 0;font-size:.79rem;color:#47607e;font-style:italic;}
/* SELECTED WORK: graphic first, concise summaries second */
#work{background:#1b426e!important;color:#f6faff;padding:78px 0 92px;}
#work .section-heading{max-width:880px;margin:0 0 42px;}
#work .eyebrow{color:#c5d8eb!important;}
#work .section-heading h2{color:#f6faff!important;font-size:clamp(2.5rem,4.8vw,4.7rem)!important;margin:0 0 13px;}
#work .section-heading h2 em{color:#dbeaf9;}
#work .section-heading .lede{color:#e0ebf8;font-size:1.02rem;max-width:620px;}
#work .path-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px;align-items:stretch;}
#work .path-card{display:flex;flex-direction:column;min-height:0;padding:12px 12px 20px;background:#f9fbff;border:0;border-radius:145px 145px 7px 7px;box-shadow:none;color:#1b426e;text-decoration:none;transition:transform .2s ease,background .2s ease;overflow:hidden;}
#work .path-card:hover{transform:translateY(-6px);background:#fcfdff;}
#work .path-card:focus-visible{outline:3px solid #a9cbee;outline-offset:5px;}
#work .path-num{margin:28px 10px 12px;text-align:center;color:#2f5d96;font:750 .7rem/1.5 Arial,Helvetica,sans-serif;letter-spacing:.16em;text-transform:uppercase;}
#work .path-image{width:100%;height:257px;border-radius:133px 133px 4px 4px;background:#e7eef9;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;}
#work .path-image img{width:100%;height:100%;object-fit:cover;display:block;}
#work .path-image-app{background:#e1ecf8;padding:19px 35%;}
#work .path-image-app img{width:auto;max-width:none;height:100%;object-fit:contain;filter:drop-shadow(0 12px 14px #1d3a5d35);}
#work .path-image-photo img{object-position:center 33%;}
#work .path-image-film img{object-fit:cover;}
#work .path-image-research{background:#dfeaf6;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:30px;text-align:left;}
#work .research-graphic-small{font:italic 1.05rem Georgia,serif;color:#2b5589;}
#work .research-graphic-main{font:400 clamp(2.3rem,3vw,3.25rem)/1.07 Georgia,serif;color:#1a3453;letter-spacing:-.07em;margin:8px 0 13px;}
#work .research-graphic-main em{color:#31619c;}
#work .research-graphic-footer{font:.7rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.11em;color:#2f5d96;}
#work .path-content{padding:22px 10px 4px;display:flex;flex-direction:column;flex:1;}
#work .path-card h3{font-size:clamp(1.46rem,1.85vw,2rem);line-height:1.13;margin:0 0 10px;color:#1a3e65!important;font-weight:400;letter-spacing:-.045em;}
#work .path-card p{color:#2f5d95;font-size:.89rem;line-height:1.55;max-width:none;margin:0 0 21px;}
#work .path-card p strong{font-weight:700;color:#204067;}
#work .path-card .path-link{margin-top:auto;padding:11px 0 0;border-top:1px solid #bbcbdf;color:#1d3a5d;font-size:.78rem;font-weight:800;}
#work .path-card .path-link span{float:right;}
/* FEATURE: split editorial layout with one strong visual */
.home-featured-section{background:#eff5fc!important;padding:86px 0;}
.home-featured-project{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(35px,5vw,85px);border:0;border-radius:0;box-shadow:none;background:transparent;padding:0;}
.home-featured-visual{order:2;min-height:450px;background:#deebf9;border-radius:5px;position:relative;overflow:hidden;}
.home-featured-visual::before{content:'05';position:absolute;left:24px;top:-38px;font:italic 13rem Georgia,serif;color:#b7c9de;opacity:.6;pointer-events:none;}
.home-featured-device{z-index:1;width:min(220px,60%);margin:10px auto;}
.home-featured-visual-label{z-index:1;letter-spacing:.13em;text-transform:uppercase;font-size:.67rem;color:#305e96;}
.home-featured-copy{order:1;}
.home-featured-copy .eyebrow{margin:0 0 8px;color:#2a5386!important;}
.home-featured-copy .featured-chapter{font:.72rem Arial,sans-serif;letter-spacing:.15em;color:#376cad!important;margin-bottom:24px!important;}
.home-featured-copy h2{font-size:clamp(2.9rem,4.6vw,5rem)!important;line-height:1.06;letter-spacing:-.06em;font-weight:400;color:#1b426e!important;margin:0 0 26px;}
.home-featured-copy > p:not(.eyebrow){color:#2c578c;font-size:1.05rem;line-height:1.75;max-width:570px;}
.home-featured-copy p.home-featured-journey{color:#274d7c!important;font-size:.88rem!important;letter-spacing:.02em;font-style:normal;font-weight:700;padding-top:12px;border-top:1px solid #c2d2e6;}
.home-featured-copy .home-featured-cta{border-radius:3px;background:#1b426e!important;color:#f5f9ff!important;padding:15px 20px;text-decoration:none;font-size:.82rem;margin-top:15px;}
.home-featured-copy .home-featured-cta:hover{background:#265985!important;}
/* ALL PROJECT PAGES — typography and quiet surfaces */
.page-hero{background:#f6f9fd;padding:70px 0 65px!important;}
.page-hero .hero-label{background:none;border:0;border-radius:0;padding:0;font:.74rem Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;font-weight:750;color:#2a5386!important;}
.page-hero h1{font-size:clamp(2.7rem,5.8vw,5.5rem)!important;max-width:1150px!important;font-weight:400!important;letter-spacing:-.06em!important;line-height:1.06!important;color:#1a3e65!important;margin:23px auto!important;}
.page-hero h1 em{font-style:italic;color:#2f5c94;}
.page-hero .lede{color:#2d598f;font-size:clamp(1rem,1.25vw,1.16rem);max-width:720px!important;line-height:1.7;}
.research-grid{gap:18px;}
.research-card{border:1px solid #c4d4e7;background:#fcfdff;border-radius:5px;padding:32px 34px;min-height:0;box-shadow:none;}
.research-card .meta{font-size:.69rem;letter-spacing:.14em;}
.research-card h3{color:#1a3e65;font-weight:400;font-size:clamp(1.6rem,2.4vw,2.15rem);line-height:1.18;margin:19px 0;}
.research-card p{font-size:.93rem;line-height:1.75;color:#2e5b93;}
.research-card .card-end{border-color:#c7d6e9;color:#2d5a90;font-size:.81rem;}
.publication-link,.research-card a{color:#1d3a5d;}
/* Adovcacy visuals */
.advocacy-photo-grid{gap:16px;}
.advocacy-photo-card,.advocacy-news-card{background:#fcfdff;border-color:#c8d7e9!important;border-radius:5px!important;box-shadow:none!important;}
.advocacy-photo-copy h3{font-size:1.3rem;font-weight:400;letter-spacing:-.03em;color:#1b3555;}
.advocacy-photo-copy p{color:#496382;line-height:1.55;}
.advocacy-photo-copy .photo-kicker{color:#2a5385;}
.advocacy-news-card{background:#f1f6fc;}
.advocacy-impact .section-heading{max-width:940px;}
/* Film cards: meaningful thumbnail, concise readable copy and aligned actions */
.film-card{border:1px solid #ccdaeb;background:#fcfdff;border-radius:5px;display:flex;flex-direction:column;box-shadow:none;}
.film-card .film-video-thumb{display:block;position:relative;overflow:hidden;}
.film-card .film-video-thumb img{width:100%;height:240px;object-fit:cover;display:block;}
.film-card .film-body{padding:24px 24px 28px;display:flex;flex-direction:column;flex:1;}
.film-card .meta{color:#274d7b!important;}
.film-card h3{font-size:clamp(1.72rem,2.5vw,2.3rem);line-height:1.16;font-weight:400;color:#1a3e65;}
.film-card .film-body p{color:#2f5c94;font-size:.91rem;line-height:1.65;}
.film-grid .film-card .film-watch-links{margin-top:auto!important;padding-top:16px;align-self:stretch;}
.film-card a.film-watch-link{color:#214169;}
.award-card{border-radius:5px!important;background:#fcfdff!important;overflow:hidden;}
.award-card .award-body h3{color:#1a3e65;}
/* Kidney Buddy story: readable intro, arched gallery, intact links/content */
.kb-intro{background:#f6f9fd;padding:80px 0 88px;}
.kb-intro-grid{grid-template-columns:minmax(0,1.55fr) minmax(290px,.83fr);gap:clamp(38px,7vw,110px);}
.kb-intro h1{font-size:clamp(3.1rem,6.25vw,6.4rem);color:#1a3e65;letter-spacing:-.06em;line-height:1.03;}
.kb-intro h1 em{color:#305f98;}
.kb-intro .kb-intro-lead{font-family:Georgia,serif!important;font-size:1.55rem!important;font-weight:400!important;color:#204067;}
.kb-intro p:not(.ed-label){font-size:1.025rem;line-height:1.73;max-width:720px;color:#2a5284;}
.kb-intro figure img{max-height:510px;border-radius:220px 220px 6px 6px;object-fit:cover;object-position:center;}
.kb-intro figcaption{color:#516d90;}
.kb-pills span{border-color:#b0c3da;color:#22436c;background:#e7edf5;}
.kb-categories{background:#eaf1f9!important;padding:82px 0 98px;}
.kb-categories h2{font-size:clamp(2.6rem,4vw,4.4rem);font-weight:400;color:#1a3e65;}
.kb-categories .ed-section-sub{font-size:1rem;color:#31609a;}
.kb-categories .ed-cards{gap:18px;}
.kb-categories .ed-card{background:#1b426e!important;border:0;border-radius:125px 125px 6px 6px;color:#f1f6fb;box-shadow:none;}
.kb-categories .ed-card h3{color:#f6faff!important;font-weight:400;}
.kb-categories .ed-card p{color:#d6e1ef!important;}
.kb-categories .ed-num{color:#adc1d9;}
.kb-categories .ed-card-top{height:218px;min-height:218px;flex-basis:218px;padding:38px 14px 20px;}
.kb-categories .ed-card .ed-more{color:#f1f6fb!important;border-top:1px solid #5381ba;background:#1b426e!important;font-size:.92rem;justify-content:space-between;}
.kb-categories .ed-card .ed-more:hover{background:#d5e4f4!important;color:#1a3454!important;}
.kb-categories .ed-card img[src$="mit-presentations-card.webp"]{background:#e0e9f3;}
.kb-categories .ed-card-duo .ed-card-shot{background:#dbe5f1;}
.kb-categories .ed-card-tag{color:#1a3e65;}
.kb-categories .ed-card img{background:#dae4f0;}
.kb-end{background:#315f92!important;color:#f1f6fb;}
.kb-end h2,.kb-end p,.kb-end .ed-label{color:#f1f6fb!important;}
.kb-end .ed-cta{background:#f6faff;color:#1b426e;}
.incubator-download{background:#1b426e!important;}
.incubator-download h2,.incubator-download>.shell>p{color:#f6faff!important;}
.incubator-download .hero-download-card{background:#fcfdff!important;border-radius:5px!important;}
.incubator-download .hero-download-label,.incubator-download .hero-download-link,.incubator-download .hero-download-copy{color:#1b426e!important;}
.incubator-download .hero-download-text{color:#4d6888!important;}
.detail-heading{background:#f6f9fd!important;padding:64px 0 57px;}
.kb-editorial .detail-heading > .shell > h1{font-size:clamp(2.8rem,4.5vw,4.6rem)!important;font-weight:400;max-width:1100px;color:#1b426e;}
.detail-heading h1 em{color:#30609a;}
.kb-editorial .detail-sub{color:#2e5b92;}
.kb-editorial .back-link,.kb-editorial .iteration-incubator-crosslink a{color:#2a5385!important;}
.kb-editorial .detail-heading .incubator-recognition{background:#e4ebf4;border-radius:5px;}
.kb-editorial .detail-heading .incubator-recognition h2{color:#1b426e!important;}
.kb-editorial .detail-heading .incubator-recognition-description{color:#2f5c94;}
.kb-editorial .detail-heading .incubator-recognition-label{color:#2b568a;}
.kb-editorial .incubator-card{background:#1b426e!important;border-radius:6px!important;}
.kb-editorial .incubator-card h3,.kb-editorial .incubator-card p{color:#f1f6fb!important;}
.kb-editorial .resource-section{background:#e9f1fa;}
.resource-list a{color:#1b426e;background:#fcfdff;border-color:#ccd9ea;}
.resource-list a:hover{background:#dceafa;}
.kb-editorial .reflection{background:#1b426e!important;}
/* keep technical datasets and media evidence legible and usable */
.technical-change-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.technical-change-table{min-width:670px;}
.video-embed iframe{max-width:100%;}
main img{max-width:100%;}
/* RESPONSIVE */
@media(max-width:1100px){
  #work .path-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
  #work .path-image{height:280px;}
  #work .path-image-app{padding:15px 37%;}
  .home-hero .home-hero-grid{gap:45px;grid-template-columns:minmax(0,1.2fr) minmax(260px,.78fr);}
  .home-hero .hero-display{font-size:clamp(3.3rem,6.4vw,5.7rem)!important;}
}
@media(max-width:850px){
  .shell{width:min(calc(100% - 40px),var(--shell));}
  .site-header .nav-wrap{padding:12px 0 0;min-height:0;flex-wrap:wrap;gap:4px;}
  .site-header .brand{font-size:1.35rem;}
  .site-header .nav{order:3;width:100%;overflow-x:auto;gap:22px;white-space:nowrap;scrollbar-width:none;}
  .site-header .nav::-webkit-scrollbar{display:none;}
  .site-header .nav a{padding:10px 0 12px;}
  .home-hero .home-hero-grid{grid-template-columns:1fr;gap:0;}
  .home-hero .hero-intro{padding:48px 0 27px;}
  .home-hero .hero-display{font-size:clamp(3.2rem,9vw,5rem)!important;}
  .home-hero .hero-portrait{margin:15px auto 0;width:min(100%,520px);}
  .home-hero .home-portrait-photo{height:430px;}
  .home-hero .hero-topline{font-size:.58rem;}
  .home-featured-project{grid-template-columns:1fr;}
  .home-featured-visual{order:1;min-height:350px;}
  .home-featured-copy{order:2;}
  .kb-intro-grid{grid-template-columns:1fr;}
  .kb-intro figure{max-width:430px;}
  .kb-intro figure img{height:auto;max-height:440px;}
}
@media(max-width:580px){
  .shell{width:min(calc(100% - 34px),var(--shell));}
  body:not(.kb-editorial) .home-hero{padding-bottom:50px;}
  .home-hero .hero-topline span:last-child{display:none;}
  .home-hero .hero-intro{padding-top:38px;}
  .home-hero .hero-display{font-size:clamp(3.12rem,12.9vw,4.7rem)!important;line-height:1.03;}
  .home-hero .hero-description{font-size:1rem;line-height:1.67;}
  .home-hero .home-portrait-photo{height:370px;}
  #work{padding:55px 0 70px;}
  #work .path-grid{grid-template-columns:1fr;max-width:390px;margin:auto;gap:18px;}
  #work .path-card{border-radius:160px 160px 5px 5px;}
  #work .path-image{height:290px;}
  #work .path-image-app{padding:17px 38%;}
  #work .path-content{padding:20px 15px 6px;}
  #work .path-card h3{font-size:1.9rem;}
  .home-featured-section{padding:60px 0;}
  .home-featured-visual{min-height:315px;}
  .home-featured-copy h2{font-size:clamp(2.6rem,9vw,3.4rem)!important;}
  .section-heading h2{font-size:clamp(2.2rem,8vw,3rem)!important;}
  .page-hero h1{font-size:clamp(2.65rem,10vw,3.65rem)!important;}
  .kb-intro{padding:58px 0;}
  .kb-intro h1{font-size:clamp(2.8rem,10vw,4rem)!important;}
  .kb-categories{padding:64px 0 80px;}
  .research-card{padding:24px;}
  .film-card .film-video-thumb img{height:225px;}
  .incubator-download .hero-download-card.page-bottom-download-card{padding:16px!important;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#work .path-card{transition:none}}
/* Placement correction: the editorial top rule spans the full home grid,
   keeping the introduction and portrait together on the second row. */
.home-hero .home-hero-grid{row-gap:0;}
.home-hero .hero-topline{grid-column:1 / -1;grid-row:1;}
.home-hero .hero-intro{grid-column:1;grid-row:2;}
.home-hero .hero-portrait{grid-column:2;grid-row:2;}
@media(max-width:850px){
  .home-hero .hero-topline{grid-row:1;}
  .home-hero .hero-intro{grid-column:1;grid-row:2;}
  .home-hero .hero-portrait{grid-column:1;grid-row:3;}
}
/* Home film card uses an on-brand editorial title treatment, not a thumbnail crop. */
#work .path-image-film{background:#dceafa;display:flex;align-items:stretch;justify-content:stretch;text-align:center;}
#work .home-film-art{display:flex;flex-direction:column;justify-content:space-between;align-items:center;width:100%;height:100%;padding:28px 17px 23px;border:1px solid #aabfd8;border-radius:140px 140px 3px 3px;}
#work .home-film-overline,#work .home-film-bottom{font:700 .53rem/1.5 Arial,Helvetica,sans-serif;color:#3467a5;letter-spacing:.09em;}
#work .home-film-title{font:400 clamp(1.72rem,2.2vw,2.4rem)/1.06 Georgia,serif;letter-spacing:-.055em;color:#1a3454;}
#work .home-film-title em{font-style:italic;color:#3467a6;}
