:root{--cream:#f9f8f5;--white:#fff;--ink:#1c1c1c;--mid:#4a4a4a;--gold:#E5AB20;--gold-text:#E5AB20;--lav:#cfa9cf;--silver:#b8b8b8;--line:rgba(229,171,32,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Jost',Arial,sans-serif;font-size:16px;line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--gold-text);outline-offset:4px}.skip{position:absolute;left:16px;top:-90px;z-index:50;background:white;padding:12px}.skip:focus{top:8px}.nav{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 4%;border-bottom:1px solid var(--line);background:#fff}.nav-logo{font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;font-weight:600;text-decoration:none}.nav-logo span{color:var(--gold-text)}.nav-label{font-size:14px;letter-spacing:.11em;text-transform:uppercase;color:var(--mid)}.hero{text-align:center;background:white;border-top:4px solid var(--gold);padding:46px 20px 42px}.eyebrow{font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);margin:0 0 14px}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif}h1{font-size:clamp(42px,5.8vw,76px);font-weight:300;line-height:1.05;margin:0 0 14px}h1 em{font-weight:300}.orgs{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:clamp(24px,3vw,34px);margin:0}.orgs a:first-child{color:#865486}.orgs a:last-child{color:#666}.amp{color:var(--gold-text)}.intro{color:var(--mid);font-weight:300;line-height:1.9;margin:18px 0 0}.years{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 20px;padding:16px 20px;background:#edece8;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.years>span{text-transform:uppercase;letter-spacing:.12em;font-size:14px;margin-right:16px}.years a{font-size:16px;text-decoration:none;padding:7px 8px;border-bottom:1px solid transparent}.years a:hover{border-color:var(--gold-text);color:var(--gold-text)}.graduates{max-width:1500px;margin:auto;padding:0 3.5% 40px}.year-section{padding-top:38px}.section-heading{display:flex;align-items:center;gap:15px;margin-bottom:18px}.section-heading h2{font-style:italic;font-size:32px;font-weight:400;margin:0;line-height:1.15}.accent{width:25px;height:3px;background:var(--lav);flex-shrink:0}.year-section:nth-child(even) .accent{background:var(--silver)}.rule{height:1px;background:var(--line);flex:1}.count{color:var(--mid);font-size:14px}.composite{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:5px;border:1px solid var(--line);background:white}.card{background:var(--white);min-width:0;border-bottom:3px solid var(--lav);transition:box-shadow .25s,transform .25s}.year-section:nth-child(even) .card{border-bottom-color:var(--silver)}.portrait{width:100%;display:block;position:relative;aspect-ratio:4/5;border:0;padding:0;background:#f0efec;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:contain;display:block}.photo-action{position:absolute;left:0;right:0;bottom:0;background:rgba(28,28,28,.84);color:#fff;font-size:14px;padding:8px;opacity:0;transition:opacity .2s}.portrait:hover .photo-action,.portrait:focus-visible .photo-action{opacity:1}.card:hover{box-shadow:0 8px 30px #00000010;z-index:1}.card-body{padding:18px 20px 22px}.card h3{font-size:25px;font-weight:600;line-height:1.15;margin:0 0 8px}.card h3 button{font:inherit;background:none;border:0;padding:0;text-align:left;color:inherit}.school{font-size:15px;margin:0 0 5px;color:var(--mid);line-height:1.5}.school:empty{display:none}.degree{font-size:14px;margin:0;color:var(--gold-text);line-height:1.6}.card-quote{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;font-style:italic;line-height:1.4;border-top:1px solid #00000012;margin:14px 0 0;padding-top:12px;overflow-wrap:anywhere}.photo-missing{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;line-height:1.4;color:var(--mid);text-align:center}.card-body p,.card h3{overflow-wrap:anywhere}footer{padding:28px 4%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--mid);font-size:14px}footer a{text-decoration:none}dialog{border:0;padding:0;background:white;color:var(--ink);width:min(960px,calc(100% - 32px));max-height:90dvh;box-shadow:0 20px 100px #0008}dialog::backdrop{background:rgba(28,28,28,.85);backdrop-filter:blur(6px)}body:has(dialog[open]){overflow:hidden}.dialog-toolbar{position:sticky;top:0;background:white;z-index:2;padding:12px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-toolbar>span{font-size:14px;color:var(--gold-text);letter-spacing:.12em;text-transform:uppercase}.dialog-toolbar button{background:var(--ink);color:white;border:0;padding:8px 16px;min-height:44px}.detail-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.detail-photo{background:#f0efec;display:flex;align-items:center;justify-content:center}.detail-photo img{max-width:100%;width:100%;height:490px;object-fit:contain;display:block}.detail-header{padding:36px 30px;display:flex;flex-direction:column;justify-content:center}.detail-year{color:var(--gold-text);text-transform:uppercase;font-size:14px;letter-spacing:.13em;margin:0 0 10px}.detail-header h2{font-size:42px;font-weight:400;line-height:1.1;margin:0 0 22px;overflow-wrap:anywhere}dl{margin:0}dt{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#666;margin:18px 0 4px}dd{margin:0;overflow-wrap:anywhere}.detail-quotes{padding:28px 34px 32px;background:var(--cream);border-top:3px solid var(--gold)}.detail-quotes h3,.additional h3{font-size:14px;font-family:'Jost',Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:var(--gold-text);font-weight:500;margin:0 0 14px}blockquote{font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;font-style:italic;line-height:1.55;border-left:3px solid var(--gold);padding-left:20px;margin:18px 0;white-space:pre-line;overflow-wrap:anywhere}.watch{display:inline-block;margin:16px 0 0;color:var(--gold-text);text-underline-offset:4px}.additional{padding:28px 34px}.additional img{display:block;max-width:100%;max-height:650px;margin:auto;object-fit:contain}.missing-detail{padding:45px 25px;color:var(--mid);text-align:center}
@media(min-width:1500px){.composite{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1050px){.composite{grid-template-columns:repeat(3,minmax(0,1fr))}.card-body{padding:16px}.detail-header{padding:24px}.detail-header h2{font-size:34px}}@media(max-width:700px){html{scroll-padding-top:16px}.nav{padding:12px 16px}.nav-logo{font-size:19px}.nav-label{display:none}.hero{padding:36px 16px 30px}.eyebrow{font-size:12px;letter-spacing:.15em}.orgs{gap:4px 10px;font-size:25px}.intro{max-width:370px;margin:18px auto 0}.years{gap:4px 12px;padding:12px}.years>span{width:100%;text-align:center;margin:0}.graduates{padding:0 12px 30px}.section-heading{gap:9px;flex-wrap:wrap}.section-heading h2{font-size:28px}.count{font-size:13px}.composite{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px}.card-body{padding:12px 10px 16px}.card h3{font-size:23px}.school,.degree{font-size:14px}.card-quote{font-size:18px}.photo-action{display:none}.photo-missing{font-size:20px}.detail-top{grid-template-columns:1fr}.detail-photo img{height:auto;max-height:55dvh}.detail-header{padding:24px}.detail-header h2{font-size:36px}.detail-quotes,.additional{padding:24px}blockquote{font-size:23px}.dialog-toolbar{padding:10px 14px}.dialog-toolbar>span{letter-spacing:.04em}footer{flex-wrap:wrap}.section-heading .rule{min-width:10px}}@media(max-width:360px){.composite{grid-template-columns:1fr}.orgs{flex-direction:column}.orgs .amp{line-height:1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}@media print{.nav,.years,footer,.skip,dialog,.photo-action{display:none!important}.hero{padding:20px}.composite{grid-template-columns:repeat(3,minmax(0,1fr))}.card{break-inside:avoid}.card-quote{font-size:16px}.year-section{break-before:page}.year-section:first-child{break-before:auto}}

.detail-top.text-only{grid-template-columns:1fr}

.gallery-section{padding-top:38px}.gallery-section .card:nth-child(even){border-bottom-color:var(--silver)}

/* Shared SCP/GSG metallic gold palette and interaction, matched to national GSG. */
:root{--gold-heading:linear-gradient(90deg,#AA771C,#D4AF37,#FCF6BA,#C9A84C,#B38728);--gold-control:linear-gradient(135deg,#D4AF37,#C9A84C,#B8860B)}
@keyframes shimmer-gold{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.hero h1 em,.nav-logo span,.orgs .amp{background:var(--gold-heading);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer-gold 3s ease-in-out infinite}
.hero{border-top:0;position:relative}.hero::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gold-control);background-size:200% 200%;animation:shimmer-gold 3s ease-in-out infinite}
.rule{background:var(--gold-heading);opacity:.55}
.photo-action,.dialog-toolbar button,.skip{background:var(--gold-control);background-size:200% 200%;animation:shimmer-gold 3s ease-in-out infinite;color:#1a1a1a}
.dialog-toolbar button:hover,.skip:hover{filter:brightness(1.12)}
.card h3 button:hover,.card h3 button:focus-visible,footer a:hover,.watch:hover{color:var(--gold-text)}
.portrait:focus-visible,.dialog-toolbar button:focus-visible{outline-color:var(--gold);outline-offset:-4px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important}}
@media(forced-colors:active){.hero h1 em,.nav-logo span,.orgs .amp{background:none;-webkit-text-fill-color:CanvasText}.dialog-toolbar button,.skip{border:1px solid ButtonText}}

.orgs a{text-decoration:none}.orgs a:hover{text-decoration:underline;text-underline-offset:5px}footer{flex-wrap:wrap}footer a{white-space:nowrap}

/* Solid gold reference: Benjamin Lacy’s graduation stole. */
.eyebrow,.degree,.dialog-toolbar>span,.detail-year,.detail-quotes h3,.additional h3,.watch{color:var(--mid)}

/* Keep the page label visible after removing the Association header link. */
.nav{justify-content:flex-end}.nav-label{display:inline}

/* Keep the introduction together with natural wrapping in narrow embeds. */
.hero .intro{line-height:1.5;letter-spacing:normal;white-space:normal}
@media(max-width:700px){.hero .intro{text-align:left;font-size:16px;line-height:1.5;width:100%;max-width:100%;margin:18px auto 0}}
