/* Full-bleed photographic cover. The supplied photograph is used unchanged. */
.hero{height:100svh;min-height:740px;background:#222;color:#ff401a}
.hero .portrait.portrait-bw{inset:0;width:100%;height:100%;max-width:none;transform:none;object-fit:cover;object-position:50% 18%;mix-blend-mode:normal;z-index:0}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.12) 0%,transparent 30%,transparent 44%,rgba(0,0,0,.5) 78%,rgba(0,0,0,.82) 100%)}
.hero .hero-name{top:auto;left:2.5%;right:2.5%;bottom:136px;width:auto;margin:0;z-index:2;font-size:11.65vw;font-weight:900;line-height:.9;letter-spacing:-.055em;white-space:nowrap;text-transform:uppercase;color:#ed300c}
.hero .role{top:36px;left:3%;font-size:clamp(24px,2.8vw,44px);letter-spacing:-.05em;line-height:.94;color:#ed300c}
.hero .hero-nav{top:36px;right:3%;width:210px;gap:16px;color:#bb2308}
.hero .hero-nav a,.hero .hero-nav button{font-size:16px}
.hero .hero-note{display:none}
.hero .contact{left:3%;right:3%;bottom:65px;display:flex;flex-direction:row;align-items:baseline;gap:26px;flex-wrap:wrap;color:#fff;font-size:14px;font-weight:400}
.hero .contact .small-label{margin:0;font-size:12px}
.hero .awards{left:3%;right:3%;bottom:23px;max-width:none;margin:0;color:#e9e9e9;font-size:12px;line-height:1.4}
@media(min-width:651px) and (max-width:1000px){.hero{min-height:760px}.hero .hero-name{bottom:180px}.hero .contact{bottom:80px;max-width:92%;gap:12px 24px}.hero .contact .small-label{flex-basis:100%}.hero .hero-nav{width:185px}}
@media(max-width:650px){.hero{height:100svh;min-height:800px}.hero .portrait.portrait-bw{object-position:51% 0%;height:100%;width:100%}.hero .hero-name{left:5%;right:5%;bottom:205px;font-size:19.5vw;line-height:.85;letter-spacing:-.055em;white-space:normal;width:90%;max-width:none}.hero .role{top:100px;left:5%;font-size:21px}.hero .hero-nav{top:24px;left:5%;right:5%;width:auto;flex-direction:row;justify-content:space-between;gap:16px}.hero .hero-nav a,.hero .hero-nav button{font-size:13px;max-width:135px;line-height:1.15;gap:5px}.hero .hero-nav span{display:none}.hero .contact{bottom:79px;left:5%;right:5%;display:flex;flex-direction:column;gap:7px;font-size:14px}.hero .contact .small-label{margin-bottom:3px}.hero .awards{left:5%;right:5%;bottom:20px;font-size:11px;line-height:1.5}}
@media(max-width:360px){.hero .hero-nav{gap:10px}.hero .hero-nav a,.hero .hero-nav button{font-size:12px}.hero .hero-name{font-size:19.5vw}}
/* Two independent depth planes; navigation remains stationary. */
.hero .portrait.portrait-bw{transform:translate3d(var(--photo-x,0px),var(--photo-y,0px),0) scale(1.045);transform-origin:50% 40%;will-change:transform}
.hero .hero-name{transform:perspective(1200px) translate3d(var(--name-x,0px),var(--name-y,0px),0) rotateY(var(--name-ry,0deg)) rotateX(var(--name-rx,0deg));transform-origin:50% 50%;will-change:transform;text-shadow:0 5px 20px rgba(0,0,0,.18)}
@media(prefers-reduced-motion:reduce){.hero .portrait.portrait-bw,.hero .hero-name{transform:none!important;will-change:auto}}

/* Desktop editorial cover: independent text and portrait columns. */
@media(min-width:1001px){
 .hero{height:100svh;min-height:680px;background:#e8e8e6}
 .hero .portrait.portrait-bw{left:auto;right:0;top:0;bottom:0;width:58%;height:100%;object-fit:cover;object-position:50% 25%;transform:translate3d(var(--photo-x,0px),var(--photo-y,0px),0) scale(1.025);mask-image:linear-gradient(to right,transparent,black 19%);-webkit-mask-image:linear-gradient(to right,transparent,black 19%)}
 .hero::after{background:linear-gradient(90deg,#e8e8e6 0%,rgba(232,232,230,.75) 33%,transparent 56%)}
 .hero .hero-name{left:4%;right:auto;top:34%;bottom:auto;width:49%;max-width:none;font-size:8.3vw;line-height:.93;white-space:normal;text-shadow:none}
 .hero .hero-name .name-part{display:block}
 .hero .role{left:4%;top:calc(34% - 92px);font-size:30px;line-height:.95}
 .hero .hero-nav{top:32px;right:3%;width:190px;gap:14px}
 .hero .contact{left:4%;right:auto;bottom:86px;width:40%;max-width:40%;gap:10px 20px;color:#18271f;font-size:14px}
 .hero .contact .small-label{flex-basis:100%;margin-bottom:4px}
 .hero .awards{left:4%;right:auto;bottom:30px;width:40%;color:#455047;line-height:1.6}
}
