/* Composed portrait layouts, with deliberate framing and no full-body spacer. */
.about-preview-layout{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);gap:65px;align-items:center}
.about-preview-portrait,.site-pages .profile-portrait{margin:0;background:#f6f6f6;border:1px solid #e7e7e7;overflow:hidden;aspect-ratio:4/5;width:100%;max-width:360px;position:relative}
.about-preview-portrait img,.profile-portrait img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 55%;transform:scale(1.22);transform-origin:50% 62%}
.about-preview-copy h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,5vw,70px);font-weight:500;letter-spacing:-.06em;line-height:1.05;margin:20px 0 18px}
.about-preview-copy p{font-size:14px;color:#555;line-height:1.85;max-width:650px}
.about-preview-copy .about-preview-role{font-size:16px;color:#111}
.about-preview-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:24px}
.site-pages .cv-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:55px;align-items:center;margin-bottom:35px}
.site-pages .cv-intro>.cv-intro-text{grid-column:1}
.site-pages .cv-intro>.profile-portrait{grid-column:2;grid-row:1;justify-self:end;align-self:center}
.site-pages .cv-intro h1{font-size:clamp(52px,6vw,82px);margin:20px 0;line-height:1;letter-spacing:-.065em}
.cv-intro-text>p:not(.cv-role){font-size:14px;line-height:1.85;color:#555;max-width:590px;margin:20px 0}
.site-pages .cv-panel{max-width:none}
@media(max-width:800px){
 .about-preview-layout{gap:30px}
 .site-pages .cv-intro{grid-template-columns:minmax(0,1fr) minmax(200px,.6fr);gap:30px}
 .site-pages .cv-intro h1{font-size:55px}
}
@media(max-width:600px){
 .site-pages .cv-page{padding-top:25px}
 .site-pages .cv-intro{grid-template-columns:1fr;gap:24px}
 .site-pages .cv-intro>.profile-portrait{grid-column:1;grid-row:1;justify-self:stretch;max-width:none;aspect-ratio:1.3/1;max-height:310px}
 .site-pages .profile-portrait img{object-position:50% 36%;transform:scale(1.08);transform-origin:50% 35%}
 .site-pages .cv-intro>.cv-intro-text{grid-row:2}
 .site-pages .cv-intro h1{font-size:clamp(42px,12vw,58px);margin:15px 0}
 .site-pages .cv-role{font-size:17px;margin-bottom:15px}
 .cv-intro-text>p:not(.cv-role){font-size:13px;line-height:1.8;margin:16px 0}
 .about-preview-layout{grid-template-columns:110px minmax(0,1fr);gap:20px;align-items:start}
 .about-preview-portrait{width:110px;aspect-ratio:4/5;margin:0}
 .about-preview-copy h2{font-size:32px;margin:12px 0}
 .about-preview-copy .eyebrow{font-size:8px}
 .about-preview-copy .about-preview-role{font-size:12px}
 .about-preview-copy p{font-size:12px;line-height:1.8}
 .about-preview-actions{gap:16px;grid-column:1/-1}
 .about-preview-actions .btn{font-size:10px;padding:14px}
}
@media(max-width:600px){
 .about-preview-copy{display:contents}
 .about-preview-portrait{grid-column:1;grid-row:1 / span 3}
 .about-preview-copy>.eyebrow{grid-column:2;grid-row:1;align-self:end}
 .about-preview-copy>h2{grid-column:2;grid-row:2;margin:0}
 .about-preview-copy>.about-preview-role{grid-column:2;grid-row:3;margin:0;align-self:start}
 .about-preview-copy>p:not(.about-preview-role),.about-preview-copy>.about-preview-actions{grid-column:1 / -1;margin-top:0}
 .about-preview-layout{gap:12px 20px}
}
