:root{--blue:#0077b5;--navy:#293e4a;--ink:#202a31;--muted:#6c7a83;--line:#dce2e6;--paper:#f3f5f6}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}body{font:14px/1.4 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer;background:none;border:0;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c69225;outline-offset:3px}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.app{height:100dvh;min-width:0;display:grid;grid-template-rows:64px 42px minmax(0,1fr) 36px;overflow:hidden}.masthead{display:flex;align-items:center;gap:40px;padding:0 32px;background:white;border-bottom:1px solid var(--line);min-width:0}.brand{font-size:24px;font-weight:700;letter-spacing:-1.05px;color:var(--ink);white-space:nowrap}.brand:hover{text-decoration:none}.brand span{color:white;background:var(--blue);border-radius:2px;padding:0 4px;margin:0 2px}.search{display:flex;align-items:center;gap:10px;background:#edf2f5;max-width:350px;flex:1;height:34px;padding:0 12px;border:1px solid #e1e7ea;border-radius:2px;color:var(--muted)}.search>span{font-size:23px;line-height:1}.search input{background:none;border:0;outline:none;min-width:0;width:100%;font-size:13px;color:var(--ink)}.search input::placeholder{color:#6d7c85}.member-link{margin-left:auto;color:#4f616d;white-space:nowrap;font-size:12px;display:flex;gap:14px;align-items:center}.navigation{display:flex;gap:28px;align-items:stretch;padding:0 32px;background:var(--navy);color:#ced9df;min-width:0}.navigation button{position:relative;font-size:12px;padding:0 2px}.navigation button.active{color:white}.navigation button.active:after{position:absolute;content:'';bottom:0;left:0;right:0;height:3px;background:#64b9e3}.navigation .coffee-nav{margin-left:4px}.independent{margin-left:auto;align-self:center;color:#9db0bc;font-size:11px}.main{display:grid;grid-template-columns:195px minmax(0,1fr);gap:35px;padding:28px 32px 15px;min-height:0;min-width:0;max-width:1440px;width:100%;margin:0 auto}.sidebar{min-height:0;display:flex;flex-direction:column;align-items:flex-start;border-right:1px solid var(--line);padding-right:30px;overflow:hidden}.program-mark{font-size:34px;line-height:1;letter-spacing:-2px;font-weight:700;color:var(--blue)}.program-mark span{color:#83a8bc;margin:0 2px}.sidebar h1{font-size:23px;line-height:1.15;letter-spacing:-.7px;margin:15px 0 8px}.program-sub{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.sidebar-rule{height:1px;background:var(--line);width:100%;margin:23px 0 18px}.side-label,.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin:0}.side-years{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;width:100%;margin:10px 0}.side-years button{padding:9px 10px;text-align:left;color:#556873;border-radius:2px;font-size:13px}.side-years button[aria-pressed=true]{color:white;background:var(--blue);font-weight:700}.side-years button:hover:not([aria-pressed=true]){background:#e6edf1}.sidebar-bottom{margin-top:auto;padding-top:18px}.sidebar-bottom p{font-size:10px;color:var(--muted)}.sidebar-bottom button{font-size:11px;color:var(--blue);padding:0}.directory{min-width:0;min-height:0;display:grid;grid-template-rows:78px minmax(0,1fr) 36px;gap:15px;overflow:hidden}.directory-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;min-width:0}.directory-heading h2{font-size:50px;line-height:1;letter-spacing:-2px;margin:5px 0 0}.directory-heading h2 span{color:var(--blue)}.filters{display:flex;gap:3px;align-self:flex-end;margin-bottom:5px;border-bottom:1px solid var(--line);flex-shrink:0}.filters button{padding:8px 10px;font-size:11px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.filters button[aria-pressed=true]{color:var(--blue);border-bottom-color:var(--blue)}.wall-wrap{min-height:0;min-width:0;position:relative;overflow:hidden}.people-wall{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));grid-template-rows:repeat(var(--rows,3),minmax(0,1fr));gap:12px;height:100%;max-height:calc(var(--rows,3)*120px + (var(--rows,3) - 1)*12px);align-content:start}.person{display:flex;align-items:center;gap:14px;padding:18px 14px;background:white;border:1px solid #dce3e8;border-top:2px solid #d5e5ed;min-width:0;min-height:0;border-radius:2px;transition:border-color .13s,box-shadow .13s}.person:hover{border-color:#9ac2d8;box-shadow:0 2px 8px #2445570b;text-decoration:none}.portrait{width:54px;height:54px;background:#e8eef2;flex-shrink:0;border-radius:2px;display:grid;place-items:center;color:#7392a5;font-size:18px;font-weight:400;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover}.person-details{min-width:0}.person-name{font-size:14px;line-height:1.3;font-weight:700;color:#17658f;overflow-wrap:anywhere;display:block}.person-meta{display:block;color:#74838c;font-size:10px;margin-top:6px}.person-arrow{margin-left:auto;color:#9db0bc;font-size:14px;align-self:flex-start;flex-shrink:0}.directory-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;border-top:1px solid var(--line);padding-top:7px}.coverage{color:#7a8790;font-size:10px;padding:4px 0;text-align:left}.pagination{display:flex;gap:12px;align-items:center;color:var(--muted);font-size:10px;flex-shrink:0}.pagination button{padding:3px 7px;font-size:18px;color:var(--blue)}.pagination button:disabled{opacity:.2;cursor:default}.empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:13px;text-align:center}footer{display:flex;gap:20px;align-items:center;padding:0 32px;color:#88949b;font-size:10px;border-top:1px solid var(--line);min-width:0}footer a{margin-left:auto;font-size:10px;color:#6e818e;white-space:nowrap}.footer-coffee{padding:3px 8px;font-size:15px}.mobile-years{display:none}dialog{border:1px solid #ccd9e1;border-top:4px solid var(--blue);box-shadow:0 20px 100px #172f4960;border-radius:3px;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:32px;overflow:auto;color:var(--ink)}dialog::backdrop{background:#17304475;backdrop-filter:blur(3px)}dialog h2{font-size:30px;line-height:1.1;letter-spacing:-1px;margin:9px 0 24px}dialog p{font-size:13px;line-height:1.6;color:#667781}dialog .close{position:absolute;right:13px;top:9px;padding:2px 7px;font-size:25px;color:#8c9ba4}.coffee-icon{font-size:30px;margin:0 0 18px}.coffee-icon+.eyebrow{color:var(--blue)}dialog label{display:block;font-size:11px;font-weight:700;margin-bottom:7px}dialog input{display:block;padding:10px;width:100%;border:1px solid #b4c3cc;border-radius:2px;color:var(--ink);background:#fbfcfd}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--blue);color:white;padding:11px 13px;border-radius:2px;margin-top:13px;font-size:12px;font-weight:700}.small{font-size:11px!important}.small button{padding:0;color:var(--blue);font-size:11px}.form-status{font-size:11px;min-height:0;margin:0}.form-status:not(:empty){margin-top:13px}.history{margin:18px 0 24px}.history div{display:grid;grid-template-columns:55px 1fr;gap:13px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.history strong{color:var(--blue)}.text-link{font-size:11px}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@media(max-width:1100px){.main{gap:24px;grid-template-columns:165px minmax(0,1fr);padding:23px 24px 10px}.masthead,.navigation{padding-left:24px;padding-right:24px}.masthead{gap:28px}.person{gap:10px;padding:13px 11px}.portrait{width:44px;height:44px;font-size:16px}.person-name{font-size:13px}.person-arrow{display:none}.sidebar{padding-right:22px}.brand{font-size:22px}.people-wall{gap:10px}}@media(max-width:740px){.app{grid-template-rows:56px 37px minmax(0,1fr) 30px}.masthead{padding:0 17px;gap:16px}.brand{font-size:19px;letter-spacing:-.9px}.search{max-width:210px;height:30px;padding:0 8px;gap:5px}.search input{font-size:11px}.member-link{font-size:10px;gap:6px}.navigation{padding:0 18px;gap:25px}.navigation button{font-size:11px}.independent{font-size:9px}.main{padding:18px 16px 10px;display:block}.sidebar{display:none}.directory{height:100%;grid-template-rows:64px 34px minmax(0,1fr) 31px;gap:12px}.directory-heading h2{font-size:43px;letter-spacing:-1.5px}.eyebrow{font-size:9px;letter-spacing:1.1px}.filters{margin-bottom:3px}.filters button{padding:7px 9px;font-size:10px}.mobile-years{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;border-bottom:1px solid var(--line)}.mobile-years button{padding:4px 0 8px;color:#718491;font-size:11px;border-bottom:2px solid transparent;margin-bottom:-1px}.mobile-years button[aria-pressed=true]{color:var(--blue);border-bottom-color:var(--blue);font-weight:700}.people-wall{gap:10px;max-height:calc(var(--rows,3)*112px + (var(--rows,3) - 1)*10px)}.person{padding:12px;gap:12px}.portrait{width:44px;height:44px}.person-name{font-size:13px}.person-meta{font-size:10px;margin-top:5px}footer{padding:0 16px;font-size:9px;gap:14px}footer a{font-size:9px}.coverage{font-size:10px}.pagination{gap:9px}}@media(max-width:520px){.masthead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-content:center}.search{grid-row:2;grid-column:1 / -1;max-width:none;height:28px;width:100%;margin-bottom:9px}.app{grid-template-rows:86px 35px minmax(0,1fr) 29px}.brand{font-size:19px}.member-link{grid-row:1;grid-column:2}.navigation{gap:24px}.independent{display:none}.main{padding:14px 12px 8px}.directory{grid-template-rows:55px 31px minmax(0,1fr) 28px;gap:10px}.directory-heading h2{font-size:37px}.filters button{padding:6px 7px;font-size:10px}.portrait{width:34px;height:34px;font-size:13px}.person{padding:9px;gap:8px}.person-name{font-size:11px}.person-meta{font-size:9px;margin-top:4px}.people-wall{gap:8px;max-height:calc(var(--rows,3)*94px + (var(--rows,3) - 1)*8px)}.coverage{font-size:9px}.pagination{font-size:9px;gap:5px}.pagination button{font-size:15px;padding:2px 5px}footer{padding:0 12px;gap:9px;font-size:8px}footer a{font-size:8px}.footer-coffee{font-size:13px;padding:2px 5px}dialog{padding:26px}}@media(max-height:620px) and (min-width:741px){.main{padding-top:14px;gap:24px}.directory{grid-template-rows:56px minmax(0,1fr) 30px;gap:10px}.directory-heading h2{font-size:39px}.sidebar h1{font-size:20px}.sidebar-rule{margin:12px 0 10px}.side-years{gap:3px;margin-top:6px}.side-years button{padding:5px 8px}.sidebar-bottom{padding-top:4px}.program-sub{display:none}.program-mark{font-size:27px}.person{padding:8px 10px}.portrait{width:36px;height:36px}.person-name{font-size:11px}.person-meta{font-size:9px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

#story{width:min(720px,calc(100vw - 32px))}.story-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0 10px}.story-photos figure{min-width:0;margin:0}.story-photos a{display:block;overflow:hidden;border-radius:2px;background:#e8eef2}.story-photos img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.story-photos figcaption{font-size:11px;color:var(--muted);margin-top:6px}.photo-credit{display:block;font-size:10px;margin:6px 0 14px}@media(max-width:540px){.story-photos{grid-template-columns:repeat(2,minmax(0,1fr))}}

.photo-directory{height:100%;min-width:0;min-height:0;display:grid;grid-template-rows:70px 30px minmax(0,1fr) 30px;gap:10px;overflow:hidden}.photo-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.photo-heading h2{font-size:46px;line-height:1;letter-spacing:-1.5px;margin:5px 0 0}.photo-heading h2 span{color:var(--blue)}.photo-heading button{flex-shrink:0;font-size:12px;color:var(--blue);padding:7px 0}.photo-filters{align-self:start;justify-self:start;margin:0}.photo-filters button{padding:4px 12px}.photo-wall-wrap{min-width:0;min-height:0;position:relative;overflow:hidden}.photo-wall{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));grid-template-rows:repeat(var(--rows,2),minmax(0,1fr));height:100%;gap:12px}.photo-card{padding:0;background:white;border:1px solid var(--line);border-radius:2px;min-width:0;min-height:0;overflow:hidden;text-align:left;display:flex;flex-direction:column}.photo-card:hover{border-color:#83b2cd}.photo-card>img{display:block;width:100%;height:0;flex:1;min-height:0;object-fit:cover;background:#e6edf1}.photo-card-detail{display:block;flex-shrink:0;padding:9px 11px}.photo-card-detail strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#17658f;font-size:13px;line-height:1.3}.photo-card-detail>span{display:block;margin-top:4px;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:740px){.photo-directory{grid-template-rows:62px 29px minmax(0,1fr) 28px;gap:9px}.photo-heading h2{font-size:38px}.photo-wall{gap:9px}.photo-card-detail{padding:8px}.photo-card-detail strong{font-size:12px}.photo-card-detail>span{font-size:9px}}@media(max-width:520px){.photo-directory{grid-template-rows:57px 28px minmax(0,1fr) 26px;gap:8px}.photo-heading h2{font-size:34px}.photo-heading button{font-size:11px}.photo-card-detail strong{font-size:11px}.photo-card-detail>span{font-size:8px}.photo-filters button{font-size:10px;padding:4px 10px}.navigation{gap:18px}}

.photo-card[data-category="people"]>img,.photo-card[data-category="recruiting"]>img{object-fit:contain}

@media(max-height:620px) and (min-width:741px){.photo-directory{grid-template-rows:38px 24px minmax(0,1fr) 24px;gap:6px}.photo-heading .eyebrow{display:none}.photo-heading h2{font-size:30px;margin:0}.photo-filters button{padding:2px 10px}.photo-card-detail{padding:7px 9px}.photo-card-detail strong{font-size:12px}.photo-card-detail>span{margin-top:2px;font-size:9px}.sidebar{padding-right:18px}.sidebar .program-mark{font-size:24px}.sidebar h1{font-size:17px;line-height:1.05;margin:8px 0}.sidebar-rule{margin:8px 0}.side-label{display:none}.side-years{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin:0}.side-years button{font-size:11px;padding:4px 2px;text-align:center}.sidebar-bottom{display:none}}

/* The photograph owns the lightbox; context lives behind one details control. */
.photo-heading h2{margin:0}.photo-directory{grid-template-rows:60px 30px minmax(0,1fr) 30px}.photo-card{border:0;background:transparent;border-radius:3px}.photo-card>img{border-radius:3px}.photo-card-detail{padding:8px 1px 3px}.photo-card-detail strong{font-size:12px;font-weight:400;color:#465f6d;-webkit-line-clamp:1}.photo-card:hover .photo-card-detail strong{color:var(--blue)}#photo-count{font-size:11px;color:var(--muted)}
#photo-viewer{width:calc(100vw - 32px);max-width:1440px;height:calc(100dvh - 32px);max-height:100dvh;padding:0;border:1px solid #ffffff18;border-radius:8px;background:#13232e;color:#f1f5f7;overflow:hidden;box-shadow:0 25px 100px #07101980}
#photo-viewer[open]{display:grid;grid-template-rows:52px minmax(0,1fr) auto 76px;gap:0}#photo-viewer::backdrop{background:#07131de0;backdrop-filter:blur(8px)}
.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 22px;gap:12px;min-width:0}.viewer-position{color:#a8bac5;font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:1px}.viewer-tools{display:flex;align-items:center;gap:6px}.viewer-tools form{display:flex;margin:0}.viewer-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;padding:9px;color:#bdd0db;flex-shrink:0}.viewer-icon:hover,.viewer-icon[aria-expanded=true]{background:#ffffff12;color:white}.viewer-icon svg,.viewer-arrow svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.viewer-icon.copied{color:#71d6ae;background:#71d6ae1a}.viewer-icon.copied svg{stroke-width:2.5}
.photo-stage{position:relative;min-width:0;min-height:0;margin:0 66px;display:grid;place-items:center;touch-action:pan-y pinch-zoom;overflow:visible;isolation:isolate}.photo-frame{width:100%;height:100%;min-height:0;min-width:0;display:grid;place-items:center;overflow:hidden}.photo-frame img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;-webkit-user-drag:none}.photo-stage[aria-busy=true]::after{content:'';position:absolute;bottom:8px;width:22px;height:22px;border:2px solid #ffffff25;border-top-color:#cee7f6;border-radius:50%;animation:photo-spin .7s linear infinite;pointer-events:none;animation-delay:.15s}
.viewer-arrow{position:absolute;top:calc(50% - 23px);width:44px;height:46px;padding:11px;border-radius:50%;color:#bdced9;background:#ffffff08;z-index:1}.viewer-arrow:hover{background:#ffffff1a;color:white}.viewer-arrow-prev{left:-54px}.viewer-arrow-next{right:-54px}.viewer-arrow:disabled{opacity:.2;cursor:default}.viewer-caption{padding:14px 24px 4px;text-align:center;min-width:0}#photo-viewer .viewer-caption h2{font-size:16px;font-weight:500;letter-spacing:0;line-height:1.35;margin:0;color:#f1f5f7;overflow-wrap:anywhere;max-width:900px;margin-inline:auto}#photo-context{display:block;font-size:11px;color:#92a7b5;margin-top:4px}
.viewer-filmstrip{display:flex;align-items:center;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;scrollbar-width:none;margin:0 22px;padding:12px 2px 14px;position:relative;min-width:0}.viewer-filmstrip::-webkit-scrollbar{display:none}.viewer-thumb{width:66px;height:46px;flex:0 0 66px;padding:0;background:#263946;overflow:hidden;opacity:.45;border:2px solid transparent;border-radius:3px;transition:opacity .15s,border-color .15s}.viewer-thumb img{display:block;width:100%;height:100%;object-fit:contain}.viewer-thumb:hover{opacity:.85}.viewer-thumb[aria-current=true]{opacity:1;border-color:#8bd0f5}.viewer-thumb:focus-visible{outline-offset:1px}
.viewer-details{position:absolute;z-index:4;right:18px;top:53px;bottom:20px;width:min(360px,calc(100% - 36px));padding:20px;background:#f9fbfc;color:var(--ink);border:1px solid #d4dfe6;border-radius:5px;box-shadow:0 8px 45px #06131c55;overflow:auto;overscroll-behavior:contain}.viewer-details-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-7px -7px 14px 0}.viewer-details h3{font-size:16px;margin:0}.viewer-details .viewer-icon{color:#667d8a}.viewer-details .viewer-icon:hover{background:#e5edf2;color:#173d54}#photo-viewer .photo-caption{font-size:13px;line-height:1.65;color:#334c5c;margin:0 0 18px}#photo-viewer .photo-note,#photo-viewer .photo-attribution{font-size:11px;line-height:1.65;color:#71818c;margin:14px 0;overflow-wrap:anywhere}.photo-actions{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:20px;padding-top:16px;border-top:1px solid #dce4e9;font-size:12px}.photo-load-error{text-align:center;position:absolute;inset:0;align-content:center}.photo-load-error p{color:#a7b9c5}.photo-load-error button{color:#95d3f6;text-decoration:underline;padding:10px}
@keyframes photo-spin{to{transform:rotate(360deg)}}
@media(max-width:600px){#photo-viewer{width:100vw;height:100dvh;border:0;border-radius:0}#photo-viewer[open]{grid-template-rows:56px minmax(0,1fr) auto 70px}.viewer-toolbar{padding:0 10px 0 18px}.viewer-icon{width:42px;height:42px;padding:11px}.viewer-tools{gap:2px}.photo-stage{margin:0 8px}.viewer-arrow{width:42px;height:44px;padding:12px;background:#102633ad;box-shadow:0 1px 6px #09192435}.viewer-arrow-prev{left:4px}.viewer-arrow-next{right:4px}.viewer-caption{padding:14px 18px 0}#photo-viewer .viewer-caption h2{font-size:14px}.viewer-filmstrip{margin:0 14px;padding-block:10px;gap:7px}.viewer-thumb{width:61px;flex-basis:61px;height:45px}.viewer-details{top:58px;bottom:14px;right:12px;width:calc(100% - 24px);padding:20px}.photo-directory{grid-template-rows:49px 28px minmax(0,1fr) 26px}}
@media(max-height:450px){#photo-viewer{width:100vw;height:100dvh;border:0;border-radius:0}#photo-viewer[open]{grid-template-rows:42px minmax(0,1fr) 38px 52px}.viewer-toolbar{padding-inline:16px}.viewer-icon{width:34px;height:34px;padding:8px}.viewer-caption{padding:6px 18px 0}#photo-viewer .viewer-caption h2{font-size:12px}#photo-context{display:none}.viewer-filmstrip{padding:6px 2px;margin-inline:66px}.viewer-thumb{height:36px;width:54px;flex-basis:54px}.viewer-details{top:43px;bottom:8px}.photo-stage{margin-inline:54px}.viewer-arrow-prev{left:-47px}.viewer-arrow-next{right:-47px}}
@media(prefers-reduced-motion:reduce){.photo-stage[aria-busy=true]::after{animation:none}.viewer-thumb{transition:none}}


/* A sourced yearbook record, kept behind the name rather than on every card. */
.person{text-align:left;width:100%}#person-profile{max-width:100vw;width:min(760px,calc(100vw - 28px));height:min(800px,calc(100dvh - 40px));padding:0;overflow:hidden;border-radius:4px;background:#fff}#person-profile[open]{display:grid;grid-template-rows:auto 45px minmax(0,1fr) 32px}.profile-header{display:flex;align-items:center;gap:18px;padding:26px 48px 22px 28px;min-width:0;position:relative}.profile-header>div{min-width:0}.profile-portrait{width:74px;height:74px;flex:0 0 74px;display:grid;place-items:center;background:#e5edf2;color:#7c98a9;font-size:22px;border-radius:3px;overflow:hidden}.profile-portrait img{width:100%;height:100%;object-fit:cover}#person-profile h2{font-size:28px;line-height:1.2;letter-spacing:-.7px;margin:5px 0 4px;overflow-wrap:anywhere}#person-aliases{font-size:11px;line-height:1.4;margin:4px 0 6px;color:#7a8a94}#person-linkedin{font-size:11px}.profile-header form{margin:0}.profile-tabs{display:flex;align-items:stretch;gap:24px;padding:0 28px;border-bottom:1px solid var(--line)}.profile-tabs button{color:#70828e;font-size:13px;padding:0 2px;border-bottom:3px solid transparent}.profile-tabs button[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.profile-body{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 28px 22px;scrollbar-width:thin;scrollbar-color:#c3d1d9 transparent}.profile-filters{display:flex;gap:4px;position:sticky;top:0;background:#fff;padding:13px 0 10px;z-index:1}.profile-filters button{font-size:11px;padding:6px 10px;color:#7b8e99;border-radius:2px}.profile-filters button[aria-pressed=true]{color:#14658f;background:#eaf2f6}.profile-timeline{list-style:none;margin:0;padding:0}.timeline-entry{display:grid;grid-template-columns:98px minmax(0,1fr);gap:18px;padding:18px 0;border-bottom:1px solid #edf1f4}.timeline-date{font-size:11px;font-variant-numeric:tabular-nums;color:#627988;line-height:1.6;padding-top:2px}.timeline-copy{min-width:0}#person-profile .timeline-copy h3{font-size:15px;line-height:1.4;margin:0 0 3px;font-weight:600;color:#294e65;overflow-wrap:anywhere}#person-profile .timeline-role{font-size:12px;line-height:1.6;margin:0;color:#596f7d}#person-profile .timeline-place{font-size:10px;line-height:1.6;margin:4px 0 0;color:#617786}#person-profile .timeline-qualification{font-size:11px;color:#7d7665;margin:6px 0 3px;line-height:1.5}.cohort-entry .timeline-date{color:var(--blue)}.cohort-entry .timeline-copy h3{color:var(--blue)}.fact-source{font-size:10px;color:#627988;margin-top:7px}.fact-source summary{cursor:pointer;list-style:none;display:inline-block}.fact-source summary::-webkit-details-marker{display:none}.fact-source summary:hover{color:var(--blue)}.fact-source[open]{color:#607683}.fact-source-body{border-left:2px solid #d9e7ef;padding:1px 0 2px 12px;margin-top:9px}.fact-source-body p{font-size:11px;line-height:1.7;margin:5px 0;overflow-wrap:anywhere}.fact-source-body a{display:inline-block;margin:4px 12px 2px 0;font-size:11px;overflow-wrap:anywhere}.profile-reading{padding-top:6px}.reading-entry{padding:20px 0;border-bottom:1px solid #e9eef2}.reading-meta{font-size:10px!important;line-height:1.5!important;color:#617786!important;margin:0 0 5px!important;overflow-wrap:anywhere}#person-profile .reading-entry h3{font-size:15px;line-height:1.5;font-weight:500;margin:0}.reading-evidence{font-size:10px;margin-top:9px;color:#95a2aa}.reading-evidence summary{cursor:pointer}.reading-evidence p{font-size:11px;margin:8px 0;line-height:1.65;color:#70828d;overflow-wrap:anywhere}.profile-footer{padding:0 28px;font-size:10px;background:#f9fbfc;color:#617786;justify-content:flex-start}.profile-empty{font-size:12px!important;color:#8597a2!important;margin:28px 0!important;line-height:1.7!important}.profile-retry{font-size:12px;color:var(--blue);padding:0}
@media(max-width:520px){#person-profile{width:100vw;height:100dvh;max-height:100dvh;border-left:0;border-right:0;border-bottom:0;border-radius:0}.profile-header{padding:22px 42px 18px 18px;gap:12px}.profile-portrait{width:54px;height:54px;flex-basis:54px}.profile-header .eyebrow{font-size:9px;letter-spacing:1px}#person-profile h2{font-size:23px}.profile-tabs{padding-inline:18px;gap:23px}.profile-body{padding:0 18px 18px}.timeline-entry{grid-template-columns:78px minmax(0,1fr);gap:13px;padding:16px 0}.timeline-date{font-size:10px}#person-profile .timeline-copy h3{font-size:14px}#person-profile .timeline-role{font-size:11px}.profile-footer{padding-inline:18px;font-size:9px}.reading-entry{padding:18px 0}#person-profile .reading-entry h3{font-size:14px}}
@media(max-height:450px){#person-profile{height:100dvh;max-height:100dvh}.profile-header{padding-block:12px;gap:12px}.profile-portrait{width:45px;height:45px;flex-basis:45px}#person-profile h2{font-size:22px;margin-block:2px}.profile-header .eyebrow{font-size:9px}#person-profile[open]{grid-template-rows:auto 36px minmax(0,1fr) 25px}#person-aliases{display:none}.profile-footer{font-size:9px}.profile-tabs button{font-size:12px}}

/* Small, interruptible transitions keep the original blue-and-white UI familiar. */
.navigation button { transition:color 140ms ease,background-color 140ms ease; }
.person,.photo-card { transition:border-color 150ms ease,box-shadow 150ms ease; }
.person,.photo-card,.feed-card { contain:layout style; }
@media(hover:hover) { .person:hover { box-shadow:0 3px 12px #263b490b; } }
dialog[open] { animation:dialog-arrive 180ms cubic-bezier(.2,.7,.2,1); }
dialog::backdrop { animation:backdrop-arrive 150ms ease-out; }
@keyframes dialog-arrive { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes backdrop-arrive { from { opacity:0; } to { opacity:1; } }
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
@media(max-width:520px) { .masthead .search input,dialog input,dialog textarea,dialog select { font-size:16px; } }
