.profile-page{--profile-gold:#dbbf8d;background:#090e10;color:#f0ede5;isolation:isolate}
.profile-page::before{content:"";position:fixed;inset:0;z-index:-2;background:url('assets/about-background.png') right top/auto 125vh no-repeat;background-color:#090e10;pointer-events:none}
.profile-page::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,#090e10 0%,#090e10ed 31%,#090e1080 67%,#090e1038),linear-gradient(0deg,#090e10cc,transparent 70%);pointer-events:none}
.profile-page>header{background:#0c1315eb}.profile-page>header>nav a[aria-current]{color:var(--profile-gold)}
.profile-page .profile-main{max-width:1440px;margin:auto;padding:0 7%}.profile-hero{min-height:710px;min-height:calc(100svh - 56px);display:grid;grid-template-columns:1.5fr .75fr;align-items:center;gap:10%;position:relative;padding:75px 0 100px}
.profile-kicker{font:11px/1.6 monospace;letter-spacing:.18em;color:var(--profile-gold);margin:0 0 26px}.profile-role{font-size:15px;letter-spacing:.09em;color:#e0ded4;margin:0 0 15px}
.profile-hero h1{font-size:clamp(52px,6.4vw,90px);margin:0 0 28px;letter-spacing:.12em;font-weight:450;line-height:1.2}.profile-hero h1 span{font-size:15px;letter-spacing:.4em;color:var(--profile-gold);margin-top:14px}
.profile-lead{font-size:clamp(21px,2.2vw,30px);line-height:1.5;margin:0 0 17px}.profile-summary{font-size:15px;line-height:2.1;color:#b9c5c4;max-width:34em;margin:0}.profile-actions{display:flex;gap:12px;margin:34px 0 20px;flex-wrap:wrap}
.profile-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 22px;min-height:50px;border:1px solid #b4c4bb65;font-size:13px;color:#edeae0;background:#101b1c90;transition:background .2s,border-color .2s}.profile-button.primary{background:#dfc397;color:#111b1d;border-color:#dfc397}.profile-button:hover{border-color:#eed0a0;background:#253535}.profile-button.primary:hover{background:#efdab7}.profile-meta{font-size:11px;letter-spacing:.06em;color:#acb9b7;line-height:1.8}.profile-meta span{padding:0 8px}
.profile-portrait{width:100%;max-width:270px;justify-self:end;margin:0;transform:translateY(8px)}.profile-portrait img{width:100%;height:auto;box-shadow:0 24px 80px #0008;border:6px solid #d7d9d1}.profile-portrait figcaption{display:flex;flex-direction:column;gap:6px;color:#c2cbc5;font:10px/1.5 monospace;letter-spacing:.12em;padding-top:15px}.profile-portrait figcaption span:last-child{color:#94a7a8;font-size:9px}
.profile-scroll{position:absolute;bottom:27px;left:0;color:#aebcba;font-size:11px;letter-spacing:.12em;display:flex;gap:25px}.profile-nav{display:flex;flex-wrap:wrap;gap:25px;border-top:1px solid #91a39a42;border-bottom:1px solid #91a39a42;padding:23px 0;font-size:12px;color:#d3dcd6}
.profile-section{padding:86px 0;border-bottom:1px solid #91a39a38;scroll-margin-top:90px}.profile-section-title{margin-bottom:42px}.profile-section-title .profile-kicker{margin-bottom:16px}.profile-section h2{font-size:clamp(28px,3.4vw,43px);line-height:1.5;margin:0;letter-spacing:.025em;font-weight:450}.profile-section h3{font-size:21px;line-height:1.6;font-weight:450;letter-spacing:.02em}.profile-section p{line-height:1.95}.profile-skills{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.profile-skills article{padding:25px 0;border-top:1px solid #97aaa54d}.profile-index{font:12px monospace;color:#c7ae81}.profile-skills h3{font-size:18px;margin:17px 0 14px}.profile-skills p{font-size:14px;color:#c0cbc5;margin:0 0 24px}.profile-skills small{font-size:11px;color:#c9b893;line-height:1.9}
.profile-timeline article{display:grid;grid-template-columns:1fr 2.5fr;gap:30px;border-top:1px solid #97aaa54d;padding:28px 0}.profile-date{font:12px/2 monospace;color:#bea981;margin:0}.profile-company{font-size:13px;color:#afc2bd;margin:0}.profile-timeline h3{margin:8px 0 12px;font-size:25px}.profile-timeline article div>p:last-child{font-size:14px;color:#c2cbc6;max-width:48em;margin:0}
.profile-architecture{display:grid;grid-template-columns:.82fr 1fr;gap:9%;align-items:center}.profile-page .profile-architecture figure{margin:0}.profile-architecture .image-button img{width:100%;height:auto;max-height:580px;object-fit:contain;background:#11191b}.profile-story-copy h3{font-size:27px;margin:0 0 22px}.profile-story-copy>p:not(.profile-kicker){font-size:14px;color:#c1ccc6}.profile-education{margin-top:32px;border-top:1px solid #91a39a42;padding-top:12px}.profile-education p{margin:20px 0}.profile-education span,.profile-education strong,.profile-education small{display:block}.profile-education span{font:11px/1.8 monospace;color:#c8af86}.profile-education strong{font-size:14px;font-weight:450;margin:5px 0}.profile-education small{font-size:11px;color:#9cafa9}
.profile-service-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:8%;margin:75px 0 30px}.profile-service-heading .profile-kicker{margin-bottom:14px}.profile-service-heading h3{font-size:28px;margin:0}.profile-service-heading>p{font-size:14px;color:#c1ccc6;margin:0}.profile-service-photos{display:grid;grid-template-columns:1fr 1fr;gap:24px}.profile-page .profile-service-photos figure{margin:0}.profile-service-photos img{width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;background:#101416}.profile-page figcaption{color:#a7b7b1;font-size:11px}
.profile-recognition{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;padding:30px 0 45px;border-top:1px solid #91a39a42}.profile-recognition article>span{font-size:12px;color:#cbb38a}.profile-recognition h3{font-size:26px;margin:14px 0}.profile-recognition p{font-size:13px;color:#b8c6be;margin:8px 0}.profile-project-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.profile-project-links a{border:1px solid #91a39a42;padding:25px;background:#0c171ad9;transition:border-color .2s}.profile-project-links a:hover{border-color:#cfb486}.profile-project-links span,.profile-project-links strong,.profile-project-links em{display:block}.profile-project-links span{font-size:10px;color:#aaafa4;letter-spacing:.12em}.profile-project-links strong{font-size:30px;font-weight:450;letter-spacing:.1em;margin:25px 0}.profile-project-links em{font-size:12px;font-style:normal;color:#d4ba92}.profile-all-works{display:inline-block;margin-top:25px;font-size:12px;color:#d4ba92;padding-bottom:8px;border-bottom:1px solid #897853}
.profile-contact{border-bottom:0;padding-bottom:70px}.profile-contact h2{font-size:clamp(32px,4.3vw,56px)}.profile-contact-role{font-size:14px;color:#b9c8c0;margin:23px 0}.profile-email{display:inline-block;font-size:clamp(21px,3vw,36px);border-bottom:1px solid #b4a789;padding:8px 0 14px;overflow-wrap:anywhere;color:#e8ce9e}.profile-contact-bottom{margin-top:35px;display:flex;align-items:center;justify-content:space-between;gap:25px}.profile-contact-bottom p{display:flex;flex-wrap:wrap;gap:12px 25px;font-size:12px;color:#b8c5bc}.profile-contact-bottom .profile-button{flex-shrink:0}.profile-page>footer{background:transparent}.profile-page .music-dock{background:#101a1df2}
@media(min-width:1500px){.profile-page::before{background-size:auto 140vh}.profile-hero{min-height:850px;max-height:1100px}}
@media(max-width:760px){.profile-page::before{background-size:auto 110vh;background-position:60% top}.profile-page::after{background:linear-gradient(90deg,#090e10e8,#090e1090),linear-gradient(0deg,#090e10d9,transparent)}.profile-page .profile-main{padding:0 6%}.profile-hero{grid-template-columns:1fr;gap:36px;padding:47px 0 75px;min-height:0}.profile-intro{order:1}.profile-portrait{order:0;width:125px;justify-self:start;transform:none}.profile-portrait img{border-width:3px}.profile-portrait figcaption{display:none}.profile-hero h1{font-size:48px;margin-bottom:25px}.profile-hero h1 span{font-size:12px}.profile-kicker{font-size:10px;margin-bottom:20px}.profile-role{font-size:12px}.profile-lead{font-size:23px}.profile-summary{font-size:14px}.profile-actions{margin-top:25px}.profile-button{padding:13px 16px;gap:24px;font-size:12px}.profile-meta{font-size:10px}.profile-meta span{padding:0 3px}.profile-nav{gap:16px 24px;font-size:11px;line-height:1.8}.profile-section{padding:55px 0}.profile-section-title{margin-bottom:30px}.profile-skills,.profile-architecture,.profile-service-heading,.profile-recognition,.profile-project-links{grid-template-columns:1fr;gap:24px}.profile-skills article{padding:22px 0 0}.profile-skills p{margin-bottom:15px}.profile-timeline article{grid-template-columns:1fr;gap:10px}.profile-architecture{gap:32px}.profile-architecture .image-button img{max-height:480px}.profile-story-copy h3{font-size:25px}.profile-service-heading{margin-top:50px}.profile-service-heading h3{font-size:25px}.profile-service-photos{grid-template-columns:1fr;gap:22px}.profile-recognition{gap:30px}.profile-project-links a{display:grid;grid-template-columns:1fr auto;align-items:center;padding:20px}.profile-project-links span{grid-column:1/-1}.profile-project-links strong{font-size:26px;margin:12px 0 0}.profile-project-links em{margin-top:12px}.profile-contact-bottom{align-items:start;flex-direction:column}.profile-contact-bottom p{flex-direction:column;gap:8px;margin:0}.profile-email{font-size:23px}.profile-page>footer{padding-bottom:100px!important}}
.software-toolkit{margin-bottom:55px}.software-caption{display:flex;align-items:center;gap:18px;font:11px/1.8 monospace;letter-spacing:.15em;color:#dbbf8d;margin:0 0 24px}.software-caption span{font-family:inherit;font-size:11px;color:#a9bbb6;letter-spacing:.1em}.software-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.software-list li{display:flex;flex-direction:column;align-items:center;padding:28px 12px 23px;background:linear-gradient(145deg,#dbbf8d10,#0b1618c9);border:1px solid #9db5b32b;border-radius:20px;text-align:center}.software-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:19px;border:1px solid #dbbf8d30;box-shadow:0 6px 25px #0003;background:#0b1618;color:#dbbf8d;margin-bottom:18px}.software-icon svg{width:40px;height:40px;display:block}.software-name{min-height:39px;display:flex;align-items:center;justify-content:center;font:500 13px/1.5 Arial,sans-serif;color:#eeeee5}.software-note{font-size:10px;color:#a5b7b1;margin-top:8px;letter-spacing:.12em}
@media(min-width:651px) and (max-width:1000px){.software-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.software-list{grid-template-columns:repeat(2,1fr);gap:12px}.software-list li{padding:23px 10px 20px}.software-toolkit{margin-bottom:38px}}
@media(prefers-reduced-motion:reduce){.profile-button,.profile-project-links a{transition:none}}
