:root{--navy:#111d38;--ink:#18243b;--muted:#5c677c;--blue:#35678b;--carolina:#7bafd4;--pale:#edf5fb;--line:#dbe1ec;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #ecac48;outline-offset:6px}header,footer{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:27px 56px}.brand{font-size:25px;font-weight:800;letter-spacing:-2px;display:flex;align-items:center;gap:17px}.brand span{font-size:14px;letter-spacing:0;font-weight:600;border-left:1px solid var(--line);padding-left:17px}nav{display:flex;gap:29px;font-size:14px}nav a:hover{color:var(--blue)}.hero{max-width:1320px;margin:auto;padding:51px 56px 65px;display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:stretch}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.8px;line-height:1.6;margin:0 0 25px}.eyebrow span{padding:0 9px;color:var(--blue)}h1{font-size:clamp(48px,5.1vw,72px);line-height:1.08;letter-spacing:-3.4px;margin:0 0 26px;font-weight:700}h1>span{color:var(--muted);font-weight:400}.intro{font-size:18px;line-height:1.7;color:var(--muted);max-width:430px}.button{display:inline-flex;align-items:center;gap:38px;padding:14px 22px;background:var(--blue);color:white;border-radius:5px;font-weight:600;font-size:15px;margin-top:17px}.button:hover{background:#2446bd}.button span{font-size:21px}.hero-meta{display:flex;gap:18px;margin-top:36px;font-size:13px;color:var(--muted)}.hero-meta span+span{border-left:1px solid var(--line);padding-left:18px}.identity{background:var(--navy);color:white;border-radius:9px;position:relative;overflow:hidden;display:flex;flex-direction:column;padding:28px 31px;min-height:490px}.identity-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;color:#bbc8e1}.monogram{display:flex;align-items:center;justify-content:center;flex:1;font-weight:800;font-size:clamp(125px,17vw,230px);line-height:1.3;letter-spacing:-20px;color:#8dadff;padding-right:20px}.monogram span{color:#fff}.identity-bottom{border-top:1px solid #394660;display:flex;justify-content:space-between;align-items:end;padding-top:20px;gap:20px}.identity-bottom p{margin:0;font-size:27px;line-height:1.2;letter-spacing:-.7px}.identity-bottom p span{display:block;font-size:12px;letter-spacing:0;color:#bbc8e1;margin-top:14px;line-height:1.5}.year{font-size:30px;line-height:1.2;text-align:right}.year span{display:block;font-size:10px;letter-spacing:.5px;color:#bbc8e1;margin-top:15px;line-height:1.5}.chapter-strip{background:var(--pale);padding:22px max(5vw,24px);display:flex;justify-content:space-evenly;gap:25px;font-size:12px;font-weight:700;letter-spacing:1.5px}.section{max-width:1208px;margin:auto;padding:90px 0;border-bottom:1px solid var(--line)}h2{font-size:clamp(32px,3.5vw,46px);line-height:1.16;letter-spacing:-1.8px;font-weight:500;margin:0}.about{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}.about-copy p{color:var(--muted);max-width:640px;margin:0 0 18px}.about-copy .large{font-size:25px;line-height:1.45;color:var(--ink);letter-spacing:-.4px;margin-bottom:25px}.section .eyebrow{color:var(--blue);margin-bottom:18px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:43px}.small-note{font-size:14px;color:var(--muted)}.academic-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:64px}.school-card{background:var(--pale);border-radius:7px;padding:33px;display:flex;flex-direction:column}.small-label{font-size:12px;letter-spacing:1.5px;color:var(--blue);font-weight:700}.school-card h3{font-size:35px;line-height:1.2;letter-spacing:-1px;margin:32px 0 8px}.school-card p{color:var(--muted);margin-top:0}.school-bottom{margin-top:auto;border-top:1px solid #ccd6ef;padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:14px}.school-bottom strong{font-size:20px}.learning>h3{font-size:21px;margin:0 0 15px}.subject{display:flex;gap:22px;padding:19px 0;border-bottom:1px solid var(--line)}.subject:last-child{border-bottom:0}.subject>span{font-size:13px;color:var(--blue);padding-top:4px}h4{margin:0;font-size:18px;font-weight:600}.subject p{font-size:16px;margin:4px 0 0;color:var(--muted)}.interest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.interest-grid article{border-top:2px solid var(--ink);padding:22px 0 0}.interest-number{font-size:12px;letter-spacing:1px;color:var(--muted)}.interest-grid h3{font-size:29px;letter-spacing:-.7px;margin:28px 0 10px}.interest-grid p{color:var(--muted);margin:0 0 26px;min-height:105px}.tag{display:inline-block;background:var(--pale);border-radius:25px;font-size:13px;padding:6px 13px;color:#314f91}.heading-note{max-width:270px;color:var(--muted);margin:0}.project{display:grid;grid-template-columns:55px 1fr 180px;gap:22px;border-top:1px solid var(--line);padding:32px 0}.project:last-child{padding-bottom:0}.project-index{font-size:20px;color:var(--muted)}.status{font-size:11px;font-weight:700;letter-spacing:1px;color:#4d617e}.project h3{font-size:26px;margin:8px 0;letter-spacing:-.5px}.project p{max-width:650px;color:var(--muted);margin:0}.project-category{font-size:13px;text-align:right;color:var(--muted);padding-top:5px}.next{max-width:none;background:var(--navy);color:white;padding:70px max(calc((100vw - 1208px)/2),56px);border:0}.next .eyebrow{color:#9ab6ff}.next h2{font-size:clamp(38px,4vw,54px)}.next>p:not(.eyebrow){max-width:610px;color:#c3cde0;margin:25px 0 35px}.next-footer{border-top:1px solid #394660;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:14px}.next-footer>span{color:#c3cde0}footer p{font-size:13px;color:var(--muted)}.skip{position:absolute;top:-100px;left:15px;padding:10px;background:white;z-index:10}.skip:focus{top:10px}@media(min-width:1000px) and (max-width:1320px){.section{margin-left:56px;margin-right:56px}.next{margin:0}}@media(max-width:999px){header,footer{padding:24px 28px}nav{gap:18px}.brand span{display:none}.hero{padding:35px 28px 50px;gap:30px}h1{font-size:52px}.identity{padding:24px;min-height:460px}.section{padding:65px 28px;margin:0}.about{gap:40px}.academic-grid{gap:35px}.interest-grid{gap:24px}.project{grid-template-columns:35px 1fr}.project-category{display:none}.next{padding:65px 28px}}@media(max-width:650px){header{align-items:flex-start;padding:20px}.brand{line-height:1.2}nav{justify-content:flex-end;flex-wrap:wrap;gap:10px 17px;max-width:255px;font-size:13px}.hero{grid-template-columns:1fr;padding:35px 20px 35px;gap:35px}h1{font-size:55px;letter-spacing:-2.8px}.intro{font-size:17px}.identity{min-height:380px}.monogram{font-size:170px}.hero-meta{margin-top:27px}.chapter-strip{padding:20px;justify-content:center;flex-wrap:wrap;gap:9px 22px;font-size:10px}.section{padding:52px 20px}.about,.academic-grid,.interest-grid{grid-template-columns:1fr;gap:28px}.about-copy .large{font-size:22px}.section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:28px}h2{font-size:35px}.school-card{padding:27px;min-height:295px}.interest-grid{margin-top:30px}.interest-grid p{min-height:0}.interest-grid h3{margin-top:16px}.project{gap:12px;grid-template-columns:27px 1fr;padding:25px 0}.project h3{font-size:24px}.next-footer{align-items:start;flex-direction:column;gap:14px}footer{padding:23px 20px;gap:20px}footer p{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{nav,.button,.next-footer a{display:none}.hero,.section{padding:24px 0}.identity{min-height:300px}.section{break-inside:avoid}.next{background:white;color:var(--ink)}.next>p:not(.eyebrow),.next-footer>span{color:var(--muted)}header,footer{padding:16px 0}}

/* Personal portfolio photography and confirmed accomplishments */
.hero{align-items:center}.portrait{margin:0;background:var(--navy);border-radius:9px;overflow:hidden}.portrait img{display:block;width:100%;height:495px;object-fit:cover;object-position:center 26%}.portrait figcaption{color:white;padding:17px 23px;font-size:19px;font-weight:600;line-height:1.5}.portrait figcaption span{display:block;color:#c3cde0;font-size:14px;font-weight:400}.course-intro{font-size:16px;line-height:1.7;max-width:310px;padding-bottom:20px}.course-list{list-style:none;margin:0;padding:0}.course-list li{padding:13px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:17px}.course-list li:last-child{border:0}.course-level{font-size:14px;color:var(--blue);background:var(--pale);padding:2px 10px;border-radius:20px}.research-feature{display:grid;grid-template-columns:1.3fr 1fr;gap:45px;align-items:center}.research-photo{margin:0}.research-photo img{display:block;width:100%;height:auto;border-radius:7px}.research-photo figcaption{font-size:14px;color:var(--muted);margin-top:10px}.research-copy h3,.electrolyte h3{font-size:35px;line-height:1.2;letter-spacing:-1px;margin:18px 0}.research-copy>p,.electrolyte p{color:var(--muted)}.award{border-left:3px solid var(--blue);padding:8px 0 8px 20px;margin-top:25px}.award span{display:block;color:var(--blue);font-size:13px;letter-spacing:1.5px;font-weight:700;margin-bottom:5px}.award strong{font-size:17px}.electrolyte{display:grid;grid-template-columns:1fr 1fr;gap:45px;border-top:1px solid var(--line);margin-top:40px;padding-top:35px}.electrolyte h3{font-size:29px}.electrolyte p{margin:0 0 13px}.electrolyte .recognition{color:var(--ink);font-size:16px}.basketball-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.basketball-photo{margin:0}.basketball-photo img{width:100%;height:630px;object-fit:cover;object-position:center 60%;display:block;border-radius:7px}.basketball-copy h3{font-size:33px;line-height:1.25;letter-spacing:-.9px;margin:17px 0 20px}.basketball-copy>p{color:var(--muted);max-width:470px}.goal{border-left:3px solid var(--blue);padding:8px 20px;margin:26px 0}.goal p{margin:8px 0 0}.courtside{margin:25px 0 0}.courtside img{width:100%;height:250px;display:block;object-fit:cover;object-position:center 39%;border-radius:7px}.interest-grid p{min-height:135px}.future-ideas{max-width:610px;border-top:1px solid #394660;padding:17px 0;margin:0 0 26px;color:#c3cde0}.future-ideas summary{color:white;cursor:pointer;font-size:16px}.future-ideas p{margin-bottom:0}.future-ideas summary:focus-visible{outline:3px solid #ecac48;outline-offset:5px}
@media(max-width:999px){.research-feature{gap:30px}.basketball-grid{gap:30px}.basketball-photo img{height:650px}.portrait img{height:470px}.basketball-copy h3{font-size:28px}.research-copy h3{font-size:30px}}
@media(max-width:650px){.portrait img{height:auto;max-height:530px;object-fit:cover;aspect-ratio:4/5;object-position:center 25%}.hero h1{font-size:51px}.research-feature,.electrolyte,.basketball-grid{grid-template-columns:1fr;gap:25px}.research-copy .small-label{font-size:12px}.electrolyte h3{margin-bottom:0}.basketball-photo img{height:auto;max-height:650px;object-fit:contain;background:#edf2ff}.courtside img{height:300px}.interest-grid p{min-height:0}.portrait figcaption{padding:15px 20px}.course-list li{font-size:16px}.electrolyte{gap:15px}.next h2{font-size:37px}}
@media print{.portrait img{height:330px}.basketball-photo img{height:400px}.courtside{display:none}.future-ideas{display:none}.next>p{color:var(--ink)}}

/* Carolina Blue accents, with dark text for readable contrast. */
.button{background:var(--carolina);color:var(--navy)}.button:hover{background:#9bc3df}.chapter-strip{background:var(--carolina);color:var(--navy)}.portrait figcaption{border-top:5px solid var(--carolina)}.school-card{border-top:4px solid var(--carolina)}.award{border-left-color:var(--carolina)}.course-level,.tag{background:#dfedf7;color:#28516f}.interest-grid article{border-top-color:var(--carolina)}.next .eyebrow{color:var(--carolina)}.next-footer a{color:#aed3ed}.hero .eyebrow span{color:var(--carolina)}

/* Keep the new headshot centered across portrait layouts. */
.portrait img{object-position:center 28%}
@media(max-width:650px){.portrait img{object-position:center 28%}}
