.profile-hero{padding:54px 0;background:linear-gradient(180deg,var(--cream),#ede2c9)}
.profile-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:52px;align-items:center}
.profile-hero h1{font-size:clamp(38px,4.5vw,58px);line-height:1.1;margin:18px 0 23px}
.profile-hero h1:after{content:'';display:block;width:115px;height:7px;margin-top:18px;background:var(--gold);border-radius:65% 32% 55% 24%;transform:rotate(-2deg)}
.profile-lead{font-size:21px;line-height:1.55;max-width:38ch}.profile-role{font-size:17px;line-height:1.6}.profile-degrees{font-size:16px;line-height:1.6;color:var(--muted)}
.profile-hero .button{margin-top:12px;white-space:normal;text-align:center}
.profile-portrait{margin:0;padding:11px 11px 0;background:var(--paper);border:1px solid #dfd1b2;border-radius:31px 23px 36px 25px;box-shadow:0 8px 0 #d9caab;transform:rotate(1deg)}
.profile-portrait img{display:block;width:100%;height:auto;border-radius:23px 17px 26px 18px}.profile-portrait figcaption{padding:13px 10px 17px;text-align:center;font-size:15px}
.profile-portrait--petra{width:min(100%,360px);justify-self:center}
.profile-testimonial{margin:24px 0 0;padding:24px;border-left:5px solid var(--gold);border-radius:0 20px 20px 0;background:var(--paper)}.profile-testimonial cite{display:block;font-size:14px;line-height:1.6;font-style:normal;color:var(--muted)}
.profile-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:54px;padding-block:50px 64px;align-items:start}
.profile-toc{background:var(--navy);color:var(--cream);padding:27px 24px;border-radius:31px 23px 36px 25px;box-shadow:0 7px 0 #d9caab}
.profile-toc h2{font-size:23px;line-height:1.2;color:var(--cream);margin:20px 0}.profile-toc ol{padding-left:20px;margin:0}.profile-toc li{padding-left:3px;margin:0 0 14px;font-size:15px;line-height:1.5}.profile-toc a{color:var(--cream);text-underline-offset:4px}.profile-toc a:hover{color:#e5b859}
.profile-content{min-width:0;max-width:780px}.profile-content section{scroll-margin-top:110px;margin-bottom:43px}.profile-content h2{font-size:clamp(27px,3vw,34px);line-height:1.2;margin:0 0 22px}.profile-content h3{font-size:23px;line-height:1.3;margin:28px 0 15px}.profile-content p{font-size:17px;line-height:1.75;margin:0 0 18px}.profile-content a{text-underline-offset:4px;overflow-wrap:anywhere}
.profile-qualifications{margin:26px 0 0}.profile-qualifications>div{padding:22px 24px;background:var(--paper);border:1px solid #e4d8bc;border-radius:22px 17px 26px 18px;margin-bottom:15px}.profile-qualifications dt{font-size:21px;font-weight:600;line-height:1.3;margin-bottom:10px}.profile-qualifications dd{margin:0;font-size:17px;line-height:1.7}
.profile-reading{list-style:none;padding:0;margin:24px 0 0}.profile-reading li{padding:18px 0;border-top:1px solid #d9cba0}.profile-reading a{font-size:19px;line-height:1.4;font-weight:600}.profile-reading p{margin:9px 0 0;font-size:16px}
.profile-opinion{background:var(--navy);color:var(--cream);padding:30px;border-radius:31px 23px 36px 25px;box-shadow:0 7px 0 #d9caab}.profile-opinion h2{color:var(--cream)}.profile-opinion p:last-child{margin-bottom:0}.profile-content .profile-date{font-size:14px;color:var(--muted);margin-top:26px}.profile-contact{flex-wrap:wrap;gap:12px}.profile-toc a:focus-visible{outline:2px solid #e5b859;outline-offset:4px}
@media(max-width:1000px){.profile-layout{grid-template-columns:230px minmax(0,1fr);gap:32px}.profile-hero-grid{gap:34px}.profile-toc{padding:25px 20px}}
@media(max-width:760px){.profile-hero-grid{grid-template-columns:1fr;gap:30px}.profile-portrait{max-width:540px}.profile-layout{grid-template-columns:1fr;gap:38px}.profile-toc{max-width:none}.profile-hero{padding-block:35px}.profile-lead{max-width:55ch}.profile-hero h1{font-size:42px}.profile-content{max-width:none}}
@media(max-width:480px){.profile-hero h1{font-size:36px}.profile-lead{font-size:19px}.profile-layout{padding-block:32px 40px}.profile-content p,.profile-qualifications dd{font-size:16px;line-height:1.7}.profile-content h2{font-size:28px}.profile-qualifications>div{padding:21px}.profile-opinion{padding:25px 22px}.profile-hero .button{width:100%}.profile-portrait{transform:none}}
