/* V38 — precision editorial layout. Intentionally no player/gallery sizing, JS or animation changes. */
:root{--jr38-space-xs:10px;--jr38-space-sm:18px;--jr38-space-md:28px;--jr38-space-lg:44px;--jr38-space-xl:72px;}
/* A consistent type rhythm across section headers without decorative labels. */
#about .heading,#work h2,.jr-v18-title{
  text-wrap:balance;
  font-kerning:normal;
}
#about .heading{margin-bottom:clamp(38px,4.5vw,56px);}
#about .heading::after{margin-top:clamp(14px,1.4vw,19px);}
/* More precise portrait/copy balance, retaining portrait's current size and aspect ratio. */
#about .aboutgrid{column-gap:clamp(36px,5vw,68px);row-gap:34px;}
#about .aboutcopy{min-width:0;}
#about .jr33-intro{margin-bottom:8px;}
#about .aboutcopy h3{margin-top:0;margin-bottom:13px;}
#about .aboutcopy .role{line-height:1.65;}
#about .aboutcopy .jr33-bio{margin-top:clamp(20px,2.5vw,29px);margin-bottom:11px;}
#about .aboutcopy .jr33-bio-secondary{margin-bottom:clamp(21px,2.4vw,28px);}
#about .jr33-exploring{margin-bottom:24px;}
/* Skill and tools: unify internal spacing, not card design or icon behavior. */
#about .jr-v18-skills{margin-top:clamp(62px,7.2vw,92px)!important;}
#about .jr-v18-title{margin:0 0 clamp(23px,3vw,32px);}
#about .jr-v18-skill-board{column-gap:clamp(24px,3vw,36px);row-gap:clamp(14px,2vw,23px);}
#about .jr-v18-panels{gap:clamp(16px,2vw,24px);margin-top:clamp(20px,2.6vw,29px);}
#about .jr-v18-tool-panel{padding:clamp(19px,2.35vw,27px);}
#about .jr-v18-tool-panel h3{margin-bottom:clamp(16px,1.9vw,22px);line-height:1.2;}
#about .jr-v18-tool-list{gap:11px;}
/* Work: establish a coherent heading -> subtitle -> filter cadence.
   Crucially, work-inner, gallery, card, thumbnail, and player dimensions are untouched. */
#work h2{margin-bottom:clamp(13px,1.6vw,19px);}
#work .sub{line-height:1.8;margin-bottom:clamp(26px,3.2vw,38px);}
#work .filters{column-gap:10px;row-gap:10px;margin-bottom:clamp(32px,4.1vw,48px);}
#gallery .card .meta h3{min-width:0;}
#gallery .card .meta p{line-height:1.6;}
/* Keep the closing editorial block centered with optically consistent spacing. */
footer.jr36-finale .jr36-content{padding-inline:clamp(0px,1vw,12px);}
footer.jr36-finale .jr36-eyebrow{line-height:1.5;}
footer.jr36-finale .jr36-invitation{max-width:57ch;}
/* Phone refinements: preserve established one-column composition. */
@media(max-width:800px){
 #about .aboutgrid{column-gap:28px;row-gap:32px;}
 #about .jr-v18-skills{margin-top:64px!important;}
 #about .jr-v18-panels{gap:18px;}
}
@media(max-width:700px){
 #about .heading{margin-bottom:34px;}
 #about .aboutgrid{row-gap:31px;}
 #about .jr-v18-title{margin-bottom:24px;}
 #about .jr-v18-skill-board{row-gap:14px;}
 #about .jr-v18-tool-panel{padding:19px 17px;}
 #about .jr-v18-tool-list{gap:9px;}
 #work h2{margin-bottom:13px;}
 #work .sub{margin-bottom:24px;}
 #work .filters{margin-bottom:30px;column-gap:8px;row-gap:8px;}
 footer.jr36-finale .jr36-content{padding-inline:0;}
}
