/* Compact citations and a continuous, photograph-led news archive. */
.content-page .page-intro{padding-top:42px;padding-bottom:29px}
.content-page h1{font-size:clamp(34px,4.2vw,48px);line-height:1.1;letter-spacing:-.04em}
.content-page .page-intro .intro{font-size:14px;line-height:1.7;margin-top:14px;max-width:720px}
.content-page .eyebrow{margin-bottom:11px}
.content-page .content{padding-bottom:55px}
.publication-year{display:grid;grid-template-columns:80px minmax(0,1fr);gap:28px;border-top:1px solid var(--line);padding:23px 0 5px}
.compact-publications .publication-year h2{font-size:20px;font-weight:500;letter-spacing:-.025em;line-height:1.35;margin:1px 0 0}
.publication-year ol{list-style:none;margin:0;padding:0}
.publication-year li{margin:0 0 24px;padding:0;max-width:960px}
.publication-year .citation-authors{margin:0 0 3px;max-width:none;font-size:12px;line-height:1.65;color:var(--muted)}
.compact-publications .publication-year h3{font-size:16px;line-height:1.5;letter-spacing:-.012em;font-weight:600;margin:0}
.publication-year h3 a{text-decoration-thickness:1px;text-decoration-color:#a6b09c;text-underline-offset:3px}
.publication-year h3 a:hover{text-decoration-color:var(--ink)}
.publication-year .citation-venue{font-size:12px;line-height:1.65;margin:4px 0 0;max-width:none}
.citation-venue cite{font-style:normal}
.publication-type{display:inline-block;color:#486032;border:1px solid #b6c4a4;padding:0 5px;margin-left:5px;font-size:10px;line-height:1.6;white-space:nowrap}
.publication-year .citation-note{font-size:11px;line-height:1.6;margin:4px 0 0;color:var(--muted)}
.cv-link{border-top:1px solid var(--line);padding-top:22px;margin:3px 0 0;font-size:12px}
.cv-link a{text-underline-offset:4px}




.news-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:44px;align-items:start}
.news-layout .archive-title,.news-photo-column h2{font-size:12px;letter-spacing:.07em;font-weight:700;text-transform:uppercase;margin:0 0 15px;line-height:1.5;color:var(--muted)}
.news-entry{padding:17px 0 20px;border-top:1px solid var(--line);scroll-margin-top:24px}
.news-entry:first-child{border-top:0;padding-top:0}
.content .news-entry h2,.content .news-entry h3{font-size:17px;line-height:1.42;letter-spacing:-.02em;font-weight:600;margin:5px 0 0}
.news-entry p{font-size:12px;line-height:1.7;margin:8px 0 0;color:var(--muted)}
.news-entry .news-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 13px;font-size:10px;line-height:1.6;margin:0;color:#4c594e}
.news-meta span:last-child{color:#6b7666}
.news-entry .news-detail,.news-entry .news-authors{font-size:11px;line-height:1.65}
.news-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:9px;font-size:11px;line-height:1.6}
.news-links:empty{display:none}
.news-links a{text-underline-offset:3px;text-decoration-color:#8b997d}
.news-entry.has-photo{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:20px;align-items:start}
.news-photo{margin:0}
.news-photo a{display:block}
.news-photo img{width:100%;height:auto;object-fit:contain;background:#dfe3d7}
.news-photo figcaption{font-size:10px;line-height:1.55;color:var(--muted);margin-top:7px}
.sidebar-photo{margin-bottom:24px}
.entry-photo{margin-top:4px}





.news-archive .archive-note{font-size:10px;line-height:1.65;color:var(--muted);margin-top:20px;max-width:600px}

@media(max-width:1050px){.news-layout{grid-template-columns:minmax(0,1fr) 230px;gap:30px}.news-entry.has-photo{grid-template-columns:1fr}.entry-photo{max-width:270px;margin-top:0}}
@media(max-width:740px){.news-layout{grid-template-columns:1fr;gap:35px}.news-photo-column{display:grid;grid-template-columns:1fr 1fr;gap:22px}.news-photo-column h2{grid-column:1/-1;margin-bottom:0}.sidebar-photo{margin-bottom:0}.news-entry.has-photo{grid-template-columns:minmax(0,1fr) 180px;gap:18px}.content-page .page-intro{padding-top:32px}.content-page .page-intro .intro{font-size:13px}.publication-year{grid-template-columns:56px minmax(0,1fr);gap:18px}.publication-year .citation-authors{font-size:11px}.compact-publications .publication-year h3{font-size:15px}.publication-year .citation-venue{font-size:11px}}
@media(max-width:500px){.news-entry.has-photo{grid-template-columns:1fr}.entry-photo{max-width:290px}.news-photo-column{grid-template-columns:1fr}.news-photo-column h2{grid-column:auto}.content .news-entry h2,.content .news-entry h3{font-size:16px}.publication-year{display:block;padding-top:18px}.compact-publications .publication-year h2{font-size:18px;margin-bottom:16px}.publication-year li{margin-bottom:22px}.publication-type{margin-left:0;margin-top:3px}.publication-year .citation-venue cite{display:block}}
.news-gallery{grid-column:1/-1;min-width:0;width:100%;max-width:532px;margin-top:0;font-size:11px}.news-gallery>div{display:grid;grid-template-columns:repeat(2,minmax(0,260px));align-items:start;gap:12px;margin:0 0 4px}.news-gallery .news-photo{min-width:0;width:100%;max-width:260px}.news-gallery .news-photo img{display:block;width:100%;height:auto;max-height:180px;object-fit:contain}@media(max-width:500px){.news-gallery{max-width:260px}.news-gallery>div{grid-template-columns:minmax(0,260px)}}
/* Continuous archive: no pagination or content-hiding controls. */
.news-jumps{display:flex;flex-wrap:wrap;gap:25px;padding:14px 0;border-block:1px solid var(--line);margin-bottom:26px;font-size:12px}.news-jumps a{text-underline-offset:4px;min-height:30px;display:flex;align-items:center}.content .archive-year{font-size:18px;font-weight:500;line-height:1.4;letter-spacing:-.02em;margin:30px 0 18px;scroll-margin-top:24px}.content .archive-year:first-child{margin-top:0}.archive-year+.news-entry{border-top:0;padding-top:0}
/* Mobile photo strip precedes the archive; update chronology is unchanged. */
@media(max-width:740px){.news-photo-column{order:-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.news-photo-column h2{grid-column:1/-1;margin-bottom:0}.news-photo-column .sidebar-photo{min-width:0}.news-photo-column figcaption{font-size:9px;line-height:1.5;margin-top:6px}.news-layout{gap:26px}}

/* Static Upcoming strip: five brief event rows, separate from the News feed. */
.upcoming-strip{display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px;background:#ffffff;border:1px solid #bbcba2;border-left:3px solid #769843;padding:12px 17px;margin-bottom:20px}
.content .upcoming-strip h2{font-size:11px;line-height:1.65;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:3px 0 0;scroll-margin-top:24px}
.upcoming-strip ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.upcoming-strip li{display:grid;grid-template-columns:125px minmax(0,1fr);gap:12px;position:relative;font-size:12px;line-height:1.55;min-width:0}
.upcoming-date{font-size:11px;color:#4c594e;white-space:nowrap}
.upcoming-event-copy{min-width:0}
.upcoming-event-title{display:block}
.upcoming-strip a{text-underline-offset:3px;text-decoration-color:#9dad8b;overflow-wrap:anywhere}
.event-anchor{position:absolute;scroll-margin-top:24px}
.content .news-section-heading{font-size:23px;line-height:1.3;letter-spacing:-.025em;font-weight:500;margin:0 0 19px;scroll-margin-top:24px}
.past-news-section{padding-top:0}
.past-news-section .archive-year{font-size:14px;line-height:1.5;font-weight:700;letter-spacing:.03em;margin:28px 0 17px;color:var(--muted)}
.past-news-section .news-section-heading+.archive-year{margin-top:0}
.news-details{max-width:1100px}
@media(max-width:740px){.upcoming-strip{grid-template-columns:1fr;gap:8px;padding:12px 14px}.content .upcoming-strip h2{margin:0}.upcoming-strip li{grid-template-columns:114px minmax(0,1fr);gap:10px;font-size:11px}.upcoming-date{font-size:10px}.content .news-section-heading{font-size:21px}}
@media(max-width:380px){.upcoming-strip li{grid-template-columns:1fr;gap:1px}.upcoming-strip ul{gap:9px}}

/* Larger real images stay proportional; illustrative captions remain attached. */
.news-entry.has-photo{grid-template-columns:minmax(0,1fr) 300px;gap:24px}.entry-photo{width:100%;max-width:none}.news-entry-copy{min-width:0}
@media(max-width:1050px){.news-entry.has-photo{grid-template-columns:minmax(0,1fr) 280px;gap:22px}.entry-photo{max-width:none}}
@media(max-width:900px){.news-layout{grid-template-columns:1fr;gap:26px}.news-photo-column{order:-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.news-photo-column h2{grid-column:1/-1;margin-bottom:0}.sidebar-photo{margin-bottom:0}.news-entry.has-photo{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:740px){.news-entry.has-photo{grid-template-columns:1fr;gap:17px}.entry-photo{width:100%;max-width:none}.news-photo-column{gap:12px}.news-photo-column figcaption{font-size:9px}}
/* Small source portraits are never stretched to a wide mobile content column. */
.entry-photo[data-image-type="portrait"]{max-width:320px;justify-self:start}

/* Paper-figure credit stays readable with inline source and license links. */
.news-photo .figure-credit{display:block;margin-top:6px;font-size:10px;line-height:1.55}.news-photo .figure-credit a{display:inline;text-underline-offset:2px}

/* Wide official banners remain complete and legible across the entry. */
.news-entry.has-wide-art{grid-template-columns:1fr;gap:13px}.has-wide-art .entry-photo{padding:10px;background:#fff}.has-wide-art .entry-photo img{background:#fff}

/* A shallow, manually scrolled photo strip; original files stay intact. */
.news-layout{display:block}
.conference-carousel{margin:0 0 12px;padding:0;background:#fff;--strip-height:160px}
.conference-photo-track{display:flex;gap:7px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain}
.conference-photo-track::-webkit-scrollbar{display:none}
.conference-slide{flex:0 0 auto;width:calc(var(--strip-height)*var(--tile-ratio));height:var(--strip-height);margin:0;scroll-snap-align:start;position:relative}
.conference-slide>a{display:block;width:100%;height:100%}
.conference-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--subject-position,50% 50%)}
.photo-context{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.conference-carousel-controls{display:flex;justify-content:flex-end;gap:5px;margin-top:3px;height:24px}
.conference-carousel-controls[hidden]{display:none}
.conference-carousel button{font:inherit;font-size:14px;line-height:1;color:#52634b;background:#fff;border:0;padding:2px 7px;width:28px;height:24px;cursor:pointer}
.conference-carousel button:hover{color:#243b1d}
.conference-carousel button:disabled{color:#b6beb0;cursor:default}
.conference-carousel button:focus-visible,.conference-carousel a:focus-visible,.conference-photo-track:focus-visible{outline:2px solid #526e3a;outline-offset:-2px}
.news-entry{position:relative}
.news-service-bullets{margin:10px 0 0;padding-left:18px;display:grid;gap:8px;font-size:12px;line-height:1.7;color:var(--muted)}
.news-service-bullets strong{font-weight:600;color:var(--ink)}
.news-service-bullets a{font-size:11px;white-space:nowrap;text-underline-offset:3px}
.upcoming-note{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:3px}
@media(max-width:740px){.conference-carousel{--strip-height:125px;margin-bottom:10px}.conference-photo-track{gap:5px}}


/* Owner-approved presentation crop; links keep the byte-identical full photo. */
.photo-presentation-crop{display:block;position:relative;overflow:hidden}
.photo-presentation-crop>img{position:absolute;max-width:none;width:var(--crop-image-width);height:var(--crop-image-height);left:var(--crop-left);top:var(--crop-top);object-fit:fill}
