.leader-portrait{display:block;width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;object-position:50% 25%;background:#e7ede5}
.portrait-initials{display:flex;align-items:center;justify-content:center;color:var(--green);font-size:5rem;line-height:1}
.leadership-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.leader-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-top:3px solid var(--green);scroll-margin-top:28px}
.leader-card-top{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;border-bottom:1px solid var(--line)}
.leader-card-heading{padding:24px}
.leader-card h3{font-size:clamp(1.55rem,2.2vw,2rem)}
.leader-card .eyebrow,.contact-leader-card .eyebrow{font-size:.8125rem;letter-spacing:.07em;margin-bottom:16px}
.leader-card .profile-role{line-height:1.55}
.leader-card-body{padding:28px;color:var(--muted)}
.leader-background{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:28px}
.leader-background h4{color:var(--ink);font-size:.9375rem;margin:0;line-height:1.4}
.leader-background .clean-list{margin-top:14px;font-size:.9375rem}
.leader-background .clean-list li{border:0;padding:0 0 10px 16px}
.leader-background .clean-list li:before{top:10px;width:5px;height:5px}
.leader-card-contact{padding:20px 28px;margin-top:auto;border-top:1px solid var(--line);background:var(--pale)}
.leader-contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font-size:.9375rem}
.leader-contact-links a{max-width:100%;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px;padding-block:3px}
.leader-contact-links a:hover{color:var(--green)}
.janne-contact{background:var(--pale);color:var(--ink);scroll-margin-top:20px}
.janne-contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:center}
.janne-identity{width:100%;max-width:360px;justify-self:center}
.janne-identity .leader-portrait{aspect-ratio:4/5}
.janne-name{padding-top:22px;border-top:1px solid var(--line);margin-top:22px}
.janne-name .janne-person-name{font-size:1.9rem;line-height:1.2;letter-spacing:-.035em;margin-top:0}
.janne-name p{margin-top:8px}
.janne-contact .eyebrow{color:var(--green)}
.janne-contact-copy>p{max-width:640px;color:var(--muted)}
.janne-contact-intro{margin-top:28px;font-size:1.1rem;line-height:1.75}
.janne-contact .button.secondary{background:transparent;color:var(--green);border-color:var(--green)}
.janne-contact .button.secondary:hover{background:#e7eee2}
.janne-contact .leader-contact-links{margin-top:24px}
.janne-contact .leader-contact-links a:hover{color:var(--green)}
.janne-contact a:focus-visible{outline-color:var(--green)}
.leader-actions{gap:12px}
.leader-actions .button{max-width:100%;gap:18px}
.contact-leadership-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:stretch}
.contact-leader-card{border:1px solid var(--line);border-top:3px solid #9aae99;padding:32px;display:flex;flex-direction:column;min-width:0;scroll-margin-top:24px}
.contact-leader-card.primary-contact{background:var(--pale);border-top-color:var(--green)}
.contact-leader-heading{display:grid;grid-template-columns:100px minmax(0,1fr);gap:22px;align-items:center}
.contact-leader-heading .leader-portrait{aspect-ratio:4/5}
.contact-leader-heading .portrait-initials{font-size:2.5rem}
.contact-leader-heading h2{font-size:clamp(1.6rem,2.5vw,2.2rem)}
.contact-leader-heading .profile-role{font-size:1rem;line-height:1.6}
.contact-leader-intro{margin:24px 0;color:var(--muted)}
.contact-leader-card .leader-contact-links{margin-bottom:24px}
.contact-leader-card .leader-actions{margin-top:auto}
.contact-leader-card .button.secondary{color:var(--green);border-color:var(--green)}
.contact-leader-card .button.secondary:hover{background:#e7eee2}
.contact-career-status{font-size:.9375rem;color:var(--muted);margin-top:25px}
.technical-contact{border-left:3px solid var(--green);background:var(--pale);padding:22px 25px;margin-top:30px}
.technical-contact p{margin:0;font-size:.9375rem;color:var(--muted)}
.technical-contact .text-link{margin-top:12px}
.footer-primary-contact{margin-top:24px;padding-top:20px;border-top:1px solid #506655;max-width:360px}
.footer-primary-contact strong{display:block;font-size:.875rem;font-weight:500;line-height:1.6;margin-bottom:12px}
.footer-primary-contact .leader-contact-links{font-size:.875rem}
.footer-primary-contact .leader-contact-links a:hover{color:var(--lime)}
@media(max-width:1150px){.leader-card-top{grid-template-columns:1fr}.leader-card-top .leader-portrait{aspect-ratio:4/3}.leader-card-heading{min-height:170px}.leader-background{grid-template-columns:1fr;gap:24px}.janne-contact-layout{gap:45px}.contact-leader-card{padding:25px}.contact-leader-heading{grid-template-columns:80px minmax(0,1fr);gap:18px}}
@media(max-width:800px){.contact-leadership-grid{grid-template-columns:1fr}.contact-leader-heading{grid-template-columns:100px minmax(0,1fr)}.janne-contact-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:30px}.janne-contact h2{font-size:2rem}}
@media(max-width:700px){.leadership-grid{grid-template-columns:1fr;gap:30px}.leader-card-heading{min-height:0;padding:24px}.leader-card h3{font-size:1.75rem}.leader-card-body{padding:24px}.leader-card-contact{padding:18px 24px}.janne-contact-layout{grid-template-columns:1fr;gap:35px}.janne-identity{max-width:320px;justify-self:start}.janne-identity .leader-portrait{aspect-ratio:4/3}.janne-contact h2{font-size:2.3rem}.contact-leader-card{padding:24px}.contact-leader-heading{grid-template-columns:80px minmax(0,1fr);gap:16px}.contact-leader-heading h2{font-size:1.7rem}.leader-actions{align-items:stretch}.leader-actions .button{justify-content:space-between}.technical-contact{padding:20px}.footer-primary-contact{max-width:none}}
@media(max-width:400px){.contact-leader-heading{grid-template-columns:1fr}.contact-leader-heading .leader-portrait{width:110px}.leader-actions{flex-direction:column}.leader-actions .button{width:100%}}
@media(max-width:700px){.janne-identity{display:grid;grid-template-columns:100px minmax(0,1fr);gap:22px;max-width:none;align-items:center}.janne-identity .leader-portrait{aspect-ratio:4/5}.janne-identity .portrait-initials{font-size:2.5rem}.janne-name{margin:0;padding:0;border:0}.janne-name .janne-person-name{font-size:1.7rem}}
