.portrait-hero{padding:clamp(58px,8vw,104px) 0 88px;background:radial-gradient(70% 80% at 90% 12%,rgba(126,161,115,.17),transparent 62%)}
.portrait-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,.68fr);gap:clamp(42px,7vw,96px);align-items:center}
.portrait-hero-copy h1{max-width:690px;margin:20px 0 24px;font-size:clamp(54px,7vw,94px)}
.portrait-hero-copy .lead{max-width:610px;margin:0;color:var(--muted);font-size:clamp(18px,2vw,22px)}
.portrait-hero-figure{position:relative;margin:0;padding:0 0 30px 30px}
.portrait-hero-figure::before{content:"";position:absolute;inset:34px 28px 0 0;border:1px solid rgba(169,195,160,.34);border-radius:190px 190px 14px 14px}
.portrait-hero-image{position:relative;display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:center top;border-radius:190px 190px 14px 14px;box-shadow:0 38px 80px -45px #000}
.portrait-hero-caption{position:relative;display:flex;justify-content:space-between;gap:20px;margin-top:15px;color:var(--faint);font-size:10px;letter-spacing:.15em;text-transform:uppercase}
.portrait-intro{display:grid;grid-template-columns:minmax(0,.8fr) minmax(300px,.55fr);gap:clamp(32px,8vw,110px);align-items:end;margin-bottom:54px}
.portrait-intro h2{margin-bottom:0}
.portrait-intro p{margin:0;color:var(--muted);font-size:17px}
.portrait-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(14px,2vw,24px);align-items:start}
.portrait-photo{margin:0}
.portrait-photo img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:center top;background:var(--panel)}
.portrait-photo figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:11px;color:var(--faint);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.portrait-photo:nth-child(1){grid-column:1/span 6}
.portrait-photo:nth-child(2){grid-column:8/span 5;margin-top:clamp(70px,11vw,150px)}
.portrait-photo:nth-child(3){grid-column:2/span 5;margin-top:clamp(30px,6vw,80px)}
.portrait-photo:nth-child(4){grid-column:7/span 6;margin-top:clamp(130px,18vw,240px)}
.portrait-photo:nth-child(5){grid-column:3/span 8;margin-top:clamp(45px,8vw,110px)}
.portrait-quote{max-width:780px;margin:clamp(78px,10vw,130px) auto 0;text-align:center}
.portrait-quote p{margin:14px 0 0;font:400 clamp(30px,4.5vw,54px)/1.12 var(--display);letter-spacing:-.02em}
.portrait-cta{margin-top:clamp(84px,12vw,150px);padding:clamp(44px,7vw,78px);background:linear-gradient(135deg,var(--panel),var(--bg-soft));border:1px solid var(--line);text-align:center}
.portrait-cta h2{max-width:760px;margin:16px auto 20px}
.portrait-cta p{max-width:590px;margin:0 auto;color:var(--muted);font-size:17px}
.portrait-cta .actions{justify-content:center}
@media(max-width:860px){.portrait-hero-grid{grid-template-columns:1fr;gap:48px}.portrait-hero-copy{max-width:700px}.portrait-hero-figure{width:min(82vw,560px);margin-left:auto}.portrait-intro{grid-template-columns:1fr;align-items:start}.portrait-intro p{max-width:620px}.portrait-photo:nth-child(1){grid-column:1/span 7}.portrait-photo:nth-child(2){grid-column:8/span 5}.portrait-photo:nth-child(3){grid-column:2/span 6}.portrait-photo:nth-child(4){grid-column:8/span 5}.portrait-photo:nth-child(5){grid-column:2/span 10}}
@media(max-width:620px){.portrait-hero{padding-top:50px;padding-bottom:66px}.portrait-hero-copy h1{font-size:clamp(48px,15vw,70px)}.portrait-hero-figure{width:calc(100% - 16px);padding:0 0 18px 18px}.portrait-hero-figure::before{inset:20px 16px 0 0}.portrait-hero-image{border-radius:140px 140px 10px 10px}.portrait-hero-caption{font-size:9px}.portrait-intro{margin-bottom:32px}.portrait-gallery{display:block}.portrait-photo{width:100%;margin:0 0 48px!important}.portrait-photo:nth-child(even){width:87%;margin-left:auto!important}.portrait-photo figcaption{font-size:9px}.portrait-quote{margin-top:72px}.portrait-cta{padding:42px 22px}.portrait-cta .btn{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
