.profile-page{background:#090909}
.profile-page [hidden]{display:none!important}
.profile-loader .load-center{font-size:clamp(50px,10vw,160px)}
.profile-hero{padding-top:86px;min-height:100svh;overflow:hidden}
.profile-hero-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:clamp(35px,5vw,100px);align-items:stretch;padding:clamp(70px,8vw,130px) 0 70px}
.profile-hero-copy{display:flex;flex-direction:column;align-items:flex-start}
.profile-hero h1,.profile-copy-layout h2,.profile-contact h2{font:clamp(75px,12vw,205px)/.8 var(--font-heavy);letter-spacing:-.105em;margin:24px 0 0;text-transform:uppercase}
.profile-hero h1 em,.profile-copy-layout h2 em,.profile-contact h2 em{-webkit-text-stroke-width:2px}
.profile-hero #profileTitle{max-width:100%;overflow:visible}
.profile-hero #profileTitle .title-line{will-change:transform}
.profile-hero #profileTitle .title-glyph,.profile-hero .profile-intro-block .profile-coordinate,.profile-hero .profile-intro-block p{will-change:transform}
.profile-intro-block{width:min(100%,610px);margin-top:auto;padding:70px 0 0;display:grid;grid-template-columns:130px 1fr;gap:22px}
.profile-coordinate,.profile-identity span{font:10px/1.5 var(--font-mono);letter-spacing:.09em;color:#888}
.profile-intro-block p{font-size:clamp(19px,2.1vw,32px);line-height:1.25;font-weight:700;letter-spacing:-.05em;margin:0;overflow-wrap:anywhere}
.profile-portrait-shell{width:100%;height:clamp(420px,45vw,720px)}
.profile-portrait{width:100%;height:100%;position:relative;border:1px solid #4b4b4b;overflow:hidden;background:radial-gradient(circle at center,#292929 0,#121212 49%,#090909 78%);transform-origin:top right;will-change:transform}
.profile-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);z-index:1;transform:scale(1.025);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .8s}
.profile-portrait:hover img{transform:scale(1.08);filter:grayscale(.25)}
.portrait-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:12.5% 12.5%;mask-image:linear-gradient(120deg,#000,transparent);pointer-events:none}
.portrait-ring{position:absolute;border:1px solid #8d8d8d;border-radius:50%;width:75%;aspect-ratio:1;left:12.5%;top:50%;transform:translateY(-50%)}
.portrait-ring.ring-a{animation:portraitPulse 8s ease-in-out infinite alternate}
.portrait-ring.ring-b{width:48%;left:26%;border-style:dashed;opacity:.5;animation:portraitSpin 22s linear infinite}
.portrait-center{position:absolute;inset:0;display:grid;place-items:center;font:clamp(68px,11vw,170px)/1 var(--font-heavy);letter-spacing:-.1em;transform:rotate(-11deg)}
.portrait-center span{position:absolute;font:24px var(--font-body);transform:translate(90px,-65px)}
.portrait-corner{position:absolute;z-index:2;font:10px var(--font-mono);letter-spacing:.08em;text-shadow:0 1px 8px #000}
.portrait-corner.top{top:22px;left:22px}.portrait-corner.bottom{right:22px;bottom:22px}
.profile-portrait.has-image .portrait-grid,.profile-portrait.has-image .portrait-ring,.profile-portrait.has-image .portrait-center{opacity:0}
@keyframes portraitPulse{to{transform:translateY(-50%) scale(1.14);opacity:.25}}@keyframes portraitSpin{to{transform:translateY(-50%) rotate(360deg)}}
.profile-identity{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line)}
.profile-identity>div{padding:25px 24px 35px 0;min-width:0}
.profile-identity>div+div{padding-left:28px;border-left:1px solid var(--line)}
.profile-identity span{display:block;margin-bottom:12px}
.profile-identity strong{font:clamp(15px,1.6vw,23px)/1.1 var(--font-heavy);letter-spacing:-.06em;text-transform:uppercase;overflow-wrap:anywhere}
.profile-copy-section{min-height:540px}
.profile-copy-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,7vw,150px);padding:110px 0 130px;align-items:start}
.profile-copy-layout h2{font-size:clamp(66px,8vw,135px);margin:0}
.profile-prose{max-width:760px;border-top:1px solid var(--line);padding-top:35px;font-size:clamp(19px,2vw,27px);line-height:1.55;letter-spacing:-.035em;white-space:pre-line;overflow-wrap:anywhere}
.profile-approach{background:#e6e6e3;color:#080808}
.profile-approach .section-top,.profile-approach .profile-prose{border-color:#9a9a9a}
.profile-approach .section-top{color:#555}
.profile-approach .outline,.profile-approach em{-webkit-text-stroke-color:#080808}
.profile-contact{padding-bottom:110px}
.profile-contact-main{padding:110px 0 0}
.profile-contact-main>p{font:11px var(--font-mono);letter-spacing:.11em;color:#999}
.profile-contact h2{font-size:clamp(72px,11vw,180px);margin:28px 0 80px}
.profile-contact-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px;border-top:1px solid var(--line)}
.profile-hero .profile-contact-links{margin:32px 0 70px}
.profile-contact-links a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);font:clamp(17px,2vw,30px)/1 var(--font-heavy);letter-spacing:-.06em;transition:padding .35s,color .35s}
.profile-contact-links a:hover,.profile-contact-links a:focus-visible{padding-left:12px;color:#a9a9a9}
.profile-contact-links a span{font:27px var(--font-body)}
.profile-contact-links a.profile-work-pill{grid-column:1/-1;justify-self:start;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;width:auto;min-width:180px;margin-top:22px;padding:13px 19px;border:1px solid #f0f0ed;border-radius:50px;font:10px/1.2 var(--font-mono);letter-spacing:.09em;transition:color .38s ease,transform .38s cubic-bezier(.22,1,.36,1)}
.profile-contact-links a.profile-work-pill:hover,.profile-contact-links a.profile-work-pill:focus-visible{padding-left:19px;color:#080808}
.profile-contact-links a.profile-work-pill span:first-child{font:10px/1.2 var(--font-mono);letter-spacing:.09em}
.profile-contact-links a.profile-work-pill span:last-child{font:20px/1 var(--font-body)}
@media(max-width:1100px){.profile-hero-body{grid-template-columns:1fr .75fr}.profile-hero h1{font-size:10vw}.profile-intro-block{grid-template-columns:1fr;gap:10px}}
@media(max-width:760px){.profile-hero{padding-top:64px}.profile-hero-body{grid-template-columns:1fr;padding:70px 0 55px;gap:55px}.profile-hero h1{font-size:clamp(74px,17vw,125px)}.profile-intro-block{padding-top:50px}.profile-portrait-shell{height:440px}.profile-portrait{transform-origin:top center}.profile-identity{grid-template-columns:1fr 1fr}.profile-identity>div{padding:22px 12px 25px 0}.profile-identity>div+div{padding-left:15px}.profile-identity>div:nth-child(3){border-left:0;padding-left:0}.profile-copy-layout{grid-template-columns:1fr;padding:75px 0 90px;gap:50px}.profile-copy-layout h2{font-size:clamp(66px,13vw,100px)}.profile-contact{padding-bottom:70px}.profile-contact-main{padding-top:75px}.profile-contact h2{font-size:clamp(68px,13vw,110px);margin-bottom:55px}.profile-contact-links{grid-template-columns:1fr}}
@media(max-width:420px){.profile-hero h1{font-size:17vw}.profile-portrait-shell{height:330px}.profile-identity{grid-template-columns:1fr}.profile-identity>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.profile-identity>div{padding:20px 0}.profile-copy-layout h2,.profile-contact h2{font-size:14vw}}
@media(prefers-reduced-motion:reduce){.portrait-ring{animation:none}.profile-portrait img{transition:none}.profile-hero #profileTitle .title-line,.profile-hero #profileTitle .title-glyph,.profile-hero .profile-intro-block .profile-coordinate,.profile-hero .profile-intro-block p{will-change:auto}}
