:root{
  --sand:#d8c7a8;
  --line:rgba(13,27,26,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html{font-size:var(--base-size)}body{margin:0;font-family:var(--body-font);font-size:var(--body-size);font-weight:var(--body-weight,400);color:var(--text);background:var(--paper);line-height:var(--body-line)}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.narrow{max-width:920px}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;padding:18px 0;color:#fff;transition:.3s}
.site-header.scrolled{background:rgba(13,27,26,.96);backdrop-filter:blur(12px);box-shadow:0 10px 30px rgba(0,0,0,.08)}

/* Inner pages use a permanent light navigation shell so links never disappear
   against the light page hero. The homepage keeps the cinematic transparent header. */
.site-header.inner-page-header{
  background:rgba(255,254,249,.97);
  color:var(--text);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(14px);
  box-shadow:0 5px 24px rgba(13,27,26,.035);
}
.site-header.inner-page-header.scrolled{
  background:rgba(255,254,249,.98);
  color:var(--text);
  border-bottom-color:rgba(13,27,26,.12);
  box-shadow:0 10px 30px rgba(13,27,26,.08);
}
.inner-page-header .brand-text{color:var(--text)}
.inner-page-header .main-nav a{position:relative;color:var(--text);opacity:.74}
.inner-page-header .main-nav a:hover{color:var(--ink);opacity:1}
.inner-page-header .main-nav a.active{color:var(--ink);opacity:1;font-weight:750}
.inner-page-header .main-nav a.active:not(.nav-cv)::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-10px;
  height:2px;
  border-radius:3px;
  background:var(--accent);
}
.inner-page-header .nav-cv{
  border-color:rgba(13,27,26,.16);
  background:var(--ink);
  color:#fff;
  opacity:1;
}
.inner-page-header .nav-cv:hover,
.inner-page-header .nav-cv.active{background:var(--ink-2);color:#fff}
.inner-page-header .nav-toggle{color:var(--text)}

.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:12px;font-weight:700}
.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--ink);font-weight:800}
.brand-text{font-size:17px;letter-spacing:.01em}
.main-nav{display:flex;align-items:center;gap:22px;font-size:var(--nav-size);font-weight:600}
.main-nav a{opacity:.88}
.main-nav a:hover{opacity:1;color:var(--mint)}
.nav-cv{border:1px solid rgba(255,255,255,.4);border-radius:var(--button-radius);padding:8px 15px}
.nav-toggle{display:none;background:none;border:0;padding:8px}
.nav-toggle span{display:block;width:24px;height:2px;background:currentColor;margin:5px}

.video-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background:#081412;color:#fff}
.video-layer{position:absolute;inset:-10%;overflow:hidden;pointer-events:none}
.video-layer iframe{position:absolute;left:50%;top:50%;width:177.78vh;min-width:120%;height:56.25vw;min-height:120%;transform:translate(-50%,-50%) scale(1.12);filter:saturate(.8) contrast(1.08)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,14,13,.88) 0%,rgba(4,14,13,.63) 45%,rgba(4,14,13,.3) 100%)}
.hero-grain{position:absolute;inset:0;opacity:.1;background-image:radial-gradient(rgba(255,255,255,.25) .6px,transparent .6px);background-size:5px 5px}
.hero-content{position:relative;z-index:2;padding-top:100px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:var(--small-size);font-weight:700;color:#7b8b87}
.eyebrow.light{color:var(--mint)}
.hero-content h1{font-family:var(--heading-font);font-size:clamp(58px,8vw,var(--hero-size));line-height:var(--heading-line);max-width:900px;margin:18px 0 28px;letter-spacing:var(--heading-track);font-weight:var(--heading-weight,700)}
.hero-lead{font-size:clamp(18px,2vw,25px);max-width:760px;color:rgba(255,255,255,.82);margin-bottom:34px}
.hero-actions{display:flex;align-items:center;gap:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--button-radius);padding:14px 22px;font-weight:700;font-size:14px;border:1px solid transparent}
.btn.light{background:#fff;color:var(--ink)}
.btn.primary{background:var(--ink);color:#fff}
.text-link{font-weight:700;font-size:14px;color:var(--ink)}
.light-link{color:#fff}
.scroll-cue{position:absolute;z-index:2;right:40px;bottom:30px;font-size:var(--small-size);text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.7)}

/* Phase 3.6.2 — mobile hero autoplay + manual sound/player fallback */
.mobile-video-poster{display:none;position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.78) contrast(1.04)}
.hero-mobile-play{display:none;position:absolute;z-index:4;top:104px;right:14px;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.34);border-radius:999px;padding:8px 13px 8px 8px;background:rgba(7,17,15,.72);backdrop-filter:blur(10px);color:#fff;font:inherit;font-size:12px;font-weight:750;letter-spacing:.01em;box-shadow:0 10px 30px rgba(0,0,0,.18);cursor:pointer}
.hero-mobile-play-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);font-size:11px;padding-left:2px}
.hero-video-modal[hidden]{display:none!important}
.hero-video-modal{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:18px;background:rgba(3,10,9,.94);backdrop-filter:blur(10px)}
.hero-video-modal-card{position:relative;width:min(100%,980px);border-radius:18px;overflow:hidden;background:#000;box-shadow:0 28px 80px rgba(0,0,0,.5)}
.hero-video-frame-wrap{aspect-ratio:16/9;width:100%;background:#000}
.hero-video-frame-wrap iframe{display:block;width:100%;height:100%;border:0}
.hero-video-close{position:absolute;z-index:2;top:10px;right:10px;width:42px;height:42px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.68);color:#fff;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 5px 18px rgba(0,0,0,.25)}
body.video-modal-open{overflow:hidden}

.intro-strip{padding:var(--section-space) 0;background:var(--ivory)}
.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:end}
.intro-grid h2,.section-heading h2,.cta-inner h2{font-family:var(--heading-font);font-size:clamp(38px,5vw,var(--section-title-size));line-height:var(--heading-line);letter-spacing:var(--heading-track);font-weight:var(--heading-weight,700);margin:10px 0}
.intro-copy{font-size:18px;color:var(--muted)}

.featured-section{padding:120px 0}
.section-heading.split{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}
.feature-grid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:1fr 1fr;gap:18px;min-height:720px}
.feature-card{position:relative;border-radius:var(--card-radius);overflow:hidden;padding:28px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;background:var(--ink)}
.feature-card.large{grid-row:1/3}
.feature-card:before{content:"";position:absolute;inset:0;opacity:.62;background:
 radial-gradient(circle at 75% 25%,rgba(167,216,199,.65),transparent 28%),
 linear-gradient(135deg,#0d1b1a,#244942)}
.film-card:before{background:radial-gradient(circle at 20% 20%,rgba(229,168,75,.65),transparent 30%),linear-gradient(135deg,#241711,#533322)}
.field-card:before{background:radial-gradient(circle at 80% 80%,rgba(216,199,168,.55),transparent 30%),linear-gradient(135deg,#2d362b,#14211e)}
.card-label,.card-bottom{position:relative;z-index:1}
.card-label{font-size:11px;text-transform:uppercase;letter-spacing:.16em}
.card-bottom h3{font-family:var(--heading-font);font-size:clamp(34px,4vw,62px);line-height:1;margin:0 0 14px}
.card-bottom p{max-width:500px;color:rgba(255,255,255,.75)}
.card-bottom a{font-weight:700}

.quote-section{padding:120px 0;background:var(--ink);color:#fff}
.quote-wrap{max-width:1050px;text-align:center}
.quote-mark{font-family:var(--heading-font);font-size:120px;color:var(--accent);line-height:.6}
blockquote{font-family:var(--heading-font);font-size:clamp(34px,5vw,68px);line-height:1.08;margin:24px 0}
.quote-credit{color:var(--mint);text-transform:uppercase;letter-spacing:.15em;font-size:var(--small-size)}

.pathways{padding:var(--section-space) 0;background:#f8f7f2}
.pathway-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.path-card{padding:28px;border:1px solid var(--line);border-radius:20px;background:white;transition:.25s}
.path-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(13,27,26,.08)}
.path-card>span{font-size:11px;color:var(--accent);font-weight:700}
.path-card h3{font-family:var(--heading-font);font-size:28px;margin:28px 0 8px}
.path-card p{color:var(--muted);min-height:74px}
.path-card b{font-size:var(--nav-size)}

.cta-band{padding:100px 0;background:linear-gradient(120deg,#17312e,#0d1b1a);color:#fff}
.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}

.page-wrap{padding-top:80px}
.page-hero{padding:var(--section-space) 0 70px;background:var(--ivory)}
.page-hero.compact{min-height:60vh}
.page-hero h1{font-family:var(--heading-font);font-size:clamp(54px,8vw,var(--page-title-size));line-height:var(--heading-line);letter-spacing:var(--heading-track);font-weight:var(--heading-weight,700);margin:10px 0 25px}
.page-intro{font-size:20px;color:#4f5e5a;max-width:850px}
.content-section{padding:90px 0}
.prose{font-size:18px;color:#33413e}
.prose p{margin:0 0 1.35em}
.page-body{max-width:920px;margin-bottom:50px}
.about-layout{display:grid;grid-template-columns:360px 1fr;gap:70px;align-items:start}
.profile-panel{position:sticky;top:110px}
.portrait-placeholder{aspect-ratio:4/5;border-radius:var(--card-radius);background:linear-gradient(145deg,#1c3934,#0d1b1a);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}
.portrait-placeholder span{font-family:var(--heading-font);font-size:80px;color:var(--accent)}
.portrait-placeholder small{opacity:.7}
.profile-panel img{border-radius:var(--card-radius);aspect-ratio:4/5;object-fit:cover}
.profile-meta{padding:22px 4px;display:flex;flex-direction:column;gap:6px;color:var(--muted)}
.profile-meta strong{font-size:20px;color:var(--ink)}

.entry-list{border-top:1px solid var(--line)}
.entry-card{display:grid;grid-template-columns:220px 1fr;gap:50px;padding:42px 0;border-bottom:1px solid var(--line)}
.entry-meta{display:flex;flex-direction:column;gap:4px;font-size:var(--small-size);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.entry-main h2{font-family:var(--heading-font);font-size:36px;line-height:1.1;margin:0 0 8px}
.entry-main h3{font-size:16px;font-weight:600;color:var(--muted);margin:0 0 15px}
.entry-main p{color:#4b5956;max-width:880px}
.cv-panel{border:1px solid var(--line);border-radius:var(--card-radius);padding:40px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.muted{color:var(--muted)}

.site-footer{padding:75px 0 25px;background:#07110f;color:#fff}
.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .8fr;gap:70px}
.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.footer-grid p{color:rgba(255,255,255,.6);max-width:460px}
.footer-grid h4{font-size:var(--small-size);text-transform:uppercase;letter-spacing:.15em;color:var(--mint)}
.footer-grid a{display:block;color:rgba(255,255,255,.72);margin:8px 0}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:55px;padding-top:22px;display:flex;justify-content:space-between;color:rgba(255,255,255,.45);font-size:var(--small-size)}

@media(max-width:980px){
 .main-nav{position:fixed;inset:76px 16px auto 16px;background:#0d1b1a;border-radius:18px;padding:18px;display:none;flex-direction:column;align-items:stretch}
 .main-nav.open{display:flex;color:#fff}
 .main-nav.open a{color:#fff;opacity:.88}
 .main-nav.open a:hover,.main-nav.open a.active{color:var(--mint);opacity:1}
 .main-nav.open .nav-cv{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff}
 .inner-page-header .main-nav a.active:not(.nav-cv)::after{display:none}
 .nav-toggle{display:block;color:#fff}
 .inner-page-header .nav-toggle{color:var(--text)}
 .intro-grid,.about-layout{grid-template-columns:1fr;gap:45px}
 .profile-panel{position:static;max-width:420px}
 .pathway-grid{grid-template-columns:1fr 1fr}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
 .container{width:min(100% - 28px,var(--container))}
 .video-hero{min-height:860px;align-items:flex-end;padding-bottom:85px}
 .video-layer{display:block;z-index:1;inset:-12%}
 .video-layer iframe{width:177.78vh;min-width:100%;height:56.25vw;min-height:100%;transform:translate(-50%,-50%) scale(1.08)}
 .mobile-video-poster{display:block;z-index:0}
 .hero-overlay{z-index:2}
 .hero-grain{z-index:3}
 .hero-mobile-play{display:flex;z-index:5}
 .hero-content{padding-top:160px;z-index:4}
 .hero-content h1{font-size:62px}
 .hero-overlay{background:linear-gradient(155deg,rgba(6,29,25,.72) 0%,rgba(9,21,19,.9) 72%)}
 .scroll-cue{display:none}
 .hero-actions,.cta-inner,.section-heading.split{align-items:flex-start;flex-direction:column}
 .intro-strip,.featured-section,.quote-section,.pathways,.content-section{padding:75px 0}
 .intro-grid{gap:30px}
 .feature-grid{grid-template-columns:1fr;grid-template-rows:auto}
 .feature-card,.feature-card.large{min-height:390px;grid-row:auto}
 .pathway-grid{grid-template-columns:1fr}
 .entry-card{grid-template-columns:1fr;gap:14px;padding:30px 0}
 .entry-main h2{font-size:29px}
 .page-hero{padding-top:85px}
 .page-hero h1{font-size:56px}
 .footer-grid{grid-template-columns:1fr}
 .footer-bottom{flex-direction:column;gap:6px}
 .cv-panel{align-items:flex-start;flex-direction:column}
}

.site-logo{width:auto;display:block;object-fit:contain}
.footer-logo{max-height:42px;max-width:180px;object-fit:contain}
h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);font-weight:var(--heading-weight,700)}
.main-nav{font-size:var(--nav-size)}
.btn{border-radius:var(--button-radius)}
.feature-card,.path-card,.cv-panel,.profile-panel img,.portrait-placeholder{border-radius:var(--card-radius)}


/* Private Admin Preview while Maintenance Mode is ON */
.admin-preview-bar{position:fixed;z-index:90;top:0;left:0;right:0;min-height:42px;display:flex;align-items:center;background:#fff7dc;color:#5d4207;border-bottom:1px solid rgba(130,91,10,.18);box-shadow:0 6px 24px rgba(13,27,26,.08);font-family:var(--body-font)}
.admin-preview-inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-preview-message{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.4}.admin-preview-message strong{font-weight:800;color:#3d2a04}.admin-preview-dot{width:8px;height:8px;border-radius:50%;background:#e0a117;box-shadow:0 0 0 5px rgba(224,161,23,.14);flex:0 0 auto}.admin-preview-actions{display:flex;align-items:center;gap:8px}.admin-preview-actions a{display:inline-flex;align-items:center;min-height:28px;padding:6px 10px;border-radius:8px;background:#fff;border:1px solid rgba(130,91,10,.18);color:#4a3508;font-size:10px;font-weight:800}body.has-admin-preview .site-header{top:42px}body.has-admin-preview .page-wrap{padding-top:122px}body.has-admin-preview .video-hero{padding-top:42px}
@media(max-width:760px){.admin-preview-bar{position:relative}.admin-preview-inner{padding:8px 0;align-items:flex-start}.admin-preview-message{align-items:flex-start;flex-wrap:wrap}.admin-preview-message span:last-child{width:100%;padding-left:17px}.admin-preview-actions{display:none}body.has-admin-preview .site-header{top:0}body.has-admin-preview .page-wrap{padding-top:80px}body.has-admin-preview .video-hero{padding-top:0}}


/* Phase 2.2: active inner-page navigation polish */
body.is-inner-page .page-hero{border-bottom:1px solid rgba(13,27,26,.06)}
@media(max-width:980px){
  body.has-admin-preview .main-nav.open{top:118px}
}
@media(max-width:760px){
  body.has-admin-preview .main-nav.open{top:76px}
}

/* ================================================================
   Phase 3.2 — Purpose-built editorial layouts
   ================================================================ */
.editorial-section{background:var(--paper)}
.editorial-opening{display:grid;grid-template-columns:190px minmax(0,900px);gap:50px;align-items:start;margin-bottom:80px;padding-bottom:65px;border-bottom:1px solid var(--line)}
.editorial-opening .page-body{margin:0}
.editorial-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:38px}
.editorial-heading h2,.subsection-title h2{font-family:var(--heading-font);font-size:clamp(34px,4vw,54px);line-height:1.03;letter-spacing:var(--heading-track);margin:8px 0 0;max-width:780px}
.section-count{display:inline-flex;align-items:center;white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);background:rgba(255,255,255,.55)}
.subsection-block{margin-top:100px;padding-top:65px;border-top:1px solid var(--line)}
.subsection-title{margin-bottom:32px}
.entry-meta-row{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:18px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.entry-rich-body{font-size:17px;line-height:1.82;color:#45534f;max-width:900px}

/* Research */
.research-project-grid{display:grid;gap:24px}
.research-project-card{display:grid;grid-template-columns:110px minmax(0,1fr);gap:40px;padding:52px;border:1px solid var(--line);border-radius:calc(var(--card-radius) + 4px);background:linear-gradient(145deg,#fff,var(--ivory));overflow:hidden;position:relative}
.research-project-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-100px;top:-120px;background:radial-gradient(circle,rgba(167,216,199,.28),rgba(167,216,199,0) 70%);pointer-events:none}
.research-project-index{font-family:var(--heading-font);font-size:68px;line-height:.9;color:var(--accent);opacity:.9}
.research-project-copy{position:relative;z-index:1}
.research-project-copy h2{font-family:var(--heading-font);font-size:clamp(34px,4vw,52px);line-height:1.04;margin:0 0 24px;max-width:920px}
.research-media-link{display:inline-flex;align-items:center;gap:16px;margin-top:28px;padding:10px 16px 10px 10px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:.2s}
.research-media-link:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(13,27,26,.08)}
.research-media-thumb{width:82px;height:52px;border-radius:9px;background-size:cover;background-position:center;display:grid;place-items:center;overflow:hidden;position:relative;color:#fff}
.research-media-thumb:after{content:"";position:absolute;inset:0;background:rgba(5,18,16,.3)}
.research-media-thumb b{position:relative;z-index:1;font-size:15px}
.research-media-link>span:last-child{display:flex;flex-direction:column;gap:2px}
.research-media-link small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.research-media-link strong{font-size:13px}

/* Scholarship */
.scholarship-timeline{border-top:1px solid var(--line)}
.scholarship-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:45px;padding:34px 0;border-bottom:1px solid var(--line);transition:.2s}
.scholarship-row:hover{padding-left:12px;padding-right:12px;background:rgba(255,255,255,.55)}
.scholarship-date{font-size:13px;font-weight:750;color:var(--accent);padding-top:6px}
.scholarship-copy h3{font-family:var(--heading-font);font-size:clamp(24px,2.8vw,34px);line-height:1.13;margin:0 0 9px;max-width:900px}
.institution-line{color:var(--muted);font-weight:600;margin:0 0 8px}
.scholarship-note{color:#60706c;margin:0 0 10px}
.wip-grid,.publication-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.wip-card{min-height:260px;padding:34px;border-radius:var(--card-radius);background:linear-gradient(135deg,var(--ink),#264941);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}
.wip-card:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-70px;top:-80px;background:rgba(167,216,199,.18)}
.wip-card span{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--mint);position:relative}
.wip-card h3{font-family:var(--heading-font);font-size:34px;line-height:1.05;margin:12px 0;position:relative}
.wip-card p{color:rgba(255,255,255,.7);margin:0;position:relative}
.publication-card{padding:30px;border:1px solid var(--line);border-radius:var(--card-radius);background:#fff}
.publication-year{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:800}
.publication-card h3{font-size:26px;line-height:1.15;margin:20px 0 9px}

/* Films & Photography */
.film-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.film-card-public:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.3fr .7fr;align-items:stretch;border:1px solid var(--line);border-radius:calc(var(--card-radius) + 4px);overflow:hidden;background:#fff}
.film-card-public:not(:first-child){border:1px solid var(--line);border-radius:calc(var(--card-radius) + 2px);overflow:hidden;background:#fff}
.film-visual{position:relative;display:block;aspect-ratio:16/9;background:linear-gradient(135deg,#162d29,#091512);overflow:hidden;color:#fff}
.film-card-public:first-child .film-visual{aspect-ratio:auto;min-height:420px}
.film-visual img{width:100%;height:100%;object-fit:cover;transition:transform .45s;filter:saturate(.82) contrast(1.02)}
.film-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,15,13,.08),rgba(4,15,13,.45))}
.film-visual:hover img{transform:scale(1.035)}
.play-button{position:absolute;z-index:2;left:26px;bottom:25px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);font-size:15px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.film-type{position:absolute;z-index:2;left:24px;top:24px;padding:8px 11px;border-radius:999px;background:rgba(7,17,15,.72);backdrop-filter:blur(8px);font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}
.film-placeholder{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--heading-font);font-size:50px;color:rgba(255,255,255,.5)}
.film-copy{padding:28px}
.film-card-public:first-child .film-copy{display:flex;flex-direction:column;justify-content:center;padding:50px}
.film-copy h2{font-family:var(--heading-font);font-size:clamp(30px,3vw,44px);line-height:1.05;margin:0 0 12px}
.film-copy p{color:var(--muted)}

/* Academic roles */
.roles-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px}
.role-group-heading{display:flex;align-items:flex-start;gap:20px;padding-bottom:22px;border-bottom:2px solid var(--ink)}
.role-group-heading>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:10px;font-weight:800}
.role-group-heading h2{font-family:var(--heading-font);font-size:34px;line-height:1.05;margin:5px 0 0}
.role-list{position:relative}
.role-card{padding:32px 0;border-bottom:1px solid var(--line)}
.role-year{display:inline-flex;padding:6px 9px;border-radius:999px;background:#edf3f0;color:#315149;font-size:10px;font-weight:800;letter-spacing:.08em;margin-bottom:16px}
.role-card h3{font-family:var(--heading-font);font-size:28px;line-height:1.1;margin:0 0 9px}
.role-body{font-size:15px;line-height:1.75;color:#56645f;margin-top:14px}

/* Public engagement */
.engagement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.engagement-card{border:1px solid var(--line);border-radius:var(--card-radius);background:#fff;overflow:hidden}
.engagement-card.has-media{grid-column:1/-1;display:grid;grid-template-columns:.8fr 1.2fr}
.engagement-media{min-height:330px;background-size:cover;background-position:center;position:relative;display:grid;place-items:center;color:#fff}
.engagement-media:before{content:"";position:absolute;inset:0;background:rgba(6,20,18,.35)}
.engagement-media span{position:relative;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);box-shadow:0 10px 30px rgba(0,0,0,.2)}
.engagement-copy{padding:34px}
.engagement-copy h3{font-family:var(--heading-font);font-size:clamp(27px,3vw,38px);line-height:1.08;margin:0 0 10px}
.engagement-copy>p:not(.institution-line){color:#56645f;line-height:1.7}
.lecture-list{border-top:1px solid var(--line)}
.lecture-row{display:grid;grid-template-columns:190px 1fr;gap:45px;padding:32px 0;border-bottom:1px solid var(--line)}
.lecture-row time{font-size:12px;font-weight:800;color:var(--accent);padding-top:5px}
.lecture-row h3{font-family:var(--heading-font);font-size:30px;line-height:1.08;margin:0 0 7px}
.lecture-row p{color:var(--muted);font-weight:650;margin:0 0 6px}
.lecture-row small{color:#66736f;font-size:14px;line-height:1.6}

/* Fellowships & Awards */
.funding-list{border-top:1px solid var(--line)}
.funding-row{display:grid;grid-template-columns:170px minmax(0,1fr) 120px;gap:32px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}
.funding-type{display:flex;flex-direction:column;gap:5px}
.funding-type span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--accent)}
.funding-type small{font-size:12px;color:var(--muted)}
.funding-copy h3{font-family:var(--heading-font);font-size:27px;line-height:1.12;margin:0 0 5px}
.funding-copy p{margin:0;color:var(--muted)}
.funding-amount{justify-self:end;font-family:var(--heading-font);font-size:23px;color:var(--ink)}
.recognition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.recognition-card{min-height:260px;padding:28px;border-radius:var(--card-radius);background:var(--ink);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.recognition-type{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--mint);font-weight:800}
.recognition-card h3{font-family:var(--heading-font);font-size:29px;line-height:1.08;margin:0 0 10px}
.recognition-card p{color:rgba(255,255,255,.62);font-size:14px}
.recognition-card time{font-size:12px;color:var(--accent);font-weight:800}

@media(max-width:980px){
 .editorial-opening{grid-template-columns:1fr;gap:15px}
 .roles-columns{grid-template-columns:1fr;gap:65px}
 .recognition-grid{grid-template-columns:1fr 1fr}
 .film-card-public:first-child{grid-template-columns:1fr}
 .film-card-public:first-child .film-visual{min-height:360px}
 .engagement-card.has-media{grid-template-columns:1fr}
}
@media(max-width:720px){
 .editorial-heading{align-items:flex-start;flex-direction:column}
 .section-count{align-self:flex-start}
 .editorial-opening{margin-bottom:55px;padding-bottom:45px}
 .research-project-card{grid-template-columns:1fr;gap:22px;padding:30px 24px}
 .research-project-index{font-size:48px}
 .scholarship-row,.lecture-row{grid-template-columns:1fr;gap:8px}
 .scholarship-row:hover{padding-left:0;padding-right:0;background:transparent}
 .wip-grid,.publication-grid,.film-grid,.engagement-grid,.recognition-grid{grid-template-columns:1fr}
 .film-card-public:first-child{grid-column:auto;display:block}
 .film-card-public:first-child .film-visual{min-height:0;aspect-ratio:16/9}
 .film-card-public:first-child .film-copy{padding:28px}
 .engagement-card.has-media{grid-column:auto}
 .engagement-media{min-height:230px}
 .funding-row{grid-template-columns:1fr;gap:10px;padding:25px 0}
 .funding-amount{justify-self:start}
 .subsection-block{margin-top:70px;padding-top:48px}
}

/* ================================================================
   Phase 3.3 — Optional section photography + visible CV navigation
   ================================================================ */

/* The previous inner-page selector for ordinary nav links was more specific
   than .nav-cv, which could leave dark CV text on a dark pill. Give the CV
   action an explicit, high-contrast treatment. */
.inner-page-header .main-nav a.nav-cv{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:54px;
  border-color:var(--accent);
  background:var(--accent);
  color:var(--ink) !important;
  opacity:1;
  font-weight:800;
  box-shadow:0 7px 18px rgba(13,27,26,.09);
  transition:transform .2s,box-shadow .2s,background .2s,color .2s;
}
.inner-page-header .main-nav a.nav-cv:hover,
.inner-page-header .main-nav a.nav-cv.active{
  background:var(--ink);
  border-color:var(--ink);
  color:#fff !important;
  opacity:1;
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(13,27,26,.16);
}
.home-page-header .main-nav a.nav-cv{
  color:#fff;
  opacity:1;
}

/* Section photography is intentionally optional. Empty image settings do not
   leave placeholders or blank boxes on the public website. */
.section-photo{
  margin:0;
  overflow:hidden;
  border-radius:calc(var(--card-radius) + 4px);
  border:1px solid var(--line);
  background:var(--ivory);
  box-shadow:0 22px 55px rgba(13,27,26,.07);
}
.section-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.section-photo-banner{
  width:100%;
  aspect-ratio:16/6;
  min-height:300px;
  max-height:500px;
}
.section-photo-banner img{object-position:center 38%}
.section-photo-top{margin:0 0 72px}
.section-photo-portraitish{
  aspect-ratio:4/5;
  min-height:360px;
  align-self:stretch;
}
.section-photo-portraitish img{object-position:center 35%}
.editorial-opening.has-section-photo{
  grid-template-columns:150px minmax(0,1fr) minmax(280px,360px);
  gap:42px;
  align-items:start;
}
.editorial-opening.has-section-photo .page-body{max-width:none}

@media(max-width:1100px){
  .editorial-opening.has-section-photo{
    grid-template-columns:140px minmax(0,1fr) 290px;
    gap:30px;
  }
}
@media(max-width:980px){
  .editorial-opening.has-section-photo{grid-template-columns:1fr;gap:18px}
  .editorial-opening.has-section-photo .section-photo-portraitish{
    width:min(100%,620px);
    aspect-ratio:16/9;
    min-height:0;
    margin-top:18px;
  }
  .main-nav.open a.nav-cv,
  .inner-page-header .main-nav.open a.nav-cv{
    background:var(--accent);
    border-color:var(--accent);
    color:var(--ink) !important;
    text-align:center;
  }
  .inner-page-header .main-nav.open a.nav-cv:hover,
  .inner-page-header .main-nav.open a.nav-cv.active{
    background:var(--accent);
    border-color:var(--accent);
    color:var(--ink) !important;
    transform:none;
  }
}
@media(max-width:720px){
  .section-photo-top{margin-bottom:50px}
  .section-photo-banner{aspect-ratio:4/3;min-height:0}
  .section-photo-banner img{object-position:center 30%}
  .editorial-opening.has-section-photo .section-photo-portraitish{aspect-ratio:4/3}
}

/* ================================================================
   Phase 5.1 — Research fieldwork media emphasis
   ================================================================ */
.research-fieldwork-feature{display:grid;grid-template-columns:minmax(220px,360px) minmax(0,1fr);align-items:stretch;margin-top:34px;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;transition:transform .2s,box-shadow .2s}
.research-fieldwork-feature:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(13,27,26,.09)}
.research-fieldwork-visual{min-height:185px;background-size:cover;background-position:center;position:relative;display:grid;place-items:center;color:#fff}
.research-fieldwork-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(5,18,16,.18),rgba(5,18,16,.58))}
.research-fieldwork-visual b{position:relative;z-index:1;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);font-size:16px;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.research-fieldwork-placeholder{background:linear-gradient(135deg,var(--secondary),var(--ink))}
.research-fieldwork-copy{padding:28px 30px;display:flex;flex-direction:column;justify-content:center;gap:7px}
.research-fieldwork-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-weight:800}
.research-fieldwork-copy strong{font-family:var(--heading-font);font-size:25px;line-height:1.08;color:var(--ink)}
.research-fieldwork-copy em{font-style:normal;font-size:13px;line-height:1.55;color:var(--muted)}
@media(max-width:720px){.research-fieldwork-feature{grid-template-columns:1fr}.research-fieldwork-visual{min-height:190px}.research-fieldwork-copy{padding:24px}}


/* Phase 5.2 — self-service photography portfolio */
.photography-showcase{margin-top:clamp(72px,9vw,128px);padding-top:clamp(54px,7vw,88px);border-top:1px solid rgba(10,36,29,.12)}
.photography-heading{align-items:end}
.photography-heading>div>p:last-child{max-width:680px;color:var(--muted,#66736d);margin:12px 0 0}
.photo-filter-bar{display:flex;gap:9px;flex-wrap:wrap;margin:28px 0 30px}
.photo-filter{appearance:none;border:1px solid rgba(11,43,34,.15);background:#fff;color:inherit;border-radius:999px;padding:9px 13px;font:inherit;font-size:13px;font-weight:650;cursor:pointer;transition:.2s ease}
.photo-filter span{opacity:.55;margin-left:4px}
.photo-filter:hover,.photo-filter.active{background:var(--primary,#0d1b1a);color:#fff;border-color:var(--primary,#0d1b1a)}
.photo-gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;align-items:start}
.photo-gallery-card{grid-column:span 4;margin:0;min-width:0}
.photo-gallery-card:nth-child(7n+1),.photo-gallery-card.featured{grid-column:span 8}
.photo-gallery-card:nth-child(7n+4){grid-column:span 5}
.photo-gallery-card:nth-child(7n+5){grid-column:span 7}
.photo-lightbox-open{position:relative;display:block;width:100%;padding:0;border:0;border-radius:20px;overflow:hidden;background:#e9eee9;cursor:zoom-in;aspect-ratio:4/3}
.photo-gallery-card.featured .photo-lightbox-open,.photo-gallery-card:nth-child(7n+1) .photo-lightbox-open{aspect-ratio:16/10}
.photo-lightbox-open img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s ease}
.photo-lightbox-open:hover img{transform:scale(1.025)}
.photo-expand{position:absolute;right:14px;top:14px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.9);color:#092019;font-size:15px;box-shadow:0 8px 30px rgba(0,0,0,.1)}
.photo-gallery-card figcaption{padding:11px 2px 0;display:grid;gap:3px}
.photo-gallery-card figcaption strong{font-size:14px}
.photo-gallery-card figcaption span{font-size:13px;color:var(--muted,#66736d);line-height:1.5}
.photo-gallery-card[hidden]{display:none!important}
.photo-lightbox{position:fixed;z-index:99999;inset:0;background:rgba(4,10,8,.94);display:none;grid-template-rows:1fr auto;padding:38px;color:#fff}
.photo-lightbox.open{display:grid}
.photo-lightbox-stage{display:grid;place-items:center;min-height:0}
.photo-lightbox-stage img{max-width:min(94vw,1500px);max-height:78vh;object-fit:contain;border-radius:4px}
.photo-lightbox-close{position:absolute;right:24px;top:18px;width:44px;height:44px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(0,0,0,.25);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.photo-lightbox-copy{width:min(900px,92vw);margin:16px auto 0;text-align:center}
.photo-lightbox-copy strong{font-size:17px}
.photo-lightbox-copy p{margin:6px 0 0;color:rgba(255,255,255,.72);font-size:14px}
@media(max-width:900px){.photo-gallery-card,.photo-gallery-card:nth-child(n),.photo-gallery-card.featured{grid-column:span 6}.photo-gallery-card:nth-child(5n+1){grid-column:span 12}.photo-lightbox{padding:26px 16px}}
@media(max-width:600px){.photo-gallery-grid{gap:14px}.photo-gallery-card,.photo-gallery-card:nth-child(n),.photo-gallery-card.featured{grid-column:span 12}.photo-lightbox-open,.photo-gallery-card.featured .photo-lightbox-open,.photo-gallery-card:nth-child(7n+1) .photo-lightbox-open{aspect-ratio:4/3}.photo-filter-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.photo-filter{white-space:nowrap}.photo-lightbox{padding:62px 12px 20px}.photo-lightbox-stage img{max-height:70vh}}

/* Phase 5.2.2 — balanced editorial photography gallery */
.photo-gallery-editorial{
  display:flex;
  flex-wrap:wrap;
  gap:clamp(14px,1.7vw,24px);
  align-items:flex-start;
}
.photo-gallery-editorial .photo-gallery-card{
  --gallery-row:clamp(230px,22vw,330px);
  flex-grow:var(--photo-ratio,1.35);
  flex-basis:calc(var(--photo-ratio,1.35) * var(--gallery-row));
  min-width:min(100%,240px);
  max-width:100%;
  margin:0;
}
.photo-gallery-editorial .photo-gallery-card.photo-lead{
  flex-basis:100%;
  flex-grow:1;
}
.photo-gallery-editorial .photo-lightbox-open{
  width:100%;
  aspect-ratio:var(--photo-ratio,4/3);
  min-height:0;
  max-height:440px;
  border-radius:18px;
  background:#e8ede8;
  box-shadow:0 12px 30px rgba(11,35,29,.055);
}
.photo-gallery-editorial .photo-lead .photo-lightbox-open{
  aspect-ratio:min(var(--photo-ratio,1.6),1.85);
  max-height:620px;
}
.photo-gallery-editorial .photo-lightbox-open img{
  object-fit:cover;
}
.photo-gallery-editorial .photo-gallery-card figcaption{
  padding:10px 3px 2px;
  max-width:760px;
}
.photo-gallery-editorial .photo-gallery-card figcaption strong{
  font-size:15px;
  line-height:1.35;
}
.photo-gallery-editorial .photo-gallery-card figcaption span{
  display:block;
  margin-top:4px;
  font-size:13px;
  color:var(--muted,#66736d);
  line-height:1.55;
}
.photo-collection-tag{
  position:absolute;
  left:14px;
  top:14px;
  z-index:2;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(6,27,21,.76);
  backdrop-filter:blur(8px);
  color:#fff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.photo-expand{
  opacity:0;
  transform:translateY(5px);
  transition:opacity .2s ease,transform .2s ease;
}
.photo-lightbox-open:hover .photo-expand,.photo-lightbox-open:focus-visible .photo-expand{
  opacity:1;
  transform:none;
}
.photo-lightbox{
  grid-template-columns:auto minmax(0,1fr) auto;
  grid-template-rows:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}
.photo-lightbox-stage{grid-column:2;grid-row:1}
.photo-lightbox-nav{
  grid-row:1;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  background:rgba(0,0,0,.2);
  color:#fff;
  font-size:34px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease;
}
.photo-lightbox-nav:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.48)}
.photo-lightbox-prev{grid-column:1}
.photo-lightbox-next{grid-column:3}
.photo-lightbox-footer{
  grid-column:1/-1;
  grid-row:2;
  width:min(920px,94vw);
  margin:0 auto;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}
.photo-lightbox-copy{margin:0;text-align:left;min-width:0}
.photo-lightbox-copy:has(strong:empty) strong{display:none}
.photo-lightbox-copy:has(p:empty) p{display:none}
.photo-lightbox-count{font-size:12px;letter-spacing:.08em;color:rgba(255,255,255,.58);white-space:nowrap}
@media(max-width:900px){
  .photo-gallery-editorial .photo-gallery-card{--gallery-row:250px;flex-basis:calc(var(--photo-ratio,1.35) * var(--gallery-row))}
  .photo-gallery-editorial .photo-gallery-card.photo-lead{flex-basis:100%}
  .photo-lightbox{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}
  .photo-lightbox-nav{width:42px;height:42px;font-size:30px}
}
@media(max-width:640px){
  .photo-gallery-editorial{display:grid;grid-template-columns:1fr;gap:20px}
  .photo-gallery-editorial .photo-gallery-card,.photo-gallery-editorial .photo-gallery-card.photo-lead{min-width:0;max-width:none;width:100%}
  .photo-gallery-editorial .photo-lightbox-open,.photo-gallery-editorial .photo-lead .photo-lightbox-open{aspect-ratio:var(--photo-ratio,4/3);max-height:none;border-radius:14px}
  .photo-expand{opacity:1;transform:none}
  .photo-lightbox{grid-template-columns:1fr;padding:58px 12px 18px}
  .photo-lightbox-stage{grid-column:1;grid-row:1}
  .photo-lightbox-nav{position:absolute;top:50%;z-index:3;background:rgba(0,0,0,.45)}
  .photo-lightbox-prev{left:12px}.photo-lightbox-next{right:12px}
  .photo-lightbox-footer{grid-column:1;grid-row:2;align-items:flex-start}
}

/* ================================================================
   Phase 5.3 — Public & Community Engagement visual stories
   ================================================================ */
.engagement-page-intro{max-width:780px;margin-bottom:clamp(48px,6vw,76px)}
.engagement-story-heading{align-items:end;margin-bottom:30px}
.engagement-story-heading>div>p:last-child{max-width:700px;color:var(--muted);margin:12px 0 0;line-height:1.65}
.engagement-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.engagement-story-card{margin:0;min-width:0}
.engagement-story-card.featured{grid-column:1/-1}
.engagement-story-open{appearance:none;border:1px solid var(--line);background:#fff;border-radius:22px;padding:0;width:100%;height:100%;text-align:left;color:inherit;overflow:hidden;display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,1.15fr);cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.engagement-story-card:not(.featured) .engagement-story-open{grid-template-columns:1fr;grid-template-rows:auto 1fr}
.engagement-story-open:hover,.engagement-story-open:focus-visible{transform:translateY(-3px);box-shadow:0 20px 46px rgba(8,31,25,.09);border-color:rgba(16,58,46,.22);outline:none}
.engagement-story-visual{position:relative;min-height:310px;background:linear-gradient(145deg,#dfe9e3,#f2eee5);overflow:hidden;display:block}
.engagement-story-card:not(.featured) .engagement-story-visual{min-height:250px}
.engagement-story-visual img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0;transition:transform .45s ease}
.engagement-story-open:hover .engagement-story-visual img{transform:scale(1.025)}
.engagement-story-placeholder{position:absolute;inset:0;padding:30px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,var(--primary,#0d1b1a),#234238);color:#fff}
.engagement-story-placeholder b{font-family:var(--heading-font);font-size:66px;font-weight:400;color:rgba(255,255,255,.24)}
.engagement-story-placeholder em{font-style:normal;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.78)}
.engagement-story-type{position:absolute;left:16px;top:16px;z-index:2;padding:8px 11px;border-radius:999px;background:rgba(5,25,19,.78);backdrop-filter:blur(7px);color:#fff;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.engagement-story-copy{padding:32px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.engagement-story-card.featured .engagement-story-copy{padding:clamp(34px,4vw,56px)}
.engagement-story-meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;color:#708078;font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:750}
.engagement-story-meta span:before{content:"•";margin-right:10px;color:var(--accent)}
.engagement-story-copy strong{font-family:var(--heading-font);font-size:clamp(26px,2.7vw,40px);line-height:1.06;font-weight:500;color:var(--ink)}
.engagement-story-card:not(.featured) .engagement-story-copy strong{font-size:clamp(24px,2.2vw,31px)}
.engagement-story-copy em{font-style:normal;color:#53635d;font-size:13px;line-height:1.55;margin-top:10px}
.engagement-story-copy p{color:#68766f;line-height:1.7;font-size:14px;margin:18px 0 0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.engagement-read-more{margin-top:auto;padding-top:25px;color:var(--ink);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;display:flex;gap:9px;align-items:center}.engagement-read-more i{font-style:normal;color:var(--accent);transition:transform .2s}.engagement-story-open:hover .engagement-read-more i{transform:translate(2px,-2px)}
.engagement-story-modal{position:fixed;z-index:100000;inset:0;background:rgba(4,13,10,.78);backdrop-filter:blur(8px);padding:clamp(18px,4vw,54px);display:none;overflow:auto}
.engagement-story-modal.open{display:grid;place-items:center}
.engagement-story-dialog{position:relative;width:min(1050px,100%);max-height:none;background:#fdfcf8;border-radius:24px;overflow:hidden;display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);box-shadow:0 30px 100px rgba(0,0,0,.28)}
.engagement-story-dialog>figure{margin:0;min-height:520px;background:#e3eae4}.engagement-story-dialog>figure img{width:100%;height:100%;object-fit:cover;display:block}
.engagement-story-dialog-copy{padding:clamp(34px,5vw,64px);overflow:auto;max-height:calc(100vh - 108px)}
.engagement-story-dialog-meta{display:flex;gap:12px;flex-wrap:wrap;color:#708078;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;margin-bottom:18px}.engagement-story-dialog-meta time:before{content:"•";margin-right:12px;color:var(--accent)}
.engagement-story-dialog-copy h2{font-family:var(--heading-font);font-size:clamp(34px,4vw,54px);line-height:1.02;margin:0;color:var(--ink);font-weight:500}
.engagement-story-subtitle{font-size:16px;line-height:1.55;color:#4d5e57;margin:15px 0 4px}.engagement-story-location{font-size:13px;color:#78857f;margin:4px 0 28px}
.engagement-story-body{font-size:15px;line-height:1.78;color:#485752}.engagement-story-body p{margin:0 0 18px}
.engagement-story-link{display:inline-flex;margin-top:16px;text-decoration:none}
.engagement-story-close{position:absolute;right:16px;top:16px;z-index:4;width:42px;height:42px;border:1px solid rgba(9,34,27,.12);border-radius:50%;background:rgba(255,255,255,.94);color:var(--ink);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 25px rgba(0,0,0,.08)}
body.engagement-modal-open{overflow:hidden}
@media(max-width:900px){.engagement-story-grid{grid-template-columns:1fr}.engagement-story-card.featured{grid-column:auto}.engagement-story-open,.engagement-story-card.featured .engagement-story-open{grid-template-columns:1fr;grid-template-rows:auto 1fr}.engagement-story-visual,.engagement-story-card:not(.featured) .engagement-story-visual{min-height:320px}.engagement-story-dialog{grid-template-columns:1fr;max-width:760px}.engagement-story-dialog>figure{min-height:300px;max-height:430px}.engagement-story-dialog-copy{max-height:none}.engagement-story-modal{align-items:start}}
@media(max-width:600px){.engagement-story-grid{gap:18px}.engagement-story-visual,.engagement-story-card:not(.featured) .engagement-story-visual{min-height:250px}.engagement-story-copy,.engagement-story-card.featured .engagement-story-copy{padding:24px}.engagement-story-copy p{-webkit-line-clamp:3}.engagement-story-modal{padding:10px}.engagement-story-dialog{border-radius:18px}.engagement-story-dialog>figure{min-height:230px}.engagement-story-dialog-copy{padding:30px 22px}.engagement-story-close{right:10px;top:10px}}

/* Phase 5.4 — Fellowships & Awards visual recognition */
.awards-support-heading{margin-bottom:18px}.awards-support-heading p,.recognition-heading p{margin:7px 0 0;color:var(--muted);max-width:660px}.funding-row{grid-template-columns:170px minmax(0,1fr) auto}.funding-note{margin-top:9px;color:var(--muted);font-size:14px;line-height:1.65}.funding-link{white-space:nowrap;align-self:center}.recognition-block{margin-top:88px}.recognition-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.recognition-story-card{border:1px solid var(--line);border-radius:var(--card-radius);overflow:hidden;background:#fff;display:grid;grid-template-rows:auto 1fr}.recognition-story-card.featured{grid-column:1/-1;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);grid-template-rows:none;min-height:430px}.recognition-story-visual{position:relative;min-height:260px;background:linear-gradient(135deg,#0b2924,#173c34);overflow:hidden}.recognition-story-card.featured .recognition-story-visual{min-height:430px}.recognition-story-visual>a{display:block;width:100%;height:100%}.recognition-story-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.recognition-story-visual:hover img{transform:scale(1.02)}.recognition-story-type{position:absolute;left:16px;top:16px;border-radius:999px;background:rgba(5,28,24,.88);color:#fff;padding:7px 10px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.recognition-story-placeholder{position:absolute;inset:0;padding:26px;display:flex;flex-direction:column;justify-content:space-between;color:#fff}.recognition-story-placeholder b{font-family:var(--heading-font);font-size:62px;line-height:1;color:rgba(255,255,255,.22);font-weight:500}.recognition-story-placeholder span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--mint)}.recognition-story-copy{padding:28px;display:flex;flex-direction:column;justify-content:center}.recognition-story-copy time{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--accent);margin-bottom:10px}.recognition-story-copy h3{font-family:var(--heading-font);font-size:30px;line-height:1.08;margin:0 0 10px}.recognition-story-card.featured .recognition-story-copy h3{font-size:42px}.recognition-story-subtitle{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.recognition-story-body{margin-top:15px;color:var(--muted);font-size:14px;line-height:1.68}.recognition-story-link{margin-top:18px;align-self:flex-start}@media(max-width:900px){.recognition-story-card.featured{grid-template-columns:1fr;min-height:0}.recognition-story-card.featured .recognition-story-visual{min-height:330px}.recognition-story-grid{grid-template-columns:1fr 1fr}.recognition-story-card.featured .recognition-story-copy h3{font-size:34px}}@media(max-width:680px){.recognition-story-grid{grid-template-columns:1fr}.recognition-story-card.featured{grid-column:auto}.recognition-story-visual,.recognition-story-card.featured .recognition-story-visual{min-height:260px}.recognition-story-copy h3,.recognition-story-card.featured .recognition-story-copy h3{font-size:28px}.funding-row{grid-template-columns:1fr}.funding-link{align-self:start}.recognition-block{margin-top:64px}}

/* Phase 5.4.2 — compact award gallery + in-page image viewer */
.recognition-story-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.recognition-story-card,.recognition-story-card.featured{grid-column:auto;grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:0}
.recognition-story-card.featured{grid-column:span 2}
.recognition-story-visual,.recognition-story-card.featured .recognition-story-visual{min-height:0;height:250px;background:#f4f1e8}
.recognition-story-card.featured .recognition-story-visual{height:320px}
.recognition-image-button{position:relative;display:block;width:100%;height:100%;padding:14px;border:0;background:#f4f1e8;cursor:zoom-in;overflow:hidden}
.recognition-image-button img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .28s ease}
.recognition-image-button:hover img,.recognition-image-button:focus-visible img{transform:scale(1.015)}
.recognition-image-button .photo-expand{position:absolute;right:14px;bottom:14px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(5,28,24,.86);color:#fff;font-size:14px;opacity:0;transform:translateY(4px);transition:.2s ease}
.recognition-image-button:hover .photo-expand,.recognition-image-button:focus-visible .photo-expand{opacity:1;transform:none}
.recognition-story-copy{padding:24px;justify-content:flex-start}
.recognition-story-copy h3,.recognition-story-card.featured .recognition-story-copy h3{font-size:27px}
.recognition-story-body{font-size:13px;line-height:1.6}
.award-lightbox .photo-lightbox-stage img{background:#fff;max-width:min(88vw,1200px);max-height:80vh;padding:8px;border-radius:6px}
@media(max-width:980px){.recognition-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recognition-story-card.featured{grid-column:span 2}}
@media(max-width:680px){.recognition-story-grid{grid-template-columns:1fr}.recognition-story-card.featured{grid-column:auto}.recognition-story-visual,.recognition-story-card.featured .recognition-story-visual{height:240px}.recognition-story-copy h3,.recognition-story-card.featured .recognition-story-copy h3{font-size:26px}}


/* Phase 5.5 — About, Profile & Contact */
.about-profile-section{padding-top:82px}
.about-profile-layout{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:76px;align-items:start}
.about-profile-card{position:sticky;top:104px}
.about-profile-portrait{border-radius:var(--card-radius);overflow:hidden;background:#102a26;box-shadow:0 18px 50px rgba(10,32,29,.10)}
.about-profile-portrait img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.about-profile-portrait .portrait-placeholder{border-radius:0}
.about-profile-identity{padding:24px 3px 10px}
.about-profile-identity h2{font-family:var(--heading-font);font-size:30px;line-height:1.05;margin:4px 0 9px}
.about-current-role{font-size:14px;line-height:1.55;color:var(--muted);margin:0 0 18px}
.about-role-list{display:flex;flex-wrap:wrap;gap:7px}
.about-role-list span{font-size:11px;line-height:1;border:1px solid rgba(12,34,31,.12);border-radius:999px;padding:8px 10px;background:rgba(255,255,255,.52);color:var(--ink)}
.about-profile-actions{display:flex;gap:9px;flex-wrap:wrap;padding:8px 3px 0}
.about-social-links{display:flex;gap:16px;flex-wrap:wrap;padding:18px 3px 0;margin-top:18px;border-top:1px solid rgba(12,34,31,.10)}
.about-social-links a{font-size:12px;font-weight:700;color:var(--ink)}
.about-profile-story{min-width:0}
.about-story-heading{padding-bottom:24px;border-bottom:1px solid rgba(12,34,31,.10);margin-bottom:30px}
.about-story-heading h2{font-family:var(--heading-font);font-size:clamp(32px,4vw,58px);line-height:.98;max-width:780px;margin:7px 0 0}
.about-prose{font-size:17px;line-height:1.8;max-width:850px}
.about-prose p{margin:0 0 24px}
.about-quote{margin:54px 0 48px;padding:34px 38px;border-left:4px solid var(--accent);background:linear-gradient(135deg,rgba(246,239,222,.95),rgba(255,255,255,.7));border-radius:0 var(--card-radius) var(--card-radius) 0}
.about-quote p{font-family:var(--heading-font);font-size:clamp(27px,3.5vw,45px);line-height:1.12;margin:0;color:var(--ink)}
.about-quote cite{display:block;margin-top:16px;font-size:11px;font-style:normal;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.about-connect-panel{border-top:1px solid rgba(12,34,31,.12);padding-top:34px;margin-top:46px}
.about-connect-panel h3{font-family:var(--heading-font);font-size:30px;margin:5px 0 24px}
.about-contact-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.about-contact-list a{display:flex;flex-direction:column;gap:5px;border:1px solid rgba(12,34,31,.11);background:#fff;border-radius:14px;padding:16px 17px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.about-contact-list a:hover{transform:translateY(-2px);border-color:rgba(12,34,31,.22);box-shadow:0 10px 30px rgba(10,32,29,.06)}
.about-contact-list span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:var(--muted)}
.about-contact-list strong{font-size:13px;word-break:break-word;color:var(--ink)}
@media(max-width:980px){
  .about-profile-layout{grid-template-columns:1fr;gap:48px}
  .about-profile-card{position:static;max-width:440px}
}
@media(max-width:620px){
  .about-profile-section{padding-top:58px}
  .about-profile-layout{gap:38px}
  .about-contact-list{grid-template-columns:1fr}
  .about-quote{padding:26px 24px;margin:40px 0}
}

/* ================================================================
   Phase 5.6 — hero video quality + final public visual polish
   ================================================================ */
/* Keep a crisp YouTube poster behind the stream and avoid the old
   10–12% overscan/zoom which unnecessarily enlarged 16:9 video. */
.video-hero{background:#081412}
.mobile-video-poster{display:block;z-index:0;background-size:cover;background-position:center 48%;filter:saturate(.86) contrast(1.04);transform:scale(1.01)}
.video-layer{inset:0;z-index:1;opacity:0;transition:opacity .9s ease;will-change:opacity}
.video-layer.hero-video-ready{opacity:1}
.video-layer iframe{width:177.78vh;min-width:100%;height:56.25vw;min-height:100%;transform:translate(-50%,-50%) scale(1.015);filter:saturate(.86) contrast(1.05);backface-visibility:hidden}
.hero-overlay{z-index:2;background:linear-gradient(90deg,rgba(4,14,13,.84) 0%,rgba(4,14,13,.58) 46%,rgba(4,14,13,.25) 100%)}
.hero-grain{z-index:3;opacity:.07}
.hero-content{z-index:4}
.scroll-cue{z-index:4}
.hero-mobile-play{display:flex;z-index:5;top:110px;right:24px;background:rgba(7,17,15,.66);border-color:rgba(255,255,255,.28)}
.hero-mobile-play:hover{background:rgba(7,17,15,.82);transform:translateY(-1px)}
@media(max-width:720px){
 .video-layer{inset:0}
 .video-layer iframe{width:177.78vh;min-width:100%;height:56.25vw;min-height:100%;transform:translate(-50%,-50%) scale(1.02)}
 .mobile-video-poster{background-position:center center}
 .hero-mobile-play{top:92px;right:14px}
 .hero-overlay{background:linear-gradient(155deg,rgba(6,29,25,.66) 0%,rgba(9,21,19,.88) 74%)}
}
@media(prefers-reduced-motion:reduce){
 .video-layer{display:none!important}
 .mobile-video-poster{transform:none}
 .hero-mobile-play{display:flex}
}

/* About: retain an editorial portrait/profile column on tablet and
   smaller desktop widths instead of allowing the portrait to dominate. */
.about-profile-layout{grid-template-columns:minmax(270px,350px) minmax(0,1fr);gap:clamp(38px,5vw,72px)}
.about-profile-portrait img{aspect-ratio:4/5;object-position:center 45%}
.about-profile-card{top:118px}
.about-story-heading h2{font-size:clamp(32px,3.7vw,52px)}
.about-quote p{font-size:clamp(26px,3vw,39px)}
.about-quote{margin:46px 0 42px;padding:30px 34px}
.about-contact-list strong{line-height:1.45}
@media(min-width:760px) and (max-width:980px){
 .about-profile-layout{grid-template-columns:minmax(245px,300px) minmax(0,1fr);gap:32px}
 .about-profile-card{position:static;max-width:none}
 .about-profile-section{padding-top:62px}
 .about-profile-identity{padding-top:18px}
 .about-profile-identity h2{font-size:26px}
 .about-role-list{gap:5px}
 .about-role-list span{font-size:10px;padding:7px 8px}
 .about-prose{font-size:15px;line-height:1.72}
 .about-story-heading{margin-bottom:24px}
 .about-contact-list{grid-template-columns:1fr}
}
@media(max-width:759px){
 .about-profile-layout{grid-template-columns:1fr;gap:38px}
 .about-profile-card{position:static;max-width:520px;width:100%;margin:0 auto}
 .about-profile-portrait img{aspect-ratio:4/5}
 .about-quote{padding:25px 22px;margin:36px 0}
}

/* Small final accessibility/polish pass. */
a:focus-visible,button:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 72%,#fff);outline-offset:3px}
img{max-width:100%}
@media(max-width:720px){
 .page-intro{max-width:100%}
 .footer-grid{gap:34px}
}


/* ================================================================
   Phase 5.6.1 — custom hero poster + clean loading state
   ================================================================ */
.mobile-video-poster.hero-poster-fallback{
  background-image:
    radial-gradient(circle at 78% 20%,rgba(232,174,77,.12),transparent 24%),
    radial-gradient(circle at 24% 78%,rgba(91,170,150,.12),transparent 28%),
    linear-gradient(125deg,#071613 0%,#0d2924 48%,#153b33 100%);
  background-size:cover;
  background-position:center;
  filter:none;
  transform:none;
}
.mobile-video-poster.hero-poster-custom{filter:saturate(.92) contrast(1.03);transform:none;background-position:center center}
.video-layer{transition:opacity 1.15s ease}
.video-layer:not(.hero-video-ready){pointer-events:none}

/* Phase 5.6.3 — Public Engagement mobile experience */
.engagement-story-modal{
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
html.engagement-modal-open,
body.engagement-modal-open{
  overflow:hidden;
}
.engagement-story-dialog{
  isolation:isolate;
}
.engagement-story-dialog-copy{
  scrollbar-gutter:stable;
}
.engagement-story-body{
  overflow-wrap:anywhere;
}
.engagement-story-link{
  max-width:100%;
  text-align:center;
  justify-content:center;
}

@media (max-width:900px){
  .engagement-stories-section .container{width:min(100% - 32px,var(--container));}
  .engagement-story-heading{align-items:flex-start;gap:18px;}
  .engagement-story-heading .section-count{flex:none;}
  .engagement-story-open,
  .engagement-story-card.featured .engagement-story-open{
    grid-template-columns:1fr;
    grid-template-rows:auto 1fr;
  }
  .engagement-story-visual,
  .engagement-story-card:not(.featured) .engagement-story-visual{
    min-height:0;
    aspect-ratio:16/9;
  }
  .engagement-story-copy,
  .engagement-story-card.featured .engagement-story-copy{
    padding:28px;
  }
  .engagement-story-dialog{
    grid-template-columns:1fr;
    width:min(760px,100%);
  }
  .engagement-story-dialog>figure{
    min-height:0;
    height:auto;
    aspect-ratio:16/9;
    max-height:430px;
  }
  .engagement-story-dialog-copy{
    max-height:none;
  }
}

@media (max-width:700px){
  .engagement-stories-section{padding-left:0;padding-right:0;}
  .engagement-stories-section .container{width:min(100% - 24px,var(--container));}
  .engagement-story-heading{margin-bottom:22px;}
  .engagement-story-heading>div>p:last-child{font-size:14px;line-height:1.6;}
  .engagement-story-grid{gap:16px;}
  .engagement-story-open,
  .engagement-story-card.featured .engagement-story-open{
    border-radius:18px;
  }
  .engagement-story-visual,
  .engagement-story-card:not(.featured) .engagement-story-visual{
    aspect-ratio:16/9;
    min-height:0 !important;
  }
  .engagement-story-placeholder{padding:22px;}
  .engagement-story-placeholder b{font-size:54px;}
  .engagement-story-type{left:12px;top:12px;padding:7px 9px;font-size:8px;}
  .engagement-story-copy,
  .engagement-story-card.featured .engagement-story-copy{
    padding:22px 20px 24px;
  }
  .engagement-story-meta{font-size:9px;gap:8px;margin-bottom:13px;line-height:1.45;}
  .engagement-story-meta span:before{margin-right:8px;}
  .engagement-story-copy strong,
  .engagement-story-card:not(.featured) .engagement-story-copy strong{
    font-size:clamp(23px,7vw,30px);
    line-height:1.08;
  }
  .engagement-story-copy em{font-size:12px;line-height:1.55;margin-top:8px;}
  .engagement-story-copy p{font-size:13px;line-height:1.65;margin-top:14px;-webkit-line-clamp:3;}
  .engagement-read-more{padding-top:20px;font-size:11px;}

  .engagement-story-modal{
    padding:0;
    background:#fdfcf8;
    backdrop-filter:none;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior-y:contain;
  }
  .engagement-story-modal.open{
    display:block;
  }
  .engagement-story-dialog{
    width:100%;
    min-height:100vh;
    min-height:100dvh;
    max-width:none;
    border-radius:0;
    box-shadow:none;
    overflow:visible;
    display:flex;
    flex-direction:column;
    background:#fdfcf8;
  }
  .engagement-story-dialog>figure{
    width:100%;
    flex:0 0 auto;
    min-height:0;
    height:auto;
    aspect-ratio:16/10;
    max-height:42vh;
    max-height:42dvh;
    background:#e3eae4;
  }
  .engagement-story-dialog>figure img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
  }
  .engagement-story-dialog-copy{
    width:100%;
    overflow:visible;
    max-height:none;
    padding:28px 20px calc(38px + env(safe-area-inset-bottom));
  }
  .engagement-story-dialog-meta{
    gap:9px;
    margin-bottom:14px;
    padding-right:48px;
    font-size:9px;
    line-height:1.45;
  }
  .engagement-story-dialog-meta time:before{margin-right:9px;}
  .engagement-story-dialog-copy h2{
    font-size:clamp(30px,9vw,42px);
    line-height:1.02;
    letter-spacing:-.02em;
    overflow-wrap:anywhere;
  }
  .engagement-story-subtitle{
    margin:14px 0 4px;
    font-size:15px;
    line-height:1.55;
  }
  .engagement-story-location{
    margin:5px 0 22px;
    font-size:12px;
    line-height:1.5;
  }
  .engagement-story-body{
    font-size:15px;
    line-height:1.75;
  }
  .engagement-story-body p{margin-bottom:17px;}
  .engagement-story-link{
    width:100%;
    min-height:48px;
    margin-top:12px;
    white-space:normal;
  }
  .engagement-story-close{
    position:fixed;
    right:max(12px,env(safe-area-inset-right));
    top:max(12px,env(safe-area-inset-top));
    width:46px;
    height:46px;
    font-size:27px;
    background:rgba(255,255,255,.96);
    box-shadow:0 8px 28px rgba(0,0,0,.14);
  }
}

@media (max-width:420px){
  .engagement-stories-section .container{width:min(100% - 20px,var(--container));}
  .engagement-story-copy,
  .engagement-story-card.featured .engagement-story-copy{padding:20px 18px 22px;}
  .engagement-story-dialog>figure{aspect-ratio:4/3;max-height:38dvh;}
  .engagement-story-dialog-copy{padding:24px 18px calc(34px + env(safe-area-inset-bottom));}
  .engagement-story-dialog-copy h2{font-size:clamp(28px,9.3vw,38px);}
  .engagement-story-body{font-size:15px;line-height:1.72;}
}

/* Phase 5.6.4 — Desktop Public Engagement reader polish */
@media (min-width:901px){
  .engagement-story-modal{
    padding:clamp(26px,3.4vw,50px);
    overflow:hidden;
  }
  .engagement-story-modal.open{
    place-items:center;
  }
  .engagement-story-dialog{
    width:min(1180px,calc(100vw - 88px));
    max-height:84vh;
    grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);
    border-radius:24px;
  }
  .engagement-story-dialog>figure{
    min-height:0;
    height:84vh;
    max-height:84vh;
    align-self:stretch;
  }
  .engagement-story-dialog>figure img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
  .engagement-story-dialog-copy{
    max-height:84vh;
    padding:clamp(36px,4vw,56px);
    padding-right:clamp(42px,4.6vw,66px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
  }
  .engagement-story-dialog-copy h2{
    max-width:760px;
    font-size:clamp(36px,3vw,48px);
    line-height:1.01;
    letter-spacing:-.025em;
  }
  .engagement-story-dialog-meta{
    margin-bottom:16px;
  }
  .engagement-story-subtitle{
    font-size:15px;
    margin-top:16px;
  }
  .engagement-story-location{
    margin-bottom:24px;
  }
  .engagement-story-body{
    max-width:720px;
    font-size:15px;
    line-height:1.75;
  }
  .engagement-story-close{
    top:16px;
    right:16px;
    width:44px;
    height:44px;
    z-index:5;
  }
}

@media (min-width:901px) and (max-width:1180px){
  .engagement-story-modal{padding:24px;}
  .engagement-story-dialog{
    width:calc(100vw - 48px);
    grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);
  }
  .engagement-story-dialog-copy{padding:34px 42px 38px;}
  .engagement-story-dialog-copy h2{font-size:clamp(34px,4vw,43px);}
}
