@font-face{font-family:Montserrat;src:url(../assets/fonts/montserrat-normal.woff2) format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:Playfair;src:url(../assets/fonts/playfair-display-normal.woff2) format('woff2');font-weight:400 900;font-display:swap}
:root{--green:#144d47;--dark:#0d3632;--orange:#ad5036;--cream:#fcf6f0;--muted:#5c625e}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--dark);font:16px/1.75 Montserrat,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:8px;background:white;z-index:5}.wrap{max-width:1160px;margin:auto;padding:0 28px}.header{border-bottom:1px solid #144d471c;background:#fcf6f0}.nav{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:218px;height:auto;display:block}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{text-decoration:none;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--orange);color:white!important;padding:13px 23px;border-radius:40px;text-decoration:none;font-size:14px;font-weight:600;line-height:1.5;min-height:48px}.button:hover{background:#913f29}.breadcrumb{padding-top:26px;color:var(--muted);font-size:13px}.breadcrumb a{text-underline-offset:4px}.hero{display:grid;grid-template-columns:1fr 0.88fr;align-items:center;gap:72px;padding:38px 0 60px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:3px;font-weight:600;color:var(--orange);margin:0 0 16px}h1,h2{font-family:Playfair,Georgia,serif;line-height:1.15}h1{font-size:clamp(40px,4.8vw,62px);margin:0 0 16px;font-weight:600}h2{font-size:36px;font-weight:600;margin:0 0 22px}.registry{font-size:14px;font-weight:600;letter-spacing:1px}.intro{color:var(--muted);font-size:18px;margin:24px 0 28px}.portrait{width:84px;height:84px;border-radius:50%;object-fit:cover;object-position:top;margin-bottom:20px}.photo{margin:0}.photo img{display:block;width:100%;height:auto;border-radius:20px;max-height:620px;object-fit:contain;background:#e8e7df}.photo figcaption{font-size:12px;color:var(--muted);padding-top:10px}.photo.existing img{height:500px;object-fit:cover;object-position:top}.education{border-top:1px solid #144d4726;padding:54px 0 60px;display:grid;grid-template-columns:0.7fr 1.3fr;gap:72px}.education-intro p{color:var(--muted)}.degree{border-left:3px solid var(--orange);padding:4px 0 4px 22px;margin-bottom:24px}.degree h3{margin:0 0 4px;font-size:19px}.degree p{margin:0;color:var(--muted)}.course-list{list-style:none;padding:0;margin:0}.course-list li{padding:18px 0;border-bottom:1px solid #144d4720}.course-list h3{font-size:16px;line-height:1.5;margin:0 0 4px;font-weight:600}.course-list p{font-size:14px;margin:0;color:var(--muted)}.ongoing{margin-top:28px;padding:24px;border-radius:14px;background:#eaf0e7}.ongoing h3{margin:10px 0;font-size:19px}.status{font-size:12px;font-weight:600;color:var(--green);text-transform:uppercase;letter-spacing:1px}.ongoing p{margin-bottom:0}.contact{background:var(--green);color:white;border-radius:20px;padding:40px;display:flex;align-items:center;justify-content:space-between;gap:36px;margin-bottom:52px}.contact h2{font-size:30px;margin:0 0 12px}.contact p{margin:0;color:#d8e5df}.contact .button{flex-shrink:0}.team-links{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:45px}.team-links a{padding:10px 18px;border:1px solid #144d4730;border-radius:30px;text-decoration:none;font-size:14px}.team-links a:hover{background:#eaf0e7}footer{border-top:1px solid #144d4720;padding:26px 0;font-size:13px;color:var(--muted)}footer .wrap{display:flex;justify-content:space-between;gap:20px}.section-label{font-weight:600;margin-bottom:16px}
@media(max-width:760px){.wrap{padding:0 20px}.nav{min-height:80px;gap:12px}.logo{width:160px}.nav-links{gap:12px}.nav-links>a:not(.button){display:none}.nav .button{font-size:12px;padding:10px 14px;max-width:160px}.hero{grid-template-columns:1fr;gap:28px;padding:28px 0 36px}.hero h1{font-size:42px}.intro{font-size:16px}.photo img{max-height:none}.photo.existing img{height:420px}.education{grid-template-columns:1fr;gap:18px;padding:36px 0}h2{font-size:30px}.education-intro p{margin-bottom:0}.contact{padding:28px 22px;display:block}.contact .button{margin-top:24px}.contact h2{font-size:28px}footer .wrap{display:block}.portrait{width:70px;height:70px}}
