/* Editorial profile and portfolio pages. The canvas remains visible behind every section. */
.profile-shell,.portfolio-shell{padding-top:92px;padding-bottom:72px}
body.team-profile-page main.profile-shell,body.team-portfolio-page main.portfolio-shell{opacity:1;visibility:visible;transform:none;min-height:0}
body.team-profile-page #particles-js,body.team-profile-page #meteorites-js,body.team-portfolio-page #particles-js,body.team-portfolio-page #meteorites-js{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}
.journal-masthead{padding-bottom:3rem}
.journal-feed{padding-top:3rem}
.portfolio-hero-editorial{padding-bottom:3rem}
.portfolio-intro,.portfolio-experience,.portfolio-projects,.portfolio-skills{padding-top:3rem}
.portfolio-hero-portrait{height:clamp(290px,36vw,410px)}
@media(max-width:780px){.profile-shell,.portfolio-shell{padding-top:86px}.portfolio-hero-portrait{height:300px}}
.profile-shell,.portfolio-shell{position:relative;z-index:2;width:min(1120px,calc(100% - 40px));margin:0 auto;padding:126px 0 100px}.profile-back{display:inline-flex;margin-bottom:2.3rem;color:rgba(255,255,255,.62);text-decoration:none;transition:color .3s ease,transform .3s ease}.profile-back:hover{color:#ffd700;transform:translateX(-4px)}.profile-kicker{margin:0 0 .75rem;color:#ffd700;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.profile-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.8rem}.profile-action{display:inline-flex;gap:.55rem;align-items:center;padding:.7rem 1rem;border:1px solid rgba(255,215,0,.35);border-radius:4px;color:#ffd700;text-decoration:none;background:rgba(18,18,18,.65);transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease}.profile-action:hover{color:#121212;background:#ffd700;border-color:#ffd700;transform:translateY(-2px)}.profile-action.primary{color:#121212;background:#ffd700}
.journal-masthead{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:clamp(2rem,7vw,7rem);align-items:end;padding:0 0 5rem;border-bottom:1px solid rgba(255,215,0,.24)}.journal-author{display:grid;grid-template-columns:minmax(190px,290px) 1fr;gap:clamp(1.5rem,5vw,4.5rem);align-items:end}.journal-author-image{position:relative;aspect-ratio:4/5;overflow:hidden;background:#161616;border:1px solid rgba(255,255,255,.15)}.profile-portrait{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.86)}.journal-author-image:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.72));pointer-events:none}.journal-author-mark{position:absolute;z-index:1;right:1rem;bottom:.8rem;color:#ffd700;font-size:.8rem;letter-spacing:.1em}.journal-author-meta h1{margin:0;color:#ffd700;font-family:'Baby Doll',cursive;font-size:clamp(3.8rem,9vw,7.5rem);font-weight:400;line-height:.8}.profile-roles{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.35rem 0}.profile-roles span{padding:.35rem .65rem;border-bottom:1px solid rgba(255,215,0,.55);color:rgba(255,255,255,.72);font-size:.82rem}.profile-bio{max-width:550px;margin:0;color:rgba(255,255,255,.78);font-size:1.02rem;line-height:1.7}.journal-socials{padding-left:1rem;border-left:1px solid rgba(255,215,0,.35)}.journal-social{display:grid;grid-template-columns:1fr auto;gap:.2rem .7rem;width:100%;padding:.7rem 0;border:0;border-bottom:1px solid rgba(255,255,255,.12);color:#fff;text-align:left;background:transparent;cursor:pointer}.journal-social span{color:rgba(255,255,255,.54);font-size:.75rem}.journal-social strong{color:#ffd700;font-size:.82rem;font-weight:500}.journal-social small{grid-column:2;color:rgba(255,255,255,.38);font-size:.65rem;text-align:right}.journal-social:hover strong,.journal-social:focus-visible strong{color:#fff}.journal-copy-status{min-height:1.2em;margin:.55rem 0 0;color:#ffd700;font-size:.72rem}
.journal-feed{display:grid;grid-template-columns:220px 1fr;gap:clamp(2rem,6vw,5rem);padding-top:5rem}.journal-feed-intro{position:sticky;top:110px;align-self:start}.journal-feed-intro h2,.portfolio-section-heading h2{margin:0;color:#fff;font-size:clamp(1.8rem,3.5vw,3rem);font-weight:500;line-height:1.05}.journal-feed-intro>p:last-child{color:rgba(255,255,255,.55);line-height:1.6}.profile-post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.profile-post-card{overflow:hidden;border:1px solid rgba(255,255,255,.12);background:rgba(18,18,18,.36);transition:border-color .35s ease,transform .35s ease}.profile-post-card:hover{border-color:rgba(255,215,0,.5);transform:translateY(-5px)}.journal-post-1{grid-column:span 2}.journal-post-image{position:relative;overflow:hidden;aspect-ratio:16/9}.journal-post-1 .journal-post-image{aspect-ratio:2.2/1}.journal-post-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.profile-post-card:hover .journal-post-image img{transform:scale(1.035)}.journal-post-index{position:absolute;top:.8rem;left:.9rem;padding:.25rem .45rem;color:#ffd700;font-size:.72rem;background:rgba(0,0,0,.68)}.journal-post-body{padding:1.1rem 1.2rem 1.25rem}.journal-post-meta{display:flex;justify-content:space-between;gap:.7rem;margin-bottom:.7rem;color:rgba(255,255,255,.4);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.journal-post-body h3{margin:0 0 .55rem;color:#ffd700;font-size:1.3rem;font-weight:500}.journal-post-body p{margin:0;color:rgba(255,255,255,.7);line-height:1.6}.journal-share{margin-top:1rem;padding:0;border:0;color:rgba(255,255,255,.58);font:inherit;font-size:.78rem;background:transparent;cursor:pointer;transition:color .25s ease}.journal-share:hover{color:#ffd700}
.portfolio-hero-editorial{display:grid;grid-template-columns:1fr minmax(300px,430px);gap:clamp(2rem,7vw,7rem);align-items:end;padding:1rem 0 5rem;border-bottom:1px solid rgba(255,215,0,.24)}.portfolio-hero-copy h1{margin:0;color:#ffd700;font-family:'Baby Doll',cursive;font-size:clamp(4rem,11vw,9rem);font-weight:400;line-height:.76}.portfolio-hero-copy h1 span{color:#fff}.portfolio-lead{max-width:440px;margin:2rem 0 0;color:rgba(255,255,255,.72);font-size:1.12rem;line-height:1.6}.portfolio-hero-portrait{position:relative;height:clamp(340px,45vw,510px);overflow:hidden;border-left:1px solid rgba(255,215,0,.4)}.portfolio-hero-portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(.3);opacity:.9}.portfolio-hero-portrait:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.75));pointer-events:none}.portfolio-hero-portrait span{position:absolute;z-index:1;right:1rem;bottom:1rem;color:#ffd700;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.portfolio-intro{display:grid;grid-template-columns:110px minmax(0,1fr) 210px;gap:clamp(1.5rem,5vw,5rem);padding:5rem 0;border-bottom:1px solid rgba(255,255,255,.12)}.portfolio-index{color:#ffd700;font-size:1.1rem}.portfolio-index span{display:block;margin-top:.45rem;color:rgba(255,255,255,.4);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.portfolio-copy h2{margin:0 0 1.2rem;color:#fff;font-size:clamp(2rem,4vw,3.4rem);font-weight:500;line-height:1}.portfolio-copy p{max-width:620px;margin:.9rem 0;color:rgba(255,255,255,.72);line-height:1.75}.portfolio-facts{margin:0}.portfolio-facts div{padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.14)}.portfolio-facts dt{color:rgba(255,255,255,.4);font-size:.7rem;text-transform:uppercase}.portfolio-facts dd{margin:.2rem 0 0;color:#ffd700}.portfolio-experience,.portfolio-projects,.portfolio-skills{padding:5rem 0 0}.portfolio-heading-row{display:flex;justify-content:space-between;gap:2rem;align-items:end}.portfolio-heading-note{color:rgba(255,255,255,.42);font-size:.75rem}.portfolio-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:2rem 0 1.2rem}.portfolio-tab{padding:.6rem .85rem;border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.62);font:inherit;font-size:.8rem;background:transparent;cursor:pointer;transition:color .25s ease,border-color .25s ease,background .25s ease}.portfolio-tab:hover,.portfolio-tab.is-active{border-color:#ffd700;color:#121212;background:#ffd700}.portfolio-timeline-panel{display:none;border-top:1px solid rgba(255,215,0,.35)}.portfolio-timeline-panel.is-active{display:block;animation:profile-reveal .45s ease both}.portfolio-timeline-item{display:grid;grid-template-columns:45px 155px 1fr;gap:1rem;align-items:center;padding:1.25rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.portfolio-timeline-number{color:#ffd700;font-size:.74rem}.portfolio-timeline-item time{color:rgba(255,255,255,.48);font-size:.8rem}.portfolio-timeline-item h3{margin:0;color:#fff;font-size:1.1rem;font-weight:500}.portfolio-timeline-item p{margin:.25rem 0 0;color:rgba(255,255,255,.55)}.portfolio-project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:2rem}.portfolio-project-feature{display:grid;grid-template-columns:1fr 1fr;min-height:225px;border-top:1px solid rgba(255,215,0,.4);transition:transform .35s ease}.portfolio-project-feature:hover{transform:translateY(-4px)}.portfolio-project-image{position:relative;min-height:225px;overflow:hidden}.portfolio-project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.portfolio-project-feature:hover img{transform:scale(1.04)}.portfolio-project-image span{position:absolute;top:.7rem;left:.7rem;padding:.2rem .35rem;color:#ffd700;background:rgba(0,0,0,.75);font-size:.7rem}.portfolio-project-copy{padding:1.2rem}.portfolio-project-tag{margin:0 0 1.8rem;color:#ffd700;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.portfolio-project-copy h3{margin:0 0 .6rem;color:#fff;font-size:1.5rem;font-weight:500}.portfolio-project-copy p:last-child{margin:0;color:rgba(255,255,255,.62);line-height:1.55}.portfolio-skill-list{border-top:1px solid rgba(255,255,255,.15)}.portfolio-skill-list article{display:grid;grid-template-columns:45px 1fr auto;gap:1rem;align-items:center;padding:1.15rem 0;border-bottom:1px solid rgba(255,255,255,.12)}.portfolio-skill-list article>span{color:#ffd700;font-size:.74rem}.portfolio-skill-list h3{margin:0;color:#fff;font-size:1.1rem;font-weight:500}.portfolio-skill-list p{margin:.2rem 0 0;color:rgba(255,255,255,.53)}.portfolio-skill-list strong{color:#ffd700;font-size:.8rem;font-weight:500}
@keyframes profile-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:780px){.profile-shell,.portfolio-shell{width:min(100% - 28px,620px);padding-top:104px}.journal-masthead,.journal-author,.portfolio-hero-editorial,.portfolio-intro{grid-template-columns:1fr}.journal-socials{padding:1.5rem 0 0;border-top:1px solid rgba(255,215,0,.3);border-left:0}.journal-feed{display:block}.journal-feed-intro{position:static;margin-bottom:2rem}.profile-post-grid,.portfolio-project-list{grid-template-columns:1fr}.journal-post-1{grid-column:auto}.portfolio-hero-portrait{height:360px;order:-1}.portfolio-intro{gap:1.5rem}.portfolio-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.portfolio-heading-row{display:block}.portfolio-heading-note{display:block;margin-top:1rem}.portfolio-project-feature{grid-template-columns:1fr}.portfolio-project-image{height:220px}.portfolio-timeline-item{grid-template-columns:35px 1fr}.portfolio-timeline-item>div{grid-column:2}.portfolio-skill-list article{grid-template-columns:35px 1fr}.portfolio-skill-list strong{grid-column:2}.journal-author-meta h1{font-size:5rem}}@media(prefers-reduced-motion:reduce){.profile-back,.profile-action,.profile-post-card,.journal-post-image img,.portfolio-project-feature,.portfolio-project-image img{transition:none}.portfolio-timeline-panel.is-active{animation:none}}
