:root{--black:#050505;--gold:#c99716;--gold2:#e3b62b;--white:#fff;--cream:#f6f3eb;--line:#d9d4c7;--sans:'Libre Franklin',Arial,sans-serif;--serif:'Playfair Display',Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--black);font:400 1rem/1.7 var(--sans)}
a{color:inherit}
.skip{position:fixed;top:-100px;left:1rem;z-index:100;background:var(--gold2);padding:.8rem 1rem;font-weight:700}
.skip:focus{top:1rem}
.site-header{height:84px;display:flex;align-items:center;gap:2rem;padding:0 4vw;background:var(--black);color:#fff;position:sticky;top:0;z-index:30;border-bottom:4px solid var(--gold)}
.identity{display:flex;align-items:center;gap:.9rem;text-decoration:none;margin-right:auto;font-weight:700;line-height:1.2}
.identity small{display:block;color:#b8b8b8;font-size:.7rem;font-weight:500;margin-top:.2rem}
.logo-identity{height:72px;width:190px;background:#fff;overflow:hidden}
.logo-identity img{display:block;width:100%;height:100%;object-fit:contain}
.site-header nav{display:flex;align-items:center;gap:2rem}
.site-header nav>a,.nav-group>a{text-decoration:none;font-size:.84rem;font-weight:600;padding:2rem 0}
.site-header nav>a.active,.nav-group>a.active,.site-header nav a:hover{color:var(--gold2)}
.nav-group{position:relative}
.subnav{display:none;position:absolute;right:0;top:58px;background:var(--black);border-top:4px solid var(--gold);min-width:310px;padding:.5rem 0;box-shadow:0 20px 40px #0005}
.nav-group:hover .subnav,.nav-group:focus-within .subnav{display:block}
.subnav a{display:block;padding:.75rem 1rem;text-decoration:none;font-size:.78rem;border-bottom:1px solid #222}
.menu-toggle{display:none;background:var(--gold);border:0;padding:.65rem .8rem;font-weight:700}
.view{display:none}
.view.active{display:block;animation:fade .35s ease}
@keyframes fade{from{opacity:0}
to{opacity:1}
}
.banner{height:min(620px,72vh);position:relative;background-image:url('/assets/home-hero-phcc-future-leaders.jpg');background-position:center 44%;background-size:cover;background-repeat:no-repeat}
.banner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#000d 0,#0008 48%,#0003)}
.banner-copy{position:absolute;left:6vw;bottom:9%;color:#fff}
.banner-copy p,.overline{text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:700}
.banner-copy p{color:var(--gold2)}
.banner h1,.page-hero h1,.article-head h1{font:700 clamp(4rem,8vw,8rem)/.88 var(--serif);letter-spacing:-.045em;margin:.6rem 0}
.banner h1 em,.page-hero h1 em{color:var(--gold2)}
.welcome-lead{background:#fff;padding:7vw}
.welcome-lead>.overline{text-align:center;color:var(--gold);margin-bottom:4rem}
.profile{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:7vw;max-width:1200px;margin:auto;align-items:center}
.profile figure{margin:0}
.profile figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-bottom:10px solid var(--gold)}
.profile figcaption{background:var(--black);color:#fff;padding:.7rem;text-align:center;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}
.section-number{color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.16em}
.profile h2{font:700 clamp(3rem,5.5vw,6rem)/.92 var(--serif);margin:1rem 0 2rem}
.profile h2 em{color:var(--gold)}
.role{font-weight:700;font-size:1.1rem}
.credentials{padding:0;list-style:none;border-top:1px solid var(--line);margin:2rem 0}
.credentials li{padding:.7rem 0;border-bottom:1px solid var(--line)}
.gold-button{display:flex;justify-content:space-between;max-width:300px;background:var(--gold);padding:1rem;text-decoration:none;font-weight:700}
.gold-button:hover{background:var(--black);color:#fff}
.full-copy{padding:7vw}
.copy-body{max-width:860px;margin:auto}
.copy-body h2{font:700 clamp(2rem,3vw,3rem)/1.15 var(--serif);margin:4rem 0 1.5rem}
.copy-body h2:first-child{margin-top:0}
.copy-body h3{font-size:1.35rem;margin:3rem 0 1rem}
.copy-body p{font-size:1.08rem;margin:0 0 1.5rem}
.introduction{background:var(--black);color:#eee}
.introduction .copy-body p:first-of-type:first-letter,.reflection-head+.full-copy .copy-body p:first-of-type:first-letter{float:left;font:700 6rem/.8 var(--serif);color:var(--gold);padding:.35rem .7rem .2rem 0}
.page-hero{min-height:68vh;background:var(--black);color:#fff;padding:7vw;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}
.page-hero>p:last-child{max-width:720px;font-size:1.25rem}
.page-hero .overline{color:var(--gold2)}
.ghost-number{position:absolute;right:3vw;top:0;font:700 25vw/.8 var(--serif);color:#ffffff0b}
.page-hero.compact{min-height:50vh}
.competency-grid{display:grid;grid-template-columns:repeat(2,1fr);background:#fff}
.competency-grid a{padding:4vw;min-height:390px;text-decoration:none;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;transition:.2s}
.competency-grid a:last-child{grid-column:1/-1}
.competency-grid a:hover{background:var(--gold)}
.competency-grid span{font-weight:800;color:var(--gold)}
.competency-grid a:hover span{color:var(--black)}
.competency-grid h2{font:700 clamp(2rem,4vw,4rem)/1 var(--serif);margin:auto 0 1rem}
.competency-grid p{max-width:600px}
.competency-grid b{margin-top:2rem}
.article-head{background:var(--black);color:#fff;padding:6vw 8vw;position:relative;overflow:hidden}
.article-head>a{font-size:.8rem;text-decoration:none;color:var(--gold2)}
.article-head .article-number{position:absolute;right:3vw;top:-6vw;font:700 25vw/1 var(--serif);color:#ffffff0a}
.article-head .overline{color:var(--gold2);margin-top:4rem}
.article-head h1{max-width:950px}
.article-head blockquote{font:700 clamp(1.4rem,2.3vw,2.3rem)/1.35 var(--serif);max-width:900px;margin:3rem 0;border-left:8px solid var(--gold);padding-left:1.5rem}
.courses{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#bbb}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:5vw;max-width:1300px;margin:auto;padding:7vw 4vw}
.article-layout .copy-body{max-width:820px;margin:0}
.evidence-panel{position:sticky;top:120px;height:max-content;background:#fff;border-top:8px solid var(--gold);padding:1.4rem}
.evidence-panel>a{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;text-decoration:none;border-bottom:1px solid var(--line);font-weight:600}
.evidence-panel>a:hover{color:var(--gold)}
.project-list,.capstone-list{background:#fff}
.project-list>a,.capstone-list>a{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:2rem;padding:3rem 6vw;border-bottom:1px solid var(--line);text-decoration:none}
.project-list>a:hover,.capstone-list>a:hover{background:var(--gold)}
.project-list>a>span,.capstone-list>a>span{color:var(--gold);font-weight:800}
.project-list>a:hover>span,.capstone-list>a:hover>span{color:var(--black)}
.project-list small,.capstone-list small{text-transform:uppercase;letter-spacing:.1em}
.project-list h2,.capstone-list h2{font:700 clamp(1.6rem,3vw,3rem)/1.1 var(--serif);margin:.5rem 0}
.reflection-head{background:linear-gradient(120deg,#050505 65%,#c99716 65%)}
footer{background:var(--black);color:#fff;border-top:4px solid var(--gold);padding:3rem 5vw;display:grid;grid-template-columns:1fr .75fr 1fr;align-items:end;gap:2rem;font-size:.85rem}
.footer-name b,.footer-name span,footer div a{display:block}
.footer-credit{text-align:right}
.footer-credit>span{display:block;color:#aaa}
.footer-credit a{color:var(--gold2)}
.footer-name span{color:#aaa}
footer div a{text-decoration:none;margin:.25rem 0}
@media(max-width:850px){.site-header{height:70px;padding:0 1rem}
.logo-identity{width:126px;height:58px}
.identity>span:last-child{font-size:.78rem}
.site-header nav{display:none;position:absolute;top:66px;left:0;right:0;background:var(--black);padding:1rem;align-items:stretch;flex-direction:column;gap:0;max-height:calc(100vh - 70px);overflow:auto}
.site-header nav.open{display:flex}
.site-header nav>a,.nav-group>a{display:block;padding:.8rem}
.subnav{display:block;position:static;box-shadow:none;border:0;padding-left:.8rem;min-width:0}
.menu-toggle{display:block}
.banner{height:62vh}
.banner-copy{left:1.25rem}
.banner h1{font-size:14vw}
.profile{grid-template-columns:1fr}
.welcome-lead,.full-copy{padding:4rem 1.25rem}
.page-hero{padding:5rem 1.25rem;min-height:60vh}
.page-hero h1,.article-head h1{font-size:14vw}
.competency-grid{grid-template-columns:1fr}
.competency-grid a,.competency-grid a:last-child{grid-column:auto;padding:2rem 1.25rem;min-height:330px}
.article-head{padding:4rem 1.25rem}
.article-layout{grid-template-columns:1fr;padding:4rem 1.25rem}
.evidence-panel{position:static}
.project-list>a,.capstone-list>a{grid-template-columns:45px 1fr;padding:2rem 1.25rem}
.project-list>a>b,.capstone-list>a>b{grid-column:2}
footer{grid-template-columns:1fr;padding:3rem 1.25rem}
.footer-credit{text-align:left}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
