:root {
  --ink:#09090b;
  --cream:#fff8ef;
  --red:#ed1c24;
  --gold:#f1d78f;
  --surface:#111114;
  --raised:#17171b;
  --line:rgba(255,248,239,.16);
  --muted:#aeb2be;
  --glass:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(255,255,255,.05),0 7px 16px rgba(0,0,0,.22),0 0 0 1px rgba(255,255,255,.04);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;color-scheme:dark}
body{margin:0;background:radial-gradient(circle at 9% 7%,rgba(237,28,36,.12),transparent 27rem),radial-gradient(circle at 86% 18%,rgba(241,215,143,.055),transparent 30rem),var(--ink);color:var(--cream);font-family:Inter,Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
button{font:inherit}
.skip-link{position:fixed;left:12px;top:12px;z-index:20;transform:translateY(-180%);background:var(--cream);color:var(--ink);padding:10px 14px;border-radius:8px;font-weight:800}
.skip-link:focus{transform:none}
.nav-shell{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);background:rgba(9,9,11,.93);backdrop-filter:blur(18px);position:relative;z-index:5}
.brand{font-weight:900;font-size:17px;letter-spacing:-.025em;line-height:.85;display:flex;flex-direction:column}.brand span{color:var(--red);font-size:8px;letter-spacing:.22em;margin-top:5px}
.nav-shell nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.nav-shell nav a:hover,.nav-shell nav a:focus{color:white}.nav-cta,.button{color:white;background:rgba(237,28,36,.5);border:1px solid rgba(237,28,36,.74);border-radius:8px;box-shadow:var(--glass);font-weight:700}.nav-cta{padding:12px 16px}
.profile-hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:calc(100vh - 76px);background:rgba(13,13,16,.94);color:var(--cream)}
.portrait-profile{min-width:0;padding:40px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:radial-gradient(circle at 76% 18%,rgba(237,28,36,.78),transparent 31%),linear-gradient(140deg,#3a0b10 0%,#1a0b0e 48%,#09090b 100%)}
.portrait-profile:after{content:"";position:absolute;width:44%;height:130%;border:1px solid rgba(255,255,255,.22);transform:rotate(22deg);left:40%;top:-15%;pointer-events:none}
.portrait-kicker,.eyebrow{position:relative;z-index:2;text-transform:uppercase;font-size:11px;letter-spacing:.15em;font-weight:800;color:var(--red)}
.portrait-frame{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.portrait-frame.full img{width:100%;height:100%;object-fit:cover}.portrait-frame.inset{padding:56px;background:radial-gradient(circle at 50% 45%,rgba(237,28,36,.18),transparent 55%)}.portrait-frame.inset img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 22px 65px rgba(0,0,0,.5)}
.portrait-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.66),rgba(0,0,0,.04) 54%,rgba(0,0,0,.2));z-index:1;pointer-events:none}.portrait-source{position:relative;z-index:2;align-self:flex-start;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);border-bottom:1px solid rgba(241,215,143,.52);padding-bottom:4px}
.profile-intro{padding:8vw 6vw;display:flex;justify-content:center;flex-direction:column}.verified{color:var(--red);font-size:10px;letter-spacing:.16em;font-weight:800}.verified span{color:var(--muted);margin-left:10px}.profile-intro h1{font-size:clamp(70px,9vw,136px);letter-spacing:-.085em;line-height:.78;margin:35px 0;text-transform:uppercase}.profile-intro h1 em{color:var(--red);font-style:normal;font-weight:700}.profile-location{color:#8c8c8c}.role-chip-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 18px}.role-chip-list li{border:1px solid currentColor;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.role-chip-list li.primary{color:white;background:rgba(237,28,36,.52);border-color:rgba(237,28,36,.78)}
.follow-panel{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:32px}.button{padding:15px 20px;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.button.secondary{color:var(--cream);background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.2)}.button[aria-pressed="true"]{background:var(--cream);color:var(--ink);border-color:var(--cream)}.device-note{width:100%;min-height:1.3em;color:var(--muted);font-size:12px;line-height:1.4}
.profile-grid{display:grid;grid-template-columns:2fr 1fr;padding:8vw 4vw;gap:7vw}.profile-grid h2,.section-heading h2,.connections-section h2{font-size:clamp(34px,5vw,64px);letter-spacing:-.06em;margin:8px 0 0}.bio-copy{font-size:clamp(22px,2.4vw,34px);line-height:1.52}.editorial-note{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:30px}.residency-list{display:grid;gap:14px}.residency-card{color:white;background:linear-gradient(145deg,rgba(237,28,36,.74),rgba(108,10,16,.86));border:1px solid rgba(237,28,36,.72);border-radius:8px;box-shadow:var(--glass);padding:35px;min-height:270px;display:flex;flex-direction:column}.residency-card strong{font-size:42px;letter-spacing:-.06em;margin-top:auto}.residency-card span,.residency-card small{margin-top:10px}.residency-card small{border-top:1px solid rgba(255,255,255,.25);padding-top:16px}
.events-section,.connections-section{padding:7vw 4vw}.events-section{background:var(--raised)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px}.event-row{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:30px;padding:20px 0;border-top:1px solid var(--line)}.event-row time{display:flex;align-items:baseline;gap:6px}.event-row time b{font-size:35px}.event-row time span{font-size:11px;font-weight:800}.event-row h3{margin:0 0 5px;font-size:19px}.event-row p{margin:0;color:var(--muted)}.event-actions{display:flex;gap:20px;font-size:11px;font-weight:800;text-transform:uppercase}.event-actions a,.event-actions button{color:var(--gold);border:0;border-bottom:1px solid rgba(241,215,143,.52);background:transparent;padding:0 0 4px;font:inherit;font-weight:800;text-transform:uppercase;cursor:pointer}.empty-calendar{color:var(--muted);border-top:1px solid var(--line);padding-top:24px}
.connections-section{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.social-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:30px}.social-grid a,.social-empty{padding:18px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;margin-right:20px}.social-grid a{color:var(--gold)}.social-empty{color:var(--muted)}.social-empty b{font-size:10px;text-transform:uppercase}.relationship-empty{color:var(--muted);line-height:1.5;border-top:1px solid var(--line);padding-top:24px}.directory{padding:8vw 4vw}.directory h1{font-size:clamp(58px,10vw,150px);letter-spacing:-.085em;line-height:.78;margin:28px 0 50px;text-transform:uppercase}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.directory-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:rgba(255,255,255,.035)}.directory-media{aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 45%,rgba(237,28,36,.2),transparent 56%),var(--surface)}.directory-media.full img{display:block;width:100%;height:100%;object-fit:cover}.directory-media.inset{padding:24px}.directory-media.inset img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.directory-card-copy{padding:24px}.directory-card h2{font-size:32px;letter-spacing:-.05em;margin:14px 0}.directory-card p{color:var(--muted)}
@media(max-width:850px){.nav-shell{align-items:flex-start;padding-top:22px;padding-bottom:18px}.nav-shell nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.nav-shell nav a:not(.nav-cta):not(.nav-primary){display:none}.profile-hero,.profile-grid,.connections-section{grid-template-columns:1fr}.profile-hero{min-height:auto}.portrait-profile{min-height:580px}.profile-intro{padding:70px 6vw}.event-row{grid-template-columns:65px 1fr}.event-actions{grid-column:2;flex-wrap:wrap}.social-grid{grid-template-columns:1fr}.directory-grid{grid-template-columns:1fr 1fr}.portrait-frame.inset{padding:40px}}
@media(max-width:520px){.nav-shell{padding-left:18px;padding-right:18px}.profile-intro{padding:58px 24px}.profile-intro h1{font-size:clamp(58px,19vw,86px)}.portrait-profile{min-height:500px;padding:24px}.portrait-frame.inset{padding:28px}.profile-grid,.events-section,.connections-section,.directory{padding:72px 24px}.directory-grid{grid-template-columns:1fr}.event-row{grid-template-columns:54px 1fr;gap:14px}.event-actions{gap:14px}.button{min-height:44px}.connections-section{gap:64px}}

/* K8 approved profile design rollout: local review only. */
.next-events-list,.previous-events-list{max-height:34rem;overflow-y:auto;overscroll-behavior:auto;padding-right:.35rem}
.next-events-list{display:grid;gap:0}
.previous-events{margin-top:2rem;border-top:1px solid rgba(255,248,239,.13);padding-top:1.25rem}
.previous-events-list{display:grid;gap:12px;padding:0 .35rem 0 0;margin:0;list-style:none}
.previous-event-card{border-top:1px solid rgba(255,248,239,.13);padding:12px 0}
.previous-event-link{display:block;color:inherit;text-decoration:none}
.previous-event-link:hover,.previous-event-link:focus-visible{color:#f1d78f!important}
.previous-event-link:focus-visible{outline:2px solid #f1d78f;outline-offset:3px}
.previous-event-meta{color:#aeb2be;margin:0}
.previous-events-empty{color:#aeb2be}
.event-row>*{min-width:0}
.event-row h3,.event-row p{overflow-wrap:anywhere}
.event-actions{min-width:0;flex-wrap:wrap}
@media(max-width:850px){.event-row{grid-template-columns:65px minmax(0,1fr);gap:20px;align-items:start}.event-row time{min-width:65px}.event-actions{grid-column:2;width:100%;gap:14px 18px}}
@media(max-width:520px){.event-row{grid-template-columns:58px minmax(0,1fr);gap:16px;align-items:start}.event-row time{min-width:58px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;line-height:1}.event-row time b{font-size:32px;line-height:1}.event-row time span{order:-1;font-size:10px;line-height:1}.event-row h3{font-size:17px;line-height:1.18}.event-row p{font-size:13px;line-height:1.35}.event-actions{gap:12px 16px;padding-top:6px}}
@media(max-width:360px){.events-section{padding-left:18px;padding-right:18px}.event-row{grid-template-columns:54px minmax(0,1fr);gap:12px}.event-row time{min-width:54px}.event-row time b{font-size:30px}.event-row h3{font-size:16px}.event-actions{font-size:10px;gap:10px 12px}}
